Reporte VFP 9 con dos cursores no relacionados.

736 views
Skip to first unread message

Juan Martinez Mañon

unread,
Dec 13, 2017, 12:22:53 PM12/13/17
to Comunidad de Visual Foxpro en Español
Tengo un Forma para imprimir un Recibo. En dicha forma, he creado dos cursores con Nombres de Cuotas y sus Cantidades (Nom_Cuota, Cantidad) y otro cursor con una lista de animales (Cant_animales, Descripcion) que hacen el total general en dicho recibo. Como ven, dichos cursores no están relacionados, aunque podría hacerlo por el número de recibo. Por otro lado en el encabezado, pongo el nombre de la persona que paga y sus datos generales, fecha y número de recibo (TODO ALMACENADO EN VARIABLES DE MI FORM) mi pregunta es y ojalá puedan ayudarme porque tengo dos semanas intentando.

¿Puedo generar dos bandas de detalle? una con todos los registros del cursor1 y la otra con todos los registros del cursor2 aunque estos no estén relacionados. He intentando relacionandolos con SET RELATION...pero sin y con relación el resultado es el mismo: Me imprime un registro del cursor1 y enseguida un registro del cursor2.

Que estoy haciendo mal...

Agradezco su apoyo amigos a la solución de este problema.

Atentamente

Juan Martínez M.
México

HernanCano

unread,
Dec 13, 2017, 1:57:44 PM12/13/17
to Comunidad de Visual Foxpro en Español
Muéstranos el .FRX y su .FRT .

Víctor Hugo Espínola Domínguez

unread,
Dec 13, 2017, 2:36:13 PM12/13/17
to publice...@googlegroups.com
Si quieres hacer report multibandas de detalles debes crear un tercer cursor que actue como master y los otros deben tener un campo para la relación con el master.

Otra solución es que unas los 2 cursores y hagas un reporte tradicional, el código para unir 2 tablas/cursores es como sigue:

Local lcSelUnion As String

Text To m.lcSelUnion Noshow Textmerge Pretext 15

    Select  *
        From tabla_1
        Left Join tabla_2
            On 1 = 0
    Union All
    Select  *
        From tabla_1
        Right Join tabla_2
            On 1 = 0
    Into Cursor curUnidos

Endtext

&lcSelUnion


Saludos,
Víctor.
Lambaré - Paraguay.

Juan Martinez Mañon

unread,
Dec 14, 2017, 1:18:44 AM12/14/17
to Comunidad de Visual Foxpro en Español
Que tal Hernán.

Ya no fue necesario mandartelo, pues quedo solucionado. Sin embargo, si haces un reporte VFP con dos detalles que no estén relacionados. Éste reporte, no tendrá sus datos de manera continua, a manera de listado. Estarán intercalados los datos del detalle 1 y detalle 2.

De antemano gracias!

Juan Martinez Mañon

unread,
Dec 14, 2017, 1:25:24 AM12/14/17
to Comunidad de Visual Foxpro en Español
Que tal Victor.

Agradezco tu ayuda, al final termine haciendo en base a tu consejo con UNION ALL, agregue un campo en común en ambos cursores y utilice la función IIF() para determinar que encabezados se van a mostrar, según que tipo de datos de mi cursor.

Pensé por un momento que había la manera de mostrar un 'Listin' de un cursor en un detalle1 y otro diferente en el detalle2, sin hacer mayor labor.

Agradezco el tiempo que se tomaron para escribirme y hacerme sus comentarios. Gracias por su apoyo como siempre.

Atentamente

Juan Martínez M.

CDDM

unread,
Aug 9, 2018, 11:35:33 AM8/9/18
to Comunidad de Visual Foxpro en Español
Hola. Estoy con el mismo problema. Como solucionaste el tema de losn2 cursores

Fabian Andres Vanegas Soto

unread,
Aug 9, 2018, 12:02:52 PM8/9/18
to publice...@googlegroups.com
Hola cosme buenas tardes, no estoy al contexto me puedes explicar que problema tienes?

Carlos Miguel FARIAS

unread,
Aug 9, 2018, 1:43:14 PM8/9/18
to Grupo Fox
Una solución propuesta en 2009 habla de relacionar los cursores con un set relation (en este mismo foro).
Otra solución es hacer un select sobre ambos cursores (o tablas, o mezcla) y acomodar los datos en las parte pertinentes del reporte.
Y no es buena memoria, es solo usar google, que hubiese sido 10^100 si hubiese sido bien escrito
Reply all
Reply to author
Forward
0 new messages