Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-08-2021
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Post Listar impresoras en un combobox para configurar un reporte de quickreport

Hola, quiero listar las impresoras en un combobox y que luego pasarle la impresora que seleccione al Quickreport antes de imprimir.

Gracias de antemano.
Uso Delphi 10.3

Busque en el hilo, y vi códigos que no me funcionan, por eso creo el hilo.
Responder Con Cita
  #2  
Antiguo 17-08-2021
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Para cargar las impresoras en un ComboBox:
Código Delphi [-]
uses Printers;

procedure TForm1.FormCreate(Sender: TObject);
begin
  ComboBox1.Items := Printer.Printers;
  ComboBox1.ItemIndex := 0;
  ...
end;

Para indicarle a QuickReport la impresora seleccionada, revisa el mensaje #8 de este enlace: ¿como Imprimir a varias impresoras'?

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 17-08-2021
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
❤️ Muchas gracias
Responder Con Cita
  #4  
Antiguo 25-10-2021
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

Para cargar las impresoras en un ComboBox:
Código Delphi [-]
uses Printers;

procedure TForm1.FormCreate(Sender: TObject);
begin
  ComboBox1.Items := Printer.Printers;
  ComboBox1.ItemIndex := 0;
  ...
end;

Para indicarle a QuickReport la impresora seleccionada, revisa el mensaje #8 de este enlace: ¿como Imprimir a varias impresoras'?

Saludos
Hola @ecfisa, yo de nuevo, una cosa, cuando quiero indicarle al QR la impresora seleccionada me da un error Access Violation at address 007B838A in module 'Mi programa.exe'. Read of address 000000004. alguna idea de por que?
Responder Con Cita
  #5  
Antiguo 25-10-2021
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

¿ Cuál es el evento y como es el código mediante el cuál indicas la impresora a QR ?

Saludos
QImprimir1.QRep.QRPrinter.PrinterIndex := Printer.Printers.IndexOf(CBImpresora.Text);
Responder Con Cita
  #6  
Antiguo 25-10-2021
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

¿ Cuál es el evento en que seleccionas la impresora y como es el código mediante el cuál le indicas la impresora a QR ?

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #7  
Antiguo 25-10-2021
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

No parece haber ningún error allí, solo por si acaso... ¿ Controlas el valor del índice del combo ?
Código Delphi [-]
begin
  if CBImpresora.ItemIndex = -1 then  // <-
    Exit;
  QImprimir1.QRep.QRPrinter.PrinterIndex := Printer.Printers.IndexOf(CBImpresora.Text);
end;

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #8  
Antiguo 25-10-2021
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

No parece haber ningún error allí, solo por si acaso... ¿ Controlas el valor del índice del combo ?
Código Delphi [-]
begin
  if CBImpresora.ItemIndex = -1 then  // <-
    Exit;
  QImprimir1.QRep.QRPrinter.PrinterIndex := Printer.Printers.IndexOf(CBImpresora.Text);
end;

Saludos

El combo muestra la lista de impresoras, elijo la que quiero, y luego hago la función pero me lanza el error ya mencionado.
si quito esa linea de código, obviamente se imprime en la impresora predeterminada, pero con esa linea me da el error.
Responder Con Cita
  #9  
Antiguo 25-10-2021
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

¿ Cuál es el evento en que seleccionas la impresora y como es el código mediante el cuál le indicas la impresora a QR ?

Saludos
CBImpresora.Items := Printer.Printers;
CBImpresora.ItemIndex := 0;
Responder Con Cita
  #10  
Antiguo 26-10-2021
aledieb aledieb is offline
Miembro
 
Registrado: jun 2005
Ubicación: Buenos Aires, Argentina
Posts: 141
Poder: 19
aledieb Va por buen camino
En quickreport no se puede elegir la impresora por nombre como en reportbuilder?
Si se puede proba usando el nombre, en ves del index porque puede ser ahi el problema.
__________________
Suerte
Alejandro
Responder Con Cita
  #11  
Antiguo 26-10-2021
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Cita:
Empezado por aledieb Ver Mensaje
En quickreport no se puede elegir la impresora por nombre como en reportbuilder?
Si se puede proba usando el nombre, en ves del index porque puede ser ahi el problema.
Saludos, En las propiedades del reporte no he visto la opcion, la unica que conozco es cuando haces un preview y en las opciones elijes otra impresora y le das a imprimir, pero lo que quiero es tenerlas guardaras en la base de datos, para usar varias impresoras dependiendo el tipo de reporte que se valla a imprimir.
Responder Con Cita
  #12  
Antiguo 07-11-2021
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

No parece haber ningún error allí, solo por si acaso... ¿ Controlas el valor del índice del combo ?
Código Delphi [-]
begin
  if CBImpresora.ItemIndex = -1 then  // <-
    Exit;
  QImprimir1.QRep.QRPrinter.PrinterIndex := Printer.Printers.IndexOf(CBImpresora.Text);
end;

Saludos
Saludos, después de mucho buscar, encontré el error, en ves de poner:
Código Delphi [-]
 
QImprimir1.QRep.QRPrinter.PrinterIndex := Printer.Printers.IndexOf(CBImpresora.Text);

Es:
Código Delphi [-]
QImprimir1.QRep.PrinterSettings.PrinterIndex := Printer.Printers.IndexOf(CBImpresora.Text);

Vine a ponerlo por si otra persona le pasa lo mismo.
Gracias por todo...
Responder Con Cita
  #13  
Antiguo 07-11-2021
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por feliz-58 Ver Mensaje
Vine a ponerlo por si otra persona le pasa lo mismo.
Gracias por todo...


Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Ejemplo de un reporte hecho en QuickReport para C++ XE2 lgarcia Impresión 0 21-07-2015 21:38:40
Selecionar registro de una dbgrid para hacer un reporte en quickreport mayito84 Conexión con bases de datos 2 20-12-2012 17:33:23
Especificar carpeta para guardar reporte QuickReport Cannabis Impresión 4 21-10-2008 02:26:26
Problemas para visualizar un Reporte con QuickReport Rubas_27 Impresión 3 26-05-2006 11:56:55
Impresoras matriciales y QuickReport escullar Impresión 5 15-06-2005 09:27:55


La franja horaria es GMT +2. Ahora son las 20:06:10.


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