USP_COAUPDATE_DELETE

Executes the "AddressFinder: 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_COAUPDATE_DELETE
          (
            @ID uniqueidentifier,
            @CHANGEAGENTID uniqueidentifier
          )
          as
            set nocount on;

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

            declare @SUBMITID uniqueidentifier;
            declare @RESUBMITID uniqueidentifier;
            declare @GETID uniqueidentifier;

            select @SUBMITID = SUBMIT.ID,
              @RESUBMITID = RESUBMIT.ID,
              @GETID = GET.ID
            from dbo.COAUPDATE
            inner join dbo.COAUPDATESUBMITPROCESS SUBMIT on COAUPDATE.ID = SUBMIT.COAUPDATEID
            inner join dbo.COAUPDATERESUBMITPROCESS RESUBMIT on COAUPDATE.ID = RESUBMIT.COAUPDATEID
            inner join dbo.COAUPDATEGETPROCESS GET on COAUPDATE.ID = GET.COAUPDATEID
            where COAUPDATE.ID = @ID;

            exec dbo.USP_BUSINESSPROCESS_PARAMETERSETCANBEDELETED 'COAUPDATESUBMITPROCESSSTATUS', @SUBMITID;
            exec dbo.USP_BUSINESSPROCESS_PARAMETERSETCANBEDELETED 'COAUPDATERESUBMITPROCESSSTATUS', @RESUBMITID;
            exec dbo.USP_BUSINESSPROCESS_PARAMETERSETCANBEDELETED 'COAUPDATEGETPROCESSSTATUS', @GETID;

            exec dbo.USP_BUSINESSPROCESSINSTANCE_DELETE '113412a7-daa5-4ef6-9c0d-8aaa9024e06a', @SUBMITID, @CHANGEAGENTID;

            /*********************************************/
            /* Drop the data table if it exists */
            /*********************************************/
            declare @TABLENAME nvarchar(128) = 'COAUPDATECREATE_' + replace(cast(@ID as nvarchar(36)), '-', '_');

            if exists(select top 1 1 from [INFORMATION_SCHEMA].[TABLES] where [TABLE_SCHEMA] = 'dbo' and [TABLE_NAME] = @TABLENAME)
              exec ('drop table dbo.[' + @TABLENAME + ']');


            exec dbo.USP_COAUPDATE_DELETEBYID_WITHCHANGEAGENTID @ID, @CHANGEAGENTID;
            return 0;