Есть обработка которая запускается в разных программах. В зависимости от того в какой программе она запускается, она должна обращаться к процедуре которая находится в общем модуле этой программы. НО в разных программах этот модуль называется по разному.
Если в коде обработки указать реальное название общего модуля и обращение к процедуре через точку, то программа уже при запуске выкидывает ошибку что она не знает такой переменной. Как это обойти?
Если в коде обработки указать реальное название общего модуля и обращение к процедуре через точку, то программа уже при запуске выкидывает ошибку что она не знает такой переменной. Как это обойти?
По теме из базы знаний
- Программные перечисления, ч.2: приемы кэширования при разработке
- [Общий модуль] Динамическое формирование интерфейса
- Гарри Поттер и подкапотное пространство веб-клиента
- LogosFor1C. Подсистема сквозного логирования на клиенте и сервере в разные приемники
- Снова об использовании ТекущаяДата() на клиенте и на сервере и о работе в разных часовых поясах
Найденные решения
(1) Пример типовых конфигураций (БСП)
Если СтрНайти(Метаданные.Имя, "Бухгалтерия") Тогда
Модуль = ОбщегоНазначения.ОбщийМодуль("МойМодуль");
Модуль.мояпроцедура();
ИначеЕсли Метаданные.Имя = "еще конфигурации" Тогда
Модуль = ОбщегоНазначения.ОбщийМодуль("МойМодульВДругойКонфигурации");
Модуль.мояпроцедураВДругойКонфигурации();
КонецЕсли;
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) Пример типовых конфигураций (БСП)
Если СтрНайти(Метаданные.Имя, "Бухгалтерия") Тогда
Модуль = ОбщегоНазначения.ОбщийМодуль("МойМодуль");
Модуль.мояпроцедура();
ИначеЕсли Метаданные.Имя = "еще конфигурации" Тогда
Модуль = ОбщегоНазначения.ОбщийМодуль("МойМодульВДругойКонфигурации");
Модуль.мояпроцедураВДругойКонфигурации();
КонецЕсли;
если без привязки к БСП:
Функция ПолучитьНужныеДанные()
МодульОбработчика = Неопределено;
Если Метаданные.Имя = "Конфигурация" Тогда
МодульОбработчика = Вычислить("ОбщегоНазначенияСервер");
ИначеЕсли Метаданные.Имя = "Другая конфигурация" Тогда
МодульОбработчика = Вычислить("ОбщегоНазначения");
КонецЕсли;
Возврат МодульОбработчика.ПолучитьНужныеДанные();
КонецФункции
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот