Ir para conteúdo
  • Cadastre-se

dev botao

Web Service De Distribuição De Documentos Fiscais Eletrônicos


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

Recommended Posts

  • Consultores
Postado

Boa tarde Otairlaveso,

 

Muito obrigado, favor atualizar os fontes e testar novamente.

 

Post como anexo os arquivos de envio e de retorno (os que contem o soap no nome).

 

Desde já muito obrigado.

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

Postado (editado)

Boa tarde Emerson,

 

Faz um favor para mim, digite no seu navegador que contenha um certificado valido instalado a URL abaixo:

https://hom.nfe.fazenda.gov.br/NFeDistribuicaoDFe/NFeDistribuicaoDFe.asmx

 

Talvez seja necessário incluir no final: ?wsdl

 

Copie e cole em um bloco de notas e post como anexo para que eu possa analisar.

 

Ao assar a URL acima é para aparecer a estrutura do envelope, algo esta errado na montagem do mesmo ou o endereço do SoapAction esta errado.

Ola Italo

 

Segue o arquivo

 

Abraços

Distribuicao.txt

xml.txt

Editado por Emerson Teixeira
  • Consultores
Postado

Emerson,

 

Obrigado pelo retorno.

 

Comparei o XML de envio e o mesmo esta em conformidade tanto com a NT 2014/002 versão 1.01 quanto com o Schema.

 

O problema de consumir o Web Service me parece que foi resolvido, pois agora temos um retorno não de falha mas sim um retorno, apesar de constar a rejeição.

 

A rejeição indica que existe uma falha no XML, mas onde?

 

Como esse Web Service foi liberado esta semana, acredito que deva ter falhas.

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

Postado

Boa tarde,

 

Estou desenvolvendo e testando em homologação o módulo de Distribuição de Documentos Fiscais Eletrônicos, acho que estou esquecendo de algo por que esta sempre me retornando este erro:

 

WebService Distribuição de DFe:
- Inativo ou Inoperante tente novamente.
Erro na requisição enviada

The page requeries a valid SSL client certificado

 

Meu fonte é o seguinte:

 

   ACBrNFe1.EventoNFe.Evento.Clear;
   ACBrNFe1.Configuracoes.WebServices.Salvar := True;
   IniNFe := TIniFile.Create(Dm1.DataBase.DataPath + '\ConfigSE.ini');
     ACBrNFe1.Configuracoes.Certificados.NumeroSerie := IniNFe.ReadString('CERTIFICADO', 'SerieCertificado', ''); // Pegando o certificado

     if (DM1.vgbNFE = 'H') or (DM1.vgbNFE = 'P') then
        ACBrNFe1.Configuracoes.Geral.PathSchemas :=  Copy(DM1.AdsConnection1.ConnectPath,1,3)+'SE\NFE\NFe_Util\Schemas' //Diretório dos schemas
     else
        ACBrNFe1.Configuracoes.Geral.PathSchemas :=  Copy(DM1.AdsConnection1.ConnectPath,1,3)+'SE\Schemas';

  //   CNPJ := DM1.vgbCGCEmp;

     if DM1.vgbNFE = 'P' then // Testando ambiente
        ACBrNFe1.Configuracoes.WebServices.Ambiente := taProducao
     else
        ACBrNFe1.Configuracoes.WebServices.Ambiente := taHomologacao;

     ACBrNFe1.DistribuicaoDFe(31,'03341645000186','1','0');

  • Consultores
Postado

Boa tarde Fábio,

 

Esta errado a forma de usar o DistribuicaoDFe, o correto é:

 

ACBrNFe1.DistribuicaoDFe(31,'03341645000186','0','');

 

function DistribuicaoDFe(AcUFAutor: Integer;

                             ACNPJCPF,
                             AultNSU,
                             ANSU: String): Boolean;
 
O terceiro parâmetro se refere ao último NSU, por outro lado o quarto se refere a um NSU especifico.
 
Você tem que deixar um dos dois como sendo uma string vazia.
 
Outra coisa o certificado não esta vencido?
Lembre-se que o Web Service foi disponibilizado semana passada, portanto pode não estar funcionando 100% ainda.
  • Obrigado 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

Postado (editado)

Ítalo

 

Obrigado, o demo já tem esta opção como exemplo?

 

Atualizei os schemas no site da NFe e mesmo assim esta retornando este erro:

 

 

<retDistDFeInt versao="1.00">

   <tpAmb>2</tpAmb>

   <verAplic>1.0.0</verAplic>

   <cStat>215</cStat>

   <xMotivo>Rejeicao: Falha no esquema xml</xMotivo>

   <dhResp>2014-10-07T17:09:56.3487172</dhResp>

   <ultNSU>000000000000000</ultNSU>

   <maxNSU>000000000000000</maxNSU>

</retDistDFeInt>

 

Att.

Editado por Fábio Júnior
  • Consultores
Postado

Fábio,

 

O programa exemplo não tem um botão exemplificando essa funcionalidade, pelo simples fato dela ter sido liberada a poucos dias.

 

E como você pode ver ainda não esta 100%.

 

Outra coisa, todos os fontes de todas as pastas estão atualizados?

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

Postado (editado)

Prezados,

 

Acabei de realizar uma consulta a DF-e

 

ACBrNFe1.DistribuicaoDFe(FrmPrincipal.BuscarCodigoCidadeUF('',lcUFAutor),CNPJ, gcUltimoNSU, gcAtualNSU);

 

E aparentemente obtive sucesso conforme os arquivos anexos.

Porem a duvida é, neste caso os retornos foram sem documentos, e valores zerados para o ultimoNSU e também para o MaxNSU, o que indica se ao enviar uma nova consulta, o ultimo NSU, novamente será 0...

 

O questionamento é o seguinte, ao realizar a consulta a DistribuicaoDFe, existindo documento, o arquivo zipadoscom os documentos ficara disponivel na mesma pasta? Ou teremos que realizar as pesquisas como faziamos no manifesto, várias vezes, até o encontrasse ou não encontrasse mais documentos?

 

Em modo de produção esta apresentando erro, na chamada

 

unit ACBrNFeWebServices;

FRetornoWS := EnviarDadosWebService(FURL,SoapAction,Texto);

 

Erro, ocorre exatamente ao executar, a linha 366, de unit ACBrHTTPReqResp;

PosError := Pos('<TITLE>',UpperCase(Result))+7;

 

---------------------------
Debugger Exception Notification
---------------------------
Project NFE.exe raised exception class Exception with message 'Erro: Requisição não enviada.
The resource cannot be found.'. Process stopped. Use Step or Run to continue.
---------------------------
OK   Help  
---------------------------
 

 

Segue anexo os XML da consulta em homologação e produção.

 

Darlana Nogueira

20141009110857-dist-dfe.xml

20141009110851-con-dist-dfe.xml

20141009134300-con-dist-dfe.xml

20141009134300-con-dist-dfe-soap.xml

Editado por darlananogueira
  • Consultores
Postado

Boa tarde Darlana,

 

Como a consulta foi realizada em ambiente de homologação é de se esperar esse tipo de resultado.

 

Estava previsto a liberação do ambiente de produção para o dia 06/10/2014 que por sinal ainda não ocorreu.

 

Acredito que em virtude também do atraso na liberação do ambiente de homologação.

 

Espero que semana vem já esteja liberado e assim seja possível efetuar essa consulta no ambiente de produção, onde com certeza vai constar NF-e e eventos para serem retornados.

 

Volto a frisar que um dos dois últimos parâmetros tem que ser uma string vazia.

 

ACBrNFe1.DistribuicaoDFe(FrmPrincipal.BuscarCodigoCidadeUF('',lcUFAutor),CNPJ, gcUltimoNSU, gcAtualNSU);

 

gcUltimoNSU diferente de vazio faz a consulta com base no último NSU (algom semelhante a Consulta de NFe Destinadas)

gcAtualNSU diferente de vazio consulta se existe nota referente ao NSU informado.

 

Nota Técnica 2014/002 versão 1.01 - página 5 temos:

 

ultNSUÚltimo NSU recebido pelo ator (destinatário por exemplo).

 
Caso seja informado com zero, ou com um NSU muito antigo, a consulta retornará unicamente as informações resumidas e documentos fiscais eletrônicos que tenham sido recepcionados pelo Ambiente Nacional nos últimos 3 meses.
 
NSU - Número Sequencial Único.
 
Geralmente esta consulta será utilizada quando identificado pelo interessado um NSU faltante. O Web Service retornará o documento ou informará que o NSU não existe no Ambiente Nacional. Assim, esta consulta fechará a lacuna do NSU identificado como faltante.
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

Postado
Quando será que a produção seja online?
 
Eu só recebem esta resposta:
 
<tpAmb>2</tpAmb>
<verAplic>1.0.0</verAplic>
<cStat>137</cStat>
<xMotivo>Nenhum documento localizado para o destinatario</xMotivo>
<dhResp>2014-10-10T00:23:31.8139642</dhResp>
<ultNSU>000000000000000</ultNSU>
<maxNSU>000000000000000</maxNSU>
</retDistDFeInt>
  • Membros Pro
Postado

Boa Tarde !

 

  Estou realizando testes com ACBrNFe1.DistribuicaoDFe.

  Segue em anexo o XML retornado com NF Encontrada - cStat = 138.

  Porém, ao ler as informações da chave (ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.resNFe.chNFe) a mesma está em branco.

  Pelo que observei, não está entrando no ponto abaixo do pcnRetDistDFeInt

 

       if (Leitor.rExtrai(3, 'resNFe') <> '') then
        begin
          FdocZip.Items.FresNFe.chNFe    := Leitor.rCampo(tcStr, 'chNFe');
          FdocZip.Items.FresNFe.FCNPJCPF := Leitor.rCampo(tcStr, 'CNPJ');
 
          if FdocZip.Items.FresNFe.FCNPJCPF = '' then
            FdocZip.Items.FresNFe.FCNPJCPF := Leitor.rCampo(tcStr, 'CPF');
 
          FdocZip.Items.FresNFe.FxNome    := Leitor.rCampo(tcStr, 'xNome');
          FdocZip.Items.FresNFe.FIE       := Leitor.rCampo(tcStr, 'IE');
          FdocZip.Items.FresNFe.FdhEmi    := Leitor.rCampo(tcDatHor, 'dhEmi');
          FdocZip.Items.FresNFe.FtpNF     := StrToTpNF(ok, Leitor.rCampo(tcStr, 'tpNF'));
          FdocZip.Items.FresNFe.FvNF      := Leitor.rCampo(tcDe2, 'vNF');
          FdocZip.Items.FresNFe.FdigVal   := Leitor.rCampo(tcStr, 'digVal');
          FdocZip.Items.FresNFe.FdhRecbto := Leitor.rCampo(tcDatHor, 'dhRecbto');
          FdocZip.Items.FresNFe.FnProt    := Leitor.rCampo(tcStr, 'nProt');
          FdocZip.Items.FresNFe.FcSitNFe  := StrToSituacaoNFe(ok, Leitor.rCampo(tcStr, 'cSitNFe'));
        end;
 
Att
 
Leandro Vignoto

Retorno WS.xml

  • Moderadores
Postado

Boa Tarde !

 

  Estou realizando testes com ACBrNFe1.DistribuicaoDFe.

  Segue em anexo o XML retornado com NF Encontrada - cStat = 138.

  Porém, ao ler as informações da chave (ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.resNFe.chNFe) a mesma está em branco.

  Pelo que observei, não está entrando no ponto abaixo do pcnRetDistDFeInt

 

       if (Leitor.rExtrai(3, 'resNFe') <> '') then

        begin

          FdocZip.Items.FresNFe.chNFe    := Leitor.rCampo(tcStr, 'chNFe');

          FdocZip.Items.FresNFe.FCNPJCPF := Leitor.rCampo(tcStr, 'CNPJ');

 

          if FdocZip.Items.FresNFe.FCNPJCPF = '' then

            FdocZip.Items.FresNFe.FCNPJCPF := Leitor.rCampo(tcStr, 'CPF');

 

          FdocZip.Items.FresNFe.FxNome    := Leitor.rCampo(tcStr, 'xNome');

          FdocZip.Items.FresNFe.FIE       := Leitor.rCampo(tcStr, 'IE');

          FdocZip.Items.FresNFe.FdhEmi    := Leitor.rCampo(tcDatHor, 'dhEmi');

          FdocZip.Items.FresNFe.FtpNF     := StrToTpNF(ok, Leitor.rCampo(tcStr, 'tpNF'));

          FdocZip.Items.FresNFe.FvNF      := Leitor.rCampo(tcDe2, 'vNF');

          FdocZip.Items.FresNFe.FdigVal   := Leitor.rCampo(tcStr, 'digVal');

          FdocZip.Items.FresNFe.FdhRecbto := Leitor.rCampo(tcDatHor, 'dhRecbto');

          FdocZip.Items.FresNFe.FnProt    := Leitor.rCampo(tcStr, 'nProt');

          FdocZip.Items.FresNFe.FcSitNFe  := StrToSituacaoNFe(ok, Leitor.rCampo(tcStr, 'cSitNFe'));

        end;

 

Att

 

Leandro Vignoto

A resposta está vindo compactada e ainda não foi feito nenhum tratamento para descompactar e transformar em propriedades do componente. Aguardamos colaborações.
djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Postado

Italo,

 

o erro permanece. Mesmo no ambiente de produção.

 

---------------------------
Debugger Exception Notification
---------------------------
Project NFE.exe raised exception class EACBrNFeException with message 'WebService Distribuição de DFe:
- Inativo ou Inoperante tente novamente.
- Erro: Requisição não enviada.
The resource cannot be found.'. Process stopped. Use Step or Run to continue.
---------------------------
OK   Help  
---------------------------
 

Enviando os XML também.

20141013114901-con-dist-dfe.xml

20141013114901-con-dist-dfe-soap.xml

  • Este tópico foi criado há 3582 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.