helpf.pro
Регистрация

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

frolobro
04.02.2019 19:07Прочитано: 2532

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

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

Прошу строго не судить за, возможно, глупый вопрос, с 1С только начинаю свое знакомство.

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


Yandex
Возможно, вас также заинтересует
Реклама на портале
АВП
06.02.2019 22:39Ответ № 1

М-да! Это собеседование на должность программиста 1с? Вы уверены, что готовы к должности? Не будьте так оптимистичны. 

Подсказка: Вы получили ответ на свой вопрос - закройте вопрос!
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.