property IsNull: Boolean;

Свойство возвращает значение True, если параметр не имеет значения или имеет значение Null.

Свойство

property Bound: Boolean;

возвращает значение True только тогда, когда параметру не присваивалось значение вообще.

Метод

procedure Clear;

присваивает параметру значение Null.

Само значение параметра задается свойством

property Value: Variant ;

Но использование вариантов не очень эффективно, когда требуется обеспечить максимальную скорость. В таких случаях можно обратиться к целому набору свойств As..., которые не только возвращают значение, но и приводят его к некоторому типу. Например, свойство

property As Integer: Longlnt;

возвращает целочисленное значение поля.

( Примечание ^

Необходимо осторожно использовать свойства с приведением типа, т. к. попытка преобразования неверного значения вызовет исключительную ситуацию.

Для чтения из буфера и записи в буфер значения параметра соответственно используются методы

procedure SetData (Buffer: Pointer);
procedure GetData (Buffer: Pointer) ;

а необходимый размер при записи в буфер позволит определить метод

function GetDataSize: Integer;

Можно скопировать тип данных, имя и значение параметра прямо из поля данных. Для этого применяется метод

procedure AssignField (Field: HtLeld) ;

а для присвоения типа данных и значения используется метод

procedure AssignFieldValue (Field: TField; const Value: Variant); Общее число знаков для числовых значений определяет свойство

property Precision: Integer; А свойство

property NumericScale: Integer; задает число знаков после запятой.

Для строковых параметров размер задает свойство

property Size: Integer;

Состояния набора данных

В процессе своего функционирования (от открытия методом Open и до закрытия методом Close) набор данных может выполнять самые разнообразные операции. Можно просто перемещаться по записям, можно редактировать данные и удалять записи, можно проводить поиск по различным параметрам и т. д. При этом желательно, чтобы все операции выполнялись как можно быстрее и эффективнее.

Набор данных в любой момент времени находится в некотором состоянии, т. е. подготовлен к выполнению действий строго определенного рода. И для каждой группы операций набор данных выполняет ряд подготовительных действий.

Все состояния набора данных делятся на две группы.

□ К первой группе относятся состояния, в которые набор данных переходит автоматически, а также непродолжительные по времени состояния, сопровождающие функционирование полей набора данных (табл. 12.1).

• Во вторую группу входят состояния, которыми можно управлять из приложения, например, перевод набора данных в режим редактирования (табл. 12.2).

Базовый класс TDataSet, инкапсулирующий свойства набора данных, позволяет изменять состояние, а также проверять текущее состояние набора данных.

Текущее состояние набора данных передается в свойство state, имеющее

ТИП TDataSetState:

type TDataSetState = (dslnactive, dsBrowse, dsEdit, dslnsert, dsSetKey, dsCalcFields, dsFilter, dsNewValue, dsOldValue, dsCurValue, dsBlockRead, dsInternalCalc);

⇐ Предыдущая страница| |Следующая страница ⇒

Программирование в Delphi 7



Новости за месяц

  • Август
    2017
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс