USP_DATAFORMTEMPLATE_EDIT_DISCOUNTAVAILABILITY_2
The save procedure used by the edit dataform template "Discount Availability Edit Data 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. |
@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 |
@ALLOWDISCOUNTDATEFROM | datetime | IN | From |
@ALLOWDISCOUNTDATETO | datetime | IN | To |
@ALLOWDISCOUNTTIMEFROM | UDT_HOURMINUTE | IN | From |
@ALLOWDISCOUNTTIMETO | UDT_HOURMINUTE | IN | To |
@DISCOUNTADVANCEDSALESID | uniqueidentifier | IN | Discount availability advanced sales method id |
@ADVANCEDSALESACTIVE | bit | IN | Advanced Sales Active |
@ADVANCEDSALESID | uniqueidentifier | IN | Advanced Sales ID |
@ALLOWADVANCEDSALES | bit | IN | Advance sales |
@DISCOUNTONLINESALESID | uniqueidentifier | IN | Discount availability online sales method id |
@ONLINESALESACTIVE | bit | IN | Online Sales Active |
@ONLINESALESID | uniqueidentifier | IN | Online Sales ID |
@ALLOWONLINESALES | bit | IN | Online |
@DISCOUNTWALKUPSALESID | uniqueidentifier | IN | Discount availability walk up sales method id |
@WALKUPSALESACTIVE | bit | IN | Walk Up Sales Active |
@WALKUPSALESID | uniqueidentifier | IN | Walk Up Sales ID |
@ALLOWWALKUPSALES | bit | IN | Walk up |
@DISCOUNTGROUPSALESID | uniqueidentifier | IN | |
@GROUPSALESACTIVE | bit | IN | |
@GROUPSALESID | uniqueidentifier | IN | |
@ALLOWGROUPSALES | bit | IN | Group sales |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_DISCOUNTAVAILABILITY_2
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@ALLOWMONDAY bit,
@ALLOWTUESDAY bit,
@ALLOWWEDNESDAY bit,
@ALLOWTHURSDAY bit,
@ALLOWFRIDAY bit,
@ALLOWSATURDAY bit,
@ALLOWSUNDAY bit,
@ALLOWDISCOUNTDATEFROM datetime,
@ALLOWDISCOUNTDATETO datetime,
@ALLOWDISCOUNTTIMEFROM dbo.UDT_HOURMINUTE,
@ALLOWDISCOUNTTIMETO dbo.UDT_HOURMINUTE,
@DISCOUNTADVANCEDSALESID uniqueidentifier,
@ADVANCEDSALESACTIVE bit,
@ADVANCEDSALESID uniqueidentifier,
@ALLOWADVANCEDSALES bit,
@DISCOUNTONLINESALESID uniqueidentifier,
@ONLINESALESACTIVE bit,
@ONLINESALESID uniqueidentifier,
@ALLOWONLINESALES bit,
@DISCOUNTWALKUPSALESID uniqueidentifier,
@WALKUPSALESACTIVE bit,
@WALKUPSALESID uniqueidentifier,
@ALLOWWALKUPSALES bit,
@DISCOUNTGROUPSALESID uniqueidentifier,
@GROUPSALESACTIVE bit,
@GROUPSALESID uniqueidentifier,
@ALLOWGROUPSALES bit
)
as
set nocount on;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
begin try
update dbo.DISCOUNTAVAILABILITY set
ALLOWMONDAY = @ALLOWMONDAY,
ALLOWTUESDAY = @ALLOWTUESDAY,
ALLOWWEDNESDAY = @ALLOWWEDNESDAY,
ALLOWTHURSDAY = @ALLOWTHURSDAY,
ALLOWFRIDAY = @ALLOWFRIDAY,
ALLOWSATURDAY = @ALLOWSATURDAY,
ALLOWSUNDAY = @ALLOWSUNDAY,
ALLOWDISCOUNTDATEFROM = @ALLOWDISCOUNTDATEFROM,
ALLOWDISCOUNTDATETO = @ALLOWDISCOUNTDATETO,
ALLOWDISCOUNTTIMEFROM = @ALLOWDISCOUNTTIMEFROM,
ALLOWDISCOUNTTIMETO = @ALLOWDISCOUNTTIMETO,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where
ID = @ID;
if @DISCOUNTWALKUPSALESID is not null and (@WALKUPSALESACTIVE = 0 or @ALLOWWALKUPSALES = 0)
begin
delete from dbo.DISCOUNTAVAILABILITYSALESMETHOD where ID = @DISCOUNTWALKUPSALESID
end
else
begin
if @DISCOUNTWALKUPSALESID is null and @WALKUPSALESACTIVE = 1 and @ALLOWWALKUPSALES = 1
begin
insert into dbo.DISCOUNTAVAILABILITYSALESMETHOD
(
ID,
DISCOUNTAVAILABILITYID,
SALESMETHODID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
)
values
(
newid(),
@ID,
@WALKUPSALESID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
end
end
if @DISCOUNTADVANCEDSALESID is not null and (@ADVANCEDSALESACTIVE = 0 or @ALLOWADVANCEDSALES = 0)
begin
delete from dbo.DISCOUNTAVAILABILITYSALESMETHOD where ID = @DISCOUNTADVANCEDSALESID
end
else
begin
if @DISCOUNTADVANCEDSALESID is null and @ADVANCEDSALESACTIVE = 1 and @ALLOWADVANCEDSALES = 1
begin
insert into dbo.DISCOUNTAVAILABILITYSALESMETHOD
(
ID,
DISCOUNTAVAILABILITYID,
SALESMETHODID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
)
values
(
newid(),
@ID,
@ADVANCEDSALESID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
end
end
if @DISCOUNTONLINESALESID is not null and (@ONLINESALESACTIVE = 0 or @ALLOWONLINESALES = 0)
begin
delete from dbo.DISCOUNTAVAILABILITYSALESMETHOD where ID = @DISCOUNTONLINESALESID
end
else
begin
if @DISCOUNTONLINESALESID is null and @ONLINESALESACTIVE = 1 and @ALLOWONLINESALES = 1
begin
insert into dbo.DISCOUNTAVAILABILITYSALESMETHOD
(
ID,
DISCOUNTAVAILABILITYID,
SALESMETHODID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
)
values
(
newid(),
@ID,
@ONLINESALESID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
end
end
if @DISCOUNTGROUPSALESID is not null and (@GROUPSALESACTIVE = 0 or @ALLOWGROUPSALES = 0)
begin
delete from dbo.DISCOUNTAVAILABILITYSALESMETHOD where ID = @DISCOUNTGROUPSALESID
end
else
begin
if @DISCOUNTGROUPSALESID is null and @GROUPSALESACTIVE = 1 and @ALLOWGROUPSALES = 1
begin
insert into dbo.DISCOUNTAVAILABILITYSALESMETHOD
(
ID,
DISCOUNTAVAILABILITYID,
SALESMETHODID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
)
values
(
newid(),
@ID,
@GROUPSALESID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
end
end
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;