salix/db/routines/vn/procedures/itemPlacementSupplyStockGet...

33 lines
909 B
SQL

DELIMITER $$
CREATE OR REPLACE DEFINER=`vn`@`localhost` PROCEDURE `vn`.`itemPlacementSupplyStockGetTargetList`(
vItemFk INT,
vSectorFk INT
)
BEGIN
/**
* Devuelve la lista de ubicaciones para itemFk en ese sector. Se utiliza en la preparación previa.
* Este proc se llama a continuacion de ticketToPrePrepare
*
* @param vItemFk Identificador de vn.item
* @param vSectorFk Identificador de vn.sector
*/
SELECT ish.shelvingFk shelving,
p.code parking,
SUM(ish.visible) stockTotal,
ish.created,
p.pickingOrder
FROM itemShelving ish
JOIN shelving sh ON sh.id = ish.shelvingFk
JOIN parking p ON p.id = sh.parkingFk
JOIN sector sc ON sc.id = p.sectorFk
JOIN warehouse w ON w.id = sc.warehouseFk
WHERE ish.visible > 0
AND ish.itemFk = vItemFk
GROUP BY ish.id
ORDER BY
(sc.id = vSectorFk) DESC,
sh.priority DESC,
ish.created,
p.pickingOrder;
END$$
DELIMITER ;