USP_DATAFORMTEMPLATE_EDIT_USERDEFINEDELEMENT

The save procedure used by the edit dataform template "User-defined Element Edit Data 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.
@SHORTID nvarchar(100) IN ID
@DESCRIPTION nvarchar(60) IN Description
@PREVENTDATAENTRY bit IN Prevent data entry
@PREVENTDATAENTRYBEFOREDATE datetime IN Before
@PREVENTDATAENTRYAFTERDATE datetime IN After
@PREVENTPOST bit IN Prevent posting
@PREVENTPOSTBEFOREDATE datetime IN Before
@PREVENTPOSTAFTERDATE datetime IN After

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_USERDEFINEDELEMENT (
    @ID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier = null,
    @SHORTID nvarchar(100) ,
    @DESCRIPTION nvarchar(60) ,
    @PREVENTDATAENTRY bit,
    @PREVENTDATAENTRYBEFOREDATE datetime ,
    @PREVENTDATAENTRYAFTERDATE datetime ,
    @PREVENTPOST bit ,
    @PREVENTPOSTBEFOREDATE datetime ,
    @PREVENTPOSTAFTERDATE datetime 
)
as

    set nocount on;

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

    declare @CURRENTDATE datetime
    set @CURRENTDATE = getdate()

    begin try
        begin tran;
        -- handle updating the data

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

        update dbo.PDACCOUNTSEGMENTVALUE set
            SHORTDESCRIPTION = @SHORTID,
            DESCRIPTION = @DESCRIPTION,
            CHANGEDBYID = @CHANGEAGENTID,
            PREVENTDATAENTRY = @PREVENTDATAENTRY,
            PREVENTDATAENTRYBEFOREDATE = @PREVENTDATAENTRYBEFOREDATE,
            PREVENTDATAENTRYAFTERDATE = @PREVENTDATAENTRYAFTERDATE,
            PREVENTPOST = @PREVENTPOST,
            PREVENTPOSTBEFOREDATE = @PREVENTPOSTBEFOREDATE,
            PREVENTPOSTAFTERDATE = @PREVENTPOSTAFTERDATE,
            DATECHANGED = @CURRENTDATE
        where ID = @ID

    commit tran;
    end try
    begin catch
        rollback tran;
        exec dbo.USP_RAISE_ERROR
        return 1
    end catch

return 0;