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

1. user712426 22.05.20 09:32 Сейчас в теме
Здравствуйте!
Под нужды предприятия пытаюсь скорректировать отчет (сохранила как внешний отчет) "Унифицированная форма Т-2".
Переименовала его. Прописала, что он внешний:

Функция СведенияОВнешнейОбработке() Экспорт
	
	ПараметрыРегистрации = Новый Структура;
	// МассивНазначений = Новый Массив;
	//МассивНазначений.Добавить("Подсистема.Кадры");
	
	ПараметрыРегистрации.Вставить("Вид", "ДополнительныйОтчет");
	//  ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
	ПараметрыРегистрации.Вставить("Наименование", "Унифицированная форма Т-2_к");       // название в доп. отчетах
	ПараметрыРегистрации.Вставить("Версия", "1.0.3");
	ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина);
	ПараметрыРегистрации.Вставить("Информация", "Унифицированная форма Т-2_к");
	
	ТаблицаКоманд = ПолучитьТаблицуКоманд();
	ДобавитьКоманду(ТаблицаКоманд, "Унифицированная форма Т-2_к", "ВнешнийОтчет2","ОткрытиеФормы");
	
	ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
	
	Возврат ПараметрыРегистрации;
	
КонецФункции

Функция ПолучитьТаблицуКоманд()
	
	Команды = Новый ТаблицаЗначений;
	Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
	Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));
	Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
	Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
	Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
	Возврат Команды;
	
КонецФункции

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
	
	НоваяКоманда = ТаблицаКоманд.Добавить();
	НоваяКоманда.Представление = Представление;
	НоваяКоманда.Идентификатор = Идентификатор;
	НоваяКоманда.Использование = Использование;
	НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
	НоваяКоманда.Модификатор = Модификатор;
	
КонецПроцедуры
Показать


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

В настройку отчета внесены критичные изменения. Отчет не будет сформирован. Установлен безопасный режим. Выполнение операции запрещено
{ОбщийМодуль.ВариантыОтчетов.Модуль(1632)}: ОтчетОбъект.СкомпоноватьРезультат(Результат.ТабличныйДокумент, Результат.Расшифровка);
{ОбщийМодуль.ВариантыОтчетов.Модуль(2654)}: Формирование = СформироватьОтчет(Параметры, Ложь, Ложь);
{(1)}:ВариантыОтчетов.СформироватьОтчетВФоне(Параметры[0],Параметры[1])
{ОбщийМодуль.ОбщегоНазначения.Модуль(4883)}: Выполнить ИмяМетода + "(" + ПараметрыСтрока + ")";
{ОбщийМодуль.ДлительныеОперации.Модуль(1026)}: ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыВызова);
{ОбщийМодуль.ДлительныеОперации.Модуль(406)}: ВызватьПроцедуру(ИмяПроцедуры, ПараметрыЭкспортнойПроцедуры);
{ОбщаяФорма.ФормаОтчета.Форма(1053)}: Результат = ДлительныеОперации.ВыполнитьВФоне(

по причине:
Ошибка исполнения отчета
по причине:
Ошибка при выполнении обработчика - 'ПриКомпоновкеРезультата'
по причине:
В настройку отчета внесены критичные изменения. Отчет не будет сформирован. Установлен безопасный режим. Выполнение операции запрещено
{ВнешнийОтчет.УнифицированнаяФормаТ2_к.МодульОбъекта(84)}: ВызватьИсключение НСтр("ru = 'В настройку отчета внесены критичные изменения. Отчет не будет сформирован.'") + " " + КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
{ОбщийМодуль.ВариантыОтчетов.Модуль(1632)}: ОтчетОбъект.СкомпоноватьРезультат(Результат.ТабличныйДокумент, Результат.Расшифровка);
{ОбщийМодуль.ВариантыОтчетов.Модуль(2654)}: Формирование = СформироватьОтчет(Параметры, Ложь, Ложь);
{(1)}:ВариантыОтчетов.СформироватьОтчетВФоне(Параметры[0],Параметры[1])
{ОбщийМодуль.ОбщегоНазначения.Модуль(4883)}: Выполнить ИмяМетода + "(" + ПараметрыСтрока + ")";
{ОбщийМодуль.ДлительныеОперации.Модуль(1026)}: ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыВызова);
{ОбщийМодуль.ДлительныеОперации.Модуль(406)}: ВызватьПроцедуру(ИмяПроцедуры, ПараметрыЭкспортнойПроцедуры);
{ОбщаяФорма.ФормаОтчета.Форма(1053)}: Результат = ДлительныеОперации.ВыполнитьВФоне(
Показать


При этом под полными правами получается сформировать. А под пользователем нет. Хотя права есть у него необходимые.
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. chg 22.05.20 09:56 Сейчас в теме
А если пользюку убрать "Защита от опасных действий"?
3. user712426 22.05.20 10:37 Сейчас в теме
(2)а где это сделать? просто у юзера этого и так прав полно..
Прикрепленные файлы:
4. user712426 22.05.20 11:48 Сейчас в теме
(2) "защита от опасных действий" у юзера отключена!
5. SeiOkami 3433 22.05.20 12:35 Сейчас в теме
Попробуйте заменить на Ложь

ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина);
6. user712426 22.05.20 14:02 Сейчас в теме
(5)уже заменила

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

и при этом галка "защита от опасных действий" у юзера отключена
7. user712426 22.05.20 14:34 Сейчас в теме
8. FlyVodolaz 22.05.20 15:00 Сейчас в теме
ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
Не будет работать для внешнего отчета (т.е. открываемые через Файл/Открыть). Его нужно подключить в дополнительные отчеты и обработки и оттуда запускать.
Если проблема останется, то смотрите общий модуль
ДополнительныеОтчетыИОбработки.ПодключитьВнешнююОбработку() там БезопасныйРежим может переопределиться
N1ce; user712426; +2 Ответить
9. user712426 22.05.20 15:18 Сейчас в теме
(8)спасибо!
попробую так сделать. но что за путаница в ЗУПе при открытии внешних отчетов происходит?!
т.е. я не смогу его запустить как просто внешний??
10. FlyVodolaz 22.05.20 15:33 Сейчас в теме
(9)
т.е. я не смогу его запустить как просто внешний

Видели в общих модулях конструкции УстановитьПривилегированныйРежим(Истина)? Так вот они не будут работать если вызов идет из внешнего отчета/обработки. Соответственно у пользователя или должны быть права на все эти объекты или нужно запускать через ВнешниеОтчеты.Подключить(<Путь>, <Имя>, <БезопасныйРежим>, <ЗащитаОтОпасныхДействий>). Именно так подключает механизм ДополнительныеОтчеты. Файл/Открыть такого не делает.
11. user712426 22.05.20 15:50 Сейчас в теме
в общем, коллега подсказала: заменить доп отчет Личная карточка этим отчетом. и все заработало. при этом ПараметрыРегистрации.Вставить("БезопасныйРежим", ложь)!!!

а я пробовала просто новый доп. отчет создавать и не работает.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот