Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-07-2010
Galahad Galahad is offline
Miembro
 
Registrado: abr 2007
Posts: 218
Poder: 18
Galahad Va por buen camino
Angry WINDOWS 7 -problema con fechas

Hola, buenos días y saludos a todos...

Este problema ya lo comenté hace un par de meses.... , sigue sin solución...

Una vez instalada una aplicación desarrollada con paradox en windows 7, resulta que tengo que incluir esta sentencia en todos los 'Formcreate' de los formularios que utilizan fechas para filtrar datos en consultas sqls.

Cita:
sysutils.shortdateformat := 'dd/mm/yy';
hago esto porque cuando intentaba utilizar un filtro de fecha, me saltaba el error por ejemplo:
Cita:
06/30/10 is not a valid date..
El caso es que he llegado a un módulo del programa en el cual esta solución no funciona (el mismo error anterior lo devuelve el reporteador Reportbuilder), por lo que ahora mismo tengo ese módulo bloqueado para el cliente.
He comprobado el formato de fecha del windows, el format de fecha que figura en la configuración del bde.....,nada de nada...

El caso es que en otro windows 7 funciona sin problemas y me consta que ambos windows estan actualizados......
Si ha alguien se le ocurre alguna idea que pueda probar...se lo agradeceria.
Gracias....
Responder Con Cita
  #2  
Antiguo 05-07-2010
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Quizá el problema sea que los dos Win7 tienen configuraciones locales diferentes. Ten en cuenta que los norteamericanos usan otra nomenclatura (para variar), la "mm/dd/yyyy", esto es, primero el mes, luego el día y finalmente el año.

Por otro lado, "06/30/10" no es una fecha válida para "dd/mm/yy": ¡el mes 30 no existe!

Lo que digo: comprueba las configuraciones locales no sea que el problema venga por ahí.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #3  
Antiguo 05-07-2010
Galahad Galahad is offline
Miembro
 
Registrado: abr 2007
Posts: 218
Poder: 18
Galahad Va por buen camino
Cita:
Empezado por Ñuño Martínez Ver Mensaje
Quizá el problema sea que los dos Win7
Lo que digo: comprueba las configuraciones locales no sea que el problema venga por ahí.
ya lo he comprobado,, y son iguales....
vaya misterio......
Responder Con Cita
  #4  
Antiguo 05-07-2010
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Eso de sysutils.shortdateformat es un poquito raro... Verás, esa instrucción deberías ponerla únicamente en la primera ventana o modulo que creas en tu programa en la parte initialization, ¡Y nada más que allí!

En cuanto a reportBuilder, supongo lo mejor es enviarle las fechas con formato americano 'mm/dd/yyyy' ya que el BDE (como casi todos los motores por defecto) usan ese formato de fechas.

Lo más conveniente en estos casos es usar parámetros en la consulta, aunque ignoro si es viable:
Código Delphi [-]
query1.sql.text := 'select * from fechas where fecha1 >= :lafecha';
query1.parambyname('lafecha').asDateTime := trunc(datetimepicker1.date)

Lo del trunc es para no pasar la parte horaria a la consulta.

Suerte.
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #5  
Antiguo 06-07-2010
Galahad Galahad is offline
Miembro
 
Registrado: abr 2007
Posts: 218
Poder: 18
Galahad Va por buen camino
Cita:
Empezado por Lepe Ver Mensaje
Eso de sysutils.shortdateformat es un poquito raro... Verás, esa instrucción deberías ponerla únicamente en la primera ventana o modulo que creas en tu programa en la parte initialization, ¡Y nada más que allí!

En cuanto a reportBuilder, supongo lo mejor es enviarle las fechas con formato americano 'mm/dd/yyyy' ya que el BDE (como casi todos los motores por defecto) usan ese formato de fechas.

Lo más conveniente en estos casos es usar parámetros en la consulta, aunque ignoro si es viable:
Código Delphi [-]query1.sql.text := 'select * from fechas where fecha1 >= :lafecha'; query1.parambyname('lafecha').asDateTime := trunc(datetimepicker1.date)


Lo del trunc es para no pasar la parte horaria a la consulta.

Suerte.
muy bueno lo del trunc de la fecha, no conocia ese truco....
el caso es que todo me funciona bien en todos los ordenadores menos en este dichoso windows 7.. ,,
Responder Con Cita
  #6  
Antiguo 13-07-2010
Galahad Galahad is offline
Miembro
 
Registrado: abr 2007
Posts: 218
Poder: 18
Galahad Va por buen camino
Solución a problema fecha windows 7

hola...
me contesto a mi mismo con la solución al problema comentado..

Parece ser que es otro 'bug' del windows 7 ¿ que raro, verdad ?
En determinadas circunstancias, aunque en configuración regional podamos ver configurado el teclado 'español', y formato de fecha corta 'dd/mm/yy',
determinadas circunstancias, como el cambio de la cuenta de usuario u otras cuestiones,, el windows, (o delphi), utilizan el formato americano.
SOLUCIÓN: Simplemente he entrado en la configuración regional, he cambiado la configuración por ejemplo a 'Inglés', se valida ,, se vuelve a entrar ,se deja la de castellano (cambiando el formato de fecha corta)... y,,,, FUNCIONA !!!..

En este enlace se explica el problema,,,, es gracioso,, como uno explica que tiene que cambiar/confirmar la configuración regional de CIENTOS DE CLIENTES..
VIVA EL LINUX,,, .....
Responder Con Cita
  #7  
Antiguo 14-07-2010
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Así que al final sí era la configuración.

Cuanto más moderno, peor. XD
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #8  
Antiguo 14-10-2010
Rako Rako is offline
Miembro
 
Registrado: mar 2007
Posts: 39
Poder: 0
Rako Va por buen camino
jeje a mi tambien me acaba de pasar....gracias por publicar la solucion
Responder Con Cita
  #9  
Antiguo 13-08-2011
Avatar de MichelH
MichelH MichelH is offline
Miembro
 
Registrado: jul 2005
Ubicación: jalisco mexico
Posts: 44
Poder: 0
MichelH Va por buen camino
Tengo el mismo problema, en varias computadoras (aun con win 7) funciona bien menos una. La unica diferencia es que es Windows 7 de 64bits.

Probare lo que dicen de cambiar a Inglés y Regresar, en mi caso, Español Latinoamericano.

Veremos que sucede...
__________________
No hay misterios, sólo hay falta de información.
Tampoco hay milagros, sólo hay hechos científicos ignorados
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
WINDOWS 7 -problema con fechas Galahad Varios 1 21-05-2010 19:19:06
Error manejando fechas en Windows pablopessoa Varios 2 29-12-2008 09:38:38
Problema en fechas egarc SQL 8 04-06-2007 21:31:56
Problema con fechas mcarazas Varios 4 02-08-2006 18:23:09
problema con fechas virolu SQL 2 17-05-2004 23:44:44


La franja horaria es GMT +2. Ahora son las 22:03:59.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi