Access - Lio con la fecha

   
Vista:

Lio con la fecha

Publicado por Alfredo (43 intervenciones) el 09/12/2007 19:00:34
Hola nuevo, me pasa algo muy curioso y es que programando el código en Visual Basic para calcular una fecha todo va bien, pero a la hora que introduzco el fiotro en SQL me aplica el formato inglés, y me lo cambia todo, todas las fórmulas se van al traste. Por ejemplo, calculo los días laborables de la semana actual de Lunes a Sábado, y me resulta del 03/12/2007 al 08/12/2007, pero después me acaba buscando del 12/03/2007 al 12/08/2007 (en los mensajes que me pongo en MsgBox me sale).
Para solventar este problema había pensado en pasarlo en formato inglés en el mismo código de Access para hablar el mismo idioma que SQL pero cuando le quiero sumar días a la fecha para que sea como en nuestro formato lo tengo que sumar como meses....
El caso es que según convega me usa ambos formatos, el inglés o el español pero en mi ordenador todo está correcto (que lo he mirado a conciencia), siendo yo creo el problema que viene de una instalación de versión en inglés, ¿a alguien más le ha pasado esto?, ¿que solución puede haber?.
Gracias por vuestrar respuestas.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Lio con la fecha

Publicado por Chea (1015 intervenciones) el 09/12/2007 23:26:27
Es un viejo problema.

Access reconoce el formato de fecha de la configuración regional en las capas más próximas al usuario, pero ejemplo en los controles, las propiedades, etc. pero de la que nos adentramos un poco en VB o SQL, sólo reconoce el formato americano.

Pasa lo mismo que con la coma y el punto y coma. Donde te valga un punto y coma como separador de listas, te vale la fecha en formato español, si necesitas poner coma, entonces tendrás que usar el formato americano.

La solución pasa por convertir las fechas al formato americano cuando las pasamos como argumento a VB o SQL. Por ejemplo:

...WHERE FECHA = #" & Format (MiControlFecha,"mm/dd/yy") & "#....

Ojo, que si comparamos con una variable Fecha, ésta no hay que convertirla. El problema está sobre todo cuando estamos construyendo una cadena de texto, como para el SQL.

Saludos
José Bengoechea Ibaceta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar