USP_DATAFORMTEMPLATE_VIEW_PAYMENTREGISTRANTVIEW

The load procedure used by the view dataform template "Payment: Event Registration View 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.
@AMOUNT money INOUT AMOUNT
@RECEIPTAMOUNT money INOUT RECEIPTAMOUNT
@AMOUNTMINUSCOST money INOUT AMOUNTMINUSCOST
@APPLICATIONCURRENCYID uniqueidentifier INOUT APPLICATIONCURRENCYID

Definition

Copy

            CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_PAYMENTREGISTRANTVIEW
            (
                @ID uniqueidentifier,
                @DATALOADED bit = 0 output,
                @AMOUNT money = null output,
                @RECEIPTAMOUNT money = null output,
                @AMOUNTMINUSCOST money = null output,
                @APPLICATIONCURRENCYID uniqueidentifier = null output
        )
            as
            begin
                set nocount on;

                set @DATALOADED = 0;

                select
                    @RECEIPTAMOUNT = sum(REGISTRANTREGISTRATION.RECEIPTAMOUNT),
                    @AMOUNTMINUSCOST = sum((EVENTPRICE.AMOUNT - EVENTPRICE.COST) * REGISTRANTREGISTRATION.QUANTITY),
                    @APPLICATIONCURRENCYID = EVENT.BASECURRENCYID
                from 
                    dbo.REGISTRANTREGISTRATION
                inner join dbo.EVENTPRICE on REGISTRANTREGISTRATION.EVENTPRICEID = EVENTPRICE.ID
                inner join dbo.EVENT on EVENTPRICE.EVENTID = EVENT.ID
                where
                    REGISTRANTREGISTRATION.REGISTRANTID = @ID and
                    -- Exclude registrations that had their registration fees waived
                    REGISTRANTREGISTRATION.AMOUNT > 0
                group by EVENT.BASECURRENCYID;

                set @AMOUNT = dbo.UFN_EVENTREGISTRANT_GETBALANCE(@ID);
                if @AMOUNT is not null
                    set @DATALOADED = 1;

                return 0
            end