Вызывается на сервере перед загрузкой данных из настроек: Перед открытием формы; При выполнении команды "Восстановить параметры...". В данный обработчик передается объект, из которого будут загружены настройки. Объект представляет из себя соответствие, в котором находятся значения реквизитов. В обработчике можно загрузить собственные свойства из соответствия. Например, загрузить из соответствия отбор.
Синтаксис
ПередЗагрузкойДанныхИзНастроекНаСервере(<Настройки>)Полное описание, параметры и ограничения
ФормаКлиентскогоПриложения.ПередЗагрузкойДанныхИзНастроекНаСервере (ClientApplicationForm.BeforeLoadDataFromSettingsAtServer)
ФормаКлиентскогоПриложения (ClientApplicationForm)
ПередЗагрузкойДанныхИзНастроекНаСервере (BeforeLoadDataFromSettingsAtServer)
Доступен, начиная с версии 8.2.
Синтаксис:
ПередЗагрузкойДанныхИзНастроекНаСервере(<Настройки>)
Параметры:
<Настройки>
Тип: Соответствие.
Настройки формы, в которых находятся значения реквизитов.
Описание:
Вызывается на сервере перед загрузкой данных из настроек:
Перед открытием формы;
При выполнении команды "Восстановить параметры...".
В данный обработчик передается объект, из которого будут загружены настройки. Объект представляет из себя соответствие, в котором находятся значения реквизитов. В обработчике можно загрузить собственные свойства из соответствия. Например, загрузить из соответствия отбор.
Доступность:
Сервер.
Использование в версии:
Доступен, начиная с версии 8.2.
Методическая информация
Практические примеры
Сохранить и восстановить свою скидку в настройках формы
Платформа передаёт Соответствие настроек: дополняем его своим ключом и читаем ключ перед загрузкой.
Где и как запускать
Модуль управляемой формы, указанной в подготовке. Директивы &НаКлиенте и &НаСервере уже включены в код.
Подготовка
В отдельной учебной конфигурации создайте обработку УчебнаяПанель и управляемую форму Панель. Код обработчика вставляйте на уровне модуля формы.
В свойствах формы на вкладке События назначьте указанному событию одноимённую процедуру. Обновите только учебную базу; проверяйте в тонком клиенте.
Для этого опыта создайте отдельную форму Параметры у УчебнаяПанель. Реквизиты Количество (Число 10.0, Сохраняемые данные Да) и Скидка (Число 5.2, Сохраняемые данные Нет); выведите оба поля.
Сохранение данных в настройках — Использовать список, автоматическое сохранение — Не использовать. Назначьте все три серверных события процедурам из примера.
Откройте форму под своим учебным пользователем. В меню формы используйте Сохранить параметры и Восстановить параметры; так опыт не зависит от автоматического сохранения при закрытии.
&НаСервере
Процедура ПриСохраненииДанныхВНастройкахНаСервере(Настройки)
Настройки.Вставить("УчебнаяСкидка", Скидка);
КонецПроцедуры
&НаСервере
Процедура ПередЗагрузкойДанныхИзНастроекНаСервере(Настройки)
ЗначениеСкидки = Настройки.Получить("УчебнаяСкидка");
Если ЗначениеСкидки = Неопределено Тогда
Скидка = 0;
Иначе
Скидка = ЗначениеСкидки;
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ПриЗагрузкеДанныхИзНастроекНаСервере(Настройки)
Сообщить("Скидка после загрузки: " + Строка(Скидка));
КонецПроцедурыРазбор по шагам
Сохраняемый Количество платформа записывает сама, а Скидку код добавляет в то же соответствие отдельным ключом.
Перед загрузкой восстанавливаем свой ключ; при первом открытии без настроек скидка становится нулём.
После загрузки показываем фактически установленную скидку, не записывая её в документ.
Как проверить результат
Введите Количество 3 и Скидка 7, выполните Сохранить параметры; затем поменяйте на 1 и 0 и выполните Восстановить параметры: получатся 3 и 7.
Закройте и откройте эту же форму под тем же пользователем: ранее сохранённая скидка восстанавливается.
Ожидаемый результат
Собственный ключ прошёл настоящий цикл пользовательских настроек формы.
На что обратить внимание
Ключ УчебнаяСкидка принадлежит только этому уроку; не перезаписывайте стандартные ключи платформы.
Настройки зависят от пользователя и формы. Последнее сохранение другого экземпляра может заменить предыдущие параметры.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.