Ошибка при вызове конструктора comобъект установлен безопасный режим выполнение запрещено 1с

Я
   Gadin_V

12.04.16 — 12:41

Сделал внешнюю обработку выгрузка из 1с в sql Таблицы, запихал ее в регламент как внешнию, вылазиет ошибка

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

по причине:

Установлен безопасный режим. Выполнение операции запрещено

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

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

    ПараметрыРегистрации = Новый Структура;

    ПараметрыРегистрации.Вставить(«БезопасныйРежим», Ложь);

    

    Возврат ПараметрыРегистрации;

КонецФункции

Не помогло,

   Timon1405

1 — 12.04.16 — 12:47

а как в коде обработка вызывается?

ВнешниеОбработкиМенеджер (ExternalDataProcessorsManager)

Создать (Create)

Вариант синтаксиса: По имени файла

Синтаксис:

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

Параметры:

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

Тип: Строка.

Полное имя файла внешней обработки.

<БезопасныйРежим> (необязательный)

Тип: Булево.

Признак создания внешней обработки в безопасном режиме. Если параметр не указан, внешняя обработка будет работать в безопасном режиме.

Значение по умолчанию: Истина

   Gadin_V

2 — 12.04.16 — 12:54

Сама обработка называется «ВыгрузкаотчетовНаSQL»

Создать(«ВыгрузкаотчетовНаSQL», ложь)

не очень понял что значит создать

   Timon1405

3 — 12.04.16 — 12:58

Не работает именно в регламенте? Руками запустить работает?

Права на ком объект у пользователя из подо которого обработка запускается есть?

   Gadin_V

4 — 12.04.16 — 12:59

ага, именно в регламенте можно в 1с залить но над что бы как внешняя, щас пробую

ВнешниеОбработки.Создать(«ВыгрузкаотчетовНаSQL»,ложь);

   Gadin_V

5 — 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 =

   Timon1405

6 — 12.04.16 — 13:50

можно попробовать

УстановитьБезопасныйРежим(Ложь);

перед

ConnectionSQL = Новый ComObject(«ADODB.Connection»);

   Gadin_V

7 — 12.04.16 — 14:54

не помогло, мистика какая то, ставлю пользователя у которого полные права все галочки в ролях стоят, и УстановитьБезопасныйРежим(Ложь);

перед

ConnectionSQL = Новый ComObject(«ADODB.Connection»);

поставил всё равно не работает

   Gadin_V

8 — 12.04.16 — 15:50

Есть у кого еще какие идеи?)

   Serginio1

9 — 12.04.16 — 16:06

ВнешниеОбработки.Создать(ПутьКТовейОбработке,ЛОЖЬ);

   Gadin_V

10 — 12.04.16 — 16:09

пробовал не работает

   Serginio1

11 — 12.04.16 — 16:19

Проверь внутри обработки

ЗаписьЖурналаРегистрации(«ТвояОбработка»,,,, «При старте: » + БезопасныйРежим());

  

Serginio1

12 — 12.04.16 — 16:24

И перед вызовом обработки проверь БезопасныйРежим

2 + 2 = 3.9999999999999999999999999999999…

ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.

Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.

Содержание:

1. Почему может возникнуть ошибка при вызове конструктора (COM-объект 1С)?

2. С помощью чего можно исправить ошибку при вызове конструктора (COM-объект 1С)?

3. Параметры при вызове конструктора (COM-объект 1С), которые регистрируют компоненты строки кода перед регистрируемым dll-файлом    

1.      Почему может возникнуть ошибка при вызове конструктора (COM-объект 1С)?

Когда ты начинающий специалист 1С, то иногда приходится чувствовать себя шаманом с бубном, так как не знаешь причин ошибки и как её исправить тоже.

Сегодня мы разберем одну из ошибок, которые появляются при работе с базой, а именно ошибку при вызове конструктора (COM-объект 1С).

Ситуацию такую, мы можем наблюдать при загрузке с Excel при использовании (COM-объекта 1С), при обмене между базами. Ситуаций, когда возникает данное сообщение с возникшей проблемой довольно много при работе с программой.

Как правило, данная ошибка возникает из-за того, что при установке платформы1С не произошла автоматическая регистрация 64-х разрядной компоненты, которая отвечает за использование COM-соединения 1С 8.3. А почему это произошло, спросите? Все очень просто и в то же время сложно, если не знаешь, в чем все ядро проблемы. А причина в том, что те, у кого выдаются такие ошибки, используют 32(86) – разрядную операционную систему и ставят вместо платформы необходимой разрядности их системы, платформу 1С предназначенную для совсем другой системы.   

2. С помощью чего можно исправить ошибку при вызове конструктора (COM-объект 1С)?

Исправить данную ошибку, довольно легко. Для этого необходимо всего лишь зарегистрировать библиотеку dll в реестре при помощи командной строки или программы PowerShell, в зависимости от того, что любите использовать, и команды regsvr32.

Для того чтобы выполнить команду, достаточно будет в строке написать такой текст команды «regsvr32 «C:Program Files1cv88.3.ХХ.ХХХХbincomcntr.dll»». Вместо «ХХ.ХХХХ» необходимо указать необходимый релиз платформы, библиотеку которой, необходимо зарегистрировать в реестре системы.

Если все выполнено правильно и регистрация произошла успешно, то должно выдать сообщение, как на скриншоте, об успешной регистрации библиотеки.

Администратор: Командная строка   

3. Параметры при вызове конструктора (COM-объект 1С), которые регистрируют компоненты строки кода перед регистрируемым dll-файлом

Также есть некоторые особенности команды, которая регистрирует компоненты.

На данный момент я знаю только 4 параметра (которые при написании строки кода указываются перед регистрируемым dll-файлом):

·        /u — параметр, отменяет регистрацию

·        /i — параметр, который позволяет при необходимости, в зависимости от библиотеки.

·        /n —параметр используется только для установки компоненты 1С, в основном пишется вместе с предыдущим (/I);

·        /s – возможность отключить все сообщения при регистрации;

Существует, также, один немаловажный момент, что в зависимости от версии командной строки, иногда приходится прописывать путь к самой утилите.

Кстати, существуют специальные программы-инструменты, которые помогают регистрировать компоненты, без знания команд и утилит администрирования, зарегистрировать библиотеку и продолжить работать дальше.

Таких программ достаточно много и писать, какое-то одно название смысла нет.

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

Специалист компании «Кодерлайн»

Олег Мороз

Сейчас разберём ошибку – «Установлен безопасный режим. Выполнение операций запрещено» 1С 8.3. Почему она появляется при работе с приложением и что в данном случае делать, чтобы от неё избавиться.

Ошибка 1С

Содержание

  1. Для чего существует безопасный режим в 1С
  2. Как отключить безопасный режим
  3. Как отключить режим изменения реквизитов
  4. Обновление 1С 8 до 3 редакции
  5. Видеоинструкция

Компания по разработке офисных программ 1С в прошлом часто сталкивалась с вирусами, которые мешали работе ПО и крали личные данные пользователей. Заносили в компьютер их сами владельцы компьютера, когда на просторах Интернета искали разнообразные дополнения и расширения для программ. Безопасный режим помогает блокировать внешние программы, не имеющие цифровой подписи и не определяющиеся как одобренные разработчиками.Настройка доступа

Если необходимо подключение внешних программ или доступ другим пользователям к отчётным цифровым документам, можно настроить политику конфиденциальности. В окне программы следует открыть блок с использованием отчётов и в разделе «Разрешённые действия» выбрать необходимые.Разрешения для пользователей Вернувшись назад, пользователь сможете выбрать участников, которым разрешены эти действия.

Читайте также: не удалось найти в справочнике «Органы ФСГС» получателя отчётности 1С 8.3.

Как отключить безопасный режим

Важным моментом является доверие к поставщику ПО, которому предоставляется внешняя обработка данных. Если с этим проблем нет, безопасный режим может быть деактивирован. Именно это требуют приложения для внешней обработки, такие как таблицы Excel или другие связки для чтения данных из документа.Выбор разрешённых действий Отключить режим также можно для всех пользователей или только для одного. Чаще всего из группы пользователей с доступом к документу выбираются те, у кого больше всего прав и доверия.Администратор ПО

В программе необходимо открыть средство защиты от опасных действий. Это должен сделать пользователь, столкнувшийся с проблемой доступа. К примеру, если вы являетесь администратором, то необходимо открыть приложение из учётной записи пользователя с ошибкой. В основных настройках потребуется снять галочку с пункта «Защита от опасных действий». Пользователя с ошибкой также стоит наделить соответствующими правами в своей учётной записи.Отключение защиты

Открыв раздел регламента, установите галочки на тех пунктах, которые разрешат ему выполнять соответствующие действия в ПО. Этим способом устраняется ошибка «Установлен безопасный режим. Выполнение операций запрещено 1С 8.3». Соответственно, отключать модуль безопасности стоит только в том случае, если администратор понимает последствия этих действий.

Это интересно: преобразование значения к типу Число не может быть выполнено 1С 8.3 — как исправить?

Как отключить режим изменения реквизитов

Для того, чтобы избавиться от ошибки, появляющейся в 1С 8.3, следует запустить настройку «Все функции». Если редакция программы выше, параметр может называться по-другому. Найдите пункт «Изменение реквизитов» и следуйте дальнейшим указаниям.

  1. Нажмите на кнопку меню в верхней панели программы;
  2. Выберите «Функции технического специалиста»;Функции технического специалиста
  3. Переходим в параметры отчётов и обработки;Дополнительные отчёты
  4. Активируем служебные реквизиты в разделе «Специальные возможности»;
  5. Устанавливаем галочку на «Служебные реквизиты»;
  6. Выбираем в параметре значение «Нет».

Сохраните эти настройки. Для проверки того, что безопасный режим в программе для текущего пользователя больше не работает, повторите действия, при которых появлялось уведомление на экране. Пользователь мог уже работать за данной программой без ошибок. Она могла появиться в результате очередного обновления, с которым сформировалась и система защиты. Или изменение в её работе. Для работы с новой версией приложения обновите его и настройте политику доступа своего или других аккаунтов.

Обновление 1С 8 до 3 редакции

В последней редакции программы 1С появились новые функции, в том числе изменения коснулись системы безопасности. Чтобы защитить свои данные и программу, рекомендуется использовать последнюю версию ПО. По ссылке на сайт продукта необходимо пройти и авторизоваться https://login.1c.ru. И скачать обновление на свой компьютер. Если не войти в аккаунт сразу, данные для входа сайт могут потребоваться на странице загрузки обновления.

  1. На экране появится список версий, из которого выберите последнюю. Она определяется по дате выхода;Выбор версии
  2. Следующий шаг предлагает выбрать название вашей системы компьютера – Linux, Windows, Mac;
  3. Нажмите на кнопку «Скачать» под предложенным файлом;
  4. Запустите файл из папки, куда он был помещён;
  5. Откройте папку, в которой расположена резервная база;
  6. Завершите установку.

Данный пример является классической установкой обновления, но не единственным способом. Пользователь может сделать это при помощи отдельных файлов, загружаемых из сайта 1С.Поиск обновлений А также непосредственно из самого приложения без посещения сайтов. Загрузка файлов обновлённой версии не всегда является надёжным способом получить их. Приложение может загрузить не полный пакет. Из-за чего появляются другие ошибки во время установки обновлений.

Видеоинструкция

Этими способами вы сможете решить ошибку «Установлен безопасный режим, выполнение операций запрещено» в 1С или обновить свою платформу по инструкции из этого видео.

 +1 

Распечатать

Установлен безопасный режим. Выполнение операции запрещено

Не могу запустить обработку из раздела «Дополнительные обработки». Выдает «Установлен безопасный режим. Выполнение операции запрещено!»

В 1С Предприятии 8.2-8.3 появился специальный режим исполнения кода — безопасный режим. Суть безопасного режима в том что недоступно выполнение некоторых методов и конструкций встроенного языка. Если вы доверяете источнику из которого получена обработка — безопасный режим можно отключить.

В коде описания подключаемой обработки:

Код 1C v 8.2 УП

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

ПараметрыРегистрации = Новый Структура;
МассивНазначений = Новый Массив;
МассивНазначений.Добавить("Документ.ПриходнаяНакладная");
МассивНазначений.Добавить("Документ.РасходнаяНакладная");

ПараметрыРегистрации.Вставить("Вид", "ЗаполнениеОбъекта");
ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
ПараметрыРегистрации.Вставить("Наименование", "Обработка ТЧ");
ПараметрыРегистрации.Вставить("Версия", "W1C.ru v 1.2");
ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина);
ПараметрыРегистрации.Вставить("Информация", "Дополнительная обработка табличной части");

ТаблицаКоманд = ПолучитьТаблицуКоманд();

ДобавитьКоманду(ТаблицаКоманд,
"Обработка ТЧ",
"Обработка ТЧ",
"ВызовКлиентскогоМетода",
Истина,
"ОткрытиеФормы");

ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);

Возврат ПараметрыРегистрации;
КонецФункции

исправьте БезопасныйРежим

Код 1C v 8.2 УП

     ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);   
   Gadin_V

12.04.16 — 12:41

Сделал внешнюю обработку выгрузка из 1с в sql Таблицы, запихал ее в регламент как внешнию, вылазиет ошибка

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

по причине:

Установлен безопасный режим. Выполнение операции запрещено

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

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

    ПараметрыРегистрации = Новый Структура;

    ПараметрыРегистрации.Вставить(«БезопасныйРежим», Ложь);

    
    Возврат ПараметрыРегистрации;

КонецФункции

Не помогло,

   Timon1405

1 — 12.04.16 — 12:47

а как в коде обработка вызывается?

ВнешниеОбработкиМенеджер (ExternalDataProcessorsManager)

Создать (Create)

Вариант синтаксиса: По имени файла

Синтаксис:

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

Параметры:

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

Тип: Строка.

Полное имя файла внешней обработки.

<БезопасныйРежим> (необязательный)

Тип: Булево.

Признак создания внешней обработки в безопасном режиме. Если параметр не указан, внешняя обработка будет работать в безопасном режиме.

Значение по умолчанию: Истина

   Gadin_V

2 — 12.04.16 — 12:54

Сама обработка называется «ВыгрузкаотчетовНаSQL»

Создать(«ВыгрузкаотчетовНаSQL», ложь)

не очень понял что значит создать

   Timon1405

3 — 12.04.16 — 12:58

Не работает именно в регламенте? Руками запустить работает?

Права на ком объект у пользователя из подо которого обработка запускается есть?

   Gadin_V

4 — 12.04.16 — 12:59

ага, именно в регламенте можно в 1с залить но над что бы как внешняя, щас пробую

ВнешниеОбработки.Создать(«ВыгрузкаотчетовНаSQL»,ложь);

   Gadin_V

5 — 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 =

   Timon1405

6 — 12.04.16 — 13:50

можно попробовать

УстановитьБезопасныйРежим(Ложь);

перед

ConnectionSQL = Новый ComObject(«ADODB.Connection»);

   Gadin_V

7 — 12.04.16 — 14:54

не помогло, мистика какая то, ставлю пользователя у которого полные права все галочки в ролях стоят, и УстановитьБезопасныйРежим(Ложь);

перед

ConnectionSQL = Новый ComObject(«ADODB.Connection»);

поставил всё равно не работает

   Gadin_V

8 — 12.04.16 — 15:50

Есть у кого еще какие идеи?)

   Serginio1

9 — 12.04.16 — 16:06

ВнешниеОбработки.Создать(ПутьКТовейОбработке,ЛОЖЬ);

   Gadin_V

10 — 12.04.16 — 16:09

пробовал не работает

   Serginio1

11 — 12.04.16 — 16:19

Проверь внутри обработки

ЗаписьЖурналаРегистрации(«ТвояОбработка»,,,, «При старте: » + БезопасныйРежим());

  

Serginio1

12 — 12.04.16 — 16:24

И перед вызовом обработки проверь БезопасныйРежим

Отключение безопасного режима в интерфейсе

Если у Вас перестала запускаться внешняя обработка с сообщением о безопасном режиме, в первую очередь проверьте свойство «Защита от опасных действий» для пользователя, под которым выполняется запуск внешней обработки:

Если Вы доверяете поставщику внешней обработки — Вы можете отключить защиту от опасных действий. Дело в том, что определенный функционал внешней обработки или отчета может требовать отключения безопасного режима (подключение через Com-соединение к Excel, получение данных из сети). Именно поэтому возможна ситуация, когда необходимо будет отключить защиту для определенного пользователя.

Еще одна возможная ситуация — внешняя обработка перестала запускаться по расписанию с сообщениями об установленном безопасном режиме. Чтобы дать возможность нормально работать такой обработке — для регламентного задания нужно выбрать пользователя с полными правами (и отключенной защитой от опасных действий). Для этого переходим в регламентные задания (Администрирование => Обслуживание => Регламентные и фоновые задания). В списке регламентных заданий находим нужное регламентное задание по шаблону: Дополнительная обработка: Имя обработки. 

Для этого регламентного задания указываете пользователя с полными правами, под которым будет это задание выполняться:

Обычно, этих действий достаточно для нормальной работы с внешней обработкой или для корректного запуска регламентного задания с использованием внешней обработки.

Отключение безопасного режима при проектировании внешней обработки (печатной формы)

Раньше можно было без особых проблем отключить безопасный режим при регистрации обработки или при ее выполнении. Фиксируем, что сейчас не работает:

  • Отключение безопасного режима при регистрации обработки. Если Вы добавите строку «ПараметрыРегистрации.Вставить(«БезопасныйРежим», Ложь);» в метод СведенияОВнешнейОбработке() — это не отключит безопасный режим при выполнении обработки. Особенно, с учетом включенной защиты от опасных действий в настройках пользователя.
  • Создание копии внешней обработки не в безопасном режиме. Раньше можно было при выполнении внешней обработки создать ее копию с отключением безопасного режима и таким образом реализовать необходимый функционал.

На данный момент при регистрации внешней обработки необходимо описывать возможные разрешения для внешней обработки. Для этого используется параметр регистрации «Разрешения» (тип Массив). В качестве примера рассмотрим добавление разрешения на создание Com-объекта «Excel.Application»:

Функция СведенияОВнешнейОбработке() Экспорт
	ПараметрыРегистрации = Новый Структура;
	МассивНазначений = Новый Массив;
	ПараметрыРегистрации.Вставить("Вид", "ДополнительнаяОбработка"); //может быть - ПечатнаяФорма, ЗаполнениеОбъекта, ДополнительныйОтчет, СозданиеСвязанныхОбъектов...	
	ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
	ПараметрыРегистрации.Вставить("Наименование", "Пример обработки"); //имя под которым обработка будет зарегестрирована в справочнике внешних обработок
	ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
	ПараметрыРегистрации.Вставить("Версия", "1.0");
	ПараметрыРегистрации.Вставить("Информация", "Пример обработки");
	ПараметрыРегистрации.Вставить("Разрешения", Новый Массив);
	ТаблицаКоманд = ПолучитьТаблицуКоманд();
	ДобавитьКоманду(ТаблицаКоманд, "Выполнить обработку", "ВыполнитьОбработку", "ВызовСерверногоМетода", , "ВыполнитьОбработку");
	ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
	ПараметрыРегистрации.Разрешения.Добавить(РаботаВБезопасномРежиме.РазрешениеНаСозданиеCOMКласса("Excel.Application"
	, "00024500-0000-0000-C000-000000000046"));
	Возврат ПараметрыРегистрации;
КонецФункции

Для «Word.Application» CLSID будет «000209FF-0000-0000-C000-000000000046». При регистрации внешней обработки с описанием разрешения в форме внешней печатной формы добавится страница «Разрешения»:

Текст разрешения:

Создание COM-объекта

Дополнительному отчету или обработке будет разрешено использовать механизмы внешнего программного обеспечения с помощью COM-соединения со следующими ограничениями:

с программным идентификатором Excel.Application

Также хочется отметить, что на данный момент не все разрешения нормально фиксируются через сведения о внешней обработке. Например, при добавлении разрешения на использование каталога временных файлов (РаботаВБезопасномРежиме.РазрешениеНаИспользованиеКаталогаВременныхФайлов(Истина)) Вы можете получить ошибку:

Значение не является значением объектного типа (Представление)

Проблема фиксируется в функции СформироватьПредставлениеРазрешений() т.к. список описаний разрешений не содержит значение для этого разрешения. Возможно, в ближайших релизах мы увидим исправление этой ошибки.

Наши разработки:

 +1 

   

Распечатать

Установлен безопасный режим. Выполнение операции запрещено

Не могу запустить обработку из раздела «Дополнительные обработки». Выдает «Установлен безопасный режим. Выполнение операции запрещено!»

В 1С Предприятии 8.2-8.3 появился специальный режим исполнения кода — безопасный режим. Суть безопасного режима в том что недоступно выполнение некоторых методов и конструкций встроенного языка. Если вы доверяете источнику из которого получена обработка — безопасный режим можно отключить.

В коде описания подключаемой обработки:

Код 1C v 8.2 УП

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

ПараметрыРегистрации = Новый Структура;
МассивНазначений = Новый Массив;
МассивНазначений.Добавить("Документ.ПриходнаяНакладная");
МассивНазначений.Добавить("Документ.РасходнаяНакладная");

ПараметрыРегистрации.Вставить("Вид", "ЗаполнениеОбъекта");
ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
ПараметрыРегистрации.Вставить("Наименование", "Обработка ТЧ");
ПараметрыРегистрации.Вставить("Версия", "W1C.ru v 1.2");
ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина);
ПараметрыРегистрации.Вставить("Информация", "Дополнительная обработка табличной части");

ТаблицаКоманд = ПолучитьТаблицуКоманд();

ДобавитьКоманду(ТаблицаКоманд,
"Обработка ТЧ",
"Обработка ТЧ",
"ВызовКлиентскогоМетода",
Истина,
"ОткрытиеФормы");

ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);

Возврат ПараметрыРегистрации;
КонецФункции

исправьте БезопасныйРежим

Код 1C v 8.2 УП

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

Отключение безопасного режима открытия обработки.

Галка «Защита от опасных действий» у пользователя снята, права у пользователя не полные — это кассир.

Обработка опубликована без безопасного режима. Открывается через публикацию. После очередного обновления запуск обработки приводит к аварийному завершению работы платформы.

Решил протестировать — открывая обработку через меню Файлоткрыть.

При открытии обработки выходит ошибка:

: Ошибка при вызове конструктора (Файл)
Файл = Новый Файл(ИмяФайлаВыгрузки);
по причине:
Установлен безопасный режим. Выполнение операции запрещено

Отключить безопасный режим при запуске внешней обработки

Если обработку запускать вручную из справочника внешних обработок, то все нормально работает?

Если да, то попробуйте регламент запустить под пользователем, у которого отключена защита от опасных действий, повторяется ошибка или нет?

  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти

ОбъектОписанияЗащиты = Новый ОписаниеЗащитыОтОпасныхДействий;
ОбъектОписанияЗащиты.ПредупреждатьОбОпасныхДействиях = Ложь;

при работе COMОбъект во внешней обработке(отчете) когда конкретный пользователь откроет ее(его) первый раз система спросит «а ля тополя вы согласны. » жмем да и при дальнейших открытиях система «молчит», позволяя выполнять «опасный» код.

ВнешниеОтчеты.Подключить(ОтчетАдрес, ОтчетИмя, ОтчетСсылка.БезопасныйРежим, ОбъектОписанияЗащиты);

Имя внешней обработки можно получить из метаданных, а остальные параметры мне лень описывать — они тривиальны

Чаще всего можно столкнуться с ошибкой в 1с «установлен безопасный режим» при подключении или обновлении внешней дополнительной обработки. Задача решается за 2-3 минуты.
Для начала, разберемся в природе самой ошибки.

Причина

Вспоминаем, что в 1С Предприятии существует безопасный режим исполнения программного кода. В таком режиме изначально запускаются все внешние отчеты и обработки для безопасного выполнения кода. Если уверены, что обработка чиста от вредоносного кода, то смело отключаем безопасный режим в 1С.

Решение

Необходимо отключить безопасный режим для нашей обработки, в режиме предприятия.

Шаг 1

Прежде всего, необходимо открыть раздел «Все функции». Примечательно, что в последних версиях раздел может называться «функции для технического специалиста». Далее мы открываем обработку «Групповое изменение реквизитов«.

Шаг 2

В обработке выбираем, что будет изменять — Дополнительные отчеты и обработки. Открываем «Все элементы» и устанавливаем отбор нашей обработки. Условие отбора — имя обработки.

Шаг 3

Включаем служебные реквизиты. Для этого переходим в раздел «Дополнительные параметры», открываем Специальные возможности и устанавливаем галку «показывать служебные реквизиты».

Шаг 4

Теперь реквизит «Безопасный режим». Устанавливаем значение «Нет» и подтверждаем действие — нижний угол экрана «Изменить реквизиты». Готово! Таким образом мы убрали ошибку в 1С Установлен безопасный режим.

В результате должно появиться уведомление, что реквизиты были изменены. Осталось перезапустить обработку.

  • Ошибка при вызове loadlibrary msxml3 dll
  • Ошибка при вызове конструктора comобъект не удается найти указанный файл
  • Ошибка при вызове ifcplugin signhashsimple ошибка не определена
  • Ошибка при вызове конструктора comобъект 2147467262 0x80004002 интерфейс не поддерживается
  • Ошибка при вызове ifcplugin create ошибка конфигурации error code 2 version undefined