Метод IsValidNew |
Возвращает логическую истину, если значения полей узла iLeaf логической таблицы соответствуют наложенным на этот узел ограничениям (bounds и condition).
function IsValidNew (iLeaf : integer) : boolean;
iLeaf - номер узла, в котором нужно проверить соответствие полей наложенным ограничениям (константа tn<имя узла>).
Возвращает true, если значения полей соответствуют наложенным ограничениям, иначе - false.
Эта функция предназначена в основном для решения следующих задач:
проверить при формировании новой записи, попадает ли она в текущие ограничения (bounds и condition). При этом предполагается, что в условиях валидных записей в узлах, от которых зависит узел iLeaf, мы очистили в узле iLeaf буфер (ClearBuffer) и накачали его поля значениями;
проверить при изменении полей текущей записи, попадает ли она в текущие ограничения (bounds и condition). При этом предполагается что в условиях исходно валидной позиции в узле iLeaf мы изменили значения каких-то полей.
Если значения не соответствуют ограничениям, то при вызове модификатора update или insert запись перестанет быть видна.
Поиск первой подходящей записи после SetBounds не производится. IsValidNew в этом случае сравнивает текущие значения полей с восстановленными ограничениями.