Jump to content

2 Dia do ACBr

O Dia da Automação Comercial está chegando!
Inscreva-se

Nova Loja Oficial
loja.projetoacbr.com.br
Ajude o projeto a crescer, com estilo

Comprar

Balança SM100 performance surpreendente

Tecnologia Japonesa   Teclado e Visor resistentes a água
Consumo inteligente de etiquetas   Baixo custo de manutenção
Comunicação Ethernet e WIFI independentes

Saiba mais

Impressora de Etiquetas ELGIN - L42 PRO

Protocolos PPLA, PPLB, ZPL, EPL (automático)
Porta USB padrão Opcionais: Ethernet, Serial, Paralela
Sensor de Etiquetas Móvel Garantia de 18 meses

Saiba mais

nildglan

Manifesto da NFe

Recommended Posts

Pessoal desde semana passada que não consigo manifestar a nfe, estava manifestando e agora não baixa a nfe, veja como estou fazendo

 

/ Memo1.Lines.Add( NFe.SSL.SelecionarCertificado);
 edtDestinatario.Text :=  NFE.SSL.CertCNPJ;
 CNPJ        := edtDestinatario.Text;

  Chave   := '';
  Chave   := RetornoNFEChave.Text;
  idLote  := '1';
  CNPJ    := edtDestinatario.Text;
  NFe.EventoNFe.Evento.Clear;

  Result:= Application.MessageBox('Deseja confirma está nota junto a RECEITA FEDERAL?','Confirmação',MB_YESNO+ MB_ICONQUESTION + Mb_DefButton3);
  case Result of
     2: abort;
     7: abort;
  end ;


  with NFe.EventoNFe.Evento.Add do
   begin
     InfEvento.cOrgao   := 91;//UFtoCUF('MA');//
     infEvento.chNFe    := Chave;
     infEvento.CNPJ     := CNPJ;
     infEvento.dhEvento := now;
     //infEvento.tpEvento := teManifDestConfirmacao;
     infEvento.tpEvento := teManifDestCiencia;
   end;
  NFe.EnviarEvento(StrToInt(IDLote));

  with NFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento do
  begin
    lMsg:=
    'Id: '         +Id+#13+
    'tpAmb: '      +TpAmbToStr(tpAmb)+#13+
    'verAplic: '   +verAplic+#13+
    'cOrgao: '     +IntToStr(cOrgao)+#13+
    'cStat: '      +IntToStr(cStat)+#13+
    'xMotivo: '    +xMotivo+#13+
    'chNFe: '      +chNFe+#13+
    'tpEvento: '   +TpEventoToStr(tpEvento)+#13+
    'xEvento: '    +xEvento+#13+
    'nSeqEvento: ' +IntToStr(nSeqEvento)+#13+
    'CNPJDest: '   +CNPJDest+#13+
    'emailDest: '  +emailDest+#13+
    'dhRegEvento: '+DateTimeToStr(dhRegEvento)+#13+
    'nProt: '      +nProt;
  end;
  RetornoNFE.Edit;
  RetornoNFEManifestacao.Text := NFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.xEvento;
  RetornoNFE.Post;
  ShowMessage(lMsg);
 // nfe.ImprimirEvento;

 

 

estou no estado do Pará

 

Share this post


Link to post
Share on other sites

Boa tarde,

Primeiramente peço que coloque código como parte da postagem, procure sempre anexar principalmente se a quantidade de linhas for grande.

Segundo, qual é o erro que você esta tendo?


Consultor SAC ACBr Italo Jurisato 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

Share this post


Link to post
Share on other sites
4 horas atrás, nildglan disse:

erro é que não vincula o evento

Se a mensagem for: Evento registrado mas não vinculado a NF-e

Pode significar que:

  1. A chave de acesso pertence a uma nota fiscal emitida no ambiente de homologação e o evento está sendo enviando em produção (ou vise-versa)
  2. A chave de acesso está incorreta.

Lembrando ainda que o campo CNPJ é o CNPJ da empresa que está enviando o Evento, no caso o mesmo do certificado digital.

 

E uma observação, dependendo da sua versão do Delphi, considere substituir o método .add para .new. Visto que o add é um método depreciado e que em versões futuras da Embarcadero será descontinuado.

Share this post


Link to post
Share on other sites

Na verdade gabriel, não aparece mesagem vinculado e em outro cliente da tudo certo, só nesse cliente que não faz nada 

ele não está entrando aqui

NFe.EnviarEvento(StrToInt(IDLote));

  with NFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento do
  begin

    lMsg:=
    'Id: '         +Id+#13+
    'tpAmb: '      +TpAmbToStr(tpAmb)+#13+
    'verAplic: '   +verAplic+#13+
    'cOrgao: '     +IntToStr(cOrgao)+#13+
    'cStat: '      +IntToStr(cStat)+#13+
    'xMotivo: '    +xMotivo+#13+
    'chNFe: '      +chNFe+#13+
    'tpEvento: '   +TpEventoToStr(tpEvento)+#13+
    'xEvento: '    +xEvento+#13+
    'nSeqEvento: ' +IntToStr(nSeqEvento)+#13+
    'CNPJDest: '   +CNPJDest+#13+
    'emailDest: '  +emailDest+#13+
    'dhRegEvento: '+DateTimeToStr(dhRegEvento)+#13+
    'nProt: '      +nProt;

     Application.ProcessMessages;
     bVinculadoManifesto:=true;
     lblInfo1.caption:='MANIFESTE VINCULADO...' ;
  end;

 

nesse código esse é o problema o certificado é o mesmo e cnpj também

Share this post


Link to post
Share on other sites

Como você não mencionou a mensagem exata de erro que está dando, vou dar outra sugestão;

Limpar o componente antes de criar um evento. (Se tiver uma nota fiscal carregada no ACBr e você tentar criar um evento, terá a mensagem abaixo)

Screenshot_20.png.745e629e183939775d2bbe452532ce7e.png

Por tanto, certifique-se de limpar as notas fiscais e eventos que estão previamente carregados no ACBr.

with ACBrNFe1 do
begin
  NotasFiscais.Clear;
  EventoNFe.Evento.Clear;
  with EventoNFe.Evento.New do
  begin
    InfEvento.cOrgao          := 91;  //91 - Ambiente Nacional. No caso de evento de manifestação, sempre será 91
    InfEvento.chNFe           := '';  //Chave de acesso da NFe
    InfEvento.CNPJ            := '';  //CNPJ da empresa que está emitindo o evento (o mesmo do certificado digital)
    InfEvento.dhEvento        := now; //Data do evento
    InfEvento.tpEvento        := '';  //teManifDestCiencia, teManifDestConfirmacao, teManifDestOperNaoRealizada, teManifDestDesconhecimento
    InfEvento.detEvento.xJust := '';  //Justificativa, caso seja desconhecimento ou op não realizada
    end;
  EnviarEvento(IdLote);
end;

 

  • Like 2

Share this post


Link to post
Share on other sites

bom dia, 
Erro ao transmitir o evento: Status: 657 - Rejeição: Código do Orgao diverge do orgao autorizador.
não estou conseguindo resolver esse erro, antes eu enviava no Órgão = 91, depois de atualizar o 91 não tem mais, passei a colocar o código do estado que no 51, se não preencho o componente pega da chave mas da o mesmo erro, alguém tem ideia de como corrigir?   

 

      InfEvento.id := IntToStr(idLote);
      InfEvento.nSeqEvento := 1;
      InfEvento.chNFe := Chave;
      InfEvento.CNPJ := CNPJ;
      InfEvento.cOrgao := StrToInt(copy(IBGECidade,1, 2));
      InfEvento.versaoEvento := ?

Share this post


Link to post
Share on other sites

bom dia olha a resposta acima do nosso amigo Gabriel Franciscon ali esta como tem que ser 

Aprocveitando que ja falaram ai acima sobre o ADD vou deixar aqui a refatoracao sem o uso de With seguindo as boas praticas de programacao

 

var
 Evento : TInfEventoCollectionItem;
 Retorno : TRetInfEvento;
begin
    dmACBr.ACBrNFe1.EventoNFe.Evento.Clear;
    Evento  :=  dmACBr.ACBrNFe1.EventoNFe.Evento.New;
    Evento.InfEvento.cOrgao          := 91;  //91 - Ambiente Nacional. No caso de evento de manifestação, sempre será 91
    Evento.InfEvento.chNFe           := '';  //Chave de acesso da NFe
    Evento.InfEvento.CNPJ            := '';  //CNPJ da empresa que está emitindo o evento (o mesmo do certificado digital)
    Evento.InfEvento.dhEvento        := now; //Data do evento
    Evento.InfEvento.tpEvento        := '';  //teManifDestCiencia, teManifDestConfirmacao, teManifDestOperNaoRealizada, teManifDestDesconhecimento
    Evento.InfEvento.detEvento.xJust := '';  //Justificativa, caso seja desconhecimento ou op não realizada

   dmACBr.ACBrNFe1.EnviarEvento(1);

    Retorno := dmACBr.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items.RetInfEvento;
    ShowMEssage(
    'Id: '+Retorno.Id+#13+
    'tpAmb: '+TpAmbToStr(Retorno.tpAmb)+#13+
    'verAplic: '+Retorno.verAplic+#13+
    'cOrgao: '+IntToStr(Retorno.cOrgao)+#13+
    'cStat: '+IntToStr(Retorno.cStat)+#13+
    'xMotivo: '+Retorno.xMotivo+#13+
    'chNFe: '+Retorno.chNFe+#13+
    'tpEvento: '+TpEventoToStr(Retorno.tpEvento)+#13+
    'xEvento: '+Retorno.xEvento+#13+
    'nSeqEvento: '+IntToStr(Retorno.nSeqEvento)+#13+
    'CNPJDest: '+Retorno.CNPJDest+#13+
    'emailDest: '+Retorno.emailDest+#13+
    'dhRegEvento: '+DateTimeToStr(Retorno.dhRegEvento)+#13+
    'nProt: '+Retorno.nProt);


end;

Share this post


Link to post
Share on other sites
23 minutes ago, leandroaoa said:

bom dia olha a resposta acima do nosso amigo Gabriel Franciscon ali esta como tem que ser 

Sim esse era o mesmo processo que eu já fazia antes de atualizar o componente, porem nessa nova versão foi removido do enumerado o código 91, mas se tento usar outro esta dando o erro que sitei.

Share this post


Link to post
Share on other sites
4 minutos atrás, carlos batista disse:

Sim esse era o mesmo processo que eu já fazia antes de atualizar o componente, porem nessa nova versão foi removido do enumerado o código 91, mas se tento usar outro esta dando o erro que sitei.

Evento.InfEvento.cOrgao          := 91;  //91 - Ambiente Nacional. No caso de evento de manifestação, sempre será 91

Share this post


Link to post
Share on other sites
6 minutes ago, leandroaoa said:

Evento.InfEvento.cOrgao          := 91;  //91 - Ambiente Nacional. No caso de evento de manifestação, sempre será 91

entendo isso mas nao tem mais 91 no componente ACBR

function TInfEvento.getcOrgao: Integer;
//  (AC,AL,AP,AM,BA,CE,DF,ES,GO,MA,MT,MS,MG,PA,PB,PR,PE,PI,RJ,RN,RS,RO,RR,SC,SP,SE,TO);
//  (12,27,16,13,29,23,53,32,52,21,51,50,31,15,25,41,26,22,33,24,43,11,14,42,35,28,17);
begin
  if FcOrgao <> 0 then
    Result := FcOrgao
  else
    Result := StrToIntDef(copy(FChave, 1, 2), 0);
end;

isso esta em Unit  pcnEventoNFe

Se eu coloco 91 da esse erro

 

FALHA NA VALIDAçãO DA MENSAGEM DO EVENTO: '91' VIOLATES ENUMERATION CONSTRAINT OF '11 12 13 14 15 16 17 21 22 23 24 25 26 27 28 29 31 32 33 35 41 42 43 50 51 52 53 90'.

THE ELEMENT '{HTTP://WWW.PORTALFISCAL.INF.BR/NFE}CORGAO' WITH VALUE '91' FAILED TO PARSE.

Edited by carlos batista

Share this post


Link to post
Share on other sites
19 minutos atrás, carlos batista disse:

entendo isso mas nao tem mais 91 no componente ACBR

function TInfEvento.getcOrgao: Integer;
//  (AC,AL,AP,AM,BA,CE,DF,ES,GO,MA,MT,MS,MG,PA,PB,PR,PE,PI,RJ,RN,RS,RO,RR,SC,SP,SE,TO);
//  (12,27,16,13,29,23,53,32,52,21,51,50,31,15,25,41,26,22,33,24,43,11,14,42,35,28,17);
begin
  if FcOrgao <> 0 then
    Result := FcOrgao
  else
    Result := StrToIntDef(copy(FChave, 1, 2), 0);
end;

isso esta em Unit  pcnEventoNFe

Se eu coloco 91 da esse erro

 

FALHA NA VALIDAçãO DA MENSAGEM DO EVENTO: '91' VIOLATES ENUMERATION CONSTRAINT OF '11 12 13 14 15 16 17 21 22 23 24 25 26 27 28 29 31 32 33 35 41 42 43 50 51 52 53 90'.

THE ELEMENT '{HTTP://WWW.PORTALFISCAL.INF.BR/NFE}CORGAO' WITH VALUE '91' FAILED TO PARSE.

verifica se o seu acbr esta atualizado as pasta schemas 

Share this post


Link to post
Share on other sites

verifica se você nao esta com os schemas de cte na mesma pasta do schemas de nfe olha um trecho de uma resposta do Italo Jurisato Junior

A manifestação do destinatário é evento (4 tipos de eventos) e estes eventos são enviados para o Ambiente Nacional e não para a SEFAZ-Autorizadora. quer dizer que tem que ser 91

Share this post


Link to post
Share on other sites
41 minutes ago, leandroaoa said:

verifica se você nao esta com os schemas de cte na mesma pasta do schemas de nfe olha um trecho de uma resposta do Italo Jurisato Junior

A manifestação do destinatário é evento (4 tipos de eventos) e estes eventos são enviados para o Ambiente Nacional e não para a SEFAZ-Autorizadora. quer dizer que tem que ser 91

Poise estranho não estar aceitando colocar 91, vou reinstalar  do componente.

Share this post


Link to post
Share on other sites
On 7/26/2019 at 8:22 AM, carlos batista said:

bom dia, 
Erro ao transmitir o evento: Status: 657 - Rejeição: Código do Orgao diverge do orgao autorizador.
não estou conseguindo resolver esse erro, antes eu enviava no Órgão = 91, depois de atualizar o 91 não tem mais, passei a colocar o código do estado que no 51, se não preencho o componente pega da chave mas da o mesmo erro, alguém tem ideia de como corrigir?   

 

      InfEvento.id := IntToStr(idLote);
      InfEvento.nSeqEvento := 1;
      InfEvento.chNFe := Chave;
      InfEvento.CNPJ := CNPJ;
      InfEvento.cOrgao := StrToInt(copy(IBGECidade,1, 2));
      InfEvento.versaoEvento := ?

Bom dia para corrigir esse problema tive que trocar o método ACBrNFe1.EventoNFe.Evento.Add para ACBrNFe1.EventoNFe.Evento.New,  no paramento   InfEvento.cOrgao sempre vai o código 91 como o Italo Jurisato Junior Informou anteriormente.

o código fico mais ou menos assim

 with ACBrNFe1.EventoNFe.Evento.New do
    begin
      InfEvento.id := IntToStr(idLote);
      InfEvento.cOrgao := 91;
      InfEvento.chNFe := Chave;
      InfEvento.CNPJ := CNPJ;
      InfEvento.dhEvento := StatusServicoNFe.dhEnvioEvento;
      case CodSit of
        1:
          InfEvento.tpEvento := teManifDestConfirmacao;
        2:
          InfEvento.tpEvento := teManifDestCiencia;
        3:
          InfEvento.tpEvento := teManifDestDesconhecimento;
        4:
          InfEvento.tpEvento := teManifDestOperNaoRealizada;
      end;
      if CodSit = 4 then // Nao realizada
        InfEvento.detEvento.xJust := xJust;
    end;

    if not(ACBrNFe1.EnviarEvento(idLote)) then
      raise Exception.Create('Erro ao transmitir a Manifestação do Destinatário da NF-e! Tente novamente!');
 

 

obrigado leandroaoa.

Edited by carlos batista

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...