From 5fe4f794cc569b70c0877263959747b7a70ffa00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Andr=C3=A9s?= Date: Fri, 23 Feb 2024 18:10:23 +0100 Subject: [PATCH] feat: comprobaciones facturas contabilizadas refs #6932 --- db/routines/vn/triggers/entry_beforeUpdate.sql | 7 +++---- db/routines/vn/triggers/travel_beforeUpdate.sql | 11 ++++++----- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/db/routines/vn/triggers/entry_beforeUpdate.sql b/db/routines/vn/triggers/entry_beforeUpdate.sql index 27b1a53f3e..260af49084 100644 --- a/db/routines/vn/triggers/entry_beforeUpdate.sql +++ b/db/routines/vn/triggers/entry_beforeUpdate.sql @@ -6,6 +6,7 @@ BEGIN DECLARE vIsVirtual BOOL; DECLARE vPrintedCount INT; DECLARE vHasDistinctWarehouses BOOL; + DECLARE vHasAnyInvoiceBooked BOOL; SET NEW.editorFk = account.myUser_getId(); @@ -49,15 +50,13 @@ BEGIN END IF; IF NOT (NEW.invoiceInFk <=> OLD.invoiceInFk)THEN - DECLARE vHanAnyInvoiceBooked BOOL; - - SELECT COUNT(*) INTO vHanAnyInvoiceBooked + SELECT COUNT(*) INTO vHasAnyInvoiceBooked FROM entry e JOIN invoiceIn ii ON ii.id = e.invoiceInFk WHERE e.id = NEW.id AND ii.isBooked; - IF vHanAnyInvoiceBooked THEN + IF vHasAnyInvoiceBooked THEN CALL util.throw('The travel has entries with booked invoices') END IF; END IF; diff --git a/db/routines/vn/triggers/travel_beforeUpdate.sql b/db/routines/vn/triggers/travel_beforeUpdate.sql index b12cf154b6..e4297352dd 100644 --- a/db/routines/vn/triggers/travel_beforeUpdate.sql +++ b/db/routines/vn/triggers/travel_beforeUpdate.sql @@ -3,6 +3,8 @@ CREATE OR REPLACE DEFINER=`root`@`localhost` TRIGGER `vn`.`travel_beforeUpdate` BEFORE UPDATE ON `travel` FOR EACH ROW BEGIN + DECLARE vHasAnyInvoiceBooked BOOL; + SET NEW.editorFk = account.myUser_getId(); IF NOT (NEW.landed <=> OLD.landed) @@ -19,16 +21,15 @@ BEGIN END IF; IF NOT (NEW.awbFk <=> OLD.awbFk)THEN - DECLARE vHanAnyInvoiceBooked BOOL; - - SELECT COUNT(*) INTO vHanAnyInvoiceBooked + + SELECT COUNT(*) INTO vHasAnyInvoiceBooked FROM travel t JOIN entry e ON e.travelFk =t.id JOIN invoiceIn ii ON ii.id = e.invoiceInFk WHERE t.id = NEW.id AND ii.isBooked; - - IF vHanAnyInvoiceBooked THEN + + IF vHasAnyInvoiceBooked THEN CALL util.throw('The travel has entries with booked invoices') END IF; END IF;