Вход | Регистрация


Как получить имя общего модуля по ссылке.

Как получить имя общего модуля по ссылке.
Я
   Dotoshin
 
16.11.18 - 08:42
Коллеги, подскажите пожалуйста, как в отладчике, по ссылке на общий модуль посмотреть его имя?
Проблема выглядит след.образом - в одной из стартовых процедур есть такой цикл.
Для каждого Обработчик Из ОбработчикиСобытия Цикл
        Обработчик.Модуль.ПриДобавленииПараметровРаботыКлиентскойЛогикиСтандартныхПодсистемПриЗапуске(Параметры);
КонецЦикла;

ОбработчикиСобытия - это массив, содержащий перечень обработчиков, а Обработчик - это структура, которая имеет поле - Модуль.
Вот собственно Модуль это и есть ссылка на общий модуль.
Получена эта ссылка, где-то в недрах конфигурации вот таким способом
Модуль = Вычислить(ИмяОбщегоМодуля)
 
 
   Dotoshin
 
1 - 16.11.18 - 08:45
Проблема в том, что не все общие модули имеют метод - ПриДобавленииПараметровРаботыКлиентскойЛогикиСтандартныхПодсистемПриЗапуске
и соответственно при старте имеем ошибку.
   Dotoshin
 
2 - 16.11.18 - 08:47
А вот чтобы узнать, какой модуль не имеет такой метод нужно каким-то образом получить его имя.
   RomanYS
 
3 - 16.11.18 - 08:58
Добавь в структуру имя модуля
   mszsuz
 
4 - 16.11.18 - 08:59
Функция ПолучитьИмяОбщегоМодуля(ОМ)
    Для Каждого ОбъектМетаданных Из Метаданные.ОбщиеМодули Цикл
        Попытка
            Если Вычислить(ОбъектМетаданных.Имя) = ОМ Тогда
                Возврат ОбъектМетаданных.Имя;
            КонецЕсли;
        Исключение 
        КонецПопытки
    КонецЦикла;
КонецФункции
   Dotoshin
 
5 - 16.11.18 - 09:05
(4) Супер! Спасибо огромное!
   Dotoshin
 
6 - 16.11.18 - 09:06
(3) Не хочется в типовой код влезать.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует