Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
igor-st80
Contributor III
Contributor III

Как разграничить доступ пользователя к данным?

Привет, коллеги!

Можно ли в QV разграничить доступ пользователей к данным подобным образом:

Например: есть данные о продажах товаров с показателями выручка и себестоимость.

Задача состоит в том что бы для определенных товаров пользователь мог видеть все показатели (выручка, себестоимость), а по всем остальным товарам ему была бы доступна только выручка.

у каждого пользователя свой набор товаров, для которых доступны все показатели.

Есть какие-либо решения или идеи?

Спасибо.

23 Replies
Eugeny_Ilyin
Creator II
Creator II

Игорь, а вариант с различными полями для пользователей и обрезкой по OMIT?
В расчетах можно через переменные, в зависимости от пользователя указывать на требуемое поле.

Sergey_Polekhin
Employee
Employee

Игорь, в случае если вы ходите вводить ограничения на доступность данных на уровне скрипта, то есть до того, как пользователь получит доступ к документу, то это означает,что:

  1. Вам необходимо иметь таблицу соответствий пользователей и доступных им групп товаров
  2. Использовать Publisher, который позволит "нарезать" данные по заданной таблице соответствий. Попытки выполнения "нарезки" вручную (путем создания последовательностей команд скрипта) приведут к существенным трудозатратам на создание скрипта и последующее его сопровождение.
igor-st80
Contributor III
Contributor III
Author

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

igor-st80
Contributor III
Contributor III
Author

На текущий момент мы решили вопрос так:

Создали еще одну не зависимую модель данных, содержащую только Выручку и копии всех измерений.

Т.е. в одном документе 2 модели. Одна основная со всеми возможными данными, на которую накладываются ограничения в Section Access и вторая ее копия, на которую не накладываются ограничения в section access и которая содержит только те данные, доступ к которым не должен ограничиваться.

В визуализации: на одном листе данные из основной модели, на втором листе данные из ее копии.

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

Не удобно только, то что фильтры нужно устанавливать для каждого листа по отдельности.

Как плюс еще получили соответствие итоговых показателей выручка, с/с, маржа.

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

Серьезного увеличения трудозатрат на поддержку пока вроде не видно. По памяти qvw вырос на 25% (для нас не критично). Время работы скрипта увеличилось совсем не значительно.

Пользователей этот вариант устроил. А это самое главное.

Всем спасибо за обсуждение! Благодаря вашим идеям мы нашли решение устраивающее нас!