Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adicionar no projeto, uma camada de validação dos dados da NFe/MDFe, antes que estes sejam submetidos ao schema #316

Open
adeniltonbs opened this issue Jan 2, 2017 · 6 comments

Comments

@adeniltonbs
Copy link
Member

Observação: Para essa implementação, é necessário ter em mente que será necessário fazer um acompanhamento das alterações de validação nas notas técnicas publicadas. Atualmente o mantenedor acompanha somente alterações somente na estrutura do projeto.

@adeniltonbs
Copy link
Member Author

Ver issue #253

@FabioHenriqueMF
Copy link

Neste caso seria validaçoes a nível de lógica fiscal ex: DiFal, ST, NCM, CFOP e a valores de impostos?

@adeniltonbs
Copy link
Member Author

adeniltonbs commented Jan 2, 2017

Poderia ser. Mas inicialmente pensei em validações que facilitasse a identificação de problemas, em relação à validação conta o schema. Por exemplo, quando a validação de schema retorna que determinado campo não foi informado ou não segue um padrão, é bem difícil para o usuário saber o que a mensagem quer dizer. Certamente o desenvolvedor tem que adicionar uma camada na sua aplicação para tratar a maioria desses casos.

As validações personalizadas da biblioteca poderiam começar com coisas simples, como campos obrigatórios que não foram informados (claro que com uma descrição mais amigável para o campo, em vez de simplesmente indicar o nome do atributo), depois poderia partir para validações mais complexas, como as fiscais.

@robertorp
Copy link
Contributor

Poderia adicionar elas com a opção de usarValidacoes = true/false da biblioteca porque ai não quebraria o código de ninguém.

@robertorp
Copy link
Contributor

Qual seria o padrão de mensagem de erro? Teria que ser algo indicativo digo.. por exemplo no mdf-e
O Veiculo tração não tem rodado não aplicável
Ou seja, eu penso que a mensagem tem que ser direta é amigável, digo

"Tipo rodado do veiculo tração inválido"

@MauricioSuporte
Copy link
Collaborator

Olá,

Agradeço por abrir esta issue e pela proposta de implementar uma camada de validação dos dados da NFe/MDFe antes de serem submetidos ao schema. Concordo que a validação proativa pode facilitar muito a identificação de problemas, especialmente em relação a mensagens de erro que, muitas vezes, podem ser confusas para o usuário final.

Considerando as observações feitas, como a necessidade de acompanhar as alterações nas notas técnicas publicadas e a importância de oferecer mensagens de erro mais amigáveis, é fundamental que essa camada de validação inicie com verificações simples, como a obrigatoriedade de campos e a conformidade com padrões. Gradualmente, podemos expandir para validações mais complexas, como as relacionadas a regras fiscais.

A implementação deve permitir ao desenvolvedor decidir se deseja habilitar ou não as validações, evitando assim interferências no funcionamento atual das aplicações que utilizam a biblioteca. Isso também ajudará a garantir que novos usuários possam adotar a funcionalidade sem quebrar a lógica existente.

Essa sugestão foi adicionada ao backlog para avaliação e planejamento futuros.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants