ファイルメーカー|ポータル使い方|集計・フィルタリング
リレーション|ポータルの活用用法【応用】
リレーションシップの応用機能の一つにポータルがあります。ポータルを使えば、親テーブルに関連するテーブルの構成要素を表示でき、明細管理や履歴表示に役立ちます。
このポータルにFileMaker 12から新たに加わった機能がポータルフィルタリングです。これまでは、ポータルに表示した条件を変える度に、リレーションシップを繋ぐ必要がありました。
しかし、ポータルフィルターの機能が追加されたことで、1つのリレーションシップを用いてフィルタリングを掛けることにより、ポータル内に表示するデータを可変できます。
ポータルフィルタリングを巧く活用すれば、リレーショングラフが簡素化できます。ただし、ポータルフィルタリングを活用するうえでは、幾つか注意する点があります。
ポータルフィルタリング 注意点1
ポータルフィルタリングを使ううえでの注意点の1つ目は、『データの表示にフィルタリング』が掛かっているという点です。フィルタリングにより、ポータル内にデータを表示するかどうかをフィルタリング(制限)できますが、データそのものはリレーションにより参照されています。つまり、、、
《①リレーションによる参照》→《②ポータルフィルタリングによる表示制限》の順で制御が掛かります。
その結果、リレーションの参照データを集計するとデータ表示の有無に関わらず、リレーションによって参照されたデータが集計されます。ポータルの表示結果とポータルデータの集計結果が違うという場合には、ポータルフィルタリングが掛かっていないかを確認してみてください。
ポータルフィルタリング 注意点2
ポータルフィルタリングは、リレーションによって参照された全データを改めて、フィルタリングします。つまり、ファイルメーカーとしては、《リレーションによる参照》と《ポータルフィルタリングによる制限》という2重処理をしています。そのため、リレーション機能のみでデータを表示した時に比べ、処理速度が遅くなる可能性があります。あまり神経質になる必要はありませんが、3G回線など低速な通信環境からリモート操作をする際には、処理速度を十分に検討しておいた方がよいでしょう。
◉追記
バージョン14から「ポータルの更新」というスクリプトステップが加わりました。従来は「ウインド内容の再表示」というスクリプトステップを使っていましたが「ウインド内容の再表示」は、画面全体が再表示されるため、負荷が重くなりがちです。特定のポータルのみを更新したいときは「ポータルの更新」を活用してください。