Имя: Пароль:
1C
1С v8
Не выполняется запись свойства в РС ЗначенияСвойствОбъектов из общего модуля.
0 Progger
 
11.06.21
11:35
Доброго всем.
Если из модуля формы справочника записываю свойство - всё работает.
А если этот же код переношу в общий модуль - то ошибка не выпадает, получение свойства и создание значения выполняется, но запись в РС не меняется, остается старой.

Это работает:
Свойство = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("НовоеСвойство", Истина);
Значение = Справочники.ЗначенияСвойствОбъектов.СоздатьЭлемент();
Значение.Владелец = Свойство.Ссылка;
Значение.Наименование = СтрокаШК;
Значение.Записать();

А это только в модуле формы работает, а в общем модуле отладка по строкам проходит, ошибок нет, но запись не заменяется:
НовЗапись = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();
НовЗапись.Объект   = Источник.Ссылка;
НовЗапись.Свойство = Свойство;
НовЗапись.Значение = Значение.Ссылка;
НовЗапись.Записать(Истина);
1 DrZombi
 
гуру
11.06.21
12:50
(0) Попробуйте отладчиком пройтись, все, до точки...

НовЗапись.Записать(Истина);

И посмотреть ,что у вас в ссылке Источник.Ссылка.

...

А еще,  "Значение = Справочники.ЗначенияСвойствОбъектов.СоздатьЭлемент()"
..Если это код полнофункциональный, то вы уже наверное полтора десятка свойств уже наработаны :)
2 Progger
 
11.06.21
14:17
(1) в ссылке Источник.Ссылка - ссылка на элемент справочника Номенклатура.

>>то вы уже наверное полтора десятка свойств уже наработаны :)

Да, так и есть :) Пока концепция такая, но спасибо - подумаю об этом)
3 Progger
 
14.06.21
18:04
А, разобрался, там просто дальше типовой механизм меняет значение на предыдущее.