drop procedure `vn`.`invoiceFromClient`; DELIMITER $$ $$ create definer = root@`%` procedure `vn`.`invoiceFromClient`(IN vMaxTicketDate datetime, IN vClientFk INT, IN vCompanyFk INT) BEGIN DECLARE vMinTicketDate DATE DEFAULT TIMESTAMPADD(YEAR, -3, CURDATE()); SET vMaxTicketDate = util.dayend(vMaxTicketDate); DROP TEMPORARY TABLE IF EXISTS `ticketToInvoice`; CREATE TEMPORARY TABLE `ticketToInvoice` (PRIMARY KEY (`id`)) ENGINE = MEMORY SELECT id FROM ticket t WHERE t.clientFk = vClientFk AND t.refFk IS NULL AND t.companyFk = vCompanyFk AND (t.shipped BETWEEN vMinTicketDate AND vMaxTicketDate); END;;$$ DELIMITER ;