Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 2939 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Bom dia

Estou fazendo testes com a Bematech MP 4200TH e até agora os testes estão satisfatórios. Agora iniciarei os testes com o TEF.

Gostaria de saber se existe alguma função para imprimir o vinculado do TEF ou se devo enviar o comando direto para a porta da impressora.

OBS: Procurei no fórum, mas não consegui encontrar a forma de como tratar isso.

Link para o comentário
Compartilhar em outros sites

Conforme havia mencionado, testei o envio do comando DANFeESCPOS1.ImprimirRelatorio, para a impressora Bematech MP4200TH e ocorreu a impressão.

Infelizmente está ocorrendo outro problema.

Nos testes que fiz, estou enviando o seguinte comando:

var
  arqsai : tmemo;


arqsai := TMemo.Create(Self);
  arqsai.Parent := self;
  arqsai.visible := false;
  arqsai.lines.clear;
  arqsai.lines.add('</linha_dupla>');
  arqsai.lines.add('');
  arqsai.lines.add('<ce>CUPOM 000000 CANCELADO</CE>');
  arqsai.lines.add('<ce>DATA '+datetostr(date)+'  HORA: '+timetostr(time)+'</CE>');
  arqsai.lines.add('');
  arqsai.lines.add('</linha_dupla>');

  try
    ACBrNFeDANFeESCPOS.PosPrinter.Ativar;
    ACBrNFeDANFeESCPOS.ImprimirRelatorio(arqsai.lines);
  except
  end;

A impressão correta deveria ser:

           CUPOM 000000 CANCELADO

           DATA 09/03/16  HORA: 11:30:00

Porém a impressora está imprimindo:

           CUPOM 000000

CANCELADO

           DATA 09/03/16 HORA:

11:30:00

No componente, eu configurei o modelo para ppEscBematech, colunasfontenormal 48, paginadecodigo pc850.

O interessante é que ao mandar a impressão do exemplo, as linhas são impressas corretamente.

Alguém saberia dizer o que pode estar ocorrendo ? Se eu devo finalizar as linhas com algum caractere especial ou algo parecido.

 

Grato pela atenção.

 

Link para o comentário
Compartilhar em outros sites

Bom dia a todos.

Troquei a função ACBrNFeDANFeESCPOS.ImprimirRelatorio para a função ACBrNFeDANFeESCPOS.PosPrinter.ImprimirLinha. Estou enviando blocos de 10 linhas com 50 caracteres e está indo tudo bem.

Gostaria de saber como tratar o retorno da função ACBrNFeDANFeESCPOS.PosPrinter.LerStatusImpressora. Analisando os fontes, consegui encontrar os retornos: stErro, stNaoSerial, stPoucoPapel, stSemPapel, stGavetaAberta, stImprimindo, stOffLine, stTampaAberta.

Estou tentando usar assim:

if ACBrNFeDANFeESCPOS.PosPrinter.LerStatusImpressora <> [stErro] then
  VerificaErro
else
  ACBrNFeDANFeESCPOS.PosPrinter.ImprimirLinha(linha_teste);

Durante os testes, eu desliguei a impressora, e ao invés do retorno apareceu o erro: 

Communication error 2: O sistema não pode encontrar o arquivo especificado.
 

Ainda estou com a impressora Bematech na COM7.

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2939 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.