FileMakerを使って画像や写真のデータベースを作る話。仕切り直しと整理を兼ねて、実際にファイルを作りながら進めてみようという試みを開始します。実作編、はじまりはじまり〜
このページ内の見出し
FileMakerでメディア管理システムを作る話 実作編
メディア管理システムを作る話のシリーズは投稿も増えてやや煩雑になってきました。改竄したり同じような話を蒸し返したりしています。新しい分類に収めてみたものの、意図不明確で煩雑さに拍車がかかっただけでした。
最近、投稿内容に合わせたサンプルファイルを添付してみたところ、なかなかナイスじゃない?ということでサンプルファイルを添付するシリーズにしようかとも思ったんです。
しかし、ただファイルを添付したところで煩雑さに変わりありません。そこで考えた。作っていく過程を基礎から順序立てて進めていく新シリーズはどうだろう。
仕切り直しも込めて、実作しファイルを育てます
これなら最初の基本から仕切り直す事ができるし意図も明確になります。過去ネタを蒸し返しても気にならないしファイルもスッキリ。自ネタのチョンボを発見して修正もできる。アイデアというものは一つのことで複数の問題が解決することであると宮本茂さんも言うとる。よし。それで行こう。
実作 ver0: 基本フィールドとよく使う小技
そんなわけでFileMakerで作るメディア管理システム、仕切り直しも込めて最初の素の状態から作って育てていきたいと思います。今回を実作シリーズの第一回とします(無理矢理)後から思いついたので順序が変になりますけど気にしない。
実作最初のバージョン、ちょー基本的な素のデータベースです。初心者にも安心。
このファルには最小限のフィールドがあるだけです。以下で説明します。それだけでは寂しいので小技をいくつか装備してます。その説明も下に加えておきます。
基礎フィールド
ファイルを開いてデータベース管理を見ると、たった5つのフィールドしか作られていないことが確認できます。これがメディア管理の基礎中の基礎。
ID
シリアルナンバー、IDです。IDは今後必須です。今は何にも使っていません。
オブジェクトフィールド
画像や動画などメディアを読み込みます。レイアウトモードで「イメージ」か「インタラクティブ」を選択することで挙動も変わります。
→ FileMakerでメディア管理システムを作る話 1 フィールド
→ FileMakerでメディア管理 Photoshop.psdの扱い
ファイル名
メディアを挿入したりフォルダインポートで読み込めば自動で入ります。
ファイルパス
フォルダインポートで読み込めばパスが自動で入ります。そうでなければ何も入りません。自動取得についてはここでは触れません。実作編第二回以降にファイルパスについて書く予定です(白々しい。すでに書いてます)
→ FileMakerメディア管理 実作編 Ver.1 ファイルパスを取得する
サムネイル
画像を新規で読み込めば取得できます。「参照」で取得できないこともあります。すでに関連記事がありますが、このファイルでは踏み込んでいません。次の次くらいに何かします。
今回のデータベースでは各フィールドも基本機能しか備えておらず、いろんな場面で対処しきれない仕様です。使っていくと不便な部分が見つかります。
不便が見つかればしめたもの。それを解決しようと人は試みます。
たった数個のフィールドですが掘り下げ出すとネタが溢れます。他にどんなフィールドが必要なのかもじわじわ見えてくるでしょう。次回以降、ゆっくり育てていきたいと思います。もし頓挫したらごめん。
小技
画像や動画のデータベースに限らず、FileMakerで書類を作る際に使う定番の小技・小ネタを使用しています。今回ファイルの中にもいくつか仕込んであります。
ウインドウタイトル
ウインドウタイトルの設定はかかさずやります。でないとファイル名-2とかって名前のウインドウばかりになってしまいます。
Get ( ファイル名 ) & " - " & Get ( レイアウト名 )
こんなのをOnLayoutEnterに仕込んでます。
ウインドウサイズ
ウインドウサイズの調整についてひと言で説明できません。この件について別途投稿しますのでアップされたら参照ください。
リスト表示のラベル風ソートボタン
セルフポータルを含め、リスト表示ではヘッダのラベルを置きたくなります。そのラベルをクリックすると項目でソートしてくれればいいですね。そういうボタンのスクリプトです。
これについても近日詳細を別途ポストします。- しました。
キーの操作
リスト表示(セルフポータルも含めて)では矢印キーの上下でレコード移動する機能を置いてます。「もしどのフィールドもアクティブでなければ」というIF文の中で、以下を発動させます。
「もしどのフィールドもアクティブでなければ」は、自分は isEmpty(Get(アクティブフィールド名)) でやってます。
if [ Code ( Get ( トリガキー入力 ) ) = 31 ] レコード移動 [次の] esle if [ Code ( Get ( トリガキー入力 ) ) = 29 ] レコード移動 [前の] end if
OnLayoutEnterのkeystorokeに仕込みます。リストやポータルの快適操作。
次はフィールドの入力の際、リターンで確定させるやつです。改行を入れたくないフィールドに自分的には必須。
if [ Code ( Get ( トリガキー入力 ) ) = 13 ] レコード確定 end if
これでフィールドに入力した最後、リターンを押しても改行されずにすみます。
レイアウト
現時点ではメインのフィールドがひとつと、プレビュー用のカードレイアウトがあります。サムネイルにボタンを仕込んでいて、クリックでカードレイアウトが開く仕組みです。
メインのフィールドは、全てのフィールドを配置して確認することと、メインレイアウトとしての役割の両方を持っています。その二つに何か違いあるんか?今はないけど、後々フィールドが増えてくると役割を意識するときがくるでしょう。
フォルダからインポート、新規登録といった基本のインポート操作をボタンに置いています。シンプルすぎて笑っちゃうレイアウトですが、この素の状態からどのように育っていくかを理解するには大事な最初の一歩と言えるかもしれません。また、FileMakerでファイルを作ることに慣れていない方にとってはシンプルなレイアウト内を見て回ることで、良い教材になるんじゃないかと自画自賛。
では次回以降、このシンプル素データベースがどのような機能を獲得していくか、乞うご期待。

次はファイルパスについてです。あっ。もうありました。
FileMakerメディア管理 実作編 Ver.1 ファイルパスを取得する