Ir para conteúdo
  • Cadastre-se

dev botao

Pegar O Nome Do Arquivo Gerado No Envio De Eventos (Cancelamento, Carta De Correção)


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

Recommended Posts

Ao mudar para o cancelamento em eventos aproveitei e incorporei a carta de correção eletrônica pelo sistema, mas estou tendo dificuldade em pegar o nome do arquivo completo do xml de evento gerado.

 

no sistema fiz assim :

//se o xml existe salva no registro do evento no banco ...
if (FilesExists(EventoRetorno.retEvento.Items[0].RetInfEvento.XML)) then
begin
  //esta função cola o arquivo no campo blob da tabela de evento da nota
  SalveParaCampoBlob(EventoRetorno.retEvento.Items[0].RetInfEvento.XML, 't_nf_evento', 'xml_evento', 'seq_evento=' + AChavePrimaria, D_Modulo.QrySQL);
end;

 

só que ele nunca salva, pesquisei na net e vi um uma informação que "RetInfEvento.XML" não é o caminho do arquivo salvo e sim a propria extrutura do xml de evento, bem isto estando correto onde pego o nome do arquivo gerado do evento assim como  o caminho da nota como no exemplo "ACBrNFe1.NotasFiscais.Items[0].NomeArq" quando autorizamos a nf-e?
 
Vi um exemplo assim aqui no fórum :
 
ACBrNFe1.Configuracoes.Arquivos.PathCan + '\' + 
ACBrNFe1.EventoNFe.Evento.Items[i].InfEvento.chNFe + 
ACBrNFe1.EventoNFe.Evento.Items[i].InfEvento.TipoEvento +
IntToStr(ACBrNFe1.EventoNFe.Evento.Items[i].InfEvento.nSeqEvento) +
'-procEventoNFe.xml';

Porém ao gerar um evento dentro da pasta configurada para evento existe um subpasta chamada cancelamento então nem é usado ACBrNFe1.Configuracoes.Arquivos.PathCan, para salvar as notas ... e as cartas de correções que nome da pasta é criada dentro da pasta de eventos ?

 
 
 
Link para o comentário
Compartilhar em outros sites

Prezado, sei que a informação abaixo não responde sua pergunta em si, mas pode ser útil para resolver seu problema:

 

  1. Realize o envio do evento de cancelamento normalmente
  2. Obtem o XML de retorno:
    var XML:string;
    begin
     XML := ACBRNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.XML;
    end;
    
  3. Com o xml em mãos, você armazena da forma que achar melhor, seja em arquivo,banco de dados e etc..
  4. Para obter o status você pode usar "ACBRNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat"

Vale lembrar que na nota técnica do cancelamento é pedido para armazenar o xml autorizando o cancelamento, o mesmo não pude confirmar para a carta de correção esta necessidade.

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

  • Este tópico foi criado há 3851 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.