USP_DATAFORMTEMPLATE_EDIT_SYSTEMROLE_FEATUREPERMS

The save procedure used by the edit dataform template "System Role Feature Permissions Edit Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter indicating the ID of the record being edited.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@RECORDOPERATIONLIST xml IN Record Operation Permission List
@FORMLIST xml IN Form Permission List
@DATALISTLIST xml IN Datalist Permission List
@BUSINESSPROCESSLIST xml IN Business Process Permission List
@DASHBOARDLIST xml IN Dashboard Permission List
@SMARTQUERYLIST xml IN Smart Query Permission List
@KPILIST xml IN KPI Permission List
@QUERYVIEWLIST xml IN Query View Permission List

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_SYSTEMROLE_FEATUREPERMS(
    @ID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier =null,    
    @RECORDOPERATIONLIST xml ,
    @FORMLIST xml,  
    @DATALISTLIST xml,
    @BUSINESSPROCESSLIST xml,
    @DASHBOARDLIST xml,
    @SMARTQUERYLIST xml,
    @KPILIST xml,
    @QUERYVIEWLIST xml
    --TODO all other feature types


) AS

set nocount on;

if @CHANGEAGENTID is null  
    exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

declare @CURRENTDATE datetime;
set @CURRENTDATE=getdate();

BEGIN TRY


    update dbo.SYSTEMROLE set
        CHANGEDBYID = @CHANGEAGENTID  ,DATECHANGED=@CURRENTDATE
    where ID = @ID;


    if @RECORDOPERATIONLIST is not null
        exec dbo.USP_SYSTEMROLE_GETRECORDOPLIST_UPDATEFROMXML @id, @RECORDOPERATIONLIST, @CHANGEAGENTID;

    if @FORMLIST is not null
        exec dbo.USP_SYSTEMROLE_GETFORMLIST_UPDATEFROMXML @id, @FORMLIST, @CHANGEAGENTID;

    if @DATALISTLIST is not null
        exec dbo.USP_SYSTEMROLE_GETDATALISTLIST_UPDATEFROMXML @id, @DATALISTLIST, @CHANGEAGENTID;

    if @BUSINESSPROCESSLIST is not null
        exec dbo.USP_SYSTEMROLE_GETBUSINESSPROCESSLIST_UPDATEFROMXML @id, @BUSINESSPROCESSLIST, @CHANGEAGENTID;

    if @DASHBOARDLIST is not null
        exec dbo.USP_SYSTEMROLE_GETDASHBOARDLIST_UPDATEFROMXML @id, @DASHBOARDLIST, @CHANGEAGENTID;

    if @SMARTQUERYLIST is not null
        exec dbo.USP_SYSTEMROLE_GETSMARTQUERYLIST_UPDATEFROMXML @id, @SMARTQUERYLIST, @CHANGEAGENTID;

    if @KPILIST is not null
        exec dbo.USP_SYSTEMROLE_GETKPILIST_UPDATEFROMXML @id, @KPILIST, @CHANGEAGENTID;

    if @QUERYVIEWLIST is not null
        exec dbo.USP_SYSTEMROLE_GETQUERYVIEWLIST_UPDATEFROMXML @id, @QUERYVIEWLIST, @CHANGEAGENTID;

    return 0;

END TRY
BEGIN CATCH
    exec dbo.USP_RAISE_ERROR;
    return 1;
END CATCH