original y duplicado en un mismo reporte

2,136 views
Skip to first unread message

marcelo .

unread,
Jan 6, 2013, 5:27:57 PM1/6/13
to publicesvfoxpro

Hola :

Tengo un reporte en el cual imprimo una factura con sus datos de cabecera ( cliente , cuit , dirección ,etc ) , y en el detalle los ítems facturados ( cantidad , precio unitario , descripción ) .

Este reporte imprime una factuar por hoja en tamaño a4 .

Lo que me solicitan ahora es : esta misma factura , que salga original y duplicado en la misma hoja  ( mitad para el original , mitad para el duplicado ).

La verdad no se me ocurre como hacerlo ( no tengo gran practica haciendo reportes ) . y otra cosa que pienso es que voy a  necesitar en el mismo reporte dos bandas detalle ( no se si es posible esto  en vfp9 ). Necesitaría alguna idea de cómo encarar esto o algún sitio o tutorial donde se explique como proceder en este caso . desde ya gracias y espero haberme explicado bien.

 

 

Alci

unread,
Jan 8, 2013, 1:08:00 PM1/8/13
to publice...@googlegroups.com
Una de las formas de hacer eso es configurando el tamaño de hoja (En tu caso la mitad de tamaño A4) e imprimir dos veces el mismo informe.

Serian como dos hojas independientes pero en la misma hoja físicamente. En panel de control, impresoras se puede agregar el tamaño de hoja personalizada.

La otra forma es el método antiguo, de programar la impresión mediante un PRG. se trabaja mas, pero se tiene mejor control de la impresión.

Saludos,

Víctor Hugo Espínola Domínguez

unread,
Jan 8, 2013, 1:39:34 PM1/8/13
to publicesvfoxpro
Hola Marcelo

REPORT FORM myReportOriginal.frx  TO PRINTER NOPAGEEJECT
REPORT FORM myReportDuplicado.frx TO PRINTER
Nota: myReportOriginal.frx  y myReportDuplicado.frx pueden ser el mismo report.
Lo de 2 bandas de detalle no lo entendí :-(
Saludos.
Víctor.



 

 

--
 
 

marcelo lopez

unread,
Jan 8, 2013, 3:21:11 PM1/8/13
to publice...@googlegroups.com
gracias por las respuestas :

Perdón, lo de las dos banda detalle lo vi en portalfox que se podía
hacer , pero creo que para este caso no me sirve .
A ver si entendí :
Los pasos serian :
1 –configurar un tamaño de papel personalizado , que sea con el mismo
ancho de a4 , pero con la mitad del largo de a4 como largo .
2 – ir al reporte en cuestión , y en report –properties-page layout
–boton page setup , asignarle este tamaño .
3- luego , es cuestión de ir ajustando el reporte para que quepan
físicamente 2 copias en una hoja
gracias por la ayuda


El 08/01/13, Víctor Hugo Espínola Domínguez <vich...@gmail.com> escribió:
> --
>
>
>

Víctor Hugo Espínola Domínguez

unread,
Jan 8, 2013, 3:49:51 PM1/8/13
to publicesvfoxpro
Hola Marcelo

Si encadenas los reports usando NOPAGEEJECT, no deberías necesitar definir un formulario personalizado.

Saludos.
Víctor.



--



sochandoreno

unread,
Jan 8, 2013, 3:58:41 PM1/8/13
to publice...@googlegroups.com
Saludos,
 
Yo he tenido clientes que me solicitan el recibo de nómina con estas mismas características. Y he solucionando con la opción de dos bandas de detalles.
 
Es decir, metes los datos en un cursor y colocas un campo llamado "DETALLE", y en el primer query colocas ese campo "DETALLE", con valor 1. Luego realizo una UNION, repitiendo el query pero con el valor 2.
 
Si necesitas un ejemplo te lo puedo enviar por correo electrónico.
 
Atte.,
Jaime Vargas
Venezuela

marcelo lopez

unread,
Jan 8, 2013, 6:59:55 PM1/8/13
to publice...@googlegroups.com
Jaime :

si no es mucha molestia , me podrias enviar el ejemplo a marceloe...@gmail.com ? desde ya gracias

--
 
 

Jose Ramon Veliz Martinez

unread,
Jan 9, 2013, 10:51:31 AM1/9/13
to publice...@googlegroups.com
Hola buenos dias, esto es bien facil.

Lo primero que tienes que hacer es en la tabla que tienes de facturacion o cursor crear un campo mas que se llame CLAVE O GRUPO o como te resulte mejor, este lo pones caracter.

Cuanto tienes ya lista tu factura con los datos a imprimir, el campo que has creado le haces un replace y le PONES "O" original, luego le das un appen from y te va  a duplicar los registros.  a los nuevos que agregastes le haces un replace y le pones "C"opia. (los que grabastes tienes que saber que registros tenias antes, reccount())

Ahora ya tienes en tu tabla 2 veces la informacion, lista para imprimir. Recuerda esto solo es para imprimir no para actualizar tu archivo de transacciones, ni nada mas.

Luego modificas tu reporte y agregas a nivel superior una banda detalle que te agrupe por GRUPO o CLAVE segun el campo que agregastes.  Cuando haga cambio de GRUPO, le puedes poner un "SUBTITULO DE ORIGINAL O COPIA"


Saludos

marcelo .

unread,
Jan 9, 2013, 2:45:23 PM1/9/13
to publice...@googlegroups.com
Jose: gracias por al respuesta , pero como el programa que genera la
informacion previamente a emitir la factura, lo usan muchos otros
reportes , no puedo cambiar la forma en que me vienen los datos , mas
alla de que la solucion que me planteas ,para otro caso es muy buena
.por eso ,lo que necesito es que la informacion de la factura ,que
antes me salia en una hoja a4 , me salga duplicada ,pero mitad y mitad
( original y duplicado ) en una misma hoja .


saludos y gracias


El 09/01/13, Jose Ramon Veliz Martinez <spc.j...@gmail.com> escribió:
> --
>
>
>

marcelo .

unread,
Jan 9, 2013, 2:49:21 PM1/9/13
to publice...@googlegroups.com
alcides: probe tu solucion , cree un tamaño personalizado de papel que
sea aproximadamente la mitad de la hoja a 4 , luego lo configure en el
page setup del reporte , pero me sigue saliendo en dos hojas . como
que el salto de pagina lo hace igual

gracias por al ayuda

El 08/01/13, Alci <alcides...@gmail.com> escribió:
> --
>
>
>

Fernando Maximiliano Rey

unread,
Mar 6, 2020, 7:40:34 AM3/6/20
to Comunidad de Visual Foxpro en Español
buenos dias, necesito imprimir un duplicado en la misma hoja , mitad de la hoja pero no me sale

ggcagnola gmail

unread,
Mar 6, 2020, 7:41:55 AM3/6/20
to publice...@googlegroups.com

repetí los datos de la factura...

--
Visita el Blog de la Comunidad Visual FoxPro en Español: http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/26ab44c7-9331-421c-b3b1-e968fc576a29%40googlegroups.com.
Message has been deleted

Zarlu

unread,
Mar 6, 2020, 10:55:27 PM3/6/20
to Comunidad de Visual Foxpro en Español
Buenas noches Fernando Maximiliano Rey!

Ups! Hilo viejo resucitado!

Te comento al respecto...
Duplica en un cursor los registros y en un "campoX" a la mitad de ellos ponle un valor "x"
Es decir si vas imprimir:
Detalle
1
2
3
Debe quedar así en el nuevo cursor:
Detalle campoX
1            1
2            1
3            1
1            2
2            2
3            2

Entonces en el reporte creas una banda de agrupación por ese campoX

Lo que he hecho es crear un cursor con la estructura de la tabla a imprimir agregar dos veces los registros con un For a=1 To 2...y un  Scan anidado
En un campo que no se "use" se reemplaza por el valor de "a"
Algo así:

SELECT tabla1
Afields(lcCampos)
CREATE CURSOR curMedias FROM ARRAY lcCampos
SELECT tabla1
FOR a=1 TO 2
    SCAN
        SCATTER TO lcCopiar
        SELECT curMedias
        APPEND Blank
        GATHER FROM lcCopiar
        REplace grupo1 WITH a
    ENDSCAN
EndFor
SELECT curMedias

En el reporte vas abriendo la banda del pie de grupo hasta que quede a la ubicación deseada.
(Espero pueda adjuntar los archivos de imagen, form e informe ejemplos, son algo simples espero sean entendibles)
*elimina el número "2" de las extensiones de los archivos

Suerte
zarlu
Chetumal, Quintana Roo, México





dosmedias.png
form2.SCT2
form2.scx2
infor_media.FRT2
infor_media.frx2

Hugo Cortes

unread,
Mar 7, 2020, 5:36:21 AM3/7/20
to Comunidad de Visual Foxpro en Español
Hola, una posible solución práctica a este problema seria por ejemplo hacer dos reportes, uno en la parte superior de la hoja y otro en la parte inferior. se manda imprimir el de la parte superior, y se da una pausa y luego se coloca la misma hoja y se imprime el segundo reporte en la parte inferior de la hoja, Por supuesto que tiene el inconveniente de tener que cambiar la hoja, pero se puede intentar para ver el resultado, Ok

Eduardo Armonti

unread,
Mar 7, 2020, 5:51:59 PM3/7/20
to publice...@googlegroups.com

Solo duplicas los campos en un mismo informe, o sea que se está imprimiendo las dos facturas al mismo tiempo solo que debes cortarla a mano. (recuerda hacerle una línea de puntos y una tijerita indicando donde cortar)

Ojo al piojo!!!   En los documentos comerciales se exigen medidas mínimas.  ¿Das con esas medidas?

 

Enviado desde Correo para Windows 10

--

Visita el Blog de la Comunidad Visual FoxPro en Español: http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.

Luis suescún

unread,
Mar 8, 2020, 10:32:24 PM3/8/20
to publice...@googlegroups.com
Probaste la forma que te dice Víctor ?

Me parece que todas las otras opciones son validas pero tal ves no se necesitan..



--


Zarlu

unread,
Mar 9, 2020, 11:44:23 AM3/9/20
to Comunidad de Visual Foxpro en Español
Buenos días colegas Foxeros!

A pesar de que quien retomó el hilo no se ha pronunciado al respecto me permito unos comentarios adicionales....

Quizá la solución no es tan simple como parece, y quizá también por poco ortodoxo, elegante y práctico no se acepta con agrado, pero a veces no hay de otra.
Es un tema viejo, en éste y otros foros, y por lo que parece nadie lo cerró resuelto a plena conformidad.

- Duplicar los campos en un mismo informe te complica la cabecera (logos) y pie de página de la "copia" inferior de la hoja.
- NOEJECT no funciona en con el reporteador. De la ayuda de VFP:
"The REPORT FORM command also allows a NOEJECT keyword, which Visual FoxPro no longer supports but was used in older DOS versions of FoxPro and FoxBASE+. This keyword does not perform any function but does not trigger an error."

Lo solución que he encontrado, y en lo personal he probado, es duplicar los registros y crear grupos. Procedimiento que expuse en mensaje anterior.
Alguien más lo detalló semejante en este hilo. Por supuesto hay de formas a formas...para no afectar las tablas originales duplicar a un cursor temporal, en ese cursor  duplicar los registros y de esos registros la mitad agruparla a "X" y la otra mitad a "Y".
Hace poco una colega refirió a Report Sculptor que permite agrupar informes, realizaré pruebas a ver si es posible unificar dos informes "media carta" a uno solo tamaño carta.

Esperemos que quien retomo el hilo nos diga si lo solucionó y como le hizo. En algún momento cualquiera pudiera requerir solventarlo.
Reply all
Reply to author
Forward
0 new messages