Jump to content

dev botao

Apensas assinar o evento (S-2220)


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

Recommended Posts

Bom dia Colegas!

É possível apenas assinarmos o XML e não fazer o envio?

Explico: No evento ACBreSocial.AssinarEventos, assim que o mesmo é assinado é feito também o envio. Acontece que estou desenvolvendo uma rotina onde será gerado vários XMLs e assinados, para depois serem enviados e o que acontece, durante o processo de geração se ocorre erro de validação em um dos XMLs o processo para naquele ponto.

[ ]'s,

Hélio

Link to comment
Share on other sites

Boa tarde, aqui a gente gera/assina evento por evento. A gente chama a função GerarXML para cada evento que estamos gerando...

Exemplo:

evtInfoEmpregador.GerarXML; (S-1000)

evtTabEstab.GerarXML; (S-1005)

EvtTabRubrica.GerarXML; (S-1010)

EvtAdmissao.GerarXML; (S-2200)

Essa função retorna um boolean que indica se foi gerado/assinado corretamente ou não.

Além disso, a gente coloca o GerarXML em um try/except, pois quando há problema de validação de schema, o componente dispara uma exceção, e dessa forma conseguimos pegar a exceção e saber exatamente de qual evento ela veio.

E na hora de enviar chamamos apenas o método: ACBreSocial.Enviar(Grupo);

  • Like 1
Link to comment
Share on other sites

Boa tarde Paulo!

Eu não utilizo o componente (ACBreSocial) para a geração do XML, apenas para assinar o XML já gerado anteriormente. Com relação ao try/except também faço uso, porém quando ocorre qualquer erro o processo para naquele ponto.... exemplo, seleciono 100 ASOs para gerar o eSocial e digamos que no segundo dê algum erro... pronto, o XML dos demais 98 não são gerados.

ACBreSocial.Eventos.LoadFromFile(W_XML);
      try
         ACBreSocial.AssinarEventos;
      except
         on e : Exception do begin
            raise Exception.Create('Classe: ' + e.ClassName + ' Erro: ' + e.Message);
         end;
      end;

Edited by hpensador
Link to comment
Share on other sites

  • Consultores

Boa tarde hpensador,

O código do botão [Carregar XML] que se encontra no programa exemplo do componente, permite carregar o XML gerado pela sua aplicação, assinar e validar.

Desta forma é possível criar um loop para carregar cada um dos XMLs.

Depois de todos carregados, assinados e validados, você envia.

Estude o programa exemplo.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link to comment
Share on other sites

  • Consultores

José,

Como você é do SAC movi a sua postagem para dentro da área do SAC e já respondi ela.

Por favor, vamos seguir as regras do fórum, nesta postagem estamos tratando de outro assunto.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link to comment
Share on other sites

1 hora atrás, Italo Jurisato Junior disse:

Bom dia,

Após alterar a configuração, você clicou no botão salvar a configuração?

 

Ok, realmente depois é que observei que não havia modificado a versão para 2.4.02.
Obrigado!

Agora vou depurar o exemplo e ver como é que faço para apenas assinar o XML.

Link to comment
Share on other sites

  • Consultores

O componente após carregar o XML checa se o mesmo esta assinado ou não, se não estiver assina, em seguida realiza a sua validação.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link to comment
Share on other sites

2 minutos atrás, Italo Jurisato Junior disse:

O componente após carregar o XML checa se o mesmo esta assinado ou não, se não estiver assina, em seguida realiza a sua validação.

Agora foi.. mais uma vez muito obrigado!
Justamente isto, observei no exemplo que ele apenas faz o LoadFromFile e eu estava além de fazer o LoadFromFile executando o metodo ACBreSocial.AssinarEventos e este sim faz o envio.

  • Like 2
Link to comment
Share on other sites

  • Este tópico foi criado há 2237 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Guest
This topic is now closed to further replies.
×
×
  • 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.

The popup will be closed in 10 seconds...