Jump to content
Notícias do ACBr

click.png

click.png

click.png

click.png

click.png

click.png

logo_acbr_paygo.png

TEF ACBr PayGo
Seja um revendedor e ofereça uma solução completa para seu cliente.


Saiba mais

beneficios.png

click.png

click.png

click.png

Médoto : DistribuicaoDFe Erro : Falha no Arquivo XML


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

Recommended Posts

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));

 

Link to comment
Share on other sites

  • Consultores

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 / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Link to comment
Share on other sites

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