第20話 レイアウトとデータの関係

エヌ・ケイ・カスタマイズの沖田でございます。今回は、リレーションシップグラフについて確認をしていきたいと思います。
リレーションシップはAppを開発するにあたり、必ず必要になってきますので、しっかりと内容を理解していきましょう。

リレーションシップの操作

 リレーションシップの開き方は、
 ・ファイル → 管理 → データベース から リレーションシップタブをクリック。
 ・ctrl + shift + D から リレーションシップタブをクリック。(Windowsの場合)
 ・command + shift + D から リレーションシップタブをクリック。(macosの場合)
 などがあります。

 リレーションシップを定義するための操作は簡単です。
 (1)リレーションシップを定義する2 つのテーブルオカレンスを決定します。
 (2)照合フィールドをドラッグ& ドロップして上記の2 つのテーブルオカレンス間で繋ぎます。
 (3)「=」演算子で関連付けされたリレーションシップが作成されます。
 (4)定義したい内容に従って[リレーションシップの編集]ダイアログで内容を変更します。

[リレーションシップ編集]ダイアログ

 図のような「タスク」テーブルと「添付ファイル」テーブルのオカレンスがある場合に線の□に=が表示されている部分をダブルクリックすると、[リレーションシップの編集]ダイアログが表示されます。

関連条件の演算子

上記の図は関連条件の演算子は「=」ですが、演算子には7種類が用意されています。変更することで照合の条件が変わります。
つまり、関連レコードも変わります。
 ・ =(同一)
 ・ ≠(違う)
 ・ <(未満)
 ・ ≦(以下)
 ・ >(超過)
 ・ ≧(以上)
 ・ ×(すべて)

さらに、リレーションシップのオプション設定として必要に応じて、関連レコードの作成、削除、
ソートの設定をおこなうことができます。これらは、なにが起きるのかを必ず確認した上で設定して
ください。

[このリレーションシップを使用して、このテーブルでのレコードの作成を許可]
 テーブルの照合フィールドにデータが入力されたとき、その参照先テーブルにそのデータに基づいた新しい関連レコードが作成されます。

[他のテーブルでレコードが削除された時、このテーブルの関連レコードの削除を許可]
 テーブルの照合フィールドにデータが入力されたとき、その参照先テーブルにそのデータに基づいた新しい関連レコードが作成されます。
 ※ 取り扱い注意です。削除を実行するレイアウトに関連レコードが表示されていなくても削除されます。

[レコードのソート]
リレーションによる関連レコードをソートする順を設定します。設定しなければレコード作成順になります。

2 つのテーブルオカレンスにそれぞれ設定できる
ダイアログには、設定場所が2 つあります。右側と左側のテーブルオカレンスそれぞれに設定するためです。参照元と参照先という概念を思い出してください。例えば関連レコードの削除はこんなふうに考えることが多いのではないでしょうか。

この場合、次のように設定します。
・ 「 添付ファイル」テーブルオカレンスに[他のテーブルでレコードが削除された時、このテーブルの関連レコードの削除を許可]を オン

チェックがついた状態で、データの動きを見てみます。

もしも、参照元と参照先で共通の1 設定しかできなかったら「添付ファイル」テーブルのデータを削除したら「タスク」テーブルのレコードも削除されてしまいます。タスクは複数の添付ファイルを関連先レコードとしているかもしれません。そのファイルの内1 つと一緒にタスクが削除されてしまったら……。それは困ります。そのために両方のテーブルオカレンスに別の設定ができるのです。

FileMakerでは、リレーションの設定のみで、関連レコードの作成・削除なども可能になっており活用方法も多岐に渡り、とても便利であります。
使用するにあたり、簡易的にデータを用意し、まずは動きを確認(何が起こっているか)することで、イメージがつくのではないかと思われますので、お試しください。

今回はここまでになります。次回も引き続き学習していきましょう!

Follow me!