プロフィール文書からフィールドを取得し、そのフィールドの値をセッションが終わるまでキャッシュします。
@GetProfileField( profilename ; fieldname ; uniqueKey )
profilename
文字列。アクセスするフィールドが含まれているプロフィール文書の名前です。
fieldname
文字列。アクセスするフィールドの名前です。
uniqueKey
文字列。オプション。プロフィール文書を識別する一意のキーです。
fieldvalue
フィールドの値です。
この関数は、列式、非表示切り替え式、セクション編集者式、ビュー選択式では機能しません。ツールバーボタンとエージェントで使用できます。
Web 上でも使用できます。Web アプリケーションでプロフィール文書を作成するには、@SetProfileField を使用します。@SetProfileField の最初のパラメータで指定した名前のプロフィール文書がないときは、自動的に作成されます。この関数により、作成されたプロフィール文書のフィールドにアクセスできます。
プロフィール文書は、変更される頻度が低い値で使用してください。パフォーマンスを向上させるために、プロフィールはローカルメモリにキャッシュされます。そのため、1 人のユーザーがプロフィール内の値を変更しても、ほかのユーザーにはその変更がすぐに表示されません。文書に通し番号を付けるためにプロフィール文書を使用しないでください。Notes クライアントアプリケーションの場合、ユーザーは自分のキャッシュだけでなく保管されているプロフィール文書も更新するため、自分自身による変更がクライアントアプリケーションにすぐに反映されます。しかし、Domino Web アプリケーションの場合は、複数のサーバープロセスがそれぞれのプロフィールキャッシュを持つため、プロフィール文書を変更しても、Web アプリケーションのすべての部分にすぐに適用されないことがあります。
@GetProfileField("Interest Profile";
"ProfileCategories")
@GetProfileField("Interest Profile";
"ProfileCategories"; "weekday")
@Explode(@GetProfileField("userprofile"; "age"; @UserName):@GetProfileField("userprofile"; "job"; @UserName); ":")
この 2 つの値を表示するビューの列式では、ビューのプロパティで行の高さが 2、[行の高さを内容に合わせる] が有効に設定され、列のプロパティで複数値の分離記号が [改行] に設定されています。列式の値は次の通りです。
@Trim(profile)
@Explode 関数によって、[profile] フィールドに返すセミコロン (;) がコロン (:) に置き換えられます。このコロンによって、列式内の @Trim 関数は 2 つの値が文字列リストであることを認識します。
tempName := @GetProfileField("Profile";"userName";@UserName);
tempAddress := @GetProfileField("Profile";"userAddress";@UserName);
@SetDocField(@DocumentUniqueID;"name";tempName);
@SetDocField(@DocumentUniqueID;"address";tempAddress);
LotusScript® NotesUIDocument クラスの FieldGetText メソッド
LotusScript NotesDocument クラスの GetItemValue メソッド
Java™ Document クラスの getItemValue メソッド