写真・画像データファイルにアルバムの概念を追加したい

続いて写真・画像データファイルにアルバムの概念を追加してみよう。一つのアルバムに複数の写真・画像をひもづけ、より簡単に参照したい写真にアクセスできる環境をととのえてみる。

まずは管理したい情報の単位やカテゴリを頭の中で整理してみよう。

  • 1つのアルバムには、複数の写真・画像がひもづけられる
  • アルバムには、アルバムのタイトルと背表紙に使用する画像を入力する
  • 画像には、アルバムに紐づけるための情報と、実際の画像データ、写真を撮った日付・画像を作成した日付、メモなどを入力する

アルバムに紐づけたい「画像」を管理している器はすでにあるので、ここではあたらしく「アルバム」という大きなくくりの器を作成してやればいいということになる。この大きなくくりの器のことを、テーブルと呼ぶ。

それでは実際にこの「アルバム」テーブルを作成してみよう。メニューよりファイル>管理>データベースをクリックして、データベース定義画面を開く。テーブルタブをクリックして、あたらしくアルバムテーブルを作成する。

アルバムテーブルを作成

続いてフィールドタブをクリックして、フィールドの管理画面へ移動する。ここでは次の3フィールドを作成する。

  1. アルバム名: アルバムの名称を入力する。テキストタイプ
  2. 背表紙: アルバムの背表紙として、画像データを挿入する。オブジェクトタイプ
  3. アルバムキー: 後述。数字タイプ

アルバムテーブルにフィールドを作成

アルバムキーとは、画像を管理している「イメージカタログ」テーブルとのデータを紐づけるためのフィールドだ。この「他のデータ(テーブル)と関連づけをおこなうための情報」のことをキーと呼ぶ。このキーに使用されるものは、同じテーブル内で重複することなく、かつ後から変わることのない情報が望ましい。

たとえばアルバム名の場合は自由に入力ができる分、重複することが考えられる。このキーが重複してしまうと、画像との関連付けをおこなうときに本来は関係のないデータまで紐づけてしまうことになる。

後から変わってしまう情報の場合、関連付けが崩れる要因となる。このキーに使用するものは、自分が意識することのない番号を振ってやるのが良いだろう。アルバムキーを選択した状態でオプションをクリックすると、フィールド個別に対して特殊な設定をおこなうための画面が開く。ここで「入力値の自動化」タブをクリックし、シリアル番号にチェックを入れておく。

アルバムキーを選択した状態でオプションをクリックする

シリアル番号にチェック

シリアル番号とは、レコード(1テーブル内のデータの単位)が作成されるたびに自動的に設定されていく番号のことだ。この場合は増分が1となっているので、最初にレコードを作成したときは1、次にレコードを作成したときは2、次は3……と1つづつ増えていくことになる。

つづいて「入力値の制限」タブをクリックし、"ユニークな値"にチェックを入れておく。

入力値の制限タブにおいて、ユニークな値にチェック

このオプションをつけていることで、キー内に重複したデータが入ってしまうことが防がれる。本来、シリアル番号が自動的に入力されるので不要だと思われる作業だが、念のためにチェックをいれておく。

続けてイメージカタログのテーブルに、アルバムと紐づけるための「アルバムキー」フィールドを作成しておく。ここにアルバムのシリアル番号を挿入すれば、その画像がアルバムと紐づけられるというわけだ。

イメージカタログテーブルに「アルバムキー」フィールドを作成

最後に「リレーションシップ」タブを開く。リレーションシップとは、簡単に言えば「あるテーブル同士が、どの情報を持って関連付けがされているか」を定義するための機能だ。さきほど作成したアルバムキー同士を、マウスでドラッグして紐づけてみよう。

リレーションシップで、アルバムの「アルバムキー」と、イメージカタログテーブルの「アルバムキー」を紐づけ

これでデータベース側の準備は完了だ。OKボタンをクリックしてデータベース定義画面を閉じる。レイアウトにあたらしく「アルバム」が追加されているので確認してみよう。

「アルバム」レイアウトを表示

ほかのレイアウトと比較すると若干味気ないデザインだが、FileMakerならすぐにデザインのカスタマイズが可能だ。ほとんどのデザインは、マウスで配置してドラッグするだけで完了する。

「アルバム」レイアウトのデザインを修正後、表示方法をリスト形式に。いくつかアルバムを作成

それではアルバムから関連する画像の一覧へ移動できるようにしてみよう。レイアウトモードにして、ボタンを配置する。ボタンを押したときの動作として、「関連レコードへ移動」を設定する。「指定」ボタンをクリックして、関連レコードの取得元に"イメージカタログ"を選択し、レコードの表示に使用するレイアウトに"一覧表示"を選択。結果オプションでは「関連レコードのみを表示」にチェックを入れておく。

ボタンを押したときに、関連する画像の一覧へ移動できるように

あとは画像側にアルバムキーを設定するだけだ。さきほどの値一覧機能をうまくつかって、アルバムキーにアルバム名を選択するだけでひもづけが終わるようにしてみよう。

値一覧で、アルバムキーが簡単に選択できるように

ドロップダウンリストで、簡単にアルバムとひもづけがおこなえる

実際にいくつかひもづけをしたら、アルバムレイアウトから、実際に画像を絞り込んでみよう。

アルバムレイアウトのボタンをクリックすると、関連する画像だけが表示されるように

この「管理する項目(フィールド)の追加」「大きなくくりの器(テーブル)を追加」する方法はスターターソリューションのほかのテンプレートでも活用道がある。たとえば文書ファイルに「プロジェクト」の概念をつけることで、仕事で使うテキストや文書ファイルにアクセスがしやすくなる。仕事で使用する文書やTodoに重要度や優先順を追加することで、いま自分がやるべき仕事にすぐアクセスできるようにすることも可能だ。