LotusNotesな日々IBM社のLotusNotesに関係する何かを日々語ってるようなきがしないでもないブログです。 

スポンサーサイト

   ↑  --/--/-- (--)  カテゴリー: スポンサー広告
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

(記事編集) http://mesosune.blog123.fc2.com/?overture" target="_new

--/--/-- | Comment (-) | HOME | ↑ ページ先頭へ |

【Notes】LotusScriptで権限を確認する

   ↑  2007/11/06 (火)  カテゴリー: Notes(LotusScript)
LotusScript上でユーザアクセス権限をまじめに調べようと思うと,
ユーザの正式名をひっぱってきて,ACLクラスを定義して…
その方法ではグループに所属しているユーザは素直にとってこれないし…
とやたらと面倒です。

そんな時こそ、LotusScript上でEvaluateを使って@式を使用してしまうのです。

ただし,Evaluateは,不具合を起こすとサーバーを道ずれにするようなエラーを起こします。
出来るだけmLotusScript実行前に非表示式などで物理的に分岐してしてくださいね^^

【例】

※[Admin]ロールを持っているかどうかを調べる
@UserRolesで持っているロールを確認する
VariantValue = Evaluate({@isnotmember("[Admin]";@UserRoles)})

※削除権限を持っているかどうかを調べる
@UserAccessでアクセスレベルを取得
VariantValue = Evaluate({@Middle( @Implode(@UserAccess(@DbName);"");2;1 )})

@UserAccessの戻り値は,
[アクセスレベル : 作成権限 : 削除権限]となっているため,
以下のように表現することができる。

●アクセスレベル
  @Middle( @Implode(@UserAccess(@DbName);"");0;1 )
  戻り値>>
   1:投稿者
   2:読者
   3:作成者
   4:編集者
   5:設計者
   6:管理者

●作成権限
  @Middle( @Implode(@UserAccess(@DbName);"");1;1 )
  戻り値>>
   0:無し
   1:有り

●削除権限
  @Middle( @Implode(@UserAccess(@DbName);"");2;1 )
  戻り値>>
   0:無し
   1:有り
スポンサーサイト

(記事編集) http://mesosune.blog123.fc2.com/blog-entry-10.html

2007/11/06 | Comment (0) | Trackback (0) | HOME | ↑ ページ先頭へ |

Comment

コメントを投稿する 記事: 【Notes】LotusScriptで権限を確認する

お気軽にコメントをぞうぞ。
非公開 (管理人のみ閲覧可能なコメント) にしたい場合には、ロック にチェックを入れてください。

  任意 : 後から修正や削除ができます。
  非公開コメントとして投稿する。(管理人にのみ公開)
 

Trackback

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。