Engenere / BrazilFiscalReport

Python library for generating Brazilian auxiliary fiscal documents in PDF from XML documents.
GNU Lesser General Public License v3.0
27 stars 9 forks source link

[DANFE] Cancelado / Rascunho / Denegado #25

Closed mileo closed 3 months ago

mileo commented 3 months ago

Caso a nota não esteja autorizada o DANFE precisa ter no status superior seu texto alterado, por exemplo:

image

Se não tiver protocolo:

Status 110, 301, 302:

Não estiver no status 110, 301, 302

Também seria interessante uma marca d'agua como no exemplo:

image

mileo commented 3 months ago

image

@antoniospneto essa marca d'agua ela vem da lib, do Odoo? Só aparece para NFe emitidas em ambiente de homologação?

antoniospneto commented 3 months ago

@mileo

Sim, vem da propria lib da DANFE a marca da agua "sem valor fiscal" Hoje isso está sendo impresso somente quando o tipo de ambiente está como homologação. Mas realmente falta aplicar quando não há protocolo de autorização no xml, independente se é ambiente de homologação ou não. Vou atualizar a biblioteca para incluir isso.

Quanto ao status, cancelado e denegado tem certeza quando a isso? eu não vejo mutio sentido em fazer isso, pois não vai existir um xml (tag nfeproc) com o protocolo denegado ou cancelamento...

antoniospneto commented 3 months ago

@mileo

Essa questão do "cancelado" ou "denegado" na DANFE foge do seu proposito oficial, ao fazer isso será apenas para mero controle gerencial certo? ai teria que pensar em como será passado essa informação para a biblioteca.. pois tecnicamente o xml da nota fiscal é imutavel, se formos implementar isso como você sugere?

antoniospneto commented 3 months ago

Quanto a NFe sem autorização de uso resolvido na PR #26

Em relação às notas Denegadas ou Canceladas, é necessário analisar com mais cuidado. Essas informações não estão presentes no XML que representa o documento NF-e, então seria preciso passar essa informação para a biblioteca como um parâmetro opcional. Dessa forma, poderíamos imprimi-las na DANFE. Vale ressaltar que isso seria apenas uma funcionalidade extra de gerenciamento e não faz parte do propósito principal da DANFE, pois o manual não aborda esse tipo de situação. No entanto, se alguém quiser desenvolver e propor essa funcionalidade, podemos considerar incluí-la na biblioteca.