|
УТ10,3 Как составить условие в RLS
| ☑ |
0
vladimir80
11.02.13
✎
11:54
|
В документе ЗаказПокупателя, при выставлении менеджером подразделения, отличного от того, которому этот манагер принадлежит, необходимо закрыть возможность редактирования. Подскажите как составить условие, но таким образом, чтобы менеджер (подразделение А) мог провести документ(подразделение А) изменив подразделение (подразделение Б), а вот после проведения уже изменять его не мог.
|
|
1
vladimir80
11.02.13
✎
15:11
|
Возможно непонятно указал что требуется... Возможно ли в RLS обратиться к объекту по принципу ЭтотОбъект, чтобы сравнивать значения именно сохраненного объекта, а не его модифицированной версии перед записью?
|
|
2
lordmb
11.02.13
✎
16:37
|
(1) может добавить в проверку свойство "Модифицированность"?
|
|
3
vladimir80
11.02.13
✎
18:36
|
я честно говоря не догадываюсь, где в RLS можно использовать свойство модифицированности, да к тому же еще и при записи. То, что объект будет модифицирован - это и так понятно. Просто условие нужно наложить на последнее зафиксированное состояние объекта.
|
|
4
Лодырь
11.02.13
✎
18:39
|
а обратится к непроведенным документам другого подразделения он может?
|
|
5
vladimir80
11.02.13
✎
18:54
|
да, конечно может. Пока непроведен - делает что хочет, как только провели - редактирование возможно только для своего подразделения. Как вычислить принадлежность к подразделению - не нужно объяснять.
На данный момент просто если делать простейшее условие, то после смены подразделения перед записью документ уже недоступен для менеджера. А должно быть так - поменял подразделение, провел - и после этого недоступен для изменения этим менеджером.
|
|
6
Лодырь
11.02.13
✎
18:59
|
ну так проверяй на совпадение подразделения либо проведенность, нет?
|
|
7
SherifSP
11.02.13
✎
19:02
|
(0) В документе перед записью проверяй на роль, и на не это новый(), если совпадает тогда Отказ = Истина;
|
|
8
SherifSP
11.02.13
✎
19:05
|
+(7) Лучше функцию проверки закинуть в общий модуль и возвращать истину или ложь. Тип так Отказ = тглОбщегоНазначения.ПроверитьПроведение();
|
|
9
SherifSP
11.02.13
✎
19:06
|
+(7) Рлс сильно замедляет работу
|
|