USP_MKTMEMBERSHIPMAILINGPROCESS_ROLLBACK
Rolls back the changes made while processing membership renewal efforts, if the process fails.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@MKTMEMBERSHIPMAILINGPROCESSSTATUSID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.[USP_MKTMEMBERSHIPMAILINGPROCESS_ROLLBACK]
(
@MKTMEMBERSHIPMAILINGPROCESSSTATUSID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null
)
as
set nocount on;
declare @RECORDSOURCEID uniqueidentifier;
declare @SQL as nvarchar(max);
declare @CONTEXTCACHE varbinary(128);
declare @MKTMEMBERSHIPMAILINGPROCESSSEGMENTATIONID uniqueidentifier;
declare @SEGMENTATIONID uniqueidentifier;
begin try
if @CHANGEAGENTID is null
exec dbo.[USP_CHANGEAGENT_GETORCREATECHANGEAGENT] @CHANGEAGENTID output;
-- remove the mailing, if one was created
select
@MKTMEMBERSHIPMAILINGPROCESSSEGMENTATIONID = [ID],
@SEGMENTATIONID = [SEGMENTATIONID]
from dbo.[MKTMEMBERSHIPMAILINGPROCESSSEGMENTATION]
where [MEMBERSHIPMAILINGPROCESSSTATUSID] = @MKTMEMBERSHIPMAILINGPROCESSSTATUSID;
if @MKTMEMBERSHIPMAILINGPROCESSSEGMENTATIONID is not null
begin
exec dbo.[USP_MKTMEMBERSHIPMAILINGPROCESSSEGMENTATION_DELETEBYID_WITHCHANGEAGENTID] @MKTMEMBERSHIPMAILINGPROCESSSEGMENTATIONID, @CHANGEAGENTID;
if @SEGMENTATIONID is not null
exec dbo.[USP_MKTSEGMENTATION_DELETE] @SEGMENTATIONID, @CHANGEAGENTID;
end
end try
begin catch
exec dbo.[USP_RAISE_ERROR];
return 1;
end catch
return 0;