Имя: Пароль:
1C
1С v8
Как правильно записать значение в доп. реквизит справочника?
0 Поросян
 
25.07.20
18:28
В данном случае конфигурация "Розница 2.2".
Мне нужно програмно установить значение доп. реквизита.

Если захожу в свойства этого реквизита, то вот такой рисунок.

И там в разделе "для разработчика" указано, его название   "Коллекция_a139f5f7c5d140119b1823355bc0bc63"
https://i.imgur.com/0ORPxHk.png

Как бы правильнее записать туда значение для справочника "номенклатура"?

Понимаю конечно, что через планы видов характеристик это надо делать. Но более, чем уверен, что есть в БСП универсальная функция для этого.
1 Ненавижу 1С
 
гуру
25.07.20
18:34
Функция ПолучитьСвойство(Имя)

    Возврат ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя", Имя);        

КонецФункции

Процедура УстановитьЗначениеДополнительногоРеквизитаОбъекта(Объект, ИмяРеквизита, Значение) Экспорт

    Свойство = ПолучитьСвойство(ИмяРеквизита);    
    Строки = Объект.ДополнительныеРеквизиты.НайтиСтроки(Новый Структура("Свойство",Свойство));
    Если Строки.Количество()>0 Тогда
        Строки[0].Значение = Значение;
        Возврат;    
    КонецЕсли;
    
    ДоступныеСвойства = УправлениеСвойствами.СвойстваОбъекта(Объект,Истина,Ложь);    
    Если ДоступныеСвойства.Найти(Свойство)=Неопределено Тогда
        ВызватьИсключение "Нет реквизита "+ИмяРеквизита;
    КонецЕсли;     
    Строка = Объект.ДополнительныеРеквизиты.Добавить();
    Строка.Свойство = Свойство;
    Строка.Значение = Значение;
    
КонецПроцедуры
2 Поросян
 
25.07.20
18:40
(1)спасибо друг!
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан