USP_CREDITCARDPROCESSING_REMOVERESUMEINFO

Removes resume information from the database for the credit card business process.

Parameters

Parameter Parameter Type Mode Description
@BBPSBATCHPROCESSID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN
@CHANGEDATE datetime IN
@CREDITCARDPROCESSINGID uniqueidentifier IN
@BATCHID uniqueidentifier IN
@CREDITCARDPROCESSINGSTATEID uniqueidentifier IN

Definition

Copy


            CREATE procedure dbo.USP_CREDITCARDPROCESSING_REMOVERESUMEINFO
            (
                @BBPSBATCHPROCESSID uniqueidentifier, -- No longer used since the value is stored in its own table now

                @CHANGEAGENTID uniqueidentifier = null,
                @CHANGEDATE datetime = null,
                @CREDITCARDPROCESSINGID uniqueidentifier = null,
                @BATCHID uniqueidentifier = null,
                @CREDITCARDPROCESSINGSTATEID uniqueidentifier = null -- Now used as the identifier since BBPSBATCHPROCESSID isn't used anymore

            )
            as 
            set nocount on;

            if @CHANGEAGENTID is null
                exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

            if @CHANGEDATE is null
                set @CHANGEDATE = getdate();

            if @CREDITCARDPROCESSINGID is not null                    
            begin
                update dbo.CREDITCARDPROCESSING set
                    BATCHID = null,
                    BATCHINSTANCESETFORRESUME = 0,
                    DATECHANGED = @CHANGEDATE,
                    CHANGEDBYID = @CHANGEAGENTID
                where
                    ID = @CREDITCARDPROCESSINGID and
                    BATCHID = @BATCHID and
                    BATCHINSTANCESETFORRESUME = 1
            end

            declare @TABLENAME nvarchar(100);

            select 
                @TABLENAME = MAPPINGTABLE
            from dbo.CREDITCARDPROCESSINGSTATE
            where ID = @CREDITCARDPROCESSINGSTATEID;

            --Cache CONTEXT INFO

            declare @contextCache varbinary(128);
            set @contextCache = CONTEXT_INFO();

            if not @CHANGEAGENTID is null
                set CONTEXT_INFO @CHANGEAGENTID;

            delete from dbo.CREDITCARDPROCESSINGSTATE where ID = @CREDITCARDPROCESSINGSTATEID;

            if not @TABLENAME is null and @TABLENAME <> ''
            begin
                declare @SQL nvarchar(1000);
                set @SQL = N'drop table [' + @TABLENAME + N']';

                exec (@SQL);
            end

            --Restore CONTEXT INFO 

            if not @contextCache is null
                set CONTEXT_INFO @contextCache