USP_DATAFORMTEMPLATE_EDIT_SIGNATURE

The save procedure used by the edit dataform template "Signature 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.
@SIGNERCODE tinyint IN Signer
@NAME nvarchar(255) IN Name
@APPUSERID uniqueidentifier IN Application user
@SIGNATURE varbinary IN
@SIGNATURETHUMBNAIL varbinary IN
@SIGNATURECHANGED bit IN Signature changed
@APPLICATIONTYPEINFORMATION xml IN Signature applications

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_SIGNATURE (
    @ID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier = null,
    @SIGNERCODE tinyint,
    @NAME nvarchar(255),
  @APPUSERID uniqueidentifier,
  @SIGNATURE varbinary(max),
  @SIGNATURETHUMBNAIL varbinary(max),
  @SIGNATURECHANGED bit,
  @APPLICATIONTYPEINFORMATION xml
)
as

    set nocount on;

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

    declare @CURRENTDATE datetime
    set @CURRENTDATE = getdate()

    begin try

    exec dbo.USP_SIGNATUREAPPLICATION_UPDATEFROMXML @ID, @APPLICATIONTYPEINFORMATION, @CHANGEAGENTID, @CURRENTDATE;

        -- handle updating the data

    if @SIGNATURECHANGED = 1
          update dbo.SIGNATURE set
              SIGNERCODE = @SIGNERCODE,
              NAME = @NAME,
              APPUSERID = @APPUSERID,
        SIGNATURE = @SIGNATURE,
        SIGNATURETHUMBNAIL = @SIGNATURETHUMBNAIL,
              CHANGEDBYID = @CHANGEAGENTID,
              DATECHANGED = @CURRENTDATE
          where ID = @ID;
   else
      update dbo.SIGNATURE set
              SIGNERCODE = @SIGNERCODE,
              NAME = @NAME,
              APPUSERID = @APPUSERID,
              CHANGEDBYID = @CHANGEAGENTID,
              DATECHANGED = @CURRENTDATE
          where ID = @ID;
    end try
    begin catch
        exec dbo.USP_RAISE_ERROR
        return 1
    end catch

return 0;