Merge pull request '8700_invoiceOut' (!3513) from 8700_invoiceOut into master
gitea/salix/pipeline/head This commit looks good Details

Reviewed-on: #3513
Reviewed-by: Javi Gallego <jgallego@verdnatura.es>
This commit is contained in:
Carlos Andrés 2025-03-03 13:12:14 +00:00
commit 6861f2d4a0
2 changed files with 36 additions and 17 deletions

View File

@ -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);

View File

@ -0,0 +1,16 @@
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;
ALTER TABLE vn.XDiario MODIFY COLUMN SERIE varchar(2) CHARACTER
SET utf8mb3 COLLATE utf8mb3_unicode_ci DEFAULT NULL NULL;
ALTER TABLE vn.XDiario MODIFY COLUMN FACTURA varchar(25) CHARACTER
SET utf8mb3 COLLATE utf8mb3_unicode_ci DEFAULT '0' NULL;