Ir para conteúdo
  • Cadastre-se

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

Recommended Posts

Postado

Olá a todos,

Estou implementando uma trava no meu sistema para evitar que o usuário tente cancelar uma NF-e que já possua um CT-e ou MDF-e vinculado (autorizado).

Gostaria de saber se o componente ACBrNFe possui alguma função nativa que consulte se existem documentos vinculados antes de disparar o evento de cancelamento, ou outro método específico.

Atualmente, utilizo o comando ACBrNFe1.EnviarEvento(StrToInt(idLote)), mas gostaria de tratar isso antes de enviar a requisição para a SEFAZ, para evitar rejeições desnecessárias ou problemas fiscais para o cliente.

Alguém teria um exemplo de como realizar essa validação de forma eficiente?

Desde já, obrigado pela ajuda!

Postado
19 horas atrás, Cesar.Marcos disse:

Alguém teria um exemplo de como realizar essa validação de forma eficiente?

Eu salvo o flag do MDF-e autorizado e eventos de cancelamentos. Ai se o status do MDF-e estiver 0, calcela, se não, mensagem de alerta ao usuário da impossibilidade de cancelamento.

  • Curtir 1

Prates, Agnaldo

Postado
Em 11/03/2026 at 15:03, Cesar.Marcos disse:

Olá a todos,

Estou implementando uma trava no meu sistema para evitar que o usuário tente cancelar uma NF-e que já possua um CT-e ou MDF-e vinculado (autorizado).

Gostaria de saber se o componente ACBrNFe possui alguma função nativa que consulte se existem documentos vinculados antes de disparar o evento de cancelamento, ou outro método específico.

Atualmente, utilizo o comando ACBrNFe1.EnviarEvento(StrToInt(idLote)), mas gostaria de tratar isso antes de enviar a requisição para a SEFAZ, para evitar rejeições desnecessárias ou problemas fiscais para o cliente.

Alguém teria um exemplo de como realizar essa validação de forma eficiente?

Desde já, obrigado pela ajuda!

Uai, vc mesmo já se respondeu, se tem CT-e sem cancelar, a nf nao pode ser cancelada, ate cancelar o CT-e, o mesmo se aplica ao MDF-e, que é recursivo, se for uma transportadora, o mdfe tem um cte, ja empresa, tem a nfe..

Não precisa voce consultar na sefaz, penso eu. Isso é antigo, é tipo deixar editar receber com boleto emitido e em remessa, é com cautela.

Postado

Bom Dia Sr Antonio

Explicando o Cenário, a Nota Fiscal é emitida pelo meu software, e o CTe é emitido por outra softhouse,
por isso gostaria de fazer está validação se existe algum evento registrado antes de enviar para o Sefaz Evento Cancelamento.

obrigado pela ajuda!

 

  • Curtir 1
Postado (editado)
20 horas atrás, Cesar.Marcos disse:

Bom Dia Sr Antonio

Explicando o Cenário, a Nota Fiscal é emitida pelo meu software, e o CTe é emitido por outra softhouse,
por isso gostaria de fazer está validação se existe algum evento registrado antes de enviar para o Sefaz Evento Cancelamento.

obrigado pela ajuda!

 

Ah sim, ai faz sentido, no retorno da consulta da chave, tem o retorno de eventos. Penso eu, que voce consiga extrair ele, se teve um evento de CT-e ou MDF-e emitido.
nessa lista, olha image.thumb.png.d1dd2d917f375e4d87583d82655dff21.png

Mas Cesar: Faz uma tentativa, aqui em MG, se voce emite um CT-e vinculado na chave, a nota nao deixam cancelar, o mesmo com MDF-e, vem um retorno diferente. Com voce ai tem deixado cancelar?

 

Editado por Antonio Gomes
Postado

Quando tenta cancelar uma NFe com CTe ou MDFe emitido, a Sefaz retorna rejeição 690 e não cancela a NFe. 

A mensagem de erro é bem clara: 

Rejeição: Pedido de Cancelamento para NFe com CTe/MDFe

Penso que implementar uma consulta para impedir o usuário de cancelar é fazer algo que já está feito. Já não é possível cancelar a NFe. 

  • Curtir 1
  • Consultores
Postado
Em 18/03/2026 at 15:26, Juliano D. Rosa disse:

Penso que implementar uma consulta para impedir o usuário de cancelar é fazer algo que já está feito. Já não é possível cancelar a NFe. 

Concordo, fora que pode existir exceções onde permite o cancelamento (não sei se existe para esta situção em específico, farei de forma geral), como é o caso do cancelamento extemporâneo onde mesmo após 24hs consegue cancelar.
As vezes deixar a própria Sefaz dar a mensagem de erro é melhor.

  • Curtir 1

Valter Patrick
Gerente de Projetos e Consultor ACBr
(33)98400-0936
GitHub: https://github.com/valterpatrick

Ajude o Projeto ACBr crescer - Assine o Clube PRO                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

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