Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Bom dia pessoal,

Estou enfrentando um probleminha no momento de cancelamento da NF-e, "Código do orgão diverge da UF autorizadora", já verifiquei as configurações do componente e o código está certo, cód. 24, RN, alguém pode me ajudar? Segue abaixo o código para o cancelamento e em anexo o arquivo Xml.

 

	// Carregar o xml da nota fiscal

	TStringStream *arquivo = new TStringStream();
	arquivo->WriteString(obterValorCampo("nfearquivo", "nfe"));

	_nfe->NotasFiscais->Clear();
	_nfe->NotasFiscais->LoadFromStream(arquivo);

	TDateTime agora =  Now();
	int NumeroLote = StrToInt(FormatDateTime("yymmddhhnn", agora));




	String ChaveNFE = _nfe->NotasFiscais->Items[0]->NFe->procNFe->chNFe;
	String Cnpj = _nfe->NotasFiscais->Items[0]->NFe->Emit->CNPJCPF;
	String Protocolo = "";
	String NumeroProtocolo = "";
	String XMLCancelamento = "";
	String MotivoStatus = "";

	int CodigoStatus = 0;
	TDateTime DataHoraEvento = NULL;

	// Criar o cancelamento

	_nfe->EventoNFe->Evento->Clear();
	_nfe->EventoNFe->idLote = NumeroLote;

	Pcnenveventonfe::TInfEventoCollectionItem* item = _nfe->EventoNFe->Evento->Add();

	item->InfEvento->chNFe = ChaveNFE;
	item->InfEvento->CNPJ = Cnpj;
	item->InfEvento->dhEvento = agora;
	item->InfEvento->tpEvento =  teCancelamento;
	item->InfEvento->detEvento->nProt = Protocolo;
	item->InfEvento->detEvento->xJust = "ERRO NO PREENCHIMENTO DA NF-e";



	// Enviar o evento de cancelamento

	if( _nfe->EnviarEventoNFe(NumeroLote) ) {
		  TNFeEnvEvento* evento = _nfe->WebServices->EnvEvento;
		  if( evento->EventoRetorno->retEvento->Items[0]->RetInfEvento->cStat != 135 ) {
			String erro = "Ocorreu o seguinte erro ao cancelar a nota fiscal eletrônica: ";
			erro = erro +  " Código: " + IntToStr(evento->EventoRetorno->retEvento->Items[0]->RetInfEvento->cStat);
			erro = erro +  " Motivo: " + evento->EventoRetorno->retEvento->Items[0]->RetInfEvento->xMotivo;

			throw Exception(erro);
		  }
		  DataHoraEvento = evento->EventoRetorno->retEvento->Items[0]->RetInfEvento->dhRegEvento;
		  NumeroProtocolo = evento->EventoRetorno->retEvento->Items[0]->RetInfEvento->nProt;
		  XMLCancelamento = evento->EventoRetorno->retEvento->Items[0]->RetInfEvento->XML;
		  CodigoStatus = evento->EventoRetorno->retEvento->Items[0]->RetInfEvento->cStat;
		  MotivoStatus = evento->EventoRetorno->retEvento->Items[0]->RetInfEvento->xMotivo;

24130410293191000180550010000075411000251486.xml

24130410293191000180550010000075411000251486.xml

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