USP_DATAFORMTEMPLATE_EDIT_SYSTEMROLE_CONSTIT_SECURITY_RINGFENCE
The save procedure used by the edit dataform template "System Role Constituent Security Group Edit Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter indicating the ID of the record being edited. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@CONSTIT_SECURITY_RINGFENCEID | uniqueidentifier | IN | Group |
@RECORDSECURITYMODE | bit | IN | Record Security Mode |
Definition
Copy
create procedure dbo.USP_DATAFORMTEMPLATE_EDIT_SYSTEMROLE_CONSTIT_SECURITY_RINGFENCE
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@CONSTIT_SECURITY_RINGFENCEID uniqueidentifier,
@RECORDSECURITYMODE bit
) as
set nocount on;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
IF @CONSTIT_SECURITY_RINGFENCEID IS NOT NULL SET @RECORDSECURITYMODE =0;
begin try
update dbo.SYSTEMROLE SET RECORDSECURITYMODE=@RECORDSECURITYMODE, CHANGEDBYID=@CHANGEAGENTID WHERE ID= @ID;
if (select [ID] from dbo.[SYSTEMROLE_CONSTIT_SECURITY_ATTRIBUTE] where [ID] = @ID) is not null begin
if @CONSTIT_SECURITY_RINGFENCEID is not null begin
update
dbo.[SYSTEMROLE_CONSTIT_SECURITY_ATTRIBUTE]
set
[CONSTIT_SECURITY_ATTRIBUTEID] = @CONSTIT_SECURITY_RINGFENCEID,
[CHANGEDBYID] = @CHANGEAGENTID,
[DATECHANGED] = @CURRENTDATE
where
[ID] = @ID;
end
else begin
exec dbo.USP_SYSTEMROLE_CONSTIT_SECURITY_ATTRIBUTE_DELETEBYID_WITHCHANGEAGENTID @ID, @CHANGEAGENTID;
end
end
else begin
if @CONSTIT_SECURITY_RINGFENCEID is not null begin
insert into dbo.[SYSTEMROLE_CONSTIT_SECURITY_ATTRIBUTE]
(
[ID],
[CONSTIT_SECURITY_ATTRIBUTEID],
[ADDEDBYID],
[CHANGEDBYID],
[DATEADDED],
[DATECHANGED]
)
values
(
@ID,
@CONSTIT_SECURITY_RINGFENCEID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
end
end
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;