Имя: Пароль:
1C
 
УПП:Ограничение по подразделению
0 Al77
 
11.04.11
15:41
Если в платежках входящих ставлю ограничение по организации или контрагенту - RLS нормально срабатывает. Если добавляю По подразделению - то не показывает ничего
1 Al77
 
11.04.11
15:43
#Если &ИспользоватьОграничениеПоПодразделения #Тогда                                          
        КОГДА НазначениеВидовОбъектовДоступа.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Подразделения)
      ТОГДА ВЫБОР                                        КОГДА (НЕ 1 В
 (ВЫБРАТЬ ПЕРВЫЕ 1
                         1                   ИЗ
                                                       Документ.ПлатежноеПоручениеВходящее.РасшифровкаПлатежа КАК ТабличнаяЧастьДокумента ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Подразделения КАК Подразделения
                                                           ПО
                                                               Подразделения.Ссылка = ТабличнаяЧастьДокумента.ФП ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиПравДоступаПользователей КАК НастройкиПравДоступаПользователей
                                                           ПО
                                                                НастройкиПравДоступаПользователей.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Подразделения)
                                                                 И НастройкиПравДоступаПользователей.Пользователь = НазначениеВидовОбъектовДоступа.ГруппаПользователей
         ГДЕ
                                                       ТабличнаяЧастьДокумента.Ссылка = ТекущаяТаблица.Ссылка
                                                       И НастройкиПравДоступаПользователей.ОбластьДанных ЕСТЬ NULL ))
                                           ТОГДА ИСТИНА
                                       ИНАЧЕ ЛОЖЬ
                                   КОНЕЦ
                           #КонецЕсли
2 Al77
 
11.04.11
15:44
сделала наподобие шаблона ФизЛицо в табличной части. чувствую что-то не так именно в этом месте))
3 Al77
 
11.04.11
15:48
помогите плиииз
4 Al77
 
11.04.11
15:55
ау
5 mm_84
 
11.04.11
15:59
(4) Подразделение в разрешенные ставишь хоть одно пользователям?
6 Al77
 
11.04.11
16:01
конечно. По платежкам исходящим нормально срабатывает. Разница что в платежках входящих надо по подразделению в табличной части
7 Al77
 
11.04.11
16:09
людии
8 Al77
 
12.04.11
09:06
апну - вдруг седня кто ответит)))
9 Aprobator
 
12.04.11
09:38
(1) вообще нечитаемо. Оформи нормально. Левая квадратная скобка 1С Правая квадратная скобка - Текст кода - в квадратных скобках /1С.
10 5 Элемент
 
12.04.11
09:41
А что за версия УПП?
В 1.2 есть ограничения по подразделению
11 Al77
 
12.04.11
09:46
(10) - ограничение есть типовое.Но у нас в платежном поручении входящем добавлен реквизит табличной части. Вот надо ограничение по нему
12 Al77
 
12.04.11
09:50
[1С #Если &ИспользоватьОграничениеПоПодразделения #Тогда                                          
КОГДА НазначениеВидовОбъектовДоступа.ВидОбъектаДоступа =
ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Подразделения)
ТОГДА ВЫБОР  КОГДА (НЕ 1 В
(ВЫБРАТЬ ПЕРВЫЕ 1
 1 ИЗ
Документ.ПлатежноеПоручениеВходящее.РасшифровкаПлатежа КАК
ТабличнаяЧастьДокумента ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Подразделения
КАК Подразделения
ПО Подразделения.Ссылка = ТабличнаяЧастьДокумента.ФП
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиПравДоступаПользователей
КАК НастройкиПравДоступаПользователей
ПО НастройкиПравДоступаПользователей.ВидОбъектаДоступа =
ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Подразделения)
И НастройкиПравДоступаПользователей.Пользователь =
НазначениеВидовОбъектовДоступа.ГруппаПользователей
ГДЕ ТабличнаяЧастьДокумента.Ссылка = ТекущаяТаблица.Ссылка
 И НастройкиПравДоступаПользователей.ОбластьДанных ЕСТЬ NULL ))
      ТОГДА ИСТИНА
 ИНАЧЕ ЛОЖЬ
   КОНЕЦ
#КонецЕсли]1С
13 Al77
 
12.04.11
09:51
(9) - видимо не там скобки поставила)) ну хотя бы все видно нормально
14 kas4info
 
12.04.11
09:55
запросы в RLS отрабатывают по реквизитам шапки. если нужно по табличной части - необходимо дописать
15 Al77
 
12.04.11
09:56
(14) - вот я показываю как дописала. что-то неправильно
16 Al77
 
12.04.11
10:02
ПО Подразделения.Ссылка = ТабличнаяЧастьДокумента.ФП - вот по табличной части. я так понимаю нельзя указать ТекущаяТаблица.РасшифровкаПлатежа[0].ФП
17 Al77
 
12.04.11
10:11
ап
18 kas4info
 
12.04.11
10:12
попробуй в консоли запросов. как отрабатывает твой запрос
19 5 Элемент
 
12.04.11
10:30
#Если &ИспользоватьОграничениеПоКонтрагенты ИЛИ &ИспользоватьОграничениеПоОрганизации ИЛИ &ИспользоватьОграничениеПоПодразделения #Тогда
ТекущаяТаблица
ИЗ
   #ТекущаяТаблица КАК ТекущаяТаблица
       ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РАЗЛИЧНЫЕ
           СоставГруппы.Ссылка КАК ГруппаПользователей
       ИЗ
           Справочник.ГруппыПользователей.ПользователиГруппы КАК СоставГруппы
       ГДЕ
           СоставГруппы.Пользователь = &ТекущийПользователь) КАК ГруппыПользователей
       ПО (ИСТИНА)
ГДЕ
НЕ ГруппыПользователей.ГруппаПользователей ЕСТЬ NULL
И
   (НЕ 1 В
               (ВЫБРАТЬ ПЕРВЫЕ 1
                   1
               ИЗ
                   РегистрСведений.НазначениеВидовОбъектовДоступа КАК НазначениеВидовОбъектовДоступа
                                           
                   #Если &ИспользоватьОграничениеПоКонтрагенты #Тогда
                   ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты КАК Контрагенты
                   ПО Контрагенты.Ссылка = ТекущаяТаблица.Контрагент
                   #КонецЕсли                                                                              
                   
                   ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиПравДоступаПользователей КАК НастройкиПравДоступаПользователей
                       ПО
                           НастройкиПравДоступаПользователей.ОбъектДоступа = ВЫБОР
                                   
                                   #Если &ИспользоватьОграничениеПоКонтрагенты #Тогда
                                   КОГДА НазначениеВидовОбъектовДоступа.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Контрагенты)
                                       ТОГДА ЕСТЬNULL(Контрагенты.ГруппаДоступаКонтрагента, ЗНАЧЕНИЕ(Справочник.ГруппыДоступаКонтрагентов.ПустаяСсылка))
                                   #КонецЕсли
                                   
                                   #Если &ИспользоватьОграничениеПоОрганизации #Тогда
                                   КОГДА НазначениеВидовОбъектовДоступа.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Организации)
                                       ТОГДА ТекущаяТаблица.Организация
                                   #КонецЕсли
                                   
                                   #Если &ИспользоватьОграничениеПоПодразделения #Тогда
                                   КОГДА НазначениеВидовОбъектовДоступа.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Подразделения)
                                       ТОГДА ТекущаяТаблица.Подразделение
                                   #КонецЕсли
                           
                               КОНЕЦ
                               И НастройкиПравДоступаПользователей.ВидОбъектаДоступа = НазначениеВидовОбъектовДоступа.ВидОбъектаДоступа
                               И                              
                               НастройкиПравДоступаПользователей.ОбластьДанных =
                               #Если &ИспользоватьОграничениеПоКонтрагенты #Тогда
                                   ВЫБОР КОГДА НазначениеВидовОбъектовДоступа.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Контрагенты)
                                       ТОГДА ЗНАЧЕНИЕ(Перечисление.ОбластиДанныхОбъектовДоступа.КонтрагентыДанные)
                                   ИНАЧЕ
                                       ЗНАЧЕНИЕ(Перечисление.ОбластиДанныхОбъектовДоступа.ПустаяСсылка)
                                   КОНЕЦ
                               #Иначе                                  
                                   ЗНАЧЕНИЕ(Перечисление.ОбластиДанныхОбъектовДоступа.ПустаяСсылка)
                               #КонецЕсли
                                                                                               
                               И НастройкиПравДоступаПользователей.Пользователь = ГруппыПользователей.ГруппаПользователей
               ГДЕ                
                    НазначениеВидовОбъектовДоступа.ГруппаПользователей = ГруппыПользователей.ГруппаПользователей
                          И НазначениеВидовОбъектовДоступа.ВидОбъектаДоступа В (
                                                                                 ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.ПустаяСсылка)
                                                                                 
                                                                                 #Если &ИспользоватьОграничениеПоКонтрагенты #Тогда
                                                                                 , ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Контрагенты)
                                                                                 #КонецЕсли
                                                                                 
                                                                                 #Если &ИспользоватьОграничениеПоОрганизации #Тогда
                                                                                 , ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Организации)
                                                                                 #КонецЕсли
                                                                                 
                                                                                 #Если &ИспользоватьОграничениеПоПодразделения #Тогда
                                                                                 , ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Подразделения)
                                                                                 #КонецЕсли
                                                                                 
                                                                                 )
               
                   И НастройкиПравДоступаПользователей.ОбъектДоступа ЕСТЬ NULL))
                   
#Если &ИспользоватьОграничениеПоПодразделения #Тогда                                          
И (НЕ 1 В
                   (ВЫБРАТЬ ПЕРВЫЕ 1
                       1 КАК ПолеОтбора
                   ИЗ
                       РегистрСведений.НазначениеВидовОбъектовДоступа КАК НазначениеВидовОбъектовДоступа
                   ГДЕ
                       НазначениеВидовОбъектовДоступа.ГруппаПользователей = ГруппыПользователей.ГруппаПользователей
                       И ВЫБОР
                           КОГДА НазначениеВидовОбъектовДоступа.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Подразделения)
                               ТОГДА ВЫБОР
                                       КОГДА (НЕ 1 В
                                                   (ВЫБРАТЬ ПЕРВЫЕ 1
                                                       1
                                                   ИЗ
                                                       Документ.ПлатежноеПоручениеВходящее.РасшифровкаПлатежа КАК ТабличнаяЧастьДокумента
                                                       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиПравДоступаПользователей КАК НастройкиПравДоступаПользователей
                                                           ПО
                                                               НастройкиПравДоступаПользователей.ОбъектДоступа = ТабличнаяЧастьДокумента.Подразделение
                                                                   И НастройкиПравДоступаПользователей.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Подразделения)
                                                                   И НастройкиПравДоступаПользователей.ОбластьДанных = ЗНАЧЕНИЕ(Перечисление.ОбластиДанныхОбъектовДоступа.ПустаяСсылка)
                                                                   И НастройкиПравДоступаПользователей.Пользователь = НазначениеВидовОбъектовДоступа.ГруппаПользователей
                                                   ГДЕ
                                                       ТабличнаяЧастьДокумента.Ссылка = ТекущаяТаблица.Ссылка
                                                       И НастройкиПравДоступаПользователей.ОбластьДанных ЕСТЬ NULL ))
                                           ТОГДА ИСТИНА
                                       ИНАЧЕ ЛОЖЬ
                                   КОНЕЦ
                           ИНАЧЕ ИСТИНА
                       КОНЕЦ = ЛОЖЬ))
                   
#КонецЕсли
#КонецЕсли