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

Tienen toda la razon gnzsoloyo y leonardo_josue ya hice los cambios gracias,
ahora con eso lo de DATE_SUB(fecha, INTERVAL 1 DAY); si lo entendi ahora como lo pongo para que me de el resultado de galones del primer dia del mes hasta un dia antes de la fecha final y tambien q me de el resultado de galones pero solo lo de la fecha final en el mismo reporte?


Código:
DELIMITER $$

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


)
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 fecha,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
      fecha between date_format(pFechaFinal,'%Y/%m/01') and   date_format(pFechaFinal,'%Y/%m/%d')
group by codigo order by fecha;


END $$

DELIMITER ;