USP_SYSTEMPRIVILEGECATALOG_CREATEORUPDATE

Creates a system privilege or updates it if it already exists.

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN
@NAME nvarchar(100) IN
@DESCRIPTION nvarchar(max) IN
@SECURITYUIFOLDER nvarchar(255) IN
@CHANGEAGENTID uniqueidentifier IN

Definition

Copy


create procedure dbo.USP_SYSTEMPRIVILEGECATALOG_CREATEORUPDATE(@ID uniqueidentifier,
    @NAME nvarchar(100),
    @DESCRIPTION nvarchar(max),
    @SECURITYUIFOLDER nvarchar(255),
    @CHANGEAGENTID uniqueidentifier)
as
    set nocount on;

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

    declare @EXISTINGID uniqueidentifier;

    select @EXISTINGID = ID from dbo.SYSTEMPRIVILEGECATALOG where ID = @ID;

    if @EXISTINGID is null
    begin
        insert into dbo.SYSTEMPRIVILEGECATALOG (ID,
            NAME,
            DESCRIPTION,
            SECURITYUIFOLDER,
            ADDEDBYID,
            CHANGEDBYID,
            DATEADDED,
            DATECHANGED)
        values (@ID,
            @NAME,
            @DESCRIPTION,
            @SECURITYUIFOLDER,
            @CHANGEAGENTID,
            @CHANGEAGENTID,
            getdate(),
            getdate());
    end
    else
    begin
        update dbo.SYSTEMPRIVILEGECATALOG set NAME = @NAME,
            DESCRIPTION = @DESCRIPTION,
            SECURITYUIFOLDER = @SECURITYUIFOLDER,
            CHANGEDBYID = @CHANGEAGENTID,
            DATECHANGED = getdate()
        where ID = @ID;
    end;