Array
(
)

Erro em Locate com VarArrayOf

Nilton Santos
   - 10 ago 2004

Na nossa empresa estamos utilizando o Delphi 5 Client/Server acessando o banco Oracle 8.
Estamos tendo alguns problemas de localização utilizando o Locate de uma query via BDE com a cláusula VarArrayOf.
Os resultados as vezes são inconsistentes, quando pesquisamos e uma das colunas da query é nula. No final da pesquisa, é apresentado um resultado de sucesso na busca, quando na verdade era para a pesquisa não ter encontrado nada. Abaixo vai um fragmento de código:

procedure TForm1.Button2Click(Sender: TObject);
begin
if query1.locate(´codigo_prod;baixa_compitem´,vararrayof([´340322´,´Z´]),[])
then showmessage(´Achou: ´+QUERY1.FIELDBYNAME(´BAIXA_COMPITEM´).ASSTRING+´.´)
else showmessage(´Não achou´);
end;

Alguém já teve esse problema com Locate ?

Estamos testando uma alternativa ao BDE, que é o Oracle Data Access Component da empresa CoreLab. Alguém já acessou Oracle com Delphi usando esse componente ?