はじめに
システム開発担当の「ほうがん」です。今回はポータル行に区切り線を入れる手法のご紹介です。
以下のような住所録(ダミーデータ)を表示したポータルがあるとします。
ポータルは都道府県でソートされています。
以下の様に、都道府県など何らかの情報が切り替わる部分に以下の様に区切り線があるとずいぶん見やすくなります。
今回はこの区切り線機能を作成してみましょう。
1,住所録ポータルのデータ構造
まず、どのような構造になっているかデータ構造を確認します。
Utilityと住所録の2テーブルがあり、住所録テーブルは以下の通りです。
もう1テーブルUtilityには「g_All」というフィールドがあるだけで、Utilityレイアウトのポータルに「住所録データ」を表示させるためだけに用意しています。
これを以下のリレーションで繋ぎます。
これでUtilityレイアウトのポータル内に住所録の全データを表示します。
リレーションのソート順は「都道府県」フィールドに設定。
Utilityレイアウトにポータルで住所録を表示させると以下のように表示出来ます。
2,自己リレーションを追加
先ほどのリレーションシップグラフの右側に住所録を「都道府県」フィールド同士で自己リレーションします。
これは区切り線の表示、非表示を判断するためのリレーションになります。
3,レイアウトのポータルに区切り線を追加
レイアウトモードでポータル内にポータルの幅と同じ長さの線を引きます。わかりやすいように線幅を3ptにしておきます。
このままブラウズ表示すると、3ptの線が全てのポータル欄にひかれるだけです。
では、再度レイアウトモードで先ほど引いた線に区切り線として機能するように設定を行います。
4,区切り線の非表示設定
先ほど作成した区切り線をポータルの最上部に移動します。
この線に「データ」タブの「次の場合にオブジェクトを隠す」で以下の式を設定します。
Utility_住所録::主キー ≠ Utility_住所録_自己::主キー
これで設定は終了です。
※こちらの仕組みは現在のテーブルと自己リレーションのテーブルの主キーが同じなのは各「都道府県」に1つしかないことを利用します。
5,完成
ブラウズモードで表示してみます。以下のように目的の「都道府県」ごとの区切り線が表示されます。
如何だったでしょうか。以外と簡単に区切り線機能が実現できました。
この原理を応用すれば都道府県に限らず、年月でも拠点ごとでも何らかのデータ区分ごとに区切り線を入れることが出来ます。お試しください。