|
Подключение внешней обработки на сервере |
☑ |
0
Tester
08.01.19
✎
12:17
|
Все привет и с наступившим!
Что-то тупняк после праздников )
Есть задача при работе регламентного задания подключить внешнюю обработку и вызвать экспортную процедуру модуля обработки.
ВнешниеОбработки.Создать(ПутьКФайлу, Ложь) возвращает ошибку в журнале регистрации:
"Предупреждение безопасности
Открывается <ИмяОбработки>.
Рекомендуется обращать внимание на источник, из которого был получен данный файл. Если с источником нет договоренности о разработке дополнительных модулей, или есть сомнения в содержимом файла, то его не рекомендуется открывать, поскольку это может нанести вред компьютеру и данным.
Разрешить открывать данный файл?"
|
|
1
Лефмихалыч
08.01.19
✎
12:24
|
Создать(<ПолноеИмяФайла>, <БезопасныйРежим>, <ЗащитаОтОпасныхДействий>)
Параметры:
<ПолноеИмяФайла> (обязательный)
Тип: Строка.
Полное имя файла внешней обработки.
<БезопасныйРежим> (необязательный)
Тип: Булево; Строка.
Признак создания внешней обработки в безопасном режиме.
Если указана строка, то внешняя обработка будет исполняться в безопасном режиме под управлением профиля безопасности с этим именем. Профиль безопасности должен иметь значение SafeModeProfile=Истина.
Значение по умолчанию: Истина.
<ЗащитаОтОпасныхДействий> (необязательный)
Тип: ОписаниеЗащитыОтОпасныхДействий.
Структура, описывающая параметры защиты от опасных действий для подключаемого модуля.
Вариант синтаксиса: По имени обработки
Синтаксис:
Создать(<Имя>)
Параметры:
<Имя> (обязательный)
Тип: Строка.
Имя внешней обработки, полученное после подключения.
Описание варианта метода:
Предварительно обработка должна быть подключена методом Подключить.
Возвращаемое значение:
Тип: ВнешняяОбработка.
Описание:
Создает объект внешней обработки по указанному файлу или имени внешней обработки.
Доступность:
Сервер, толстый клиент, внешнее соединение.
|
|
2
Velman
08.01.19
✎
12:25
|
Безопастный режим
|
|
3
Tester
08.01.19
✎
12:56
|
(1) Спасибо, но у меня для метода "Создать()" в 8.3.10 2 параметра передается :(
|
|
4
Tester
08.01.19
✎
17:21
|
Может кому будет интересно. Сработало вот так:
ДвоичныеДанныеОбработки = Новый ДвоичныеДанные(<ПутьКФайлу>);
АдресВХранилище = ПоместитьВоВременноеХранилище(ДвоичныеДанныеОбработки);
ОписаниеЗащитыОтОпасныхДействий = Новый ОписаниеЗащитыОтОпасныхДействий;
ОписаниеЗащитыОтОпасныхДействий.ПредупреждатьОбОпасныхДействиях = Ложь;
Обработка = ВнешниеОбработки.Подключить(АдресВХранилище, , Ложь, ОписаниеЗащитыОтОпасныхДействий);
Обработка = ВнешниеОбработки.Создать(<ИмяОбработки>);
|
|
5
hawksib
08.01.19
✎
17:31
|
мы обходим так: просто для пользователя, под которым запускается регламент в конфигураторе снимаем галочку "защита от опасных действий"
|
|
6
Tester
09.01.19
✎
09:09
|
(5) вот за эту подсказку спасибо огромное, реально сам бы не догадался! Заработало просто через
ВнешниеОбработки.Создать(ПутьКФайлу, Ложь).
И при вызове экспортной процедуры модуля обработки нормально заходит внутрь в отладку, в отличие от вызова экспортной процедуры, подключенной из временного хранилища.
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший