domingo, 13 de junho de 2010

Usando o emulador da Bematech no Protheus

Toda vez que eu precisava testar alguma rotina ou customização no módulo SigaLoja em uma base teste, me deparava com a falta da impressora fiscal, pois vocês já sabem que existe toda aquela burocracia para a instalação de ECF em um PC. Então comecei tentar usar o emulador da Bematech no Protheus. Depois de muitas tentativas ele começou a funcionar. Segue abaixo todos os procedimentos para que você consiga fazer com que o Protheus use o Emulador da Bematech.


Para usar o emulador da Impressora Fiscal MP2100 TH FI no Protheus, siga os seguintes passos para a instalação:

1 - Instale o emulador que se encontra no link: http://www.bematech.com.br/suporte/downloads/fisc_win/Emul2100v101.zip
 
2 - Descompacte o arquivo: https://www.opendrive.com/files/6925822_kgOSf_1ea0 para dentro da pasta que se encontra o Remote do Protheus.(Eu sugiro você ter o remote local pois não testei a emulação com Remote instalado em outro computador.)

3 - Recorte o arquivo BemaFI32.INI da pasta aonde se encontra o Remote do Protheus e cole na pasta c:\windows\system32

4 - Edite esse arquivo BemaFI32.INI e na seção Sistema altere a variável EmulMFD para o conteúdo 1, ou seja, você esta dizendo que esta usando um emulador.

5 - No mesmo arquivo na seção Sistema altere a variável Porta para o conteúdo COM1 por exemplo. Use uma porta que o sistema não esteja usando. Essa mesma porta terá de ser configurada no Protheus e na Impressora fiscal mais adiante.

6 - Acesse o emulator da bematech em: INICIAR - PROGRAMAS - BEMATECH - Emul2100

7 - Primeiramente vamos alterar a porta do emulador, clique com o botão direito no emulador e selecione Porta Serial, altere para COM1.

8 - Agora vamos fazer as alterações necessárias no Protheus para que ele se comunique com o emulador.

9 - Acesse o Protheus com o seu usuário.

10 - Acesse o modulo Controle de Lojas

11 - Acesse a rotina Miscelania - Configurações - Estacao

12 - Exclua a estacao atual.

13 - Inclua a nova estação com as seguintes informações:

Estacao001
NomeESTACAO TESTE
FabricanteBEMATECH
ModeloBEMATECH MP2100 THFI - V. 01.00.01
PDV0001
SERIEECF
PORTACOM1

14 - Acessar o configurador e altere os seguinte parametros:
ParametroConteudo
MV_IMPFISBEMATECH MP2100 THFI
MV_PORTFISCOM1

15 - Ainda no configurador acesse o cadastro de empresas.

16 - Edite as informações da empresa e altere o CNPJ para: 82373077000171. Porque isso? Como é o emulador da Bematech o CNPJ cadastro no Emulador é o da própria Bematech. Se não fizer esta alteração não é possivel fazer uma venda. (Lembre-se que estou fazendo isso em um ambiente teste. Nao altere nada no cadastro de empresas em um ambiente de produção.)

17 - Após isso baixe o seguinte arquivo: https://www.opendrive.com/files/6925887_xbo7O_7c92. Esse aplicativo é um exemplo que a bematech disponibiliza os fontes em Delphi  para alterar e testar a ECF. Eu copiei os fontes do site da Bematech e compilei. Acesse o aplicativo Bematech.exe.

18 - Dentro do aplicativo Bematech, vamos informar quais aliquotas de ICMS que o Emulador terá. Acesse o menu Inicialização - Adicionar Aliquota Tributaria.

19 - Adicione as seguintes aliquotas: 12 ICMS - 17 ICMS - 18 ICMS. Após isso feche aplicativo.

20 - Acesse o Controle de Lojas com a senha de caixa, se o sistema mostrar a mensagem que o “numero de serie do ecf é diferente do cadastrado na estacao”, acesse o menu Miscelania e Gere os arquivos de criptografia. Saia do sistema e acesse novamente.

21- Se não ocorrer nenhum erro o sistema esta pronto para usar o Emulador.


Obs: Se caso não funcionar com essas dicas, deixe sua dúvida. Eu testei os passos acima com o PAF-ECF configurado no Protheus e não consegui emular mais a ECF. Não tenho certeza mais o que eu verifiquei é que o CNPJ da empresa que usará o PAF-ECF é liberado pela TOTVS por meio de um patch, ou seja, está no fonte e não mais no cadastro de empresas.

Apostilas de ADVPL

Essa apostila não possui todos os comandos ADVPL mas contêm os principais, é uma boa para quem está iniciando.  


Apostila contendo todos os pontos de entradas do Protheus, deve-se tomar cuidado ao usar um determinado ponto de entrada descrito nesta apostila, pois não há informação de quando este ponto de entrada é chamado pelo sistema.
   
Temos um grande problema quando começamos a desenvolver algo em ADVPL, a documentação existente além de ser limitada possui poucas explicações. Essa é a lista das funções existentes na linguagem ADVPL. Algumas funções possuem parâmetros como (CR - Caracter), (NR - Número), (BO - Boleano),(AR - Array). Assim que possível vou descrever algumas funções destas.