|
Привилегированый режим на клиенте | ☑ | ||
---|---|---|---|---|
0
Mr Man
11.08.16
✎
15:03
|
Каким образом на клиенте установить привилегированный режим?
На сервере в установленном прив. режиме я получаю элемент справочника. Но при переходя обратно на клиент пишет что объект не найден. Как установить привилегированный режим на клиенте? &НаКлиенте Процедура РасшПодп_ИВС_Подписать(Команда) ПодписьСотрудника = ПолучитьПодписьСотрудника(Объект.Исполнитель); ДанныеПодписи = РаботаСФайламиВызовСервера.ДанныеФайлаДляОткрытия(ПодписьСотрудника); КонецПроцедуры &НаСервере Функция ПолучитьПодписьСотрудника(Исполнитель) УстановитьПривилегированныйРежим(Истина); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ФайлыСубъектыПерсональныхДанных.Ссылка КАК Файл |ИЗ | Справочник.Файлы.СубъектыПерсональныхДанных КАК ФайлыСубъектыПерсональныхДанных |ГДЕ | ФайлыСубъектыПерсональныхДанных.ФизическоеЛицо = &ФизическоеЛицо"; Запрос.УстановитьПараметр("ФизическоеЛицо", Исполнитель.ФизЛицо); РезультатЗапроса = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать(); ПодписьСотр = Неопределено; Пока ВыборкаДетальныеЗаписи.Следующий() Цикл ПодписьСотр = ВыборкаДетальныеЗаписи.Файл; возврат ПодписьСотр КонецЦикла; КонецФункции |
|||
1
Fragster
гуру
11.08.16
✎
15:05
|
никак
|
|||
2
Mr Man
11.08.16
✎
15:10
|
(1) эх)) и че? из за этого весь код перепиливать?
|
|||
3
Mauser
11.08.16
✎
15:12
|
(2) Конечно. Сначала делать, а потом думать - плохой паттерн.
|
|||
4
Mr Man
11.08.16
✎
15:16
|
(3) млин пошел рефакторинг))
|
|||
5
Aleksey
11.08.16
✎
15:19
|
а что ты на клиенте собрался читать в привилегированный режиме?
|
|||
6
hhhh
11.08.16
✎
15:32
|
(4) ну так
&НаКлиенте Процедура РасшПодп_ИВС_Подписать(Команда) РасшПодп_ИВС_ПодписатьНаСервере(); КонецПроцедуры &НаСервере Процедура РасшПодп_ИВС_ПодписатьНаСервере() УстановитьПривилегированныйРежим(Истина); ПодписьСотрудника = ПолучитьПодписьСотрудника(Объект.Исполнитель); ДанныеПодписи = РаботаСФайламиВызовСервера.ДанныеФайлаДляОткрытия(ПодписьСотрудника); КонецПроцедуры |
|||
7
Mr Man
11.08.16
✎
15:43
|
(6) в док обороте ДанныеПодписи - должно быть на клиенте, ибо
функция ФайлНаходитсяВЛокальномКэшеФайлов() работает на клиенте. ФайлВРабочемКаталоге = ФайлНаходитсяВЛокальномКэшеФайлов( ПараметрыВыполнения.ДанныеФайла, ПараметрыВыполнения.ДанныеФайла.Версия, ПараметрыВыполнения.ПолноеИмяФайла, Истина, Ложь); |
|||
8
hhhh
11.08.16
✎
15:49
|
(7) а что такое ДанныеПодписи? если реквизит формы, то он виден и на клиенте и на сервере. Чего вы нас пуиаете?
|
|||
9
ИС-2
naïve
11.08.16
✎
15:50
|
(1) ошибайтесь. Можно отключить параметры сеанса отвечающие за RLS
|
|||
10
Fragster
гуру
11.08.16
✎
15:58
|
(9) за RLS - да. только это не добавит прав на таблицы, на которые нет прав, например. Ну и "временно" отключать параметры сеанса, отвечающие за RLS - это прям такой копроподход, что даже слов нет.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |