USP_DATAFORMTEMPLATE_EDIT_BENEFIT_4
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@NAME | nvarchar(100) | IN | |
@DESCRIPTION | nvarchar(255) | IN | |
@BENEFITCATEGORYCODEID | uniqueidentifier | IN | |
@VALUE | money | IN | |
@SENDBENEFITCODE | tinyint | IN | |
@USEPERCENT | bit | IN | |
@VALUEPERCENT | numeric(20, 2) | IN | |
@SITES | xml | IN | |
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@BENEFITVENDORID | uniqueidentifier | IN | |
@FULFILLMENTVENDORID | uniqueidentifier | IN | |
@BENEFITDESC | nvarchar(100) | IN | |
@COST | money | IN |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_BENEFIT_4
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@NAME nvarchar(100),
@DESCRIPTION nvarchar(255),
@BENEFITCATEGORYCODEID uniqueidentifier,
@VALUE money,
@SENDBENEFITCODE tinyint,
@USEPERCENT bit,
@VALUEPERCENT numeric(20, 2),
@SITES xml,
@CURRENTAPPUSERID uniqueidentifier,
@BENEFITVENDORID uniqueidentifier,
@FULFILLMENTVENDORID uniqueidentifier,
@BENEFITDESC nvarchar(100),
@COST money
)
as
begin
set nocount on;
if @SITES is null
begin
if dbo.UFN_SITEREQUIREDFORUSER(@CURRENTAPPUSERID) = 1
begin
raiserror('ERR_BENEFITSITE_SITEID',13,1);
return 1;
end
end
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
begin try
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
exec dbo.USP_BENEFIT_VALIDATEUSEPERCENT @ID, @USEPERCENT;
declare @BASECURRENCYID uniqueidentifier;
--If the benefit is a percent benefit, don't save the base currency
if @USEPERCENT = 0
select
@BASECURRENCYID = coalesce(BASECURRENCYID, dbo.UFN_APPUSER_GETBASECURRENCY(@CURRENTAPPUSERID))
from
dbo.BENEFIT
where
ID = @ID;
update
dbo.BENEFIT
set
NAME= @NAME,
DESCRIPTION = @DESCRIPTION,
BENEFITCATEGORYCODEID = @BENEFITCATEGORYCODEID,
VALUE = @VALUE,
SENDBENEFITCODE = @SENDBENEFITCODE,
BASECURRENCYID = @BASECURRENCYID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE,
USEPERCENT = @USEPERCENT,
VALUEPERCENT = @VALUEPERCENT,
BENEFITVENDORID = @BENEFITVENDORID,
FULFILLMENTVENDORID = @FULFILLMENTVENDORID,
BENEFITDESC = @BENEFITDESC,
COST = @COST
where
ID = @ID
exec dbo.USP_BENEFITSITE_GETSITES_UPDATEFROMXML @ID, @SITES, @CHANGEAGENTID;
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0
end