Foros del Web » Programando para Internet » ASP Clásico »

Problema con formato Fecha

Estas en el tema de Problema con formato Fecha en el foro de ASP Clásico en Foros del Web. Señores si me ayudan me salvan por que tengo que entregar un trabajo pagado y esto no me funciona. Estoy programando con ASPVB y Tengo ...
  #1 (permalink)  
Antiguo 21/01/2011, 02:12
 
Fecha de Ingreso: enero-2005
Mensajes: 45
Antigüedad: 19 años, 9 meses
Puntos: 0
Problema con formato Fecha

Señores si me ayudan me salvan por que tengo que entregar un trabajo pagado y esto no me funciona.

Estoy programando con ASPVB y Tengo mi base de datos access configurado el campo fecha como fecha/hora con formato fecha corta, la fecha de ejmplo que figura es del tipo dd/mm/aaaa y asi mismo estan guardados los registros.

luego hago una consulta a la BD asi


Set Noti=BDUpdate.Execute("Select DISTINCT Noticias.Fecha, Noticias.OCR, Medios.Nombre, Noticias.Titulo, Noticias.Id, Secciones.Seccion, Noticias.Imagen from RNT, RCE, Noticias, Medios, Secciones where Noticias.Id = RNT.IdNoticia and RNT.IdCategoria = RCE.IdCategoria and RCE.IdEmpresa = "&var_codigoempresa&" and Medios.Id = Noticias.CodigoMedios and Noticias.CodigoSeccion = Secciones.Id and (Noticias.Fecha between #"&var_from&"# and #"&var_to&"#) ORDER BY Noticias.Id")

pero al hacer la busqueda busca como si yo le hubiera entregado la fecha como mm/dd/aaaa entonces los resultados nos son coherentes, es mas, si muestro todos los registros sin filtrar por fecha pero muestro la fecha por pantalla de cada registro la muestra tambien de forma mm/dd/aaaa siendo en que la BD están guardados como dd/mm/aaaa.

ya probé usar cdate() cuando recivo la fecha desde el formulario y no hubo cambio

tambien probé usar formar(fecha,mm/dd/yyyy) y da un error por que la funcion format no existe al parecer en aspVB y tambien probé con FormatDateTime(fecha, vbShortDate) y no hay cambios tampoco.

y sinceramente ya no se que hacer!

Alguien tiene alguna ayuda?? saludos!
  #2 (permalink)  
Antiguo 21/01/2011, 06:59
Avatar de Expinete  
Fecha de Ingreso: abril-2006
Ubicación: Zaragoza
Mensajes: 236
Antigüedad: 18 años, 7 meses
Puntos: 3
Respuesta: Problema con formato Fecha

¿Has probado a formatear los tres valores?

format(Noticias.Fecha,"yyyymmdd") between format(#"&var_from&"#,"yyyymmdd") and format(#"&var_to&"#,"yyyymmdd")
  #3 (permalink)  
Antiguo 21/01/2011, 10:34
 
Fecha de Ingreso: enero-2005
Mensajes: 45
Antigüedad: 19 años, 9 meses
Puntos: 0
Respuesta: Problema con formato Fecha

Lo acabo de probar y la consulta queda asi:

Set Noti=BDUpdate.Execute("Select DISTINCT Noticias.Fecha, Noticias.OCR, Medios.Nombre, Noticias.Titulo, Noticias.Id, Secciones.Seccion, Noticias.Imagen from RNT, RCE, Noticias, Medios, Secciones where Noticias.Id = RNT.IdNoticia and RNT.IdCategoria = RCE.IdCategoria and RCE.IdEmpresa = "&var_codigoempresa&" and Medios.Id = Noticias.CodigoMedios and Noticias.CodigoSeccion = Secciones.Id and format(Noticias.Fecha,"yyyymmdd") between format(#"&var_from&"#,"yyyymmdd") and format(#"&var_to&"#,"yyyymmdd") ORDER BY Noticias.Id")

y me da el siguiente error:

Microsoft VBScript compilation error '800a03ee'

Expected ')'

y no veo donde puede faltar un parentesis!
  #4 (permalink)  
Antiguo 21/01/2011, 16:22
 
Fecha de Ingreso: enero-2005
Mensajes: 45
Antigüedad: 19 años, 9 meses
Puntos: 0
Respuesta: Problema con formato Fecha

Nadie tiene ninguna idea? =(
  #5 (permalink)  
Antiguo 21/01/2011, 22:26
 
Fecha de Ingreso: noviembre-2002
Ubicación: DF
Mensajes: 1.056
Antigüedad: 22 años
Puntos: 37
Respuesta: Problema con formato Fecha

Que lata con eso de las fechas... yo haria lo siguiente:

colocar el session.lcid que corresponde a tu pais (dd/mm/aaaa).

y en lugar de usar "between" lo intentaria con
Fecha>= 26/01/2010 and fecha<=30/03/2010

Probando SIEMPRE el sql resultante directo sobre la base de datos ACCESS (pestaña - consultas-> Nueva Consulta -> ver-> vista Sql)
  #6 (permalink)  
Antiguo 21/01/2011, 22:27
 
Fecha de Ingreso: noviembre-2002
Ubicación: DF
Mensajes: 1.056
Antigüedad: 22 años
Puntos: 37
Respuesta: Problema con formato Fecha

Que lata con eso de las fechas... yo haria lo siguiente:

colocar el session.lcid que corresponde a tu pais (dd/mm/aaaa).

y en lugar de usar "between" lo intentaria con
Fecha>= 26/01/2010 and fecha<=30/03/2010

si manejo un campo de fecha variable, algo como:
fecha="01/12/2010"
luego le pongo
fecha = cdate(fecha)

Probando SIEMPRE el sql resultante directo sobre la base de datos ACCESS (pestaña - consultas-> Nueva Consulta -> ver-> vista Sql)
  #7 (permalink)  
Antiguo 24/01/2011, 04:00
Avatar de Expinete  
Fecha de Ingreso: abril-2006
Ubicación: Zaragoza
Mensajes: 236
Antigüedad: 18 años, 7 meses
Puntos: 3
Respuesta: Problema con formato Fecha

Has probado a que te pinte la sql que te sale y probarla en la base de datos de access??

miSQL ="Select DISTINCT Noticias.Fecha, Noticias.OCR, Medios.Nombre, Noticias.Titulo, Noticias.Id, Secciones.Seccion, Noticias.Imagen from RNT, RCE, Noticias, Medios, Secciones where Noticias.Id = RNT.IdNoticia and RNT.IdCategoria = RCE.IdCategoria and RCE.IdEmpresa = "&var_codigoempresa&" and Medios.Id = Noticias.CodigoMedios and Noticias.CodigoSeccion = Secciones.Id and format(Noticias.Fecha,"yyyymmdd") between format(#"&var_from&"#,"yyyymmdd") and format(#"&var_to&"#,"yyyymmdd") ORDER BY Noticias.Id"

REsponse.write miSQL
__________________
-----------------------------------------------------------
A veces un arbol no nos deja ver el bosque...

Etiquetas: formato, fechas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:13.