USP_DATAFORMTEMPLATE_EDITLOAD_EVENTSEATING

The load procedure used by the edit dataform template "Event Seating Edit Form"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@DATALOADED bit INOUT Output parameter indicating whether or not data was actually loaded.
@REGISTRANTFILTER int INOUT Show
@SUBSECTIONCOUNT int INOUT No. of sub-sections per section
@SEATCOUNT int INOUT No. of seats per sub-section
@SUBSECTIONTYPECODE tinyint INOUT Seating layout
@SUBSECTIONSUSECONTINUOUSNUMBERING bit INOUT Use continuous numbering
@SEATSUSECONTINUOUSNUMBERING bit INOUT Use continuous numbering
@EVENTNAME nvarchar(100) INOUT EVENTNAME
@SECTIONS xml INOUT
@SUBSECTIONS xml INOUT
@SEATS xml INOUT Seats
@TSLONG bigint INOUT Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record.

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_EVENTSEATING
                    (
                        @ID uniqueidentifier,
                        @DATALOADED bit = 0 output,
                        @REGISTRANTFILTER int = null output,
                        @SUBSECTIONCOUNT int = null output,
                        @SEATCOUNT int = null output,
                        @SUBSECTIONTYPECODE tinyint = null output,
                        @SUBSECTIONSUSECONTINUOUSNUMBERING bit = null output,
                        @SEATSUSECONTINUOUSNUMBERING bit = null output,
                        @EVENTNAME nvarchar(100) = null output,
                        @SECTIONS xml = null output,
                        @SUBSECTIONS xml = null output,
                        @SEATS xml = null output,
                        @TSLONG bigint = 0 output
                    )
                    as
                    begin
                        set nocount on;

                        set @DATALOADED = 0;
                        set @TSLONG = 0;

                        select
                            @DATALOADED = 1,
                            @TSLONG = TSLONG,
                            @REGISTRANTFILTER = 0,
                            @SUBSECTIONCOUNT = SUBSECTIONCOUNT,
                            @SEATCOUNT = SEATCOUNT,
                            @SUBSECTIONTYPECODE = SUBSECTIONTYPECODE ,
                            @SUBSECTIONSUSECONTINUOUSNUMBERING = SUBSECTIONSUSECONTINUOUSNUMBERING,
                            @SEATSUSECONTINUOUSNUMBERING = SEATSUSECONTINUOUSNUMBERING,
                            @EVENTNAME = dbo.UFN_EVENT_GETNAME(ID)
                        from 
                            dbo.EVENTSEATING
                        where 
                            EVENTSEATING.ID = @ID;

                        if @DATALOADED = 1 begin
                            set @SECTIONS = dbo.UFN_EVENTSEATING_GETSECTIONS_TOITEMLISTXML(@ID);
                            set @SUBSECTIONS = dbo.UFN_EVENTSEATING_GETALLSUBSECTIONS(@ID);
                            set @SEATS =  dbo.UFN_EVENTSEATING_GETALLSEATS(@ID);
                        end

            select
              @TSLONG = max(TSLONGUNION.TSLONG)
            from
              (select EVENTSEATINGSEAT.TSLONG
               from dbo.EVENTSEATINGSEAT
                    inner join dbo.EVENTSEATINGSUBSECTION on EVENTSEATINGSUBSECTION.ID = EVENTSEATINGSEAT.EVENTSEATINGSUBSECTIONID
                    inner join dbo.EVENTSEATINGSECTION on EVENTSEATINGSECTION.ID = EVENTSEATINGSUBSECTION.EVENTSEATINGSECTIONID
                    inner join dbo.EVENTSEATING on EVENTSEATING.ID = EVENTSEATINGSECTION.EVENTSEATINGID
               where
                EVENTSEATING.ID = @ID

               union all

               select EVENTSEATINGSUBSECTION.TSLONG
               from dbo.EVENTSEATINGSUBSECTION
                          inner join dbo.EVENTSEATINGSECTION on EVENTSEATINGSECTION.ID = EVENTSEATINGSUBSECTION.EVENTSEATINGSECTIONID
                          inner join dbo.EVENTSEATING on EVENTSEATING.ID = EVENTSEATINGSECTION.EVENTSEATINGID
               where
                EVENTSEATING.ID = @ID

               union all

               select EVENTSEATINGSECTION.TSLONG
               from dbo.EVENTSEATINGSECTION
                          inner join dbo.EVENTSEATING on EVENTSEATING.ID = EVENTSEATINGSECTION.EVENTSEATINGID
               where
                EVENTSEATING.ID = @ID

               union all

               select EVENTSEATING.TSLONG
               from dbo.EVENTSEATING
               where
                EVENTSEATING.ID = @ID
            ) TSLONGUNION;

                        return 0
                    end