Всем привет!
Можно-ли получить список всех типов объектов метаданных (т.е. Справочники, Документы, Константы, Журналы и т.д., без детализации) конфигурации программным путем?
Если ДА, то как?
СписокВсехТипов = Новый СписокЗначений;
Для Каждого ТекОбъект Из Метаданные.Справочники Цикл
СписокВсехТипов.Добавить(ТекОбъект.Имя);
КонецЦикла;
Для Каждого ТекОбъект Из Метаданные.Документы Цикл
СписокВсехТипов.Добавить(ТекОбъект.Имя);
КонецЦикла;
//* . . .
Единственное решение ( уже давно гуляет по интернету )
МассивКлассовМетаданных = Новый Массив;
МассивКлассовМетаданных.Добавить("Справочники");
МассивКлассовМетаданных.Добавить("Документы");
МассивКлассовМетаданных.Добавить("Отчеты");
МассивКлассовМетаданных.Добавить("Обработки");
Для каждого КлассМетаданных Из МассивКлассовМетаданных Цикл
Для Каждого ОбъектМетаданных Из Метаданные[КлассМетаданных] Цикл
Сообщить(ОбъектМетаданных.Имя);
КонецЦикла;
КонецЦикла;
Только так?
А наподобие следующего нельзя?
Мета = Новый Структура();
Для Каждого ТекТипМД Из Метаданные Цикл
Если Не ПустоеЗначение(ТекТипМД) Тогда // Есть метаданные текущего типа
спТекМета = Новый СписокЗначений();
Для Каждого ТекМД из Метаданные(ТекТипМД) Цикл
спТекМета.Добавить(ТекМД);
КонецЦикла;
Мета.Вставить(ТекТипМД, спТекМета);
КонецЕсли;
КонецЦикла;
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua