Reportes en PB

Saludos estimado experto, necesito hacer Reportes en PB relacionados con el control de stock de productos, puntualmente sobre los "X" productos más vendidos, los menos vendidos, los productos que más devoluciones tuvieron por presentar fallas... Tengo problemas para implementarlos en un datawindow se que necesito sentencias SQL para obtener esa información pero como la relacionaría con el objeto dw, es decir como lo crearía de tal forma que con dicha sentencia sql asociada al dw me genere los reportes que deseo... Espero por favor su pronta ayuda, gracias

1 respuesta

Respuesta
1
Podrias usar varios Dw (1 x cada caso) o un o varios procedimiento almacenado(1 x cada caso).
Espero haberte entendido, de lo contrario explica mejor tu pregunta. Da la impresión que no manejas muy bien el power builder.
Finaliza tu pregunta o descártala.
Hola mi estimado experto, veo que no me captaste la idea, bien te explico... lo que sucede es que necesito hacer ese tipo de reportes pero para eso, según lo que puede encontrar de información, me dicen que implemente procedimientos almacenados o en todo caso datastores(?) Para lograr los resultados que requiero por ejem: para obtener los productos más vendidos, como sería el stored procedure para después desplegarlo en un datawindow y mostrarlo para su posterior impresión, no conozco mucho de procedimientos almacenados si fueras tan amable de ayudarme en ese aspecto por favor... Gracias.
Esto depende mucho de la estructura de tus tablas en tu bd, citare a 3 tablas para poder elaborar un ejemplo.
/*
Productos (Campos:idproducto,nombreproducto,precioproducto,ect)
venta_cabecera (Campos:tipo_documento,nro_documento,fecha_documento,total_documento,etc)
venta_detalle (Campos:tipo_documento,nro_documento,idproducto,cantidad)
mi store para saber mis productos mas vendidos
En el Sql (Analizador de consultas)
*/
Create procedure sp_reporte_ranking_producto
as
Select vd.idproducto,p.nombreproducto,sum(vd.cantidad) as qty
from venta_detalle vd
inner join productos p on vd.idproducto = p.idproducto
group by vd.idproducto,p.nombreproducto
order by qty desc
go
esto me devolvera una consulta pero de todos los productos que esten en mi tabla de detalle_venta ordeno de manera descendente por la sumatoria de cantidad, ya que la cantidad vendida es la que quieres medir.luego si no kieres ver todos podrias agregar un TOP, ejemplo kiero ver los 100 mas vendidosm tendrias que agregar al TOP 100 y quedaria de esta manera:
Create procedure sp_reporte_ranking_producto
as
Select top 100 vd.idproducto,p.nombreproducto,sum(vd.cantidad) as qty
from venta_detalle vd
inner join productos p on vd.idproducto = p.idproducto
group by vd.idproducto,p.nombreproducto
order by qty desc
go
weno solo te restaria crear tu datawindow tipo group (el mas usado para reportes) y modelarlo y anexarlo a tu control datawindow.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas