Impressão para no meio usando Printer.Canvas.TextOuT
29/05/2015
0
Pessoal, boa noite.
Estou tendo problemas com uma impressora não fiscal do tipo termica, acontece o seguinte:
A impressão começa a sair porem para no meio, porem isso só acontece com essa impressora: GP-3120 TL da GPrinter, testei aqui com uma laser e funciona normalmente.
Notei que o problema esta dentro do while que faço na Query, o que esta antes disso imprime blz.
Segue o código do while:
O "Printer.BeginDoc;" e o "Printer.EndDoc;" estão respectivamente antes de depois do while.
Detalhe: Ele completa o while inteiro pois debuguei e chega ao final.
Segue abaixo foto da impressão:
[img]http://arquivo.devmedia.com.br/forum/imagem/433782-20150529-124051.jpg[/img]
Estou tendo problemas com uma impressora não fiscal do tipo termica, acontece o seguinte:
A impressão começa a sair porem para no meio, porem isso só acontece com essa impressora: GP-3120 TL da GPrinter, testei aqui com uma laser e funciona normalmente.
Notei que o problema esta dentro do while que faço na Query, o que esta antes disso imprime blz.
Segue o código do while:
O "Printer.BeginDoc;" e o "Printer.EndDoc;" estão respectivamente antes de depois do while.
Detalhe: Ele completa o while inteiro pois debuguei e chega ao final.
ADOQueryimprime.Close; ADOQueryimprime.SQL.Clear; ADOQueryimprime.SQL.Add('SELECT * from mesa' + IntToStr(variavelmesa)); ADOQueryimprime.Open; while (not ADOQueryimprime.Eof) do begin produtomesa := ADOQueryimprime.Fields[2].AsString; qtdmesa := ADOQueryimprime.Fields[3].AsString; valormesa := formatfloat('R$ ,0.00', ADOQueryimprime.Fields[4].Value); Printer.Canvas.TextOut(MargemDireita, AlturaLinha, produtomesa); inc(AlturaLinha, Printer.Canvas.TextHeight('A')); Printer.Canvas.TextOut(MargemDireita, AlturaLinha, ' ' + qtdmesa + ' ' + valormesa); inc(AlturaLinha, Printer.Canvas.TextHeight('A')); ADOQueryimprime.Next; end;
Segue abaixo foto da impressão:
[img]http://arquivo.devmedia.com.br/forum/imagem/433782-20150529-124051.jpg[/img]
Gerson
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)