PDA

Ver la Versión Completa : Ticket por ethernet


dfarias
13-09-2007, 22:28:18
Hola colegas:
Estoy desarrollando una aplicacion que imprimira ticket , y que ademas podran ser envios concurrentes a la misma impresora. Por lo que he visto en los foros
todos recomiendan usar un TextFile y luego enviarlo a la impresora. En mi caso ademas son impresoras ethernet y no se como enviarlas ya que el assignfile solo me permite lpt o com.

Escucho sugerencias o ejemplos de como implementarlo.
Muchas gracias.:)

poliburro
14-09-2007, 00:26:19
Lo mejor que puedes hacer es utilizar QuickReport para generar el ticket, y enviarlo a la impresora de tickets que previamente fué compartida en la red.

A mi me funciona bien con impresoras de tickets epson térmicas

suerte

Crashthebig
16-09-2007, 21:07:55
para imprimir tus tickets en una impresora remota la maquina que tiene la impresora debe compartir el recurso, luego en las estaciones clientes debes agregar la impresora de la red y establecerla como la impresora predeterminada de esta forma automaticamente vayas a imprimir un ticket este se imprimira por esa impresora.

basti
17-09-2007, 00:12:18
En vez de usar AssignFile, puedes usar AssignPrn, que asignará la impresora que tengas seleccionada en ese momento.

dfarias
17-09-2007, 09:32:17
El problema esta en que genero ticket para varias impresoras simultaneamente por eso no solo tomo la predeterminada. Alguien tiene algun ejemplo de quickreport generdado totalmente por codigo?

basti
17-09-2007, 13:52:31
El problema esta en que genero ticket para varias impresoras simultaneamente por eso no solo tomo la predeterminada. Alguien tiene algun ejemplo de quickreport generdado totalmente por codigo?

Perdón, me he explicado mal, me refería a que AssignPrn utiliza la impresora que tienes seleccionada en el objeto Printer, no la impresora por defecto de Windows.


procedure CambiarImpresora(nombre: string);
var
i : integer;
pr : TPrinter;
begin
pr := TPrinter.Create;
for i := 0 to pr.Printers.Count - 1 do
begin
if nombre = pr.Printers[i] then
printer.PrinterIndex := i;
end;

end;

procedure Imprimir;
var
f : TextFile;
begin
CambiarImpresora('Impresora Tickets en red');
AssignPrn(f);
rewrite(f);
writeln(f, 'Imprimiendo en Impresora de tickets en red');
CloseFile(f);
end;