USP_DATAFORMTEMPLATE_EDITLOAD_ASSIGNMENT

The load procedure used by the edit dataform template "Assignment Edit 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.
@NAME nvarchar(20) INOUT Name
@DESCRIPTION nvarchar(255) INOUT Description
@MAXPOINTS int INOUT Max points
@COURSEID uniqueidentifier INOUT Course ID
@COURSENAME nvarchar(60) INOUT Course
@CLASSASSIGNMENTS xml INOUT Select class sections that will share this assignment

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_ASSIGNMENT
(
    @ID uniqueidentifier,
    @DATALOADED bit = 0 output,
    @TSLONG bigint = 0 output,
    @NAME nvarchar(20) = null output,
    @DESCRIPTION nvarchar(255) = null output,
    @MAXPOINTS int = null output,
    @COURSEID uniqueidentifier = null output,
    @COURSENAME nvarchar(60) = null output,
    @CLASSASSIGNMENTS 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 = dbo.ASSIGNMENT.TSLONG,
        @NAME = dbo.ASSIGNMENT.NAME, 
        @DESCRIPTION = dbo.ASSIGNMENT.DESCRIPTION,
        @MAXPOINTS = dbo.ASSIGNMENT.MAXPOINTS,
        @COURSEID = dbo.CLASS.COURSEID,
        @COURSENAME = dbo.COURSE.NAME,
        @CLASSASSIGNMENTS = dbo.UFN_GETCLASSASSIGNMENT_TOITEMLISTXML(@ID)
    from dbo.ASSIGNMENT
        left join dbo.CLASSASSIGNMENT on dbo.ASSIGNMENT.ID = dbo.CLASSASSIGNMENT.ASSIGNMENTID
        left join dbo.CLASS on dbo.CLASSASSIGNMENT.CLASSID = dbo.CLASS.ID
        left join dbo.COURSE on dbo.CLASS.COURSEID = dbo.COURSE.ID
    where dbo.ASSIGNMENT.ID = @ID

    return 0;