Ir para conteúdo
  • Cadastre-se

dev botao

Ajuste Sped E Sintegra (Bematech E Daruma)


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

Recommended Posts

Caros,

 

Realizei alguns ajustes nas rotina que geram o SPED e SINTEGRA dos fabricantes Bematech e Daruma, são eles:

 

Bematech: Não estava gerando os arquivos esperados (SPED e SINTEGRA) quando especificado estes tipos de arquivos para rotina ArquivoMFD_DLL(DataInicial, DataFinal: TDateTime;

  NomeArquivo: AnsiString; Documentos: TACBrECFTipoDocumentoSet; Finalidade: TACBrECFFinalizaArqMFD).
 
Daruma: ArquivoMFD_DLL mesmo overload da Bematech: Ajuste nos nomes dos arquivos gerados.
 
 
Observação: Realizei as alterações somente neste overload com intuito de aguardar a aprovação da moderação, caso aprovem eu realizo nas demais chamadas para este método.
 
Lembrando que atualizei os componentes antes de criar o patch em anexo.
 
Att
Eric Serafim
Sidicom Software

ACBrSerial.patch.txt

Editado por ericserafim
  • Curtir 1

Eric Serafim
Gerente de Análise e Desenvolvimento
Sidicom Sistemas de Informação
Empresa Certificada ISO 9001
Fone: 51 3219-9499

[email protected]
www.sidicom.com.br
www.facebook.com/SidicomErp
www.twitter.com/SidicomErp

logoDelphi.pnglogoIso.jpg

Link para o comentário
Compartilhar em outros sites

  • Fundadores

As modificações parecem corretas...

Em relação a linha:

       finNFP, finNFPTDM: raise EACBrECFErro.Create( ACBrStr( 'Utilize o método PafMF_GerarCAT52.'));

 

Acha que poderíamos remover ?  Creio que isso pode quebrar código de quem já está usando...

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

Olá Daniel,

 

Acredito que sim, apenas inclui esta segurança com intuito de avisar o pessoal de que o resultado esperado não será atingido invocando este método com os parâmetros acima.

Então acredito que podemos retirar sem problemas.

 

Att

Eric Serafim

Sidicom Software

Editado por ericserafim

Eric Serafim
Gerente de Análise e Desenvolvimento
Sidicom Sistemas de Informação
Empresa Certificada ISO 9001
Fone: 51 3219-9499

[email protected]
www.sidicom.com.br
www.facebook.com/SidicomErp
www.twitter.com/SidicomErp

logoDelphi.pnglogoIso.jpg

Link para o comentário
Compartilhar em outros sites

Estamos juntos !

 

Daniel,

 

Para não deixar os demais overloads dessa rotina "bugados" vou revisá-los e viabilizar a atualização deles também, mas só conseguirei fazer isso na semana do dia 30/06/2014.

 

Quanto a versão do SVN, conferi e está tudo certo.

Editado por ericserafim

Eric Serafim
Gerente de Análise e Desenvolvimento
Sidicom Sistemas de Informação
Empresa Certificada ISO 9001
Fone: 51 3219-9499

[email protected]
www.sidicom.com.br
www.facebook.com/SidicomErp
www.twitter.com/SidicomErp

logoDelphi.pnglogoIso.jpg

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...

Atualizando...

 

 

Ainda não consegui ver os demais overloads, aviso quando tudo estiver pronto.

Eric Serafim
Gerente de Análise e Desenvolvimento
Sidicom Sistemas de Informação
Empresa Certificada ISO 9001
Fone: 51 3219-9499

[email protected]
www.sidicom.com.br
www.facebook.com/SidicomErp
www.twitter.com/SidicomErp

logoDelphi.pnglogoIso.jpg

Link para o comentário
Compartilhar em outros sites

  • 4 meses depois ...
  • Membros Pro

Boa tarde, estou utilizando o comando:

 

ecf.ACBrECF.ArquivoMFD_DLL(DataIni, DataFim, sFile, [docTodos], finSPED);

 

Sendo:

DataIni = '01/11/2014'

DataFim = '30/11/2014'

sFile = 'SPED_000000000004122014153355.txt'

 

Para gerar o SPED na Bematech MP-2100 TH FI.

 

Estou recebendo o erro:

 

"Erro ao executar xBematech_FI_GerarRegistrosSpedCompleto. Cod: -2 - Parâmetro Inválido"

 

Estou com a BemaFI32.dll de 02/07/2014.

 

Para utilizar essa procedure preciso modificar as informações em outro lugar? Estou passando algum valor errado acima?

 

Desde já agradeço.

Editado por Intelliware
Link para o comentário
Compartilhar em outros sites

  • Moderadores

Bom dia !

não é somente dll, nem sempre no caso da bematech a última versão é que funciona tudo!

terá que efetuar testes, tente com a versão que está no svn ou outras na net

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

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

 

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Mas nesse caso, porque você está chamando a função usando Datas como String ??  Há um método específico para TDateTime...

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

  • Membros Pro

No caso, eu chamo esta procedure:

procedure TACBrECFBematech.ArquivoMFD_DLL(DataInicial, DataFinal: TDateTime;
  NomeArquivo: AnsiString; Documentos: TACBrECFTipoDocumentoSet;
  Finalidade: TACBrECFFinalizaArqMFD);

 

Os parâmetros DataInicial e DataFinal passados são do tipo TDateTime, porém dentro dela, há uma conversão para string (DiaIni   := FormatDateTime('dd"/"mm"/"yyyy', DataInicial) ) antes de serem chamados pela "xBematech_FI_GeraRegistrosSpedCompleto", local onde acusa o problema de parâmetro inválido. Você se refere a esta data mesmo?

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Se você usa:

DataIni = '01/11/2014'
DataFim = '30/11/2014'
sFile = 'SPED_000000000004122014153355.txt'

ecf.ACBrECF.ArquivoMFD_DLL(DataIni, DataFim, sFile, [docTodos], finSPED);

Isso não é compatível com:

   Procedure ArquivoMFD_DLL( DataInicial, DataFinal : TDateTime;
       NomeArquivo : AnsiString; Documentos : TACBrECFTipoDocumentoSet = [docTodos];
       Finalidade: TACBrECFFinalizaArqMFD = finMFD ) ; overload ; 

Por favor tente reproduzir o mesmo problema com o Projeto ECFTeste

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

Caro amigo, desde que implementei a geração do SPED na bematech não tive problemas.

 

Te envio a dll que utilizo atualmente.

 

Lembrando que você precisa estar utilizando a impressora via serial, pois com conversor usb ou usb nem o próprio fabricante garante o funcionamento, as vezes funciona outras não.

No meu ambiente de testes, tem micro que funciona a geração do SPED ou Sintegra na Bematech usando USB já em outro somente via serial, mesma configuração em ambos.

BemaFI32.zip

Eric Serafim
Gerente de Análise e Desenvolvimento
Sidicom Sistemas de Informação
Empresa Certificada ISO 9001
Fone: 51 3219-9499

[email protected]
www.sidicom.com.br
www.facebook.com/SidicomErp
www.twitter.com/SidicomErp

logoDelphi.pnglogoIso.jpg

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Boa tarde,

 

    Na implementação acima, que está com o source no SVN:

   Resp := xBematech_FI_GeraRegistrosSpedCompleto('', NomeArquivo,
                                                      DiaIni, DiaFim,
                                                      'T', '5102', ' ',
                                                      '00,00', '00,00',
                                                      'TESTE', '1234567');

Os campos fixados acima, como:

 

'T', '00,00', '00,00', 'TESTE', '1234567'

 

São fixos para todos os clientes? Teria como alterar esses valores antes de invocar a função de dentro da DLL?

 

Isso porquê acessando a DLL eu consigo gerar normalmente passando os valores corretos de cada cliente, mas pela ACBr tenho erro de código inválido -2, onde o código do IBGE é inválido.

 

Daniel, desculpe, mas não consegui encontrar o procedimento para reproduzir pelo ECFTeste.

Editado por Intelliware
Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
  • Fundadores

Seria muito difícil implementar isso no método atual, pela passagem de parâmetros... pois quebraria a compatibilidade de todas as classes existentes...

 

Essas informações não podem ser ajustadas em algum .INI da DLL ?

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 ...
  • Este tópico foi criado há 3585 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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...