Имя: Пароль:
1C
1С v8
УНФ безопасный режим внешней обработки
,
0 pups777
 
31.01.19
11:26
Добрый день.такая проблема.есть УНФ.есть внешняя обработка.Открываю через файл-открыть-понятное дело работает.Обработка с сайта тянет заказы в 1с.Добавил обработку в базу УНФ,поставил регламентное задание.Режим был не безопасный. Рег задание пыталось запуститься но в журнале регистрации выдавало вопрос запускать ли скрипт JSON?
Открыл обработку и в месте :
сделал вот так.

    ИнформацияОКонтексте = _ПолучитьИнформациюОКонтекстеВыполнения();
    
    РегистрационныеДанные = Новый Структура;
    РегистрационныеДанные.Вставить("Наименование", "Обмен с личным кабинетом");    
    РегистрационныеДанные.Вставить("Информация", "Обмен с личным кабинетом");
    РегистрационныеДанные.Вставить("Версия", ИнформацияОКонтексте.ВерсияДрайвера);
    РегистрационныеДанные.Вставить("Вид", "ДополнительнаяОбработка");    
    РегистрационныеДанные.Вставить("БезопасныйРежим", Истина); //тут поменял было ложь//!!!!!!!!!

далее нашел функцию и в ней с ЛОЖЬ поменял НА ИСТИНА значение режима

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

Обработка запускается но выдает ошибку:
Команда ЗагрузкаДанных: Ошибка выполнения:
{ВнешняяОбработка.ОбменСЛичнымКабинетом.МодульОбъекта(3223)}: Ошибка вызова конструктора (Файл)
    Файл = Новый Файл(ПолучитьИмяВременногоФайла());
из за:
Установлен безопасный режим. Выполнение операции запрещено!


меняю на:

    Возврат ВнешниеОбработки.Создать(ПолноеИмяФайла, Ложь);//!!!!!

та же ошибка
1 aleks_default
 
31.01.19
11:34
У тебя же все по-русски написано. Безопасный режим включен!
2 OldCondom
 
31.01.19
11:35
ВнешниеОбработки.Создать() не?
3 OldCondom
 
31.01.19
11:35
+ к (2) там же в параметре БезопасныйРежим.
4 pups777
 
31.01.19
11:54
(2)

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

КонецФункции
5 pups777
 
31.01.19
12:04
(2)Возврат ВнешниеОбработки.Создать(ПолноеИмяФайла, Истина);
есть.ставил и ложь и истину все равно та же ошибка
6 Вафель
 
31.01.19
12:06
есть безопасный режим, а есть защита от опасных действий.
и это разные вещи
7 OldCondom
 
31.01.19
12:08
А что с правами службы 1С?
8 Вафель
 
31.01.19
12:09
у тебя случайно внешняя обработка не в другой внешней создается?
9 pups777
 
31.01.19
12:13
(8)нет.Возврат ВнешниеОбработки.Создать один метод в модуле
10 OldCondom
 
31.01.19
12:13
так, обработка ругается в момент создания файла. Смотри права.
11 pups777
 
31.01.19
12:14
(7) (10)где искать подскажите.служба работает
12 Вафель
 
31.01.19
12:15
но почему ИСТИНА

Возврат ВнешниеОбработки.Создать(ПолноеИмяФайла, Истина);
13 pups777
 
31.01.19
12:15
(6)это как я понимаю у пользователя на форме в конфигураторе.снял пробую
14 pups777
 
31.01.19
12:19
(13)та же ошибка.ищу дальше
15 pups777
 
31.01.19
12:20
(12)пробовал и ЛОЖЬ и ИСТИНА.ошибка сохранилась.понимаю что ЛОЖЬ должна стоять..так попробовал для успокоения
16 pups777
 
31.01.19
12:20
(10) где копать права?
17 pups777
 
31.01.19
12:21
(10) ругается на
    // "КаталогКэша"
    Файл = Новый Файл(ПолучитьИмяВременногоФайла());
18 pups777
 
31.01.19
12:22
в связи с тем что установлен безопасный режим.
19 OldCondom
 
31.01.19
12:23
от кого служба одноэс запущена
20 pups777
 
31.01.19
12:26
(19)вход от имени Локальная система.от учетки винды
21 Cyberhawk
 
31.01.19
12:28
Херово
22 Вафель
 
31.01.19
12:30
это никак не должно влиять на ошибку из (0)
23 pups777
 
31.01.19
12:30
(21)не то слово
24 pups777
 
31.01.19
12:31
где этот режим включается не пойму.вверху его включил только
    РегистрационныеДанные.Вставить("Версия", ИнформацияОКонтексте.ВерсияДрайвера);
    РегистрационныеДанные.Вставить("Вид", "ДополнительнаяОбработка");    
    РегистрационныеДанные.Вставить("БезопасныйРежим", Истина);//тут поменял было ложь//!!!!!!!!!
чтоб регламен запускался.
25 pups777
 
31.01.19
12:34
если ставлю Ложь в регистрации то в журнале пишет Режим безопасности НЕТ и далее ошибка

предупреждение безопасности

Открывается "JSON" из файла "C: \ Windows \ Temp \ JSON.epf".

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

Позволить открывать этот файл?

Хотя регламент запускается
26 Вафель
 
31.01.19
12:36
(25) а вот это уже защита от опасных действий
27 Вафель
 
31.01.19
12:36
сними галку у пользователя рег задания. если пустой, то назначь
28 Cyberhawk
 
31.01.19
12:40
Да просто отключи защиту от опасных действий для инфобазы или для всех инфобаз. Только не забудь это сделать отдельно для клиентского хоста и для сервера приложений
29 pups777
 
31.01.19
12:46
(27)база серверная не файловая
30 Вафель
 
31.01.19
12:47
(29) в чем отличие для данного случая?
31 pups777
 
31.01.19
13:38
(30)Спасибо друг!!!!всем остальным так же большое спасибо