33 lines
1.2 KiB
SQL
33 lines
1.2 KiB
SQL
DELIMITER $$
|
|
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn2008`.`agencia_descuadre`(vFrom DATE, vTo DATE, vAgencyModeFk INT, vWarehouseAlias INT)
|
|
BEGIN
|
|
DECLARE vToDayEnd DATETIME;
|
|
|
|
SET vToDayEnd = util.dayEnd(vTo);
|
|
|
|
SELECT t.id ticketFk,t.addressFk,
|
|
v.amount AS VN, v.amount - shipping_charge AS Difer,
|
|
e.shipping_charge AS teorico, t.packages, t.clientFk, t.zoneFk, a.provinceFk
|
|
|
|
FROM vn.ticket t
|
|
LEFT JOIN
|
|
(SELECT ticketFk, SUM(amount) amount,shipped
|
|
FROM vn.sale_freightComponent
|
|
WHERE shipped BETWEEN vFrom AND vToDayEnd
|
|
GROUP BY ticketFk) v ON t.id = v.ticketFk
|
|
LEFT JOIN (SELECT t.id, SUM(t.zonePrice * ebv.ratio) shipping_charge
|
|
FROM vn.ticket t
|
|
LEFT JOIN vn.expedition e ON e.ticketFk = t.id
|
|
JOIN vn.expeditionBoxVol ebv ON ebv.boxFk = e.freightItemFk
|
|
WHERE t.shipped BETWEEN vFrom AND vToDayEnd
|
|
GROUP BY t.id
|
|
) e ON t.id = e.id
|
|
JOIN vn.address a ON a.id = t.addressFk
|
|
JOIN warehouse_group wg ON wg.warehouse_id = t.warehouseFk
|
|
WHERE DATE(t.shipped) BETWEEN vFrom AND vToDayEnd
|
|
AND t.agencyModeFk = vAgencyModeFk
|
|
AND wg.warehouse_alias_id = vWarehouseAlias;
|
|
|
|
END$$
|
|
DELIMITER ;
|