Я использую драйверы Delphi7
, MS Vista
и Devart's dbExpress
(версия 4.70).Я бросаю TSQLConnection
, TSQLTable
(tabA
), TDataSetProvider
, TClientDataSet
(cdsA
), DataSource
и DBGrid
.
Я сделал все настройки с помощью инструмента графического дизайна.Все работает нормально, когда я открываю cdsA
, я вижу все данные в сетке.Вот мой код:
procedure TForm1.Button1Click(Sender: TObject);
var
fields, values: string;
begin
cdsA.Close;
cdsA.Open;
fields := 'fielda;fieldb';
values := Edit1.Text+';'+Edit2.Text;
cdsA.SetKey;
cdsA.Locate(fields, values, [loCaseInsensitive]);
end;
fieldA
и fieldB
существуют в таблице и также определены в cdsA.Fields
.Когда я выполняю этот код, инструкция Locate
создает исключение EVariantInvalidArgError ... Invalid argument
.Мне интересно, что не так.TIA.
Франческо