UFN_COURSEGRADINGMARKINGCOLUMN_INVALIDTRANSLATIONTABLES
Returns invalid translation tables based on provided course grading marking column and existing marking column grades.
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@COURSEGRADINGMARKINGCOLUMNID | uniqueidentifier | IN | |
@VALUESALLOWED | tinyint | IN |
Definition
Copy
CREATE function dbo.UFN_COURSEGRADINGMARKINGCOLUMN_INVALIDTRANSLATIONTABLES
(
@COURSEGRADINGMARKINGCOLUMNID uniqueidentifier = null,
@VALUESALLOWED tinyint = null
)
returns table
as return
(
(select TRANSLATIONTABLE.ID
from dbo.COURSEGRADINGMARKINGCOLUMN
left outer join dbo.STUDENTMARKINGCOLUMNGRADE
on COURSEGRADINGMARKINGCOLUMN.ID = STUDENTMARKINGCOLUMNGRADE.COURSEGRADINGMARKINGCOLUMNID
left outer join dbo.TRANSLATIONTABLEGRADE existing
on COURSEGRADINGMARKINGCOLUMN.TRANSLATIONTABLEID = existing.TRANSLATIONTABLEID and STUDENTMARKINGCOLUMNGRADE.TRANSLATIONTABLEGRADEID = existing.ID
left outer join dbo.TRANSLATIONTABLE
on existing.TRANSLATIONTABLEID <> TRANSLATIONTABLE.ID
where (@VALUESALLOWED = 1 or @VALUESALLOWED = 0) and (STUDENTMARKINGCOLUMNGRADE.ID is not null) and
(STUDENTMARKINGCOLUMNGRADE.GRADEISBLANK = 0) and
STUDENTMARKINGCOLUMNGRADE.GRADETYPECODE = 1 and
COURSEGRADINGMARKINGCOLUMN.ID = @COURSEGRADINGMARKINGCOLUMNID and
not exists(
select * from dbo.TRANSLATIONTABLEGRADE selected
where existing.GRADE = selected.GRADE and
selected.TRANSLATIONTABLEID = TRANSLATIONTABLE.ID))
union
(select TRANSLATIONTABLE.ID
from dbo.COURSEGRADINGMARKINGCOLUMN
inner join dbo.STUDENTMARKINGCOLUMNGRADE
on COURSEGRADINGMARKINGCOLUMN.ID = STUDENTMARKINGCOLUMNGRADE.COURSEGRADINGMARKINGCOLUMNID
inner join dbo.TRANSLATIONTABLE
on COURSEGRADINGMARKINGCOLUMN.TRANSLATIONTABLEID <> TRANSLATIONTABLE.ID and (STUDENTMARKINGCOLUMNGRADE.NUMERICGRADE > TRANSLATIONTABLE.HIGHESTSCOREALLOWED or STUDENTMARKINGCOLUMNGRADE.NUMERICGRADE < TRANSLATIONTABLE.LOWESTSCOREALLOWED)
where (@VALUESALLOWED = 2 or @VALUESALLOWED = 0) and (STUDENTMARKINGCOLUMNGRADE.ID is not null) and
STUDENTMARKINGCOLUMNGRADE.GRADEISBLANK = 0 and
STUDENTMARKINGCOLUMNGRADE.GRADETYPECODE = 2 and
COURSEGRADINGMARKINGCOLUMN.ID = @COURSEGRADINGMARKINGCOLUMNID)
)