14-07-2004
|
Miembro
|
|
Registrado: dic 2003
Ubicación: Bucaramanga-Santander-Colombia
Posts: 49
Reputación: 0
|
|
Dudas con Union
Hola a Todos:
De pronto no me hice entender con claridad y pido disculpas:
A las pregunta que me hicieron respondo:
1. El motor de la base de Datos es fireBird y el Lenguaje de Programación es Delphi.
2. La consulta la necesito agrupadas con FechaVenta, Caja, Cajero, TipoArticulo, Calculando los valores de Descuento, Venta, Cantidades de Ventas y Cantidades Descuento
SELECT FECHAVENTA, CAJA, CODIGOCAJERO, TIPOARTICULO,
SUM(CANTIDADDESCUENTO) AS CANTIDADDESCUENTO,
SUM(DESCUENTO) AS DESCUENTO,
SUM(CANTIDADVENTAS) AS CANTIDADVENTAS,
SUM(VENTAS) AS VENTAS
FROM
(
SELECT D.FECHAVENTA, C.NOMBRE AS CAJA, D.CODIGOCAJERO, T.CODIGO||T.NOMBRE AS TIPOARTICULO,
0 AS CANTIDADDESCUENTO,
0.0 AS DESCUENTO,
COUNT(*) AS CANTIDADVENTAS,
SUM(D.CANTIDAD*D.PRECIOUNITARIO) AS VENTAS
FROM DetalleEncabezado D, CAJA C, TIPOARTICULO T
WHERE (D.FECHAVENTA='07/08/04')
AND (C.CODIGO=D.CODIGOCAJA)
AND (T.CODIGO=D.CODIGOTIPOARTICULO)
GROUP BY D.FECHAVENTA, C.NOMBRE, D.CODIGOCAJERO, T.CODIGO,T.NOMBRE
UNION
SELECT D.FECHAVENTA, C.NOMBRE AS CAJA, D.CODIGOCAJERO, T.CODIGO||T.NOMBRE AS TIPOARTICULO,
COUNT(*) AS CANTIDADDESCUENTO,
SUM(( (D.CANTIDAD*D.PRECIOUNITARIO)*(D.Descuento/100))+( (D.CANTIDAD*D.PRECIOUNITARIO)- (D.CANTIDAD*D.PRECIOUNITARIO*(D.Descuento/100)))*(D.Descuentoencabezado/100)) AS DESCUENTO,
0 AS CANTIDADVENTAS,
0.0 AS VENTAS
FROM DetalleEncabezado D, CAJA C, TIPOARTICULO T
WHERE (D.FECHAVENTA='07/08/04')
AND (C.CODIGO=D.CODIGOCAJA)
AND (T.CODIGO=D.CODIGOTIPOARTICULO)
AND ((D.Descuento > 0) OR (D.descuentoencabezado>0))
GROUP BY D.FECHAVENTA, C.NOMBRE, D.CODIGOCAJERO, T.CODIGO,T.NOMBRE
)
GROUP BY FECHAVENTA, CAJA, CODIGOCAJERO, TIPOARTICULO
Si tengo algun error de etiqueta por favor comunicarmelo y si no entiende por favor aclararla gracias
Rogerio
Última edición por jachguate fecha: 14-07-2004 a las 22:55:34.
|