Jump to content

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

Recommended Posts

Posted

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.

Posted

Por enquanto estou usando apenas o AcbrNFe, DANFeESCPOS e ACBrPosPrinter. Verificando aqui nos exemplos, encontrei um que possui o comando DANFeESCPOS1.ImprimirRelatorio('linhas podem ter até 600 caracteres') .

Vou fazer os testes aqui e dou o retorno.

Posted (edited)

Peço desculpas a todos. Por favor, algum administrador poderia colocar esses tópicos no local correto ? Existe algum local que se discuta NFC-e que não seja no link do Sat Fiscal ?

Edited by Turbo Drive
Posted

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.

 

Posted

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.

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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

The popup will be closed in 10 seconds...