Ir para conteúdo
  • Cadastre-se

dev botao

Escpos.Imprimir - ERRO: Não está Ativo


Ver Solução Respondido por Daniel Simoes,
  • Este tópico foi criado há 1086 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Boa tarde!
 

Utilizando o monitor com TCP/IP no meu desenvolvimento utilizando uma ELGIN i9 o fluxo de impressão foi sem problemas, porém ao liberar para o cliente um teste, ele configurou uma Bematech e diz que ocorre o erro: "ERRO: Não está Ativo".

Tentei de tudo para replicar e não consegui no meu ambiente de teste, alguém saberia o que poderia estar de errado ?
A Bematech MP 4200 TH tem alguma peculiaridade diferente para a ELGIN i9 ?

Abaixo um resumo do fluxo de comandos enviados:

ESCPOS.setPorta("RAW:Bematech MP-4200TH");

ESCPOS.Imprimir("</zera></ce><n>Restaurante Tempero e Sabor</n></lf></ae>Comanda:                                   1198</lf></ae>Mesa:                                         6</lf></ae>Data:                       05/04/2021 17:37:43</lf></linha_simples></lf></ae>Nomes: </lf>Código: </lf></linha_dupla></lf></ae>Cod/Qtde. - Descricao / Unit.</ad>Total</lf></linha_dupla></lf></ae>1 PRATO DO DIA                         R$ 30,00</lf></linha_dupla></lf></ae>Quant. total de itens:                        1</lf></linha_dupla></lf></linha_dupla></lf></ae>Total de taxas:                                </lf></linha_dupla></lf></linha_dupla></lf></ae>Desconto:                                      </lf></linha_dupla></lf></linha_dupla></lf></ae>Total a receber:                       R$ 30,00</lf></linha_dupla></lf></ae>Ctr.Int: 1349</lf>www.localhost.com.br</lf></lf></corte_total>")
ERRO: Não está Ativo
ALERTA: Fim da Conexão com: 127.0.0.1 em: 05/04/21 18:27:29

Obs: tentei antes de enviar o comando Imprimir enviar o ESCPOS.ativar(), mesmo assim o erro persistiu e também solicitei ao cliente clicar no Ativar da própria Aba ESCPOS do monitor porém nada mudou.

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
51 minutos atrás, José M. S. Junior disse:

Aparentemente algum problema com a instalação da impressora. Tente identificar a porta com emulada que está utilizando e informe a porta COM direto

José boa tarde!
 

Eu tentei achar pelo gerenciador de dispositivos a porta das impressoras mas sou leigo no assunto e acabei não encontrando nada que ajudasse, creio que pelo fato do cliente ter instalado a impressora no windows com os drivers e tal.

Eu consegui acessar remotamente a máquina do cliente, e fiz alguns testes com o ACBRConector.

O que notei foi o seguinte:

Lá no cliente se faz necessário o seguinte fluxo para funcionar a impressão:

ESCPOS.setporta("RAW:MP-4200 TH"); ou ESCPOS.setporta("RAW:TANCA");
ESCPOS.ativar();

ESCPOS.Imprimir("</zera></ce><n>Restaurante Tempero e Sabor </n></lf> - BALCAO - </lf></lf></ae>Comanda.: 7</lf>Data....: 06/04/2021 - 18:18:15</lf>Operador: </lf></linha_simples></lf>Nome....: PEGAR O NOME</lf></linha_dupla></lf>Cod/Qtde. - Descricao  /  Unit.  - Total</lf></linha_dupla></lf></ae>1 PRATO DO DIA                         R$ 30,00</lf></ae>Obs: </lf></linha_dupla></lf>Total a receber..........: </ad>R$ 30,00</lf></lf></linha_dupla></lf></ae>Ctr.Int: 1355</lf></lf></corte_total>");

Já aqui em desenvolvimento eu apenas faço:

ESCPOS.setporta("RAW:ELGIN i9(USB)");

ESCPOS.Imprimir("</zera></ce><n>Restaurante Tempero e Sabor </n></lf> - BALCAO - </lf></lf></ae>Comanda.: 7</lf>Data....: 06/04/2021 - 18:18:15</lf>Operador: </lf></linha_simples></lf>Nome....: PEGAR O NOME</lf></linha_dupla></lf>Cod/Qtde. - Descricao  /  Unit.  - Total</lf></linha_dupla></lf></ae>1 PRATO DO DIA                         R$ 30,00</lf></ae>Obs: </lf></linha_dupla></lf>Total a receber..........: </ad>R$ 30,00</lf></lf></linha_dupla></lf></ae>Ctr.Int: 1355</lf></lf></corte_total>");

Por que será que tem essa diferença ?
Pelas "boas práticas " se faz necessário sempre a sequencia setPorta(), ativar(),imprimir(),desativar() ou pode ser alguma configuração no Monitor, ou driver instalado ?

Agradeço muito se tiverem algumas dicas pois percebo que quanto menos comandos envio por TCP/IP mais agilidade no fluxo do sistema, sendo assim gostaria de otimizar o que for possível.

Desde já agradeço a ajuda de todos.
 

Link para o comentário
Compartilhar em outros sites

  • Moderadores

O correto é sempre Setar a porta, ativar a impressora e desativa-la após o uso. Essas são as boas praticas.

Mas caso vc queira "ganhar tempo", sugiro algum tipo de configuração para não enviar os comandos de ativação e desativação. Tenta sem enviar. Deu pau, marca a configuração de enviar os comandos e segue a vida.

Consultora SAC ACBr

Alan "Bruto do Delphi" Bariani
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Link para o comentário
Compartilhar em outros sites

  • Fundadores
  • Solution

Humm.. Verifique se não está ativada a opção Controle Porta  (recomendado)

https://acbr.sourceforge.io/ACBrMonitor/PosPrinter.html

Se estiver, o ACBrPosPrinter irá abrir a porta automaticamente, quando for imprimir, e fecha após o termino da impressão

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

×
×
  • 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.