Ir para conteúdo
  • Cadastre-se

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 na empresa CTEC
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   

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.