USP_DATAFORMINSTANCETEMPLATE_EDITLOAD_TASK_ASSIGNMENTS

The load procedure used by the edit dataform template "Task Assignments 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.
@TASKNAME nvarchar(100) INOUT Task name
@SYSTEMROLELIST xml INOUT System Role List

Definition

Copy


CREATE procedure dbo.USP_DATAFORMINSTANCETEMPLATE_EDITLOAD_TASK_ASSIGNMENTS (
    @ID uniqueidentifier,
    @DATALOADED bit = 0 output,
    @TSLONG bigint = 0 output,
    @TASKNAME nvarchar(100) = null output,
    @SYSTEMROLELIST xml = null output
) as

set nocount on;

set @DATALOADED = 0;
set @TSLONG = 0;

select
    @DATALOADED = 1,
    @TSLONG = TSLONG,
    @TASKNAME = NAME,
    @SYSTEMROLELIST =     
        (select 
            SR.ID as SYSTEMROLEID, SR.NAME, 
            coalesce((select ID 
                      from dbo.SYSTEMROLETASK as SRT
                      where (SRT.SYSTEMROLEID = SR.ID) and (SRT.TASKID = @ID)), NewID()) as ID,
            coalesce((select 1
                      from dbo.SYSTEMROLETASK as SRT
                      where (SRT.SYSTEMROLEID = SR.ID) and (SRT.TASKID = @ID)), 0) as GRANTORDENY,
            coalesce((select 1
                      from dbo.SYSTEMROLETASK as SRT
                      where (SRT.SYSTEMROLEID = SR.ID) and (SRT.TASKID = @ID) and (DISPLAYONHOMEPAGE = 1)), 0) as DISPLAYONHOMEPAGE                      
        from
            dbo.SYSTEMROLE as SR 
        order by SR.NAME
        for xml raw('ITEM'), type, elements, root('SYSTEMROLELIST'), BINARY BASE64)
from 
    dbo.TASKCATALOG
where 
    ID = @ID;

return 0;