Excluir ou desativar cadastros?
Bom dia!
Estou desenvolvendo um sistema que atualmente, ao excluir um cliente, o registro do mesmo é apagado da tabela permanentemente. Gostaria de aproveitar a experiência de desenvolvedores de vocês pra saber se essa é ou não uma boa prática. Estive pensando em simplesmente desativar os registros em vez de excluí-los mas imagino que manter esses registros vai sobrecarregar as tabelas pois a maioria, provavelmente, não serão reativados e vão ocupar espaço apenas.
Qual é a opinião de vocês?
Estou desenvolvendo um sistema que atualmente, ao excluir um cliente, o registro do mesmo é apagado da tabela permanentemente. Gostaria de aproveitar a experiência de desenvolvedores de vocês pra saber se essa é ou não uma boa prática. Estive pensando em simplesmente desativar os registros em vez de excluí-los mas imagino que manter esses registros vai sobrecarregar as tabelas pois a maioria, provavelmente, não serão reativados e vão ocupar espaço apenas.
Qual é a opinião de vocês?
Benedito
Curtidas 0
Melhor post
Emerson Nascimento
25/06/2021
Você pode ter as duas opções e deixar o usuário decidir o que fazer (faço isso para todos os registros não fiscais; todos eles têm um campo 'bloqueado').
- desativar/bloquear o registro: ele é mantido no sistema, mas não pode ser utilizado até que seja reativado/desbloqueado.
- excluir um registro: o registro será excluído definitivamente do banco de dados, mas não pode existir qualquer 'movimento' pra ele.
     - produto: não pode existir documento que o utilize (pedido, orçamento, nota, etc), não deve ter movimentação de estoque, nada.
     - cliente: não pode existir documento que o utilize (pedido, orçamento, nota, etc), não deve ter atendimento associado a ele (no caso de CRM/CallCenter) e nenhum outro vínculo.
     - vendedor: não pode existir clientes vinculados, nem comissão, nem pedidos.
     - condição de pagamento: não pode existir pedidos, orçamentos, notas fiscais ou qualquer outro utilizando a condição de pagamento.
     - pedido: não pode existir liberação, nota fiscal, ou qualquer outro vínculo.
     e assim por diante.
- desativar/bloquear o registro: ele é mantido no sistema, mas não pode ser utilizado até que seja reativado/desbloqueado.
- excluir um registro: o registro será excluído definitivamente do banco de dados, mas não pode existir qualquer 'movimento' pra ele.
     - produto: não pode existir documento que o utilize (pedido, orçamento, nota, etc), não deve ter movimentação de estoque, nada.
     - cliente: não pode existir documento que o utilize (pedido, orçamento, nota, etc), não deve ter atendimento associado a ele (no caso de CRM/CallCenter) e nenhum outro vínculo.
     - vendedor: não pode existir clientes vinculados, nem comissão, nem pedidos.
     - condição de pagamento: não pode existir pedidos, orçamentos, notas fiscais ou qualquer outro utilizando a condição de pagamento.
     - pedido: não pode existir liberação, nota fiscal, ou qualquer outro vínculo.
     e assim por diante.
GOSTEI 3