|
зачем УстановитьПривилегированныйРежим() в клиент-серверном варианте | ☑ | ||
|---|---|---|---|---|
|
0
MaxS
02.12.10
✎
10:04
|
Для управления привилегированным режимом предназначен метод глобального контекста
УстановитьПривилегированныйРежим(), который позволяет включать или выключать привилегированный режим. ВНИМАНИЕ. В клиент-серверном варианте вызов метода не оказывает влияния при работе на стороне клиента. По умолчанию привилегированный режим выключен. Вопрос. А зачем нужен этот режим? какая польза, если в файловом работает, в серверном нет? |
|||
|
1
Fragster
гуру
02.12.10
✎
10:06
|
прочитайте еще раз то, что после "ВНИМАНИЕ"
|
|||
|
2
MaxS
02.12.10
✎
10:09
|
(1) зачем в платформу вводить такие половинчатые решения?
В СП 8.2.12 написано так: Описание: В файловом варианте информационной базы или на сервере в клиент-серверном варианте информационной базы управляет (включает или выключает) привилегированный режим исполнения кода, аналогичный режиму работы кода привилегированных модулей. (0) взял из какого-то сайта |
|||
|
3
MaxS
02.12.10
✎
10:11
|
о! спасибо, научился читать. если выполняется на сервере, тогда работает. ;)
|
|||
|
4
5 Элемент
02.12.10
✎
10:18
|
(3) вообще-то он только на сервере и выполняется.
|
|||
|
5
MaxS
02.12.10
✎
10:34
|
Создал подписку на событие, событие ОбработкаПроведения
В толстом клиенте этот модуль выполняется на клиенте. И как Источник (документ объект) обработать в привилегированном режиме, если общий модуль не привилегированный? передать мутабельное значение в привилегированный модуль нельзя, УстановитьПривилегированныйРежим() тоже нельзя. |
|||
|
6
Defender aka LINN
02.12.10
✎
10:42
|
(5) И как же ты его собрался обрабатывать, что тебе привилегированный режим потребовался?
|
|||
|
7
MaxS
02.12.10
✎
10:51
|
(5) объект нужно передать в типовой модуль
НаборДвиженийВзаиморасчеты.КонтрольОстатков(ДокументОбъект, "ДокументыРасчетовСКонтрагентом", СтруктураШапкиДокумента, Источник.мСтруктураПараметровВзаиморасчетов, ЕстьОшибка, Заголовок, РежимПроведенияДокумента.Оперативный, "СуммаВзаиморасчетов"); |
|||
|
8
MaxS
02.12.10
✎
11:11
|
(6)+(7) там разные хитрости. в СтруктураШапкиДокумента подставляются данные другого договора того же контрагента но другой организации, на которую у пользователя нет прав.
Список договоров можно получить из соседнего привилегированного модуля, а документОбъект передать в процедуру проверки остатков в привилегированном режиме не получается. В худшем случае придётся тянуть все проверки в свой модуль. |
|||
|
9
5 Элемент
02.12.10
✎
11:55
|
Заинтересовал этот вопрос "В толстом клиенте этот модуль выполняется на клиенте".
Проверил и вот что получилось в клиент-серверном варианте в толстом клиенте: - модуль выполняется на сервере, если проведение из управляемой формы. - модуль выполняется на клиенте, если проведение из обычной формы. |
|||
|
10
Defender aka LINN
02.12.10
✎
11:58
|
(8) " а документОбъект передать в процедуру проверки остатков в привилегированном режиме не получается" - а для нахрена его передавать в эту процедуру?
|
|||
|
11
MaxS
02.12.10
✎
12:16
|
(10) хм, Ссылку проглотил. спасибо за мысль. Видимо я сегодня поспешил и не глубоко копал. ;)
но там есть такая часть кода: ЗаполнениеДокументов.КурсДокумента(ДокументОбъект... а вдруг в Объекте данные отличаются от Ссылки? (9) да, вот такая засада |
|||
|
12
Defender aka LINN
02.12.10
✎
12:22
|
(11) При проведении отличаться не должны.
|
|||
|
13
MaxS
02.12.10
✎
12:57
|
(12) тоже так думаю, но допустим есть проведенный документ. пользователь открывает, меняет данные, например тип цен. запускает перепроведение, получает ошибку(отказ), не записывает документ и он остаётся таким же как был до повторной попытки проведения.
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |