Mensagem de cliente já exite
Olá pessoal!
Ainda não consegui resolver essa parte.
Seguinte tenho uma tabela com os seguintes campos
codigo, Apto, morador, CPF, e outros campos mais
Como faço para quando digitar um apto já cadastrado ele me retorna uma mensagem tipo ´Esse apto já esta cadastrado´
O campo Apto e type A porque uso o bloco na frente do numero A204 e não esta como chave primaria uso o delphi 6 e o banco paradox
Ainda não consegui resolver essa parte.
Seguinte tenho uma tabela com os seguintes campos
codigo, Apto, morador, CPF, e outros campos mais
Como faço para quando digitar um apto já cadastrado ele me retorna uma mensagem tipo ´Esse apto já esta cadastrado´
O campo Apto e type A porque uso o bloco na frente do numero A204 e não esta como chave primaria uso o delphi 6 e o banco paradox
Wagner
Curtidas 0
Respostas
Mmtoor
06/03/2004
Utilize uma pesquisa incremental em seu edit e a condiçao if the else.
Se na pesquisa for encontrado na tabela o dado idêntico ao digitado uma mensagem será exibida.
OK?
Se na pesquisa for encontrado na tabela o dado idêntico ao digitado uma mensagem será exibida.
OK?
GOSTEI 0
Wolverine
06/03/2004
mais facil e seguro é vc declarar no su BD este campo como Unique
:lol:
:lol:
GOSTEI 0
Wagner
06/03/2004
mais facil e seguro é vc declarar no su BD este campo como Unique
:lol:
Não entendi em que propriedade? pode me da mais detalhes
GOSTEI 0
Wolverine
06/03/2004
crie um indece para esse campo, na criação vc escolhe a opção unique, qual o seu BD?
GOSTEI 0
Wagner
06/03/2004
Paradox :lol:
GOSTEI 0
Wolverine
06/03/2004
abra a sua tabela, depois va no menu table/restructure..., depois na janela q abriu, click no ´combobox´ table properties, depois em secondary indexes, depois em define, depois tire o campo apto de field para indexed field, la embaixo, num ´panel´ index option, marque Unique, depois em ok, salve com um nome (id_apto), depois save e feche o databese desktop, depois faca um teste, se continuar cadastrando um apto para outro cliente, no delphi, vc va no table da tabela q vc criou o id_apto e retire o campo apto e depois o coloque denovo e faca isso no form tb
GOSTEI 0
Wagner
06/03/2004
Desculpe-me dessa forma não da o resultado que eu esperava.
Seguinte eu uso esse código, ele funciona em parte mais da a mensagem para qualquer numero que eu colocar independente se já existe ou não
O que eu estou fazendo de errado
if tabela.locate(´apto´,dbedit2.text,[lopartialkey]) then
Application.messagebox(´Esse Nº de apartamento já existe!´,´Confirmação´,mb_ok+mb_iconError);
dbedit2.SetFocus;
Seguinte eu uso esse código, ele funciona em parte mais da a mensagem para qualquer numero que eu colocar independente se já existe ou não
O que eu estou fazendo de errado
if tabela.locate(´apto´,dbedit2.text,[lopartialkey]) then
Application.messagebox(´Esse Nº de apartamento já existe!´,´Confirmação´,mb_ok+mb_iconError);
dbedit2.SetFocus;
GOSTEI 0
Wolverine
06/03/2004
pq vc ñ tenta usar sql
antes de incluir vc da a instrução sql e um if recordconut >0 faça .....
[b:ad740d6f66]é tipo assim[/b:ad740d6f66]
select * from table where campo=´[b:ad740d6f66]´[/b:ad740d6f66]+dbedit.text+[b:ad740d6f66]´[/b:ad740d6f66]´;
query.sqlexec (da um ctrl+espaço, nao tenho certeza se é sqlexec)
depois
if recordconut>0 then //se existe
showmensage(´Esse Nº de apartamento já existe!´)
else
table.post;
(da um ctrl+espaço, nao tenho certeza se é recordconut)
antes de incluir vc da a instrução sql e um if recordconut >0 faça .....
[b:ad740d6f66]é tipo assim[/b:ad740d6f66]
select * from table where campo=´[b:ad740d6f66]´[/b:ad740d6f66]+dbedit.text+[b:ad740d6f66]´[/b:ad740d6f66]´;
query.sqlexec (da um ctrl+espaço, nao tenho certeza se é sqlexec)
depois
if recordconut>0 then //se existe
showmensage(´Esse Nº de apartamento já existe!´)
else
table.post;
(da um ctrl+espaço, nao tenho certeza se é recordconut)
GOSTEI 0