Caro parceiro,
Ainda há algumas dúvidas em relação à geração do arquivo da portaria CAT-52 e Ato Cotepe 17/04 para o estado de São Paulo.
Nesta edição de nosso Flash-tip, estaremos detalhando todos os procedimentos de geração deste arquivo, através de nossas ferramentas de comunicação.
DLL BEMAFI32 (ambiente Windows)
A Bematech implementou em sua dll de alto-nível BemaFI32.dll, o controle e geração do arquivo da portaria CAT-52 (layout para as impressoras fiscais matriciais) e Ato Cotepe 17/04 (layout para as impressoras fiscais térmicas com MFD) automaticamente. A última versão disponível em nosso site é 5.8.0.0.
Basta atualizar a BemaFI32.dll juntamente com as dlls BemaMFD.dll, BemaMFD2.dll e o arquivo de configuração BemaFI32.ini, no diretório de sistema de seu Windows (C:\Windows\System32, por exemplo).
As chaves das seções [SoftwareHouse] e [ECF], no arquivo BemaFI32.ini, devem ser configuradas da seguinte forma:
| [SoftwareHouse] | |
| COO= | Informe nesta chave o último COO da impressora, antes da atualização da nova dll, com o tamanho de 6 bytes. Ex: imprima uma Leitura X e coloque o COO desta Leitura X nesta chave. |
| NumeroAplicativo= | Informe nesta chave um Id para sua aplicação, com o tamanho de 2 bytes. Ex: 01 |
| CNPJ= | Informe nesta chave o CNPJ/CPF da Software House ou desenvolvedor autônomo, com até 14 bytes. Sem máscara. |
| IE= | Informe nesta chave a Inscrição Estadual da Software House, com até 14 bytes. Caso não possua pode deixar em branco. Sem máscara. |
| IM= | Informe nesta chave a Inscrição Municipal da Software House, com até 14 bytes. Caso não possua pode deixar em branco. Sem máscara. |
| RazaoSocial= | Informe nesta chave a Razão Social da Software House, com até 40 bytes. |
| NomeAplicativo= | Informe nesta chave o nome do aplicativo de automação comercial, com até 40 bytes. |
| Versao= | Informe nesta chave a versão do aplicativo de automação comercial, com até 10 bytes. Ex: 01.00.05 |
| Linha1= | Informe nesta chave comentários do programa aplicativo, com até 42 bytes. Caso não possua pode deixar em branco. |
| Linha2= | Informe nesta chave comentários do programa aplicativo, com até 42 bytes. Caso não possua pode deixar em branco. |
| [ECF] | |
| IM= | Informe nesta chave a Inscrição Municipal do estabelecimento que possui a ECF, com até 20 bytes. Sem máscara. |
| UF= | Informe nesta chave a Unidade da Federação do estabelecimento que possui a ECF, com até 2 posições. Esta chave deve possuir o valor SP (UF=SP) obrigatoriamente para que a dll possa gerar o arquivo. Sem máscara. |
Exemplo:
[SoftwareHouse]
COO=003351
NumeroAplicativo=01
CNPJ=11111111111111
IE=22222222222222
IM=33333333333333
RazaoSocial=EMPRESA DE SOFTWARE TESTE
NomeAplicativo=APLICATIVO TESTE
Versao=1.0
Linha1=LINHA1 TESTE
Linha2=LINHA2 TESTE
[ECF]
IM=44444444444444
UF=SP
Obs: Se a impressora fiscal utilizada for MP-20 FI II ou MP-40 FI II, a chave Impressora na seção [MFD] deve possuir o valor 0 (Impressora=0), caso contrário esta chave deve possuir o valor 1 (Impressora=1).
Configurando estas chaves, a dll estará controlando os dados para a geração da CAT-52 ou Ato Cotepe 17/04.
Quando é gerado o arquivo final pronto para ser validado?
Existem 3 situações:
1) Quando for executada a Redução Z pela aplicação de automação comercial;
2) Quando a impressora emitir automaticamente a Redução Z às 02:00 horas da manhã e, posteriormente, for aberto o cupom fiscal e;
3) Quando a impressora emitir automaticamente a Redução Z quando for ligada no dia seguinte e, posteriormente, for aberto o primeiro cupom fiscal do dia.
Nas impressoras fiscais matriciais, a dll irá criar e manter um arquivo de extensão .RFD durante o movimento do dia (este arquivo corresponde ao Registro de Fita-Detalhe e seu conteúdo é criptografado).
Quando ocorrer uma das 3 situações acima, a dll irá converter este arquivo em um novo arquivo (sem extensão .RFD) no formato e layout da portaria CAT-52, pronto para ser validado no site da SEFAZ/SP.
Nas impressoras fiscais térmicas, a dll irá gerar o arquivo final diretamente da MFD (Memória de Fita-Detalhe) da impressora, quando ocorrer uma das 3 situações acima, ou seja, a dll fará o download da MFD do dia do movimento, e criará o arquivo no formato e layout do Ato Cotepe 17/04.
Onde é gerado o arquivo final?
O arquivo da portaria CAT-52 ou Ato Cotepe 17/04 é gerado no caminho configurado na chave Path do arquivo BemaFI32.ini. Além do arquivo final, o arquivo .RFD ou .MFD também é gerado neste caminho.
Bematech Monitor (ambiente Windows e DOS)
O driver Bematech Monitor para acesso remoto às impressoras fiscais Bematech também está preparado para a portaria CAT-52 e Ato Cotepe 17/04, pois ele interage com a dll BemaFI32. Então, basta configurar as chaves citadas acima no arquivo BemaFI32.ini da estação.
Aplicações em ambiente DOS (janela DOS) também podem gerar o arquivo da CAT-52 e Ato Cotepe 17/04, comunicando com as impressoras fiscais Bematech, através do Bematech Monitor.
O Bematech Monitor foi criado para acessar às impressoras fiscais Bematech remotamente, porém seu “mecanismo” de comunicação é “troca de arquivos”, ou seja, a dll cria um arquivo com um código e o Bematech Monitor transforma este código na função correspondente da dll. Portanto, sua aplicação em DOS pode criar este arquivo (BemaFI32.cmd) com o código da função correspondente ao processo que deseja executar na impressora e envia-o para o Bematech Monitor, este por sua vez lê o arquivo e realiza todo o processo de envio à impressora, controlando os dados para a geração da CAT-52 e Ato Cotepe 17/04 (veja no arquivo de ajuda BemaFI32.chm, tópico “Utilizando a DLL em aplicações 16 Bits”, mais informações sobre seu uso).
Além disso, se sua aplicação DOS faz acesso às impressoras fiscais Bematech através do Bemafi.exe, você também poderá usar o Bematech Monitor.
O Bematech Monitor reconhece a sintaxe e nomenclatura do arquivo Bemafi.cmd. Então, basta retirar a chamada ao Bemafi.exe e criar o arquivo Bemafi.cmd normalmente, gravando-o na pasta de monitoramento do Bematech Monitor. Se o arquivo BemaFI32.ini estiver configurado para gerar a CAT-52 e Ato Cotepe 17/04, o arquivo final será gerado.
Geração do arquivo CAT-52 / Ato Cotepe 17/04 retroativo
É possível gerar o arquivo da portaria CAT-52 e Ato Cotepe 17/04 retroativo, de duas maneiras:
- pela BemaFI32.dll
Implementamos na dll a função Bematech_FI_GeraRegistrosCAT52MFD que permite gerar o arquivo final, a partir de informações contidas na MFD das impressoras fiscais térmicas ou a partir do arquivo .RFD ou .MFD gerados anteriormente.
A função Bematech_FI_GeraRegistrosCAT52MFD possui os seguintes parâmetros:
Arquivo: STRING com o nome do arquivo .MFD ou .RFD de onde os registros serão gerados. Informar o caminho completo.
DataGeracao: STRING com a data que os registros serão gerados, no formato ddmmaa, dd/mm/aa, ddmmaaaa ou dd/mm/aaaa.
E, funciona da seguinte maneira:
- Para os modelos de impressoras fiscais matriciais é obrigatório informar o arquivo .RFD como parâmetro. O parâmetro que corresponde a data não é obrigatório e será ignorado caso seja informado. O arquivo da CAT-52 será gerado com as informações contidas no arquivo .RFD informado.
- Para os modelos de impressoras fiscais térmicas com MFD temos as seguintes possibilidades:
a) se não forem informados o arquivo .MFD e a data como parâmetros, a função fará o download da MFD da data atual e fará a geração do arquivo do Ato Cotepe 17/04.
b) se for informado o arquivo .MFD e não for informada a data, a função retornará erro.
c) se for informada apenas a data, a função fará o download da MFD com base na data informada e fará a geração do arquivo do Ato Cotepe 17/04.
d) se forem informados o arquivo .MFD e a data, a função fará a geração do arquivo do Ato Cotepe 17/04 com as informações contidas no arquivo .MFD na data informada.
- Para o emulador da impressora fiscal a função terá efeito, se a comunicação com ele for realizada através de seu cabo serial fisicamente conectado ao micro (COM1 <-> COM2, por exemplo), pois é realizado o download da MFD para a geração do arquivo. A pinagem deste cabo está descrito no arquivo de ajuda do emulador.
Exemplo em Visual Basic:
iRetorno = Bematech_FI_GeraRegistrosCAT52MFD(“C:\download.mfd”, “30/07/2007″)
ou
iRetorno = Bematech_FI_GeraRegistrosCAT52MFD(“C:\BEB00007.M57.rfd”, “30/07/2007″)
Exemplo em Delphi:
Data := ’30/07/2007′;
iRetorno := Bematech_FI_GeraRegistrosCAT52MFD( pchar( Arquivo ), pchar( Data ) );
ou
Data := ’30/07/2007′;
iRetorno := Bematech_FI_GeraRegistrosCAT52MFD( pchar( Arquivo ), pchar( Data ) );
- pelo WinMFD2
A Bematech disponibiliza em seu site um aplicativo chamado WinMFD2 que possibilita a geração do arquivo da portaria CAT-52 e Ato Cotepe 17/04 retroativo, nas impressoras fiscais matriciais e térmicas.
A utilização deste aplicativo se dá da seguinte maneira:
1) para impressoras fiscais térmicas com MFD
- No menu “Comunicação”, selecione a porta de comunicação (fig. 1) onde a impressora está conectada e neste mesmo menu selecione o modelo da impressora (fig. 2).
- No menu “Arquivo”, selecione a opção CAT-52 (fig. 3).
- Na janela que surgir, selecione as opções desejadas e clique no botão “Gerar Registros”.
A geração do Ato Cotepe 17/04, diretamente da impressora, leva aproximadamente 30 segundos para um dia de movimento fiscal com 350 cupons fiscais emitidos.
- pelo micro-terminal SB-2010/SB-2011/SB-3010
A geração do arquivo para os micro-terminais fiscais Bematech ocorrerá somente se a impressora fiscal utilizada por eles for térmicas (MFD). Desta forma, a impressora deverá ser conectada a um computador com o aplicativo WinMFD2 instalado, e proceder conforme orientações acima (tópico “pelo WinMFD2″ ).
Obs: para os micro-terminais que usam impressoras fiscais matriciais a geração do arquivo para a portaria CAT-52 não será possível, pois ambos os equipamentos não possuem memória para armazenamento e emissão dos registros da portaria.
Nomenclatura do arquivo
O arquivo gerado para a portaria CAT-52 e Ato Cotepe 17/04 possui um conteúdo de texto, visível pelo “Bloco de Notas (notepad)” do Windows (por exemplo). Entretanto, sua nomenclatura é definida da seguinte forma:
- Nome do arquivo no formato FFM12345.DMA, sendo:
| FF | é a identificação do fabricante da impressora fiscal. |
| M | é a identificação do modelo da impressora fiscal. |
| 12345 | são os cinco últimos dígitos do número de série da impressora fiscal. |
| DMA | são a identificação do dia, mês e ano do movimento, codificados com números de 1 a 9 para os dias compreendidos entre 01 e 09, e letras de A a Z compreendendo os dias acima de 09, sendo que o dia 10 corresponde a letra A, dia 11 a letra B, dia 12 a letra C e, assim, sucessivamente. Isso também se aplica para o mês e ano. |
Exemplo:
BEE28347.1C7, sendo:
| BE | identifica Bematech. | |
| E | identifica o modelo MP-2100 TH FI, onde: | |
|
Modelo ECF
|
Valor | |
|
MP 20 FI II
|
6 | |
|
MP 40 FI II
|
8 | |
|
MP 25 FI
|
B | |
|
MP 50 FI
|
C | |
|
MP 2000 TH FI
|
D | |
|
MP 2100 TH FI
|
E | |
|
MP 3000 TH FI
|
F | |
|
MP 6000 TH FI
|
G | |
|
MP 6100 TH FI
|
H | |
| 28347 | cinco últimos dígitos do número de série da impressora fiscal. | |
| 1C7 | identifica o dia 01 de dezembro de 2007. | |




13 de março de 2008 às 11:02
Comentário by JOÃO CARLOS
Olá estou com problemas para gerar o arquivo da portaria CAT-52 ..queria saber de um modo mais simples como configuro a impressora para que gere o arquivo…
Muito obrigado
9 de junho de 2008 às 17:01
Comentário by André Munhoz
Por favor, entre em contato com o suporte técnico da Bematech através do email suporte@bematech.com.br.
6 de janeiro de 2009 às 9:14
Comentário by nathan
André bom dia, por favor entao se eu tenho uma impressora MPH 2100, eu posso rodar o programinha que ele ira gerar os arquivos referentes a NFP!? obrigado