DELIMITER $$
CREATE OR REPLACE DEFINER=`vn`@`localhost` PROCEDURE `vn`.`invoiceFromAddress`(vMaxTicketDate DATETIME,vAddress INT,vCompany INT)
BEGIN

	DECLARE vMinDateTicket DATE DEFAULT TIMESTAMPADD(MONTH, -3, util.VN_CURDATE());

	SET vMaxTicketDate = util.dayEnd(vMaxTicketDate);

	DROP TEMPORARY TABLE IF EXISTS `tmp`.`ticketToInvoice`;

	CREATE TEMPORARY TABLE `tmp`.`ticketToInvoice`
		(PRIMARY KEY  (`id`))
		ENGINE = MEMORY
		SELECT id 
			FROM ticket 
			WHERE (shipped BETWEEN vMinDateTicket AND vMaxTicketDate) 
				AND addressFk = vAddress
				AND refFk IS NULL 
				AND companyFk = vCompany;

END$$
DELIMITER ;
