Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/10/2014, 17:41
matypappo
 
Fecha de Ingreso: octubre-2014
Mensajes: 1
Antigüedad: 9 años, 6 meses
Puntos: 0
Pregunta Problema con SP para generar reporte de ventas,

Hola gente, les vengo a plantear mi problema que estoy teniendo con un Store Procedure.
Yo estoy creando un SP que me devuelva las Ventas y los productos de esa venta
Tengo 2 tablas relacionadas para esto (ventas y productos_venta)
Las ventas pueden ser varias ya que iran desde una fecha hacia otra.
La idea es generar a partir de este SP un reporte de ventas en un rango de fechas desde un sistema que estoy desarrollando en .Net con Crystal Report.

Este es el SP en cuestion:


BEGIN

CREATE PROCEDURE `ReportVentas`(IN `fecha1` DATE, IN `fecha2` DATE)

DECLARE vb_termina BOOL DEFAULT FALSE;
DECLARE VV_idVenta float ;

-- Lleno un cursoR con los idVenta que deseo mostrar para luego recorrerlo

DECLARE CrVentas CURSOR
FOR SELECT idVenta from ventas where fecha
BETWEEN fecha1
AND fecha2;

DECLARE CONTINUE HANDLER
FOR SQLSTATE '02000'
SET vb_termina = TRUE;
-- Recorro el cursor
OPEN CrVentas;
Recorre_Cursor: LOOP
FETCH CrVentas INTO VV_idVenta;

IF vb_termina THEN
LEAVE Recorre_Cursor;
END IF;

-- En esta consulta traeria la venta
select * from ventas where idVenta = VV_idVenta;

-- En esta los productos de esa venta
select * from productos_venta where idVenta = VV_idVenta;

END LOOP;
CLOSE CrVentas;


END;


El problema es que las consultas no tiran el resultado deseado, no se como explicarlo. datos mal organizados en campos donde no deberian ir. No se si esta bien meter 2 select en LOOP.

Llamado:
call ReportVentas('2014-09-28', '2014-10-15')

Alguien que me de una mano o si sabe de otra forma de lograr esto lo agradeceria.