RLS отрабатывает при присвоении реквизита в коде - как обойти? #557534


#0 by МишельЛагранж
При изменении договора - изменяется ТипЦен в документе: берется из договора присвоением значения реквизита: Если запрещенный тип - возникает ошибка RLS-доступа: недостаточно прав. Как обойти это (без ошибки и не показывать неразрешенное) аналогично как для запросов "ВЫБРАТЬ РАЗРЕШЕННЫЕ"? Обойти неразрешенное - можно вставить в привилегированный модуль это код, и ошибки не будет (RLS не отработает). А вот как нормально обработать эту ошибку??
#1 by Господин ПЖ
повторить условие RLS в привелигерованном модуле
#2 by Ненавижу 1С
смысл делать запрещенным, если он присваивается?
#3 by asady
конфа какая? релиз? платформа?
#4 by МишельЛагранж
эт понятно: повторить RLS-запрос и смотреть - что возвратит. Но это если точно знаешь - какое из ограничений отрабатывает точно. А если нет? в том и дело, что в договоре установлен тип цен Особый, который доступен по RLS не всем. Т.е. нужен другой договор для менеджера с разрешенным ему типом цен для этого контрагента. А сейчас - ПриИзмененииКонтрагента подставляется основной договор, который - содержит ЗАПРЕЩЕННЫЙ тип цен. И выскакивает ошибка, а тип цен - <Объект не найден>. Такой же документ нельзя сохранять в базе. Хотелось бы как-то это цивилизованно обработать и не заставлять менеджера нервничать из-за ошибок и неправильно оформленных доков )
#5 by МишельЛагранж
а разница? везде одинаково ) КА 1.1 (8.2) RLS везде работает/не работает одинаково ))
#6 by Господин ПЖ
>Но это если точно знаешь - какое из ограничений отрабатывает точно. А если нет? вы там подходить к раздаче прав, ролям и RLS подходить более взвешенно не пробовали?
#7 by Господин ПЖ
в конце концов реквизит можно вывести из под действия rls
#8 by Jstunner
"Хотелось бы как-то это цивилизованно обработать и не заставлять менеджера нервничать из-за ошибок и неправильно оформленных доков" менеджеры совсем расслабятся и будут из отдела ИС вить веревки
#9 by МишельЛагранж
конкретно в КА на документ могут накладываться условия по полтора десятка объектов (организации, контрагенты, проекты, цены, подразделения и т.д.), работающие одновременно. в приведен пример конкретного отлова конкретного RLS - известно, что недоступен тип цен, и известно, что при изменении договора как раз тип цен и пишется. Не будешь же остальную типовую наизусть учить - какая процедура где вызывается. это уже получено побочное явление наложения RLS. Основная причина наложения такого RLS - не показывать в списках доки с запретными типами цен, и не давать выбирать запрещенные типы при создании доков. "а зачем нужны программисты? они ж прибыли не приносят!!!" :D
#10 by МишельЛагранж
вся загвоздка в том, что нет механизма обработки:
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С