AtendeSmart ControlP
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Ir para baixo
avatar
Admin
Admin
Mensagens : 303
Data de inscrição : 24/01/2020
https://atendesmart.forumeiros.com

Sicom \ ECF: ENTENDA OS RETORNOS DE ERROS DA IMPRESSORAS FISCAIS BEMATECH Empty Sicom ECF: ENTENDA OS RETORNOS DE ERROS DA IMPRESSORAS FISCAIS BEMATECH

Qui Jan 30, 2020 11:19 am
Prezado Partner e Desenvolvedor,
Sabemos que as impressoras fiscais Bematech interagem com sua aplicação enviando bytes de status a cada execução de comando – os famosos “ACK” ou “NACK”, “ST1?, “ST2? e “ST3? (“ST3? para as impressoras do Convênio ICMS 85/01 – MP-25/50 FI e MP-2000/2100/3000/4000/6000/6100/7000 TH FI).
Analisar este retorno é fundamental, pois é através dele que sabemos se o comando enviado foi executado com sucesso ou não pela impressora. Antes de conhecermos a rotina que fará a busca e o tratamento deste retorno, vamos entender um pouco mais sobre estes bytes.
- “ACK” indica que o comando enviado foi recebido com sucesso pela impressora. O seu valor é 6 (seis), tanto decimal quanto hexadecimal.
- “NACK” indica que o comando enviado não foi recebido com sucesso pela impressora, ou seja, o protocolo (seqüência de bytes do comando) não foi enviado corretamente. O seu valor é 21 (vinte e um) em decimal ou 15 (quinze) em hexadecimal.
- “ST1? informa o primeiro quadro de status da impressora, onde cada bit setado possui uma situação:
bit 7 – “Fim de Papel” (128 é o valor deste bit).
bit 6 – “Pouco Papel” (64 é o valor deste bit).
bit 5 – “Erro no Relógio” (32 é o valor deste bit).
bit 4 – “Impressora em Erro” (16 é o valor deste bit).
bit 3 – “Comando não iniciado com ESC” (8 é o valor deste bit).
bit 2 – “Comando Inexistente” (4 é o valor deste bit).
bit 1 – “Cupom Aberto” (2 é o valor deste bit).
bit 0 – “Número de Parâmetro(s) Inválido(s)” (1 é o valor deste bit).
- “ST2? informa o segundo quadro de status da impressora, onde cada bit setado possui uma situação:
bit 7 – “Tipo de Parâmetro de Comando Inválido” (128 é o valor deste bit).
bit 6 – “Memória Fiscal Lotada” (64 é o valor deste bit).
bit 5 – “Erro na Memória RAM” (32 é o valor deste bit).
bit 4 – “Alíquota Não Programada” (16 é o valor deste bit).
bit 3 – “Capacidade de Alíquotas Lotada” (8 é o valor deste bit).
bit 2 – “Cancelamento Não Permitido” (4 é o valor deste bit).
bit 1 – “CNPJ/IE do Proprietário Não Programado” (2 é o valor deste bit).
bit 0 – “Comando Não Executado” (1 é o valor deste bit).
Nos bytes ST1 e ST2 as informações de retorno poderão vir somadas, ou seja, poderemos ter um ou mais retorno em um mesmo status. Por exemplo, se recebermos em ST1 o valor 66, significa que a impressora está com pouco papel e com o cupom fiscal aberto. Então teremos o bit 6 (valor 64) mais o bit 1 (valor 2) setados (64 + 2 = 66).
- “ST3? informa o terceiro quadro de status da impressora. Disponível apenas nas impressoras do Convênio ICMS 85/01 (modelos citados acima), este byte define com maior precisão o estado em que se encontra a impressora.
Vamos visualizar como exemplo, alguns valores de retorno do byte ST3, pois teremos todos na rotina que iremos conhecer.
0 – “Comando OK”.
1 – “Comando Inválido”.
2 – “Erro Desconhecido”.
3 – “Número de Parâmetro Inválido”.
4 – “Tipo de Parâmetro Inválido”.
5 – “Todas as Alíquotas já Programadas”.
6 – “Totalizador Não Fiscal já Programado”.
7 – “Cupom Fiscal Aberto”.
8 – “Cupom Fiscal Fechado”.
9 – “ECF Ocupado 10 Impressora em Erro”.
11 – “Impressora sem Papel”.
12 – “Impressora com Cabeça Levantada”.
13 – “Impressora OFF LINE”.
14 – “Alíquota não Programada”.
15 – “Terminador de String Faltando”.
16 – “Acréscimo ou Desconto maior que o total do Cupom Fiscal”.
17 – “Cupom Fiscal sem Item Vendido”.
18 – “Comando não Efetivado”.
19 – “Sem espaço para novas Formas de Pagamento”.
20 – “Forma de Pagamento não Programada”.
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos