I can't find the error. can you help me?
DELIMITER $$
CREATE PROCEDURE ReadBalance (IN mes INT,IN anio INT)
BEGIN
DECLARE rowid INT;
DECLARE entity INT;
DECLARE grupo VARCHAR(100);
DECLARE relacion INT;
DECLARE ini INT;
DECLARE fin INT;
DECLARE tipo INT;
DECLARE detalle INT;
DECLARE ctain INT;
DECLARE ctaen INT;
DECLARE debe DECIMAL(17,2);
DECLARE haber DECIMAL(17,2);
DECLARE saldo DECIMAL(17,2);
DECLARE done INT DEFAULT 0;
CREATE TEMPORARY TABLE Balance (
rowid INT NOT NULL
, entity TINYINT NOT NULL DEFAULT 0
, grupo VARCHAR(150) NOT NULL
, relacion INT UNSIGNED NOT NULL DEFAULT 0
, ini INT UNSIGNED NOT NULL DEFAULT 0
, fin INT UNSIGNED NOT NULL DEFAULT 0
, tipo INT UNSIGNED NOT NULL DEFAULT 1
, detalle INT UNSIGNED NOT NULL DEFAULT 0
, ctain INT UNSIGNED NOT NULL DEFAULT 0
, ctaen INT UNSIGNED NOT NULL DEFAULT 0
, debe DECIMAL(12,2) NOT NULL DEFAULT 0.00
, haber DECIMAL(12,2) NOT NULL DEFAULT 0.00
, saldo DECIMAL(12,2) NOT NULL DEFAULT 0.00
) ENGINE=MEMORY;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
DECLARE cur1 CURSOR FOR
SELECT
g.`rowid`,
g.`entity`,
g.`grupo`,
g.`fk_codagr_rel`,
g.`fk_codagr_ini`,
g.`fk_codagr_fin`,
g.`tipo_edo_financiero`,
g.`Detalle`,
ctai.`cta`,
ctae.`cta`
FROM
`llx_contab_grupos` g
INNER JOIN `llx_contab_cat_ctas` ctai
ON ctai.`rowid` = g.`fk_codagr_ini`
INNER JOIN llx_contab_cat_ctas ctae
ON ctae.`rowid` = g.`fk_codagr_fin` ;
OPEN cur1;
read_loop: LOOP
FETCH cur1 INTO rowid, entity, grupo,relacion, ini,fin,tipo,detalle,ctain,ctaen;
IF done =1THEN
LEAVE read_loop;
END IF;
SELECT debe := SUM(d.`debe`), haber:= SUM(d.`haber`) FROM `llx_contab_polizasdet` d
INNER JOIN llx_contab_polizas e ON e.`rowid` = d.`fk_poliza`
WHERE e.`anio` = anio
AND e.`mes` = mes
AND d.`cuenta` >= ctain
AND d.`cuenta` <= ctaen
;
saldo = debe-haber;
INSERT INTO Balance (
rowid,
entity,
grupo,
relacion,
ini,
fin,
tipo,
detalle,
ctain,
ctaen,
debe,
haber,
saldo
)
VALUES
(
rowid,
entity,
grupo,
relacion,
ini,
fin,
tipo,
detalle,
ctain,
ctaen,
debe,
haber,
saldo
) ;
END LOOP read_loop;
CLOSE cur1;
SELECT * FROM Balance;
END$$
DELIMITER ;
error message:
1 queries executed, 0 success, 1 errors, 0 warnings
Query:
CREATE PROCEDURE ReadBalance (IN mes INT,IN anio INT) BEGIN DECLARE rowid INT;
DECLARE entity INT;
DECLARE grupo VARCHAR(100); D...
Error Code: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
DECLARE cur1 CURSOR FOR
SE' at line 32
Execution Time : 0 sec
Transfer Time : 0 sec
Total Time : 0 sec