Имя: Пароль:
1C
1С v8
Подключение внешней обработки на сервере
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) вот за эту подсказку спасибо огромное, реально сам бы не догадался! Заработало просто через
ВнешниеОбработки.Создать(ПутьКФайлу, Ложь).
И при вызове экспортной процедуры модуля обработки нормально заходит внутрь в отладку, в отличие от вызова экспортной процедуры, подключенной из временного хранилища.