Имя: Пароль:
1C
1С v8
Программное проведение документа как бы под полными правами!
,
0 cheat
 
11.06.13
17:32
Комплексная 1.8.2
У пользователя запрет на проведение документа (т.е. может только Записать), но необходимо при тех же правах, при проведении этого документа программно (в справочнике с определённым статусом, создаётся этот документ) как то дать провести этот документ под текущим пользователем. Вопрос: как?
1 Жирафка
 
11.06.13
17:33
(0) серверная? тогда можно использовать УстановитьПривелигированныйРежим)()
2 cheat
 
11.06.13
17:35
(1) Да клиент-сервер
3 Жирафка
 
11.06.13
17:36
(2) еще можно разрешить программное проведение и запретить интерактивное
4 mikecool
 
11.06.13
17:37
использовать разные ОМ для формирования движений - обычный и привелигированный
5 mikecool
 
11.06.13
17:38
+4 вот только с вызовом привелегированного засада - вызовы из него дальше идут с полными привелегиями
6 cheat
 
11.06.13
17:41
(1) написано что его можно использовать только НаСервере а если у меня не УпрФорма справочника а обычная и вызываю я это проведение в ПриЗаписи() в модуле справочника и там не указано НаКлиенте/НаСервере данная процедура то проканает сия функция "привелегий"?
7 Mitriy
 
11.06.13
17:42
у документа свойства есть привилегированный при проведении и при отмене проведения...
8 Жирафка
 
11.06.13
17:43
(6)Модуль объекта компилируется исключительно на сервере
9 cheat
 
11.06.13
17:44
всем спасибо, буду пробовать.
10 Mitriy
 
11.06.13
17:44
ПривилегированныйРежимПриПроведении (PrivilegedPostingMode)
Использование:

Только чтение.
Описание:

Тип: Булево.
Устанавливает возможность использования привилегированного режима при проведении документа. Если свойство установлено в значение Истина, то проведение документа будет всегда выполняться в привилегированном режиме (на сервере и в файловом варианте).

Доступность:

Сервер, толстый клиент, внешнее соединение.
Примечание:

Если проведение документа выполняется на клиенте в клиент-серверном варианте, то привилегированный режим не устанавливается.
11 cheat
 
11.06.13
17:52
При
Попытка
           УстановитьПривилегированныйРежим(Истина);
           ДокКорректировки.Записать(РежимЗаписиДокумента.Проведение);
           УстановитьПривилегированныйРежим(Ложь);
       Исключение
           ОбщегоНазначения.СообщитьОбОшибке(ОписаниеОшибки(),Отказ);
       КонецПопытки;
к сожалению выдаёт:
Ошибка при вызове метода контекста (Записать): Нарушение прав доступа!
Ошибка при вызове метода контекста (Записать): В данной транзакции уже происходили ошибки!
(((
12 Mitriy
 
11.06.13
17:53
(11) потому что на клиенте проводит... надо делать на сервере...
13 cheat
 
11.06.13
17:57
(12) а как же тогда (8) ?
14 Mitriy
 
11.06.13
18:03
(13) это в управляемом режиме так... а в обычно (12) по умолчанию...
15 Dethmont
 
11.06.13
18:36
Ответ дали еще в (4)
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший