UFN_EDUCATIONALHISTORY_GETGRADELEVELLEFT

Gets the grade level that this student left the institution.

Return

Return Type
uniqueidentifier

Parameters

Parameter Parameter Type Mode Description
@EDUCATIONALHISTORYID uniqueidentifier IN

Definition

Copy


        CREATE function dbo.UFN_EDUCATIONALHISTORY_GETGRADELEVELLEFT(
            @EDUCATIONALHISTORYID uniqueidentifier
        )
        returns uniqueidentifier
        with execute as caller
        as begin
            declare @GRADELEVELLEFTID uniqueidentifier
            declare @STUDENTPROGESSIONID uniqueidentifier

            set @STUDENTPROGESSIONID = (
            SELECT  TOP 1 (dbo.STUDENTPROGRESSION.[ID])
            FROM dbo.EDUCATIONALHISTORY
            INNER JOIN dbo.STUDENTPROGRESSION on dbo.EDUCATIONALHISTORY.[ID] = dbo.STUDENTPROGRESSION.[ENROLLMENTID]
            WHERE (dbo.EDUCATIONALHISTORY.[ID] = @EDUCATIONALHISTORYID
            and (dbo.UFN_DATE_FROMFUZZYDATE(dbo.EDUCATIONALHISTORY.[DATELEFT]) is not null)
            ORDER BY STUDENTPROGRESSION.[ENDDATE] DESC
            )

            if @STUDENTPROGESSIONID is not null
            begin
                SELECT @GRADELEVELLEFTID = dbo.SCHOOLGRADELEVEL.[GRADELEVELID]
                FROM dbo.STUDENTPROGRESSION
                INNER JOIN dbo.SCHOOLGRADELEVEL on dbo.STUDENTPROGRESSION.[SCHOOLGRADELEVELID] = dbo.SCHOOLGRADELEVEL.[ID]
                WHERE dbo.STUDENTPROGRESSION.[ID] = @STUDENTPROGESSIONID
            end

            if  @GRADELEVELLEFTID is null 
            begin 
                SELECT @GRADELEVELLEFTID = dbo.EDUCATIONALHISTORY.[GRADELEVELLEFTID] 
                FROM dbo.EDUCATIONALHISTORY 
                WHERE dbo.EDUCATIONALHISTORY.[ID] = @EDUCATIONALHISTORYID
            end

            return @GRADELEVELLEFTID
        end