当ブログに掲載しているサンプルは、すべて利用者の自己責任という形でお願いします。
ただし、明らかな不具合がある場合、ご連絡いただければ、訂正記事を出します。
また、こちらのサンプルは、別のサイト等への公開、転載は一切禁止しています。
どうしてもと言う場合は、筆者にあらかじめご連絡ください。

テクてく Lotus 技術者 Slack に参加しよう!

2016年5月31日火曜日

プログラム可能な表を作ってみよう

皆さん、こんにちは。
XPages開発やってますか!?

でも、今日はXPagesの話はしません(笑)。
今年はノーツ初心者に対してのセッションが数多く行われるということで、
当ブログでもNotes DBのtipsの話をします。


Notes DBでよく使うのが「表」でしょう。
アプリケーションのレイアウトを整える上で唯一といっていいものですからね。
私もNote DBでは多用しています。

そんな便利な表ですが、「プログラムで制御ができる」ことはご存知でしょうか(まぁ、Notes歴が長い人はしってますよね・・・)

プログラムといっても、@関数でできるので、とってもお手軽なのもポイントです。


では、どんな制御ができるのかを見ていきましょう。
といってもできることは単純です。
プログラムで表の何行目を表示するのかを自動で切り替えられるようにするというだけです。

詳しくはプログラム可能な表を作成するを見てください。


次に設定方法です。

1.表を作成します。
表を作成

表は2行以上であれば、何行でも構いません(もちろんNotesの制限はありますが)。
この時、「表の種類」を一番右側のものを選択しておきます(ただし、あとで変更はできますので、間違えても気にしない!)


2.表の設定を確認します。
表が作成できたら、正しく設定されているか確認します。
表のプロパティのうち、右から2番目のタブを開きます。
プログラミング可能な表の設定

1.で表の種類を誤って作成してしまった場合は、上の図を見て同じように修正してください。
直すのは2か所。「行の特殊表示」を"1行のみ表示"にして、「行の表示方法」を"行の切り替えをプログラウで行う"にするだけです。簡単ですよね!


3.各行に名前を付けます。
続けて、表のプロパティの一番右側のタブを開きます。
そこに「表のHTMLタグ」と書かれた欄に「名前/ID」とあるので、表全体の名前を入力します。
ここは任意の文字ですが、大文字小文字の区別がされるので、どのような名前を付けたのかを覚えておく必要があります。

表の名前と行の名前を付ける

また、「行のタグ」欄にある「名前」には各行の名前を入力します。
ここも任意の値で良いですが、各行で重複しないようにします。

※表の各行のタブをクリックすると、その行に移動します。すると、「行のタグ」の「名前」欄が空白になるので、そこに名前を入力します。


これで表の準備はできました。
次にプログラミングの方法です。

4.表の名前フィールドに値を設定する。
上の図では表に「pTable」という名前を付けました。
また、表は全部で5行作成してあり、それぞれの行には「tab1」から「tab5」までの名前を付けています。
このような場合、プログラムでは以下のように記述します。
FIELD $pTable := "tab1";
@Command([RefreshHideFormulas]);

表の名前には「$」を付けます。
$付のフィールド名に開きたい行の名前を値として設定します。
最後のコマンドは画面を更新するためのものです。
行の名前は変数にすることにより、開かせたい行を自由に設定することができます。


うまく使えば、役職や部署ごとに開かせたい行を変更することができます。
そして、それぞれの行には見せたい内容を埋め込んでおけばよいのです。



たまにはこんな話題も楽しいでしょ?
では今日はこの辺で・・・




Notes/Dominoで困ったことがあれば、弊社にお問い合わせください。
IBM Championの私が承ります!
お問い合わせはこちらから→Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

0 件のコメント: