Fórum Comando Locate #179477
03/09/2003
0
if tabela.locate(´descricao´,variavel) = true then
faça isso
else
faça aquilo
so nao sei os parametros do locate.. obrigado..
Zacca
Curtir tópico
+ 0Posts
03/09/2003
Vinicius2k
if table1.locate(´NOME_DO_CAMPO´,edit1.text,[]) then
..... else.....
para pesquisa aproximada :
if table1.locate(´NOME_DO_CAMPO´,edit1.text,[LoPartialKey]) then
..... else.....
t+
Gostei + 0
03/09/2003
Koplin
[loPartialKey,loCaseInsensitive]
Ambos parâmetros são opcionais. o 1º faz a busca procurando ocorrencias que correspondam parcialmente a pesquisa digitada e o 2º torna a pesquisa insesivel a caixa (maiusculas ou minusculas). Nenhum parâmetro definido torna a pesquisa radicalmente exata.
Existe ainda a possibilidade de buscar mais de uma coluna simultaneamente.
Este código foi extraido do help do Delphi e ilustra esta situação.
with CustTable do
Locate(´Company;Contact;Phone´, VarArrayOf([´Sight Diver´, ´P´, ´831-431-1000´]), [loPartialKey,loCaseInsensitive]);
Esta pesquisa procura por ocorrencias em tres colunas: Company, Contact e Phone
Espero ter ajudado. Boa sorte.
Gostei + 0
03/09/2003
Vinicius2k
zacca, se vc precisar utilizar um pesquisa com chave concatenada (VarArrayOf), acrescente ´Variants´ à sua lista de uses, ao contrário o compilador não reconhecerá a função...
e um adendo à minha resposta e à resposta do koplin : o método locate na arquitetura Client/Server eh MORTAL quanto ao desempenho... se a base for grande prefira usar uma Query com ´where CAMPO = :parametro´´...
T+
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)