queryAccess (NotesDatabase - JavaScript™)

ユーザー、グループ、サーバーに付与されている、データベースへの現在のアクセスレベルを返します。

定義場所

NotesDatabase

構文

queryAccess(name:string) : int
パラメータ 説明
name ユーザー、グループ、サーバーの名前。階層名の場合は、フルネームを指定する必要がありますが、短縮形にすることも可能です。
戻り値 説明
int 現在のアクセスレベル。以下のいずれかになります。
  • NotesACL.LEVEL_NOACCESS 0
  • NotesACL.LEVEL_DEPOSITOR 1
  • NotesACL.LEVEL_READER 2
  • NotesACL.LEVEL_AUTHOR 3
  • NotesACL.LEVEL_EDITOR 4
  • NotesACL.LEVEL_DESIGNER 5
  • NotesACL.LEVEL_MANAGER 6

使用法

指定する名前が ACL に明示されている場合、queryAccess は、その ACL エントリのアクセスレベルを返し、グループを検査しません。

指定する名前が ACL に明示されていない場合、queryAccess は、スクリプトが実行されているコンピュータで既知の第 1 アドレス帳で、その名前がグループのメンバーになっているかどうかを検査します。ローカルワークステーションの場合、そのアドレス帳は個人アドレス帳になります。サーバーの場合、そのアドレス帳は Domino ディレクトリになります。 queryAccess は、1 つ以上のグループで名前を見つけると、それらのグループの中でアクセスレベルが最も高いグループを返します。指定する名前が個別またはグループの一部として ACL に含まれていない場合、queryAccess は、その ACL のデフォルトのアクセスレベルを返します。

以下の計算結果フィールドには、現在のデータベース内にある現在のユーザーのアクセスレベルが表示されます。
var title:string = database.getTitle();
title = "For database ¥"" + title + "¥" you have ";
var accLevel:int = database.queryAccess(session.getUserName());
switch (accLevel) {
	case(NotesACL.LEVEL_NOACCESS) : return title + "no access";
	case(NotesACL.LEVEL_DEPOSITOR) : return title + "depositor access";
	case(NotesACL.LEVEL_READER) : return title + "reader access";
  	case(NotesACL.LEVEL_AUTHOR) : return title + "author access";
	case(NotesACL.LEVEL_EDITOR) : return title + "editor access";
 	case(NotesACL.LEVEL_DESIGNER) : return title + "designer access";
	case(NotesACL.LEVEL_MANAGER) : return title + "manager access";
	default: return title + "unknown access";
}

言語間の参照

LotusScript® NotesDatabase クラスの QueryAccess メソッド

Java Database クラスの queryAccess メソッド