|   |   | 
| 
 | Опять и снова ПривилегированныйРежим... отсутствует | ☑ | ||
|---|---|---|---|---|
| 0
    
        bolobol 06.08.19✎ 15:14 | 
        День добрый!
 Есть код: УстановитьПривилегированныйРежим(Истина); ИмяОбработки = ДополнительныеОтчетыИОбработкиВызовСервера.ПодключитьВнешнююОбработку(СсылкаНаЭлСправочника); // тут отчёт подключается с БезопасныйРежим = Ложь ВнОтчёт= ВнешниеОтчеты.Создать(ИмяОбработки, Ложь, Ложь); ВнОтчёт.СформироватьНаСервере(Результат); // внутри процедуры исчезает ПривилегированныйРежим и установка его в Истина - не имеет эффекта: ПривилегированныйРежим() возвращает Ложь Что за дела? Хелп! Спасибо! | |||
| 1
    
        lodger 06.08.19✎ 15:19 | 
        а ты в каком контексте?
 Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер). | |||
| 2
    
        Вафель 06.08.19✎ 15:20 | 
        во внешней обработке нельзя никак     | |||
| 3
    
        bolobol 06.08.19✎ 15:25 | 
        Пропадает и не устанавливается привилегированный режим при вычислении выражения на закладке СКД Вычисляемые поля. Модуль - серверный     | |||
| 4
    
        lodger 06.08.19✎ 15:31 | 
        (3) в свойствах скд при создании можно разрешить модули
 ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных,, ДанныеРасшифровкиКонсоли, Истина); Инициализировать(<Макет>, <ВнешниеНаборыДанных>, <ДанныеРасшифровки>, <ВозможностьИспользованияВнешнихФункций>) | |||
| 5
    
        bolobol 06.08.19✎ 16:07 | 
        (4) Это именно так и доступно. Странно, а иначе бы вызов функции не происходил бы? А как же автоматически работающие отчёты функции вызывают тогда, те что без строчки кода?     | |||
| 6
    
        Вафель 06.08.19✎ 16:24 | 
        (5) нет таких     | |||
| 7
    
        fisher 06.08.19✎ 17:00 | 
        Не совсем понял, как тут пересекаются привилегированный режим и безопасный.     | |||
| 8
    
        fisher 06.08.19✎ 17:02 | 
        Но как уже сказали, установить привилегированный режим из внешней обработки невозможно - это была бы дырища в безопасности.     | |||
| 9
    
        fisher 06.08.19✎ 17:07 | 
        (3) А как он должен устанавливаться? Если в выражении вызывается процедура серверного общего модуля, в которой устанавливается привилегированный режим, то по-идее все должно работать.     | |||
| 10
    
        Вафель 06.08.19✎ 17:08 | 
        (7) безопасный режим не дает включать приелигерованный даже в модулях конфигурации     | |||
| 11
    
        bolobol 06.08.19✎ 17:09 | 
        Похоже, что с вызываемыми функциями из СКД это не работает, но где б это было написано, чтоб уж точно смириться с этой безысходной мыслью?     | |||
| 12
    
        Вафель 06.08.19✎ 17:10 | 
        ты где устанавливаешь прив режим? в модулях конфы или в отчете?     | |||
| 13
    
        bolobol 06.08.19✎ 17:19 | 
        В отчёте - невозможно, там только функции доступны, а Установить... - процедура     | |||
| 14
    
        fisher 06.08.19✎ 17:21 | 
        (10) То есть, если обработка запущена в безопасном режиме, то я не смогу вызвать функцию общего модуля, которая использует привилегированный режим? Буду знать.     | |||
| 15
    
        Вафель 06.08.19✎ 18:41 | 
        (14) вызвать можешь, но без прив режима     | |||
| 16
    
        fisher 07.08.19✎ 09:14 | 
        (15) Жесть. Я бы предпочел, чтобы падало по эксепшну. Обычно установка прив режима в подобных ситуациях - часть бизнес-логики.     | |||
| 17
    
        Cyberhawk 07.08.19✎ 09:24 | 
        (16) Вот такие пироги     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |