feat: refs #8700 update invoiceOut procedure to use new serial and ref handling; modify foreign key constraints
gitea/salix/pipeline/pr-master This commit looks good
Details
gitea/salix/pipeline/pr-master This commit looks good
Details
This commit is contained in:
parent
d680dc8da7
commit
bbcdff2c31
|
@ -11,15 +11,18 @@ BEGIN
|
|||
DECLARE vSpainCountryFk INT;
|
||||
DECLARE vOldBookNumber INT;
|
||||
DECLARE vFiscalYear INT;
|
||||
DECLARE vSerial VARCHAR(2);
|
||||
DECLARE vRef VARCHAR(25);
|
||||
|
||||
SELECT id INTO vSpainCountryFk FROM country WHERE `code` = 'ES';
|
||||
|
||||
SELECT ASIEN
|
||||
INTO vOldBookNumber
|
||||
FROM XDiario x
|
||||
JOIN invoiceOut io ON io.id = vInvoice
|
||||
WHERE x.SERIE = io.serial
|
||||
AND x.FACTURA = RIGHT(io.ref, LENGTH(io.ref) - 1)
|
||||
SELECT serial, RIGHT(ref, LENGTH(ref) - LENGTH(serial)) INTO vSerial, vRef
|
||||
FROM invoiceOut
|
||||
WHERE id = vInvoice;
|
||||
|
||||
SELECT ASIEN INTO vOldBookNumber
|
||||
FROM XDiario
|
||||
WHERE SERIE = vSerial AND FACTURA = vRef
|
||||
LIMIT 1;
|
||||
|
||||
DELETE
|
||||
|
@ -32,7 +35,7 @@ BEGIN
|
|||
io.amount totalAmount,
|
||||
CONCAT('n/fra ', io.ref) simpleConcept,
|
||||
CONCAT('n/fra ', io.ref, ' ', c.name) Concept,
|
||||
io.serial SERIE,
|
||||
vSerial SERIE,
|
||||
io.issued FECHA_EX,
|
||||
io.issued FECHA_OP,
|
||||
io.issued FECHA,
|
||||
|
@ -44,21 +47,21 @@ BEGIN
|
|||
io.siiTypeInvoiceOutFk TIPOFACT,
|
||||
ic.cplusRectificationTypeFk TIPORECTIF,
|
||||
io.companyFk,
|
||||
RIGHT(io.ref, LENGTH(io.ref) - 1) invoiceNum,
|
||||
vRef invoiceNum,
|
||||
IF(c.countryFk = vSpainCountryFk, vSpainCountryFk, IF(ct.isUeeMember,2,4)) TERIDNIF,
|
||||
CONCAT(IF(ct.isUeeMember AND c.countryFk <> vSpainCountryFk,ct.code,''),c.fi) TERNIF,
|
||||
c.socialName TERNOM,
|
||||
ior.serial SERIE_RT,
|
||||
RIGHT(ior.ref, LENGTH(ior.ref) - 1) FACTU_RT,
|
||||
RIGHT(ior.ref, LENGTH(ior.ref) - LENGTH(ior.serial)) FACTU_RT,
|
||||
ior.issued FECHA_RT,
|
||||
IF(ior.id,TRUE,FALSE) RECTIFICA
|
||||
FROM invoiceOut io
|
||||
JOIN invoiceOutSerial ios ON ios.code = io.serial
|
||||
JOIN invoiceOutSerial ios ON ios.code = vSerial
|
||||
JOIN client c ON c.id = io.clientFk
|
||||
JOIN country ct ON ct.id = c.countryFk
|
||||
LEFT JOIN invoiceCorrection ic ON ic.correctingFk = io.id
|
||||
LEFT JOIN invoiceOut ior ON ior.id = ic.correctedFk
|
||||
WHERE io.id = vInvoice;
|
||||
WHERE io.id = vInvoice;
|
||||
|
||||
SELECT YEAR(FECHA) INTO vFiscalYear FROM rs LIMIT 1;
|
||||
CALL ledger_nextTx(vFiscalYear, vBookNumber);
|
||||
|
@ -89,7 +92,7 @@ BEGIN
|
|||
SUBCTA,
|
||||
CONTRA,
|
||||
EUROHABER,
|
||||
CONCEPTO,
|
||||
CONCEPTO,
|
||||
FECHA_EX,
|
||||
FECHA_OP,
|
||||
empresa_id)
|
||||
|
@ -106,8 +109,8 @@ BEGIN
|
|||
JOIN invoiceOutExpense ioe
|
||||
WHERE ioe.invoiceOutFk = vInvoice;
|
||||
|
||||
SELECT GROUP_CONCAT(`name` SEPARATOR ',')
|
||||
INTO vExpenseConcept
|
||||
SELECT GROUP_CONCAT(`name` SEPARATOR ',')
|
||||
INTO vExpenseConcept
|
||||
FROM expense e
|
||||
JOIN invoiceOutExpense ioe ON ioe.expenseFk = e.id
|
||||
WHERE ioe.invoiceOutFk = vInvoice;
|
||||
|
@ -175,13 +178,13 @@ BEGIN
|
|||
rs.TIPORECTIF,
|
||||
rs.companyFk
|
||||
FROM rs
|
||||
JOIN invoiceOutTax iot
|
||||
JOIN invoiceOutTax iot
|
||||
JOIN pgc ON pgc.code = iot.pgcFk
|
||||
LEFT JOIN pgcEqu pe ON pe.vatFk = iot.pgcFk -- --------------- Comprueba si la linea es de iva con rec.equiv. asociado
|
||||
LEFT JOIN pgc pgce ON pgce.code = pe.equFk
|
||||
LEFT JOIN pgc pgce ON pgce.code = pe.equFk
|
||||
LEFT JOIN pgcEqu pe2 ON pe2.equFk = iot.pgcFk -- --------------- Comprueba si la linea es de rec.equiv.
|
||||
WHERE iot.invoiceOutFk = vInvoice;
|
||||
|
||||
|
||||
UPDATE invoiceOut
|
||||
SET booked = util.VN_CURDATE()
|
||||
WHERE id = vInvoice;
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
ALTER TABLE vn.ticket DROP FOREIGN KEY IF EXISTS ticket_invoiceOut_FK;
|
||||
|
||||
ALTER TABLE vn.invoiceOut MODIFY COLUMN `ref` varchar(25) CHARACTER
|
||||
SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL;
|
||||
|
||||
ALTER TABLE vn.ticket MODIFY COLUMN refFk varchar(25) CHARACTER
|
||||
SET utf8mb3 COLLATE utf8mb3_unicode_ci DEFAULT NULL NULL;
|
||||
|
||||
ALTER TABLE vn.ticket ADD CONSTRAINT ticket_invoiceOut_FK
|
||||
FOREIGN KEY (`refFk`) REFERENCES vn.invoiceOut(`ref`) ON UPDATE CASCADE;
|
Loading…
Reference in New Issue