USP_DATALIST_STUDENTSKILL
Displays student skills.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ACADEMICYEARNAMECODEID | uniqueidentifier | IN | Academic year |
@STUDENTSKILLCATEGORYCODEID | uniqueidentifier | IN | Category |
@GRADELEVELID | uniqueidentifier | IN | Grade level |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_STUDENTSKILL
(
@ACADEMICYEARNAMECODEID uniqueidentifier = null,
@STUDENTSKILLCATEGORYCODEID uniqueidentifier = null,
@GRADELEVELID uniqueidentifier = null
)
as
set nocount on;
select STUDENTSKILL.ID,
STUDENTSKILLCATEGORYCODE.DESCRIPTION 'CATEGORY',
STUDENTSKILL.NAME 'SKILLNAME',
STUDENTSKILLRATINGGROUP.NAME 'RATINGTABLENAME',
(select stuff(( select '; ' + COURSE.COURSEID
from dbo.STUDENTSKILLCOURSE
join dbo.COURSE on COURSE.ID = STUDENTSKILLCOURSE.COURSEID
where STUDENTSKILLCOURSE.STUDENTSKILLID = STUDENTSKILL.ID
order by COURSE.COURSEID
for xml path(''), type).value('.', 'nvarchar(max)'), 1, 2, '')) 'COURSE'
from dbo.STUDENTSKILL
inner join dbo.STUDENTSKILLRATINGGROUP on STUDENTSKILL.STUDENTSKILLRATINGGROUPID = STUDENTSKILLRATINGGROUP.ID
left join dbo.STUDENTSKILLCATEGORYCODE on STUDENTSKILL.STUDENTSKILLCATEGORYCODEID = STUDENTSKILLCATEGORYCODE.ID
left join dbo.STUDENTSKILLCOURSE on STUDENTSKILL.ID = STUDENTSKILLCOURSE.STUDENTSKILLID
left join dbo.COURSE on STUDENTSKILLCOURSE.COURSEID = COURSE.ID
left join dbo.ACADEMICYEAR on (@ACADEMICYEARNAMECODEID is not null) and
(ACADEMICYEAR.STARTDATE >= STUDENTSKILLCOURSE.STARTDATE) and
((ACADEMICYEAR.ENDDATE <= STUDENTSKILLCOURSE.ENDDATE) or (STUDENTSKILLCOURSE.ENDDATE is null)) and
(ACADEMICYEAR.SCHOOLID = COURSE.SCHOOLID)
where
((@STUDENTSKILLCATEGORYCODEID is null) or (@STUDENTSKILLCATEGORYCODEID = STUDENTSKILLCATEGORYCODE.ID)) and
((@GRADELEVELID is null) or
(@GRADELEVELID in
(select SCHOOLGRADELEVEL.GRADELEVELID from dbo.SCHOOLGRADELEVEL
inner join dbo.COURSEGRADELEVEL on SCHOOLGRADELEVEL.ID = COURSEGRADELEVEL.SCHOOLGRADELEVELID
where COURSEGRADELEVEL.COURSEID = STUDENTSKILLCOURSE.COURSEID))) and
((@ACADEMICYEARNAMECODEID is null) or
(ACADEMICYEAR.ACADEMICYEARNAMECODEID = @ACADEMICYEARNAMECODEID))
group by STUDENTSKILL.ID, STUDENTSKILLCATEGORYCODE.DESCRIPTION, STUDENTSKILL.NAME, STUDENTSKILLRATINGGROUP.NAME
order by STUDENTSKILLCATEGORYCODE.DESCRIPTION, STUDENTSKILL.NAME