DELIMITER $$ CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`till_new`( vClient INT, vBank INT, vAmount DOUBLE, vConcept VARCHAR(25), vDated DATE, vSerie CHAR(1), vBatch TINYINT, vNumber INT, vCompany SMALLINT, vWorker INT ) BEGIN DECLARE vAccount VARCHAR(12); DECLARE vSubaccount VARCHAR(12); DECLARE vAsiento INT DEFAULT NULL; -- Inserta el registro en cajas INSERT INTO till SET workerFk = vWorker, bankFk = vBank, `in` = vAmount, concept = vConcept, dated = vDated, serie = vSerie, isAccountable = vBatch, `number` = vNumber, companyFk = vCompany; -- Inserta los asientos contables SELECT account INTO vAccount FROM accounting WHERE id = vBank; SELECT accountingAccount INTO vSubaccount FROM `client` WHERE id = vClient; CALL xdiario_new( vAsiento, vDated, vAccount, vSubaccount, vConcept, vAmount, 0, 0, NULL, -- Serie NULL, -- Factura NULL, -- IVA NULL, -- Recargo FALSE, -- Auxiliar vCompany, vAsiento); CALL xdiario_new( vAsiento, vDated, vSubaccount, vAccount, vConcept, 0, vAmount, 0, NULL, -- Serie NULL, -- Factura NULL, -- IVA NULL, -- Recargo FALSE, -- Auxiliar vCompany, vAsiento); END$$ DELIMITER ;