USP_BUSINESSPROCESSCOMMPREF_UPDATE
Updates the communication preferences for a business process.
Parameters
| Parameter | Parameter Type | Mode | Description |
|---|---|---|---|
| @ID | uniqueidentifier | IN | |
| @CHANGEAGENTID | uniqueidentifier | IN | |
| @BUSINESSPROCESSCATALOGID | uniqueidentifier | IN | |
| @BUSINESSPROCESSPARAMETERSETID | uniqueidentifier | IN | |
| @EXCLUSIONDATETYPECODE | tinyint | IN | |
| @EXCLUSIONASOFDATE | datetime | IN | |
| @EXCLUDEDECEASED | bit | IN | |
| @EXCLUDEINACTIVE | bit | IN | |
| @EXCLUSIONS | xml | IN | |
| @CURRENTAPPUSERID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_BUSINESSPROCESSCOMMPREF_UPDATE
(
@ID uniqueidentifier = null,
@CHANGEAGENTID uniqueidentifier,
@BUSINESSPROCESSCATALOGID uniqueidentifier = null,
@BUSINESSPROCESSPARAMETERSETID uniqueidentifier = null,
@EXCLUSIONDATETYPECODE tinyint = 0,
@EXCLUSIONASOFDATE datetime = null,
@EXCLUDEDECEASED bit = null,
@EXCLUDEINACTIVE bit = null,
@EXCLUSIONS xml = null,
--@OVERRIDEREQUIREDEXCLUSIONS bit = 0,
--@REQUIREDEXCLUSIONS xml = null,
@CURRENTAPPUSERID uniqueidentifier = null
--@INCLUSIONS xml = null
)
as
set nocount on;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
begin try
update dbo.BUSINESSPROCESSCOMMPREF
set DATETYPECODE = @EXCLUSIONDATETYPECODE,
ASOFDATE = @EXCLUSIONASOFDATE,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where BUSINESSPROCESSPARAMETERSETID = @BUSINESSPROCESSPARAMETERSETID;
exec dbo.USP_BUSINESSPROCESSCOMMPREF_GETEXCLUSIONS_UPDATEFROMXML @BUSINESSPROCESSPARAMETERSETID, @EXCLUSIONS, @CHANGEAGENTID;
--exec dbo.USP_BUSINESSPROCESSCOMMPREF_GETINCLUSIONS_UPDATEFROMXML @BUSINESSPROCESSPARAMETERSETID, @INCLUSIONS, @CHANGEAGENTID;
declare @CANUPDATEEXCLUDEDECEASED bit = dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID);
declare @CANUPDATEEXCLUDEINACTIVE bit = @CANUPDATEEXCLUDEDECEASED;
if @CANUPDATEEXCLUDEDECEASED <> 1
set @CANUPDATEEXCLUDEDECEASED = dbo.UFN_SECURITY_APPUSER_GRANTED_SYSTEMPRIVILEGE_IN_SYSTEMROLE(@CURRENTAPPUSERID, '2EEC593D-06B1-49E0-9031-A4076B07081C');
if @CANUPDATEEXCLUDEINACTIVE <> 1
set @CANUPDATEEXCLUDEINACTIVE = dbo.UFN_SECURITY_APPUSER_GRANTED_SYSTEMPRIVILEGE_IN_SYSTEMROLE(@CURRENTAPPUSERID, 'C0E02A6F-DF46-460C-ACA2-CC31C9C11BFC');
if @CANUPDATEEXCLUDEDECEASED = 1 or @CANUPDATEEXCLUDEINACTIVE = 1
update dbo.BUSINESSPROCESSCOMMPREF
set EXCLUDEDECEASED = case when @CANUPDATEEXCLUDEDECEASED = 1 then @EXCLUDEDECEASED else EXCLUDEDECEASED end,
EXCLUDEINACTIVE = case when @CANUPDATEEXCLUDEINACTIVE = 1 then @EXCLUDEINACTIVE else EXCLUDEINACTIVE end,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where BUSINESSPROCESSPARAMETERSETID = @BUSINESSPROCESSPARAMETERSETID;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;