Имя: Пароль:
1C
1С v8
Помогите прописать ограничение RLS
0 Klesk
 
06.06.12
07:08
В документе РКО добавил реквизит Подразделение

Вот исходные права доступа на чтение:

#ПоЗначениямРасширенный( "Документ.РасходныйКассовыйОрдер","Чтение","",
"ЛЕВОЕ СОЕДИНЕНИЕ Документ.РасходныйКассовыйОрдер.РасшифровкаПлатежа КАК Т1
ПО Т.Ссылка = Т1.Ссылка",
"(",
"Организации","Т.Организация","ИЛИ(",
"Организации","Т.ОрганизацияПолучатель","И","Условие","Т.ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ОплатаДенежныхСредствВДругуюОрганизацию)","))И(",
"Кассы","Т.Касса","ИЛИ (",
"Кассы","Т.КассаПолучатель","И","Условие","Т.ХозяйственнаяОперация В (Значение(Перечисление.ХозяйственныеОперации.ВыдачаДенежныхСредствВДругуюКассу),
                                                                   Значение(Перечисление.ХозяйственныеОперации.ОплатаДенежныхСредствВДругуюОрганизацию)))", ")И",
"ХозяйственныеОперации","Т.ХозяйственнаяОперация",
   " И ВЫБОР КОГДА ", "Условие","Т.ХозяйственнаяОперация В (Значение(Перечисление.ХозяйственныеОперации.ОплатаПоставщику),
                                                           Значение(Перечисление.ХозяйственныеОперации.ВозвратОплатыКлиенту))"," ТОГДА ",
           "ГруппыПартнеров","Т1.Партнер",
           
       " КОГДА Т.ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ВыдачаДенежныхСредствПодотчетнику) ТОГДА ",
           "ГруппыФизическихЛиц","Т.ПодотчетноеЛицо",
           
       " КОГДА Т.ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ВыдачаДенежныхСредствВКассуККМ) ТОГДА",
           "КассыККМ","Т.КассаККМ",
       "ИНАЧЕ ИСТИНА КОНЕЦ", "","","", "","","", "","","", "","","", "","","")

Если делаю так (в конце):

#ПоЗначениямРасширенный( "Документ.РасходныйКассовыйОрдер","Чтение","",
"ЛЕВОЕ СОЕДИНЕНИЕ Документ.РасходныйКассовыйОрдер.РасшифровкаПлатежа КАК Т1
ПО Т.Ссылка = Т1.Ссылка",
"(",
"Организации","Т.Организация","ИЛИ(",
"Организации","Т.ОрганизацияПолучатель","И","Условие","Т.ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ОплатаДенежныхСредствВДругуюОрганизацию)","))И(",
"Кассы","Т.Касса","ИЛИ (",
"Кассы","Т.КассаПолучатель","И","Условие","Т.ХозяйственнаяОперация В (Значение(Перечисление.ХозяйственныеОперации.ВыдачаДенежныхСредствВДругуюКассу),
                                                                   Значение(Перечисление.ХозяйственныеОперации.ОплатаДенежныхСредствВДругуюОрганизацию)))", ")И",
"ХозяйственныеОперации","Т.ХозяйственнаяОперация",
   " И ВЫБОР КОГДА ", "Условие","Т.ХозяйственнаяОперация В (Значение(Перечисление.ХозяйственныеОперации.ОплатаПоставщику),
                                                           Значение(Перечисление.ХозяйственныеОперации.ВозвратОплатыКлиенту))"," ТОГДА ",
           "ГруппыПартнеров","Т1.Партнер",
           
       " КОГДА Т.ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ВыдачаДенежныхСредствПодотчетнику) ТОГДА ",
           "ГруппыФизическихЛиц","Т.ПодотчетноеЛицо",
           
       " КОГДА Т.ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ВыдачаДенежныхСредствВКассуККМ) ТОГДА",
           "КассыККМ","Т.КассаККМ",
       "ИНАЧЕ ИСТИНА КОНЕЦ", "Подразделения","Подразделение","", "","","", "","","", "","","", "","","")

ругается на синтаксическую ошибку, как правильно сделать?
1 Deamonicus
 
06.06.12
07:20
"В документе РКО добавил реквизит Подразделение". Тебе нужно теперь по подразделению разграничить права?
2 Klesk
 
06.06.12
07:22
да
3 Klesk
 
06.06.12
07:23
чтобы скрыть для пользователя документы, запрещенного ему подразделения
4 Deamonicus
 
06.06.12
07:28
ну шаблон ограничения какой то уж слишком... Если есть желание и знания, то посиди разберись, куда какие параметры вставить нужно. Но может оказаться, что это ограничение не подойдет для конкретного случая.

Я бы лучше занялся написанием нового шаблона.
5 Klesk
 
06.06.12
07:31
сделал так, вроде работает )

#ПоЗначениямРасширенный( "Документ.РасходныйКассовыйОрдер","Чтение","",

"ЛЕВОЕ СОЕДИНЕНИЕ Документ.РасходныйКассовыйОрдер.РасшифровкаПлатежа КАК Т1
ПО Т.Ссылка = Т1.Ссылка",
"(",
"Подразделения","Т.Подразделение","И(",
"Организации","Т.Организация","ИЛИ(",
"Организации","Т.ОрганизацияПолучатель","И","Условие","Т.ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ОплатаДенежныхСредствВДругуюОрганизацию)",")))И(",
"Кассы","Т.Касса","ИЛИ (",
"Кассы","Т.КассаПолучатель","И","Условие","Т.ХозяйственнаяОперация В (Значение(Перечисление.ХозяйственныеОперации.ВыдачаДенежныхСредствВДругуюКассу),
                                                                   Значение(Перечисление.ХозяйственныеОперации.ОплатаДенежныхСредствВДругуюОрганизацию)))", ")И",
"ХозяйственныеОперации","Т.ХозяйственнаяОперация",
   " И ВЫБОР КОГДА ", "Условие","Т.ХозяйственнаяОперация В (Значение(Перечисление.ХозяйственныеОперации.ОплатаПоставщику),
                                                           Значение(Перечисление.ХозяйственныеОперации.ВозвратОплатыКлиенту))"," ТОГДА ",
           "ГруппыПартнеров","Т1.Партнер",
           
       " КОГДА Т.ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ВыдачаДенежныхСредствПодотчетнику) ТОГДА ",
           "ГруппыФизическихЛиц","Т.ПодотчетноеЛицо",
           
       " КОГДА Т.ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ВыдачаДенежныхСредствВКассуККМ) ТОГДА",
           "КассыККМ","Т.КассаККМ",
       "ИНАЧЕ ИСТИНА КОНЕЦ",  "","","", "","","", "","","", "","","")
6 Klesk
 
06.06.12
11:54
а вообще правильно написал?
7 Мимохожий Однако
 
06.06.12
12:01
Если работает и не тормозит, то правильно. )))