USP_BBNC_COMMITEVENTREGISTRATIONREGISTRANTBENEFITSADD

Adds registration benefits from an event registration Blackbaud Internet Solutions transaction to the system from a given batch.

Parameters

Parameter Parameter Type Mode Description
@REGISTRANTID uniqueidentifier IN
@EVENTPRICEID uniqueidentifier IN
@QUANTITY int IN
@CHANGEAGENTID uniqueidentifier IN
@CHANGEDATE datetime IN

Definition

Copy


            CREATE procedure dbo.USP_BBNC_COMMITEVENTREGISTRATIONREGISTRANTBENEFITSADD
            (
                @REGISTRANTID uniqueidentifier = null,
                @EVENTPRICEID uniqueidentifier = null,
                @QUANTITY int = 1,
                @CHANGEAGENTID uniqueidentifier = null,
                @CHANGEDATE datetime = null
            )
            as
                set nocount on;

                if @CHANGEAGENTID is null
                    exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

                if @CHANGEDATE is null
                    set @CHANGEDATE = getdate();

                if @QUANTITY is null or @QUANTITY < 1
                    set @QUANTITY = 1;

                begin try
                    insert into dbo.REGISTRANTBENEFIT
                    (
                        REGISTRANTID,
                        BENEFITID,
                        UNITVALUE,
                        QUANTITY,
                        TOTALVALUE,
                        DETAILS,
                        ADDEDBYID,
                        CHANGEDBYID,
                        DATEADDED,
                        DATECHANGED,
            BASECURRENCYID,
            EVENTBASECURRENCYTOTALVALUE,
            BASEEXCHANGERATEID,
            ORGANIZATIONTOTALVALUE,
            ORGANIZATIONEXCHANGERATEID
                    )
                    select
                        @REGISTRANTID,
                        EVENTPRICEBENEFIT.BENEFITID,
                        (@QUANTITY * EVENTPRICEBENEFIT.UNITVALUE),
                        (@QUANTITY * EVENTPRICEBENEFIT.QUANTITY),
                        ((@QUANTITY * EVENTPRICEBENEFIT.UNITVALUE) * (@QUANTITY * EVENTPRICEBENEFIT.QUANTITY)),
                        EVENTPRICEBENEFIT.DETAILS,
                        @CHANGEAGENTID,
                        @CHANGEAGENTID,
                        @CHANGEDATE,
                        @CHANGEDATE,
            EVENTPRICEBENEFIT.BASECURRENCYID,
            EVENTPRICEBENEFIT.EVENTBASECURRENCYTOTALVALUE,
            EVENTPRICEBENEFIT.BASEEXCHANGERATEID,
            EVENTPRICEBENEFIT.ORGANIZATIONTOTALVALUE,
            EVENTPRICEBENEFIT.ORGANIZATIONEXCHANGERATEID
                    from
                        dbo.EVENTPRICEBENEFIT
                    where
                        EVENTPRICEBENEFIT.EVENTPRICEID = @EVENTPRICEID;
                end try
                begin catch
                    exec dbo.USP_RAISE_ERROR;
                    return 1;
                end catch

                return 0;