salix/db/routines/vn/functions/currency_getRate.sql

30 lines
664 B
MySQL
Raw Normal View History

2024-11-27 17:20:20 +00:00
DELIMITER $$
CREATE OR REPLACE DEFINER=`vn`@`localhost` FUNCTION `vn`.`currency_getRate`(
vSelf VARCHAR(3),
vDated DATE
)
RETURNS DECIMAL(10,2)
NOT DETERMINISTIC
READS SQL DATA
BEGIN
/**
* Returns the rate exchange based on the specified currency
* and yesterday's exchange rate.
*
* @param vSelf The currency code
* @param vDated The date of exchangue
* @return vForeignRate The rate e of currency exchange
*/
DECLARE vForeignRate FLOAT UNSIGNED;
2024-11-27 17:20:20 +00:00
SELECT value INTO vForeignRate
FROM referenceRate
WHERE dated = IFNULL(vDated, util.yesterday())
AND currencyFk = vSelf
2024-11-27 17:20:20 +00:00
ORDER BY dated DESC
LIMIT 1;
RETURN vForeignRate;
END$$
DELIMITER ;