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;