Tema: Reporte
Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/06/2012, 09:32
palmach
 
Fecha de Ingreso: noviembre-2007
Mensajes: 37
Antigüedad: 16 años, 6 meses
Puntos: 0
Reporte

Buenos dias, espero poder explicarme este reporte como parametro me pide solo la fecha final y al generarlo sale el reporte desde el primer dia del mes hasta la fecha final que uno ingresa. Y mi pregunta es como puedo hacer que en este mismo reporte salgan el total de galones pero desde el primer dia del mes hasta un dia antes de la fecha final que uno ingresa?

Código:
DELIMITER $$

DROP PROCEDURE IF EXISTS `usp_Consolidado` $$
CREATE DEFINER=`tomza`@`%` PROCEDURE `usp_Consolidado`(
         in pFechaFinal varchar(50)


)
BEGIN

DROP TABLE IF EXISTS Tmp;
CREATE TABLE Tmp


SELECT factura.fecha as fecha,personal.codigo as codigo, concat(personal.nombres, ' ', personal.apellidos) nombre,distribucion.nombre as distribucion,
if(articulo.codigo='2005', factura_detalle.cantidad,0) as CL05,
if(articulo.codigo='2010', factura_detalle.cantidad,0) as CL10,
if(articulo.codigo='2020', factura_detalle.cantidad,0) as CL20,
if(articulo.codigo='2025', factura_detalle.cantidad,0) as CL25,
if(articulo.codigo='2035', factura_detalle.cantidad,0) as CL35,
if(articulo.codigo='2040', factura_detalle.cantidad,0) as CL40,
if(articulo.codigo='2060', factura_detalle.cantidad,0) as CL60,
if(articulo.codigo='2100', factura_detalle.cantidad,0) as CL100,



if(articulo.codigo='2005' or articulo.codigo='2010' or articulo.codigo='2020' or articulo.codigo='2025'
or articulo.codigo='2035' or articulo.codigo='2040' or articulo.codigo='2060' or  articulo.codigo='2100',factura_detalle.cantidad,0)  as cilingaldros,

if(articulo.codigo='2005' or articulo.codigo='2010' or articulo.codigo='2020' or articulo.codigo='2025'
or articulo.codigo='2035' or articulo.codigo='2040' or articulo.codigo='2060' or  articulo.codigo='2100',factura_detalle.galones,0) as equival_galones,

if(articulo.codigo='4000' or articulo.codigo='5000',factura_detalle.galones,0) as galones


from factura_detalle
inner join factura on factura_detalle.facturaid=factura.facturaid
inner join personal on factura.pilotoid=personal.personalid
inner join distribucion on factura.distribucionid=distribucion.distribucionid
inner join articulo on factura_detalle.articuloid=articulo.articuloid where articulo.codigo='2005' or articulo.codigo='2010' or articulo.codigo='2020'
or articulo.codigo='2025' or articulo.codigo='2035' or articulo.codigo='2040' or articulo.codigo='2060' or articulo.codigo='2100' or articulo.codigo='4000' or articulo.codigo='5000';

select date_format(fecha, '%Y/%m/%d'),codigo, nombre,distribucion,
(sum(CL05) + sum(CL10)) as OTROS, sum(CL20) as CL20, sum(CL25) as CL25, sum(CL35) as CL35, sum(CL40) as CL40, sum(CL60) as CL60,
sum(CL100) as CL100,
sum(cilingaldros) as cilingaldros, sum(equival_galones) as equival_galones, sum(galones) as galones



from tmp c

where
      date_format(fecha, '%Y/%m/%d') between date_format(pFechaFinal,'%Y/%m/01') and   date_format(pFechaFinal,'%Y/%m/%d')
group by codigo order by fecha;


END $$

DELIMITER ;