Новое значение свойства СопжигкГГех! отправляется на сервер только после открытия клиентского набора данных или выполнения метода
procedure Execute;
virtual;
Для запросов или хранимых процедур можно задавать параметры, которые сохраняются в свойстве
property Params: TParams;
До выполнения запроса присваиваются значения входным параметрам. После выполнения хранимой процедуры в выходных параметрах размещаются полученные от сервера значения.
Обратите внимание, что при выполнении запросов или хранимых процедур может измениться порядок следования параметров. Поэтому обращаться к параметрам желательно по их именам. Например, так:
Editl.Ttext := ClientDataSet.Params.ParamByName('OutputParam1).AsString;
Для того чтобы получить текущие значения параметров компонента набора данных на сервере, достаточно использовать метод
procedure FetchParams;
Перед и после получения параметров от провайдера, клиентский набор данных вызывает методы-обработчики событий:
property Bef oreGet Params : TRarefceEvent;
property AfterGetParams: TRernoteEvent;
Использование индексов
Обычно использование индексов - прерогатива сервера БД. Из компонентов Delphi только табличные компоненты могут в какой-то степени управлять использованием индексов. Очевидно, что удаленное соединение не способствует эффективному управлению индексами набора данных на сервере. Поэтому компонент TClientDataSet предоставляет разработчику возможность создавать и использовать локальные индексы.
Правильно созданные и используемые локальные индексы могут существенно ускорить выполнение операций с набором данных. В то же время их невозможно сохранить вместе с набором данных локально, их необходимо перестраивать при каждом новом открытии набора данных и его обновлении с сервера.
Для создания локального индекса используется метод
procedure Addlndex (const Name, Fields: string;
Options: TTndexCptions;
const DescFields: string = ' ';
const CaselnsFields: string = ' ' ;
const GroupingLevel: Integer = 0 ) ;
Параметр Name определяет имя нового индекса. Параметр Fields должен содержать имена полей, которые разработчик хочет включить в индекс. Имена полей должны разделяться точкой с запятой. Параметр options позволяет задать тип индекса:
TTndexOption = (ixPrimary, ixünique, ibdDescenciing, ixCaselnsenaitive, ixExpression, ixNoniyaintained) ;
TTndexCptions = set of TTndexOption;
ixPrimary - первичный индекс;
ixUnique - значения индекса уникальны;
ixDescending - индекс сортирует записи в обратном порядке;
ixCaselnsensitive - индекс сортирует записи без учета регистра символов;
ixExpression - в индексе используется выражение (для индексов dBASE);
ixNonMaintained - индекс не обновляется при открытии таблицы.
При этом можно задать поля, порядок сортировки которых будет обратным. Для этого их необходимо перечислить через точку с запятой в параметре DescFields. Параметр CaselnsFields аналогичным образом позволяет задать поля, на сортировку которых не влияет регистр символов.
Параметры DescFields и CaselnsFields используются вместо параметра Options.