6444-MigrateVn2008.intrastat_netoFunctionToVn #1972

Merged
ivanm merged 10 commits from 6444-MigrateVn2008.intrastat_netoFunctionToVn into dev 2024-02-06 13:21:24 +00:00
1 changed files with 22 additions and 11 deletions
Showing only changes of commit 1a869766b9 - Show all commits

View File

@ -1,21 +1,32 @@
DELIMITER $$
CREATE OR REPLACE DEFINER=`root`@`localhost` FUNCTION `vn`.`intrastat_estimateNet`(vIntrastat INT, vUnidades INT)
CREATE OR REPLACE DEFINER=`root`@`localhost` FUNCTION `vn`.`intrastat_estimateNet`(

Falta cambiar los nombres de las variables y formatear mejor el código

Falta cambiar los nombres de las variables y formatear mejor el código

Las variables deben de ir en ingles, de todas formas si quieres cuando vengas comentamos

Las variables deben de ir en ingles, de todas formas si quieres cuando vengas comentamos
vSelf INT,
vUnits INT

Al final crec que es millor ficar vStems per a seguir la mateixa nomenclatura

Al final crec que es millor ficar vStems per a seguir la mateixa nomenclatura
)
RETURNS double
DETERMINISTIC
BEGIN
/**
* Calcula un valor neto estimado en función de
* datos históricos de facturas intrastat.
*
* @param vSelf Id de intrastat
* @param vUnits Número de unidades
* @return vNet
*/
DECLARE vNet DOUBLE;
SELECT ROUND(vUnidades / (SUM(media) / COUNT(media)), 2) INTO vNet
FROM (SELECT *, unidades / neto media
FROM vn2008.intrastat_data
WHERE intrastat_id = vIntrastat
AND neto
AND unidades > 0
ORDER BY odbc_date DESC
LIMIT 20) t;
SELECT ROUND(vUnits / (SUM(average) / COUNT(average)), 2) INTO vNet
FROM (
SELECT *, stems / net average
FROM invoiceInIntrastat
WHERE intrastatFk = vSelf
AND net
AND stems > 0
ORDER BY dated DESC
LIMIT 20
) sub;
RETURN vNet/2;
END$$
DELIMITER ;