Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Как проверить существование общего модуля?          
Inkognito Подменю пользователя
сообщение 06.03.17, 12:10
Сообщение #1

Ветеран
*******
Группа: Пользователи
Сообщений: 939
Из: Україна
Спасибо сказали: 446 раз
Рейтинг: 13.5

Есть общий модуль в УПП/УТП, называется "Ценнобразование". Вызывается например, для получения скидки:
Скидка = Ценообразование.ПолучитьСуммуСкидки(Сумма, ПроцентСкидки);
Проблема в том, что код используется во внешней обработке, которая может быть вызвана из конфигураций, которые его не имеют.
Например, пр открытии в ЗУП, программа ругается: "Переменная не определена (Ценообразование)"

Вопрос: как сделать проверку на наличие общего модуля "Ценообразование"?

sava1 Подменю пользователя
сообщение 06.03.17, 12:12
Сообщение #2

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2688
Из: Проскуров
Спасибо сказали: 681 раз
Рейтинг: 659.7

Попытка/Исключение Вызвать процедуру/функцию

Inkognito Подменю пользователя
сообщение 06.03.17, 12:16
Сообщение #3

Ветеран
*******
Группа: Пользователи
Сообщений: 939
Из: Україна
Спасибо сказали: 446 раз
Рейтинг: 13.5

Ошибка возникает при открытии обработки, и Попыткой/Исключением не обрабатывается.

Petre Подменю пользователя
сообщение 06.03.17, 12:17
Сообщение #4

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9

Выполнить("текст кода не проверяется на синтаксис");


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

Спасибо сказали: Inkognito,

Егор Динин Подменю пользователя
сообщение 06.03.17, 12:39
Сообщение #5

Почти крутой
Иконка группы
Группа: Местный
Сообщений: 1454
Из: Киев
Спасибо сказали: 548 раз
Рейтинг: 0

Обычно проверяют имя конфигурации.

Inkognito Подменю пользователя
сообщение 06.03.17, 13:17
Сообщение #6

Ветеран
*******
Группа: Пользователи
Сообщений: 939
Из: Україна
Спасибо сказали: 446 раз
Рейтинг: 13.5

Егор Динин
Обработка универсальная, конфигураций море....
Petre
Спасибо, все получилось.

Vofka Подменю пользователя
сообщение 06.03.17, 14:01
Сообщение #7

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4519 раз
Рейтинг: 3641.2

ОбщиеМодули = Метаданные.ОбщиеМодули;
МойМодуль = ОбщиеМодули.Найти("МойМодуль");
Если МойМодуль <> Неопределено Тогда
   //...
КонецЕсли;


Сообщение отредактировал Vofka - 06.03.17, 14:03

Kerberos Подменю пользователя
сообщение 05.11.18, 18:06
Сообщение #8

Говорящий
***
Группа: Пользователи
Сообщений: 62
Спасибо сказали: 13 раз
Рейтинг: 0

Цитата(Vofka @ 06.03.17, 15:01) *
ОбщиеМодули = Метаданные.ОбщиеМодули;
МойМодуль = ОбщиеМодули.Найти("МойМодуль");
Если МойМодуль <> Неопределено Тогда
   //...
КонецЕсли;


в конфигурациях этот код объединяют smile.gif

Если Метаданные.ОбщиеМодули.Найти("МойМодуль") <> Неопределено Тогда
   //...
КонецЕсли;


Или в БСП

Если ОбщегоНазначения.ОбщийМодуль("МойМодуль") <> Неопределено Тогда
   //...
КонецЕсли;


во 2м случае, можно еще вызывать потом модуль "по ссылке"

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 16.04.24, 16:47
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!