Имя: Пароль:
1C
1С v8
отчет СКД: получение данных другой базы и наложение RLS
0 kittystark
 
12.09.18
17:47
есть отчет получающий данные из другой базы через Web-сервисы под спец.пользователем с полными правами, на входе имеем из 2-ой базы ТЗ со всеми данными

как натравить RLS на эти данные?
1 kittystark
 
12.09.18
17:48
вар1: пробежаться по строкам ТЗ и запрограммированным алгоритмом выкосить не нужное
2 kittystark
 
12.09.18
17:49
вар2: настроить RLS во 2-ой базе и запускать обращение к web-сервису под этим-же пользователем 1-ой базы

возникает геммор с паролями...
3 kittystark
 
12.09.18
17:50
собственно кто что предложит ?
4 Realist_x1
 
12.09.18
17:51
вар2 + вин авторизация = нет геморроя с паролями, если только это останавливает
5 kittystark
 
12.09.18
17:53
(4) базы лежат на двух разных, разнесенных географически, серверах
как быть с win-авторизацией?
6 kittystark
 
12.09.18
18:07
и еще к тому же используем апач, это что придется на IIS переползать ?
7 Fragster
 
гуру
12.09.18
18:10
кроме (2) нет правильного варианта
8 Fragster
 
гуру
12.09.18
18:10
ну или превратить это все в РИБ и делать отчт по своим данным со своим РИБ
9 Fragster
 
гуру
12.09.18
18:10
со своим РЛС
10 Fragster
 
гуру
12.09.18
18:12
ну или если данные транслируются в ТЗ, которая запихивается в качестве источника данных РЛС, а не прямо готовый отчет прилетает из другой базы, то можно сделать еще один набор данных-запрос с разрешенными элементами справочника, и к нему уже прилеплять "полный" источник данных (закладка соединения наборов данных).
11 Fragster
 
гуру
12.09.18
18:13
или отправлять "фильтр" с разрешенными элементами в веб сервис, чтобы он вернул уже отфильтрованную таблицу
12 Fragster
 
гуру
12.09.18
18:13
кстати, проблему паролей можно обойти
13 Fragster
 
гуру
12.09.18
18:14
если не хочется плодить пользователей, то можно сделать одного пользователя с нужными ограниченными правами и устанавливать в веб сервисе у него параметры сеанса, к которым привязан RLS.
14 Вафель
 
12.09.18
18:20
нужен именно рлс или просто отбора будет достаточно?
15 kittystark
 
12.09.18
18:23
(10) можно сделать еще один набор данных-запрос с разрешенными элементами справочника, и к нему уже прилеплять "полный" источник данных >

а вот это уже классная идея!

(12) ну да, хэш от хэша и т.д., но вариант с временной подменой как это сделано в инструментах разработчика я рассматривал самым первым, но это топорный метод
16 kittystark
 
12.09.18
18:27
в основной базе RLS настроен на каждого пользователя на регистр Продажи по клиентам, по отделам, по номенклатуре
со всяким производными комбинациями И / ИЛИ

повторять отборами в СКД не хотелось бы, хотя различных вариантов штук шесть
17 kittystark
 
12.09.18
18:56
(10) встал вопрос: как на вкладке связей наборов данных реализовать ВНУТРЕННЕЕ соединение вместо левого ?

ведь из основной базы можно получить, например, список из 100 разрешенных клиентов, а в полученной из 2-ой базы ТЗ из 500 клиентов допустимыми будут, к примеру, 10

получим 90 контрагентов с пустыми данными...
а хотелось бы их отсечь
18 kittystark
 
12.09.18
18:57
как вариант запихнуть ТЗ в пакетный запрос с менеджером временных таблиц и там уже делать внутреннее соединение
19 kittystark
 
14.09.18
09:23
не стал я заморачиваться и реализовал подход по совету из (13)
спасибо тебе добрый человек!