USP_DATAFORMTEMPLATE_EDITLOAD_REVENUEBENEFITS
The load procedure used by the edit dataform template "Revenue Benefits Edit Form"
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter used to load the fields defined on the form. |
@DATALOADED | bit | INOUT | Output parameter indicating whether or not data was actually loaded. |
@BENEFITS | xml | INOUT | |
@BENEFITSWAIVED | bit | INOUT | Benefits waived |
@GIFTAMOUNT | money | INOUT | Gift amount |
@APPEALID | uniqueidentifier | INOUT | Appeal |
@TSLONG | bigint | INOUT | Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record. |
@PERCENTAGEBENEFITS | xml | INOUT | Benefits |
@REVENUETRANSACTIONCURRENCYID | uniqueidentifier | INOUT | Revenue transaction currency ID |
@REVENUETRANSACTIONCURRENCYDECIMALDIGITS | tinyint | INOUT | Revenue transaction currency decimal digits |
@REVENUETRANSACTIONCURRENCYROUNDINGTYPECODE | tinyint | INOUT | Revenue transaction currency rounding type code |
@EVENTREGISTRATIONS | xml | INOUT | Event registrations |
@REVENUEBASECURRENCYID | uniqueidentifier | INOUT | Revenue base currency ID |
@REVENUEBASECURRENCYDECIMALDIGITS | tinyint | INOUT | Revenue base currency decimal digits |
@REVENUEBASECURRENCYROUNDINGTYPECODE | tinyint | INOUT | Revenue base currency rounding type code |
@GIFTTRANSACTIONAMOUNT | money | INOUT | Gift transaction amount |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
@APPUSERBASECURRENCYID | uniqueidentifier | INOUT | Current app user base currency ID |
@ADJUSTMATCHINGGIFTCLAIMS | tinyint | INOUT | |
@HASGIFTFEES | bit | INOUT | |
@UPDATEGIFTFEEOPTION | bit | INOUT | |
@REVENUETRANSACTIONCODE | tinyint | INOUT | |
@GIFTFEESENABLED | bit | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_REVENUEBENEFITS
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@BENEFITS xml = null output,
@BENEFITSWAIVED bit = null output,
@GIFTAMOUNT money = null output,
@APPEALID uniqueidentifier = null output,
@TSLONG bigint = 0 output,
@PERCENTAGEBENEFITS xml = null output,
@REVENUETRANSACTIONCURRENCYID uniqueidentifier = null output,
@REVENUETRANSACTIONCURRENCYDECIMALDIGITS tinyint = null output,
@REVENUETRANSACTIONCURRENCYROUNDINGTYPECODE tinyint = null output,
@EVENTREGISTRATIONS xml = null output,
@REVENUEBASECURRENCYID uniqueidentifier = null output,
@REVENUEBASECURRENCYDECIMALDIGITS tinyint = null output,
@REVENUEBASECURRENCYROUNDINGTYPECODE tinyint = null output,
@GIFTTRANSACTIONAMOUNT money = null output,
@CURRENTAPPUSERID uniqueidentifier = null,
@APPUSERBASECURRENCYID uniqueidentifier = null output,
@ADJUSTMATCHINGGIFTCLAIMS tinyint = null output,
@HASGIFTFEES bit = null output,
@UPDATEGIFTFEEOPTION bit = null output,
@REVENUETRANSACTIONCODE tinyint = null output,
@GIFTFEESENABLED bit = null output
)
as
set nocount on;
set @DATALOADED = 0;
set @TSLONG = 0;
select
@BENEFITSWAIVED = REVENUE_EXT.BENEFITSWAIVED,
@GIFTAMOUNT = FINANCIALTRANSACTION.BASEAMOUNT,
@GIFTTRANSACTIONAMOUNT = FINANCIALTRANSACTION.TRANSACTIONAMOUNT,
@APPEALID = REVENUE_EXT.APPEALID,
@DATALOADED=1,
@REVENUETRANSACTIONCURRENCYID = FINANCIALTRANSACTION.TRANSACTIONCURRENCYID,
@REVENUEBASECURRENCYID = isnull(REVENUE_EXT.NONPOSTABLEBASECURRENCYID, CURRENCYSET.BASECURRENCYID),
@REVENUETRANSACTIONCODE = FINANCIALTRANSACTION.TYPECODE
from
dbo.FINANCIALTRANSACTION
inner join
dbo.REVENUE_EXT on FINANCIALTRANSACTION.ID = REVENUE_EXT.ID
inner join
dbo.PDACCOUNTSYSTEM on FINANCIALTRANSACTION.PDACCOUNTSYSTEMID = PDACCOUNTSYSTEM.ID
inner join
dbo.CURRENCYSET on PDACCOUNTSYSTEM.CURRENCYSETID = CURRENCYSET.ID
where
FINANCIALTRANSACTION.ID = @ID
and FINANCIALTRANSACTION.DELETEDON is null
select
@REVENUETRANSACTIONCURRENCYDECIMALDIGITS = DECIMALDIGITS,
@REVENUETRANSACTIONCURRENCYROUNDINGTYPECODE = ROUNDINGTYPECODE
from
dbo.CURRENCY
where
ID = @REVENUETRANSACTIONCURRENCYID;
select
@REVENUEBASECURRENCYDECIMALDIGITS = DECIMALDIGITS,
@REVENUEBASECURRENCYROUNDINGTYPECODE = ROUNDINGTYPECODE
from
dbo.CURRENCY
where
ID = @REVENUEBASECURRENCYID;
exec dbo.USP_REVENUE_GETBENEFITSSPLIT @ID, @BENEFITS output, @PERCENTAGEBENEFITS output;
select @TSLONG = coalesce(max(TSLONG), 0) from dbo.REVENUEBENEFIT where REVENUEID = @ID
select @EVENTREGISTRATIONS = (
select
EVENTREGISTRANTPAYMENT.REGISTRANTID as ID
from dbo.EVENTREGISTRANTPAYMENT
inner join dbo.FINANCIALTRANSACTIONLINEITEM on EVENTREGISTRANTPAYMENT.PAYMENTID = FINANCIALTRANSACTIONLINEITEM.ID
inner join dbo.REVENUESPLIT_EXT on FINANCIALTRANSACTIONLINEITEM.ID = REVENUESPLIT_EXT.ID
where
FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID = @ID and
FINANCIALTRANSACTIONLINEITEM.DELETEDON is null and
FINANCIALTRANSACTIONLINEITEM.TYPECODE <> 1 and
FINANCIALTRANSACTIONLINEITEM.ORGAMOUNT = ( select
sum(ORGANIZATIONAMOUNT)
from dbo.REGISTRANTREGISTRATION
where
REGISTRANTREGISTRATION.REGISTRANTID = EVENTREGISTRANTPAYMENT.REGISTRANTID)
for xml raw('ITEM'),type,elements,root('EVENTREGISTRATIONS'),BINARY BASE64
);
set @APPUSERBASECURRENCYID = dbo.UFN_APPUSER_GETBASECURRENCY(@CURRENTAPPUSERID);
set @ADJUSTMATCHINGGIFTCLAIMS = 3;
set @HASGIFTFEES = 0;
if (select top 1 1 from dbo.REVENUESPLITGIFTFEE GF inner join dbo.FINANCIALTRANSACTIONLINEITEM LI on LI.ID = GF.ID where LI.FINANCIALTRANSACTIONID = @ID) = 1
set @HASGIFTFEES = 1;
set @UPDATEGIFTFEEOPTION = 0;
set @GIFTFEESENABLED = 0
select @GIFTFEESENABLED = GIFTFEEOPTION.ENABLED from dbo.GIFTFEEOPTION;
return 0;