USP_MKTSPONSORSHIPMAILINGPROCESS_ROLLBACK
Rolls back the changes made while processing sponsorships, if the process fails.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@MKTSPONSORSHIPMAILINGPROCESSSTATUSID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN |
Definition
Copy
create procedure dbo.[USP_MKTSPONSORSHIPMAILINGPROCESS_ROLLBACK]
(
@MKTSPONSORSHIPMAILINGPROCESSSTATUSID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null
)
as
set nocount on;
declare @RECORDSOURCEID uniqueidentifier;
declare @SQL as nvarchar(max);
declare @CONTEXTCACHE varbinary(128);
declare @MKTSPONSORSHIPMAILINGPROCESSSEGMENTATIONID 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
@MKTSPONSORSHIPMAILINGPROCESSSEGMENTATIONID = [ID],
@SEGMENTATIONID = [SEGMENTATIONID]
from dbo.[MKTSPONSORSHIPMAILINGPROCESSSEGMENTATION]
where [SPONSORSHIPMAILINGPROCESSSTATUSID] = @MKTSPONSORSHIPMAILINGPROCESSSTATUSID;
if @MKTSPONSORSHIPMAILINGPROCESSSEGMENTATIONID is not null
begin
exec dbo.[USP_MKTSPONSORSHIPMAILINGPROCESSSEGMENTATION_DELETEBYID_WITHCHANGEAGENTID] @MKTSPONSORSHIPMAILINGPROCESSSEGMENTATIONID, @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;