USP_DATAFORMTEMPLATE_EDIT_FAFCOMMENTSAPPROVAL

The save procedure used by the edit dataform template "FAFCommentsApproval 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.
@CLIENTUSERSID int IN Clientusersid
@ISAPPROVED bit IN Isapproved
@COMMENTID uniqueidentifier IN Commnetid

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_FAFCOMMENTSAPPROVAL (
    @ID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier = null,
    @CLIENTUSERSID int,
    @ISAPPROVED bit,
  @COMMENTID uniqueidentifier
)
as

    set nocount on;

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

    declare @CURRENTDATE datetime
    set @CURRENTDATE = getdate()

  declare @CURRENTAPPROVAL bit

  SELECT @CURRENTAPPROVAL = ISAPPROVED FROM dbo.FAFCOMMENTSAPPROVAL (NOLOCK) WHERE ID = @ID

  SET @CURRENTAPPROVAL = ISNULL(@CURRENTAPPROVAL,2)

  begin try

    IF @CURRENTAPPROVAL = 1 AND @ISAPPROVED = 0
    UPDATE FAFCOMMENTS
          SET LIKECOUNT = LIKECOUNT - 1, DISLIKECOUNT = DISLIKECOUNT + 1
          WHERE ID=@COMMENTID

    IF @CURRENTAPPROVAL = 0 AND @ISAPPROVED = 1
    UPDATE FAFCOMMENTS
          SET LIKECOUNT = LIKECOUNT + 1, DISLIKECOUNT = DISLIKECOUNT - 1
          WHERE ID=@COMMENTID

        update dbo.FAFCOMMENTSAPPROVAL set
            CLIENTUSERSID = @CLIENTUSERSID,
          ISAPPROVED = @ISAPPROVED,
      COMMENTID = @COMMENTID,
            CHANGEDBYID = @CHANGEAGENTID,
            DATECHANGED = @CURRENTDATE
        where ID = @ID

    end try
    begin catch
        exec dbo.USP_RAISE_ERROR
        return 1
    end catch

return 0;