USP_RECORDOPERATION_UNDOMARKINDIVIDUALDECEASED
Executes the "Individual: Undo Mark Deceased" 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_UNDOMARKINDIVIDUALDECEASED
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null
)
as
set nocount on;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
if exists (select 1 from dbo.DECEASINGRULE where SETMARITALSTATUS = 1)
begin
if exists (select 1 from dbo.RELATIONSHIP where RELATIONSHIPCONSTITUENTID = @ID and ISSPOUSE=1)
begin
update B
set B.MARITALSTATUSCODEID = A.MARITALSTATUSCODEID,
CHANGEDBYID = @CHANGEAGENTID
from
dbo.CONSTITUENT A
inner join
dbo.RELATIONSHIP R on A.ID = R.RELATIONSHIPCONSTITUENTID
inner join
dbo.CONSTITUENT B on R.RECIPROCALCONSTITUENTID = B.ID
where
R.ISSPOUSE = 1
and
A.ID = @ID
end
end
exec dbo.USP_DECEASEDCONSTITUENT_DELETEBYID_WITHCHANGEAGENTID @ID, @CHANGEAGENTID;
-- Bug 441716 (ADC 12/12/14) - Always update CONSTITUENT table when changing deceased status to show that the constituent's data changed.
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate();
update
dbo.CONSTITUENT
set
DATECHANGED = @CURRENTDATE,
CHANGEDBYID = @CHANGEAGENTID
where
ID = @ID;
return 0;