Como fazer uma inclusão sem fazer a repetição de dados

Delphi

09/04/2003

Olá a todos da lista, e o seguinte queria fazer um programa de inclusão de dados de socios de um clube, mas so que eu queria que o campo nome nao inclua duplicado.
E se for duplicado o campo queria que imprimisse na tela uma mensagem dizendo ´ Nome do socio já esta cadastrado´. mas se nao tiver o nome duplicado ele inclua e ao mesmo tempo grave o campo.

OBS: POR FAVOR NÃO UTILIZAR O SQL E SIM FAZER TUDO DIRETO NA PROGRAMAÇÃO E FAZER A VERIFICAÇÃO SOMENTE NUM BOTÃO(BUTTON1)


Pellegrini

Pellegrini

Curtidas 0

Respostas

Dli

Dli

09/04/2003

Pegue o nome num Edit.Text e no onExit do Edit, faça o locate no BD, caso ele encontre , envie mensagem dizendo que já existe, caso contrário grave em um DBEdit ligado ao BD.

Antes que você pergunte: você não pode fazer direto em um DBEdit, porque O DBEdit já estará ligado ao BD e retornará sempre como existente.


Blz.


dli


GOSTEI 0
Midas

Midas

09/04/2003

Olá a todos da lista, e o seguinte queria fazer um programa de inclusão de dados de socios de um clube, mas so que eu queria que o campo nome nao inclua duplicado. E se for duplicado o campo queria que imprimisse na tela uma mensagem dizendo ´ Nome do socio já esta cadastrado´. mas se nao tiver o nome duplicado ele inclua e ao mesmo tempo grave o campo. OBS: POR FAVOR NÃO UTILIZAR O SQL E SIM FAZER TUDO DIRETO NA PROGRAMAÇÃO E FAZER A VERIFICAÇÃO SOMENTE NUM BOTÃO(BUTTON1)



se deseja fazer a verificacao num botao .. entao e fazer um locate.. pelo dado ...

if tabela.locate (´campo_tabelanome´,editnome.text,[lopartialkey,locaseinsensitive]) then
begin
showmessage(´Ja existe o cliente!´);
abort;
end;


GOSTEI 0
Einstein

Einstein

09/04/2003

usando campos percistentes fica assim:

1- Clique duas vezes no compoonente table;
2- lista de campos clique no campo nome.
3- no evento OnSetChange digite:
try
table.disablecontrols;
if table.locate(´Nome´,text,[lopartialkey,locaseinsensitive]=false then
begin
table.edit;
tablenome.asstring:=text;
end else begin
showmessage(´Cliente já cadastrado!´);
abort;
end;
finally
table.enablecontrols;
end

ver se funiona assim.
espero ter ajudado.
estou sem o delphi aqui então não deu para testar o exemplo. mas é por ai.


GOSTEI 0
POSTAR