USP_DATAFORMTEMPLATE_EDITLOAD_COURSEGRADING
The load procedure used by the edit dataform template "Course Grading Edit Data Form"
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter used to load the fields defined on the form. |
@DATALOADED | bit | INOUT | Output parameter indicating whether or not data was actually loaded. |
@TSLONG | bigint | INOUT | Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record. |
@COURSEID | uniqueidentifier | INOUT | Course ID |
@SCHOOLID | uniqueidentifier | INOUT | |
@ACADEMICYEARID | uniqueidentifier | INOUT | Academic year |
@SESSIONID | uniqueidentifier | INOUT | Session |
@SESSIONSTARTDATE | date | INOUT | Session |
@SESSIONENDDATE | date | INOUT | Session |
@COURSEGRADINGMARKINGCOLUMNS | xml | INOUT | Marking columns |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_COURSEGRADING(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@COURSEID uniqueidentifier = null output,
@SCHOOLID uniqueidentifier = null output,
@ACADEMICYEARID uniqueidentifier = null output,
@SESSIONID uniqueidentifier = null output,
@SESSIONSTARTDATE date = null output,
@SESSIONENDDATE date = null output,
@COURSEGRADINGMARKINGCOLUMNS xml = null output
)
as
set nocount on;
-- be sure to set these, in case the select returns no rows
set @DATALOADED = 0
set @TSLONG = 0
-- populate the output parameters, which correspond to fields on the form. Note that
-- we set @DATALOADED = 1 to indicate that the load was successful. Otherwise, the system
-- will display a "no data loaded" message. Also note that we fetch the TSLONG so that concurrency
-- can be considered.
select
@DATALOADED = 1,
@TSLONG = COURSEGRADING.TSLONG,
@COURSEID = COURSEGRADING.COURSEID,
@SCHOOLID = COURSE.SCHOOLID,
@SESSIONID = dbo.UFN_SESSION_GET_FORSCHOOL_BYDATE(COURSE.SCHOOLID, COURSEGRADING.STARTDATE, COURSEGRADING.ENDDATE),
@SESSIONSTARTDATE = COURSEGRADING.STARTDATE,
@SESSIONENDDATE = COURSEGRADING.ENDDATE
from dbo.COURSEGRADING
join dbo.COURSE on COURSEGRADING.COURSEID = COURSE.ID
where COURSEGRADING.ID = @ID
select @ACADEMICYEARID = ACADEMICYEARID from dbo.SESSION WHERE ID = @SESSIONID
select @COURSEGRADINGMARKINGCOLUMNS = dbo.UFN_COURSEGRADING_GETMARKINGCOLUMNS_TOITEMLISTXML(@ID, @COURSEID, @SESSIONSTARTDATE, @SESSIONENDDATE)
return 0;