Jump to content

Delphi chamada_delphi.png acbr.png

C6 chamada_c6.png botao.png

Erro ao assinar xml no eSocial


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

Recommended Posts

Sou o responsável pelo Nota Fiscal na empresa. Um colega está desenvolvendo o eSocial. Passei a ele as rotinas do Acbr.

Usamos o Delphi 7 e fizemos um debug juntos, usando o mesmo certificado para teste. Tudo corre aparentemente normal, até que, ao atingir o método ...

SignResult := xmlSecDSigCtxSign(FdsigCtx, SignNode);

... para mim retorna 0 e, para ele, retorna -1, o que dá o Erro: Falha ao assinar o Documento. O XML dele está com a estrutura correta e não contém caracteres inválidos para este processo. Alguém tem alguma ajuda ?

Link to comment
Share on other sites

Bom dia! Estou enviando o eSocial e quando consulto retorna o erro abaixo, meus arquivo seguem em anexo. Alguém já está com os fontes assinando todo o documento?

Erro: Assinatura do evento inválida. A assinatura do evento deverá ser realizada sobre todo documento Xml (Atributo 'URI' dever ser vazio).

Meus fontes estão igual ao do braches com algumas alterações.

Obrigado!

 

Docs.rar

Link to comment
Share on other sites

  • Consultores

Boa tarde

o fonte do branches não está completo nem o do trunk2 

estou ainda finalizando as alterações.

Consultor SAC ACBr Juliomar Marchetti
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

Link to comment
Share on other sites

Leandro, o meu colega que está desenvolvendo o eSocial está tendo um problema que é, a nosso ver, anterior ao seu, pois ele obtém um erro na assinatura do xml. O erro ocorre na chamada da função SignResult := xmlSecDSigCtxSign(FdsigCtx, SignNode).  Este método aciona a libxmlsec.dll, que parece ser a rotina que preenche dados importantes da assinatura. Na minha aplicação de Notas Fiscais, a variável SignResult fica com 0 (zero) e no eSocial fica -1, o que resulta no erro "Falha ao assinar o Documento". Tentamos abrir o seu Docs.rar para comparação, mas dá um erro de formato. Vc tem ideia do que pode nos ajudar neste contexto ? Obrigado.

Link to comment
Share on other sites

Boa tarde! Demostenes. Provavelmente a estrutura do seu XML está incorreta...

Dê uma lida nesse link.

Ressaltando que o projeto está em desenvolvimento.

Fizeram atualizações e postaram, você pode jogar dentro do seu projeto para ir testando até que tenha uma versão no trunk2.

Uma das coisa que mudaram na assinatura foi no ABCreSocialGerador.pas, colocaram mais parâmetros no ssl.assinar na

function TeSocialEvento.Assinar(XMLEvento, NomeEvento: String): AnsiString; 

      XMLAss := SSL.Assinar(ArqXML, 'eSocial', NomeEvento,'','','','id');

Edited by LeandroLJM
link errado
Link to comment
Share on other sites

  • 2 months later...

Boa tarde, pessoal baixei a nova versão do Trunk_2 e estou tento um problema na assinatura do meu Evento, quando consulto o protocolo de envio ele me retorna a seguinte resposta: Assinatura do evento inválida. Ações Sugeridas: Verificar se houve alteração do evento após a assinatura. Verificar a validade da assinatura. 

Fiz o teste no Exemplo do acbr e lá retornou também retornou o erro, alguém mais está com esse problema? Comparei minha assinatura com o manual e aparentemente está ok. Segue os XML's, Mudei os dados originais, mas a estrutura é a mesma.

Estou usando certificado A1 e essa configuração

      SSLCryptLib := cryWinCrypt;
      SSLHttpLib := httpWinHttp;
      SSLLib := libCustom;
      SSLXmlSignLib := xsLibXml2;

Obrigado!

sit.xml env-lot.xml

Link to comment
Share on other sites

13 horas atrás, LeandroLJM disse:

Boa tarde, pessoal baixei a nova versão do Trunk_2 e estou tento um problema na assinatura do meu Evento, quando consulto o protocolo de envio ele me retorna a seguinte resposta: Assinatura do evento inválida. Ações Sugeridas: Verificar se houve alteração do evento após a assinatura. Verificar a validade da assinatura. 

Fiz o teste no Exemplo do acbr e lá retornou também retornou o erro, alguém mais está com esse problema? Comparei minha assinatura com o manual e aparentemente está ok. Segue os XML's, Mudei os dados originais, mas a estrutura é a mesma.

Estou usando certificado A1 e essa configuração

      SSLCryptLib := cryWinCrypt;
      SSLHttpLib := httpWinHttp;
      SSLLib := libCustom;
      SSLXmlSignLib := xsLibXml2;

Obrigado!

sit.xml env-lot.xml

Bom dia pessoal, só para dar um esclarecimento, consegui autorizar usando o openSSL, então não coloquei o Wincript conforme orientação do Post acima, pelo visto deve funcionar com o Wincript, mas não consegui, meu Delphi deveria estar buscando DLL's de outro local.

Coloquei as DDL's no caminho DLLs\OpenSSL\0.9.8.14.e configurei      

      SSLCryptLib := cryOpenSSL;
      SSLHttpLib := httpOpenSSL;
      SSLLib := libOpenSSL;
      SSLXmlSignLib := xsXmlSec;

e funcionou perfeitamente.

Obrigado!

Link to comment
Share on other sites

  • Fundadores
3 horas atrás, LeandroLJM disse:

Coloquei as DDL's no caminho DLLs\OpenSSL\0.9.8.14.e configurei      

Vale lembrar que essa versão do OpenSSL não suporta TLS1.2

 

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 to comment
Share on other sites

  • 2 weeks later...
Em 15/02/2018 at 09:01, LeandroLJM disse:

Bom dia pessoal, só para dar um esclarecimento, consegui autorizar usando o openSSL, então não coloquei o Wincript conforme orientação do Post acima, pelo visto deve funcionar com o Wincript, mas não consegui, meu Delphi deveria estar buscando DLL's de outro local.

Coloquei as DDL's no caminho DLLs\OpenSSL\0.9.8.14.e configurei      

      SSLCryptLib := cryOpenSSL;
      SSLHttpLib := httpOpenSSL;
      SSLLib := libOpenSSL;
      SSLXmlSignLib := xsXmlSec;

e funcionou perfeitamente.

Obrigado!

 

Boa noite LeandroLJM estou com o mesmo problema que você teve, porem mesmo definindo as configurações que voce postou continua com o mesmo erro,

Tem como postar um exemplo do seu fonte para eu testar no meu projeto? 

e que versão do delphi você está usando?

Muito obrigado.

 

Link to comment
Share on other sites

Boa noite, pessoal.

Mesmo seguindo as dicas acima, não estou conseguindo chegar ao final do processo e geração/envio dos arquivos do eSocial.

      Configuração do Certificado:

      SSLCryptLib := cryOpenSSL;
      SSLHttpLib := httpOpenSSL;
      SSLLib := libOpenSSL;
      SSLXmlSignLib := xsXmlSec;

 

O detalhe é que a TAG de assinatura está sendo gerada, mas o erro persiste.

 

Obrigado, pessoal!error_msg.png.c7a64e62f74701533514a5340e141469.png

 

S-1000-0.xml

Link to comment
Share on other sites

  • 1 month later...

Sou novato aqui e preciso de um programa Utilitario (.EXE ou .DLL) para ser usado em Outra Linguagem que permita Assinar arquivos XML do projeto eSocial  (SPED Pessoal), mas nao sei onde obter esse programa. Vi algumas materias aqui como esse Utilitário ACBrSATSign que assina Documentos XML do eSAT. Tentei instalar mas deu erro dizendo que esta faltando o LbXml2-2.dll em meu micro. Depois vi que voce´s tem tambem o ACBrDFeXsXmlSec que chama a DLL libxmlsec. Vi tambem que ja tem o ACBrSPEDeSocial e gostaria de saber se tem alguma DLL ou EXE que possa ser usado por outra Linguagem mas nao sei Como e Onde baixar ?

Link to comment
Share on other sites

  • Consultores

Bom dia,

Uma pequena correção, o que temos é um componente chamado ACBreSocial para o Delphi e Lazarus.

Esse componente tem por finalidade gerar, assinar, validar e enviar os eventos do eSocial para o Webservice.

Futuramente teremos uma DLL do ACBreSocial que poderá ser utilizada por qualquer outra linguagem.

Estamos estudando também a possibilidade de adicionar o eSocial ao aplicativo ACBrMonitor Plus.

Com este aplicativo a sua aplicação vai gerar um arquivo TXT no formato INI com os dados do evento e salvar em uma pasta pré-definida, o Monitor vai se encarregar do resto.

Mas não temos ainda previsão.

  • Like 1
Consultor SAC ACBr Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Link to comment
Share on other sites

Boa Noite @italo.jurisato

Desde ja agradeco sua atencao. Estou mesmo precisando muito (e urgente) de ajuda/consultoria para "avancar" na programação dos Eventos do eSocial.  Minha maior necessidade é "arrumar" um programa/DLL que possa resolver os dois problemas mencionados anteriormente (Assinatura Digital A1/A3) e Web Service para Transmissao e Consulta dos Arquivos XML. Apos algumas pesquisas na WEB, descobri que existe a DLL "free" ( NFe_Util_2G.dll ) que ajuda a fazer a Assinatura e Transmissao do XML da NFe ou do CTe.  Mas Eu nunca trabalhei nessa programacao para Geracao, Assinatura e Transmissao da Nota Fiscal Eletronica, etc., portanto quase NAO tenho experiencia com Programacao WEB. 

- Eu gostaria muito de tentar usar uma das solucoes oferecidas por Voce´s tipo a  DLL do ACBreSocial ou mesmo o aplicativo ACBrMonitor Plus, porem o "tempo-previsto" esta ficando curto pois tenho que Liberar o primeiro Lote para Envio do Cadastro da Empresa (Reg. tipo S-1000) para o final de Junho de 2018, e portanto, nao tenho muito tempo para esperar, por isso que estou meio Desesperado !!!

Att

Infornety
Roberto A. Caiuby

[email protected]

 

 

 

Link to comment
Share on other sites

  • Fundadores

Talvez você possa contratar alguns dos Freelancers do ACBr, para a criação  de uma DLL com essas características...

https://www.projetoacbr.com.br/forum/companies/category/2-consultores/

 

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 to comment
Share on other sites

  • 3 weeks later...
  • Consultores
3 minutos atrás, LUIZ SILVA DE MORAIS disse:

Srs. bom dia!

 

Como utilizar o ACBReSocial, como um xml já criado? Ex.: tenho um XML do evento S_1000 já criado, quero apenas assiná-lo e enviá-lo.

 

É possível?

Sim um loadfromfile e depois assinar e enviar. igual é feito com NF-e 

  • Like 1
Consultor SAC ACBr Juliomar Marchetti
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

Link to comment
Share on other sites

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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.