Ir para conteúdo
  • Cadastre-se

dev botao

Acbrecf - Gerar Nota Paulista Bematech (Pafmf_Mfd_Cotepe1704)


  • Este tópico foi criado há 3423 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Fala galera blz?!

 

To usando o ACBrECF para geração dos arquivos de Nota Fiscal Paulista para impressora fiscal Bematech.

 

Estou usando o método PafMF_MFD_Cotepe1704(data_inicial, data_final, path_arquivos)

 

Existe o comentário no método PafMF_GerarCAT52() para ECF somente sem MFD para usar o método Cotepe1704.

 

Porém ao executar o método ele cria apenas o arquivo ".mfd" não gerando os arquivos diários.

 

Vi esse post no fórum com mesmo problema porém já foi feita a correção no ACBr:

 

 

As dlls da bematech já estão atualizadas.

 

Perguntas:

 

a) O que pode estar acontecendo?

 

B) O método, pelo que entendi usa a dll da Bematech. Ele usa também o arquivo INI? Vou verificar mas acho que pode estar gerando os arquivos no Path indicado no INI.

 

Desde já agradeço pela ajuda! Abraço.

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores

o ACBr tenta mudar o path do arquivo ini para que a dll gere no local determinado

mas lembre-se de algumas coisas por exemplo no windows com o UAC ativado e o programa estiver rodando no c:\Program files\ , ele não irá deixar a dll criar o arquivo ali a menos que seja executado como administrador!

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

Fiz os testes aqui com calma (máquina com windows XP e arquivos INI e DLL na pasta do sistema) e estou com os seguintes problemas:

 

PafMF_GerarCAT52

 

Gera os arquivos diários sem problema, PORÉM o ACBrECF altera o Path do BemaFI32.ini, gera o arquivo MFD no caminho indicado, mas os arquivos diários estão sendo gerados no Path antigo (antes da modificação, no caso C:\)

 

Só esse detalhe do Path alterado, o resto funcionou direitinho.

 

PafMF_MFD_Cotepe1704

 

Erro ao executar xBematech_FI_ArquivoMFDPath.

 

O que pode estar acontecendo? Qualquer dica é bem vinda.

Link para o comentário
Compartilhar em outros sites

Fiz os testes aqui, inclusive usando as novas dlls da bematech e também as contidas no fonte do ACBr.

 

O método PafMF_GerarCAT52() gera os arquivos mas gera no path contido inicialmente no INI e não no path que indiquei.

 

Fazendo o mesmo bloco do método consegui gerar os arquivos corretamente na pasta indicada, porém leva muito mais tempo para gerar. 

 

DataArq := dtInicial.Date;

DirArq  := Trim(edtDiretorio.Text);
repeat
 
          NomeArq := IncludeTrailingPathDelimiter(DirArq) + NomeArqCAT52(ECF.RFDID, ECF.NumSerie, DataArq);
 
          ArquivoMFD_DLL(DataArq, DataArq, NomeArq, [docTodos], finNFPTDM);
 
          DataArq := IncDay(DataArq, 1);
 
until DataArq > dtFinal.Date;

 

O que percebi é que fazendo dessa forma ele cria o arquivo lendo a memória para cada dia em questão, diferente do método direto do ACBrECF - PafMF_GerarCAT52() que cria o arquivo MFD uma unica vez (contendo todo o período) para depois extrair as informações diárias.

 

Pergunta:

 

O que acontece? Porque esse problema de gerar no path errado?

 

Para os que já utilizam com Bematech, poderia dizer se está funcionando corretamente? 

Link para o comentário
Compartilhar em outros sites

Estou usando como exemplo a geração de Fev/2014:

 

PafMF_GerarCAT52(StrToDate('01/02/2014'), StrToDate('28/02/2014'), 'C:\NFP');

 

No arquivo INI, o "Path" está setado para C:\

 

Depois que executo o método acima, o ACBr altera o Path do INI para C:\NFP\ 

 

O arquivo .mfd é gerado na pasta correta -> C:\NFP

 

Mas os arquivos diários são gerados no C:\

Link para o comentário
Compartilhar em outros sites

PessoALL, identifiquei o problema mas ainda não encontrei a solução!

 

Ao executar o programa, percebi que o arquivo INI é pré-carregado junto.

 

Com isso, mesmo após indicar o caminho que eu quero que gere os arquivos, por algum motivo, ele enxerga a primeira leitura do Path (original).

 

Ele somente gera o "download.mfd" na pasta correta, porém todo o resto está gerando o path original.

 

Tentei alterar o Path manipulando o INI antes da execução do método e ativação da impressora, porém não adiantou.

 

Alguém tem alguma dica como resolver?

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Certeza de que você precisa da CAT52 ??  Veja essa observação que consta nos fontes do ACBrECF

 

procedure TACBrECF.PafMF_GerarCAT52(const DataInicial, DataFinal: TDateTime;
  const DirArquivos: String);
begin
  { ATENÇÃO !!  Para geração de arquivos programas de cidadania, como Nota
    Fiscal Paulista, Nota Alogoana, etc.. se o seu ECF é MFD (termico), utilize
    o método  ** PafMF_MFD_Cotepe1704 **...
    O Layout de arquivo CAT52 foi criado pelo governo de SP, para ser utilizado
    somente nas seguintes situações:
    - ECF sem MFD (as antigas matriciais)
    - Geração do arquivo com base nas informações do Banco de Dados e não da MFD
    }


  fsECF.PafMF_GerarCAT52(DataInicial, DataFinal, IncludeTrailingPathDelimiter(DirArquivos));
end;

 

 

Todas as DLLs estão na mesma pasta do .EXE ?

  • Curtir 1
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

Daniel, sinceramente tenho algumas dúvidas.

 

Todo mês gero os arquivos do CAT 52 para o cliente através do programa WinMFD2 da Bematech. Ele gera os respectivos arquivos do mês (um arquivo para cada dia do mês).

 

Agora preciso implementar isso diretamente no sistema, afim de tornar mais prático a geração desses arquivos. Como disse, é uma impressora MP-4000 TH (Não matricial).

 

Pergunta que está deixando eu confuso:

 

Qual a diferença entre CAT-52 e Cotepe 17/04? O Cotepe gera os arquivos diários também?

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Eu recomendo que vc leia a CAT 52 o Ato Cotepe 17/04 e chegue a suas conclusões...

Hoje em dia, para trabalhar com automação comercial precisamos conhecer as leis tão bem ( ou melhor ) que os contadores

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

  • 3 semanas depois ...

Bom dia Felipe,

E qual a solução que encontrou ?

Eu passo pelo mesmo problema, pois quando vou gerar os arquivos, crio a Pasta com o Mês-Ano para onde irei salvar, mas acontece a mesma coisa, ele usa o Path de quando eu carreguei o arquivo .INI

Como vc solucionou ??

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
  • Membros Pro

Olá pessoal, eu também estou tendo o mesmo problema relatado pelo nosso amigo.

Quando utilizo a função gerar PafMF_GerarCAT52 gera os arquivos mas fora da pasta indicada, quando utilizo a função PafMF_MFD_Cotepe1704 ele gera o arquivo DOWNLOAD.MFD mas apresenta o erro "Erro ao executar xBematech_FI_ArquivoMFDPath"

 

Já excluí todas as DLLs, INI, da pasta system32, verifiquei se havia alguma outra copia em qualquer outra pasta, estou utilizando a versão atualizada das dlls incluidas na pasta de instalação do ACBr.

Pesquisei hoje a manhã toda no forum mas não encontrei nada, isso que me deixa mais intrigado.

Estou utilizando apenas o componente ACBrECF, não estou utilizando nenhum outro componente (RFD, EAD ou outro).

Quem puder me dar uma luz será muito bem vinda.

Gilson do Carmo
WindSoft Sistemas

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Olá Ragys, que honra receber uma resposta sua. Sou seu seguidor e fã.

Testei em 3 computadores diferentes com 3 impressoras bematech Mp2100TH distintas.

Todos os computadores rodando Win7 32 bits, UAC desativado, usuário administrador, DLLs registradas (utilizando o registra.bat) etc.

A única pista que tenho é o arquivo de log gerado pela DLL da bematech (anexo) em que aparece erro na dll sign_bema.dll, mas a dll está na mesma pasta do aplicativo, atualizada e não há nenhuma outra versão no system32 ou outra pasta.

 

BemaFI32-20140416.zip

Gilson do Carmo
WindSoft Sistemas

Link para o comentário
Compartilhar em outros sites

  • 7 meses depois ...
  • Este tópico foi criado há 3423 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

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

The popup will be closed in 10 segundos...