PDA

Ver la Versión Completa : Predeterminar Impresora Qreport


Coco_jac
20-04-2006, 15:17:39
Hola amigos del foros.
Necesito poder predeterminar la impresora con QReport, tengo una aplicacion de reporte de fallos, los cuales seran reportados por los usuarios al departamento de computo,de manera que dichos reporte generados seran mandado a impresion al Dpto. Computo, a una impresora especifica, es por eso que necesito saber como puedo tomar por defecto dicha impresora con Qreport.

Espero sus comentarios.

marcoszorrilla
20-04-2006, 15:25:03
Una solución es guardar la impresora en una tabla y cada vez que vayas a lanzar el informe tomas dicha impresora la buscas en la lista del sistema y si está la utilizas y sino cargas la que tenga por defecto.

Un Saludo.

Coco_jac
20-04-2006, 15:37:34
Hola Marcos gracias por responder, creo que me exprese mal de nuevo disculpa, mi pregunta es como puedo asignar por codigo a mi QReport una impresora, ya que la impresora la misma. Es decir que mi aplicacion busque siempre la misma impresora, asignada a mi QReport.

Gracias y espero nuevamente tus comentarios

marcoszorrilla
20-04-2006, 15:42:07
Esta es la idea:
DmConta.QrCaja.DisableControls;
Application.CreateForm(TfrlstConta, frLstConta);
frLstConta.ListaConta.PrinterSettings.PrinterIndex:=GetImpresora(DmAni2.ConfLptListados.value);
frLstconta.ListaConta.Prepare;

Un Saludo.

marcoszorrilla
20-04-2006, 15:43:37
Se me olvidó poner la función que me he construido para obtener la impresora:

Function GetImpresora(Impre:String):Integer;
Var
nCont:Integer;
lSearch:Boolean;
cNewLIne:String;
begin
lSearch:=False;
cNewLine:=Chr(10)+Chr(13);

For nCont:=0 to Printer.Printers.Count - 1 do
//buscamos la impresora en la lista del sistema
begin

if Pos(impre, Printer.Printers[nCont]) <> 0 then
begin
lSearch:=True;
Result:=nCont;
Break;
end;

end;

if lSearch = False then
begin
Result:=-1;
ShowMessage('Impresora no encontrada:'+cNewLine+Impre+cNewLine+'Se utilizará la predefinida.');
end;

end;


Un Saludo.

Coco_jac
20-04-2006, 17:47:46
Hola Marcos, Gracias por tu ayuda. Como podria obtener el index de la impresora es decir pasarle el nombre de la impresora y me devuelva el index de esa impresora.
Gracias

Coco_jac
20-04-2006, 17:48:53
Gracias por la ayuda, se me paso este post je je je. Gracias

marcoszorrilla
20-04-2006, 17:49:10
Si te fijas es lo que hace la función GetImpresora, le pasas el nombre y te devuelve el índice.

Un Saludo.