Содержание
Form.Apply
Сохранить изменения
Если это печатная форма, то будет формирован документ для печати.
Форма может быть создана для редактирования записи таблицы на форме (например, вызов методов Table.Add, Table.Edit). В этом случае при выполнении метода Form.Apply, значения из полей формы будут скопированы в таблицу на форме.
Форма может быть создана для редактирования записи БД (например вызов методов CreateForm, ModalForm, CreateModule, Reference.Table.Add, Reference.Table.Edit). В этом случае, при выполнении метода Form.Apply, значения из полей формы и таблиц на форме будут сохранены в базу данных.
В остальных случаях Form.Apply ничего не делает.
Работу метода Form.Apply определяет свойство Form.Mode. Это режим редактирования записей БД, который может быть: emAdd, emCopy, emEdit, emView, emDelete.
Метод Form.Apply вызывается автоматически при отсутствии обработчика OnOkClick.
Форма связанная с таблицей БД
emAdd - Создание записи. При выполнении метода Form.Apply, платформа добавит записи в таблицы базы данных (выполнит SQL-запрос Insert). А так же установит блокировку на добавленные записи. Эта блокировка не позволит другим пользователям изменить эту запись, пока не закрыта ваша форма. Если в таблице базы данных есть поле счетчик, то соответствующее поле формы заполнится значением счетчика. После вызова метода Form.Apply режим формы изменится на emEdit (Изменение записи).
emCopy - Копирование записи. Этот режим аналогичен emAdd и добавлен только что бы программист смог определить, что платформа автоматически заполнила все поля и таблицы формы.
emEdit - Редактирование записи. При выполнении метода Form.Apply, платформа сохранит значения полей формы в БД. Если на форме присутствуют таблицы связанные с БД, то они так же будут сохранены.
emView - Просмотр записи. Все поля формы недоступны для редактирования, а при выполнении метода Form.Apply ничего не происходит.
emDelete - Удаление записи. Все поля формы недоступны для редактирования. При выполнении метода Form.Delete, платформа удалит запись из БД (выполнит SQL-запрос Delete). Если на форме присутствуют таблицы связанные с БД, то соответствующие записи так же будут удалены.
Форма созданная для редактирования строки таблицы на форме
В этом случае таблицы на форме игнорируются.
emAdd - Создание записи. При выполнении метода Form.Apply, платформа добавит запись в таблицу. Сохранение в базы данных при этом не происходит. После вызова метода Form.Apply режим формы изменится на emEdit (Изменение записи).
emCopy - Копирование записи. Этот режим аналогичен emAdd и добавлен только что бы программист смог определить, что платформа автоматически заполнила все поля и таблицы форма.
emEdit - Редактирование записи. При выполнении метода Form.Apply, платформа сохранит значения полей формы в таблицу.
emView - Просмотр записи. Все поля формы недоступны для редактирования, а при выполнении метода Form.Apply ничего не происходит.
emDelete - Удаление записи. Все поля формы недоступны для редактирования. При выполнении метода Form.Delete, платформа удалит запись из таблицы на форме.