DELIMITER $$ CREATE OR REPLACE DEFINER=`vn`@`localhost` PROCEDURE `vn`.`ticketStateToday_setState`(vTicketFk INT, vStateCode VARCHAR(45)) BEGIN /* Modifica el estado de un ticket de hoy * * @param vTicketFk el id del ticket * @param vStateCode estado a modificar del ticket * */ DECLARE vAlertLevel INT; DECLARE vAlertLevelPacked INT; SELECT s.alertLevel, al.id INTO vAlertLevel, vAlertLevelPacked FROM state s JOIN ticketStateToday tst ON tst.state = s.id JOIN alertLevel al ON al.code = 'PACKED' WHERE tst.ticketFk = vTicketFk LIMIT 1; IF vAlertLevel < vAlertLevelPacked THEN CALL vn.ticket_setState(vTicketFk, vStateCode); END IF; END$$ DELIMITER ;