Содержание
Table.Edit(Mode, RowNumber : Integer) : Variant
Создать форму для редактирования записи.
Метод Table.Edit создает модальную форму для просмотра, создания, копирования, редактирования или удаления записи таблицы.
Аргумент Mode определяет режим создаваемой формы. Mode может принимать следующие значения:
Если Mode = emAdd, то создается форма для создания новой записи. Аргумент Row в этом случае игнорируется.
Если Mode = emView, то создается форма для просмотра записи. Форма при этом недоступна для редактирования пользователем.
Если Mode = emCopy, то создается форма для копирования записи. Поля созданной формы заполняются из строки таблицы с номером Row. При нажатии кнопки ОК в созданной форме, в таблицу будет добавлена новая запись.
Если Mode = emEdit, то создается форма для редактирования записи. При нажатии на кнопку ОК в созданной форме, в запись таблицы с номером Row будут скопированы значения из полей формы.
Если Mode = emDelete, то создается форма для удаления записи. Созданная форма недоступна для редактирования пользователем. При нажатии кнопки ОК в созданной форме, запись таблицы с номером Row будет удалена.
Параметр Row содержит номер строки таблицы.
Возвращаемое значение, это ссылка на созданную форму.
Пример:// Нажатие на кнопку добавить Procedure OnDetailAdd; Var F : Currency; Begin // Запрет редактирования по условию If Store=0 Then Store.Error('Склад не выбран'); // Создаем форму для добавления записи F := Table.Edit(emAdd, 0); // Предустановка полей (Записываем остаток суммы) F.Price = Max(0, Total - Table.Sum('Price') As Currency); End; // Нажатие на кнопки: копировать, редактировать, удалить, просмотр. Procedure OnDetailEdit(Mode : Integer); Begin // Создание формы F := Table.Edit(Table.CursorY, Mode); // Передача ссылки на вызываемую форму. Owner - это переменная добавленная программистом. F.Owner := Self; End;