Impressora Matricial

Delphi

18/09/2004

Pessoal!
Fiz essa rotina para imprimir direto pra impressora, mas com muitos registros na tabela ela imprime uma parte e para de imprimir e a impressoara fica ejetando papel. Estou imprimindo em uma bobina e a impressara é uma expson Acton Printer.
Desde ja obrigado.

  AssignFile(Arquivo,´LPT1´);
  Rewrite(Arquivo);  
Writeln(Arquivo,´--------------------------------------------------------´);
  Writeln(Arquivo,´--------------Produto(s) Vendido(s)´);
  Writeln(Arquivo,´-Descricao-----------------------------------Qtd---´);
   DMFechamento.CDProdutos.First;
   Tot_peca := 0;
   while not DMFechamento.CDProdutos.eof do
   begin
    Produto_Vend  := Tira_Acento(DMFechamento.CDProdutosDESCRICAO.Value);
    Qtd_Vend      := FloatToStrF(DMFechamento.CDProdutosQTDE.AsFloat,FFNumber,15,2);
    Tot_peca      := Tot_peca+DMFechamento.CDProdutosQTDE.AsInteger;

    For I:=Length(Produto_Vend) to 40 do
    Produto_Vend := Produto_Vend+´ ´;
    For I:=Length(Qtd_Vend) to 7 do
    Qtd_Vend :=´ ´+ Qtd_Vend;
    Writeln(Arquivo,Produto_Vend+Qtd_Vend);
    DMFechamento.CDProdutos.Next;
   end;
  Writeln(Arquivo,´-----------------------------Total de Pecas: ´+IntToStr(Tot_peca));
  Writeln(Arquivo,´´);
  Writeln(Arquivo,´´);
  Writeln(Arquivo,´´);
  CloseFile(Arquivo);

   end;



Debug

Debug

Curtidas 0

Respostas

Khundalini

Khundalini

18/09/2004

Veja na configuração do driver da impressora se tem alguma opção de salto automático de papel (ou coisa parecida). Se tiver, experimente desabilitar a opção e rode sua rotina pra ver se funciona.


GOSTEI 0
Gandalf.nho

Gandalf.nho

18/09/2004

Tb pode ser um problema de compatibilidade da impressora com seu sistema operacional. Eu tive problemas com Epson LQ-300 em ambiente Windows 98.


GOSTEI 0
Carlosrm

Carlosrm

18/09/2004

Debug,

eu também acho mais provável a solução estar numa das sugestões anteriores (Khundalini e gandalf.nho). Se ainda assim o problema continuar, exclua a chamada à função Tira_Acento e veja o que acontece.
Se imprimir corretamente, muito provavelmente há algum caracter nesta função que tem significado especial para o drive da impressora.
(Observe, por exemplo, se a primeira linha da página - saltada indevidamente - teve algum acento excluído...).
Se for isso, vc terá que re-escrever a função.
Se já tentou isso, desculpe, faz de conta que eu não disse nada...
Por último, pode estar ocorrendo tudo isso simultaneamente. Aí, terá que alterar ttudo antes de testar.
E, claro, ainda pode ser uma causa que ainda não tivemos o prazer de solucionar.
carlosrm


GOSTEI 0
Debug

Debug

18/09/2004

Pessoal, segi todas as sugestões, mas continua o problema.
Percebi que se tiro a bobina e coloco um papaçe oficio, a primeira folha imprime e coloco a segunda a impressão sai numa boa, mas acho que com a bobina não imprime o restante fica so ejantando papel.


GOSTEI 0
Dopi

Dopi

18/09/2004

O Caracter de controle EPSON para pulo de página é o chr(12) , liste o relatório para um arquivo em disco e observe se em algum momento esse caracter (que parace com o simbolo de feminino) ou outro caracter ASC não imprimivel, está constando no corpo do relatório...


GOSTEI 0
POSTAR