Matricial !!!!!

Delphi

19/03/2003

caros colegas, preciso urgentemente gerar um relatório para uma impressora matricial ( epson fx2170 ) mas não tenho nem a idéia de como começar......Usar algum componente, TPrinter, etc......Não sei como imprimir alguns caracteres, help......

O relatório será assim :

Uma query me retorma uma consulta e pra cada valor retornado preciso imprimir uma folha na matricial.....opr favor alguem poderia me dar algumas dicas....


[]´s

Oscar Luiz


Oscarluiz

Oscarluiz

Curtidas 0

Respostas

Anonymous

Anonymous

19/03/2003

Use o componete Fortes Report, é fácil e ótimo e ainda gratuito.
www.fortesinformatica.com.br


GOSTEI 0
Anonymous

Anonymous

19/03/2003

Help !!!!! onde posso encontrar apostilas sobre impressao matricial......estou totalmente perdido..


Oscar Luiz


GOSTEI 0
Fred

Fred

19/03/2003

Não sei porque todo mundo fica doido quando tem que imprimir em impressora matricial, pois eu simplesmente fiz meus relatorios no qreport e comsigo imprimi-los tanto em jato de tinta quanto em HP, não encontrei problema nenhum. do mesmo jeito que o word imprime na matricial o qreport tambem imprime 8) 8) 8)


GOSTEI 0
Nebrio

Nebrio

19/03/2003

Caro Fred, normalmente algumas empresas querem mais agilidade em seus processos.
Imagine vc imprimindo um Diario Contabil de uma Empresa de um ano inteiro, imagine que vc fez no QReport e concerteza irá funcionar, mas está em modo gráfico e levará muito tempo para imprimir, mas tb existem outros porques.


GOSTEI 0
Dor_poa

Dor_poa

19/03/2003

procedure TForm1.BitBtn1Click(Sender: TObject);
var
Linha:integer;
Tamanho:integer;
Coluna:integer;
begin
Printer.Orientation := poLandscape;
Printer.BeginDoc;
Printer.Canvas.Pen.Width := 5;
Printer.Canvas.Font.Name := ´Times New Roman´;
Printer.Canvas.Font.Size := 10;
Linha := 20;
Coluna:= 20;
Tamanho := Printer.Canvas.TextWidth(´a´);
Table1.First;
while not Table1.Eof do
begin
if Linha = 20 then
begin
Coluna := 20;
Printer.Canvas.TextOut(0,Linha,´Relação de Clientes´);
Linha := Linha - Printer.Canvas.Font.Height + 5 ;
Printer.Canvas.TextOut(Coluna,Linha,´Cod´);
Coluna:= Coluna + (Tamanho * 5 );
Printer.Canvas.TextOut(Coluna,Linha,´Nome´);
Coluna:= Coluna + (Tamanho * 30);
Printer.Canvas.TextOut(Coluna,Linha,´Endereço´);
Coluna:= Coluna + (Tamanho * 30);
Linha := Linha - Printer.Canvas.Font.Height + 5 ;
end;
Coluna := 20 ;
Printer.Canvas.TextOut(Coluna,Linha,Table1.FieldByName(´Codigo´).AsString);
Coluna:= Coluna + (Tamanho * 5 );
Printer.Canvas.TextOut(Coluna,Linha,Table1.FieldByName(´Nome´).AsString);
Coluna:= Coluna + (Tamanho * 30);
Printer.Canvas.TextOut(Coluna,Linha,Table1.FieldByName(´End´).AsString);
Coluna:= Coluna + (Tamanho * 30);
Linha := Linha - Printer.Canvas.Font.Height + 5 ;
Table1.Next;
if Linha > Printer.PageHeight-20 then
Begin
Printer.NewPage;
Linha := 20;
end;
end;
Printer.EndDoc;
end;


GOSTEI 0
Anonymous

Anonymous

19/03/2003

Cara, mande-me um e-mail que eu te envio um componente que irá solucionar seus problemas. O nome dele é TSay e vem com um exemplo que tirar todas as dúvidas.

Caso queira procurar na internet, você o encontrará tranquilamente.


rodrigolima_1999@yahoo.com.br


GOSTEI 0
POSTAR