USP_DONORCHALLENGE_ADDREVENUE
This stored procedure is used by the donor challenge to create a the match per gift revenue record
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@REVENUEID | uniqueidentifier | INOUT | |
@REVENUESPLITID | uniqueidentifier | INOUT | |
@SPONSORID | uniqueidentifier | IN | |
@DESIGNATIONID | uniqueidentifier | IN | |
@AMOUNT | money | IN | |
@DATE | datetime | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@DATECHANGED | datetime | IN | |
@CURRENCYID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_DONORCHALLENGE_ADDREVENUE
(
@REVENUEID uniqueidentifier output,
@REVENUESPLITID uniqueidentifier output,
@SPONSORID uniqueidentifier,
@DESIGNATIONID uniqueidentifier,
@AMOUNT money,
@DATE datetime,
@CHANGEAGENTID uniqueidentifier,
@DATECHANGED datetime,
@CURRENCYID uniqueidentifier = null
)
as
set nocount on
begin try
if @DATECHANGED is null
set @DATECHANGED = getdate();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
if @REVENUEID is null
set @REVENUEID = newid();
if @REVENUESPLITID is null
set @REVENUESPLITID = newid();
if @CURRENCYID is null
set @CURRENCYID = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY();
declare @ORGANIZATIONCURRENCYID uniqueidentifier = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY();
declare @ORGANIZATIONEXCHANGERATEID uniqueidentifier;
declare @BASEEXCHANGERATEID uniqueidentifier;
declare @BASEAMOUNT money;
declare @ORGANIZATIONAMOUNT money;
exec dbo.USP_CURRENCY_GETCURRENCYVALUES @AMOUNT,
@DATE,
@CURRENCYID,
@BASEEXCHANGERATEID output,
@CURRENCYID,
@BASEAMOUNT output,
@ORGANIZATIONCURRENCYID,
@ORGANIZATIONAMOUNT output,
@ORGANIZATIONEXCHANGERATEID output;
--Add Revenue
insert into dbo.FINANCIALTRANSACTION (
ID,
CONSTITUENTID,
DATE,
POSTSTATUSCODE,
POSTDATE,
BASEAMOUNT,
TYPECODE,
TRANSACTIONCURRENCYID,
TRANSACTIONAMOUNT,
ORGAMOUNT,
ORGEXCHANGERATEID,
BASEEXCHANGERATEID,
PDACCOUNTSYSTEMID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
) values (
@REVENUEID,
@SPONSORID,
@DATE,
3,
null,
@AMOUNT,
8,
@CURRENCYID,
@AMOUNT,
@ORGANIZATIONAMOUNT,
@ORGANIZATIONEXCHANGERATEID,
@BASEEXCHANGERATEID,
'4B121C2C-CCE6-440D-894C-EA0DEF80D50B',
@CHANGEAGENTID,
@CHANGEAGENTID,
@DATECHANGED,
@DATECHANGED
);
insert into dbo.REVENUE_EXT (
ID,
DONOTRECEIPT,
RECEIPTAMOUNT,
NONPOSTABLEBASECURRENCYID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
) values (
@REVENUEID,
1,
0,
@CURRENCYID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@DATECHANGED,
@DATECHANGED
);
--Add origination source
exec dbo.USP_REVENUE_ADDORIGIN @REVENUEID, @SPONSORID, @CHANGEAGENTID, @DATECHANGED;
--Add application
insert into dbo.REVENUESPLIT(
ID,
REVENUEID,
TYPECODE,
APPLICATIONCODE,
AMOUNT,
DESIGNATIONID,
BASECURRENCYID,
TRANSACTIONCURRENCYID,
TRANSACTIONAMOUNT,
ORGANIZATIONAMOUNT,
ORGANIZATIONEXCHANGERATEID,
BASEEXCHANGERATEID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
) values (
@REVENUESPLITID,
@REVENUEID,
0,
0,
@AMOUNT,
@DESIGNATIONID,
@CURRENCYID,
@CURRENCYID,
@AMOUNT,
@ORGANIZATIONAMOUNT,
@ORGANIZATIONEXCHANGERATEID,
@BASEEXCHANGERATEID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@DATECHANGED,
@DATECHANGED
)
exec dbo.USP_REVENUE_ADDCAMPAIGNS @REVENUEID, @CHANGEAGENTID, @DATECHANGED;
insert into dbo.REVENUEPAYMENTMETHOD (REVENUEID, PAYMENTMETHODCODE, AMOUNT, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values (@REVENUEID, 9, @AMOUNT, @CHANGEAGENTID, @CHANGEAGENTID, @DATECHANGED ,@DATECHANGED);
insert into dbo.REVENUESCHEDULE (ID, STARTDATE, FREQUENCYCODE, NUMBEROFINSTALLMENTS, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values (@REVENUEID, @DATE, 5, 1, @CHANGEAGENTID, @CHANGEAGENTID, @DATECHANGED, @DATECHANGED);
insert into dbo.INSTALLMENT (
ID,
REVENUEID,
AMOUNT,
DATE,
SEQUENCE,
BASECURRENCYID,
TRANSACTIONCURRENCYID,
TRANSACTIONAMOUNT,
ORGANIZATIONAMOUNT,
ORGANIZATIONEXCHANGERATEID,
BASEEXCHANGERATEID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
) values (
newid(),
@REVENUEID,
@AMOUNT,
@DATE,
1,
@CURRENCYID,
@CURRENCYID,
@AMOUNT,
@ORGANIZATIONAMOUNT,
@ORGANIZATIONEXCHANGERATEID,
@BASEEXCHANGERATEID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@DATECHANGED,
@DATECHANGED
);
exec dbo.USP_PLEDGE_GENERATEINSTALLMENTSPLITS @REVENUEID, @CHANGEAGENTID, @DATECHANGED;
--Add default Recognition Credits
exec dbo.USP_REVENUEDETAIL_CREATERECOGNITIONS @REVENUESPLITID, @CHANGEAGENTID, @DATECHANGED, null;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch