USP_DATAFORMTEMPLATE_EDITLOAD_REPORTPARAMETER_PERMISSIONS

The load procedure used by the edit dataform template "Edit Report Parameter Permissions"

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.
@FEATURENAME nvarchar(60) INOUT Feature name
@SYSTEMROLELIST xml INOUT System Role List

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_REPORTPARAMETER_PERMISSIONS (
    @ID uniqueidentifier,
    @DATALOADED bit = 0 output,
    @TSLONG bigint = 0 output,
    @FEATURENAME nvarchar(60) = null output,
    @SYSTEMROLELIST xml = null output
) as

    set nocount on;

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

    select
    @DATALOADED = 1,
    @TSLONG = TSLONG,
    @FEATURENAME = UINAME,
    @SYSTEMROLELIST = (
        select 
            SR.ID as SYSTEMROLEID, 
            SR.NAME, 
            coalesce((select ID from dbo.SYSTEMROLEPERM_REPORT as SRP where (SRP.SYSTEMROLEID = SR.ID) and (SRP.REPORTCATALOGID = @ID)), NewID()) as ID,
            coalesce((select GRANTORDENY from dbo.SYSTEMROLEPERM_REPORT as SRP where (SRP.SYSTEMROLEID = SR.ID) and (SRP.REPORTCATALOGID = @ID)), 2) as GRANTORDENY
        from
            dbo.SYSTEMROLE as SR 
        order by 
            SR.NAME
        for xml raw('ITEM'), type, elements, root('SYSTEMROLELIST'), BINARY BASE64)
    from 
        dbo.REPORTCATALOG
    where 
        ID = @ID;

    return 0;