UFN_GROUPMEMBER_ISCURRENTMEMBER
This function determines whether or not a given constituent is a current member of a given group
Return
Return Type |
---|
bit |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@GROUPMEMBERID | uniqueidentifier | IN |
Definition
Copy
CREATE function dbo.UFN_GROUPMEMBER_ISCURRENTMEMBER(@GROUPMEMBERID uniqueidentifier)
returns bit
as
begin
declare @result bit
declare @CURRENTDATEEARLIESTTIME date;
set @CURRENTDATEEARLIESTTIME = getdate();
select @result = case when count(GROUPMEMBER.ID) = 1 then 1 else 0 end from dbo.GROUPMEMBER
left join dbo.GROUPMEMBERDATERANGE GMDR on GMDR.GROUPMEMBERID = GROUPMEMBER.ID
where GROUPMEMBER.ID = @GROUPMEMBERID and
((GMDR.DATEFROM is null and (GMDR.DATETO is null or GMDR.DATETO > @CURRENTDATEEARLIESTTIME))
or (GMDR.DATETO is null and (GMDR.DATEFROM is null or GMDR.DATEFROM <= @CURRENTDATEEARLIESTTIME))
or (GMDR.DATEFROM <= @CURRENTDATEEARLIESTTIME and GMDR.DATETO > @CURRENTDATEEARLIESTTIME))
return @result;
end