Compare commits

..

4 Commits

Author SHA1 Message Date
Robert Ferrús c3e3d72182 Merge branch 'master' into 7141-sale_replaceItem
gitea/salix/pipeline/pr-master This commit looks good Details
2024-03-27 10:53:31 +00:00
Alex Moreno be863c1269 Merge pull request 'hotFix: recreate addressTaxArea' (!2220) from hotFix_create_fn_addressTaxArea into master
gitea/salix/pipeline/head This commit looks good Details
Reviewed-on: #2220
Reviewed-by: Pablo Natek <pablone@verdnatura.es>
2024-03-27 07:47:02 +00:00
Alex Moreno b532ce3f77 hotFix: recreate addressTaxArea
gitea/salix/pipeline/pr-master This commit looks good Details
2024-03-27 08:30:45 +01:00
Juan Ferrer 9aa46c3a90 fix: HOTFIX PROC vn.collection_new release lock on error
gitea/salix/pipeline/head This commit looks good Details
gitea/salix/pipeline/pr-test Build started... Details
2024-03-26 16:50:15 +01:00
2 changed files with 21 additions and 6 deletions

View File

@ -20,6 +20,7 @@ BEGIN
CALL vn.addressTaxArea();
SELECT areaFk INTO vTaxArea FROM tmp.addressTaxArea;
DROP TEMPORARY TABLE
tmp.addressCompany,
tmp.addressTaxArea;

View File

@ -28,6 +28,7 @@ proc:BEGIN
DECLARE vLockName VARCHAR(215);
DECLARE vLockTime INT DEFAULT 15;
DECLARE vFreeWagonFk INT;
DECLARE c1 CURSOR FOR
SELECT ticketFk, `lines`, m3
FROM tmp.productionBuffer
@ -44,13 +45,21 @@ proc:BEGIN
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = TRUE;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
IF vLockName IS NOT NULL THEN
DO RELEASE_LOCK(vLockName);
END IF;
RESIGNAL;
END;
SELECT pc.ticketTrolleyMax * o.numberOfWagons,
pc.hasUniqueCollectionTime,
w.code,
o.warehouseFk,
o.itemPackingTypeFk,
st.code,
CONCAT('collection_new', o.warehouseFk, ':',o.itemPackingTypeFk),
o.numberOfWagons,
o.trainFk,
o.linesLimit,
@ -61,7 +70,6 @@ proc:BEGIN
vWarehouseFk,
vItemPackingTypeFk,
vStateFk,
vLockName,
vWagons,
vTrainFk,
vLinesLimit,
@ -71,6 +79,12 @@ proc:BEGIN
JOIN state st ON st.`code` = 'ON_PREPARATION'
JOIN operator o ON o.workerFk = vUserFk;
SET vLockName = CONCAT_WS('/',
'collection_new',
vWarehouseFk,
vItemPackingTypeFk
);
IF NOT GET_LOCK(vLockName, vLockTime) THEN
LEAVE proc;
END IF;
@ -250,13 +264,13 @@ proc:BEGIN
UPDATE tTrain
SET ticketFk = vFirstTicketFk
WHERE wagon = vFreeWagonFk;
-- Se anulan el resto de carros libres para que sólo uno lleve un pedido excesivo
DELETE tt.*
FROM tTrain tt
LEFT JOIN (
SELECT DISTINCT wagon
FROM tTrain
SELECT DISTINCT wagon
FROM tTrain
WHERE ticketFk IS NOT NULL
) nn ON nn.wagon = tt.wagon
WHERE nn.wagon IS NULL;
@ -271,7 +285,7 @@ proc:BEGIN
FETCH c1 INTO vTicketFk, vTicketLines, vTicketVolume;
IF vDone THEN
LEAVE read_loop;
END IF;
END IF;
END IF;
END LOOP;
CLOSE c1;