USP_DATAFORMTEMPLATE_VIEW_EVENTREGISTRANTMOBILE

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN
@DATALOADED bit INOUT
@EVENTID uniqueidentifier INOUT
@ATTENDED bit INOUT
@ISCANCELLED bit INOUT
@ORDERNUMBER int INOUT
@BALANCE money INOUT
@PREFERENCES nvarchar(255) INOUT
@RESTRICTIONS nvarchar(255) INOUT
@NOTES nvarchar(255) INOUT
@ISUNNAMEDGUEST bit INOUT
@CONSTITUENTID uniqueidentifier INOUT
@ISWALKIN bit INOUT
@USERMARKEDATTENDANCE bit INOUT
@SPECIALEVENTHOSTCANCELLED bit INOUT

Definition

Copy

            create procedure dbo.USP_DATAFORMTEMPLATE_VIEW_EVENTREGISTRANTMOBILE
            (
                @ID uniqueidentifier,
                @DATALOADED bit = 0 output,
                @EVENTID uniqueidentifier = null output,
                @ATTENDED bit = null output,
                @ISCANCELLED bit = null output,
                @ORDERNUMBER int = null output,
                @BALANCE money = null output,
                @PREFERENCES nvarchar(255) = null output,
                @RESTRICTIONS nvarchar(255) = null output,
                @NOTES nvarchar(255) = null output,
                @ISUNNAMEDGUEST bit = null output,
                @CONSTITUENTID uniqueidentifier = null output,
                @ISWALKIN bit = null output,
                @USERMARKEDATTENDANCE bit = null output,
                @SPECIALEVENTHOSTCANCELLED bit = null output
            )
            as
                set nocount on;

                set @DATALOADED = 0;

                select 
                    @DATALOADED = 1,
                    @EVENTID = REGISTRANT.EVENTID,
                    @ATTENDED = REGISTRANT.ATTENDED,
                    @ISCANCELLED = REGISTRANT.ISCANCELLED,
                    @ORDERNUMBER = SALESORDER.SEQUENCEID,
                    @BALANCE = case 
                                when SALESORDER.ID is null then 
                                    REGISTRANT_BALANCE.BALANCEINCURRENCY 
                                else dbo.UFN_SALESORDER_GETAMOUNTDUE(SALESORDER.ID) 
                               end,
                    @PREFERENCES = 
                        coalesce((
                            select dbo.UDA_BUILDLIST(EVENTPREFERENCE.NAME) 
                            from dbo.EVENTPREFERENCE
                            inner join dbo.REGISTRANTPREFERENCE on
                                EVENTPREFERENCE.ID = REGISTRANTPREFERENCE.EVENTPREFERENCEID
                            where
                                REGISTRANTPREFERENCE.REGISTRANTID = REGISTRANT.ID
                        ),''),
                    @RESTRICTIONS = 
                        coalesce((
                            select dbo.UDA_BUILDLIST(RESTRICTION.NAME) from 
                            (    
                                select EVENTRESTRICTIONOPTION.NAME
                                from dbo.EVENTRESTRICTIONOPTION
                                inner join dbo.CONSTITUENTRESTRICTIONOPTION 
                                    on CONSTITUENTRESTRICTIONOPTION.EVENTRESTRICTIONOPTIONID = EVENTRESTRICTIONOPTION.ID
                                where CONSTITUENTRESTRICTIONOPTION.CONSTITUENTID = REGISTRANT.CONSTITUENTID
                            ) as [RESTRICTION]
                        ),''),
                    @NOTES = REGISTRANT.NOTES,
                    @ISUNNAMEDGUEST = case
                        when REGISTRANT.CONSTITUENTID is null then 1
                        else 0
                    end,
                    @CONSTITUENTID = REGISTRANT.CONSTITUENTID,
                    @ISWALKIN = REGISTRANT.ISWALKIN,
                    @USERMARKEDATTENDANCE = REGISTRANT.USERMARKEDATTENDANCE,
                    @SPECIALEVENTHOSTCANCELLED = coalesce((
                                                            select
                                                                ISCANCELLED
                                                            from dbo.REGISTRANT as REG
                                                            inner join dbo.EVENT on
                                                                EVENT.ID = REG.EVENTID
                                                            where
                                                                REG.ID = REGISTRANT.GUESTOFREGISTRANTID
                                                                and EVENT.PROGRAMID is null
                                                           ), 0)

                from dbo.REGISTRANT
                left join UFN_EVENTREGISTRANT_GETBALANCEINCURRENCY_BULK((select ID from CURRENCY where ISORGANIZATIONCURRENCY = 1)) as REGISTRANT_BALANCE on
                    REGISTRANT.ID = REGISTRANT_BALANCE.ID
                left join dbo.SALESORDERITEMTICKETREGISTRANT on 
                    REGISTRANT.ID = SALESORDERITEMTICKETREGISTRANT.REGISTRANTID
                left join dbo.SALESORDERITEM on 
                    SALESORDERITEMTICKETREGISTRANT.SALESORDERITEMTICKETID = SALESORDERITEM.ID
                left join dbo.SALESORDER on 
                    SALESORDERITEM.SALESORDERID = SALESORDER.ID
                where 
                    REGISTRANT.ID = @ID

                return 0;