USP_DATAFORMTEMPLATE_ADD_COMBINATIONAVAILABILITY
The save procedure used by the add dataform template "Combination Availability Add Data Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | The output parameter indicating the ID of the record added. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@COMBINATIONID | uniqueidentifier | IN | Input parameter indicating the context ID for the record being added. |
@ALLOWDAILYSALES | bit | IN | |
@ALLOWADVANCESALES | bit | IN | |
@ALLOWONLINESALES | bit | IN | Online |
@ALLOWMONDAY | bit | IN | Monday |
@ALLOWTUESDAY | bit | IN | Tuesday |
@ALLOWWEDNESDAY | bit | IN | Wednesday |
@ALLOWTHURSDAY | bit | IN | Thursday |
@ALLOWFRIDAY | bit | IN | Friday |
@ALLOWSATURDAY | bit | IN | Saturday |
@ALLOWSUNDAY | bit | IN | Sunday |
@ALLOWCOMBINATIONDATEFROM | datetime | IN | From |
@ALLOWCOMBINATIONDATETO | datetime | IN | To |
@ALLOWCOMBINATIONTIMEFROM | UDT_HOURMINUTE | IN | From |
@ALLOWCOMBINATIONTIMETO | UDT_HOURMINUTE | IN | To |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_COMBINATIONAVAILABILITY
(
@ID uniqueidentifier = null output,
@CHANGEAGENTID uniqueidentifier = null,
@COMBINATIONID uniqueidentifier,
@ALLOWDAILYSALES bit = 1,
@ALLOWADVANCESALES bit = 1,
@ALLOWONLINESALES bit = 0,
@ALLOWMONDAY bit = 1,
@ALLOWTUESDAY bit = 1,
@ALLOWWEDNESDAY bit = 1,
@ALLOWTHURSDAY bit = 1,
@ALLOWFRIDAY bit = 1,
@ALLOWSATURDAY bit = 1,
@ALLOWSUNDAY bit = 1,
@ALLOWCOMBINATIONDATEFROM datetime = null,
@ALLOWCOMBINATIONDATETO datetime = null,
@ALLOWCOMBINATIONTIMEFROM dbo.UDT_HOURMINUTE = '',
@ALLOWCOMBINATIONTIMETO dbo.UDT_HOURMINUTE = ''
)
as
set nocount on;
if @ID is null begin
set @ID = newid();
end
if @CHANGEAGENTID is null begin
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
end
declare @CURRENTDATE datetime = getdate();
begin try
insert into dbo.COMBINATIONAVAILABILITY (
ID,
COMBINATIONID,
ALLOWMONDAY,
ALLOWTUESDAY,
ALLOWWEDNESDAY,
ALLOWTHURSDAY,
ALLOWFRIDAY,
ALLOWSATURDAY,
ALLOWSUNDAY,
ALLOWCOMBINATIONDATEFROM,
ALLOWCOMBINATIONDATETO,
ALLOWCOMBINATIONTIMEFROM,
ALLOWCOMBINATIONTIMETO,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
) values (
@ID,
@COMBINATIONID,
@ALLOWMONDAY,
@ALLOWTUESDAY,
@ALLOWWEDNESDAY,
@ALLOWTHURSDAY,
@ALLOWFRIDAY,
@ALLOWSATURDAY,
@ALLOWSUNDAY,
@ALLOWCOMBINATIONDATEFROM,
@ALLOWCOMBINATIONDATETO,
@ALLOWCOMBINATIONTIMEFROM,
@ALLOWCOMBINATIONTIMETO,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
declare @SALESMETHODID uniqueidentifier;
if @ALLOWDAILYSALES = 1 begin
set @SALESMETHODID = dbo.UFN_SALESMETHOD_GETIDFROMTYPECODE(0); -- Daily Sales
insert into dbo.COMBINATIONAVAILABILITYSALESMETHOD (
ID,
COMBINATIONAVAILABILITYID,
SALESMETHODID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
) values (
newid(),
@ID,
@SALESMETHODID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
end
if @ALLOWADVANCESALES = 1 begin
set @SALESMETHODID = dbo.UFN_SALESMETHOD_GETIDFROMTYPECODE(1); -- Advance Sales
insert into dbo.COMBINATIONAVAILABILITYSALESMETHOD (
ID,
COMBINATIONAVAILABILITYID,
SALESMETHODID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
) values (
newid(),
@ID,
@SALESMETHODID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
end
if @ALLOWONLINESALES = 1 begin
if dbo.UFN_COMBINATION_CANBEONLINE(@COMBINATIONID) = 0 begin
raiserror('BBERR_COMBINATIONAVAILABILITY_NOTALLOWEDONLINE', 13, 1);
end
set @SALESMETHODID = dbo.UFN_SALESMETHOD_GETIDFROMTYPECODE(2); -- Online Sales
insert into dbo.COMBINATIONAVAILABILITYSALESMETHOD (
ID,
COMBINATIONAVAILABILITYID,
SALESMETHODID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
) values (
newid(),
@ID,
@SALESMETHODID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
end
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;