Имя: Пароль:
1C
 
Установлен безопасный режим ComObject
0 Gadin_V
 
12.04.16
12:41
Сделал внешнюю обработку выгрузка из 1с в sql Таблицы, запихал ее в регламент как внешнию, вылазиет ошибка

{ВнешняяОбработка.ВыгрузкаотчетовНаSQL.МодульОбъекта(74)}: Ошибка при вызове конструктора (ComObject)
по причине:
Установлен безопасный режим. Выполнение операции запрещено

в модуле объекта добавил

Функция СведенияОВнешнейОбработке() Экспорт

    ПараметрыРегистрации = Новый Структура;
    ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
    
    Возврат ПараметрыРегистрации;
КонецФункции


Не помогло,
1 Timon1405
 
12.04.16
12:47
а как в коде обработка вызывается?

ВнешниеОбработкиМенеджер (ExternalDataProcessorsManager)
Создать (Create)
Вариант синтаксиса: По имени файла

Синтаксис:

Создать(<ПолноеИмяФайла>, <БезопасныйРежим>)
Параметры:

<ПолноеИмяФайла> (обязательный)

Тип: Строка.
Полное имя файла внешней обработки.
<БезопасныйРежим> (необязательный)

Тип: Булево.
Признак создания внешней обработки в безопасном режиме. Если параметр не указан, внешняя обработка будет работать в безопасном режиме.
Значение по умолчанию: Истина
2 Gadin_V
 
12.04.16
12:54
Сама обработка называется "ВыгрузкаотчетовНаSQL"
Создать("ВыгрузкаотчетовНаSQL", ложь)
не очень понял что значит создать
3 Timon1405
 
12.04.16
12:58
Не работает именно в регламенте? Руками запустить работает?
Права на ком объект у пользователя из подо которого обработка запускается есть?
4 Gadin_V
 
12.04.16
12:59
ага, именно в регламенте можно в 1с залить но над что бы как внешняя, щас пробую
ВнешниеОбработки.Создать("ВыгрузкаотчетовНаSQL",ложь);
5 Gadin_V
 
12.04.16
13:11
не помогло, то же самое
{ВнешняяОбработка.ВыгрузкаотчетовНаSQL.МодульОбъекта(71)}: Ошибка при вызове конструктора (ComObject)
по причине:
Установлен безопасный режим. Выполнение операции запрещено
    ConnectionSQL = Новый ComObject("ADODB.Connection");
    ConnectionSQL.ConnectionString =
    
    "Provider=SQLOLEDB.1;Password=******;Persist Security Info=True;User ID=****;Initial Catalog=****;Data Source=***";    
    
    ConnectionSQL.CommandTimeOut = 900;




Ругается теперь на строку ConnectionSQL.ConnectionString =
6 Timon1405
 
12.04.16
13:50
можно попробовать
УстановитьБезопасныйРежим(Ложь);
перед
ConnectionSQL = Новый ComObject("ADODB.Connection");
7 Gadin_V
 
12.04.16
14:54
не помогло, мистика какая то, ставлю пользователя у которого полные права все галочки в ролях стоят, и УстановитьБезопасныйРежим(Ложь);
перед
ConnectionSQL = Новый ComObject("ADODB.Connection");

поставил всё равно не работает
8 Gadin_V
 
12.04.16
15:50
Есть у кого еще какие идеи?)
9 Serginio1
 
12.04.16
16:06
ВнешниеОбработки.Создать(ПутьКТовейОбработке,ЛОЖЬ);
10 Gadin_V
 
12.04.16
16:09
пробовал не работает
11 Serginio1
 
12.04.16
16:19
Проверь внутри обработки
ЗаписьЖурналаРегистрации("ТвояОбработка",,,, "При старте: " + БезопасныйРежим());
12 Serginio1
 
12.04.16
16:24
И перед вызовом обработки проверь БезопасныйРежим
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.