投稿

1月, 2020の投稿を表示しています

フレームに表示する内容を動的に変更してみる

イメージ
こんにちは。2020年もHCL Masterになってしまいました。
昨年(2019年)はコミュニティ活動はほぼできてなかったというのに・・・

なので、今年は少しブログにも力を入れようかと思います(思うだけならいいかな?)。
1月ももう1週間で終わろうという時期ですが、2020年初ブログといきます。

今日は、フレームセットのちょっとしたテクニックです。
フレームセットを使ったNotesアプリケーションを普段から開発している方にはわかりきった話かと思いますが、あまり紹介されていないようなのであえて書きます(自分自身の備忘録でもあります)。


通常、フレームセットはフレームを区切って、それぞれのフレームに何を表示させるのかを選択します。
よくあるフレームセットはこんな感じでしょうか。

左側にアウトライン用のフレーム、右上がビュー表示用のフレーム、右下はプレビュー用のフレームです。
それぞれのフレームに何を表示するかはプロパティ画面で設定します。
下図は、「(一般用アウトラインページ)」というページを表示させるように設定したものです。
「種類」では"名前付き設計要素"、"ページ"を選択して、
「値」は黄色のフォルダアイコンをクリックして、設計要素を選択しています。

しかし、ここでよくプロパティを注目してみると・・・
「値」を設定する箇所に「@」というアイコンがあります。
ここをクリックしてみましょう。

なにやら新しいダイアログが表示されました。
「名前付き要素の種類についての式」には"Page"、「名前付き要素の名前についての式」には"pgOutlineGeneral"と書かれています。
※英語になっているのは別名を設定しているためです

はい。ここは、フレームに表示したい内容を式で記述できるのです。
となれば、ここに条件式を記述することでフレームに表示する内容を動的に変更できるのではないでしょうか?

やってみましょう。

内容はこのようなものです。
[Admin]ロールを付与されている場合とそうでない場合とで表示するページを変更しています。
@If(@IsMember("[Admin]";@UserRoles);"pgOutlineAdmin";"…