Power Builder - manejo e fechas en reportes

 
Vista:

manejo e fechas en reportes

Publicado por carolina (38 intervenciones) el 22/01/2003 20:29:07
tengo un reporte en power builder es un dw freeform el cual lo armo con una sola tabla le paso dos argumentos para fuiltrar la informacion que son dos fechas datetime el select es : SELECT "TURNOS"."CODIGOESTACION",
"TURNOS"."NUMEROTERMINAL",
"TURNOS"."NUMEROSERIE",
"TURNOS"."FECHAAPERTURA",
"TURNOS"."NUMEROTURNO",
"TURNOS"."TOTALTCA",
"TURNOS"."TOTALCAJA",
("TURNOS"."TOTALTCA" - "TURNOS"."TOTALCAJA") as diferencia,
"ESTACIONES"."DESCRIPCIONESTACION"
FROM "TURNOS",
"ESTACIONES"
WHERE ( "TURNOS"."CODIGOESTACION" = "ESTACIONES"."CODIGOESTACION" ) and
( "TURNOS"."FECHAAPERTURA" between :fecha1 and :fecha2)

sin estos dos argumentos el reporte me muestra toda la informacion y con estos dos no me muestra nada y si existe informacion entre el rango de fechas que se ingresa, como se puede pasar esas fechas. para que me muestre datos
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:manejo e fechas en reportes

Publicado por Jorge Luis (91 intervenciones) el 22/01/2003 21:22:18
Saludos,

Has intentado no usar between sino:

( "TURNOS"."FECHAAPERTURA" >= :fecha1 and "TURNOS"."FECHAAPERTURA" <= :fecha2)
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

RE:manejo e fechas en reportes

Publicado por milson cardona (613 intervenciones) el 22/01/2003 23:52:38
Un saludo especial desde COLOMBIA

creo que tu problema radica en el formato en que tienes las 2 fechas que le estas pasando por parametro al SQL......... ya que para el motor es muy diferente 2002/02/01 a tener 01/02/2002...

si me dices que manejador de base de datos estas utilizando, tal vez te pueda ayudar... en ORACLE sería de la siguiente manera.

supongamos que los dos argumentos son tipo DATE y el campo tambien
TO_CHAR(turnos.fechaapertura,'YYYY/MM/DD') BETWEEN TO_CHAR(:fecha1,'YYYY/MM/DD') AND TO_CHAR(:fecha2,'YYYY/MM/DD')

La función TO_CHAR pasa un tipo DATE a string con el formato que se le defina, en este caso YYYY/MM/DD, de este modo estamos seguros que las 3 fechas que utilicemos esten en el mismo formato.

otra solución será que verifique como se estan llevando las fechas a las tablas, mandas los 2 argumentos en este mismo formato y te ahorras la utilización de la función... el problema es que si se cambia la configuracion del formato fecha de la DB, o el sistema se instala de nuevo y la DB queda con otro formato de fechas tendrás problemas con la consulta..........

por eso yo te recomiendo la primera opción para que sea una solución estandar para cualquier situación

espero haberte ayudado a resolver el problema.
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