Locate
23/08/2004
0
Dm.TbArea.Locate(´Codigo´, VarArrayOF([Dm.TbAtribuicaoCodigoSetor.value]), []);
mas não está funcionando esta dando o erro: ... Not convert variant of type (array variant) into type (string).. sendo que os doi campos da tabela e do tipo Integer.
O que devo fazer
Desde já agradeço a todos
Silvio
Posts
23/08/2004
Ipc$
a variant como elemento único e não com v[0].
Me parece que no seu caso, VarArrayOf retorna um array de variants e passa v[0] p/ o Locate e é aí que dá o erro.
23/08/2004
Rômulo Barros
Não custa nada. A propriedade .Value é do tipo variant, por isso q ocorre o erro.
No lugar de .AsString, vc tb poderá utiliza o .AsInteger;
:wink: :arrow: :arrow: :arrow: :arrow: oi eu aqui...
24/08/2004
Sandra
Não sei qual o banco de dados está utilizando, mas...
Acho que está havendo alguma confusão aí. :D
O VarArrayOf é utilizado quando se quer informar dois ou mais parâmetros para o Locate. Por isso, o erro apresentado na compilação.
:idea: Pesquisando no fórum, veja estes dois tópicos que encontrei:
* [url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=46141&highlight=vararrayof]Locate em mais de um registro[/url]
* [url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=41573&highlight=vararrayof]duvidas com locate[/url]
Exemplo (e maiores detalhes) que consta no help do Delphi:
with CustTable do Locate(´Company;Contact;Phone´, VarArrayOf([´Sight Diver´, ´P´, ´408-431-1000´]), [loPartialKey]);
Verifique também se a unit DB está declarada na lista de uses.
Boa sorte!
Clique aqui para fazer login e interagir na Comunidade :)