UFN_BILLINGITEM_GETACADEMICYEARBYDATES

Returns the academic year by dates

Return

Return Type
varchar(2000)

Parameters

Parameter Parameter Type Mode Description
@STARTDATE date IN
@ENDDATE date IN

Definition

Copy


            CREATE function dbo.UFN_BILLINGITEM_GETACADEMICYEARBYDATES                    
            (
                @STARTDATE date,
                @ENDDATE date
            )
            returns varchar(2000)
            with execute as caller
            as begin
                declare @Year varchar(2000)
                declare @SchoolName varchar(2000)

                    select @SchoolName=Coalesce(@SchoolName + ', ','') + C1.KEYNAME from dbo.ACADEMICYEAR AY1 inner join dbo.CONSTITUENT C1 on AY1.SCHOOLID=C1.ID WHERE AY1.BILLINGSTARTDATE=@STARTDATE AND AY1.BILLINGENDDATE=@ENDDATE

                    select TOP 1 @Year=CASE WHEN (select COUNT(V1.NUM) from (select Count(*) as NUM from dbo.ACADEMICYEAR group by ACADEMICYEARNAMECODEID) AS V1)=(select COUNT(V2.NUM) from (select Count(*) as NUM from dbo.ACADEMICYEAR group by ACADEMICYEARNAMECODEID, BILLINGSTARTDATE, BILLINGENDDATE) AS V2) THEN AYNC.DESCRIPTION 
                    ELSE (CASE WHEN (SELECT COUNT(*) FROM DBO.ACADEMICYEAR WHERE BILLINGSTARTDATE=@STARTDATE AND BILLINGENDDATE=@ENDDATE)>1 
                    THEN AYNC.DESCRIPTION + ' - ' + @SCHOOLNAME ELSE AYNC.DESCRIPTION + ' - ' + C.KEYNAME END)END
                    from dbo.ACADEMICYEAR AY INNER JOIN dbo.ACADEMICYEARNAMECODE AYNC ON AY.ACADEMICYEARNAMECODEID=AYNC.ID 
                    INNER JOIN dbo.CONSTITUENT C ON AY.SCHOOLID=C.ID
                    where BILLINGSTARTDATE=@STARTDATE AND BILLINGENDDATE=@ENDDATE 

                return @Year
            end