USP_ADHOCQUERYFOLDER_CREATEORUPDATE

Creates or updates an ad-hoc query folder.

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN
@NAME nvarchar(100) IN
@DISPLAYORDER int IN
@PARENTFOLDERID uniqueidentifier IN
@SECURITYLEVELCODE int IN
@QUERYDEFAULTALLOWALLUSERSTORUN bit IN
@QUERYDEFAULTALLOWALLUSERSTOEDIT bit IN
@APPLYASDEFAULTPERMISSIONSFORALLSUBFOLDERS bit IN
@OWNERID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN

Definition

Copy


          create procedure dbo.USP_ADHOCQUERYFOLDER_CREATEORUPDATE (
            @ID uniqueidentifier = null,
            @NAME nvarchar(100),
            @DISPLAYORDER int,
            @PARENTFOLDERID uniqueidentifier = null,
            @SECURITYLEVELCODE int,
            @QUERYDEFAULTALLOWALLUSERSTORUN bit = 0,
            @QUERYDEFAULTALLOWALLUSERSTOEDIT bit = 0,
            @APPLYASDEFAULTPERMISSIONSFORALLSUBFOLDERS bit = 0,
            @OWNERID uniqueidentifier = null,
            @CHANGEAGENTID uniqueidentifier = null
          ) as begin
            set nocount on;

            if @CHANGEAGENTID is null
              exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

            declare @CURRENTDATE datetime;
              set @CURRENTDATE = getdate();

            if exists(select 1 from dbo.ADHOCQUERYFOLDER where ID = @ID
            begin

              update dbo.ADHOCQUERYFOLDER set
                NAME = @NAME,
                DISPLAYORDER = @DISPLAYORDER,
                PARENTFOLDERID = @PARENTFOLDERID,
                SECURITYLEVELCODE = @SECURITYLEVELCODE,
                QUERYDEFAULTALLOWALLUSERSTORUN = @QUERYDEFAULTALLOWALLUSERSTORUN,
                QUERYDEFAULTALLOWALLUSERSTOEDIT = @QUERYDEFAULTALLOWALLUSERSTOEDIT,
                APPLYASDEFAULTPERMISSIONSFORALLSUBFOLDERS = @APPLYASDEFAULTPERMISSIONSFORALLSUBFOLDERS,
                OWNERID = @OWNERID,
                CHANGEDBYID = @CHANGEAGENTID,
                DATECHANGED = @CURRENTDATE
              where
                ID = @ID;

            end
            else 
            begin

              if @ID is null
                set @ID = newid();

              insert into dbo.ADHOCQUERYFOLDER (
                ID,
                NAME,
                DISPLAYORDER,
                PARENTFOLDERID,
                SECURITYLEVELCODE,
                QUERYDEFAULTALLOWALLUSERSTORUN,
                QUERYDEFAULTALLOWALLUSERSTOEDIT,
                APPLYASDEFAULTPERMISSIONSFORALLSUBFOLDERS,
                OWNERID,
                ADDEDBYID,
                CHANGEDBYID,
                DATEADDED,
                DATECHANGED
              ) values (
                @ID,
                @NAME,
                @DISPLAYORDER,
                @PARENTFOLDERID,
                @SECURITYLEVELCODE,
                @QUERYDEFAULTALLOWALLUSERSTORUN,
                @QUERYDEFAULTALLOWALLUSERSTOEDIT,
                @APPLYASDEFAULTPERMISSIONSFORALLSUBFOLDERS,
                @OWNERID,
                @CHANGEAGENTID,
                @CHANGEAGENTID,
                @CURRENTDATE,
                @CURRENTDATE
              )

            end

            return 0;

          end