FoxPro/Visual FoxPro - Multiples bandas de detalle + Sql Passthrough

 
Vista:

Multiples bandas de detalle + Sql Passthrough

Publicado por Rony (4 intervenciones) el 31/01/2007 00:25:56
Hola que tal!

Les cuento mi problema: estoy trabajndo con ms visual foxpro 9 y sql server 2000 como BD. Tengo un reporte donde se muestra una factura con sus detalles, para esto creo 2 cursores, asi:

sqlExec(conexion, "Select * from facturas Where codigo = 1", "CursorMaestro")
sqlExec(conexion, "Select * from detalles_facturas Where codigo = 1", "CursorDetalles")

En el init del DataEnvironment del reporte tengo esto:

Select CursorMaestro
Go Top
Select CursorDetalles
Go Top

Hasta aqui todo bien, se muestra en el reporte las facturas con sus detalles; el problema es que ahora necesito agregar una banda de detalles adicional porque ahora debos mostrar ademas del maestro de la factura con sus detalles los detalles cotizados (hay una relación entre "facturas" y "detalles_cotizaciones")

Intente agregando esto:
sqlExec(conexion, "Select * from detalles_cotizaciones Where codigo_fac = 1", "CursorDetalles")

Esto para traer todos los detalles de cotizaciones relacionados a la factura y efectivamente lo hace bien, osea que ya tengo los tres cursores creados por medio de sqlExec con los datos necesarios, pero cuendo agrego el cursor "detalles_cotizaciones" a la nueva banda de detalles en tiempo de ejecución lo que hace es repetir la primera fila tanto del cursor con los detalles_factura como del cursor con los detalles_cotizaciones.. Más o menos algo asi queda el reporte:

Prouctos Facturados:
Cod Descrip Cantidad
01 Lapiz 2
01 Lapiz 2
01 Lapiz 2

Productos cotizados: (Esto es lo que esta en la nueva banda de detalles)
03 Tinta 1
03 Tinta 1

Cuando en realidad "detalles_facturas" tiene esto:
01 Lapiz 2
02 Tinta 3
08 Cuaderno 4
Y "detalles_cotizaciones" tiene esto:
03 Tinta 1
08 Cuaderno 5

Ya revise en páginas como esta: http://www.portalfox.com/index.php?name=News&file=article&sid=2178 pero no veo como hacerlo cuando no se trabaja con la BD nativa de visual foxpro sino que como en este caso son cursores creados con sqlExec.

Espero haberme explicado bien y me puedan ayudar.. Gracias por su tiempo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Multiples bandas de detalle + Sql Passthrough

Publicado por ramon (47 intervenciones) el 04/02/2007 07:12:25
lo que no veo es como relacionas el cursor padre con los cursures hijos, las relaciones existentes en la bd remota no son creadas en los cursores generados con sqlexec, las tienes que crear tu en forma manual para los cursores generados
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar