UFN_SECURITY_APPUSER_GRANTED_SMARTFIELDINSTANCE_BYROOTQUERYVIEWID
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@ROOTQUERYVIEWID | uniqueidentifier | IN |
Definition
Copy
create function dbo.UFN_SECURITY_APPUSER_GRANTED_SMARTFIELDINSTANCE_BYROOTQUERYVIEWID
(
@CURRENTAPPUSERID uniqueidentifier,
@ROOTQUERYVIEWID uniqueidentifier
)
returns table
as
return
(
select
QUERYVIEWCATALOG.ID QUERYVIEWCATALOGID
from dbo.QUERYVIEWCATALOG
inner join dbo.QUERYVIEWRELATIONSHIP on QUERYVIEWRELATIONSHIP.RELATEDQUERYVIEWID = QUERYVIEWCATALOG.ID
inner join dbo.SMARTFIELD on replace(upper('V_QUERY_SMARTFIELD'+convert(nvarchar(36),SMARTFIELD.TABLECATALOGID)),'-','') = UPPER(QUERYVIEWCATALOG.OBJECTNAME)
inner join dbo.SMARTFIELDCATALOG on SMARTFIELDCATALOG.ID = SMARTFIELD.SMARTFIELDCATALOGID
inner join dbo.UFN_SECURITY_GETGRANTEDQUERYVIEWSFORUSER(@CURRENTAPPUSERID) GQV on QUERYVIEWCATALOG.ID = GQV.QUERYVIEWCATALOGID
cross apply dbo.UFN_SITEID_MAPFROM_SMARTFIELDID(SMARTFIELD.ID) as SMARTFIELDSITE
outer apply dbo.UFN_SECURITY_APPUSER_GRANTED_QUERYVIEW_FORSITE_TVF(@CURRENTAPPUSERID, QUERYVIEWCATALOG.ID, SMARTFIELDSITE.SITEID) as GRANTED_FORSITE
where
QUERYVIEWRELATIONSHIP.ROOTQUERYVIEWID = @ROOTQUERYVIEWID
and
(SMARTFIELDCATALOG.HASSITEFILTER = 0
or
GRANTED_FORSITE.ISVALID = 1)
group by QUERYVIEWCATALOG.ID
union
select
QUERYVIEWCATALOG.ID QUERYVIEWCATALOGID
from dbo.SMARTFIELD
inner join dbo.OLAPDATASOURCESMARTFIELD on SMARTFIELD.ID = OLAPDATASOURCESMARTFIELD.SMARTFIELDID
inner join dbo.SMARTFIELDCATALOG on SMARTFIELDCATALOG.ID = SMARTFIELD.SMARTFIELDCATALOGID
inner join dbo.QUERYVIEWCATALOG on dbo.UFN_OLAPSMARTFIELD_GETQUERYVIEWOBJECTNAME(SMARTFIELD.ID, OLAPDATASOURCESMARTFIELD.OLAPDATASOURCEID) = UPPER(QUERYVIEWCATALOG.OBJECTNAME)
inner join dbo.QUERYVIEWRELATIONSHIP on QUERYVIEWRELATIONSHIP.RELATEDQUERYVIEWID = QUERYVIEWCATALOG.ID
inner join dbo.UFN_SECURITY_GETGRANTEDQUERYVIEWSFORUSER(@CURRENTAPPUSERID) GQV on QUERYVIEWCATALOG.ID = GQV.QUERYVIEWCATALOGID
cross apply dbo.UFN_SITEID_MAPFROM_SMARTFIELDID(SMARTFIELD.ID) as SMARTFIELDSITE
outer apply dbo.UFN_SECURITY_APPUSER_GRANTED_QUERYVIEW_FORSITE_TVF(@CURRENTAPPUSERID, QUERYVIEWCATALOG.ID, SMARTFIELDSITE.SITEID) as GRANTED_FORSITE
where
QUERYVIEWRELATIONSHIP.ROOTQUERYVIEWID = @ROOTQUERYVIEWID
and
(SMARTFIELDCATALOG.HASSITEFILTER = 0
or
GRANTED_FORSITE.ISVALID = 1)
group by QUERYVIEWCATALOG.ID
)