Um novo jeito de faturar
Eu evito escrever sobre o Sispetro aqui pois acho que temos uma vasta literatura no nosso KB e é lá que concentramos todo o conhecimento, roteiros, etc sobre ele.
Porém, vou quebrar a regra neste caso.
Acho que essa mudança é promissora demais para ficar misturadas às demais lá no KB. Além disso, os usuários não teriam noção do que foi feito para se chegar a ela.
A idéia é a seguinte: hoje, para faturar uma nota fiscal (vamos exemplificar a nota fiscal de venda), o usuário segue os seguintes passos:
- Usuário inclui um pedido de venda.
- Pedido de Venda é aprovado manual ou automaticamente.
- Usuário emite uma Ordem de Carregamento.
- Usuário emite a Nota Fiscal de Venda baseado na Ordem de Carregamento.
- Servidor Sispetro registra NF na SEFAZ, envia email para cliente e transportadora e libera DANFE.
- Usuário imprime DANFE.
A mudança é no passo 4.
Este passo é repetido inúmeras vezes ao dia por nossos faturistas que “conferem” os dados sugeridos pelo Sispetro a cada emissão de nota fiscal.
Então, porque não automatizar isso? Porque não reescrever toda a lógica de emissão da nota fiscal, cálculos, validações, etc no servidor sispetro onde estariam mais próximas do banco de dados?
Porque não deixar o processo mais rápido para os usuários de forma que eles possam somente marcar as ordens de carregamento que desejam ver faturadas e o Sispetro fazer todo o resto?
Pois bem. Resolvemos encarar o problema de frente e fazer tudo isso.
O processo para o usuário ficou mais simples. Para ele, bastará marcar as ordens de carregamento já emitidas para os pedidos de venda (numa tela auxiliar), informando alguns dados que podem ser alterados em cada nota fiscal (lacres, observações, etc) e escolher onde deseja ver impressos os DANFES.
O resto é automático.
Porém, para tudo funcionar, tivemos de retirar toda a lógica do cálculo dos impostos, seguro, despesas acessórias, custos, etc migrando-os para o servidor sispetro junto com todas as 43 validações que o processo fazia.
Parece simples porém resolvemos, para deixar o Sispetro mais fácil de manter, reescrever tudo em classes novas e mais fáceis de entender.
Isso tornou o trabalho quase que insano porém o resultado foi que o Sispetro atual pode fazer o mesmo que o anterior porém mais rapidamente, com classes mais simples, mais fáceis de manter e modificar, além de ficar tudo junto com o banco de dados.
Enfim…
No Comments