UFN_SECURITY_APPUSER_GRANTED_WEBDASHBOARDPAGEVIEW
Determines whether a given user has rights to view a web dashboard page.
Return
Return Type |
---|
bit |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@APPUSERID | uniqueidentifier | IN | |
@WEBDASHBOARDFOLDERPATH | nvarchar(1000) | IN | |
@WEBDASHBOARDPAGENAME | nvarchar(200) | IN |
Definition
Copy
create function dbo.UFN_SECURITY_APPUSER_GRANTED_WEBDASHBOARDPAGEVIEW(@APPUSERID uniqueidentifier,
@WEBDASHBOARDFOLDERPATH nvarchar(1000),
@WEBDASHBOARDPAGENAME nvarchar(200))
returns bit
as
begin
declare @grant bit;
set @grant = 0;
select @grant = ISSYSADMIN from dbo.APPUSER where ID = @APPUSERID;
if @grant = 0
begin
select @grant = 1 from dbo.WEBDASHBOARDPAGECATALOG where [NAME] = @WEBDASHBOARDPAGENAME and OWNERID = @APPUSERID;
end;
if @grant = 0
begin
if exists
(select SYSTEMROLEWEBDASHBOARDPAGE.WEBDASHBOARDPAGEID
from dbo.SYSTEMROLEWEBDASHBOARDPAGE
inner join dbo.SYSTEMROLEAPPUSER AS SRAU on SYSTEMROLEWEBDASHBOARDPAGE.SYSTEMROLEID = SRAU.SYSTEMROLEID
inner join dbo.WEBDASHBOARDPAGECATALOG on SYSTEMROLEWEBDASHBOARDPAGE.WEBDASHBOARDPAGEID = WEBDASHBOARDPAGECATALOG.ID
left join dbo.WEBDASHBOARDFOLDER on WEBDASHBOARDPAGECATALOG.WEBDASHBOARDFOLDERID = WEBDASHBOARDFOLDER.ID
where WEBDASHBOARDPAGECATALOG.NAME = @WEBDASHBOARDPAGENAME
and (((@WEBDASHBOARDFOLDERPATH is null or @WEBDASHBOARDFOLDERPATH = '') and WEBDASHBOARDPAGECATALOG.WEBDASHBOARDFOLDERID is null) or WEBDASHBOARDFOLDER.PATH = @WEBDASHBOARDFOLDERPATH)
and SRAU.APPUSERID = @APPUSERID and SYSTEMROLEWEBDASHBOARDPAGE.GRANTORDENYVIEW = 1)
begin
set @grant = 1;
end
else
begin
set @grant = 0;
end;
end;
return @grant;
end;