USP_SALESORDER_UPDATEPREREGISTEREDEVENTHOST

Replaces pre-registered event host with the constituent on the order for each event on the order.

Parameters

Parameter Parameter Type Mode Description
@SALESORDERID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN

Definition

Copy


            CREATE procedure dbo.USP_SALESORDER_UPDATEPREREGISTEREDEVENTHOST
            (
                @SALESORDERID uniqueidentifier = null,
                @CHANGEAGENTID uniqueidentifier = null
            )
            as
            begin
                if @CHANGEAGENTID is null  
                    exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output

                --Get each preregistered event on the order and update its host

                declare preregisteredevent_cursor cursor local fast_forward for 
                select distinct [SALESORDERITEMTICKET].[EVENTID]
                from dbo.[SALESORDERITEM]
                inner join dbo.[SALESORDERITEMTICKET]
                    on [SALESORDERITEM].[ID] = [SALESORDERITEMTICKET].[ID]
                inner join dbo.[SALESORDERITEMTICKETREGISTRANT]
                    on [SALESORDERITEMTICKET].[ID] = [SALESORDERITEMTICKETREGISTRANT].[SALESORDERITEMTICKETID]
                where 
                    [SALESORDERITEM].[SALESORDERID] = @SALESORDERID

                open preregisteredevent_cursor

                declare @EVENTID uniqueidentifier = null
                fetch next from preregisteredevent_cursor
                into @EVENTID

                while @@FETCH_STATUS = 0
                begin
                    exec dbo.USP_SALESORDER_PREREGISTEREDEVENT_UPDATEHOST @CHANGEAGENTID, @SALESORDERID, @EVENTID;

                    fetch next from preregisteredevent_cursor
                    into @EVENTID
                end

                close  preregisteredevent_cursor
                deallocate preregisteredevent_cursor

            end