Jump to content

dev botao

Quando executa “ACBrReinf1.Consultar” de um número de protocolo do Reinf, como faço para pegar o caminho do XML do “sit” ou melhor o nome do arquivo que ele gerou?


cercris
Go to solution Solved by cercris,
  • Este tópico foi criado há 551 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Exemplo do nome de arquivo que é gerado:

“20230227160030-sit.xml”

O componente ACBrReinf1 gera esse nome automaticamente com Data/Hora.

Tem alguma propriedade que fica guardado esse nome de arquivo após a execução da Consulta?

Na versão de layout anterior a 2.01.01 que era de forma síncrona sempre retornava o nome de arquivo “Reinf-sit.xml” 

Eu consigo pegar o Numero do recibo, numero do protocolo, etc... e com isso eu atualizo meu Banco de Dados...

 

Só que eu quero pegar também o nome do arquivo XML que veio essas informações para que caso o usuário queira ver como realmente o XML foi retornado da Receita. Eu deixo um Label link para abrir esse XML.

 

Link to comment
Share on other sites

  • Membros Pro
  • Solution

Estou fazendo uma “alternativa” por enquanto aqui, até termos uma solução melhor.

Eu consigo pegar o texto do XML pela propriedade:

ACBrReinf1.WebServices.Consultar.RetWS;


Com isso, eu salvo o XML que veio da Consulta usando o componente TXMLDocument, que me ajuda a formatar o arquivo XML.

  if ACBrReinf1.Consultar( edt_infoRecEv_NProtocoloEntregaEvento.Field.AsString ) then
  begin
    
    s_CaminhoDoArqXML := IncludeTrailingPathDelimiter( ACBrReinf1.Configuracoes.Arquivos.PathSalvar ) + 'Reinf-sit.xml';
    
    XMLDocumentRecebido.Active := False;
    XMLDocumentRecebido.XML.Clear;
    XMLDocumentRecebido.LoadFromXML( ACBrReinf1.WebServices.Consultar.RetWS );
    XMLDocumentRecebido.Active := True;
    XMLDocumentRecebido.Version := '1.0';
    XMLDocumentRecebido.Encoding := 'UTF-8';
    XMLDocumentRecebido.SaveToFile( s_CaminhoDoArqXML );
    XMLDocumentRecebido.Active := False;
    XMLDocumentRecebido.XML.Clear;
    
    // Segue o jogo...
    
  end;

 

Link to comment
Share on other sites

  • Consultores

Boa noite,

Configurada consulta de protocolo para gerar os xmls considerando o número do protocolo como prefixo, conforme exemplos do envio e retorno a seguir:
2.202303.000000-ped-sit-soap.xml
2.202303.000000-sit-soap.xml

Configurada consulta de recibo para gerar os xmls considerando o "perApur(yyyy-mm) + TipoEvento", conforme exemplos do envio e retorno a seguir:
2023-02-R1000-con-soap.xml
2023-02-R1000-ped-con-soap.xml

Para validar...

  • Primeiro atualize seus fontes para ficar com a versão mais recente.
  • Com os fontes atualizados, substitua a unit anexa.
  • Reinstale os componentes e valide se está ok, conforme detalhes citados acima.

Estando tudo ok, favor reportar para que os consultores enviem o fonte para o SVN.
 

 

ACBrReinfWebServices.pas

  • Like 2
Link to comment
Share on other sites

  • 1 month later...
  • Consultores

Por favor atualize seus fontes, pelo SVN do ACBr... 

Já subimos para o nosso repositório de fontes, modificações que podem corrigir algum dos itens referentes a esse tópico...

Por favor atualize seus fontes, faça testes, e se possível comente em uma nova resposta, se o problema foi resolvido...

Dúvidas, sobre o uso do SVN ?  Clique aqui e veja um vídeo

Rev-28958

Link to comment
Share on other sites

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