Имеется ИмяДокумента из метаданных конфигурации.
У этого документа есть реквизит ВидОперации, типа перечисление.
Нужно заполнить список всеми значениями этого перечисления.
Сделал вот так:
ИмяДокумента = "ПлатежноеПоручениеИсходящее";
Список = Новый СписокЗначений;
Для Каждого Зн Из Метаданные.Документы[ИмяДокумента].Реквизиты["ВидОперации"].Тип.ПривестиЗначение().Метаданные().ЗначенияПеречисления Цикл
Список.Добавить(Перечисления[Метаданные.Документы[ИмяДокумента].Реквизиты["ВидОперации"].Тип.ПривестиЗначение().Метаданные().Имя][Зн.Имя]);
КонецЦикла;
Вопрос: можно ли сделать это как-то иначе, чтобы было быстрее и красивее?
ИмяДокумента = "ПлатежноеПоручениеИсходящее";
Список = Новый СписокЗначений;
= Метаданные.Документы[ИмяДокумента].Реквизиты["ВидОперации"].Тип.ПривестиЗначение().Метаданные().Имя;
Для Каждого Зн Из Метаданные.Документы[ИмяДокумента].Реквизиты["ВидОперации"].Тип.ПривестиЗначение().Метаданные().ЗначенияПеречисления Цикл
Список.Добавить(Перечисления[ВыбПеречисление][Зн.Имя]);
КонецЦикла;
ИмяДокумента = "ПлатежноеПоручениеИсходящее";
Список = Новый СписокЗначений;
ВыбПеречисление = Метаданные.Документы[ИмяДокумента].Реквизиты["ВидОперации"].Тип.ПривестиЗначение().Метаданные().Имя;
Для Каждого Зн Из Метаданные.Документы[ИмяДокумента].Реквизиты["ВидОперации"].Тип.ПривестиЗначение().Метаданные().ЗначенияПеречисления Цикл
Список.Добавить(Перечисления[ВыбПеречисление][Зн.Имя]);
КонецЦикла;
хотя можно и так:
Для Каждого Зн Из Перечисления[Метаданные.Документы[ИмяДокумента].Реквизиты["ВидОперации"].Тип.ПривестиЗначение().Метаданные().Имя] Цикл
Список.Добавить(Зн);
КонецЦикла;