USP_DATAFORMTEMPLATE_EDIT_PROGRAM_TICKET_PART_SETTINGS

The save procedure used by the edit dataform template "Program Ticket Part Settings Edit Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter indicating the ID of the record being edited.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@CONTENTID int IN Content
@ORDERPAGEID int IN Order Page
@ONSALEHORIZON int IN On-sale Horizon
@TIMECOUNTTHRESHOLD int IN Time Count Threshold
@CATEGORYFILTER bit IN Category Filter
@MAXIMUMQUANTITY int IN Maximum Quantity
@TIMEOUTMINUTES int IN Timeout Minutes
@LOWAVAILABILITYTHRESHOLD int IN Low Availability Threshold
@SHOWSOLDOUTEVENTS bit IN Show Sold-out Events
@EVENTCONTACTEMAILADDRESS UDT_EMAILADDRESS IN Event Contact Email Address
@ITEMDEFAULTIMAGEID int IN Item Default Image
@ACKTEMPLATE nvarchar(max) IN Acknowledgement Template

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_PROGRAM_TICKET_PART_SETTINGS
(
    @ID uniqueidentifier,  -- use SiteContent Guid
    @CHANGEAGENTID uniqueidentifier = null,
    @CONTENTID int,
    @ORDERPAGEID int,
    @ONSALEHORIZON int,
    @TIMECOUNTTHRESHOLD int,
    @CATEGORYFILTER bit,
    @MAXIMUMQUANTITY int,
    @TIMEOUTMINUTES int,
    @LOWAVAILABILITYTHRESHOLD int,
    @SHOWSOLDOUTEVENTS bit,
    @EVENTCONTACTEMAILADDRESS dbo.UDT_EMAILADDRESS,
    @ITEMDEFAULTIMAGEID int,
    @ACKTEMPLATE nvarchar(max)
)
as

    set nocount on;

    if @CHANGEAGENTID is null  
        exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output

    declare @CURRENTDATE datetime
    set @CURRENTDATE = getdate()

    begin try

    -- BEGIN BBPAY PATCH FIX
    -- This should be removed when BBPay is able to accept a timeout value. For now,
    -- we are enforcing a minimum of 15 minutes (BBPay's timeout).
    -- Edit 9/21/11: removing option for 0 / no timeout.

    if (@TIMEOUTMINUTES < 15)
    begin
        raiserror('BBERR_BBPAYTIMEOUT', 13, 1);
    end

    -- END BBPAY PATCH FIX


--        -- handle updating the data
--        update dbo.PROGRAMTICKETPARTCONTENT set
--            --CONTENTID = @CONTENTID,
--            ORDERPAGEID = @ORDERPAGEID,
--            ONSALEHORIZON = @ONSALEHORIZON,
--            TIMECOUNTTHRESHOLD = @TIMECOUNTTHRESHOLD,
--            CATEGORYFILTER = @CATEGORYFILTER,
--            MAXIMUMQUANTITY = @MAXIMUMQUANTITY,
--            TIMEOUTMINUTES = @TIMEOUTMINUTES,
--            LOWAVAILABILITYTHRESHOLD = @LOWAVAILABILITYTHRESHOLD,
--            SHOWSOLDOUTEVENTS = @SHOWSOLDOUTEVENTS,
--            EVENTCONTACTEMAILADDRESS = @EVENTCONTACTEMAILADDRESS,
--            ITEMDEFAULTIMAGEID = @ITEMDEFAULTIMAGEID,
--            ACKTEMPLATE = @ACKTEMPLATE,
--
--            CHANGEDBYID = @CHANGEAGENTID,
--            DATECHANGED = getdate()
--        where CONTENTID = @ID


        merge dbo.PROGRAMTICKETPARTCONTENT as target
        using (SELECT @ID as ID) as source
        on (target.ID = source.ID)
        when matched then
            update 
            set 
            CONTENTID = @CONTENTID,
            ORDERPAGEID = @ORDERPAGEID,
            ONSALEHORIZON = @ONSALEHORIZON,
            TIMECOUNTTHRESHOLD = @TIMECOUNTTHRESHOLD,
            CATEGORYFILTER = @CATEGORYFILTER,
            MAXIMUMQUANTITY = @MAXIMUMQUANTITY,
            TIMEOUTMINUTES = @TIMEOUTMINUTES,
            LOWAVAILABILITYTHRESHOLD = @LOWAVAILABILITYTHRESHOLD,
            SHOWSOLDOUTEVENTS = @SHOWSOLDOUTEVENTS,
            EVENTCONTACTEMAILADDRESS = @EVENTCONTACTEMAILADDRESS,
            ITEMDEFAULTIMAGEID = @ITEMDEFAULTIMAGEID,
            ACKTEMPLATE = @ACKTEMPLATE,

            CHANGEDBYID = @CHANGEAGENTID,
            DATECHANGED = @CURRENTDATE 
        when not matched then
            insert
                (ID, CONTENTID, ORDERPAGEID, ONSALEHORIZON, TIMECOUNTTHRESHOLD, CATEGORYFILTER, MAXIMUMQUANTITY, TIMEOUTMINUTES, LOWAVAILABILITYTHRESHOLD, SHOWSOLDOUTEVENTS, EVENTCONTACTEMAILADDRESS, ITEMDEFAULTIMAGEID, ACKTEMPLATE, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED) 
            values
                (@ID, @CONTENTID, @ORDERPAGEID, @ONSALEHORIZON, @TIMECOUNTTHRESHOLD, @CATEGORYFILTER, @MAXIMUMQUANTITY, @TIMEOUTMINUTES, @LOWAVAILABILITYTHRESHOLD, @SHOWSOLDOUTEVENTS, @EVENTCONTACTEMAILADDRESS, @ITEMDEFAULTIMAGEID, @ACKTEMPLATE, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE
        ;                
    end try
    begin catch
        exec dbo.USP_RAISE_ERROR
        return 1
    end catch

    return 0;