На этом шаге мы перечислим режимы, в которых может находиться набор данных.
Набор данных может находиться в разных режимах, определяющих возможные действия с ним: редактирование,
вставка новой записи, фильтрация данных. На рисунке 1 изображена схема, отображающая основные режимы.
Рис.1. . Режимы НД
Определить текущий режим набора данных можно, воспользовавшись свойством State компонента НД.
Опишем основные режимы.
- dsInactive - НД закрыт и доступ к его данным невозможен (переходит из dsBrowse, при помощи
метода Close). - dsBrowse - разрешена навигация по записям НД и просмотр данных (переходит из dsInactive при
помощи метода Open, из dsInsert и dsEdit при помощи метода Cancel). - dsEdit - набор находится в режиме редактирования текущей записи (переходит из dsBrowse при
помощи метода Edit). - dsInsert - режим вставки новой записи (переходит из dsBrowse при помощи методов
Insert, Append, InsertRecord, AppendRecord). - dsFilter - НД находится в режиме фильтрации записи (автоматически переходит при обработке события
onFilterRecord). В этом режиме блокируются все попытки изменить данные, и после завершения обработки
события переходит в dsBrowse. - dsSetKey - НД находится в режиме поиска записей, удовлетворяющих заданным критериям (переходит
из dsBrowse с помощью методов SetKey, FindKey, GotoKey, FindNearest, GotoNearest). - dsCalcFields - НД переключен в режим расчета вычисляемых полей.
На следующем шаге мы продолжим изучение этого вопроса.