USP_DATAFORMTEMPLATE_PRELOAD_ADD_ORDERTICKET

The load procedure used by the edit dataform template "Order Ticket Add Data Form"

Parameters

Parameter Parameter Type Mode Description
@EVENTID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@PRICETYPES xml INOUT Prices
@EVENTDATE datetime INOUT Date
@STARTTIME UDT_HOURMINUTE INOUT Start time
@ENDTIME UDT_HOURMINUTE INOUT End time
@ORDERID uniqueidentifier INOUT Order ID
@EVENTNAME nvarchar(100) INOUT Event
@PROGRAMNAME nvarchar(100) INOUT Program

Definition

Copy


                CREATE procedure dbo.USP_DATAFORMTEMPLATE_PRELOAD_ADD_ORDERTICKET
                (
                    @EVENTID uniqueidentifier,
                    @PRICETYPES xml = null output,
                    @EVENTDATE datetime = null output,
                    @STARTTIME dbo.UDT_HOURMINUTE = null output,
                    @ENDTIME dbo.UDT_HOURMINUTE = null output,
                    @ORDERID uniqueidentifier = null output,
                    @EVENTNAME nvarchar(100) = null output,
                    @PROGRAMNAME nvarchar(100) = null output
                )
                as
                    set nocount on;

                    declare @PROGRAMID uniqueidentifier

                    select 
                        @EVENTDATE = EVENT.STARTDATE,
                        @STARTTIME = EVENT.STARTTIME,
                        @ENDTIME = EVENT.ENDTIME,
                        @EVENTNAME = EVENT.NAME, 
                        @PROGRAMNAME = PROGRAM.NAME,
                        @PROGRAMID = PROGRAM.ID
                    from dbo.EVENT
                    inner join dbo.PROGRAM on EVENT.PROGRAMID = PROGRAM.ID
                    where EVENT.ID = @EVENTID

                    declare @ADVANCESALESMETHODID uniqueidentifier
                    select @ADVANCESALESMETHODID = ID
                    from dbo.SALESMETHOD
                    where TYPECODE = 1

                    if exists (select 1 from dbo.PROGRAMEVENTPRICE where EVENTID = @EVENTID)
                    begin
                    set @PRICETYPES =
                        (
                            select
                                PROGRAMEVENTPRICE.ID,
                                dbo.UFN_PRICETYPECODE_GETDESCRIPTION(PROGRAMEVENTPRICE.PRICETYPECODEID) as PRICETYPE,
                                PROGRAMEVENTPRICE.PRICETYPECODEID,
                                PROGRAMEVENTPRICE.SEQUENCE,
                                PROGRAMEVENTPRICE.FACEPRICE,
                                0 as ZERO,
                                1 as ONE,
                                2 as TWO,
                                3 as THREE,
                                4 as FOUR,
                                5 as FIVE,
                                6 as SIX,
                                7 as SEVEN,
                                8 as EIGHT,
                                9 as NINE,
                                0 as QUANTITY
                            from dbo.PROGRAMEVENTPRICE
                            inner join dbo.PRICETYPECODE on PRICETYPECODE.ID = PROGRAMEVENTPRICE.PRICETYPECODEID
                            where 
                                PROGRAMEVENTPRICE.EVENTID = @EVENTID and
                                PRICETYPECODE.ACTIVE = 1 and
                                not exists (select 1 
                                            from dbo.SALESMETHODEXCLUDEDPRICETYPE 
                                            where SALESMETHODEXCLUDEDPRICETYPE.SALESMETHODID = @ADVANCESALESMETHODID and
                                            SALESMETHODEXCLUDEDPRICETYPE.PRICETYPECODEID = PROGRAMEVENTPRICE.PRICETYPECODEID)
                            order by PROGRAMEVENTPRICE.SEQUENCE asc
                            for xml raw ('ITEM'), type, elements, root('PRICETYPES'), BINARY BASE64
                        )
                    end
                    else
                    begin
                        set @PRICETYPES =
                        (
                            select
                                PROGRAMPRICE.ID,
                                dbo.UFN_PRICETYPECODE_GETDESCRIPTION(PROGRAMPRICE.PRICETYPECODEID) as PRICETYPE,
                                PROGRAMPRICE.PRICETYPECODEID,
                                PROGRAMPRICE.SEQUENCE,
                                PROGRAMPRICE.FACEPRICE,
                                0 as ZERO,
                                1 as ONE,
                                2 as TWO,
                                3 as THREE,
                                4 as FOUR,
                                5 as FIVE,
                                6 as SIX,
                                7 as SEVEN,
                                8 as EIGHT,
                                9 as NINE,
                                0 as QUANTITY
                            from dbo.PROGRAMPRICE
                            inner join dbo.PRICETYPECODE on PRICETYPECODE.ID = PROGRAMPRICE.PRICETYPECODEID
                            where 
                                PROGRAMPRICE.PROGRAMID = @PROGRAMID and
                                PRICETYPECODE.ACTIVE = 1 and
                                not exists (select 1 
                                            from dbo.SALESMETHODEXCLUDEDPRICETYPE 
                                            where SALESMETHODEXCLUDEDPRICETYPE.SALESMETHODID = @ADVANCESALESMETHODID and
                                            SALESMETHODEXCLUDEDPRICETYPE.PRICETYPECODEID = PROGRAMPRICE.PRICETYPECODEID)
                            order by PROGRAMPRICE.SEQUENCE asc
                            for xml raw ('ITEM'), type, elements, root('PRICETYPES'), BINARY BASE64
                        )
                    end

                    return 0;