Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-12-2009
andressanchez andressanchez is offline
Miembro
 
Registrado: jul 2005
Ubicación: Sando Domingo, Rep. Dom.
Posts: 109
Poder: 19
andressanchez Va por buen camino
Asignar impresora QuickReport

Hola foristas!

Tengo una aplicacion desarrollada en Delphi 7, Firebird 2.0, ejecutandose en Windows XP y utilizo QuickReport.

Dicha aplicacion tiene un modulo que imprime las facturas en una impresora de tickets de 56mm, la cual es la impresora que esta de manera predeterminada en windows. El detalle esta en que al momento de ver un preview de un listado en formato 8.5 x 11 me muestra el preview en formato de 56mm.

Como solamente se utiliza la impresora de tickets para las facturas he decidido hacer una configuracion en el sistema que me permita guardar cual es la impresora de tickets y luego asignarle por codigo a QuickReport por cual impresora debe imprimir pero no se como hacer esto. He buscado en el foro temas relacionados y no he podido encontrarlo.

Se tambien que quickReport tiene un procedimiento llamado printerSetup que muestra la ventana Imprimir donde el usuario puede elegir la impresora y otras opciones mas. Pero lo que busco es optimizar el proceso de facturar y que el enviar a imprimir a la impresora de tickets sea transparente para el usuario.

Espero puedan ayudarme,

Gracias de antemano.-
Responder Con Cita
  #2  
Antiguo 18-12-2009
bubba bubba is offline
Miembro
 
Registrado: jul 2008
Posts: 15
Poder: 0
bubba Va por buen camino
Cita:
Empezado por andressanchez Ver Mensaje
Hola foristas!

Tengo una aplicacion desarrollada en Delphi 7, Firebird 2.0, ejecutandose en Windows XP y utilizo QuickReport.

Dicha aplicacion tiene un modulo que imprime las facturas en una impresora de tickets de 56mm, la cual es la impresora que esta de manera predeterminada en windows. El detalle esta en que al momento de ver un preview de un listado en formato 8.5 x 11 me muestra el preview en formato de 56mm.

Como solamente se utiliza la impresora de tickets para las facturas he decidido hacer una configuracion en el sistema que me permita guardar cual es la impresora de tickets y luego asignarle por codigo a QuickReport por cual impresora debe imprimir pero no se como hacer esto. He buscado en el foro temas relacionados y no he podido encontrarlo.

Se tambien que quickReport tiene un procedimiento llamado printerSetup que muestra la ventana Imprimir donde el usuario puede elegir la impresora y otras opciones mas. Pero lo que busco es optimizar el proceso de facturar y que el enviar a imprimir a la impresora de tickets sea transparente para el usuario.

Espero puedan ayudarme,

Gracias de antemano.-
Hola Andres,

El año pasado me pasó eso mismo a mí (o parecido, sólo que yo debía imprimir en la impresora de tickets o la de facturas (A4), según el tipo de documento -Ticket de caja o factura-), y encontré la solución haciendo lo siguiente y teniendo en la aplicación el nombre de Windows de cada impresora. Se ha de utilizar la siguiente Unit: Printers (para que reconozca el objeto Printer), y los
campos de mi aplicación que deberás cambiar en la tuya por tus campos o variables son:

tbCabTicketTipo: tipo String, indica "T" = Ticket caja, "F" = Factura

tbParametroImpresoraTickets, tipo String, indica el nombre en Windows de la impresora de tickets.

tbParametroImpresoraFacturas, tipo String, indica el nombre en Windows de la impresora de facturas.

Código Delphi [-]
         for n := 0 to Printer.Printers.Count - 1 do begin
            if tbCabTicketTipo.Value = 'T' then
               begin
                  if tbParametroImpresoraTickets.Value = Printer.Printers.Strings[n] then begin
                     Printer.PrinterIndex := n;
                  end;
               end
            else begin
               if tbParametroImpresoraFacturas.Value = Printer.Printers.Strings[n] then begin
                  Printer.PrinterIndex := n;
               end;
            end;
         end;

Espero que te sirva!

Saludos
Responder Con Cita
  #3  
Antiguo 18-12-2009
andressanchez andressanchez is offline
Miembro
 
Registrado: jul 2005
Ubicación: Sando Domingo, Rep. Dom.
Posts: 109
Poder: 19
andressanchez Va por buen camino
Muchas gracias por tu respuesta bubba.

Voy a probar a ver que tal me va. Te dejo saber cuando lo implemente.

Mil gracias.-
Responder Con Cita
  #4  
Antiguo 18-12-2009
Avatar de afunez2007
afunez2007 afunez2007 is offline
Miembro
 
Registrado: oct 2007
Ubicación: La Ceiba, Honduras
Posts: 170
Poder: 17
afunez2007 Va por buen camino
Lightbulb

Yo lo que normalmente hago es que tengo una pantalla donse configuro que impresoras utilizan que reportes, y antes de imprimir el reporte leo a configuracion para ver que impresora debe utilizar:
Código Delphi [-]
Uses Printers;

frmReport.QuickReport1.PRINTERSETTINGS.PRINTERINDEX  :=printer.printers.Indexof(Config_gral.CBx_Reportes.Text);
frmReport.QuickReport1.Preview;

Espero te sirva

Saludos
__________________
Si robas, roba un beso, si mientes que sea por amor y si engañas que sea a la muerte!!
Responder Con Cita
  #5  
Antiguo 30-12-2009
andressanchez andressanchez is offline
Miembro
 
Registrado: jul 2005
Ubicación: Sando Domingo, Rep. Dom.
Posts: 109
Poder: 19
andressanchez Va por buen camino
Muchas gracias bubba y afunez2007 por sus respuestas
tan certeras. Ambos me ayudaron a resolver el problema.

Lo que hice fue una parte de configuracion donde guardo la impresora de tickets. Luego la pantalla donde imprime en dicha impresora se la asigno al quick report y listo.

Cita:
for n := 0 to Printer.Printers.Count - 1 do
begin
if b.CompaniaIMPRESORA_TICKETS.Value = Printer.Printers.Strings[n] then
begin
impresora := n;
end;
end;
FrepFactura := TFrepFactura.Create(Self);
FrepFactura.QuickRep1.PrinterSettings.PrinterIndex := impresora;
FrepFactura.QuickRep1.Print;
FrepFactura.Free;
Problema resuelto. Un Millon de gracias.-
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
Problemas con QuickReport e Impresora enecumene Impresión 5 14-06-2008 02:09:36
Selección de Impresora en QuickReport chavi Impresión 2 24-11-2007 17:46:06
Selcción de Impresora con QuickReport Laura Roura Impresión 2 29-08-2006 03:33:08
Impresora HP y QuickReport Marigel Impresión 3 08-05-2006 20:35:29
Seleccionar Impresora con QuickReport quade Varios 1 09-06-2004 10:38:48


La franja horaria es GMT +2. Ahora son las 12:35:30.


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