Ошибка при вызове конструктора wsопределения установлен безопасный режим

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

zhabakot

04.12.19

16:23

Всем привет! Такая проблема. Есть обработка, которую надо открывать в БП 3.0 через «файл-открыть». У пользователей с админскими правами все нормально, а у обычных пользователей выходит «Ошибка при вызове конструктора (WSОпределения): Установлен безопасный режим. Выполнение операции запрещено»

Выходит в момент исполнения кода:

WS_Определения_UPDATE = Новый WSОпределения(НастройкиAPI.СервисОбновления);

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

1

Fragster

04.12.19

16:25

у тебя у пользователей разрешено открытие обработок через файл-открыть?

2

Fragster

04.12.19

16:25

самоубийца

3

inkvizitr

04.12.19

16:26

(0) конфигуратор->пользователи->выбираешь нужного пользователя и там в его карточки будет безопасный режим

4

zhabakot

04.12.19

16:35

(1) не у меня, пользователям клиента, которым написал обработку, им так надо

5

Fragster

04.12.19

16:36

(4) сделай так, чтобы обработка встраивалас в ДополнительныеВнешниеОтчетыИОбработки

6

zhabakot

04.12.19

16:36

(3) тесли речь про «Защита от опасных действий», то снятие галки не помогает

7

zhabakot

04.12.19

17:25

(5) деваться не куда, буду делать, хотя думал, что есть решение проще, спасибо!

8

Temai

04.12.19

17:30

(7) Сделать обработку как в (5) совсем не сложно

9

zhabakot

04.12.19

17:38

(8) не подскажешь как?

10

Александр Б

04.12.19

18:22

(9) Открой справочник «Дополнительные отчёты и обработки» и нажми F1. В конце есть пример кода.

11

Temai

04.12.19

18:38

(9) Там всего лишь в модуль объект добавляется несколько процедур, пример поищи в интернете

Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.

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

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

Если Вы доверяете поставщику внешней обработки — Вы можете отключить защиту от опасных действий. Дело в том, что определенный функционал внешней обработки или отчета может требовать отключения безопасного режима (подключение через 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

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

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

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

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

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

Я
   zhabakot

04.12.19 — 16:23

Всем привет! Такая проблема. Есть обработка, которую надо открывать в БП 3.0 через «файл-открыть». У пользователей с админскими правами все нормально, а у обычных пользователей выходит «Ошибка при вызове конструктора (WSОпределения): Установлен безопасный режим. Выполнение операции запрещено»

Выходит в момент исполнения кода:

WS_Определения_UPDATE = Новый WSОпределения(НастройкиAPI.СервисОбновления);

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

   Fragster

1 — 04.12.19 — 16:25

у тебя у пользователей разрешено открытие обработок через файл-открыть?

   Fragster

2 — 04.12.19 — 16:25

самоубийца

   inkvizitr

3 — 04.12.19 — 16:26

(0) конфигуратор->пользователи->выбираешь нужного пользователя и там в его карточки будет безопасный режим

   zhabakot

4 — 04.12.19 — 16:35

(1) не у меня, пользователям клиента, которым написал обработку, им так надо

   Fragster

5 — 04.12.19 — 16:36

(4) сделай так, чтобы обработка встраивалас в ДополнительныеВнешниеОтчетыИОбработки

   zhabakot

6 — 04.12.19 — 16:36

(3) тесли речь про «Защита от опасных действий», то снятие галки не помогает

   zhabakot

7 — 04.12.19 — 17:25

(5) деваться не куда, буду делать, хотя думал, что есть решение проще, спасибо!

   Temai

8 — 04.12.19 — 17:30

(7) Сделать обработку как в (5) совсем не сложно

   zhabakot

9 — 04.12.19 — 17:38

(8) не подскажешь как?

   Александр Б

10 — 04.12.19 — 18:22

(9) Открой справочник «Дополнительные отчёты и обработки» и нажми F1. В конце есть пример кода.

  

Temai

11 — 04.12.19 — 18:38

(9) Там всего лишь в модуль объект добавляется несколько процедур, пример поищи в интернете

TurboConf — расширение возможностей Конфигуратора 1С

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

Я

YaFedor

17.02.19 — 21:45

Имеем:

1С:Предприятие 8.3 (8.3.13.1513)

Розница (базовая), редакция 2.2 (2.2.9.20)

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

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

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

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

{ВнешняяОбработка.ВыгрузкаЗагрузкаДанныхXMLРозница.Форма.Форма.Форма(31)}: Ошибка при вызове конструктора (Файл)

    Файл = Новый Файл(ИмяФайлаВыгрузки);

по причине:

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

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

ponaroshku

1 — 18.02.19 — 04:47

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

В модуле обработке

Должно быть что-то типа

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

mikeA

2 — 18.02.19 — 06:02

(1)+ В РС РежимыПодключенияВнешнихМодулей ещё надо запись сделать и вроде бы ещё профиль безопасности базы настроить.

ildary

3 — 18.02.19 — 06:23

(0) при открытии обработки через Файл-Открыть — она открывается в безопасном режиме вне зависимости от того, что в ней прописано в СведенияОВнешнейОбработке().

YaFedor

4 — 18.02.19 — 08:38

(3) т.е. вообще никак не сделать?

YaFedor

5 — 18.02.19 — 08:39

Должен же быть вариант отладки внешней обработки под неполными правами

МимохожийОднако

6 — 18.02.19 — 08:56

(5) Начал с одного вопроса, а закончил другим. В отладке можно включить режим отладки под тем пользователем, который нужен.

YaFedor

7 — 18.02.19 — 09:28

(6) Ну и что, если нужный пользователь не может открыть обработку?

MaxS

8 — 18.02.19 — 09:31

(0) >Обработка опубликована без безопасного режима

А Вы посмотрите как она опубликована. То, что в самой обработке указано БезопасныйРежим = Ложь; не действует на некоторых БСП.

YaFedor

9 — 18.02.19 — 09:33

(8) Так я посмотрел же. Кроме того — опубликованная она все-таки открывается

ponaroshku

10 — 18.02.19 — 10:02

(5) причем тут права?

Подключаете к отладке своего пользователя

Открываете файл, смотрите

(3) смотря какие права у пользователя

(2) у меня видимо старое бсп, нет такого

YaFedor

11 — 18.02.19 — 10:14

(10) Как пользователь откроет обработку, если она у него не открывается через файл открыть?

ponaroshku

12 — 18.02.19 — 10:30

(11) она не открывается, пишет нарушение прав или ошибку, которая в (0)?

Если нарушение прав — у него прав нет на интерактивное открытие обработок значит

Если как в 0, то уже на этом этапе можно подключить отладку

YaFedor

13 — 18.02.19 — 10:36

(0) Конечно то, что в (0), ты вообще читал?

И что даст откладка на том моменте, который описан в (0) — там все ОК, просто в безопасном режиме половина действий не работает — там нечего отлаживать

ponaroshku

14 — 18.02.19 — 10:46

(13) в ПриСозданииНаСервере

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

И отладкой посмотри значение БезопасныйРежим()

YaFedor

15 — 18.02.19 — 11:18

Вот результат:

{ВнешняяОбработка.ВыгрузкаЗагрузкаДанныхXMLРозница.Форма.Форма.Форма(14)}: Ошибка при вызове метода контекста (УстановитьБезопасныйРежим)

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

по причине:

В данной процедуре/ функции не был установлен безопасный режим

YaFedor

16 — 18.02.19 — 11:19

+

БезопасныйРежим() = Истина

YaFedor

17 — 19.02.19 — 09:12

Появились ли у кого-нибудь варианты решения?

МимохожийОднако

18 — 19.02.19 — 09:20

(17) Какие варианты решения, если у других таких проблем нет?

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

YaFedor

19 — 19.02.19 — 09:34

Вот так «решилась» проблема:

1) Изменил в конфигураторе имя обработки

2) Скопировал основную форму, назначил ее основной формой.

Вуаля, пользователем открывается.

Т.о. где-то в конфигурации хранится список обработок с безопасным режимом открытия.

Вопрос: «где?»

YaFedor

20 — 19.02.19 — 09:35

(18) как и всегда

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

    // Создадим структуру для возврата

    параметрыРегистрации_                    = Новый Структура(«Вид,Назначение,Наименование,Версия,БезопасныйРежим,Информация,Команды,ВерсияБСП»);

    параметрыРегистрации_.Вид                = «ДополнительнаяОбработка»;

    параметрыРегистрации_.Назначение        = «»;

    параметрыРегистрации_.Наименование        = «Обмен данных между магазинами»;

    параметрыРегистрации_.Версия            = «1.0»;

    параметрыРегистрации_.БезопасныйРежим    = Ложь;

    параметрыРегистрации_.Информация        = «Обработка выгружает / загружает данные»;    

    //параметрыРегистрации_.ВерсияБСП            = «2.4.1.84»;

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

    

    ДобавитьКоманду(ТаблицаКоманд,

                    НСтр(«ru = ‘Обмен данных между магазинами’»),

                    «ОткрытьОбработкуОбменаДаннымиМеждуМагазинами»,

                    «ОткрытиеФормы»);

    
    параметрыРегистрации_.Команды            = ТаблицаКоманд;    

    

    // Вернем структуру

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

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

YaFedor

21 — 19.02.19 — 09:39

Второй раз открываешь обработку — все, снова безопасный режим, ничего не работает.

Охренеть

YaFedor

22 — 19.02.19 — 09:54

(18) проблема такая у всех присутствует.

Попробуй, например в Бухгалтерии 3.0 пользователю с правами Бухгалтер, Открытие внешних отчетов и обработок открыть обработку, в которой в ПриСозданийНаСервере будет поиск файлов (например как ниже) и все — та же ошибка про безопасный режим

&НаСервере

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

    

    найденныеФайлы_ = НайтиФайлы(ОбщегоНазначенияКлиентСервер.КаталогФайловойИнформационнойБазы(), «НужныйФайл.txt»);

    Если найденныеФайлы_.Количество() = 0 Тогда

    Иначе

    КонецЕсли;

КонецПроцедуры

МимохожийОднако

23 — 19.02.19 — 09:55

(22) Достаточно добавить права на открытие внешних обработок. Есть такая Группа прав

YaFedor

24 — 19.02.19 — 09:59

(23) Еще раз прочитай (22)

runoff_runoff

25 — 19.02.19 — 10:05

в справке по БСП же все написано..

надо прописывать Разрешения

runoff_runoff

26 — 19.02.19 — 10:06

Сведения.Разрешения.Добавить(РаботаВБезопасномРежиме.РазрешениеНаИспользованиеПривилегированногоРежима(«Читай справку»));

МимохожийОднако

27 — 19.02.19 — 10:20

(24) Код кривой. ИМХО

YaFedor

28 — 19.02.19 — 10:43

(27) Отлично

YaFedor

29 — 19.02.19 — 10:44

(25) Так разрешения прописываются в функции СведенияОВнешнейОбработке.

Эта функция через меню Файлоткрыть не вызывается, следовательно не будет ни на что влиять

Cyberhawk

30 — 19.02.19 — 10:49

Не безопасный режим насиловать надо, а таблицу разрешений у подключаемой обработки. Насиловать неподчалюемую к БСП внешнюю обработку тоже не надо.

Cyberhawk

31 — 19.02.19 — 10:49

*неподключаемую

YaFedor

32 — 19.02.19 — 10:52

(30) Нужно отладить обработку под пользователем с неполными правами. Как это сделать с подключаемой обработкой?

Cyberhawk

33 — 19.02.19 — 10:52

(32) Так же, как для любого другого пользователя

МимохожийОднако

34 — 19.02.19 — 10:54

(32) Добавь в обработку форму для отладки и в неё добавь вызов тестируемых процедур

Cyberhawk

35 — 19.02.19 — 10:56

(34) Ага, ведь это куда проще, чем просто взять и подключаемую обработку вывести в интерфейс целевого пользователя ))

YaFedor

36 — 19.02.19 — 11:00

(33) еще раз — как отладить подключенную обработку? При ее открытии генерируется временный файл и в него записывается обработка, которая будет выполняться. Как в этой обработке точку останова поставить?

Cyberhawk

37 — 19.02.19 — 11:05

(36) Задача ничем не сложнее, чем отладить запрос под нужным пользователем. Просто нужно иметь подходящий инструмент.

YaFedor

38 — 19.02.19 — 11:07

(37) Подскажи как это сделать, я не представляю

Cyberhawk

39 — 19.02.19 — 11:11

(38) До БСП 2.1 какой-то подключаемая обработка вызывалась через временный файл. Нужно было лишь этот временный файл идентифицировать (найти) и открыть в конфигураторе.

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

Cyberhawk

40 — 19.02.19 — 11:12

Накрайняк: нужно чтоб клиент был подключен как предмет отладки к отладчику.

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

YaFedor

41 — 19.02.19 — 11:19

(40) Неа, обработку открыть в конфигураторе не предлагает

YaFedor

42 — 19.02.19 — 11:20

(39) Насчет расширения — не работал с ними еще ни разу. ИР — это что?

YaFedor

43 — 19.02.19 — 11:20

Неужели нет возможности просто отключить этот безопасный режим может через запуск 1с с каким-то параметром?

Cyberhawk

44 — 19.02.19 — 11:22

Cyberhawk

45 — 19.02.19 — 11:28

(43) Дать пользователю административные права — безопасный режим тогда не будет применяться при открытии через Файл

YaFedor

46 — 19.02.19 — 11:30

(45) печально

runoff_runoff

47 — 19.02.19 — 11:40

(46) сделать обработку дополнительной в базе.. и дать соответствующие разрешения.. самое то.. а отладить модно и под полными правами..

YaFedor

48 — 19.02.19 — 11:42

(47) Под полными правами обработка работает идеально. А под неполными валит приложение 1с. Как тут отладить под полными правами

runoff_runoff

49 — 19.02.19 — 12:25

(48) она не будет валить, если установить привилегированный режим..

  

YaFedor

50 — 19.02.19 — 13:03

(49) В коде стоит его установка

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Причина

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

Решение

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

Шаг 1

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

Шаг 2

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

Шаг 3

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

Шаг 4

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

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

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

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

Если Вы доверяете поставщику внешней обработки — Вы можете отключить защиту от опасных действий. Дело в том, что определенный функционал внешней обработки или отчета может требовать отключения безопасного режима (подключение через 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

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

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

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

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

Суть ошибки:
Конфигурация: УТ 11.3.4.31
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(3138)}:
Событие: Отправка.
Объект: Присоединенный файл (Перемещение товаров), к5-47
(e1cib/data/Справочник.ПеремещениеТоваровПрисоединенныеФайлы?ref=90f1000c295916af11e7 ce7c327951c8).
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(4665)}:
Событие: Отправка.
Обработчик: ПриОбработкеПОД.
ПОД: ПеремещениеТоваровПрисоединенныеФайлы.
Объект: Справочник объект: Присоединенные файлы (Перемещение товаров), к5-47.
Ошибка выполнения обработчика.
{ВнешняяОбработка.МодульМенеджераОбмена.МодульОбъекта(50869)}: Ошибка при вызове
конструктора (Файл)
ФайлВременный = Новый Файл(ПолноеИмяФайла);
по причине:
Установлен безопасный режим. Выполнение операции запрещено.

Решение:
В модуле менеджера плана обмена в процедуре ПолучитьВерсииФорматаОбмена установить параметр Безопасный режим = ложь при подключении внешнего модуля менеджера обмена ВнешниеОбработки.Подключить(,,Ложь)

Пример:

ИмяОбработки = Выборка.ПутьКМенеджеруОбмена;
ДанныеОбработки = Новый ДвоичныеДанные(ИмяОбработки);
АдресОбработки = ПоместитьВоВременноеХранилище(ДанныеОбработки);
Если ОбщегоНазначения.ЕстьЗащитаОтОпасныхДействий() Тогда
	ИмяОбработки = ВнешниеОбработки.Подключить(АдресОбработки, , Ложь, ОбщегоНазначения.ОписаниеЗащитыБезПредупреждений());
Иначе
	ИмяОбработки = ВнешниеОбработки.Подключить(АдресОбработки);
КонецЕсли;
МенеджерОбмена = ВнешниеОбработки.Создать(ИмяОбработки);

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

Ошибка 1С

Содержание

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

Для чего существует безопасный режим в 1С

Компания по разработке офисных программ 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.       Почему вообще существует безопасный режим?

2.       Применение функционала при установленном безопасном режиме в 1С

1.   Почему вообще существует безопасный режим в 1С?

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

2.   Применение функционала при установленном безопасном режиме в 1С

В качестве примера рассмотрим ситуацию: мы знаем, что обработка получена из достоверных источников – вирусов нет. Однако при подключении программа выдает вышеупомянутую ошибку. Что делать?

В данном случае нужно поработать с правами доступа, а именно: зайти в раздел «Настройки пользователей и прав», далее перейти в «Профили групп доступа» и «Создать группу». Так мы создадим отдельную роль, которую будем отдавать только тем пользователям, которым нужно работать с данной обработкой. Назовем группу «Использование дополнительных отчётов и обработок» и галочками отметим следующие роли:

·        Интерактивное открытие внешних отчетов и обработок 1С;

·        Использование дополнительных отчетов и обработок 1С.

Интерактивное открытие внешних отчетов

Отмечу, что этот конкретный пример демонстрируется в интерфейсе конфигурации 1С Бухгалтерия версии 3.0.

Далее переходим назад – в меню «Пользователи», где из списка выбираем тех сотрудников, кому придется работать именно с данной обработкой. В карточке каждого из них выбираем пункт «Права доступа» и присваиваем сотруднику одну из созданных ранее ролей. Нажимаем кнопку «Записать».

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

В конфигураторе 1С предприятия переходим в меню «Администрирование», после чего выбираем подменю «Пользователи».

открытие внешних обработок

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

Защита от опасных действий

После этого пользователю нужно будет перезайти в базу.

Также ошибка о безопасном режиме 1С может возникнуть при выполнении внешней обработки по расписанию. Это связано с тем, что по умолчанию не указан пользователь, под которым будет выполнена данная задача. Эта проблема решается в обработке «Регламентные и фоновые задания», где, найдя нужное нам регламентное задание, выбираем пользователя с полными правами из списка «Имя пользователя».

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

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

Кулажевский Сергей Дмитриевич

 +1 

Распечатать

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

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

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

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

Код 1C v 8.2 УП

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

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

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

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

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

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

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

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

Код 1C v 8.2 УП

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

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

Если Вы доверяете поставщику внешней обработки — Вы можете отключить защиту от опасных действий. Дело в том, что определенный функционал внешней обработки или отчета может требовать отключения безопасного режима (подключение через 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С 8.3. Почему она появляется при работе с приложением и что в данном случае делать, чтобы от неё избавиться.

Ошибка 1С

Содержание

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

Для чего существует безопасный режим в 1С

Компания по разработке офисных программ 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С или обновить свою платформу по инструкции из этого видео.

Я
   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 УП

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

Содержание:

1.       Почему вообще существует безопасный режим?

2.       Применение функционала при установленном безопасном режиме в 1С

1.   Почему вообще существует безопасный режим в 1С?

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

2.   Применение функционала при установленном безопасном режиме в 1С

В качестве примера рассмотрим ситуацию: мы знаем, что обработка получена из достоверных источников – вирусов нет. Однако при подключении программа выдает вышеупомянутую ошибку. Что делать?

В данном случае нужно поработать с правами доступа, а именно: зайти в раздел «Настройки пользователей и прав», далее перейти в «Профили групп доступа» и «Создать группу». Так мы создадим отдельную роль, которую будем отдавать только тем пользователям, которым нужно работать с данной обработкой. Назовем группу «Использование дополнительных отчётов и обработок» и галочками отметим следующие роли:

·        Интерактивное открытие внешних отчетов и обработок 1С;

·        Использование дополнительных отчетов и обработок 1С.

Интерактивное открытие внешних отчетов

Отмечу, что этот конкретный пример демонстрируется в интерфейсе конфигурации 1С Бухгалтерия версии 3.0.

Далее переходим назад – в меню «Пользователи», где из списка выбираем тех сотрудников, кому придется работать именно с данной обработкой. В карточке каждого из них выбираем пункт «Права доступа» и присваиваем сотруднику одну из созданных ранее ролей. Нажимаем кнопку «Записать».

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

В конфигураторе 1С предприятия переходим в меню «Администрирование», после чего выбираем подменю «Пользователи».

открытие внешних обработок

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

Защита от опасных действий

После этого пользователю нужно будет перезайти в базу.

Также ошибка о безопасном режиме 1С может возникнуть при выполнении внешней обработки по расписанию. Это связано с тем, что по умолчанию не указан пользователь, под которым будет выполнена данная задача. Эта проблема решается в обработке «Регламентные и фоновые задания», где, найдя нужное нам регламентное задание, выбираем пользователя с полными правами из списка «Имя пользователя».

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

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

Кулажевский Сергей Дмитриевич

Понравилась статья? Поделить с друзьями:
  • Ошибка при вызове конструктора httpсоединение установлен безопасный режим
  • Ошибка при входе на сервер dayz
  • Ошибка при вызове конструктора comобъект класс не зарегистрирован
  • Ошибка при вызове openclipboard vba
  • Ошибка при входе на сайт 502