UFN_CONSTITUENTRECOGNITION_GETCONSECUTIVESINCE

Returns the year since a constituent recognition has been consecutive.

Return

Return Type
int

Parameters

Parameter Parameter Type Mode Description
@CONSTITUENTRECOGNITIONID uniqueidentifier IN

Definition

Copy


            CREATE function dbo.UFN_CONSTITUENTRECOGNITION_GETCONSECUTIVESINCE(

                @CONSTITUENTRECOGNITIONID uniqueidentifier
                )returns int
             as
                begin

                    declare @value int;

                    with PROGRAM_NOW as
                        (select ID, EXPIRATIONDATE, RECOGNITIONPROGRAMID, CONSTITUENTID
                         from dbo.CONSTITUENTRECOGNITION
                         where ID = @CONSTITUENTRECOGNITIONID
                        union all
                         select C.ID, C.EXPIRATIONDATE, C.RECOGNITIONPROGRAMID, C.CONSTITUENTID
                         from dbo.CONSTITUENTRECOGNITION C
                         inner join PROGRAM_NOW P on C.RECOGNITIONPROGRAMID = P.RECOGNITIONPROGRAMID
                            and C.CONSTITUENTID = P.CONSTITUENTID
                            and P.ID <> C.ID
                            and C.EXPIRATIONDATE BETWEEN dateadd(yyyy, -1, P.EXPIRATIONDATE) and dateadd(dd, -1, P.EXPIRATIONDATE))

                    select @value = datepart(yyyy, min(EXPIRATIONDATE))
                                                from PROGRAM_NOW;

                    return @value;
                end