USP_DATAFORMTEMPLATE_ADD_REGISTRANTUNIFIED_PRELOAD

The load procedure used by the edit dataform template "Registrant Unified Add Form"

Parameters

Parameter Parameter Type Mode Description
@EVENTID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@EVENTNAME nvarchar(100) INOUT Event
@MAINEVENTID uniqueidentifier INOUT MAINEVENTID
@MAINEVENTNAME nvarchar(100) INOUT Main event
@PACKAGESPRICES xml INOUT
@MULTICOMPONENTEVENTSWITHPRICES xml INOUT
@MULTICOMPONENTEVENTPRICEBENEFITS xml INOUT
@MULTICOMPONENTEVENTPREFERENCEGROUPS xml INOUT
@MULTICOMPONENTEVENTAPPEALS xml INOUT
@CONSTITUENTRECORDTYPEID uniqueidentifier INOUT
@MULTICOMPONENTEVENTSCHEDULES xml INOUT
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@SINGLEEVENTLIST xml INOUT
@EVENTCURRENCY xml INOUT
@EVENTHASSTARTED bit INOUT

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_REGISTRANTUNIFIED_PRELOAD
                    (
                        @EVENTID uniqueidentifier,
                        @EVENTNAME nvarchar(100) = null output,
                        @MAINEVENTID uniqueidentifier = null output,
                        @MAINEVENTNAME nvarchar(100) = null output,
                        @PACKAGESPRICES xml = null output,
                        @MULTICOMPONENTEVENTSWITHPRICES xml = null output,
                        @MULTICOMPONENTEVENTPRICEBENEFITS xml = null output,
                        @MULTICOMPONENTEVENTPREFERENCEGROUPS xml = null output,
                        @MULTICOMPONENTEVENTAPPEALS xml = null output,
                        @CONSTITUENTRECORDTYPEID uniqueidentifier = null output,
                        @MULTICOMPONENTEVENTSCHEDULES xml = null output,
                        @CURRENTAPPUSERID uniqueidentifier = null,
                        @SINGLEEVENTLIST xml = null output,
                        @EVENTCURRENCY xml = null output,
            @EVENTHASSTARTED bit = null output
                    )
                    as
                        set nocount on;

            declare @EVENTSTARTDATE date, @EVENTSTARTTIME dbo.UDT_HOURMINUTE;

                        select
                            @EVENTNAME = [EVENT].[NAME],
                            @MAINEVENTID = 
                            case
                                when [EVENT].[MAINEVENTID] is not null then [EVENT].[MAINEVENTID]
                                when exists(select ID from dbo.EVENT [SUBEVENT] where [SUBEVENT].[MAINEVENTID] = [EVENT].[ID]) then [EVENT].[ID]
                                else null
                            end,
              @EVENTSTARTDATE = STARTDATE,
              @EVENTSTARTTIME = case STARTTIME when '' then '0000' else STARTTIME end
                        from
                            dbo.EVENT
                        where
                            [EVENT].[ID] = @EVENTID;

                        select
                            @MAINEVENTNAME = [EVENT].[NAME]
                        from
                            dbo.EVENT
                        where
                            [EVENT].[ID] = @MAINEVENTID;

                        declare @MAINEVENTIDPARAMETER uniqueidentifier;
                        set @MAINEVENTIDPARAMETER = isnull(@MAINEVENTID, @EVENTID);

                        set @PACKAGESPRICES = dbo.UFN_REGISTRATIONPACKAGE_GETPACKAGESPRICES_3_TOITEMLISTXML(@EVENTID, @MAINEVENTIDPARAMETER, @CURRENTAPPUSERID);
                        set @MULTICOMPONENTEVENTSWITHPRICES = dbo.UFN_EVENTPRICE_GETMULTICOMPONENTEVENTSWITHPRICES_2_TOITEMLISTXML(@EVENTID, @MAINEVENTIDPARAMETER, @CURRENTAPPUSERID);
                        set @MULTICOMPONENTEVENTPRICEBENEFITS = dbo.UFN_EVENTPRICEBENEFIT_GETMULTICOMPONENTEVENTPRICEBENEFITS_TOITEMLISTXML(@MAINEVENTIDPARAMETER);
                        set @MULTICOMPONENTEVENTPREFERENCEGROUPS = dbo.UFN_EVENTPREFERENCEGROUP_GETMULTICOMPONENTEVENTPREFERENCEGROUPS_TOITEMLISTXML(@MAINEVENTIDPARAMETER);
                        set @MULTICOMPONENTEVENTAPPEALS = dbo.UFN_EVENT_GETMULTICOMPONENTEVENTAPPEALS_TOITEMLISTXML(@MAINEVENTIDPARAMETER);
                        set @CONSTITUENTRECORDTYPEID=dbo.UFN_RECORDTYPE_GETIDBYNAME('Constituent');
                        set @MULTICOMPONENTEVENTSCHEDULES = dbo.UFN_EVENT_GETMULTICOMPONENTSCHEDULES_TOITEMLISTXML(@MAINEVENTIDPARAMETER);
                        set @SINGLEEVENTLIST = (select ID from dbo.UFN_CHILDEVENTSWITHSITEACCESS(@EVENTID, @CURRENTAPPUSERID) for xml raw('ITEM'),type,elements,root('SINGLEEVENTLIST'),BINARY BASE64)
                        set @EVENTCURRENCY = dbo.UFN_EVENT_GETRELATEDEVENTCURRENCIES_TOITEMLISTXML(@PACKAGESPRICES, @MULTICOMPONENTEVENTSWITHPRICES);

            if getdate() > dateadd(minute,cast(substring(@EVENTSTARTTIME,3,2) as tinyint),dateadd(hour,cast(substring(@EVENTSTARTTIME,1,2) as tinyint),cast(@EVENTSTARTDATE as datetime)))
              set @EVENTHASSTARTED = 1;
            else
              set @EVENTHASSTARTED = 0;

                        return 0;