USP_DATAFORMTEMPLATE_EDITLOAD_COMBINATIONAVAILABILITY

The load procedure used by the edit dataform template "Combination Availability Edit Data 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.
@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.
@ALLOWDAILYSALES bit INOUT
@ALLOWADVANCESALES bit INOUT
@ALLOWONLINESALES bit INOUT Online
@ALLOWMONDAY bit INOUT Monday
@ALLOWTUESDAY bit INOUT Tuesday
@ALLOWWEDNESDAY bit INOUT Wednesday
@ALLOWTHURSDAY bit INOUT Thursday
@ALLOWFRIDAY bit INOUT Friday
@ALLOWSATURDAY bit INOUT Saturday
@ALLOWSUNDAY bit INOUT Sunday
@ALLOWCOMBINATIONDATEFROM datetime INOUT From
@ALLOWCOMBINATIONDATETO datetime INOUT To
@ALLOWCOMBINATIONTIMEFROM UDT_HOURMINUTE INOUT From
@ALLOWCOMBINATIONTIMETO UDT_HOURMINUTE INOUT To
@CANBEONLINE bit INOUT

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_COMBINATIONAVAILABILITY
(
    @ID uniqueidentifier,
    @DATALOADED bit = 0 output,
    @TSLONG bigint = 0 output,
    @ALLOWDAILYSALES bit = null output,
    @ALLOWADVANCESALES bit = null output,
    @ALLOWONLINESALES bit = null output,
    @ALLOWMONDAY bit = null output,
    @ALLOWTUESDAY bit = null output,
    @ALLOWWEDNESDAY bit = null output,
    @ALLOWTHURSDAY bit = null output,
    @ALLOWFRIDAY bit = null output,
    @ALLOWSATURDAY bit = null output,
    @ALLOWSUNDAY bit = null output,
    @ALLOWCOMBINATIONDATEFROM  datetime = null output,
    @ALLOWCOMBINATIONDATETO  datetime = null output,
    @ALLOWCOMBINATIONTIMEFROM  dbo.UDT_HOURMINUTE = null output,
    @ALLOWCOMBINATIONTIMETO  dbo.UDT_HOURMINUTE = null output,
    @CANBEONLINE bit = null output
)
as
    set nocount on;

    declare @COMBINATIONID uniqueidentifier;

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

    select
        @DATALOADED = 1,
        @TSLONG = TSLONG,
        @COMBINATIONID = COMBINATIONID,
        @ALLOWMONDAY = ALLOWMONDAY,
        @ALLOWTUESDAY = ALLOWTUESDAY,
        @ALLOWWEDNESDAY = ALLOWWEDNESDAY,
        @ALLOWTHURSDAY = ALLOWTHURSDAY,
        @ALLOWFRIDAY = ALLOWFRIDAY,
        @ALLOWSATURDAY = ALLOWSATURDAY,
        @ALLOWSUNDAY = ALLOWSUNDAY,
        @ALLOWCOMBINATIONDATEFROM = ALLOWCOMBINATIONDATEFROM,
        @ALLOWCOMBINATIONDATETO = ALLOWCOMBINATIONDATETO,
        @ALLOWCOMBINATIONTIMEFROM = ALLOWCOMBINATIONTIMEFROM,
        @ALLOWCOMBINATIONTIMETO = ALLOWCOMBINATIONTIMETO
    from
        dbo.COMBINATIONAVAILABILITY
    where
        ID = @ID;

    set @ALLOWDAILYSALES = 0;
    set @ALLOWADVANCESALES = 0;
    set @ALLOWONLINESALES = 0;

    select @ALLOWDAILYSALES = 1
    from dbo.COMBINATIONAVAILABILITYSALESMETHOD
    inner join dbo.SALESMETHOD on SALESMETHOD.ID = COMBINATIONAVAILABILITYSALESMETHOD.SALESMETHODID
    where
        SALESMETHOD.TYPECODE = 0  -- Daily Sales
        and COMBINATIONAVAILABILITYSALESMETHOD.COMBINATIONAVAILABILITYID = @ID;

    select @ALLOWADVANCESALES = 1
    from dbo.COMBINATIONAVAILABILITYSALESMETHOD
    inner join dbo.SALESMETHOD on SALESMETHOD.ID = COMBINATIONAVAILABILITYSALESMETHOD.SALESMETHODID
    where
        SALESMETHOD.TYPECODE = 1  -- Advance Sales
        and COMBINATIONAVAILABILITYSALESMETHOD.COMBINATIONAVAILABILITYID = @ID;

    select @ALLOWONLINESALES = 1
    from dbo.COMBINATIONAVAILABILITYSALESMETHOD
    inner join dbo.SALESMETHOD on SALESMETHOD.ID = COMBINATIONAVAILABILITYSALESMETHOD.SALESMETHODID
    where
        SALESMETHOD.TYPECODE = 2  -- Online Sales
        and COMBINATIONAVAILABILITYSALESMETHOD.COMBINATIONAVAILABILITYID = @ID;

    set @CANBEONLINE = dbo.UFN_COMBINATION_CANBEONLINE(@COMBINATIONID);

    return 0;