TDataset.Open является процедурой так что вы не можете получить набора данных заполняются данными или не
procedure TDataSet.Open;
begin
Active := True;
end;
Активный является собственностью:
Использования Активной для определения или задайте, заполняется ли набор данных данными. Когда Active имеет значение false, набор данных закрывается; набор данных не может читать или писать данные, а элементы управления, основанные на данных, не могут использовать его для извлечения данных или редактирования. Когда Active имеет значение true, набор данных может быть заполнен данными. Он может считывать данные из базы данных или другого источника (например, поставщика). В зависимости от свойства CanModify, активные наборы данных могут публиковать изменения. Установка активна в true:
- Производит событие BeforeOpen.
- Устанавливает состояние набора данных в dsBrowse.
- Устанавливает способ получения данных (обычно путем открытия курсора).
- Создает событие AfterOpen.
Если при открытии набора данных возникает ошибка, состояние набора данных устанавливается на dsInactive, и любой курсор закрыт. Настройка Active на false:
- Запускает событие BeforeClose.
- Устанавливает свойство State для dsInactive.
- Закрывает курсор.
- Запускает событие AfterClose.
Приложение должно установить Active на значение false перед изменением других свойств, которые влияют на состояние базы данных или элементов управления, отображающих данные в приложении.
Примечание: Вызов набора методов Open Активно в true; вызов метода Close принимает значение Active в false.
Не имея свойства 'Active', вы не сможете открыть набор данных во время разработки, потому что вы не можете публиковать метод в Object Inspector. Это мое мнение. – TLama
@TLama - Итак, это значит, Open предназначен для открытия набора данных во время выполнения и Active для времени разработки? –
Я видел их как в коде. Я просто думаю, что «Актив» был разработан позже, и для контроля времени разработки. Я лично использую его так, так как если вы найдете строку с надписью «Открыть» или «Закрыть» в коде, это гораздо более читаемо, чем оценка того, что назначено свойству «Актив». Но это вопрос вкуса ... – TLama