Jump to content

dev botao

Médoto : DistribuicaoDFe Erro : Falha no Arquivo XML


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

Recommended Posts

Posted

Prezados Companheiros

Boa Tarde

Estou ajustando uma rotina que desenvolvi há alguns anos , cuja finalidade é Consulta de Notas Fiscais Destinadas, para utilizar o método : DistribuicaoDFe.

Para tanto desenvolvi o código-fonte que posto abaixo.

Fiz atualização do ambiente os os Schemas Xml que o Acbr distribui.

E, mesmo assim, quando executo DistribuicaoDFe o único resultado é o erro "FALHA NO SCHEMA XML".

Sabem os companheiros onde posso estar errando ?

Grato

CÓDIGO-FONTE:
  stUltNSU := Trimm(qryUltimaConsulta.FieldByName('ULTIMONSU').AsString);
  if trim(stUltNSU) then
    stUltNSU := '0';
  dmdModAcbrNFe.acbrNota.NotasFiscais.Clear;

  repeat
    // pesquiso na sefaz
    boConsultaComExito := False;
    try
      dmdModAcbrNFe.acbrNota.DistribuicaoDFe(RetornaUF(qryEmpresa.FieldByName('CODESTADO').AsString),
                                    stCNPJEmpresa,
                                    stUltNSU, '' );
      boConsultaComExito := True;
    except on e : exception do
      stMsgErro := 'ATENÇÃO !'                                    + #13 + #13 +
                   'A SEFAZ recebeu o pedido de Consulta '        + #13 + #13 +
                   'Mas retornou a seguinte mensagem de erro : '  + #13 + #13 + '  ' + Trim(e.message);
      showmessage(stMsgErro);
    end;

    if (boConsultaComExito) then
      begin
        inQtdDoc := dmdModAcbrNFe.acbrNota.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Count - 1;
        for inInc := 0 to inQtdDoc do
          begin
            if (dmdModAcbrNFe.acbrNota.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[inInc].resNFe.chNFe <> '') then
              begin
                  // cnpj
                  stCnpj := dmdModAcbrNFe.acbrNota.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[inInc].resNFe.CNPJCPF;
                  // razão social
                  stRazaoSocial       := AnsiUpperCase(dmdModAcbrNFe.acbrNota.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[inInc].resNFe.xNome);
                  // inscrição estadual
                  stInscricaoEstadual := dmdModAcbrNFe.acbrNota.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[inInc].resNFe.IE;
                  // data da emissão
                  dtDataEmissao       := dmdModAcbrNFe.acbrNota.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[inInc].resNFe.dhEmi
                  // entrada ou saída
                  case dmdModAcbrNFe.acbrNota.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[inInc].resNFe.tpNF of
                    tnEntrada: stTipoNfe := '0';  // entrada
                    tnSaida:   stTipoNfe := '1';  // saida
                  end;
                  // valor total da nota fiscal
                  cyValorNota         := dmdModAcbrNFe.acbrNota.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[inInc].resNFe.vNF;
                  // data da autorização
                  dtDataAutoriza := dmdModAcbrNFe.acbrNota.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[inInc].resNFe.dhRecbto
              end;
          end;
          stUltNSU_ConsultaAtual := dmdModAcbrNFe.acbrNota.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU;;

          stExisteMaisProcessamento := '';
          if dmdModAcbrNFe.acbrNota.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 137  then
            stExisteMaisProcessamento := 'N'
          else
            stExisteMaisProcessamento := 'S';

      end;
  until ((inNroPesquisa < spnMaximoConsultas.Value) and (stExisteMaisProcessamento = 'S') and (boConsultaComExito));

 

  • Consultores
Posted

Boa tarde Carlos,

Primeiramente peço que não poste código como parte do texto da postagem a não ser que seja meia dúzia de linhas, caso contrario coloque em um arquivo texto e anexa a postagem.

Segundo, favor anexar os arquivos soap tanto do envio quando do retorno para que possamos analisar.

  • Like 1
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

  • Solution
Posted

Sr. Italo

Nós fizemos nova atualização do ACbr.

Desinstalamos a versão que estávamos utilizando ( de final de Julho/2018 ) e instalamos a disponível semana passada e o problema foi resolvido.

Obrigado por sua atenção.

 

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