fix: riesgos #2225
|
@ -34,19 +34,19 @@ BEGIN
|
||||||
currencyFk
|
currencyFk
|
||||||
FROM (
|
FROM (
|
||||||
SELECT p.supplierFk,
|
SELECT p.supplierFk,
|
||||||
p.companyFk,
|
p.companyFk,
|
||||||
IF (p.currencyFk = vCurrencyEuroFk, p.amount, p.divisa) AS amount,
|
IF (p.currencyFk = vCurrencyEuroFk, p.amount, p.divisa) AS amount,
|
||||||
p.dueDated < vStartingDate isBeforeStarting,
|
p.dueDated < vStartingDate isBeforeStarting,
|
||||||
p.currencyFk
|
p.currencyFk
|
||||||
FROM payment p
|
FROM payment p
|
||||||
WHERE p.received > vStartDate
|
WHERE p.received > vStartDate
|
||||||
AND p.companyFk = vSelf
|
AND p.companyFk = vSelf
|
||||||
UNION ALL
|
UNION ALL
|
||||||
SELECT r.supplierFk,
|
SELECT r.supplierFk,
|
||||||
r.companyFk,
|
r.companyFk,
|
||||||
- IF (r.currencyFk = vCurrencyEuroFk, rv.amount, rv.foreignValue) AS Total,
|
- IF (r.currencyFk = vCurrencyEuroFk, rv.amount, rv.foreignValue) AS Total,
|
||||||
rv.dueDated < vStartingDate isBeforeStarting,
|
rv.dueDated < vStartingDate isBeforeStarting,
|
||||||
r.currencyFk
|
r.currencyFk
|
||||||
FROM invoiceIn r
|
FROM invoiceIn r
|
||||||
INNER JOIN invoiceInDueDay rv ON r.id = rv.invoiceInFk
|
INNER JOIN invoiceInDueDay rv ON r.id = rv.invoiceInFk
|
||||||
WHERE r.issued > vStartDate
|
WHERE r.issued > vStartDate
|
||||||
|
@ -57,7 +57,7 @@ BEGIN
|
||||||
DROP TEMPORARY TABLE IF EXISTS tPendingDuedates;
|
DROP TEMPORARY TABLE IF EXISTS tPendingDuedates;
|
||||||
CREATE TEMPORARY TABLE tPendingDuedates (
|
CREATE TEMPORARY TABLE tPendingDuedates (
|
||||||
id INT auto_increment,
|
id INT auto_increment,
|
||||||
expirationId INT,
|
expirationId INT,
|
||||||
dated DATE,
|
dated DATE,
|
||||||
supplierFk INT NOT NULL,
|
supplierFk INT NOT NULL,
|
||||||
companyFk INT NOT NULL,
|
companyFk INT NOT NULL,
|
||||||
|
@ -82,35 +82,35 @@ BEGIN
|
||||||
isPayment,
|
isPayment,
|
||||||
isReconciled
|
isReconciled
|
||||||
)SELECT p.id,
|
)SELECT p.id,
|
||||||
p.dueDated,
|
p.dueDated,
|
||||||
p.supplierFk,
|
p.supplierFk,
|
||||||
p.companyFk,
|
p.companyFk,
|
||||||
IF (p.currencyFk = vCurrencyEuroFk, p.amount, p.divisa),
|
IF (p.currencyFk = vCurrencyEuroFk, p.amount, p.divisa),
|
||||||
p.currencyFk,
|
p.currencyFk,
|
||||||
TRUE isPayment,
|
TRUE isPayment,
|
||||||
p.isConciliated
|
p.isConciliated
|
||||||
FROM payment p
|
FROM payment p
|
||||||
WHERE p.dueDated >= vStartingDate
|
WHERE p.dueDated >= vStartingDate
|
||||||
AND p.companyFk = vSelf
|
AND p.companyFk = vSelf
|
||||||
UNION ALL
|
UNION ALL
|
||||||
SELECT r.id,
|
SELECT r.id,
|
||||||
rv.dueDated,
|
rv.dueDated,
|
||||||
r.supplierFk,
|
r.supplierFk,
|
||||||
r.companyFk,
|
r.companyFk,
|
||||||
-IF (r.currencyFk = vCurrencyEuroFk, rv.amount, rv.foreignValue),
|
-IF (r.currencyFk = vCurrencyEuroFk, rv.amount, rv.foreignValue),
|
||||||
r.currencyFk,
|
r.currencyFk,
|
||||||
FALSE isPayment,
|
FALSE isPayment,
|
||||||
TRUE
|
TRUE
|
||||||
FROM invoiceIn r
|
FROM invoiceIn r
|
||||||
LEFT JOIN tOpeningBalances si ON r.companyFk = si.companyFk
|
LEFT JOIN tOpeningBalances si ON r.companyFk = si.companyFk
|
||||||
AND r.supplierFk = si.supplierFk
|
AND r.supplierFk = si.supplierFk
|
||||||
AND r.currencyFk = si.currencyFk
|
AND r.currencyFk = si.currencyFk
|
||||||
JOIN invoiceInDueDay rv ON r.id = rv.invoiceInFk
|
JOIN invoiceInDueDay rv ON r.id = rv.invoiceInFk
|
||||||
WHERE rv.dueDated >= vStartingDate
|
WHERE rv.dueDated >= vStartingDate
|
||||||
AND (si.closingBalances IS NULL OR si.closingBalances <> 0)
|
AND (si.closingBalances IS NULL OR si.closingBalances <> 0)
|
||||||
AND r.isBooked
|
AND r.isBooked
|
||||||
AND r.companyFk = vSelf
|
AND r.companyFk = vSelf
|
||||||
ORDER BY supplierFk, companyFk, companyFk, dueDated, isPayment DESC, id;
|
ORDER BY supplierFk, companyFk, companyFk, dueDated, isPayment DESC, id;
|
||||||
-- Now, we calculate the outstanding amount for each receipt in descending order
|
-- Now, we calculate the outstanding amount for each receipt in descending order
|
||||||
SET @risk := 0.0;
|
SET @risk := 0.0;
|
||||||
SET @supplier := 0.0;
|
SET @supplier := 0.0;
|
||||||
|
@ -169,26 +169,29 @@ BEGIN
|
||||||
AND vp.supplierFk = rd.supplierFk
|
AND vp.supplierFk = rd.supplierFk
|
||||||
AND vp.companyFk = rd.companyFk
|
AND vp.companyFk = rd.companyFk
|
||||||
AND vp.currencyFk = rd.currencyFk
|
AND vp.currencyFk = rd.currencyFk
|
||||||
WHERE vp.isPayment = FALSE;
|
WHERE NOT vp.isPayment;
|
||||||
|
|
||||||
SELECT vp.expirationId,
|
SELECT vp.expirationId,
|
||||||
vp.dated,
|
vp.dated,
|
||||||
vp.supplierFk,
|
vp.supplierFk,
|
||||||
vp.companyFk,
|
vp.companyFk,
|
||||||
vp.currencyFk,
|
vp.currencyFk,
|
||||||
vp.amount,
|
vp.amount,
|
||||||
vp.pending,
|
vp.pending,
|
||||||
vp.balance,
|
vp.balance,
|
||||||
s.payMethodFk,
|
s.payMethodFk,
|
||||||
vp.isPayment,
|
vp.isPayment,
|
||||||
vp.isReconciled,
|
vp.isReconciled,
|
||||||
vp.endingBalance,
|
vp.endingBalance,
|
||||||
cr.amount clientRiskAmount
|
cr.amount clientRiskAmount,
|
||||||
|
co.CEE
|
||||||
FROM tPendingDuedates vp
|
FROM tPendingDuedates vp
|
||||||
LEFT JOIN supplier s ON s.id = vp.supplierFk
|
LEFT JOIN supplier s ON s.id = vp.supplierFk
|
||||||
LEFT JOIN client c ON c.fi = s.nif
|
LEFT JOIN client c ON c.fi = s.nif
|
||||||
LEFT JOIN clientRisk cr ON cr.clientFk = c.id
|
JOIN clientRisk cr ON cr.clientFk = c.id AND cr.companyFk = vp.companyFk
|
||||||
AND cr.companyFk = vp.companyFk;
|
LEFT JOIN supplierAccount sa ON sa.supplierFk = s.id
|
||||||
|
LEFT JOIN bankEntity be ON be.id = sa.bankEntityFk
|
||||||
|
LEFT JOIN country co ON co.id = be.countryFk;
|
||||||
|
|
||||||
DROP TEMPORARY TABLE tOpeningBalances;
|
DROP TEMPORARY TABLE tOpeningBalances;
|
||||||
DROP TEMPORARY TABLE tPendingDuedates;
|
DROP TEMPORARY TABLE tPendingDuedates;
|
||||||
|
|
Loading…
Reference in New Issue