Скрипты данной библиотеки используются для разбора конфигурации 1С выгруженной в исходные файлы.
Под словом конфигурация понимается как конфигурация 1С, так и расширение.
installlocalhost.bat
Библиотека содержит в себе большое количество модулей и классов, часть из них может дорабатываться в процессе развития продукта. Поэтому рекомендуется использовать только методы модулей входящие в API (модули лежащие в корневом каталоге) для них будет сохранятся обратная совместимость.
Для работы с файлами выгрузки используются модуль-фабрика:
Пример, выводит имена всех объектов конфигурации и имена всех методов
#Использовать bsl-parser
Парсер = РазборКонфигураций.ЗагрузитьКонфигурацию(КаталогИсходников); // Создаем парсер
Конфигурация = Парсер.ОписаниеКонфигурации();
Для Каждого Объект Из Конфигурация.ОбъектыКонфигурации Цикл // Обрабатываем объекты
// Обработаем объекты
Сообщить(Объект.Тип + "." + Объект.Наименование);
КонецЕсли;
Парсер.НайтиМодулиКонфигурации(); // Находим все модули объектов
Для Каждого Модуль Из Конфигурация.ОбъектыКонфигурации Цикл
Для Каждого Блок Из Модуль.БлокиМодуля Цикл
Если Блок.ТипБлока = ТипыБлоковМодуля.ЗаголовокПроцедуры ИЛИ Блок.ТипБлока = ТипыБлоковМодуля.ЗаголовокФункции Тогда
Сообщить(ОписаниеБлока.ИмяМетода);
КонецЕсли;
КонецЦикла;
КонецЦикла;
Пример включения всех объектов в расширение:
#Использовать bsl-parser
Расширение = РазборКонфигураций.СоздатьНовоеРасширение(КаталогРасширения, ФорматыВыгрузки.Конфигуратор_8_3_10);
Конфигурация = РазборКонфигураций.ЗагрузитьКонфигурацию(КаталогКонфигурации);
СвойстваРасширения = Расширение.ОписаниеКонфигурации().СвойстваКонфигурации;
СвойстваРасширения.Наименование = "Simple";
СвойстваРасширения.Синоним = "Простое расширение";
СвойстваРасширения.ПрефиксИмен = "smpl_";
Для Каждого Объект Из Конфигурация.ОписаниеКонфигурации().ОбъектыКонфигурации Цикл
Расширение.ДобавитьОбъектВРасширение(Объект);
КонецЦикла;
Расширение.Зафиксировать();
Пример добавления нового объекта в конфигурацию:
#Использовать bsl-parser
Конфигурация = РазборКонфигураций.ЗагрузитьКонфигурацию(КаталогКонфигурации);
НовыйОбъект = РазборКонфигураций.СоздатьОбъектКонфигурации("Справочник", "ТестовыйСправочник");
Конфигурация.ДобавитьОбъект("Справочник", НовыйОбъект);
Конфигурация.Зафиксировать();
Пример поиск регистров сведений подчиненных регистратору:
#Использовать bsl-parser
Конфигурация = РазборКонфигураций.ЗагрузитьКонфигурацию(КаталогКонфигурации);
КонфигурацияОбъекты = Конфигурация.ОписаниеКонфигурации();
Для Каждого Регистр Из КонфигурацияОбъекты.НайтиОбъектыПоТипу("РегистрСведений") Цикл
ЧтениеКонфигурации.ПрочитатьОписание(Регистр);
Если Регистр.Описание.РежимЗаписи = "RecorderSubordinate" Тогда
Сообщить(Регистр.ПолноеНаименование);
КонецЕсли;
КонецЦикла;