Verificação de cpf já cadastrado no banco de dados.
05/09/2018
0
Pessoal eu tô com o seguinte problema, meu campo cpf foi salvo como unique no banco de dados então ele não vai permitir repetição na hora de salvar, mas toda vez que entro com um cpf repetido ele mostra os seguinte erro: violation of Primary key or Unique key on table cliente.
Eu queria ao invés de mostrar esse erro mostrasse uma mensagem, mas não estou conseguindo.
Alguém poderia me ajudar.
Ps: A mascara está sendo usada na field da query e no banco estou salvando apenas os números. E o banco de dados é firebird.
Agradeço a atenção!
Eu queria ao invés de mostrar esse erro mostrasse uma mensagem, mas não estou conseguindo.
Alguém poderia me ajudar.
Ps: A mascara está sendo usada na field da query e no banco estou salvando apenas os números. E o banco de dados é firebird.
Agradeço a atenção!
Rafael
Curtir tópico
+ 0
Responder
Post mais votado
05/09/2018
Simples, quando seu sistema for cadastrar, antes de mais nada ele verifica no sistema se o CPF ja existe:
"SELECT COUNT(*) FROM <sua_tabela> WHERE cpf='<cpf_digitado>'";
Se a query retornar maior que zero, você retorna a mensagem pro cliente dizendo que ja existe cpf.
Outra forma, é ao lado do campo do CPF quando o usuario digitar, o sistema executar um Ajax/Função que vai no banco e verifica se já está la o cpf e exibe uma mensagem pequena ao lado do campo "CPF já cadastrado".
Só não sei te mostrar isso em codigo DELPHI porque eu não programo em DELHPI. Mas já é uma luz para o seu problema, :D
"SELECT COUNT(*) FROM <sua_tabela> WHERE cpf='<cpf_digitado>'";
Se a query retornar maior que zero, você retorna a mensagem pro cliente dizendo que ja existe cpf.
Outra forma, é ao lado do campo do CPF quando o usuario digitar, o sistema executar um Ajax/Função que vai no banco e verifica se já está la o cpf e exibe uma mensagem pequena ao lado do campo "CPF já cadastrado".
Só não sei te mostrar isso em codigo DELPHI porque eu não programo em DELHPI. Mas já é uma luz para o seu problema, :D
Alex William
Responder
Mais Posts
05/09/2018
Natanael Ferreira
Você pode fazer um tratamento de exceções e mostrar uma mensagem amigável ao usuário:
Veja este link, sobre tratamento de exceções:
try // Coloque aqui o seu código para salvar except on e: Exception do if (Pos('Key Violation', e.message) > 0) then raise Exception.Create('Registro já existe !'); end;
Veja este link, sobre tratamento de exceções:
http://www.planetadelphi.com.br/artigo/124/tratamento-de-exce%C3%A7%C3%B5es---parte-1/
Responder
23/09/2018
Rafael
Obrigado pela força pessoal, infelizmente ainda não tive tempo de testar.
Responder
Clique aqui para fazer login e interagir na Comunidade :)