Имя: Пароль:
1C
 
RLS не понимаю условия. Прошу помощи.
, , , ZaOS
0 Wirtuozzz
 
26.01.17
10:42
Коллеги всем доброго времени суток.
Бьюсь с задачей по РЛС, прошу помощи в его скорейшем освоении. Сразу скажу, что до этого никогда с РЛС дел не имел, потому что ни случалось. Так вот вопрос:

Есть условие, я не понимаю как оно отрабатывает, кто может рассказать как оно работает или где про это можно почитать.

#ПоЗначениямИНаборамРасширенный( "Справочник.Файлы","Изменение","",
"",
"ВЫБОР КОГДА ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.Номенклатура)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.МаркетинговыеМероприятия)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.Проекты) ТОГДА ",

    "ПравоИзменения"," Т.ВладелецФайла ",

"КОГДА ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.ВидыСделокСКлиентами) ТОГДА",

    "ПравоИзменения"," Т.ВладелецФайла",

"КОГДА ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.Партнеры) ТОГДА",

    "ГруппыПартнеров","Т.ВладелецФайла","И","ПравоИзменения","Т.ВладелецФайла",

"КОГДА ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.ФизическиеЛица) ТОГДА",

    "ГруппыФизическихЛиц","Т.ВладелецФайла","И","ПравоИзменения","Т.ВладелецФайла",

"КОГДА ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.ПапкиФайлов) ТОГДА ",

    "ПапкиФайлов","Т.ВладелецФайла",

"КОГДА ТипЗначения(Т.ВладелецФайла) = Тип(Документ.ЭлектронноеПисьмоИсходящее)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Документ.ЭлектронноеПисьмоВходящее)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.СоглашенияСПоставщиками)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.СоглашенияСКлиентами)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Документ.КоммерческоеПредложениеКлиенту)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Документ.РегистрацияЦенНоменклатурыПоставщика)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.СделкиСКлиентами)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Документ.ЗаявкаНаРасходованиеДенежныхСредств) ТОГДА",
"Объект","Т.ВладелецФайла",
"ИНАЧЕ ИСТИНА КОНЕЦ",
"","","","","","","","","","","","","","","", "","","","","","", "", "","")


Всем спасибо.
1 Wirtuozzz
 
26.01.17
10:44
Когда записываю файл, приложенный к соглашению с поставщиком возникает ошибка при записи.
2 Wirtuozzz
 
26.01.17
10:45
Из чего делаю вывод, что интересен последний блок

КОГДА ТипЗначения(Т.ВладелецФайла) = Тип(Документ.ЭлектронноеПисьмоИсходящее)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Документ.ЭлектронноеПисьмоВходящее)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.СоглашенияСПоставщиками)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.СоглашенияСКлиентами)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Документ.КоммерческоеПредложениеКлиенту)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Документ.РегистрацияЦенНоменклатурыПоставщика)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.СделкиСКлиентами)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Документ.ЗаявкаНаРасходованиеДенежныхСредств) ТОГДА",
"Объект","Т.ВладелецФайла",
"ИНАЧЕ ИСТИНА КОНЕЦ",

но не понимаю, что значит ТОГДА",
"Объект","Т.ВладелецФайла",
"ИНАЧЕ ИСТИНА КОНЕЦ",

Это значит что ограничения на уровней записей накладываются по правилам ограничений наложенных на справочник Соглашения с поставщиками?
3 Wirtuozzz
 
26.01.17
10:51
Из роли, у которой прописано данное ограничение на изменение, дал права права на работу со справочниками на объекты, указанные в программном коде (1).    
Не помогло.
4 Wirtuozzz
 
26.01.17
10:53
Есть какие нибудь мысли по этому поводу?
5 FIXXXL
 
26.01.17
10:53
(3) посмотри еще права на справочники <ИмяСправочника>ПрикрепленныеФайлы
6 Wirtuozzz
 
26.01.17
10:53
если удаляю ограничение у роли, то соответственно ошибки нет никакой. Все нормально.
7 Wirtuozzz
 
26.01.17
10:54
(5) Права есть.
8 Wirtuozzz
 
26.01.17
10:56
(5) есть права на :
Чтение(с ограничением)
добавление(с ограничением)
изменение(с ограничением)
просмотр
интерактивное добавление
редактирование
интеракт. пометка/снятие пометки на удаление
ввод по строке
9 2dolist
 
26.01.17
10:57
Тебе надо посмотреть что такое #ПоЗначениямИНаборамРасширенный.
В рлс есть...то ли макеты, то ли ещё как-то называются. В общем, там находишь данную конструкцию и куришь какие там поля передаются и что с ними делается дальше.
10 Wirtuozzz
 
26.01.17
10:59
(9) Точно. есть шаблон.

// ПоЗначениямИНаборамРасширенный ( Таблица, Право, Модификатор, ПрисоединяемыеТаблицы, О, В1,П1,О1, В2,П2,О2,..., В(n), П(n), О(n)).
// №  параметра:                          1,     2,           3,                     4, 5,  6, 7, 8,  9,10,11,...,3+n*3,4+n*3,5+n*3 .
// Читается так: "ограничение доступа по наборам и значениям расширенный".
// Параметры:
//     Таблица -   Имя текущей таблицы, например "Документ.ПоступлениеТоваровИУслуг".
//     Право     - Одна из строк "Чтение", "Добавление", "Изменение", "Удаление".
//     Модификатор - изменяет шаблон.
//                 1-й модификтор - строка "НеОграничиватьДоступКГруппам" указывает
//                  безусловно выбирать группы иерархического справочника.
//                 Других модификаторов в этой версии шаблона не предусмотрено.
...
11 Wirtuozzz
 
26.01.17
11:04
(10) мне кажется мы отклоняемся от сути.
12 Wirtuozzz
 
26.01.17
11:11
Отцы 1С где вы?
13 Wirtuozzz
 
26.01.17
11:20
может попробовать взять другую роль, которая есть у пользователя и добавить в нее возможность работы с типами документов указанных в ограничении?
14 Wirtuozzz
 
26.01.17
11:28
Нашел описание в интернете:
#ПоЗначениямИНаборамРасширенный("Справочник.БанковскиеСчета", "", "",

"",

"",

"Условие", "Т.Владелец ССЫЛКА Справочник.Контрагенты", "И",

"Объект", "ВЫРАЗИТЬ(Т.Владелец КАК Справочник.Контрагенты).Владелец", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "")

//Описание
// ПоЗначениямИНаборамРасширенный(Таблица, -, Модификатор, ПрисоединяемыеТаблицы, О, В1,П1,О1, В2,П2,О2,..., В(n), П(n), О(n)).
// № параметра:                         1, 2,           3,                     4, 5,  6, 7, 8,  9,10,11,...,3+n*3,4+n*3,5+n*3.
// Читается так: "ограничение доступа по значениям и наборам расширенный".
// Параметры:
//     Таблица   - Имя текущей таблицы, например "Документ.ПоступлениеТоваровИУслуг".
//     Модификатор - изменяет шаблон.
//                 1-й модификатор - строка "НеОграничиватьДоступКГруппам" указывает
//                  безусловно выбирать группы иерархического справочника.
//                 2-й модификатор - строка "РасширенноеИЛИ" указывает для ограничений,
//                  например, "ПоОрганизациям или ПоУчетнымЗаписям" делать расширенную
//                  проверку, при которой вариант настройки вида доступа в группах доступа
//                  "Все разрешены, без запрещенных" считается, как "Вид доступа не используется".
//                  Если этого модификатора нет, тогда результат проверки Истина, что приводит
//                  к итоговому результату Истина, если "Все разрешены, без запрещенных"
//                  хотя бы по одному из видов доступа (либо ПоОрганизациям, либо ПоУчетнымЗаписям).
//                  Модификатор имеет смысл только при проверке наборов значений доступа.
//                  Можно использовать комбинации модификаторов: "НеОграничиватьДоступКГруппам",
//                  "РасширенноеИЛИ", "НеОграничиватьДоступКГруппам,РасширенноеИЛИ".
//                 Других модификаторов в этой версии шаблона не предусмотрено.
//     ПрисоединяемыеТаблицы - текст присоедиения дополнительных таблиц на языке запросов, например,
//                 "ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.АвансовыйОтчет.ОплатаПоставщикам КАК Т1
//                  ПО Т.Ссылка = Т1.Ссылка".
//                 Присоединение позволяет указать поля таблицы ОплатаПоставщикам, как поля основной таблицы
//                  для проверки их значений, как значений основной таблицы.
//                 Следует помнить, что при размножении строк в результате соединения, достаточно чтобы
//                  всего одна строка прошла условия проверки, т.е. результаты проверки строк объединяются по "ИЛИ".
//     О         - Начальные скобки "(".
//     В(n)      - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения
//                  производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц",
//                  чем использовать несколько блоков параметров, с одним и тем же именем поля.
//                  Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения"
//                  можно использовать только отдельно.
//                 Когда В(n) = "Условие" (или ""), Тогда П(n) содержит строку условия на языке запросов, например
//                   "Т.Автор = &АвторизованныйПользователь",
//                   "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы.
//                 Когда В(n) = "ПравоЧтения" ИЛИ "ПравоИзменения",
//                   выполняется проверка наличия права на таблицу значения Т.П(n).
//                 Когда В(n) = "Объект" (или " "), то
//                   когда есть запись зависимости прав в регистре сведений ЗависимостиПравДоступа тогда
//                     выполняется проверка права чтения Т.П(n) и наборов значений доступа
//                     в регистре сведений НаборыЗначенийДоступа, считываемых по ссылке Т.П(n) для права чтения;
//                   иначе используется стандартное правило:
//                     когда Право = "Чтение" тогда выполняется проверка права чтения Т.П(n) и наборов значений доступа
//                       в регистре сведений НаборыЗначенийДоступа, считываемых по ссылке Т.П(n) для права чтения;
//                     когда Право = "Изменение" тогда выполняется проверка права изменения Т.П(n)
//                       и наборов значений доступа, считываемых по ссылке Т.П(n) для права изменения.
//     П(n)     - Поле проверяемого значения с псевдонимом, например "Т.Организация",
//                кроме случая В(n) = "Условие" (или "").
//     О(n)      - Логические операции "И", "ИЛИ" в сочетании с скобками "(", ")".
//  Примечение: максимальное количество одновременно проверяемых значений полей можно увеличить, изменив шаблон, но
// необходимо будет указывать все параметры шаблона, т.е. указывать пустые строки, когда количество полей меньше максимального.
//  Шаблон имеет структуру:
//     <Соединение по таблице1>  <Соединение по таблице2>  ... <Соединение по таблице(m)>
//     <Общая часть условий> <Условие по группе параметров 1> И/ИЛИ <Условие по группе параметров 1> И/ИЛИ ... <Условие по группе параметров(n)>
//  Пример:
//      ПоЗначениямИНаборамРасширенный("ЖурналДокументов.СкладскиеДокументы", "", "",
//      "",
//      "",
//      "Объект","Т.Ссылка","И",
//      "Объект","Т.ОсновнойДокумент","", "","","", ...)
15 2dolist
 
26.01.17
11:36
ой много букав
16 Wirtuozzz
 
26.01.17
12:20
(15) Да толку то от этих букв, все равно не понятно
17 Wirtuozzz
 
26.01.17
12:20
(15) Да толку то от этих букв, все равно не понятно.
18 Wirtuozzz
 
26.01.17
12:42
Зубры 1с поделитесь мозгами плииииииииииз. Хочу понять что там происходит, т.к. это уже приобрело спортивный интерес
19 Wirtuozzz
 
26.01.17
13:24
Просто помочь никто не может? или я чушь пишу?
20 Wirtuozzz
 
26.01.17
13:30
хоть посочувствуйте чтоли))))
21 mistеr
 
26.01.17
13:32
(19) Может, поможет: http://catalog.mista.ru/public/288530/
22 1sanekmaloi1
 
26.01.17
13:36
А че не так то?Читаешь описание шаблона и вкуриваешь, не понятно чем помочь то?
23 Wirtuozzz
 
26.01.17
13:43
(22) как отрабатывается код:
КОГДА ТипЗначения(Т.ВладелецФайла) = Тип(Документ.ЭлектронноеПисьмоИсходящее)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Документ.ЭлектронноеПисьмоВходящее)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.СоглашенияСПоставщиками)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.СоглашенияСКлиентами)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Документ.КоммерческоеПредложениеКлиенту)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Документ.РегистрацияЦенНоменклатурыПоставщика)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Справочник.СделкиСКлиентами)
    ИЛИ ТипЗначения(Т.ВладелецФайла) = Тип(Документ.ЗаявкаНаРасходованиеДенежныхСредств) ТОГДА",
"Объект","Т.ВладелецФайла",
"ИНАЧЕ ИСТИНА КОНЕЦ",

Когда я пытаюсь добавить файл к соглашению с поставщиком.
Что значит ТОГДА",
"Объект","Т.ВладелецФайла",
"ИНАЧЕ ИСТИНА КОНЕЦ",  ?

Т.е. получается что условие накладывается из РЛС к соглашению с поставщиком?
24 Andreyyy
 
26.01.17
13:46
В документации к БСП хорошо разжевано.
25 Wirtuozzz
 
26.01.17
13:49
можно ссылку на документацию к БСП?
26 Wirtuozzz
 
26.01.17
13:49
и в какой версии БСП в документации все хорошо разжевано?
27 Wirtuozzz
 
26.01.17
13:52
Как найти то место в документации?
28 Wirtuozzz
 
26.01.17
14:09
В общем все как обычно, все просто, только никто ничего не понимает.
29 Wirtuozzz
 
26.01.17
14:16
up
30 Wirtuozzz
 
26.01.17
14:20
появляется желание создать роль, только без рлс, и назначить ее пользователю. Вопрос это конечно же решит, но я так и не получу ответ на свой вопрос. Что тут происходит?
31 Wirtuozzz
 
26.01.17
14:32
по какому принципу система понимает сколько параметров должно быть? я не могу даже поменять шаблон, если я комментирую часть, то он ругается, говорит что неверное количество параметров.
32 FIXXXL
 
26.01.17
15:21
(31) в Соглашении тоже РЛС с похожей городушкой?
33 Wirtuozzz
 
26.01.17
15:33
(32) Да-да-да
34 Wirtuozzz
 
26.01.17
15:33
(33) Имеете ввиду той же роли?
35 Wirtuozzz
 
26.01.17
15:35
Утой роли, у которой написано ограничение в (0), назовем роль добавление файла.

У этой роли, нет вообще прав на работу с справочником Соглашения с поставщиком, но есть другие роли, которые позволяют работать с справочником Соглашения с поставщиком.
36 Wirtuozzz
 
26.01.17
15:56
Andreyyy, есть мысли?
37 Wirtuozzz
 
26.01.17
15:58
FIXXXL, подкинь идейку куда капнуть.
Сейчас голова остынет буду ковырять в режиме пользователя, смотреть что там за ограничения по партнерам и группам партнеров
38 FIXXXL
 
26.01.17
16:06
(37)
//                 Когда В(n) = "Объект" (или " "), то

//                   когда есть запись зависимости прав в регистре сведений ЗависимостиПравДоступа тогда
//                     выполняется проверка права чтения Т.П(n) и наборов значений доступа

смотри РС ЗависимостиПравДоступа, я не помню что там наворочено
39 Wirtuozzz
 
26.01.17
16:37
(38) СПС Бро!
40 Wirtuozzz
 
27.01.17
14:04
(38) Такого РС в базе нету (((9
41 Wirtuozzz
 
27.01.17
14:04
а жаль
42 FIXXXL
 
27.01.17
14:34
(41) значит БСП перепилили, а коммент старый
43 Wirtuozzz
 
27.01.17
14:48
(42)  печаль. В общем сейчас начала еще одну попытку победы это Г"вна. Буду добиваться что бы пользователь мог иметь все права на подчиненные объекты. Если не получится, то буду опять спамить
44 Wirtuozzz
 
27.01.17
15:15
Ваще бред какой то.

Сейчас нашел соглашение с поставщиком, попытался добавить файл - фиг вам, потом под тем же пользователем записал соглашения и О ЧУДО! Файл добавился. это просто жесть какая то!
45 FIXXXL
 
30.01.17
09:54
(44) мммм.... там по подписке в какой-нить РС РЛСный с измерениями Объект-Пользователь запись добавляется?
Заведи новое соглашение, что б без доступа, перезапиши, сделай глобальный поиск по ссылке на соглашение
46 Wirtuozzz
 
31.01.17
16:18
На самом деле, при записи создавалась запись в РС "Наборы значений доступа", если записи нет, то не прикладывался файл.

(45) БИНГО! Спасибо огромное за ваши советы.

Вообще, всем спасибо за участие!

(38) видимо у вас новое название РС, его я не нашел, зато нашел РС "Наборы значений доступа".

ps сначала регистр нашел, потом уже в ветку зашел. красавчик!