DEFROSTSEL


Библиотека

V32.EXE

Синтаксис

DEFROSTSEL(file: IDENT
           { VAR field: ANYTYPE;
             value: ANYTYPE });

Описание

Переносит из архивной половины в рабочую все записи текущего селекта двойного файла file, удовлетворяющие условию фильтра, наложенного при помощи произвольного количества пар необязательных параметров field и value. Каждая пара необязательных параметров задает равенство, равенства объединяются в условие фильтра конъюнкцией. Первый в паре параметр field обязан быть полем файла file, но не обязан входить в индексы файла. Второй параметр value задает значение и обязан быть совместим с field по сравнению.

При включенном контроле ссылочной целостности базы данных вместе с записями файла file будут перенесены связанные записи транзитивных двойных BORROW-файлов. Если какая-либо запись, подлежащая обработке, уже находится в рабочей половине, это не является ошибкой и не влияет на обработку других записей.

DEFROSTSEL обладает всеми особенностями процедур модификации группы записей.

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

В результате выполнения процедуры текущая позиция в курсоре файла file станет неопределенной, но установленный селект сохранится.

Исключительные ситуации

Указанное поле не является полем файла file Исключение 19
Указано массивовое поле файла file Исключение 10
Указанный файл не имеет архивной половины Исключение 130
Не определен SELECT в файле file Исключение 363
При включенном контроле целостности БД нет прав чтения (права Scan) одного из BORROW-файлов файла file Исключение 224
Нет права ArcWrite на файл file или на один из его BORROW-файлов (при включенном контроле целостности БД) Исключение 226
Не удалось выполнить блокировку записи файла file или записи одного из его BORROW-файлов (при включенном контроле целостности БД) Исключения 371, 372, 374, 380, 381

См. также