Saludos, gracias por la la informacion, fue de mucha ayuda, sin embargo no logro
dominar este codigo. Intente hacer manejar un Handler pero no supe hacerlo doble por mi falta de experiencia en mysql.
Intente trabajar con un LOOP de tipo REPEAT pero el workBench me recomienda usar
Repeatable no se porque pero lei algo que las tablas cuando es de tipo InnoDB es con Repeatable.
Le pido mil disculpas por la molestia, por favor colaborarme nuevamente en este codigo.
Mil gracias..
Código MySQL:
Ver originaldelimiter //
WHERE fact_fecha
>= fecha_inicio
AND fact_fecha
<= fecha_final
;
DECLARE crs_cod_prod CURSOR FOR
SELECT ord_cod_zap
,pro_nomb
,cal_cost
,pro_nit
FROM ord_compra oc
, Producto p
,Calzado c
WHERE ord_cod_fact
= codigo_factura
; OPEN cursor_suma;
FETCH cursor_suma
INTO total_registro
; OPEN crs_num_fact;
OPEN crs_cod_prod; -- abre el LOOP
crs_cod_fact_loop:LOOP
WHILE acumulador
<= total_registro
DO-- LOOP donde recorrera las fechas que se filtraron FETCH crs_num_fact
INTO cod_factura
,fecha_factura
; OPEN crs_cod_prod;
SET acumulador
= acumulador
+ 1; -- contador de uno en uno. crs_cod_pro_loop:LOOP --
FETCH crs_cod_prod
INTO cod_producto
, nombre_producto
,costo
,nit
; INSERT INTO informe
VALUES('',fecha_factura
,cod_producto
,nombre_producto
,costo
,nit
); IF v_last_row_fetched
= 1 THEN Leave crs_num_fact_loop;
END LOOP crs_cod_pro_loop
; CLOSE csr_num_fact;
CLOSE csr_cod_prod;
delimiter ;