Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   Escribir 3 copias de una factura poniendo texto distinto en cada copia (https://www.clubdelphi.com/foros/showthread.php?t=6815)

pacope 22-01-2004 22:01:45

Escribir 3 copias de una factura poniendo texto distinto en cada copia
 
Necesito imprimir con quickreport una factura, este report, lo configuro para que imprima un numero de copias determinado con el control informe.PrinterSettings.Copies = Numerocopias, pero quiero que en la 1ª copia ponga COPIA PARA CLIENTE, en la segunda COPIA PARA ALMACEN y en la tercera COPIA PARA CONTABILIDAD.
Como puedo hacer esto?

marcoszorrilla 22-01-2004 23:06:32

Yo utilizaría una variable de tipo público por ejemplo una de tipo entero:
1.- Copia para el Cliente
2.- Copia para el almacén
3.- Copia para la contabilidad.

luego llamaría 3 veces a QuicReport, de esto el usuario ni se entera,pasándole dicha variable con los número 1,2,3

Pones una etiqueta "QrLabel", en donde quieras que aparezca el mensaje y en el evento BeforePrint, colocas una estructura Case
Código:

Case MiVar of
1:QrLabel1.Caption:='Para el almacén',
......bla,bla
end

Un saludo.

__cadetill 22-01-2004 23:35:11

Lo que no he probado nunca (no se si tú, Marcos, lo has hecho) es decirle al report que haga 3 copias (no enviandolo 3 veces a imprimir, sino mediante la propiedad Copies del PrinterSettigs) y controlar el evento BeforePrint haciendo lo que propones.

Tendría que funcionar, no?

marcoszorrilla 22-01-2004 23:37:29

Habrá que hacer la prueba, aunque lógicamente 3 copias me da al impresión , valga la redundancia, que serán iguales.

Ya veremos.

marcoszorrilla 22-01-2004 23:49:49

Yo utilizo a veces la opcion:
Código:

Quickrep1.PrinterSettings.Copies:=2;
quickrep1.Preview;

Pero Copies es una variable de tipo entero, que contiene el número de copias que se van a realizar, como sabemos si está haciendo la primera copia o la segunda?

Son las 23h54 y como dicen en Francia "la langue au chat"

Un Saludo.

SnaKe 26-01-2004 08:42:47

Bueno, pues me da que eso va a ser un pelin complicado por no decir imposible... no se, igual tirando de api... pero aún así me da la impresión de que es imposible, lo digo porque cuando se le da desde el cuadro de dialogo de impresión a imprimir 2 o x copias (que es lo mismo que poner QuickRep1.PrinterSettings.Copies := x; y luego llamar a Print) perdemos el control ya que el documento se mete en la cola de impresión como un único documento, se debe indicar a la impresora de que son dos copias y es la propia impresora la que lo hace... no tengo muy claro eso pero me da la impresión de que si no se le da dos veces a imprimir (tras dos previsualizaciones o dos QuickRep1.Print) con las opciones de copias en el cuadro de dialogo de impresión no se puede conseguir.

Un saludo.


La franja horaria es GMT +2. Ahora son las 09:20:41.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi