0
Xammsa
12.12.20
✎
11:52
|
Добрый день!
У справочника есть реквизит с типом ХранилищеЗначения, в который при записи элемента справочника сохраняются данные, а при открытии формы извлекаются.
Всё происходит нормально, кроме создания элемента справочника копированием - в этом случае ХранилищеЗначения оказывается пустым. Все остальные реквизиты копируются.
Вот код, реквизит справочника-ХранилищеЗначения называется "НастройкиКомпоновщика". На форме есть реквизит "КомпоновщикНастроек", куда и загружаются данные из хранилища значения при создании формы.
//Сохранение
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
ТекущийОбъект.НастройкиКомпоновщика = Новый ХранилищеЗначения(КомпоновщикНастроек.ПолучитьНастройки());
КонецПроцедуры
//Загрузка в реквизит формы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
СохраненныеНастройки = об.НастройкиКомпоновщика.Получить(); //при создании копированием получает значение Неопределено
КомпоновщикНастроек.ЗагрузитьНастройки(СохраненныеНастройки);
КонецПроцедуры
Проверил отладчиком в модуле объекта в событии ПриКопировании() для нового элемента справочника - реквизит НастройкиКомпоновщика заполнен правильно. А вот в модуле формы он уже пуст.
Не пойму, почему это происходит только при копировании.
|
|
3
acht
12.12.20
✎
12:12
|
(1) В основном реквизите, который ДанныеФормыСтруктура, этого хранилища уже нет. Странно, что он у тебя есть при обычном открытии формы.
Бери параметр формы ЗначениеКопирования (кажется так) и перечитывай из него. Ну и для уже существующих, тебе правильно говорят, надо ПриЧтении извлекать.
|
|