Имя: Пароль:
1C
1С v8
Создать элемент справочника без права доступа к справочнику.
0 shamannk
 
23.10.12
15:57
История: для удобства и правильности заполнения юзврей была создана обработка которая создает элементы справочника и по ряду условий заполняет реквизиты. Теперь решили этот справочник закрыть (доступ из роли убрали) и создавать в обработки, следовательно права под пользователем на создание и в обработке пропали. Вот как теперь создавать эл. в обработке?
1 ДенисЧ
 
23.10.12
15:58
Вынести код создания в привилегированный модуль
2 GLazNik
 
23.10.12
15:59
ПривилегированныйРежим
3 lxndr
 
23.10.12
15:59
1. оставить неинтерактивные права в роли
2. Выполнять в привелигированном режиме
4 shamannk
 
23.10.12
16:04
Т.е. запихать весь код обработки в этот модуль?
5 lxndr
 
23.10.12
16:05
(4) как угодно. Можно только запись
6 shamannk
 
23.10.12
16:07
(5) А чисто создание можно туда поместить? без записи.
т.е.:
Элемент = МодульПрив.СоздатьЭлемент();
МодульПрив.УстановитьРеквизиты(Элемент,Реквизиты);
МодульПрив.ЗаписатьОбъект(Элемент); //только тут в прив. модуле есть записать()
7 lxndr
 
23.10.12
16:11
(6) с клиента на сервер СправочникОбъект не передашь. Лучше в модуле создать, заполнить, записать и вернуть ссылку.
Еще альтернатива (наверное даже проще) - использовать метод
УстановитьПривилегированныйРежим(...)
8 shamannk
 
23.10.12
16:30
(7) В 8.1 УстановитьПривилегированныйРежим(...) не нашел (
Осталось тогда весь код в модуль пихать.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший