USP_RECORDOPERATION_MEMBERSHIPCARDDELETE
Executes the "Membership Card: Delete" record operation.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | Input parameter indicating the ID of the record being deleted. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the delete. |
Definition
Copy
CREATE procedure dbo.USP_RECORDOPERATION_MEMBERSHIPCARDDELETE
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier
)
as
set nocount on;
if @CHANGEAGENTID is null
exec dbo.[USP_CHANGEAGENT_GETORCREATECHANGEAGENT] @CHANGEAGENTID output;
declare @CURRENTDATE datetime = getdate();
declare @STATUSCODE tinyint;
select @STATUSCODE = STATUSCODE from dbo.MEMBERSHIPCARD where ID = @ID
begin try
if @STATUSCODE <> 0
raiserror('BBERR_INVALIDMEMBERSHIPCARDSTATUS', 13, 1);
--Remove relationship with sales orders pointing to card
update dbo.[SALESORDERITEMMEMBERSHIPCARD]
set
[MEMBERSHIPCARDID] = null,
[CHANGEDBYID] = @CHANGEAGENTID,
[DATECHANGED] = @CURRENTDATE
where [MEMBERSHIPCARDID] = @ID;
exec dbo.USP_MEMBERSHIPCARD_DELETEBYID_WITHCHANGEAGENTID @ID, @CHANGEAGENTID
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;