![]() |
Impresion con QuickReport 4
Necesito ayuda urgente:
Mi problema parece una tonteria pero no se como solucionarlo. Necesito que mi informe se imprima 2 copias y que imprima 1 primero y despues la segunda. Intento cambiar desde el imforme las propiedades de la impresora pero aunque las cambie los cambios no se aceptan. Alguien sabria como conseguir que QuickReport imprima primero una copia y despues otra y no las dos a la vez. Muchas Gracias |
Muestra el código que utilizas, pues es muy probable que no estés enviando las órdenes al objeto qrPrinter sino al Tprinter.
Un Saludo. |
No entiendo bien lo que me quieres decir. Yo creo el informe lo previsualizo e intento cambiar a 2 copias intercaladas en las propiedades de la impresora a traves del boton del reporte creado y despues le doy al boton de imprimir que existe en el reporte.
De todas formas mi codigo procedure TRECIVFORM.QRDBText1Print(sender: TObject; var Value: String); begin DataModule2.Table5.IndexName:= 'DNI'; if not DataModule2.Table5.Findkey([Query1.FieldByName('NIF_PROP1').Value]) then ShowMessage('No encuentro el Nif del propietario'); IF Query1.FieldByName('TIPO').Value = 'V' then begin QuickRep1.PrinterSettings.Copies:=1; QRLabel1.Caption:= ' '; QRLabel7.Caption:= 'arrendatario de la expresada vivienda'; QRLabel3.Caption:= 'Vivienda:'; QRLabel8.Caption:= 'la cantidad de:'; QRLabel28.Caption:= ' '; QRLabel6.Caption:= QRLabel25.Caption; end; if Query1.FieldByName('TIPO').value = 'T' then begin QuickRep1.PrinterSettings.Copies:=1; QRLabel1.Caption:= ' '; QRLabel7.Caption:= 'arrendatario del expresado trastero'; QRLabel3.Caption:= 'Trastero:'; QRLabel8.Caption:= 'la cantidad de:'; QRLabel28.Caption:= ' '; QRLabel6.Caption:= QRLabel25.Caption; end; if Query1.FieldByName('TIPO').Value = 'L' then begin QuickRep1.PrinterSettings.Copies:=2; QRLabel1.Caption:= 'Recibo Núm: '; QRLabel7.Caption:= 'arrendatario del expresado local'; QRLabel3.Caption:= 'Local:'; QRLabel8.Caption:= 'la cantidad de:'; QRLabel6.Caption:= QRLabel25.Caption; QRLabel28.Caption:= Form24.DBEdit1.Text; Form24.DBEdit1.Text:=IntToStr((StrToInt(Form24.DBEdit1.Text)+1)); //DataModule2.Table3.edit; //DataModule2.Table3.FieldByName('ULTRECIV').AsInteger:= StrToInt(Form24.DBEdit1.Text); //DataModule2.Table3.post; //DataModule2.Table3.Refresh; pai:= pai+1; end; MUCHAS GRACIAS POR TU RESPUESTA Y ESPERO QUE NOS ENTENDAMOS |
Sino recuerdo mal, la configuración que le des desde la vista previa no sirve para nada, tienes que utilizar un Dialogo de Impresión y pasarle luego los valores que correspondan al objeto qrprinter, mira este ejemplo:
Un Saludo. |
Hola
Cita:
se lee mejor así verdad? Saludos |
RE:Problemas QuickReport
Muchas gracias por vuestras respuestas, y lo siento mucho por lo del codigo mal escrito pero no se como ponerlo de colorines directamente. (hay que hacerlo a mano?)
Pues eso lo de PrnDialog no se como hacer que funcione por que el compilador me dice que no funciona. Gracias de todas formas y que este foro siga asi de cojonudo |
Hola
Cita:
Saludos. |
Cita:
Un Saludo. |
re:
Muchas gracias por la informacion
Ya he usado el PrintDialog que es como se llama en mi delphi pero sigue sin hacerle caso configuro la impresion pero despues hace lo que quiere al imprimir. No se lo que voy a hacer ya. Creo que voy a tener que obtar por imprimir 2 veces en vez de darle que imprima dos copias. Muchas gracias por todo; |
Pues si ves que no responde, puedes hacer un bucle For...Next y ejecutar el informe x veces, en tu caso 2.
Un Saludo. |
La franja horaria es GMT +2. Ahora son las 05:38:47. |
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