USP_DATAFORMTEMPLATE_ADD_FAFBENEFIT

The save procedure used by the add dataform template "FAFBenefit Add Data Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@NAME nvarchar(100) IN Name
@DESCRIPTION nvarchar(255) IN Description
@BENEFITCATEGORYCODEID uniqueidentifier IN Category
@VALUE money IN Value
@BENEFITOPTIONS xml IN Benefit options
@SITES xml IN
@CURRENTAPPUSERID uniqueidentifier IN

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_FAFBENEFIT
(
    @ID uniqueidentifier = null output,
    @CHANGEAGENTID uniqueidentifier = null,    
    @NAME nvarchar(100) = '',
    @DESCRIPTION nvarchar(255) = '',
    @BENEFITCATEGORYCODEID uniqueidentifier = null,
    @VALUE money = 0,
  --@DEDUCTIBLEAMOUNT money = 0,
    --@SENDBENEFITCODE tinyint = 0,
  @BENEFITOPTIONS xml = null,
  @SITES xml = null,
  @CURRENTAPPUSERID uniqueidentifier = null
)
as
begin
    set nocount on;

  if @SITES is null or not exists(select 1 from dbo.UFN_BENEFITSITE_GETSITES_FROMITEMLISTXML(@SITES))
    begin 
        if dbo.UFN_SITEREQUIREDFORUSER(@CURRENTAPPUSERID) = 1 
        begin
            raiserror('ERR_BENEFITSITE_SITEID',13,1);
            return 1;
        end
    end

    declare @CURRENTDATE datetime                                        

    IF @ID is null
        set @ID = newid()

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

    set @CURRENTDATE = getdate()

    begin try                                   
        insert into dbo.BENEFIT
            (ID,NAME,DESCRIPTION,BENEFITCATEGORYCODEID,VALUE,ADDEDBYID,CHANGEDBYID,DATEADDED,DATECHANGED)
        VALUES
            (@ID,@NAME,@DESCRIPTION,@BENEFITCATEGORYCODEID,@VALUE,@CHANGEAGENTID,@CHANGEAGENTID,@CURRENTDATE,@CURRENTDATE)

/*        insert into dbo.BENEFITEXTENSION
            (ID,BENEFITID,DEDUCTIBLEAMOUNT,ADDEDBYID,CHANGEDBYID,DATEADDED,DATECHANGED)
        VALUES
            (newid(),@ID,@DEDUCTIBLEAMOUNT,@CHANGEAGENTID,@CHANGEAGENTID,@CURRENTDATE,@CURRENTDATE)
*/
        exec dbo.USP_BENEFIT_GETBENEFITOPTIONS_ADDFROMXML @ID, @BENEFITOPTIONS, @CHANGEAGENTID, @CURRENTDATE;
    exec dbo.USP_BENEFITSITE_GETSITES_ADDFROMXML @ID, @SITES, @CHANGEAGENTID;
end try

    begin catch
        exec dbo.USP_RAISE_ERROR
        return 1
    end catch

    return 0

end