USP_PAYMENT_ADDGIFTFEES
Adds gift fees to a revenue payment.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@REVENUEID | uniqueidentifier | IN | |
@CONSTITUENTID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@DATECHANGED | datetime | IN |
Definition
Copy
CREATE procedure dbo.USP_PAYMENT_ADDGIFTFEES(
@REVENUEID uniqueidentifier,
@CONSTITUENTID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier,
@DATECHANGED datetime
)
as
begin
set nocount on;
--Do nothing if this is turned off.
if dbo.UFN_GIFTFEE_ENABLED() = 0
return;
merge dbo.REVENUESPLITGIFTFEE as target
using (
select
ID, FEE, WAIVED, BASECURRENCYID, ORGANIZATIONAMOUNT, ORGANIZATIONEXCHANGERATEID, TRANSACTIONAMOUNT, TRANSACTIONCURRENCYID, BASEEXCHANGERATEID
from dbo.UFN_REVENUE_GENERATEDEFAULTGIFTFEES(@REVENUEID, @CONSTITUENTID)
) as source (ID, FEE, WAIVED, BASECURRENCYID, ORGANIZATIONAMOUNT, ORGANIZATIONEXCHANGERATEID, TRANSACTIONAMOUNT, TRANSACTIONCURRENCYID, BASEEXCHANGERATEID)
on (target.id = source.id)
when matched then
update set
FEE = source.FEE
,WAIVED = source.WAIVED
,BASECURRENCYID = source.BASECURRENCYID
,ORGANIZATIONAMOUNT = source.ORGANIZATIONAMOUNT
,ORGANIZATIONEXCHANGERATEID = source.ORGANIZATIONEXCHANGERATEID
,TRANSACTIONAMOUNT = source.TRANSACTIONAMOUNT
,TRANSACTIONCURRENCYID = source.TRANSACTIONCURRENCYID
,BASEEXCHANGERATEID = source.BASEEXCHANGERATEID
,CHANGEDBYID = @CHANGEAGENTID
,DATECHANGED = @DATECHANGED
when not matched then
insert (ID, FEE, WAIVED, BASECURRENCYID, ORGANIZATIONAMOUNT, ORGANIZATIONEXCHANGERATEID, TRANSACTIONAMOUNT, TRANSACTIONCURRENCYID, BASEEXCHANGERATEID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values (source.ID, source.FEE, source.WAIVED, source.BASECURRENCYID, source.ORGANIZATIONAMOUNT, source.ORGANIZATIONEXCHANGERATEID, source.TRANSACTIONAMOUNT, source.TRANSACTIONCURRENCYID, source.BASEEXCHANGERATEID, @CHANGEAGENTID, @CHANGEAGENTID, @DATECHANGED, @DATECHANGED);
declare @DONOTPOST bit;
set @DONOTPOST = (select DONOTPOST from dbo.REVENUE where ID = @REVENUEID);
if @DONOTPOST = 0
exec dbo.USP_SAVE_GIFTFEEGLDISTRIBUTION @REVENUEID, @CHANGEAGENTID, @DATECHANGED;
end