none
Bematech Flash Tip - Edição 52 - Agilizando a Busca no Retorno de Status RRS feed

  • Discussão Geral

  • Edição 52 | 10/01/2011
     
      Agilizando a busca no retorno de status nas impressoras fiscais Bematech

    Prezado parceiro,

    Primeiramente, gostaríamos de desejar a você um excelente início de ano e que 2011 seja repleto de novas conquistas e realizações.

    Estamos preparando para você nosso partner e desenvolvedor Bematech, uma série de Flash Tips com dicas de programação e integração de nossas ferramentas de desenvolvimento.

    Iniciaremos nesta edição, falando um pouco sobre um conceito muito importante: entender o retorno de status da impressora e como agilizar o tratamento na aplicação.

    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... (leia mais)

    Forte abraço e boas implementações,

    André Luiz R. Munhoz
    Engenharia de Desenvolvimento - P&D
    Bematech S/A 

     


    Artigos

    Artigos, Notícias e Assuntos que envolvem o "mundo" da Automação Comercial, acesse o blog BemaCAST: http://partners.bematech.com.br/bemacast


    Últimas Notícias
     
    Canais de atendimento BSB


    0800 644 7277 - Suporte exclusivo ao parceiro desenvolvedor de software

    Dúvidas sobre o programa BSP, contate: partners@bematech.com.br



    Twitter | Blog | Fórum


    SAC | Indicar um amigo | Suporte | FAQ

    Caso não queira receber o Flash Tip, clique aqui.


     
    Bematech S. A. | Todos os direitos reservados - Copyright 2010
    <map name="Map"> <area shape="rect" coords="49,13,194,108" href="http://www.bematech.com.br" alt="Bematech S/A" target="_blank"></area> <area shape="rect" coords="225,68,315,105" href="http://partners.bematech.com.br/bemacast/category/flash-tip/" alt="Bematech Flash News" target="_blank"></area> </map>
    segunda-feira, 10 de janeiro de 2011 19:16