USP_DELIVERYMETHOD_INACTIVE_UPDATE
Executes the "Delivery Method Mark Inactive" record operation.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | Input parameter indicating the ID of the record being updated. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the update. |
Definition
Copy
CREATE procedure dbo.USP_DELIVERYMETHOD_INACTIVE_UPDATE
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier
)
as
begin
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
-- will hold the number of sales methods that have this delivery method as a default
declare @DEFAULTDELIVERYMETHODCOUNT integer = 0
select
@DEFAULTDELIVERYMETHODCOUNT = count(ID)
from
dbo.SALESMETHODDELIVERYMETHOD
where
DELIVERYMETHODID = @ID and ISDEFAULT = 1;
if exists (select ID from dbo.SALESMETHODDELIVERYMETHOD where DELIVERYMETHODID = @ID and ISDEFAULT = 1)
begin
raiserror('BBERR_CONFLICTSEXIST', 13, 1);
return 1
end
begin try
update dbo.DELIVERYMETHOD set
ISACTIVE = 0,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where ID = @ID
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0;
end