Ir para conteúdo
  • Cadastre-se

dev botao

Salvar xml do evento após consulta


jcanjo
Ver Solução Respondido por Italo Giurizzato Junior,
  • Este tópico foi criado há 1557 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Duvida nas linha de comendo para salvar  XML de dacte autorizado e com eventos.

Só que o xml do procEventoCte não esta sendo salvo.

A Variável "aEvento" não visualizei em nenhuma linha anterior ao "while", por isso não entrada no loop para salvar xml de eventos.

"ACBrCTeWebServices"

                // Salva o XML de eventos retornados ao consultar um CT-e
                while aEvento <> '' do
                begin
                  Inicio := Pos('<procEventoCTe', aEventos);
                  Fim    := Pos('</procEventoCTe', aEventos) -1;

                  aEvento := Copy(aEventos, Inicio, Fim - Inicio + 1);

                  aEventos := Copy(aEventos, Fim + 16, Length(aEventos));

                  aProcEvento := '<procEventoCTe versao="' + FVersao + '" xmlns="' + ACBRCTE_NAMESPACE + '">' +
                                   SeparaDados(aEvento, 'procEventoCTe') +
                                 '</procEventoCTe>';

                  Inicio := Pos('Id=', aProcEvento) + 6;
                  Fim    := Inicio + 51;

                  aIDEvento := Copy(aProcEvento, Inicio, Fim);

                  if (aProcEvento <> '') then
                    FPDFeOwner.Gravar( aIDEvento + '-procEventoCTe.xml', aProcEvento, sPathCTe);
                end;
 

No código abaixo existe duplicidade de comando.

Apenas informação.

        case InfEvento.tpEvento of
          teCCe:
          begin
            SchemaEventoCTe := schevCCeCTe;
            infEvento.detEvento.xCondUso := FEvento.Evento.InfEvento.detEvento.xCondUso;
            infEvento.detEvento.xCondUso := FEvento.Evento.InfEvento.detEvento.xCondUso;
 

Caso esteja correto a linha de comando peço que feche o tópico. 

Link para o comentário
Compartilhar em outros sites

  • Consultores
  • Solution

Bom dia,

Favor atualizar os fontes e faça novos testes.

  • Curtir 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

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

2 horas atrás, Italo Jurisato Junior disse:

Bom dia,

Favor atualizar os fontes e faça novos testes.

Sobre o loop, ok.

Na hora de salvar ocorre erro.

"

'EventoCTe versao="3.00" xmlns="http:\//www.portalfiscal.in-procEventoCTe.xml'

'Erro ao salvar.'#$D#$A'Cannot create file "D:\Executavel\EventoCTe versao="3.00" xmlns="http:\www.portalfiscal.in-procEventoCTe.xml". A sintaxe do nome do arquivo, do nome do diretório ou do rótulo do volume está incorreta'

"

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde,

Favor anexar o XML retornado pela consulta para que eu possa verificar o que esta ocorrendo.

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

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • Consultores

Exato,

Mas como não tenho como debugar, vou pedir um favor a você.

Debugue as linhas abaixo:

                // Salva o XML de eventos retornados ao consultar um CT-e
                while aEventos <> '' do
                begin
                  Inicio := Pos('<procEventoCTe', aEventos);
                  Fim    := Pos('</procEventoCTe', aEventos) -1;

                  aEvento := Copy(aEventos, Inicio, Fim - Inicio + 1);

Quero saber o conteúdo da variável aEvento.

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

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

18 horas atrás, Italo Jurisato Junior disse:

Exato,

Mas como não tenho como debugar, vou pedir um favor a você.

Debugue as linhas abaixo:


                // Salva o XML de eventos retornados ao consultar um CT-e
                while aEventos <> '' do
                begin
                  Inicio := Pos('<procEventoCTe', aEventos);
                  Fim    := Pos('</procEventoCTe', aEventos) -1;

                  aEvento := Copy(aEventos, Inicio, Fim - Inicio + 1);

Quero saber o conteúdo da variável aEvento.

Segue os passos da variável "aEventos" 

Sobre Dedug do loop esta no final do arquivo.

aEventos.txt

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde,

Por favor faça um novo teste com a Unit em anexo.

ACBrCTeWebServices.pas

Se funcionar conforme o esperado o componente vai criar uma pasta especifica para cada tipo de evento que por ventura esteja vinculado ao CT-e consultado.

  • Curtir 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

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

19 horas atrás, Italo Jurisato Junior disse:

Boa tarde,

Por favor faça um novo teste com a Unit em anexo.

ACBrCTeWebServices.pas 122 kB · 1 download

Se funcionar conforme o esperado o componente vai criar uma pasta especifica para cada tipo de evento que por ventura esteja vinculado ao CT-e consultado.

Julio apareceu uma ocorrência aqui, mas em breve falo algo sobre teste.

Link para o comentário
Compartilhar em outros sites

20 horas atrás, Italo Jurisato Junior disse:

Boa tarde,

Por favor faça um novo teste com a Unit em anexo.

ACBrCTeWebServices.pas 122 kB · 1 download

Se funcionar conforme o esperado o componente vai criar uma pasta especifica para cada tipo de evento que por ventura esteja vinculado ao CT-e consultado.

Resposta.

Sobre a criações dos eventos individuais funcionou.

A criação da pasta esta pegando o path passado por parâmetro e criando a subpasta com a data.

Só que pega o cnpj do certificado. ( Teria algo errado ? )

Aqui separamos pelo cnpj da filial. 

Vai querer ver XMLS ?

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde,

Anexa somente um XML de evento que foi salvo, que ver se esta extraindo corretamente.

Vou analisar a questão do CNPJ.

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

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

Em 12/12/2019 at 17:16, Italo Jurisato Junior disse:

Boa tarde,

Por favor faça um novo teste com a Unit em anexo.

ACBrCTeWebServices.pas 122 kB · 2 downloads

Se funcionar conforme o esperado o componente vai criar uma pasta especifica para cada tipo de evento que por ventura esteja vinculado ao CT-e consultado.

Boa noite, Ítalo

Vimos que você commitou este arquivo aqui, ACBrCTeWebServices.pas, que foi anexado neste tópico na revisão 18495 do Trunk2, mas ficou faltando algo bem importante: na segunda chamada para o procedimento SalvarEventos, no else, não está sendo verificada a configuração do Arquivos.Salvar, gerando assim uma pasta "Docs" com o "-procEventoCTe.xml" a cada emissão, por mais que esteja tudo desabilitado no salvamento de arquivos.

Segue em anexo a sugestão de correção com o arquivo já atualizado para a revisão 18566.

Obs: o histórico no SVN da revisão 18495, "Removido de Uses as units não utilizadas.", nos confundiu para encontrar que atualização exatamente havia impactado no comportamento do programa.ACBrCTeWebServices.pas

  • Curtir 3
  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia a todos,

Favor atualizar os fontes e façam novos testes.

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

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

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