31 lines
980 B
SQL
31 lines
980 B
SQL
DELIMITER $$
|
|
CREATE OR REPLACE DEFINER=`vn-admin`@`localhost` PROCEDURE `vn`.`ticket_insertZone`()
|
|
BEGIN
|
|
DECLARE vDone INT DEFAULT 0;
|
|
DECLARE vFechedTicket INT;
|
|
DECLARE vLanded DATE;
|
|
DECLARE vAddressFk INT;
|
|
DECLARE vAgencyModeFk INT;
|
|
DECLARE vWarehouseFk INT;
|
|
DECLARE vCursor CURSOR FOR
|
|
SELECT id, landed, addressFk, agencyModeFk, warehouseFk
|
|
FROM vn.ticket WHERE shipped > '2020-01-01' AND zoneFk is null;
|
|
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET vDone = 1;
|
|
|
|
OPEN vCursor;
|
|
REPEAT
|
|
FETCH vCursor INTO vFechedTicket, vLanded, vAddressFk, vAgencyModeFk, vWarehouseFk;
|
|
CALL vn.zone_getShipped (vlanded, vAddressFk, vAgencyModeFk, TRUE);
|
|
|
|
UPDATE vn.ticket t
|
|
JOIN tmp.zoneGetShipped zgs ON zgs.warehouseFk = vWarehouseFk
|
|
SET t.zoneFk = zgs.zoneFk
|
|
WHERE t.id = vFechedTicket;
|
|
|
|
UNTIL vDone END REPEAT;
|
|
DROP TEMPORARY TABLE tmp.zoneGetShipped;
|
|
|
|
CLOSE vCursor;
|
|
END$$
|
|
DELIMITER ;
|