Ir para conteúdo
  • Cadastre-se

Consulta de NFe não está atualizando


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

Recommended Posts

  • Membro Pro Verificado
Postado

Olá pessoal

Apesar de encontrar vários tópicos sobre o assunto, não tive sucesso algum. Por isso venho através deste pedir ajuda aos mais experientes e entendidos sobre o assunto.

Pessoal, meu problema é o seguinte: a casos que enviamos uma NFe e a mesma retorna erro com o servidor, quando vou tentar novamente, recebo o retorno de duplicidade de NFe. Pesquisando aqui no fórum, vi que basta carregar o componente com o XML que foi salva e assinada e depois mandar consultar a mesma. Porem, se eu mando carregar o XML com esse comando: dmdados.ACBrNFe1.Consultar; da esse erro: Erro1.jpg.09a89ed4176e68e8e1b4f4a2ea63217f.jpg

se eu uso esse comando: dmdados.ACBrNFe1.Consultar(vChave); ou seja, passando a chave do XML, a consulta é feita com sucesso e recebo o retorno cStat = 100, falando que a consulta foi feita com sucesso. Porem, o XML não atualiza, e se mando imprimir não faz nada e se manda salvar o XML da esse erro: Erro2.jpg.d83c4ee972358c305baad1a64299f04e.jpg

 

Segue o Código que estou usando:

    dmdados.ACBrNFe1.NotasFiscais.Clear;
    dmdados.ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName);
    dmdados.ACBrNFe1.Consultar(vChave);
    ShowMessage(dmdados.ACBrNFe1.WebServices.Consulta.Protocolo);
    dmdados.ACBrNFe1.NotasFiscais.Items[0].GravarXML;
    dmdados.ACBrNFe1.NotasFiscais.Imprimir;

Se alguém puder me ajudar ficarei muito grato.

  • Consultores
Postado

pega o xml gerado e o xml que está no sefaz consultando!

quase certeza que a data e hora você não está gravando no banco ou está com diferença.

  • Curtir 1

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Membro Pro Verificado
Postado

Boa noite Juliomar, Obrigado pelo retorno!

acredito que não seja esse o problema. Pois, mesmo usando um xml autorizado pela sefaz apresenta as mesmas mensagens de erro. Ou sera que estou falando besteira? chequei a verificar data e hora e ambas estão iguais

  • Consultores
  • Solution
Postado

anexe os dois

mas levem em consideração então estar alimentando errado o campo data / hora e gerando a assinatura

esse é com certeza o problema.

  • Curtir 1

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Membro Pro Verificado
Postado

Boa noite Juliomar

Valente, você tinha toda razão. Realmente era problema de data e hora. Problema resolvido, graças a sua grande ajuda.

Meu muito obrigado e felicidades para você.

  • Curtir 2
  • Consultores
Postado

tente usar o exemplo do svn e fazer o mesmo teste!

eu acho que tu está assinando e re-assinando novamente o arquivo.

  • Curtir 1

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Membro Pro Verificado
Postado

Bom dia!

Juliomar, a sequência de código que estou usando é essa:

 

Gerar e assinar XML

      if dmdados.GerarNFe(tbl_saidasSAI_ID.AsInteger, false, false) then
      begin
        // comandos para gerar arquivo XML
        dmdados.ACBrNFe1.NotasFiscais.Assinar;
        dmdados.ACBrNFe1.NotasFiscais.Items[0].GravarXML();
        sArquivoXML := dmdados.ACBrNFe1.NotasFiscais.Items[0].NomeArq;
        if sArquivoXML <> '' then
          sGerado := true;
        // grava o arquivo XML
        try
          if dmdados.Dados_Pedido(ds_saidas.DataSet.FieldByName('SAI_ID').AsInteger)then
          begin
            dmdados.GravaArquivoXML(Copy(dmdados.ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID,
              4,Length(dmdados.ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID)),
            UTF8Encode(dmdados.ACBrNFe1.NotasFiscais.Items[0].xml),
            dmdados.tbl_saidas.FieldByName('NUMERO_DOC').AsString);
          end;
        finally
          dmdados.tbl_saidas.Close;
        end; 

Validar e Enviar XML

      // executa validação do arquivo
      dmdados.ACBrNFe1.NotasFiscais.Validar;
      ErroValidacao := false;
      // enviar ao portal
      dmdados.ACBrNFe1.Enviar(EdtNumLote.Text, false, true);
      //
      aChaveNfe := dmdados.ACBrNFe1.NotasFiscais[0].NFe.procNFe.chNFe;
      aProcolo  := dmdados.ACBrNFe1.NotasFiscais[0].NFe.procNFe.nProt;
      // grava chave NFe
      if aChaveNfe <> '' then
      begin
        if dmdados.Dados_Pedido(ds_saidas.DataSet.FieldByName('SAI_ID').AsInteger)then
        begin
          dmdados.GravaChaveNFEPedido(aChaveNfe, aProcolo, aRecibo,
            EdtNumLote.Text, dmdados.tbl_configFORMA_EMISSAO.AsInteger);
          // salva com protocolo de autorização
          dmdados.GravaArquivoXML(aChaveNfe, UTF8Encode(dmdados.ACBrNFe1.NotasFiscais.Items[0].xml),
            dmdados.tbl_saidas.FieldByName('NUMERO_DOC').AsString);
          //
          sArquivoXML := '';
          FechaMensagem;
          ShowMessage('NFe Enviada com sucesso:' + #13 + #10 + 'Chave: ' + aChaveNfe
            + #13 + #10 + 'Protocolo: ' + aProcolo);

Fazer Consulta da NFe pelo XML

      dmdados.ACBrNFe1.Consultar(vChave);
      if dmdados.ACBrNFe1.WebServices.Consulta.cStat = 100 then
      begin
        dmdados.ACBrNFe1.NotasFiscais[0].GravarXML;
        // grava o arquivo XML
        try
          if dmdados.Dados_Pedido(ds_saidas.DataSet.FieldByName('SAI_ID').AsInteger)then
          begin
            dmdados.GravaArquivoXML(Copy(dmdados.ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID,
              4,Length(dmdados.ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID)),
            UTF8Encode(dmdados.ACBrNFe1.NotasFiscais.Items[0].xml),
            dmdados.tbl_saidas.FieldByName('NUMERO_DOC').AsString);
          end;
        finally
          dmdados.tbl_saidas.Close;
        end;

Eu já olhei os exemplos do SVN, aparentemente estou seguindo a mesma linha de raciocínio. 

  • Consultores
Postado

Sugestão:

faz igual está no projeto do monitor veja o arquivo DoACBrNFeUnit.pas na linha 585 pra frente!

sem separar as situações.

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

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

The popup will be closed in 10 segundos...