第21話 リレーションシップの役割とポイント

エヌ・ケイ・カスタマイズの泉です。
今回は、リレーションシップの役割とポイントについて、簡単にまとめてみたいと思います。

リレーションシップは、あらゆるところで利用されます。
設定された内容はテーブル同士の関係を表しています。
FileMaker は、この関係を通してデータを表示したり、
計算したりスクリプトを動作させたりしています。

レイアウト設定の「レコードを表示:」で指定するのはテーブルオカレンスの名前です。


それに従ってフィールドも、テーブルオカレンス名がついたフィールド名としてレイアウト上に置かれます。
計算式やスクリプトで指定するレイアウト名、テーブル名、フィールド名も同じです。

関連先の照合フィールドにデータを入力する

例えば、「タスク」テーブルと「添付ファイル」テーブルのリレーションがあり、
関連元の「タスク」テーブルのレコードに対して添付ファイルをポータルから入力しました。
すると、「添付ファイル」テーブルに関連レコードが作成されました。

<リレーションシップグループ>

<画面入力>


【結果】
<関連元テーブル>

<関連先テーブル>

2 つのウインドウで照合フィールドを見比べましたが、必要なデータ(照合フィールドやハウスキーピングフィールド)が
自動で入力されていました(照合の条件が「=」なので同じ数字でした)。
これらは、FileMakerがリレーションシップを利用して、自動でおこなっています。

常にリレーションシップを意識できるようになる

カスタムApp を作成しはじめた当初は、テーブルオカレンスをあまり意識しなくても平気です。
追々、複数のテーブルが必要になり、さまざまな機能やレイアウトを作ってデータベースを
充実させていくようになったら常に意識するようにしましょう。

変更には要注意

機能やレイアウトを作成するとき、これまで使ってきた構造のことを考えずに関連付けを変更すると
全体に影響がでることがあります。大切なデータがダメになってしまうかもしれません
つまりテーブルオカレンスとリレーションシップは、とても重要なものです。

テーブルオカレンスグループ

複数のテーブルオカレンスが関連付けられているひとまとめを「テーブルオカレンスグループ(TOG)」と呼びます。
リレーションシップグラフ上にほとんど無限に作成できます。

「なんでも1 つで」とはしない
ここで、気をつけたいことがあります。
カスタムApp の規模(テーブル数や画面数)にもよりますが、
なんでも1 つのテーブルオカレンスグループで済ますのはお勧めできません。

リレーションシップに思わぬ影響がでるかもしれません。
機能やレイアウトによって複数作成して使い分けます。

まとめ

つまり、前述で「追々リレーションシップを意識できるように」としておりますが、
初心者のうちから、

画面や機能を作る = リレーションシップの作成が必要ではないか確認

と意識しておくのがいいと思います。
FileMakerは保守性がよいのがアピールポイントです。
つまり、画面追加、機能追加は得意中の得意で、日常茶飯事です。
ということは、「追々なれるまで」と言わずに、常に意識しておくほうが、
レベルアップに繋がり、手戻りを削減できます。

終わりに

今回は、リレーションシップの役割やポイントについての投稿でした。
私もまだまだ勉強中なので、どんどんアウトプットして、どんどんレベルアップしたいと思います!!
では、また次回をお楽しみに!!

Follow me!