7836-futureEntries #2839

Merged
pako merged 5 commits from 7836-futureEntries into dev 2024-08-08 06:06:23 +00:00
1 changed files with 128 additions and 128 deletions
Showing only changes of commit 9b2cbcd5cc - Show all commits

View File

@ -1,5 +1,4 @@
DELIMITER $$
$$
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE vn.supplier_statementWithEntries(
pako marked this conversation as resolved
Review

Esta linea sobra

Esta linea sobra
vSupplierFk INT,
vCurrencyFk INT,
@ -20,9 +19,15 @@ BEGIN
* @param vHasEntries Indicates if future entries must be shown
* @return tmp.supplierStatement
*/
DECLARE vBalanceStartingDate DATETIME;
SET @euroBalance:= 0;
SET @currencyBalance:= 0;
SELECT balanceStartingDate
INTO vBalanceStartingDate
FROM invoiceInConfig;
CREATE OR REPLACE TEMPORARY TABLE tmp.supplierStatement
ENGINE = MEMORY
SELECT *,
@ -35,8 +40,6 @@ BEGIN
IFNULL(invoiceCurrency, 0), 2
) currencyBalance
FROM (
SELECT * FROM
(
SELECT NULL bankFk,
ii.companyFk,
ii.serial,
@ -63,8 +66,7 @@ BEGIN
FROM invoiceIn ii
JOIN invoiceInDueDay iid ON iid.invoiceInFk = ii.id
pako marked this conversation as resolved Outdated

Como utilizas este campo iic.balanceStartingDate de la tabla invoiceInConfig, es mejor que lo setees en una variable, así no tienes que acceder a el 2 veces, sino 1.

https://wiki.verdnatura.es/index.php/Convenciones_SQL#Obtener_dato_de_una_tabla_config

Como utilizas este campo iic.balanceStartingDate de la tabla invoiceInConfig, es mejor que lo setees en una variable, así no tienes que acceder a el 2 veces, sino 1. https://wiki.verdnatura.es/index.php/Convenciones_SQL#Obtener_dato_de_una_tabla_config
Outdated
Review

ok

ok
JOIN currency c ON c.id = ii.currencyFk
JOIN invoiceInConfig iic
WHERE ii.issued >= iic.balanceStartingDate
WHERE ii.issued >= vBalanceStartingDate
AND ii.supplierFk = vSupplierFk
AND vCurrencyFk IN (ii.currencyFk, 0)
AND vCompanyFk IN (ii.companyFk, 0)
@ -100,8 +102,7 @@ BEGIN
LEFT JOIN accounting a ON a.id = p.bankFk
LEFT JOIN payMethod pm ON pm.id = p.payMethodFk
LEFT JOIN promissoryNote pn ON pn.paymentFk = p.id
JOIN invoiceInConfig iic
WHERE p.received >= iic.balanceStartingDate
WHERE p.received >= vBalanceStartingDate
AND p.supplierFk = vSupplierFk
AND vCurrencyFk IN (p.currencyFk, 0)
AND vCompanyFk IN (p.companyFk, 0)
@ -149,18 +150,17 @@ BEGIN
FALSE isBooked,
c.code,
'order'
pako marked this conversation as resolved Outdated

Quitar vn.

Quitar vn.
FROM vn.entry e
FROM entry e
JOIN travel tr ON tr.id = e.travelFk
JOIN currency c ON c.id = e.currencyFk
WHERE e.supplierFk = vSupplierFk
AND tr.landed >= CURDATE()
AND e.invoiceInFk IS NULL
AND vHasEntries
) sub
ORDER BY (dated IS NULL AND NOT isBooked),
dated,
IF(vOrderBy = 'dueDate', id, NULL)
LIMIT 10000000000000000000
) t;
END;$$
END$$
pako marked this conversation as resolved Outdated

END$$

END$$
DELIMITER ;