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;