USP_AMPROIMPORT_COMMITREGISTRANT

Commits a registrant from AuctionMaestro Pro.

Parameters

Parameter Parameter Type Mode Description
@REGISTRANTID uniqueidentifier INOUT
@BATCHROWID uniqueidentifier IN
@EVENTID uniqueidentifier IN
@CONSTITUENTID uniqueidentifier IN
@EVENTPRICEID uniqueidentifier IN
@AMOUNT money IN
@ATTENDING bit IN
@CHANGEAGENTID uniqueidentifier IN
@CHANGEDATE datetime IN

Definition

Copy


            CREATE procedure dbo.USP_AMPROIMPORT_COMMITREGISTRANT
            (
                @REGISTRANTID uniqueidentifier output,
                @BATCHROWID uniqueidentifier,
                @EVENTID uniqueidentifier,
                @CONSTITUENTID uniqueidentifier,
                @EVENTPRICEID uniqueidentifier,
                @AMOUNT money = 0,
                @ATTENDING bit = 0,
                @CHANGEAGENTID uniqueidentifier,
                @CHANGEDATE datetime
            )
            as
            begin
                set nocount on;
                declare @EMPTYGUID uniqueidentifier = '00000000-0000-0000-0000-000000000000'
                if @BATCHROWID = @EMPTYGUID
                    set @BATCHROWID = null;
                if @EVENTID = @EMPTYGUID
                    set @EVENTID = null;
                if @CONSTITUENTID = @EMPTYGUID
                    set @CONSTITUENTID = null;
                if @EVENTPRICEID = @EMPTYGUID
                    set @EVENTPRICEID = null;    

                declare @RECEIPTAMOUNT money;
                if @EVENTPRICEID is null
                begin
                    select @AMOUNT = 0, @RECEIPTAMOUNT = 0;
                end
                else
                begin
                    select 
                        @RECEIPTAMOUNT = case when EVENTPRICE.AMOUNT = 0 then 0 else (EVENTPRICE.RECEIPTAMOUNT / EVENTPRICE.AMOUNT) * @AMOUNT end 
                    from 
                        dbo.EVENTPRICE 
                    where 
                        EVENTPRICE.ID = @EVENTPRICEID;
                end

                declare @SINGLEEVENTREGISTRATIONID uniqueidentifier;
                select @SINGLEEVENTREGISTRATIONID = newid();

                declare @SINGLEEVENTREGISTRATIONS xml;
                select @SINGLEEVENTREGISTRATIONS = 
                    (
                        select
                            @SINGLEEVENTREGISTRATIONID as [SINGLEEVENTREGISTRATIONID],
                            @EVENTID as [SINGLEEVENTREGISTRATIONEVENTID],
                            @EVENTPRICEID as [SINGLEEVENTREGISTRATIONEVENTPRICEID],
                            1 as [QUANTITY],
                            @AMOUNT as [AMOUNT],
                            @RECEIPTAMOUNT as [RECEIPTAMOUNT]
                        for xml raw('ITEM'), type, elements, root('SINGLEEVENTREGISTRATIONS'), binary base64
                    )

                declare @REGISTRANTMAPPINGS xml;
                select @REGISTRANTMAPPINGS = 
                    (
                        select
                            @EVENTID as [EVENTID],
                            @EVENTPRICEID as [EVENTPRICEID],
                            @SINGLEEVENTREGISTRATIONID as [REGISTRATIONCOLLECTIONID],
                            (
                                select
                                    @EVENTID as [EVENTID],
                                    0 as [WAIVEBENEFITS]
                                for xml raw('ITEM'), type, elements, root('REGISTRANTWAIVEBENEFITS'), binary base64
                            ) as [REGISTRANTWAIVEBENEFITS],
                            @CONSTITUENTID as [GUESTCONSTITUENTID],
                            0 as [WAIVEREGISTRATIONFEE],
                            0 as [HASNOTIFICATIONS]
                        for xml raw('ITEM'), type, elements, root('REGISTRANTMAPPINGS'), binary base64
                    )

                exec dbo.USP_REGISTRANT_UNIFIEDUPDATE
                    @ID = @REGISTRANTID output,
                    @CURRENTAPPUSERID = null,
                    @SECURITYCONTEXTFORMINSTANCEID = null,
                    @CHANGEAGENTID = @CHANGEAGENTID,
                    @CURRENTDATE = @CHANGEDATE,
                    @EVENTID = @EVENTID,
                    @CONSTITUENTID = @CONSTITUENTID,
                    @DATEPURCHASED = null,
                    @PACKAGEREGISTRATIONS = null,
                    @PACKAGESPRICES = null,
                    @SINGLEEVENTREGISTRATIONS = @SINGLEEVENTREGISTRATIONS,
                    @WAIVEBENEFITS = 0,
                    @REGISTRANTMAPPINGS = @REGISTRANTMAPPINGS,
                    @DELETEDREGISTRANTREGISTRATIONMAPS = null,
                    @ISADD = 1,
                    @BYPASSSECURITY = 1,
                    @ISWALKIN = 1;


                update dbo.BATCHAMPROIMPORTPURCHASEDETAIL 
                set 
                    BATCHAMPROIMPORTPURCHASEDETAIL.PURCHASE_REGISTRANTID = @REGISTRANTID,
                    CHANGEDBYID = @CHANGEAGENTID,
                    DATECHANGED = @CHANGEDATE
                where 
                    BATCHAMPROIMPORTPURCHASEDETAIL.PURCHASE_REGISTRANTID = @BATCHROWID;
            end