Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 11:05

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

Автор frolobro, 04 фев 2019, 19:23

0 Пользователей и 1 гость просматривают эту тему.

frolobro

Приветствую всех. Пишу тестовое задание, которое дали на собеседовании. Есть заминка следующего характера: имеется объект метаданных, полученный через Метаданные.НайтиПоПолномуИмени(...). Необходимо из этого объекта получить ссылку на реквизит, имя которого известно.

То есть когда я пишу Ссылка = Перечисления.ВидыОперацийРеализацияТоваров[Стр.Значение]; (где Стр.Значение = "Товары") все работает так, как нужно, но проблема в том что на месте перечисления может быть и документ и справочник. Попытался применить следующую конструкцию: Ссылка = ОбъектМетаданных[Стр.Значение]; , но к моему великому сожалению, оно не работает)

Прошу строго не судить за, возможно, глупый вопрос, с 1С только начинаю свое знакомство.
// МассивСтруктур - массив, содержащий реквизиты, скопированные с другого документа.
// Имеет три поля: Имя, Значение и Тип реквизита вида Перечисления.ВидыОперацийРеализацияТоваров

Для каждого Стр из МассивСтруктур Цикл
Если Стр.Тип = "Строка" или Стр.Тип = "Число" или Стр.Тип = "Булево" тогда  // Если тип реквизита строка или число, то просто вставляем значение
НовыйДокумент[Стр.Имя] = Стр.Значение;
Иначе
ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(Стр.Тип);
//Ссылка = Перечисления.ВидыОперацийРеализацияТоваров[Стр.Значение];
Ссылка = ОбъектМетаданных[Стр.Значение];
НовыйДокумент[Стр.Имя] = Ссылка;
КонецЕсли;
КонецЦикла;
       

frolobro


Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск