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