Книга: Разработка интерфейса прикладных решений на платформе "1С:Предприятие 8"
Назад: Резюме
Дальше: Первый вариант решения

Реализация функциональности в клиентских и серверных обработчиках событий формы в зависимости от их назначения

Для реализации функциональности форм разработчик может использовать клиентские и серверные обработчики событий формы. Но делать это нужно правильно и по назначению.

Например, при интерактивном или программном создании формы с существующими в информационной базе данными вызывается серверное событие ПриЧтенииНаСервере. Затем для всех форм вызывается серверное событие ПриСозданииНаСервере. В обработчиках этих двух событий можно и нужно подготавливать форму к работе.

Затем вызывается клиентское событие формы ПриОткрытии, в обработчике которого можно выполнять действия, доступные только на клиенте, например общение с пользователем.

Часто бывает нужно задать функциональность формы сразу при ее открытии – например, заполнить какие-то реквизиты формы или установить какие-то свойства ее элементов и т. п. В обработчике какого же события: ПриСозданииНаСервере, ПриЧтенииНаСервере или ПриОткрытии – это нужно делать? Рассмотрим пример.

Предположим, в периодическом регистре сведений Цены содержатся розничные цены товаров из справочника Товары. При открытии формы уже существующего товара в поле Розничная цена должна подставляться цена из регистра сведений, и это поле должно быть недоступно для редактирования (рис. 4.42).

Рис. 4.42. Форма редактирования существующего товара

Рассмотрим возможные варианты решения этой задачи.

Назад: Резюме
Дальше: Первый вариант решения