30 lines
664 B
MySQL
30 lines
664 B
MySQL
|
DELIMITER $$
|
||
|
CREATE OR REPLACE DEFINER=`root`@`localhost` FUNCTION `util`.`yearRelativePosition`(vYear INT)
|
||
|
RETURNS varchar(20) CHARSET utf8mb3 COLLATE utf8mb3_general_ci
|
||
|
DETERMINISTIC
|
||
|
BEGIN
|
||
|
/**
|
||
|
* Devuelve la posicion del año relativa al año actual.
|
||
|
* Se utiliza como cabecera en informes de balances.
|
||
|
*
|
||
|
* @param vYear Año a evaluar
|
||
|
* @return La posicion relativa del año
|
||
|
*/
|
||
|
DECLARE vCurYear INT DEFAULT YEAR(util.VN_CURDATE());
|
||
|
|
||
|
IF vYear = vCurYear THEN
|
||
|
RETURN 'curYear';
|
||
|
END IF;
|
||
|
|
||
|
IF vYear = vCurYear - 1 THEN
|
||
|
RETURN 'lastYear';
|
||
|
END IF;
|
||
|
|
||
|
IF vYear = vCurYear - 2 THEN
|
||
|
RETURN 'twoYearsAgo';
|
||
|
END IF;
|
||
|
|
||
|
RETURN 'other';
|
||
|
END$$
|
||
|
DELIMITER ;
|