Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/02/2015, 16:04
wilmer_hardy
 
Fecha de Ingreso: febrero-2015
Ubicación: Lima - Peru
Mensajes: 5
Antigüedad: 9 años, 2 meses
Puntos: 0
Exportar excel en una sola fila para varios productos

Hola Amigos


Estoy haciendo un reporte en excel y muestro los siguientes campos(los mas principales). Los campos del excel lo traigo de una consulta mysql, el excel me muestra el numero de pedido y todos los productos que pertenecen a ese pedido con su descripcion.

Primer Reporte
| nro de pedido-|codigo de producto-|descripcion--------------|
| PE-001----------|ATL-0001-------------|Televisor LCD
| PE-001----------|ATP-0002-------------|Telivisor Plasma
| PE-002----------|ALC-0002-------------|Lavadora Blanca
| PE-003----------|USB--------------------|Memoria USB 1 GB
| PE-003----------|USB--------------------|Memoria USB 2 GB
| PE-003----------|n cantidad usb's-----| . . . .
| PE-003----------|USB--------------------|Memoria USB 8 GB
| PE-003----------|USB--------------------|Memoria USB 16 GB
| PE-004----------|ARB-0001-------------|Refrigeradora Blanca


Lo que quiero hacer es presentarlo de la siguiente manera.

Reporte Deseado
| nro de pedido--|codigo de producto-|descripcion |
| PE-001----------|ATL-0001-------------|Televisor LCD
| PE-001----------|ATP-0002-------------|Telivisor Plasma
| PE-002----------|ALC-0002-------------|Lavadora Blanca
| PE-003----------|USB--------------------|Generico
| PE-004----------|ARB-0001-------------|Refrigeradora Blanca

En este caso cuando el pedido tiene un solo producto del mismo tipo, como el caso del pedido 3 (PE-003) que solo contiene USBs de diferentes capacidades, busco que solo se imprima una sola vez en una sola fila y el campo descripcion muestre "Generico".

la query que tengo solo me resuelve el campo descripcion, pero me exporta aun como el primer reporte. muestro el codigo de la consulta msyql:

Código MySQL:
Ver original
  1. SELECT  pe.nro_pedido as nro, pr.codigo_producto as codigo,
  2. IF(CHARACTER_LENGTH(pr.codigo_producto) <= 3, 'Generico',pr.Descripcion ) as descripcion,
  3. FROM pedidos pe
  4. INNER JOIN productodetalle pr ON pr.nro_pedido=pe.nro_pedido
  5. INNER JOIN productos pro.codigo_producto=pr.codigo_producto

Me pueden dar algunas ideas de como resolverlo y presentarlo como menciono, si lo puedo hacer mediante mysql o con ayuda de codigo php.

Gracias por la ayuda a todos.

Última edición por gnzsoloyo; 08/02/2015 a las 16:30