Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Consulta en DecisionQuery (https://www.clubdelphi.com/foros/showthread.php?t=50839)

Morphine 29-11-2007 14:34:52

Consulta en DecisionQuery
 
Buen dia, estoy trabajando en una consulta para lo cual necesito utilizar un DecisionQuery con la idea de diseñar un cubo de decision, para esto he rellenado la propiedad SQL del DecisionQuery con la siguiente sentencia


Código SQL [-]
SELECT c.APENOM, k.DESCRIPCION, SUM( d.CANTIDAD )
FROM clientes c, facturas_a f, detalle_factura_a d, articulos a, clases_gustavo k
where (c.cliente = f.cliente) 
and (d.factura_a = f.factura_a) 
and(a.articulo = d.articulo) 
and (k.claseg = a.claseg) 
and f.fecha_emision between :desde and :hasta
GROUP BY c.APENOM, k.DESCRIPCION
union
SELECT c.APENOM, k.DESCRIPCION, SUM( d.CANTIDAD )
FROM clientes c, facturas_b f, detalle_factura_b d, articulos a, clases_gustavo k
where (c.cliente = f.cliente) 
and (d.factura_b = f.factura_b) 
and(a.articulo = d.articulo) 
and (k.claseg = a.claseg) 
and f.fecha_emision between :desde and :hasta
GROUP BY c.APENOM, k.DESCRIPCION
union
SELECT c.APENOM, k.DESCRIPCION, SUM( d.CANT )
FROM clientes c, facturas_c f, detalle_factura_c d, articulos a, clases_gustavo k
where (c.cliente = f.cli_cliente) 
and (d.factura_c = f.factura_c) 
and(a.articulo = d.articulo) 
and (k.claseg = a.claseg) 
and f.fecha_emision between :desde and :hasta
GROUP BY c.APENOM, k.DESCRIPCION





EL problema consiste en que al querer definir los campos de dimensiones me devuelve un mensaje de error (Invalid Use Of Keyword).
Existe algun error en la consulta que se me esta escapando?.
Saludos.

jhonny 29-11-2007 14:58:15

Mientras que los campos c.APENOM, k.DESCRIPCION, SUM( d.CANTIDAD ) de las 3 consultas sean del mismo tipo, no veo error en tu consulta (al menos en la mayoria de motores), para mi que el problema radica en la manera de usar algun metodo o de pasarle algun dato al componente que estas usando.

Morphine 29-11-2007 15:18:47

Si, probablemente el problema sean los parametros ya que los borre e ingrese datos fijos (en vez de :desde puse '11/01/2007', y en vez de :hasta '11/29/2007') y funciono. Lastimosamente necesito utilizar los parametros.
Seguire investigando.

jlchiodo 29-11-2007 17:08:02

Formato Fecha
 
Hola, has probado con lo siguiente?:

por ejemplo en MySQl puedes 'formatear' un campo fecha:

Tu codigo:

and (k.claseg = a.claseg)
and f.fecha_emision between :desde and :hasta

seria:

and (k.claseg = a.claseg)
and DateFormat(f.fecha_emision) between :desde and :hasta

Desconozco el motor con el que trabajas, fijate en la documentacion a ver si por este camino puedes solucionarlo.

Saludos.

Morphine 29-11-2007 20:22:00

Trabajo con Interbase 6 y hasta ahora no habia tenido inconvenientes mayores.
Pero me parece que el problema es el pasaje de parametros al componente DecisionQuery.


La franja horaria es GMT +2. Ahora son las 20:49:42.

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