UFN_APPUSER_HASPERMISSIONFORDECLARATION
Returns a row if the user has permission for the tax declaration.
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@APPUSERID | uniqueidentifier | IN | |
@CHARITYCLAIMREFERENCENUMBERID | uniqueidentifier | IN |
Definition
Copy
CREATE function dbo.UFN_APPUSER_HASPERMISSIONFORDECLARATION
(
@APPUSERID uniqueidentifier,
@CHARITYCLAIMREFERENCENUMBERID uniqueidentifier
)
returns table
as return
(
with CTE_REFERENCENUMBERSITES as
(
select
CHARITYCLAIMREFERENCENUMBERSITE.SITEID
from dbo.CHARITYCLAIMREFERENCENUMBERSITE
where
CHARITYCLAIMREFERENCENUMBERSITE.CHARITYCLAIMREFERENCENUMBERID = @CHARITYCLAIMREFERENCENUMBERID
)
select
1 as PERMISSIONGRANTED
from
(
select
CTE_REFERENCENUMBERSITES.SITEID
from CTE_REFERENCENUMBERSITES
union all
-- Handle the default CCRN
select
DERIVED.SITEID
from
(
-- null indicates "no site"
select null as SITEID
union all
-- Include sites not explicitly associated with
-- a CCRN since they are included on the default
-- CCRN as well
select
SITE.ID
from dbo.SITE
where
not exists
(
select
1
from dbo.CHARITYCLAIMREFERENCENUMBERSITE
where
CHARITYCLAIMREFERENCENUMBERSITE.SITEID = SITE.ID
)
) DERIVED
where
not exists (select 1 from CTE_REFERENCENUMBERSITES)
) as DERIVEDTABLE
where dbo.UFN_SITEALLOWEDFORUSER(@APPUSERID, DERIVEDTABLE.SITEID) = 1
)