Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 2377 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Pessoal como proceder em caso de mensagem de duplicidade na NFCe estou executando os seguintes comandos.

                 ACBrNFE1.WebServices.Consulta.NFeChave := ACBrNFe1.WebServices.Retorno.NFeRetorno.ProtNFe.Items[0].chNFe;
                 ACBrNFE1.WebServices.Consulta.Executar;
                 ACBrNFe1.Consultar(ACBrNFe1.WebServices.Retorno.NFeRetorno.ProtNFe.Items[0].chNFe);

Mas o retorno continua sendo ACBrNFe1.WebServices.Retorno.CStat = 204.

Tem alguma maneira de consultar para obter o retorno 100

  • Membros Pro
Postado
Em 21/05/2016 at 14:00, gralak disse:

Pessoal como proceder em caso de mensagem de duplicidade na NFCe estou executando os seguintes comandos.

                 ACBrNFE1.WebServices.Consulta.NFeChave := ACBrNFe1.WebServices.Retorno.NFeRetorno.ProtNFe.Items[0].chNFe;
                 ACBrNFE1.WebServices.Consulta.Executar;
                 ACBrNFe1.Consultar(ACBrNFe1.WebServices.Retorno.NFeRetorno.ProtNFe.Items[0].chNFe);

Mas o retorno continua sendo ACBrNFe1.WebServices.Retorno.CStat = 204.

Tem alguma maneira de consultar para obter o retorno 100

boa noite Gralak, como você bem sabe esse retorno significa: 204|Duplicidade de NF-e [nRec:999999999999999] pelo que eu estou entendendo voce está querendo ver se a mesma esta com o retorno: 100|Autorizado o uso da NF-e aconselho você primeiramente atualizar os arquivos de schema. e testar pelo demo do acbr para dai analisarmos juntos o problema.

  • Curtir 2
Postado (editado)

Bom dia pessoal o problema e exatamente esse mesmo poder pegar os dados da notas que já esta no sefaz por isso executei os comandos a baixo 

                ACBrNFE1.WebServices.Consulta.NFeChave := ACBrNFe1.WebServices.Retorno.NFeRetorno.ProtNFe.Items[0].chNFe;
                 ACBrNFE1.WebServices.Consulta.Executar;
                 ACBrNFe1.Consultar(ACBrNFe1.WebServices.Retorno.NFeRetorno.ProtNFe.Items[0].chNFe);

mas após esse comando o Cstat ainda permanece como 204. Como fazer para obter o Cstat = 100 ? 

Tem algum comando para isso e qual é se houver ?

Editado por gralak
  • Membros Pro
Postado
4 horas atrás, gralak disse:

Bom dia pessoal o problema e exatamente esse mesmo poder pegar os dados da notas que já esta no sefaz por isso executei os comandos a baixo 

                ACBrNFE1.WebServices.Consulta.NFeChave := ACBrNFe1.WebServices.Retorno.NFeRetorno.ProtNFe.Items[0].chNFe;
                 ACBrNFE1.WebServices.Consulta.Executar;
                 ACBrNFe1.Consultar(ACBrNFe1.WebServices.Retorno.NFeRetorno.ProtNFe.Items[0].chNFe);

mas após esse comando o Cstat ainda permanece como 204. Como fazer para obter o Cstat = 100 ? 

Tem algum comando para isso e qual é se houver ?

Bom dia Gralak,

Passa a chave da NFCe, ou anexa ao tópico o xml para que possamos verificar.

  • Curtir 2
  • Membros Pro
Postado
21 horas atrás, gralak disse:

Boa noite o teste e feito forçando uma duplicidade para obter o resultado. Qualquer chave poderá ser utilizada

Boa tarde Gralak.

Para você obter o resultador correto você pode usar a consulta da NFCe pela chave para ver cStatus e assim você poderá obter o resultado: 100-Autorizado o uso da NF-e
ou 150-Autorizado o uso da NF-e, autorização fora de prazo. Lembrando que esse resultado só será satisfatório caso o NFCe esteja autorizado o uso. 

Fiz um teste pelo próprio exemplo acbr e veja o resultado a baixo. Seria bom você explorar o exemplo que tem varias funcionalidades e possa resolver o teu problema

anexe o arquivo

  • Curtir 2
Postado

Bom dia Pessoal fiz os testes com o exemplo e tentei implementar da mesma maneira porém recebo a mensagem de erro 

access violation ... 

quando faço a consulta com o seguinte trecho de comando.

 

      if ACBrNFe1.WebServices.Retorno.CStat = 204 then
      begin

         if MessageDlg(IntToStr(ACBrNFe1.WebServices.Retorno.CStat)+'-'+ACBrNFe1.WebServices.Retorno.XMotivo+chr(13)+'Consultar Chave de Acesso ?',mtConfirmation,[mbyes,mbno],0) = mryes then
         begin
           vChave := ACBrNFe1.WebServices.Retorno.NFeRetorno.ProtNFe.Items[0].chNFe;

           ACBrNFE1.WebServices.Consulta.NFeChave := vChave;
           ACBrNFE1.WebServices.Consulta.Executar;

         end
         else
         begin
            exit;
         end;
      end

 

 

Alguém pode ajudar ?

Postado

Boa Noite...

 

Deduzo que se retorna duplicidade, estão tentando retransmitir uma NFC-e em contingência...

No meu sistema, estou no estado do Pará, para contingência, fiz desta forma:

Na tabela da NFC-e, coloquei dois campos: NFCe_ChaveAcesso e NFCe_ChaveAcessoOriginal.

Quando gero o XML na hora da venda, gravo a chave de acesso nos dois campos, sendo que esta chave é a para transmissão normal...

Em caso de falha, mudo o componente para contingência, e gravo a nova chave somente no campo NFCe_ChaveAcesso, faço a impressão do NFCe normalmente e o cliete leva a nota em contingência. O campo NFCe_ChaveAcessoOriginal fica sempre com a chave original.

Quando vou transmitir as NFCes em contingência, faço os seguintes testes para evitar problemas:

  1. Consulto a NFCe emitida em contingência, que está com a chave no Campo NFCe_ChaveAcesso.
  2. Em todos os testes que realizei, sempre obtive um destes 03 retornos:
  3. CSTAT 217 ( Rejeição: NF-e não consta na base de dados da SEFAZ ) - Neste caso, a NFCe em contingência não foi transmitida. Antes de tentar a transmissão da NFC em contingência, consulto a chave NFCe_ChaveAcessoOriginal, se esta consulta retornar CSTAT 100, a NFCe foi aprovada na tentativa de transmissão original, gravo então as informações no banco de dados e finalizo o processo, caso retorne CSTAT 217, faço a transmissão da NFCe em contingência.
  4. CSTAT 216 ( Rejeição: Chave de Acesso difere da cadastrada ) - Neste caso, a NFCe foi transmitida com a chave original porém, não obtive o retorno adequado do WebService, sendo assim, faço a consulta da NFCe pela chave original gravada no campo NFCe_ChaveAcessoOriginal. Esta consulta sempre retorna CSTAT = 100, gravo as informações necessárias no banco e, faço a impressão normalmente caso necessário.
  5. CSTAT 613 ( Rejeição: Chave de Acesso difere da existente em BD ) - Mesma situação do item 4.

Sempre utilizo ACBrNFe1.Consultar, ele retorna o CSTAT correto da NFCe, faço assim: (fiz essa rotina especificamente para este post. Utilize como achar melhor.)

******************************************************************************************************************************************************

Virtual_Principal.ACBrNFe1.Configuracoes.Geral.ModeloDF := moNFCe;
Virtual_Principal.ACBrNFe1.Configuracoes.Geral.VersaoDF := ve310;
Virtual_Principal.ACBrNFe1.NotasFiscais.Clear;
  Virtual_Principal.ACBrNFe1.NotasFiscais.LoadFromFile(Virtual_Principal.ACBrNFe1.Configuracoes.Arquivos.PathSalvar+'\NFe\'+NFCe.FieldByName('NFCe_ChaveAcesso').AsString+'-NFe.xml',False);

   If  Virtual_Principal.ACBrNFe1.Consultar Then Begin
      if Virtual_Principal.ACBrNFe1.WebServices.Consulta.cStat = 100 then Begin
         MessageDlgDef('CStat: ' + IntToStr(Virtual_Principal.ACBrNFe1.WebServices.Consulta.cStat) + '  -  ' +Virtual_Principal.ACBrNFe1.WebServices.Consulta.xMotivo,mtinformation,[mbok], mrOk,0);
         Virtual_Principal.ACBrNFe1.NotasFiscais.Clear;
         Exit;
      End;
   End;

******************************************************************************************************************************************************

Espero que tenha contribuído...

  • Curtir 1

VANDERLEI MATTE

INFOMATTE Sistemas e Consultoria

Distrito de Castelo de Sonhos - Altamira / PA

Whattzap: (66) 99695-4979

email: vanderleim[email protected]

  • Membros Pro
Postado
12 horas atrás, infomatte disse:

Boa Noite...

 

Deduzo que se retorna duplicidade, estão tentando retransmitir uma NFC-e em contingência...

No meu sistema, estou no estado do Pará, para contingência, fiz desta forma:

Na tabela da NFC-e, coloquei dois campos: NFCe_ChaveAcesso e NFCe_ChaveAcessoOriginal.

Quando gero o XML na hora da venda, gravo a chave de acesso nos dois campos, sendo que esta chave é a para transmissão normal...

Em caso de falha, mudo o componente para contingência, e gravo a nova chave somente no campo NFCe_ChaveAcesso, faço a impressão do NFCe normalmente e o cliete leva a nota em contingência. O campo NFCe_ChaveAcessoOriginal fica sempre com a chave original.

Quando vou transmitir as NFCes em contingência, faço os seguintes testes para evitar problemas:

  1. Consulto a NFCe emitida em contingência, que está com a chave no Campo NFCe_ChaveAcesso.
  2. Em todos os testes que realizei, sempre obtive um destes 03 retornos:
  3. CSTAT 217 ( Rejeição: NF-e não consta na base de dados da SEFAZ ) - Neste caso, a NFCe em contingência não foi transmitida. Antes de tentar a transmissão da NFC em contingência, consulto a chave NFCe_ChaveAcessoOriginal, se esta consulta retornar CSTAT 100, a NFCe foi aprovada na tentativa de transmissão original, gravo então as informações no banco de dados e finalizo o processo, caso retorne CSTAT 217, faço a transmissão da NFCe em contingência.
  4. CSTAT 216 ( Rejeição: Chave de Acesso difere da cadastrada ) - Neste caso, a NFCe foi transmitida com a chave original porém, não obtive o retorno adequado do WebService, sendo assim, faço a consulta da NFCe pela chave original gravada no campo NFCe_ChaveAcessoOriginal. Esta consulta sempre retorna CSTAT = 100, gravo as informações necessárias no banco e, faço a impressão normalmente caso necessário.
  5. CSTAT 613 ( Rejeição: Chave de Acesso difere da existente em BD ) - Mesma situação do item 4.

Sempre utilizo ACBrNFe1.Consultar, ele retorna o CSTAT correto da NFCe, faço assim: (fiz essa rotina especificamente para este post. Utilize como achar melhor.)

******************************************************************************************************************************************************

Virtual_Principal.ACBrNFe1.Configuracoes.Geral.ModeloDF := moNFCe;
Virtual_Principal.ACBrNFe1.Configuracoes.Geral.VersaoDF := ve310;
Virtual_Principal.ACBrNFe1.NotasFiscais.Clear;
  Virtual_Principal.ACBrNFe1.NotasFiscais.LoadFromFile(Virtual_Principal.ACBrNFe1.Configuracoes.Arquivos.PathSalvar+'\NFe\'+NFCe.FieldByName('NFCe_ChaveAcesso').AsString+'-NFe.xml',False);

   If  Virtual_Principal.ACBrNFe1.Consultar Then Begin
      if Virtual_Principal.ACBrNFe1.WebServices.Consulta.cStat = 100 then Begin
         MessageDlgDef('CStat: ' + IntToStr(Virtual_Principal.ACBrNFe1.WebServices.Consulta.cStat) + '  -  ' +Virtual_Principal.ACBrNFe1.WebServices.Consulta.xMotivo,mtinformation,[mbok], mrOk,0);
         Virtual_Principal.ACBrNFe1.NotasFiscais.Clear;
         Exit;
      End;
   End;

******************************************************************************************************************************************************

Espero que tenha contribuído...

Bom dia Infomatt,

Seria bom você verificar também o retorno Cstat = 150, pois corresponde a  "150|Autorizado o uso da NF-e, autorização fora de prazo";

VALEU!!!

Em 30/05/2016 at 09:08, gralak disse:

O mesmo erro acontece ao tentar enviar uma nota sem conexão com a Internet. 

Sem título.png

Bom dia,

Cara isso parece ser uma exceção não tratada no teu aplicativo, faz um debug e verifica qual linha está ocorrendo esse erro, pra ser tratada caso seja um erro no código! Caso contrário da Build All Project. 

Em 30/05/2016 at 09:08, gralak disse:

O mesmo erro acontece ao tentar enviar uma nota sem conexão com a Internet. 

Sem título.png

Bom dia,

Cara isso parece ser uma exceção não tratada no teu aplicativo, faz um debug e verifica qual linha está ocorrendo esse erro, pra ser tratada caso seja um erro no código! Caso contrário da Build All Project. Poderá apontar alguma advertência nas classes ou método que você esteja usando. 

  • 1 ano depois...
Postado
Em 03/06/2016 at 07:29, gralak disse:

Vlw Pessoal deu certo aqui obrigado pela atenção

Olá Gralak Tudo Bem , como você conseguiu resolver?

Pois estou com o seguinte problema tenho uma rotina pra enviar novamente todas as nfc-e(s) que não foram autorizadas no dia,  antes de tentar enviar novamente faço uma consulta mas o retorno e sempre que essa nfc-e não consta da na base de dados da sefaz, com essa reposta então envio novamente a venda com isso gera uma nova chave e xml mas em alguns casos retorna a rejeição de duplicidade,  nessa situação não consigo retornar o xml nem mesmo a chave que  está autorizada na sefaz, pois se eu for consultar com chave ou xml que acabei de gerar ao tentar novamente retorna que também que não consta na base da sefaz.

Como você conseguiu resolver esse problema de duplicidade? E como você realiza a consulta no sefaz ?

Desde já Muito Obrigado pela Atenção!!!

  • 4 meses depois ...
Postado
Em 01/06/2016 at 11:43, Fernando Di Pace disse:

Bom dia Infomatt,

Seria bom você verificar também o retorno Cstat = 150, pois corresponde a  "150|Autorizado o uso da NF-e, autorização fora de prazo";

VALEU!!!

Bom dia,

Cara isso parece ser uma exceção não tratada no teu aplicativo, faz um debug e verifica qual linha está ocorrendo esse erro, pra ser tratada caso seja um erro no código! Caso contrário da Build All Project. 

Bom dia,

Cara isso parece ser uma exceção não tratada no teu aplicativo, faz um debug e verifica qual linha está ocorrendo esse erro, pra ser tratada caso seja um erro no código! Caso contrário da Build All Project. Poderá apontar alguma advertência nas classes ou método que você esteja usando. 

como voce faz pra atualizar o xml apos consulta?, pois conforme li aqui no forum o acbr so atualiza o xml ao consultar ser for identico ao enviado pra sefaz,

e em caso de enviar online e dar erro e voce mudar pra offline o xml ja modifica, e a nota pode tanto ter sido enviada e nao retornada pra sefaz , como nao.

  • Curtir 1
Postado
Em 22/02/2018 at 07:06, gss200610 disse:

como voce faz pra atualizar o xml apos consulta?, pois conforme li aqui no forum o acbr so atualiza o xml ao consultar ser for identico ao enviado pra sefaz,

e em caso de enviar online e dar erro e voce mudar pra offline o xml ja modifica, e a nota pode tanto ter sido enviada e nao retornada pra sefaz , como nao.

Tenho essa mesma duvida! @gss200610

  • 2 meses depois ...
  • Membros Pro
Postado

Desculpe reabrir este fórum antigo, mas hoje na ideia de tratar a duplicidade como contingência pode dar errado casa o cliente perca a base vai aparecer do cliente sair com uma contingencia de numeração que pertença a outra nota. Depois desse tempo todo será que já solucionaram tudo, tive uma ideia de o sistema trocar a série e retransmitir.

 

 

 

Postado
8 horas atrás, adelsonuchoa disse:

Desculpe reabrir este fórum antigo, mas hoje na ideia de tratar a duplicidade como contingência pode dar errado casa o cliente perca a base vai aparecer do cliente sair com uma contingencia de numeração que pertença a outra nota. Depois desse tempo todo será que já solucionaram tudo, tive uma ideia de o sistema trocar a série e retransmitir. 

 

 

 

Seja mais claro. Porem se quando você diz "trocar a série e retransmitir...":  Está se referindo a se o cliente estava usando a serie 1, e parou no numero 5284... dai por algum motivo perdeu o banco de dados e não sabe onde parou... a sua PERGUNTA foi se pode usar a série 2, e começar agora da numeração 1 de novo??? Foi isso?

R - > Pode sim, porém o problema são os xml das notas se foram perdidos poderá ter problemas. Então é bom pedir pra contabilidade dar um jeito de solicitar para baixar na sefaz se foi isso...

Ou se ta usando as numeracoes de notas e de repente a numero 5284 deu duplicidade? dai você automaticamente muda para serie 2 e usa o mesmo numero 5284 para emitir? Foi isso?

R - > Não deve porque na serie 1 vai ficar a nota 5284 já autorizada e que de repente é a mesma nota e a serie 2 vai ficar com a sequência quebrada visto que você só iria usar ela quando desse duplicidade.

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