USP_DATAFORMTEMPLATE_ADJUSTLOAD_REVENUEBENEFITS
The load procedure used by the edit dataform template "Posted Revenue Benefits Edit Data 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 |
@ADJUSTMENTDATE | datetime | INOUT | Adjusted date |
@ADJUSTMENTPOSTDATE | datetime | INOUT | Adjusted post date |
@ADJUSTMENTPOSTSTATUSCODE | tinyint | INOUT | Post status code |
@ADJUSTMENTREASON | nvarchar(300) | INOUT | Adjustment details |
@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. |
@ADJUSTMENTREASONCODEID | uniqueidentifier | INOUT | Adjustment reason |
@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 |
@HASGIFTFEES | bit | INOUT | |
@UPDATEGIFTFEEOPTION | bit | INOUT | |
@REVENUETRANSACTIONCODE | tinyint | INOUT | |
@GIFTFEESENABLED | bit | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADJUSTLOAD_REVENUEBENEFITS
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@BENEFITS xml = null output,
@BENEFITSWAIVED bit = null output,
@GIFTAMOUNT money = null output,
@APPEALID uniqueidentifier = null output,
@ADJUSTMENTDATE datetime = null output,
@ADJUSTMENTPOSTDATE datetime = null output,
@ADJUSTMENTPOSTSTATUSCODE tinyint = null output,
@ADJUSTMENTREASON nvarchar(300) = null output,
@TSLONG bigint = 0 output,
@ADJUSTMENTREASONCODEID uniqueidentifier = null 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,
@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 @ADJUSTMENTDATE = dbo.UFN_DATE_GETEARLIESTTIME(getdate()),
@ADJUSTMENTPOSTDATE = dbo.UFN_DATE_GETEARLIESTTIME(getdate()),
@ADJUSTMENTPOSTSTATUSCODE = 1;
select top 1
@ADJUSTMENTDATE = BENEFITADJUSTMENT.DATE,
@ADJUSTMENTPOSTDATE = BENEFITADJUSTMENT.POSTDATE,
@ADJUSTMENTPOSTSTATUSCODE = 1,
@ADJUSTMENTREASON = REASON,
@ADJUSTMENTREASONCODEID = REASONCODEID,
@ADJUSTMENTPOSTSTATUSCODE = POSTSTATUSCODE
from dbo.BENEFITADJUSTMENT
where REVENUEID = @ID and BENEFITADJUSTMENT.POSTSTATUSCODE <> 0
order by DATEADDED desc
select
@BENEFITSWAIVED = BENEFITSWAIVED,
@GIFTAMOUNT = AMOUNT,
@GIFTTRANSACTIONAMOUNT = TRANSACTIONAMOUNT,
@APPEALID = APPEALID,
@DATALOADED=1,
@REVENUETRANSACTIONCURRENCYID = TRANSACTIONCURRENCYID,
@REVENUEBASECURRENCYID = BASECURRENCYID,
@REVENUETRANSACTIONCODE = REVENUE.TRANSACTIONTYPECODE
from
dbo.REVENUE
where
ID = @ID
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.REVENUESPLIT on EVENTREGISTRANTPAYMENT.PAYMENTID = REVENUESPLIT.ID
where
REVENUESPLIT.REVENUEID = @ID and
REVENUESPLIT.ORGANIZATIONAMOUNT = ( 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 @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;