|
Обращение к доп реквизиту с идентификатором |
☑ |
0
bebibo
31.10.23
✎
18:55
|
Добрый день! Подскажите, как обратиться к доп реквизиту типа: ДополнительныйРеквизитЗначение_5CA41B80xB1D1x11E7xB30Ex94DE80638E41_B34BB25Bx0FDDx11E8xBCF9xAC1F6B145FF3
|
|
1
bebibo
31.10.23
✎
18:56
|
Обращаюсь прям так по имени, но проблема в том, что у каждой группы номенклатуры свой реквизит, соответственно уид там другой и уже пишет, что не найден
|
|
2
bebibo
31.10.23
✎
19:00
|
Делаю так:
Св = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Вес одной штуки");
НайденныеСтроки = Список.НайтиСтроки(Новый Структура("Свойство",Св));
Возврат НайденныеСтроки[0]
но тут "ДанныеФормыЭлементКоллекции" и там нет самого значения то.
|
|
3
Garykom
31.10.23
✎
19:14
|
Можно примерно так
&НаСервере
Функция ПолучитьДопРеквизит(Ссылка, ИмяСвойства)
ТаблицаСвойств = УправлениеСвойствами.ЗначенияСвойств(Ссылка, Истина, Ложь);
ДлинаИмени = СтрДлина(ИмяСвойства);
МассивНайденных = Новый Массив;
Для Каждого ТекСтр Из ТаблицаСвойств Цикл
Если СтрНачинаетсяС(ТекСтр.ИмяСвойства, ИмяСвойства) Тогда
МассивНайденных.Добавить(ТекСтр.Значение);
КонецЕсли;
КонецЦикла;
ЗначениеСвойства = Неопределено;
Если МассивНайденных.Количество() = 0 Тогда
ОбщегоНазначения.СообщитьПользователю("Не нашли доп.реквизит по имени """+ИмяСвойства+""" для """+Ссылка+"""");
ИначеЕсли МассивНайденных.Количество() = 1 Тогда
ЗначениеСвойства = МассивНайденных[0];
Иначе
ОбщегоНазначения.СообщитьПользователю("Нашли >1 доп.реквизит по имени """+ИмяСвойства+""" для """+Ссылка+"""");
КонецЕсли;
Возврат ЗначениеСвойства;
//Возврат УправлениеСвойствами.ЗначениеСвойства(Ссылка, ИмяСвойства);
КонецФункции
|
|
4
Donkey_hot
01.11.23
✎
14:09
|
(0) На форме, содержащей доп.реквизиты, создается реквизит типа ТаблицаЗначений, называется как-то вроде ОписаниеДополнительныхРеквизитов, по нему легко найдете соответствие имени элемента и собственно доп.реквизита.
|
|