Ir para conteúdo
  • Cadastre-se

dev botao

Manifesto da NFe


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

Recommended Posts

  • Membros Pro

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á

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

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

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros 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.

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

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

Link para o comentário
Compartilhar em outros 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;

 

  • Curtir 3
  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...

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 := ?

Link para o comentário
Compartilhar em outros 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;

Link para o comentário
Compartilhar em outros 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.

Link para o comentário
Compartilhar em outros 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

Link para o comentário
Compartilhar em outros 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.

Editado por carlos batista
Link para o comentário
Compartilhar em outros 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 

Link para o comentário
Compartilhar em outros 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

Link para o comentário
Compartilhar em outros 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.

Link para o comentário
Compartilhar em outros 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.

Editado por carlos batista
Link para o comentário
Compartilhar em outros sites

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