8713-testToMaster #3523
|
@ -23,7 +23,6 @@ BEGIN
|
|||
DECLARE vInvoiceTypeReceived VARCHAR(1);
|
||||
DECLARE vInvoiceTypeInformative VARCHAR(1);
|
||||
DECLARE vIsInformativeExportation BOOL DEFAULT FALSE;
|
||||
DECLARE vIsDeductible BOOL;
|
||||
|
||||
DECLARE vCursor CURSOR FOR
|
||||
SELECT SUM(it.taxableBase),
|
||||
|
@ -32,8 +31,7 @@ BEGIN
|
|||
it.transactionTypeSageFk,
|
||||
it.taxTypeSageFk,
|
||||
tty.isIntracommunity,
|
||||
tt.ClaveOperacionDefecto,
|
||||
it.isDeductible
|
||||
tt.ClaveOperacionDefecto
|
||||
FROM vn.invoiceIn i
|
||||
JOIN vn.invoiceInTax it ON it.InvoiceInFk = i.id
|
||||
JOIN TiposIva t ON t.CodigoIva = it.taxTypeSageFk
|
||||
|
@ -67,8 +65,7 @@ BEGIN
|
|||
vTransactionCode,
|
||||
vTaxCode,
|
||||
vIsIntracommunity,
|
||||
vOperationCode,
|
||||
vIsDeductible;
|
||||
vOperationCode;
|
||||
|
||||
IF vDone THEN
|
||||
LEAVE l;
|
||||
|
@ -91,8 +88,7 @@ BEGIN
|
|||
PorIva1 = vRate,
|
||||
CuotaIva1 = vVat,
|
||||
CodigoTransaccion1 = vTransactionCode,
|
||||
CodigoIva1 = vTaxCode,
|
||||
IvaDeducible1 = vIsDeductible
|
||||
CodigoIva1 = vTaxCode
|
||||
WHERE id = vXDiarioFk;
|
||||
|
||||
WHEN 2 THEN
|
||||
|
@ -101,8 +97,7 @@ BEGIN
|
|||
PorIva2 = vRate,
|
||||
CuotaIva2 = vVat,
|
||||
CodigoTransaccion2 = vTransactionCode,
|
||||
CodigoIva2 = vTaxCode,
|
||||
IvaDeducible2 = vIsDeductible
|
||||
CodigoIva2 = vTaxCode
|
||||
WHERE id = vXDiarioFk;
|
||||
WHEN 3 THEN
|
||||
UPDATE movContaIVA
|
||||
|
@ -110,8 +105,7 @@ BEGIN
|
|||
PorIva3 = vRate,
|
||||
CuotaIva3 = vVat,
|
||||
CodigoTransaccion3 = vTransactionCode,
|
||||
CodigoIva3 = vTaxCode,
|
||||
IvaDeducible3 = vIsDeductible
|
||||
CodigoIva3 = vTaxCode
|
||||
WHERE id = vXDiarioFk;
|
||||
WHEN 4 THEN
|
||||
UPDATE movContaIVA
|
||||
|
@ -119,8 +113,7 @@ BEGIN
|
|||
PorIva4 = vRate,
|
||||
CuotaIva4 = vVat,
|
||||
CodigoTransaccion4 = vTransactionCode,
|
||||
CodigoIva4 = vTaxCode,
|
||||
IvaDeducible4 = vIsDeductible
|
||||
CodigoIva4 = vTaxCode
|
||||
WHERE id = vXDiarioFk;
|
||||
ELSE
|
||||
SELECT vXDiarioFk INTO vXDiarioFk;
|
||||
|
@ -175,6 +168,10 @@ BEGIN
|
|||
mci.FechaOperacion = ii.issued,
|
||||
mci.MantenerAsiento = TRUE,
|
||||
mci.SuFacturaNo = ii.supplierRef,
|
||||
mci.IvaDeducible1 = IF(id.id, FALSE, IF(IFNULL(mci.BaseIva1, FALSE) = FALSE, FALSE, ii.isVatDeductible)),
|
||||
mci.IvaDeducible2 = IF(id.id, FALSE, IF(IFNULL(mci.BaseIva2, FALSE) = FALSE, FALSE, ii.isVatDeductible)),
|
||||
mci.IvaDeducible3 = IF(id.id, FALSE, IF(IFNULL(mci.BaseIva3, FALSE) = FALSE, FALSE, ii.isVatDeductible)),
|
||||
mci.IvaDeducible4 = IF(id.id, FALSE, IF(IFNULL(mci.BaseIva4, FALSE) = FALSE, FALSE, ii.isVatDeductible)),
|
||||
mci.FechaFacturaOriginal = x.FECHA_EX
|
||||
WHERE mci.id = vXDiarioFk;
|
||||
|
||||
|
|
|
@ -2,10 +2,10 @@ DELIMITER $$
|
|||
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `sage`.`invoiceIn_manager`(vYear INT, vCompanyFk INT)
|
||||
BEGIN
|
||||
/**
|
||||
* Traslada la info de contabilidad relacionada con las facturas recibidas
|
||||
*
|
||||
* Traslada la info de contabilidad relacionada con las facturas recibidas
|
||||
*
|
||||
* @vYear Año contable del que se quiere trasladar la información
|
||||
* @vCompany Empresa de la que se quiere trasladar datos
|
||||
* @vCompany Empresa de la que se quiere trasladar datos
|
||||
*/
|
||||
DECLARE vDone BOOL DEFAULT FALSE;
|
||||
DECLARE vInvoiceFk INT;
|
||||
|
@ -17,22 +17,22 @@ BEGIN
|
|||
DECLARE vAccountTaxOutstanding VARCHAR(10);
|
||||
DECLARE vInvoiceTypeSended VARCHAR(1);
|
||||
DECLARE vCursor CURSOR FOR
|
||||
SELECT IFNULL(x.CLAVE, x.FACTURA) invoiceInFk,
|
||||
SELECT IFNULL(x.CLAVE, x.FACTURA) invoiceInFk,
|
||||
x.id XDiarioFk
|
||||
FROM vn.XDiario x
|
||||
FROM vn.XDiario x
|
||||
JOIN(SELECT DISTINCT(x.ASIEN)
|
||||
FROM vn.XDiario x
|
||||
LEFT JOIN vn.invoiceIn ii ON x.CLAVE = ii.id
|
||||
LEFT JOIN vn.invoiceInTax it ON it.invoiceInFk = ii.id
|
||||
WHERE(it.taxTypeSageFk IS NOT NULL OR x.SERIE = vSerialDua COLLATE utf8mb3_unicode_ci)
|
||||
AND x.enlazadoSage = FALSE
|
||||
WHERE(it.taxTypeSageFk IS NOT NULL OR x.SERIE = vSerialDua COLLATE utf8mb3_unicode_ci)
|
||||
AND x.enlazadoSage = FALSE
|
||||
AND x.FECHA BETWEEN vDatedFrom AND vDatedTo
|
||||
AND x.empresa_id = vCompanyFk
|
||||
AND x.empresa_id = vCompanyFk
|
||||
) sub ON sub.ASIEN = x.ASIEN
|
||||
WHERE x.CLAVE IS NOT NULL;
|
||||
|
||||
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = TRUE;
|
||||
|
||||
|
||||
SELECT CAST(CONCAT(vYear, '-01-01') AS DATETIME), util.dayEnd(CAST(CONCAT(vYear, '-12-31') AS DATE))
|
||||
INTO vDatedFrom, vDatedTo;
|
||||
|
||||
|
@ -46,15 +46,15 @@ BEGIN
|
|||
|
||||
SELECT codeSage INTO vInvoiceTypeSended
|
||||
FROM invoiceType WHERE `code` ='sended';
|
||||
|
||||
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp.invoiceDua;
|
||||
CREATE TEMPORARY TABLE tmp.invoiceDua
|
||||
SELECT x.id
|
||||
SELECT x.id
|
||||
FROM vn.XDiario x
|
||||
JOIN vn.company c ON c.id = x.empresa_id
|
||||
JOIN (SELECT ASIEN
|
||||
FROM vn.XDiario x
|
||||
WHERE x.enlazadoSage = FALSE
|
||||
FROM vn.XDiario x
|
||||
WHERE x.enlazadoSage = FALSE
|
||||
AND x.SUBCTA = vAccountTaxOutstanding COLLATE utf8mb3_unicode_ci
|
||||
AND x.FECHA BETWEEN vDatedFrom AND vDatedTo
|
||||
)sub ON sub.ASIEN = x.ASIEN
|
||||
|
@ -67,19 +67,21 @@ BEGIN
|
|||
i.serial COLLATE utf8mb3_unicode_ci serial,
|
||||
i.supplierFk,
|
||||
i.issued,
|
||||
IF(expenseFkDeductible, FALSE, i.isVatDeductible) isVatDeductible,
|
||||
IF(c.code = 'EUR', '',c.`code`) currencyFk
|
||||
FROM vn.invoiceIn i
|
||||
JOIN vn.currency c ON c.id = i.currencyFk
|
||||
WHERE i.bookEntried BETWEEN vDatedFrom AND vDatedTo
|
||||
UNION ALL
|
||||
UNION ALL
|
||||
SELECT d.id,
|
||||
d.code,
|
||||
vSerialDua COLLATE utf8mb3_unicode_ci,
|
||||
d.companyFk ,
|
||||
d.issued,
|
||||
FALSE,
|
||||
'' -- EUROS
|
||||
FROM vn.dua d
|
||||
WHERE d.issued IS NOT NULL
|
||||
FROM vn.dua d
|
||||
WHERE d.issued IS NOT NULL
|
||||
AND code IS NOT NULL;
|
||||
|
||||
OPEN vCursor;
|
||||
|
@ -87,7 +89,7 @@ BEGIN
|
|||
l: LOOP
|
||||
FETCH vCursor INTO vInvoiceFk, vXDiarioFk;
|
||||
|
||||
IF vDone THEN
|
||||
IF vDone THEN
|
||||
LEAVE l;
|
||||
END IF;
|
||||
CALL invoiceIn_add(vInvoiceFk, vXDiarioFk);
|
||||
|
@ -175,21 +177,21 @@ BEGIN
|
|||
JOIN (SELECT x.ASIEN, x.id
|
||||
FROM vn.XDiario x
|
||||
JOIN(SELECT DISTINCT(x.ASIEN) ASIEN
|
||||
FROM vn.XDiario x
|
||||
FROM vn.XDiario x
|
||||
JOIN (SELECT DISTINCT(ASIEN)
|
||||
FROM vn.XDiario x
|
||||
WHERE SUBCTA LIKE '472%'
|
||||
WHERE SUBCTA LIKE '472%'
|
||||
AND x.enlazadoSage = FALSE
|
||||
AND x.empresa_id = vCompanyFk
|
||||
AND x.FECHA BETWEEN vDatedFrom AND vDatedTo
|
||||
) sub ON sub.ASIEN = x.ASIEN
|
||||
WHERE x.SUBCTA LIKE '477%'
|
||||
)sub2 ON sub2.ASIEN = x.ASIEN
|
||||
WHERE x.CONTRA IS NOT NULL
|
||||
WHERE x.CONTRA IS NOT NULL
|
||||
AND x.SUBCTA LIKE '477%'
|
||||
GROUP BY x.ASIEN
|
||||
)sub3 ON sub3.ASIEN = x.ASIEN;
|
||||
|
||||
|
||||
INSERT INTO movContaIVA
|
||||
(`id`,
|
||||
`CodigoDivisa`,
|
||||
|
@ -260,9 +262,9 @@ BEGIN
|
|||
`FechaGrabacion`,
|
||||
`Intracomunitaria`,
|
||||
`moveData`)
|
||||
SELECT *
|
||||
SELECT *
|
||||
FROM tmp.movContaIVA;
|
||||
|
||||
|
||||
DROP TEMPORARY TABLE tmp.movContaIVA;
|
||||
|
||||
END$$
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
DELIMITER $$
|
||||
CREATE OR REPLACE DEFINER=`vn`@`localhost` PROCEDURE `vn`.`invoiceIn_booking`(
|
||||
vSelf INT,
|
||||
vSelf INT,
|
||||
vBookNumber INT
|
||||
)
|
||||
BEGIN
|
||||
/**
|
||||
* Genera la contabilidad para una factura y la marca como contabilizada
|
||||
* Cuadra el asiento generado en si encuentra problemas derivados
|
||||
* Cuadra el asiento generado en si encuentra problemas derivados
|
||||
* de los calculos con decimales
|
||||
*
|
||||
* @param vSelf Id invoiceIn
|
||||
*
|
||||
* @param vSelf Id invoiceIn
|
||||
* @param vBookEntry Id de asiento, si es NULL se genera uno nuevo
|
||||
*/
|
||||
DECLARE vFiscalYear INT;
|
||||
|
@ -23,7 +23,7 @@ BEGIN
|
|||
HAVING COUNT(DISTINCT iit.transactionTypeSageFk) > 1
|
||||
LIMIT 1;
|
||||
|
||||
IF vHasRepeatedTransactions THEN
|
||||
IF vHasRepeatedTransactions THEN
|
||||
CALL util.throw ('This invoice contains different types of transactions');
|
||||
END IF;
|
||||
|
||||
|
@ -32,7 +32,7 @@ BEGIN
|
|||
SELECT ii.bookEntried,
|
||||
iit.foreignValue,
|
||||
ii.companyFk,
|
||||
iit.isDeductible,
|
||||
ii.expenseFkDeductible,
|
||||
iit.taxableBase,
|
||||
iit.transactionTypeSageFk,
|
||||
ii.serial,
|
||||
|
@ -66,13 +66,13 @@ BEGIN
|
|||
e.name expenseName
|
||||
FROM invoiceIn ii
|
||||
JOIN supplier s ON s.id = ii.supplierFk
|
||||
LEFT JOIN invoiceInCorrection ic ON ic.correctingFk = ii.id
|
||||
LEFT JOIN invoiceInCorrection ic ON ic.correctingFk = ii.id
|
||||
LEFT JOIN province p ON p.id = s.provinceFk
|
||||
LEFT JOIN autonomy a ON a.id = p.autonomyFk
|
||||
JOIN country c ON c.id = s.countryFk
|
||||
JOIN supplier sc ON sc.id = ii.companyFk
|
||||
JOIN country cc ON cc.id = sc.countryFk
|
||||
JOIN invoiceInSerial iis ON iis.code = ii.serial
|
||||
JOIN invoiceInSerial iis ON iis.code = ii.serial
|
||||
JOIN siiTypeInvoiceIn cit ON cit.id = ii.siiTypeInvoiceInFk
|
||||
LEFT JOIN invoiceInTax iit ON iit.invoiceInFk = ii.id
|
||||
LEFT JOIN sage.TiposTransacciones ttr ON ttr.CodigoTransaccion = iit.transactionTypeSageFk
|
||||
|
@ -83,7 +83,7 @@ BEGIN
|
|||
|
||||
SELECT YEAR(bookEntried) INTO vFiscalYear FROM tInvoiceIn LIMIT 1;
|
||||
|
||||
IF vBookNumber IS NULL THEN
|
||||
IF vBookNumber IS NULL THEN
|
||||
CALL ledger_nextTx(vFiscalYear, vBookNumber);
|
||||
END IF;
|
||||
|
||||
|
@ -99,18 +99,18 @@ BEGIN
|
|||
NFACTICK,
|
||||
CLAVE,
|
||||
empresa_id)
|
||||
SELECT
|
||||
SELECT
|
||||
vBookNumber ASIEN,
|
||||
tii.bookEntried FECHA,
|
||||
tii.supplierAccount SUBCTA,
|
||||
SUM(tii.taxableBase *
|
||||
IF(tii.serial= 'R' AND ((tii.taxCode IS NULL OR tii.taxCode <> 'ISP21')
|
||||
AND tii.taxTypeSageFk IS NOT NULL),
|
||||
1 + (tii.PorcentajeIva / 100),
|
||||
1)) EUROHABER,
|
||||
CONCAT('s/fra',
|
||||
RIGHT(tii.supplierRef, 8),
|
||||
':',
|
||||
SUM(tii.taxableBase *
|
||||
IF(tii.serial= 'R' AND ((tii.taxCode IS NULL OR tii.taxCode <> 'ISP21')
|
||||
AND tii.taxTypeSageFk IS NOT NULL),
|
||||
1 + (tii.PorcentajeIva / 100),
|
||||
1)) EUROHABER,
|
||||
CONCAT('s/fra',
|
||||
RIGHT(tii.supplierRef, 8),
|
||||
':',
|
||||
LEFT(tii.supplierName, 10)) CONCEPTO,
|
||||
CAST(tii.taxableBase / tii.foreignValue AS DECIMAL (10,4)) CAMBIO,
|
||||
SUM(tii.foreignValue * IF(tii.serial = 'R', 1 + (tii.PorcentajeIva / 100), 1)) HABERME,
|
||||
|
@ -127,7 +127,7 @@ BEGIN
|
|||
CONTRA,
|
||||
EURODEBE,
|
||||
EUROHABER,
|
||||
CONCEPTO,
|
||||
CONCEPTO,
|
||||
CAMBIO,
|
||||
DEBEME,
|
||||
HABERME,
|
||||
|
@ -139,9 +139,9 @@ BEGIN
|
|||
tii.supplierAccount CONTRA,
|
||||
IF(tii.isWithheld AND tii.taxableBase < 0, NULL, ROUND(SUM(tii.taxableBase),2)) EURODEBE,
|
||||
IF(tii.isWithheld AND tii.taxableBase < 0, ROUND(SUM(-tii.taxableBase), 2), NULL) EUROHABER,
|
||||
CONCAT('s/fra',
|
||||
RIGHT(tii.supplierRef, 8),
|
||||
':',
|
||||
CONCAT('s/fra',
|
||||
RIGHT(tii.supplierRef, 8),
|
||||
':',
|
||||
LEFT(tii.supplierName, 10)) CONCEPTO,
|
||||
CAST(tii.taxableBase / tii.foreignValue AS DECIMAL (10, 4)) CAMBIO,
|
||||
IF(tii.isWithheld, NULL,ABS(ROUND(SUM(tii.foreignValue), 2))) DEBEME,
|
||||
|
@ -153,17 +153,17 @@ BEGIN
|
|||
GROUP BY tii.expenseFk;
|
||||
|
||||
-- Líneas de IVA
|
||||
INSERT INTO XDiario(
|
||||
INSERT INTO XDiario(
|
||||
ASIEN,
|
||||
FECHA,
|
||||
SUBCTA,
|
||||
CONTRA,
|
||||
CONTRA,
|
||||
EURODEBE,
|
||||
BASEEURO,
|
||||
CONCEPTO,
|
||||
FACTURA,
|
||||
FACTURA,
|
||||
IVA,
|
||||
AUXILIAR,
|
||||
AUXILIAR,
|
||||
SERIE,
|
||||
TIPOOPE,
|
||||
FECHA_EX,
|
||||
|
@ -184,7 +184,7 @@ BEGIN
|
|||
empresa_id)
|
||||
SELECT vBookNumber ASIEN,
|
||||
tii.bookEntried FECHA,
|
||||
IF(tii.isDeductible, tii.expenseFk, tii.CuentaIvaSoportado) SUBCTA,
|
||||
IF(tii.expenseFkDeductible>0, tii.expenseFkDeductible, tii.CuentaIvaSoportado) SUBCTA,
|
||||
tii.supplierAccount CONTRA,
|
||||
SUM(ROUND(tii.PorcentajeIva * tii.taxableBase / 100, 2)) EURODEBE,
|
||||
SUM(tii.taxableBase) BASEEURO,
|
||||
|
@ -212,28 +212,28 @@ BEGIN
|
|||
tii.companyFk
|
||||
FROM tInvoiceIn tii
|
||||
LEFT JOIN (
|
||||
SELECT e.id
|
||||
SELECT e.id
|
||||
FROM tInvoiceIn tii
|
||||
JOIN expense e ON e.id = tii.expenseFk
|
||||
WHERE e.isWithheld
|
||||
LIMIT 1
|
||||
) eWithheld ON TRUE
|
||||
WHERE tii.taxTypeSageFk IS NOT NULL
|
||||
AND (tii.taxCode IS NULL OR tii.taxCode NOT IN ('import10', 'import21'))
|
||||
) eWithheld ON TRUE
|
||||
WHERE tii.taxTypeSageFk IS NOT NULL
|
||||
AND (tii.taxCode IS NULL OR tii.taxCode NOT IN ('import10', 'import21'))
|
||||
GROUP BY tii.CuentaIvaRepercutido;
|
||||
|
||||
-- Línea iva inversor sujeto pasivo
|
||||
INSERT INTO XDiario(
|
||||
INSERT INTO XDiario(
|
||||
ASIEN,
|
||||
FECHA,
|
||||
SUBCTA,
|
||||
CONTRA,
|
||||
CONTRA,
|
||||
EUROHABER,
|
||||
BASEEURO,
|
||||
CONCEPTO,
|
||||
FACTURA,
|
||||
FACTURA,
|
||||
IVA,
|
||||
AUXILIAR,
|
||||
AUXILIAR,
|
||||
SERIE,
|
||||
TIPOOPE,
|
||||
FECHA_EX,
|
||||
|
@ -282,31 +282,31 @@ BEGIN
|
|||
JOIN sage.config c
|
||||
WHERE tii.taxCode = 'ISP21' OR MID(tii.supplierAccount, 4, 1) = '1'
|
||||
AND tii.taxTypeSageFk IS NOT NULL
|
||||
AND NOT(tii.isVies
|
||||
AND c.nontaxableTransactionTypeFk = tii.transactionTypeSageFk
|
||||
AND NOT(tii.isVies
|
||||
AND c.nontaxableTransactionTypeFk = tii.transactionTypeSageFk
|
||||
AND tii.taxCode = 'nonTaxable')
|
||||
GROUP BY tii.CuentaIvaRepercutido;
|
||||
|
||||
-- Actualización del registro original
|
||||
|
||||
-- Actualización del registro original
|
||||
UPDATE invoiceIn ii
|
||||
SET ii.isBooked = TRUE
|
||||
WHERE ii.id = vSelf;
|
||||
|
||||
|
||||
-- Problemas derivados de la precisión en los decimales al calcular los impuestos
|
||||
UPDATE XDiario
|
||||
SET EURODEBE = EURODEBE -
|
||||
UPDATE XDiario
|
||||
SET EURODEBE = EURODEBE -
|
||||
(SELECT IF(ABS(sub.difference) = 0.01, sub.difference, 0)
|
||||
FROM(
|
||||
SELECT SUM(IFNULL(ROUND(EURODEBE, 2),0)) - SUM(IFNULL(ROUND(EUROHABER, 2), 0)) difference
|
||||
SELECT SUM(IFNULL(ROUND(EURODEBE, 2),0)) - SUM(IFNULL(ROUND(EUROHABER, 2), 0)) difference
|
||||
FROM XDiario
|
||||
WHERE ASIEN = vBookNumber
|
||||
)sub
|
||||
)
|
||||
WHERE ASIEN = vBookNumber
|
||||
WHERE ASIEN = vBookNumber
|
||||
AND EURODEBE <> 0
|
||||
ORDER BY id DESC
|
||||
LIMIT 1;
|
||||
|
||||
|
||||
DROP TEMPORARY TABLE tInvoiceIn;
|
||||
END$$
|
||||
DELIMITER ;
|
||||
|
|
|
@ -20,5 +20,7 @@ AS SELECT `r`.`id` AS `id`,
|
|||
`r`.`cplusTaxBreakFk` AS `cplusTaxBreakFk`,
|
||||
`r`.`siiTrascendencyInvoiceInFk` AS `siiTrascendencyInvoiceInFk`,
|
||||
`r`.`bookEntried` AS `bookEntried`,
|
||||
`r`.`withholdingSageFk` AS `withholdingSageFk`
|
||||
`r`.`isVatDeductible` AS `isVatDeductible`,
|
||||
`r`.`withholdingSageFk` AS `withholdingSageFk`,
|
||||
`r`.`expenseFkDeductible` AS `expenseFkDeductible`
|
||||
FROM `vn`.`invoiceIn` `r`
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
ALTER TABLE vn.invoiceInTax ADD isDeductible TINYINT(1) DEFAULT FALSE NOT NULL;
|
||||
|
||||
|
||||
ALTER TABLE vn.invoiceIn CHANGE expenseFkDeductible expenseFkDeductible__ varchar(10)
|
||||
CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL NULL COMMENT '@deprecated 2025-02-15';
|
||||
|
||||
ALTER TABLE vn.invoiceIn CHANGE isVatDeductible isVatDeductible__ tinyint(1)
|
||||
DEFAULT 1 NOT NULL COMMENT '@deprecated 2025-02-15';
|
|
@ -255,12 +255,7 @@
|
|||
"Holidays to past days not available": "Holidays to past days not available",
|
||||
"Incorrect delivery order alert on route": "Incorrect delivery order alert on route: {{ route }} zone: {{ zone }}",
|
||||
"Ticket has been delivered out of order": "The ticket {{ticket}} of route {{{fullUrl}}} has been delivered out of order.",
|
||||
"clonedFromTicketWeekly": ", that is a cloned sale from ticket {{ ticketWeekly }}",
|
||||
"clonedFromTicketWeekly": ", that is a cloned sale from ticket {{ ticketWeekly }}",
|
||||
"negativeReplaced": "Replaced item [#{{oldItemId}}]({{{oldItemUrl}}}) {{oldItem}} with [#{{newItemId}}]({{{newItemUrl}}}) {{newItem}} from ticket [{{ticketId}}]({{{ticketUrl}}})",
|
||||
"The tag and priority can't be repeated": "The tag and priority can't be repeated",
|
||||
"workerSocialName": "workerSocialName",
|
||||
"workerName": "workerName",
|
||||
"The tag or priority can't be repeated for an item": "The tag or priority can't be repeated for an item",
|
||||
"An item type with the same code already exists": "An item type with the same code already exists",
|
||||
"null": "null"
|
||||
}
|
||||
"The tag and priority can't be repeated": "The tag and priority can't be repeated"
|
||||
}
|
||||
|
|
|
@ -16,6 +16,7 @@ columns:
|
|||
bookEntried: book entried
|
||||
isVatDeductible: is VAT deductible
|
||||
withholdingSageFk: withholding
|
||||
expenseFkDeductible: expense deductible
|
||||
editorFk: editor
|
||||
siiTrasCendencyInvoiceInFk: SII tax regime
|
||||
siiTypeInvoiceInFk: SII Type
|
||||
siiTypeInvoiceInFk: SII Type
|
|
@ -16,6 +16,7 @@ columns:
|
|||
bookEntried: fecha asiento
|
||||
isVatDeductible: impuesto deducible
|
||||
withholdingSageFk: código de retención
|
||||
expenseFkDeductible: gasto deducible
|
||||
editorFk: editor
|
||||
siiTrasCendencyInvoiceInFk: régimen fiscal SII
|
||||
siiTypeInvoiceInFk: tipo SII
|
||||
siiTypeInvoiceInFk: tipo SII
|
|
@ -46,6 +46,7 @@ module.exports = Self => {
|
|||
'issued',
|
||||
'currencyFk',
|
||||
'companyFk',
|
||||
'isVatDeductible',
|
||||
'withholdingSageFk',
|
||||
'deductibleExpenseFk',
|
||||
],
|
||||
|
@ -78,6 +79,7 @@ module.exports = Self => {
|
|||
issued: issued,
|
||||
currencyFk: sourceInvoiceIn.currencyFk,
|
||||
companyFk: sourceInvoiceIn.companyFk,
|
||||
isVatDeductible: sourceInvoiceIn.isVatDeductible,
|
||||
withholdingSageFk: sourceInvoiceIn.withholdingSageFk,
|
||||
deductibleExpenseFk: sourceInvoiceIn.deductibleExpenseFk,
|
||||
}, myOptions);
|
||||
|
|
|
@ -184,6 +184,7 @@ module.exports = Self => {
|
|||
ii.docFk dmsFk,
|
||||
dm.file,
|
||||
ii.supplierFk,
|
||||
ii.expenseFkDeductible deductibleExpenseFk,
|
||||
s.name supplierName,
|
||||
s.account,
|
||||
SUM(iid.amount) amount,
|
||||
|
|
|
@ -123,6 +123,12 @@ module.exports = Self => {
|
|||
}]
|
||||
}
|
||||
},
|
||||
{
|
||||
relation: 'expenseDeductible',
|
||||
scope: {
|
||||
fields: ['id', 'name', 'taxTypeFk']
|
||||
}
|
||||
},
|
||||
{
|
||||
relation: 'currency',
|
||||
scope: {
|
||||
|
|
|
@ -24,9 +24,6 @@
|
|||
"expenseFk": {
|
||||
"type": "string"
|
||||
},
|
||||
"isDeductible": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"created": {
|
||||
"type": "date"
|
||||
}
|
||||
|
@ -53,4 +50,4 @@
|
|||
"foreignKey": "transactionTypeSageFk"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -36,6 +36,9 @@
|
|||
"booked": {
|
||||
"type": "date"
|
||||
},
|
||||
"isVatDeductible": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"operated": {
|
||||
"type": "date"
|
||||
},
|
||||
|
@ -47,6 +50,12 @@
|
|||
"mysql": {
|
||||
"columnName": "docFk"
|
||||
}
|
||||
},
|
||||
"deductibleExpenseFk": {
|
||||
"type": "number",
|
||||
"mysql": {
|
||||
"columnName": "expenseFkDeductible"
|
||||
}
|
||||
}
|
||||
},
|
||||
"relations": {
|
||||
|
@ -70,6 +79,11 @@
|
|||
"model": "SageWithholding",
|
||||
"foreignKey": "withholdingSageFk"
|
||||
},
|
||||
"expenseDeductible": {
|
||||
"type": "belongsTo",
|
||||
"model": "Expense",
|
||||
"foreignKey": "deductibleExpenseFk"
|
||||
},
|
||||
"company": {
|
||||
"type": "belongsTo",
|
||||
"model": "Company",
|
||||
|
|
|
@ -36,6 +36,8 @@
|
|||
<vn-one>
|
||||
<vn-label-value label="Sage withholding" value="{{$ctrl.summary.sageWithholding.withholding}}">
|
||||
</vn-label-value>
|
||||
<vn-label-value label="Undeductible VAT" value="{{$ctrl.summary.expenseDeductible.name}}">
|
||||
</vn-label-value>
|
||||
<vn-label-value label="Company" value="{{$ctrl.summary.company.code}}">
|
||||
</vn-label-value>
|
||||
<vn-vertical>
|
||||
|
@ -47,10 +49,10 @@
|
|||
<span td class="chip"><vn-label translate>Taxable base</vn-label> {{$ctrl.summary.totals.totalTaxableBase | currency: 'EUR':2 | dashIfEmpty}}</span>
|
||||
<p><vn-label translate>Total</vn-label> {{$ctrl.summary.totals.totalVat | currency: 'EUR':2 | dashIfEmpty}}</p>
|
||||
<vn-label translate>Due day</vn-label>
|
||||
<vn-chip
|
||||
class="transparent"
|
||||
<vn-chip
|
||||
class="transparent"
|
||||
ng-class="{'alert': $ctrl.amountsNotMatch}"
|
||||
translate-attr="{title: $ctrl.amountsNotMatch ? 'Do not match' : 'Due day'}"
|
||||
translate-attr="{title: $ctrl.amountsNotMatch ? 'Do not match' : 'Due day'}"
|
||||
>{{$ctrl.summary.totals.totalDueDay | currency: 'EUR':2 | dashIfEmpty}}
|
||||
</vn-chip>
|
||||
</vn-one>
|
||||
|
@ -59,7 +61,7 @@
|
|||
|
||||
<vn-one ng-if="$ctrl.summary.invoiceInTax.length != 0">
|
||||
<h4>
|
||||
<a
|
||||
<a
|
||||
ui-sref="invoiceIn.card.tax({id:$ctrl.invoiceIn.id})"
|
||||
target="_self">
|
||||
<span translate vn-tooltip="Go to">Vat</span>
|
||||
|
@ -92,7 +94,7 @@
|
|||
<vn-horizontal>
|
||||
<vn-one ng-if="$ctrl.summary.invoiceInDueDay.length != 0">
|
||||
<h4>
|
||||
<a
|
||||
<a
|
||||
ui-sref="invoiceIn.card.dueDay({id:$ctrl.invoiceIn.id})"
|
||||
target="_self">
|
||||
<span translate vn-tooltip="Go to">Due day</span>
|
||||
|
@ -121,7 +123,7 @@
|
|||
<vn-horizontal>
|
||||
<vn-one ng-if="$ctrl.summary.invoiceInIntrastat.length != 0">
|
||||
<h4>
|
||||
<a
|
||||
<a
|
||||
ui-sref="invoiceIn.card.intrastat({id:$ctrl.invoiceIn.id})"
|
||||
target="_self">
|
||||
<span translate vn-tooltip="Go to">Intrastat</span>
|
||||
|
@ -139,7 +141,7 @@
|
|||
</vn-thead>
|
||||
<vn-tbody>
|
||||
<vn-tr ng-repeat="intrastat in $ctrl.summary.invoiceInIntrastat">
|
||||
<vn-td>{{::intrastat.intrastatFk}}: {{::intrastat.intrastat.description}}</vn-td>
|
||||
<vn-td>{{::intrastat.intrastatFk}}: {{::intrastat.intrastat.description}}</vn-td>
|
||||
<vn-td>{{::intrastat.amount | currency: 'EUR':2}}</vn-td>
|
||||
<vn-td>{{::intrastat.net}}</vn-td>
|
||||
<vn-td>{{::intrastat.stems}}</vn-td>
|
||||
|
@ -152,4 +154,4 @@
|
|||
</vn-card>
|
||||
<vn-supplier-descriptor-popover
|
||||
vn-id="supplierDescriptor">
|
||||
</vn-supplier-descriptor-popover>
|
||||
</vn-supplier-descriptor-popover>
|
Loading…
Reference in New Issue