Перем Конфигуратор Экспорт;
Перем Информатор Экспорт;
Перем ЗагруженныеОбработки;
Перем СтандартнаяБиблиотека Экспорт;
Функция Init(Designer, СтруктураБиблиотек) Экспорт
Конфигуратор = Designer;
СтандартнаяБиблиотека = СтруктураБиблиотек.СтандартнаяБиблиотека;
ЗагруженныеОбработки = Новый Структура;
КонецФункции
Функция LoadEpf(Путь) Экспорт
Попытка
ОбработкаОбъект = ВнешниеОбработки.Создать(Путь);
ЗагруженныеОбработки.Вставить(ОбработкаОбъект.Метаданные().Имя, ОбработкаОбъект);
Возврат ОбработкаОбъект;
Исключение
Конфигуратор.Message("Ошибка загрузки обработки: " + Путь + Символы.ПС + ОписаниеОшибки());
Возврат Неопределено;
КонецПопытки;
КонецФункции
Функция GetMacroses(ОбработкаОбъект) Экспорт
МассивМакросов = Новый Массив;
Попытка
ТаблицаМетодов = Информатор.ПолучитьТаблицуМетодов(ОбработкаОбъект);
Для каждого СтрокаТаблицыМетодов из ТаблицаМетодов Цикл
Если НРег(Лев(СтрокаТаблицыМетодов.Наименование, 6)) = "макрос"
И СтрокаТаблицыМетодов.КоличествоПараметров = 0 Тогда
МассивМакросов.Добавить(СтрокаТаблицыМетодов.Наименование);
КонецЕсли;
КонецЦикла;
Исключение
Конфигуратор.Message("Ошибка получения списка макросов: " + ОписаниеОшибки());
КонецПопытки;
Возврат МассивМакросов;
КонецФункции
Функция GetEpf(ИмяОбработки) Экспорт
Возврат ЗагруженныеОбработки[ИмяОбработки];
КонецФункции
Функция глВывестиСообщение(ТекстСообщения, Маркер=0) Экспорт
Конфигуратор.Message(ТекстСообщения, Маркер);
КонецФункции
Информатор = Обработки.Информатор.Создать();