powered by simpleCommunicator - 2.0.31     © 2024 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Access 2019 - SQL Server - Функции
12 сообщений из 12, страница 1 из 1
Access 2019 - SQL Server - Функции
    #40133722
JDV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый час! Подскажите как передать функции параметры из Access 2019 - SQL Server в
этом месте
Код: sql
1.
WHERE @SalesRep = USER_NAME() OR USER_NAME() = 'Manager';  



по сути мне нужно передать список пользователей, которым разрешен доступ
реализую такое
https://docs.microsoft.com/ru-ru/sql/relational-databases/security/row-level-security?view=sql-server-ver15

может кто сталкивался ... подскажите ... Благодарю за ранее!

вся функция целиком ... ниже

Код: sql
1.
2.
3.
4.
5.
6.
7.
CREATE FUNCTION Security.tvf_securitypredicate(@SalesRep AS nvarchar(50))  
    RETURNS TABLE  
WITH SCHEMABINDING  
AS  
    RETURN SELECT 1 AS tvf_securitypredicate_result
WHERE @SalesRep = USER_NAME() OR USER_NAME() = 'Manager';  
GO
...
Рейтинг: 0 / 0
Access 2019 - SQL Server - Функции
    #40133737
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JDV
Подскажите как передать функции параметры из Access 2019 - SQL Server в
этом месте
Код: sql
1.
WHERE @SalesRep = USER_NAME() OR USER_NAME() = 'Manager';  

ты чего-то не дочитал

для RLS ничего передавать не нужно
в таблице, на которую ты этот RLS цепляешь, должно быть поле SalesRep, и когда, у строки таблицы, значение в этом поле SalesRep = текущему юзеру ( юзеру базы мс скл ! а не какому-то "пользователю" у тебя в табличке Акса), эта строка будет возвращена
...
Рейтинг: 0 / 0
Access 2019 - SQL Server - Функции
    #40133750
JDV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
court, да понимаю ... в данном случае пользователю показываются только его записи, Manager свои и их записи тоже. но мне нужно, к примеру записи пользователь и чтоб их записи показались Manager_2.

Иерархию нужна ... разные отделы должны видеть только свои записи ... начальник 1 отдела свои + подчиненные, начальник 2 отдела свои + подчиненные, руководитель организации вообще все ...

я так понимаю нужно при исполнении это функции как то ей передать параметры ...
...
Рейтинг: 0 / 0
Access 2019 - SQL Server - Функции
    #40133752
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JDV,
началльник1+подчиненные1,начальник2+подчиненные2; like"*1" в общем like"*N"
...
Рейтинг: 0 / 0
Access 2019 - SQL Server - Функции
    #40133755
JDV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdku,
те в функции должны быть переменные ? так вот как их передать из Access
или нужно создать каждый раз новую функцию исходя из запроса пользователя, а потом удалять?
...
Рейтинг: 0 / 0
Access 2019 - SQL Server - Функции
    #40133756
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JDV
я так понимаю нужно при исполнении это функции как то ей передать параметры ...
как "со стеной" поговорил ...
НЕТ ! Не передаются в RLS - FILTER PREDICATE функцию, параметры [явно].
Эта функция вообще, явно, не вызывается.
Сервер "сам" её вызывает при запросе SELECT и фильтрует ею выдачу
JDV
Иерархию нужна ... разные отделы должны видеть только свои записи ... начальник 1 отдела свои + подчиненные, начальник 2 отдела свои + подчиненные, руководитель организации вообще все ...
Если говорить про средства сервера, то такое можно было бы сделать через роли сервера базы данных.
Типа, член роли "Отдел1" - видит все записи юзеров отдела 1, член роли "Отдел2" - все записи юзеров отдела 2,
юзер входящий в обе роли - видит записи юзеров обоих отделов.
И т.д.
...
Рейтинг: 0 / 0
Access 2019 - SQL Server - Функции
    #40133759
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JDV
sdku,
те в функции должны быть переменные ? ...
В поле таблицы (лучше таблица [группы] со связью 1:М к той, которую Вы используете в запросе-все значительно упростится) должна отражаться принадлежность к группе,а отбор производить в зависимости от принадлежности пользователя к группе (тогда какая-либо пользовательская функция вообще не понадобится)
Об этом,в принципе, говорит и court
...
Рейтинг: 0 / 0
Access 2019 - SQL Server - Функции
    #40133790
JDV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdku,
Благодарю!
...
Рейтинг: 0 / 0
Access 2019 - SQL Server - Функции
    #40133791
JDV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JDV,
Через роли я вообще не понял как фильтровать записи ... роли они большое относят к управлению SQL server ... можно таблицы целиком закрывать для пользователей ... думал варианте SDKU ... возможно просто при этом увеличатся запросы к серверу и это повлияет на загруженность сервера... ибо я так понимаю мне в каждом запросе надо будет определять является ли пользователь руководителем и формировать для него запрос с учетом этих данных ... те вариант с Безопасность на уровне строк (RLS) отпадает ... думал может есть какой нибудь механизм позволяющий это делать на стороне Server-а
...
Рейтинг: 0 / 0
Access 2019 - SQL Server - Функции
    #40133798
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JDV,
Ну и хде здесь сервер "перетрудится"\"перегрузится"
В запросе,в зависимости от имени пользователя, используя свойство .SQL менять текст запроса (инструкции SQL, достаточно изменять предложение WHERE)
...
Рейтинг: 0 / 0
Access 2019 - SQL Server - Функции
    #40133799
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Access 2019 - SQL Server - Функции
    #40133801
JDV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdku, Благодарю!!! Безмерно!
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Access 2019 - SQL Server - Функции
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]