O programa cresceu, e os deletes nao funcionam mais...... como vcs se organizam?

Estou com o programa quase pronto, com todos os relacionamentos montados…so que o delete nao funciona…heheh relacionamento de varios objetos.

Eu nao posso colocar para deletar tudo, pois tenho q ter certo controle.

Exemplo: quando deleto um bordero, posso excluir o bordero, mas nao posso excluir os lancamentos contabeis, mas sim extornar… nas contas debitos e creditos…

em fim, depois de tudo pronto e integrado, ficou um pouco complexo criar os deletes com certo controle…

Como vcs costumam se organizar e planejar, sem ter q colocar cascade_all (no meu caso nao da)

Na verdade isso é a regra de negócio da sua aplicação, cada caso é um caso e deve ser feito em separado.

O que é muito comum é ter o lance de “flag” para, por exemplo, verificar se um cliente está ativo ou não. Nesse exemplo, eu não posso simplesmente apagar o cliente do meu sistema se ele já fez várisa compras, orçamentos e etc, porém eu deixo ele inativo por algum motivo (regra de negócio).

E, o meu problema e esse mesmo…
pq eu nao posso deletar um bordero, por exemplo, cujo os cheques ja tenham sido compensados…

o dono da empresa nao tem tanta intimidade com pc, e as vezes ele cria 2x o mesmo cliente, 2x o mesmo bordero (esquece q ja cadastrou), dai ele nao gosta de ficar aparecendo o bordero correto e o bordero com valores zero, porem ao criar um bordero eu gero uma serie de eventos no sistema, como preparacao do financeiro, log de usuario…etc e tal… mas o dono quer apagar, pra nao ficar vendo a cagada hehehehh

vou pensar como modelar isso, mas a sua ideia de nao apagar clientes quando ja tenha movimentado eu vou colocar no meu aqui…nao pode apagar cedente nem sacado…

agradeco, e quem mais tiver ideias por favor help-me

o exemplo do flag é válido para o seu caso, vc simplementes não mostra os que tiverem o flag marcado como false.

o que eu estou fazendo e definindo certas regras, como por exemplo

usuarios
nao excluir se tiver bordero feito por ele;
nao excluir se tiver historicos sacado, cedente, titulo alterado por usuario

empresa
	nao excluir se for referencia para calculo ok
operacional, 
	excluir somente se nao tiver empresa usando essa condicao
feriados: pode excluir direto, sem problema
serasa: pode excluir direto, sem problema

com isso eu vou regrando o que pode e quando pode ser excluido
no bordero vou colocar algo assim:
se nao tiver cheques e duplicatas pode excluir direto,
caso tenha, nao e possivel excluir
e vou fazendo isso bean a bean, colocando regra de negocio no meio