UFN_DESIGNATION_GET_BYNOEVENTASSOCIATION
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@EVENTID | uniqueidentifier | IN |
Definition
Copy
CREATE function dbo.UFN_DESIGNATION_GET_BYNOEVENTASSOCIATION
(
@CURRENTAPPUSERID uniqueidentifier,
@EVENTID uniqueidentifier
)
returns table
as return
select ID, NAME
from (
select D.ID, case D.VANITYNAME when '' then D.NAME else D.VANITYNAME end as NAME
from dbo.DESIGNATION D
join dbo.DESIGNATIONLEVEL DL on D.DESIGNATIONLEVEL1ID = DL.ID
where D.ISACTIVE = 1 and dbo.UFN_SITEALLOWEDFORUSER(@CURRENTAPPUSERID, DL.SITEID) = 1
and D.DESIGNATIONLEVEL1ID IS NOT NULL and D.DESIGNATIONLEVEL2ID IS NULL
union all
select D.ID, case D.VANITYNAME when '' then D.NAME else D.VANITYNAME end as NAME
from dbo.DESIGNATION D
join dbo.DESIGNATIONLEVEL DL on D.DESIGNATIONLEVEL2ID = DL.ID
where D.ISACTIVE = 1 and dbo.UFN_SITEALLOWEDFORUSER(@CURRENTAPPUSERID, DL.SITEID) = 1
and D.DESIGNATIONLEVEL1ID IS NOT NULL and D.DESIGNATIONLEVEL2ID IS NOT NULL
and D.DESIGNATIONLEVEL3ID IS NULL
union all
select D.ID, case D.VANITYNAME when '' then D.NAME else D.VANITYNAME end as NAME
from dbo.DESIGNATION D
join dbo.DESIGNATIONLEVEL DL on D.DESIGNATIONLEVEL3ID = DL.ID
where D.ISACTIVE = 1 and dbo.UFN_SITEALLOWEDFORUSER(@CURRENTAPPUSERID, DL.SITEID) = 1
and D.DESIGNATIONLEVEL1ID IS NOT NULL and D.DESIGNATIONLEVEL2ID IS NOT NULL and D.DESIGNATIONLEVEL3ID IS NOT NULL
and D.DESIGNATIONLEVEL4ID IS NULL
union all
select D.ID, case D.VANITYNAME when '' then D.NAME else D.VANITYNAME end as NAME
from dbo.DESIGNATION D
join dbo.DESIGNATIONLEVEL DL on D.DESIGNATIONLEVEL4ID = DL.ID
where D.ISACTIVE = 1 and dbo.UFN_SITEALLOWEDFORUSER(@CURRENTAPPUSERID, DL.SITEID) = 1
and D.DESIGNATIONLEVEL1ID IS NOT NULL and D.DESIGNATIONLEVEL2ID IS NOT NULL and D.DESIGNATIONLEVEL3ID IS NOT NULL and D.DESIGNATIONLEVEL4ID IS NOT NULL
and D.DESIGNATIONLEVEL5ID IS NULL
union all
select D.ID, case D.VANITYNAME when '' then D.NAME else D.VANITYNAME end as NAME
from dbo.DESIGNATION D
join dbo.DESIGNATIONLEVEL DL on D.DESIGNATIONLEVEL5ID = DL.ID
where D.ISACTIVE = 1 and dbo.UFN_SITEALLOWEDFORUSER(@CURRENTAPPUSERID, DL.SITEID) = 1
and D.DESIGNATIONLEVEL1ID IS NOT NULL and D.DESIGNATIONLEVEL2ID IS NOT NULL and D.DESIGNATIONLEVEL3ID IS NOT NULL and D.DESIGNATIONLEVEL4ID IS NOT NULL
and D.DESIGNATIONLEVEL5ID IS NOT NULL
) DES
where not exists
(
select * from dbo.EVENT E
join dbo.APPEALDESIGNATION AD on E.APPEALID = AD.APPEALID and AD.ISDEFAULT = 1
where DES.ID = AD.DESIGNATIONID and E.ID <> @EVENTID
)