Неофициальный форум пользователей Qlik Sense & Qlikview

Для разработчиков => Вопросы по Qlik Sense & QlikView => Тема начата: bin от 24 июня 2014, 05:36:52

Название: Разграничения доступа прав
Отправлено: bin от 24 июня 2014, 05:36:52
Добрый день.
Прошу помощи профессионалов и заранее извиняюсь за глупый вопрос.
Есть таблица Торговые точки с полями Агент и Адрес, пример:
Торговые точки:
Агент      Адрес
    Иванов    г.Москва
    Петров    г.Волгоград
    Сидоров  г.Владимир

Доступ к файлу ограничен через поле: NTNAME
Как разграничить доступ чтобы один USER видел Адреса по агенту Иванов, другой другого....
Если использовать ограничение доступа по USERID и PASSWORD я использую следующий:
Section Access;
LOAD * INLINE [
    ACCESS, USERID, PASSWORD
    USER, 1, 1
    USER, 2, 2
];
Section Application;
LOAD * INLINE [
USERID, Агент
1, Иванов
2, Петров
];
И все видят адреса по своему Агенту, а если прописать по другому, то файл вообще не откроется:
Section Access;
LOAD * INLINE [
    ACCESS, NTNAME
    USER, 1
];
Section Application;
LOAD * INLINE [
NTNAME, Агент
1, Иванов
];
Название: Re: Разграничения доступа прав
Отправлено: admin от 26 июня 2014, 11:18:33
День добрый.
Почитай про динамическое сокращение данных (глава 29.8 руководства).
Название: Re: Разграничения доступа прав
Отправлено: bin от 27 июня 2014, 11:52:08
Добрый день.
Главу по Безопасности читал всю. Но у меня по данному примеру в руководстве не получилось сделать при загрузке выдает ошибку, и этот вариант я опустил.
Можете для примера моей таблицы "Торговые точки"написать эту функцию
Название: Re: Разграничения доступа прав
Отправлено: admin от 27 июня 2014, 01:12:07
Мне не приходилось сталкиваться с необходимостью разграничивать доступ по значениям, поэтому готовый практический пример не имею под рукой. Надо опытным путем проверить.
Название: Re: Разграничения доступа прав
Отправлено: admin от 09 июля 2014, 01:54:39
Вот рабочий пример из справочного руководства (ошибка в строке RechNo(), правится легко )

section access;

load * inline [
ACCESS, USERID,REDUCTION, OMIT
ADMIN, ADMIN,*,
USER, A,1
USER, B, 2,NUM
USER, C, 3, ALPHA
];

section application;
T1:
load *,
NUM AS REDUCTION;
load
Chr(RecNo()+ord('A')-1) AS ALPHA,
RecNo() AS NUM
AUTOGENERATE 3;