USP_DATAFORMTEMPLATE_EDIT_RESEARCHGROUP_3
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@NAME | nvarchar(100) | IN | |
@DESCRIPTION | nvarchar(255) | IN | |
@IDSETREGISTERID | uniqueidentifier | IN | |
@OWNERID | uniqueidentifier | IN | |
@OTHERSCANMODIFY | bit | IN | |
@OTHERSCANVIEW | bit | IN | |
@ALLOWREFRESH | bit | IN | |
@AUTOREFRESH | bit | IN | |
@POPULATEMETHODCODE | tinyint | IN | |
@CATEGORYCODEID | uniqueidentifier | IN | |
@SITES | xml | IN | |
@RESEARCHGROUPCRITERIA | xml | IN | |
@INCLUDEATTRIBUTES | bit | IN |
Definition
Copy
create procedure dbo.USP_DATAFORMTEMPLATE_EDIT_RESEARCHGROUP_3 (
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@CURRENTAPPUSERID uniqueidentifier,
@NAME nvarchar(100),
@DESCRIPTION nvarchar(255),
@IDSETREGISTERID uniqueidentifier,
@OWNERID uniqueidentifier,
@OTHERSCANMODIFY bit,
@OTHERSCANVIEW bit,
@ALLOWREFRESH bit,
@AUTOREFRESH bit,
@POPULATEMETHODCODE tinyint,
@CATEGORYCODEID uniqueidentifier,
@SITES xml,
@RESEARCHGROUPCRITERIA xml,
@INCLUDEATTRIBUTES bit
) as
set nocount on;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
begin try
if exists(select top 1 1 from dbo.IDSETREGISTER where ID = @IDSETREGISTERID and USEINQUERYDESIGNER = 0)
raiserror('BBERR_IDSETREQUIRES_QUERY',13,1);
exec dbo.USP_RESEARCHGROUP_VALIDATESITES @SITES, @CURRENTAPPUSERID, '8A080A01-617B-4F37-85D2-98E282652BD3', 1, 1;
if dbo.UFN_RESEARCHGROUP_USERCANMODIFY(@ID, @CURRENTAPPUSERID) = 1
begin
declare @HASADMINRIGHTS bit = dbo.UFN_RESEARCHGROUP_USERHASADMINRIGHTS(@ID, @CURRENTAPPUSERID)
update
dbo.RESEARCHGROUP
set
NAME = @NAME,
DESCRIPTION = @DESCRIPTION,
IDSETREGISTERID = @IDSETREGISTERID,
OWNERID = case when @HASADMINRIGHTS = 1 then @OWNERID else OWNERID end,
OTHERSCANMODIFY = case when @HASADMINRIGHTS = 1 then @OTHERSCANMODIFY else OTHERSCANMODIFY end,
OTHERSCANVIEW = case when @HASADMINRIGHTS = 1 then @OTHERSCANVIEW else OTHERSCANVIEW end,
ALLOWREFRESH = @ALLOWREFRESH,
AUTOREFRESH = @AUTOREFRESH,
POPULATEMETHODCODE = @POPULATEMETHODCODE,
CATEGORYCODEID = @CATEGORYCODEID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE,
INCLUDEATTRIBUTES = @INCLUDEATTRIBUTES
where
ID = @ID;
exec dbo.USP_RESEARCHGROUP_GETSITES_UPDATEFROMXML @ID, @SITES, @CHANGEAGENTID, @CURRENTDATE;
exec dbo.USP_RESEARCHGROUP_GETCRITERIA_UPDATEFROMXML @ID, @RESEARCHGROUPCRITERIA, @CHANGEAGENTID, @CURRENTDATE;
end
else begin
raiserror ('ERR_RESEARCHGROUP_CANNOTMODIFY',13,1);
return 0;
end
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;