Power Builder - Problema con datawindow

 
Vista:

Problema con datawindow

Publicado por achafio (88 intervenciones) el 01/02/2007 14:22:30
Tengo un datawindow en la cual le paso por parametro campos de tipo fecha, pero no recupera ningun dato, a pesar que existe.

Estoy usando SQL SERVER 2005, en las cuales los campos son de tipo DATETIME, pero en el dw los parametros son de tipo DATE ya que solo quiero consultar por fecha mas no por la hora, tal vez sea ese el inconveniente, pero como puedo hacer para solucionar este inconveniente.

Este es el select de mi dw:

SELECT compras.cod_prod,
producto.des_prod,
tipo_precio.desc_tipprec,
compras.fec_vta,
compras.can_vta,
compras.pre_vta,
compras.cant_prec,
compras.monto
FROM compras,
tipo_precio,
producto
WHERE ( compras.cod_tipprec = tipo_precio.cod_tipprec ) and
( compras.cod_prod = producto.cod_prod ) and
( compras.fec_vta BETWEEN :fecha_ini AND :fecha_fin)

En donde fec_vta es de tipo DATETIME
fecha_ini y fecha_fin es de tipo DATE.

He probado poner DATE(compras.fec_vta) BETWEEN ..., pero me sale el mensaje que DATE no es una funcion reconocida o algo por el estilo.

Por favor espero su ayuda.
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:Problema con datawindow

Publicado por Michel Perez (12 intervenciones) el 01/02/2007 15:57:48
en la sentencia de SQL puedes poner algo parecido...

value_date between :adt_desde and dateadd(second, 86399, :adt_hasta)

El primer parámetro en este ejemplo ('adt_desde') lo tomara como la fecha correspondiente y la hora 00:00, al segundo parámetro sobre la fecha le estamos añadiendo un montón de segundos que equivales a 23 horas, 59 minutos y 59 segundos. De este modo ya tienes cubierto el intervalo.

Saludos,

Michel.

WebBlog de PowerBuilder: http://conpb.blogspot.com

.
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:Problema con datawindow

Publicado por Leopoldo Taylhardat (710 intervenciones) el 03/02/2007 20:25:57
Saludos...

Para convertir datos en T-SQL debes usar la función 'CAST', ej.:
CAST (fecha as datetime)
cast (entero as integer)
cast (largo as long)
cast (fecha_hora as date)
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