USP_RECORDOPERATION_ACKNOWLEDGEMENTPROCESSCLEARRESULTS
Executes the "Acknowledgement Process: Clear Results" record operation.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | Input parameter indicating the ID of the record being updated. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the update. |
Definition
Copy
CREATE procedure dbo.[USP_RECORDOPERATION_ACKNOWLEDGEMENTPROCESSCLEARRESULTS]
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null
)
as
set nocount on;
declare @BUSINESSPROCESSOUTPUTID uniqueidentifier;
declare @CURRENTDATE datetime = getdate();
begin try
if @CHANGEAGENTID is null
exec dbo.[USP_CHANGEAGENT_GETORCREATECHANGEAGENT] @CHANGEAGENTID output;
--Clear the dates on the revenue letter records for this process...
update dbo.[REVENUELETTER] set
[PROCESSDATE] = null,
[ACKNOWLEDGEDATE] = null,
[ACKNOWLEDGEMENTPROCESSSTATUSID] = null,
[CHANGEDBYID] = @CHANGEAGENTID,
[DATECHANGED] = @CURRENTDATE
where [ACKNOWLEDGEMENTPROCESSSTATUSID] = @ID;
select
@BUSINESSPROCESSOUTPUTID = [ID]
from dbo.[BUSINESSPROCESSOUTPUT]
where [BUSINESSPROCESSSTATUSID] = @ID
and [TABLEKEY] = 'OUTPUT';
if @BUSINESSPROCESSOUTPUTID is not null
begin
--Remove the output table since the results are invalid now and it can't be accessed anymore (this will drop the table too)...
exec dbo.[USP_BUSINESSPROCESSOUTPUT_DELETEBYID_WITHCHANGEAGENTID] @BUSINESSPROCESSOUTPUTID, @CHANGEAGENTID;
end
--Remove the "acknowledged" date from this status row...
exec dbo.[USP_BUSINESSPROCESSSTATUS_EXT_DELETEBYID_WITHCHANGEAGENTID] @ID, @CHANGEAGENTID;
--Update the business process status row to show that results have been cleared...
update dbo.[BUSINESSPROCESSSTATUS] set
[STATUSCODE] = 3,
[CHANGEDBYID] = @CHANGEAGENTID,
[DATECHANGED] = @CURRENTDATE
where [ID] = @ID;
end try
begin catch
exec dbo.[USP_RAISE_ERROR];
return 1;
end catch
return 0;