GARANTIR DESCONTO

Fórum Botão Excluir -gt; Onde pode e onde não pode #337679

10/02/2007

0

Pessoal,

Após um Cliente me fazer a seguinte pergunta: “Tenho vários Cliente em meu cadastro que estão inativos a muito tempo gostaria de excluir os mesmos, isso seria possível?”
Então diante disso estive conversando com alguns colegas sobre onde podemos deixar o usuário EXCLUIR ou não um registro. Por exemplo em um cadastro de CLIENTE na minha opinião não deve ser permitido que um determinado registro (Cliente) seja excluído do Banco de Dados pois isso pode trazer uma série de problemas pois pode ser que este cliente tenha outros registros vinculados a ele, então uma vez que este cliente seja excluído vai ficar um buraco na base de dados.
É claro que antes de excluir determinado Cliente poderia se fazer uma consulta no Banco de Dados para saber se o mesmo possui algum registro vinculado, caso sim seria impossível Excluir o mesmo.
Nesta situação, para que este Cliente não fique mais aparecendo nas consultas de cadastro de cliente poderia se colocar um Flag na Tabela que indicaria se o Cliente foi excluído ou não ... Esta seria uma alternativa para resolver o problema.
Gostaria da opinião de alguém que já tenha passado por isso e como foi resolvido.

Obrigado pela atenção.


Mmoreira

Mmoreira

Responder

Posts

10/02/2007

Marco Salles

Quando na minha opnião não pode:
Por exemplo em um cadastro de CLIENTE na minha opinião não deve ser permitido que um determinado registro (Cliente) seja excluído do Banco de Dados pois isso pode trazer uma série de problemas pois pode ser que este cliente tenha outros registros vinculados a ele, então uma vez que este cliente seja excluído vai ficar um buraco na base de dados.


consequentemente :
É claro que antes de excluir determinado Cliente poderia se fazer uma consulta no Banco de Dados para saber se o mesmo possui algum registro vinculado, caso sim seria impossível [b:1e6edacbdf]Excluir o mesmo[/b:1e6edacbdf].


caso contrário a exclusão seria fictícia :

a idéia entre outras que possam aparecer viáveis , seria assim mesmo como voce respondeu :
para que este Cliente não fique mais aparecendo nas consultas de cadastro de cliente poderia se colocar um Flag na Tabela que indicaria se o Cliente foi excluído ou não ... 


O Flag funciona com um filtro , para permeitir visualização de somentes clientes mais ativos ...

Agora so para completar...pode se ter uma variavel Data (DataUltimoMovimento), que sempre que se faz algo a respeito desse cliente , ele recebe a data atual.... Assim a propria dataUltimoMovimento funcionaria como um Filtro , permitindo a visualização segundo algum critério especificado pelo próprio usuário...


Responder

Gostei + 0

10/02/2007

Mmoreira

Marcos,
Gostei muito da sua idéia!
Eu poderia adicionar nas configurações do sistema um parametro onde eu teria o numero de dias que o cliente poderia ficar sem movimento algum até entrar para a lista de clientes inativos. E no sql que eu uso na tela de Localizar Cliente eu faria esta verificação ... muito legal!!!

Agora sua opinião, em cadastros como Cliente, Produto deve existir BOTAO EXCLUIR ???

O que voce acha?


Responder

Gostei + 0

10/02/2007

Marco Salles

eu acho que o botão excluir tem e deve existir, principalmente quando algo indesejável é inserido na Base de dados..... O maximo que se deve fazer é o uso de uma senha para proteção de alguns dados que não possam ser apagados por descuidos ou com o uso de má fê...

Porem a permissão para a exclusão seguem também critérios tecnicos..
Quando se trata de relacionamento é o Banco qua voce tiver usando não for relacional , esta verificação tem que ser feito na mão.. É a exclusão cabe voce permiti-la ou não.. Na minha opinião , prefiro não aceitar a exclusão e abortar o processo no evento Before Delete aonde geralmente eu faço esta verificação


Responder

Gostei + 0

12/02/2007

Mmoreira

Marcos,

Muito obrigado pela atenção no Post.
Deu para exclarecer algumas idéias.

Um abraço!


Responder

Gostei + 0

12/02/2007

Callegaro

Eu acho que seria legal colocar uma flag de ATIVO/NÃO ATIVO. Existem clientes que passam 6 meses sem comprar, e nem por isso eles estão inativos. Acho que a rotina no botão excluir poderia ser implementada da seguinte forma:

  Tentar excluir Cliente.
  se der erro
    pergunta se quer marcar o cliente como inativo
  senão
    exclui o cliente, pois ele não tem nenhum relacionamento no banco



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar