GARANTIR DESCONTO

Fórum Método Tprinter While ... imprime somente o último registro. #346112

16/09/2007

0

Oi,
Na linha de impressão de itens (pedido), no code abaixo a rotina somente imprime o último registro do Query1.

Pergunta: Como devo programar para imprimir todos os itens do pedido?

CODE:
Query1.First;
While not Query1.Eof do
Begin
Printer.Canvas.TextOut(0, 100, Query1.FieldByName(´ref´).AsString + ´ -- ´ + Query1.FieldByName(´descricao´).AsString);
Query1.Next;
end;

Grato,

gilsonlongo


Gilsonlongo

Gilsonlongo

Responder

Posts

16/09/2007

Sremulador

Amigo o problema esta no espaço de linha, pois você esta imprimirndo tudo na mesma linha, fiz apenas um exemplo, para você entender..., utilize o

Printer.BeginDoc;

Printer.EndDoc;

[b:e39c7ca936]Var[/b:e39c7ca936]
Espacolinha: Integer

Query1.First; 
While not Query1.Eof do 
Begin 
inc(Espacolinha, 50)

Printer.Canvas.TextOut(0, 30, 20+(Espacolinha * 50), Query1.FieldByName(´ref´).AsString + ´ -- ´ + Query1.FieldByName(´descricao´).AsString); 
Query1.Next; 
end; 


var
I: integer;
begin
Printer.BeginDoc;
for I:= 0 to 30 do
    Printer.Canvas.TextOut(30, 20+(I * 50), ´Teste de Impressão´);


Printer.EndDoc;



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar