第40話 カスタムAppへの機能追加
エヌ・ケイ・カスタマイズの泉です。
今回は、前回まで開発していた「タスク管理」のカスタムAppに、ファイルを添付できる機能を追加したいと思います。
以下の記事は、Claris FileMaker Master Book 初級編(バージョン 19 対応)より、
Claris FileMaker 公式トレーニング教材
「10.3 詳細画面をつくる2(211ページ)」を元に掲載しています。
この文献から、1対多の事例に対して別テーブルを用意してリレーションでつなぐ、といったことを学びました。文献の執筆者、関係者の方々に深謝いたします。
なお、このブログ記事の趣旨は、弊社所属スタッフの Claris FileMaker 学習の成果を公開することを目的とし、同時に、参考文献の内容の紹介に資するものであることを Claris International Inc. が確認しています。
「タスク管理」の業務フローを考えたとき、タスクの実行によって、何かしらのアウトプットが発生することが予想できます。
電話対応では対応履歴、客先訪問であれば訪問履歴、打ち合わせであれば議事録。
これらは、「タスク」テーブルに「アウトプット」とか「結果」とかいったフィールドを用意することで、対応できそうです。
しかし、アウトプットが「打ち合わせ資料」や「見積資料」、「お客様受領資料」などファイルだった場合、どうでしょう?
そのファイルが1つであれば、オブジェクトタイプの「添付ファイル」フィールドを用意すればよいですが、ファイルが複数でその数が特定できない場合はどうでしょう?
フィールドオプション「データの格納」の[最大繰り返し数]を、10や20とある程度大きくとることもできますが、設定値以上の事象が発生した場合、都度、修正しなくてはいけません。。。
そこで、「リレーションシップ」を利用して、添付ファイルを別テーブルで管理します。
テーブルとリレーションシップの作成
それでは、ささっと「添付ファイル」テーブルの作成、リレーションシップを設定しましょう♪
(1) Macユーザーは「Shift + command + d」キー同時押しで、[データベースの管理]ダイアログを開き、「テーブル」タブをクリック。
(2) [テーブル名]に 添付ファイル と入力して、「作成」ボタンをクリック。
(3) 「フィルド」タブに移動して、下図の通りフィルドを追加。
(4) 「リレーションシップ」タブに移動して、「添付ファイル」のTO(テーブルオカレンス)が出来ていることを確認。
(5) 「タスク管理」TOとの間にリレーションシップを作成するためのTOを、以下の手順で作成。
- ダイアログ左下の[テーブルを追加]アイコンをクリック。
- [テーブルを指定]ウィンドウが開くので、[データソース:]は現在のファイルのままで、
下の枠から「添付ファイル」を選択。 - [名前]を「タスク添付ファイル」と変更して[OK]ボタンをクリック。
(6) リレーションシップの準備ができたので、以下のフィールで2つのTOをつなげる。
タスク管理TO:主キー
タスク添付ファイルTO:タスク外部キー
(7) 「タスク詳細」レイアウトから「添付ファイル」テーブルにレコードを作成できるように設定。
- 「タスク管理」TO と「タスク添付ファイル」TO を繋いでいる線の真ん中にある
□に=のマークをダブルクリックすると、[リレーションシップ編集]ダイアログが表示されます。 - 「タスク添付ファイル」TO 側の
「このリレーションシップを使用して、このテーブルでのレコードの作成を許可」
を オン にします。
(8) [リレーションシップ編集] ダイアログの「OK」ボタンをクリック、[データベースの管理] ダイアログの「OK」ボタンをクリック。作業終了。
レイアウトへの配置
前述で作成した「添付ファイル」を「タスク詳細」レイアウトに配置しましょう♪
(1) Macユーザーは、「command + L」キー同時押しでレイアウトモードに画面切り替え、「タスク詳細」レイアウトを表示。
(2) 左パネルで、「フィールド」タブをクリックし、以下の設定を行います。
- 現在のテーブル → 「タスク添付ファイル」を選択
- フィールド配置 → 縦
- ラベル → 上
- コントロールスタイル → 編集ボックス
(3) 次の2つのフィールドを選択し、マウスでレイアウト上にドラッグ&ドロップ
- 「添付ファイル」
- 「説明」
(4) レイアウトを保存して、Macユーザーは「command + B」キー同時押しでブラウズモードへ切り替え、作業内容を確認。作業終了。
最後に
テーブル作成〜レイアウトへの配置までを、一気に行いました。手慣れたものです♪
想定していなかった機能(テーブル)の追加が必要になった場合、
- 最低限必要なフィールド
- フィールドタイプ、オプション
- 他のTOとのリレーションシップ
を考慮して作業しましょう。
ところで、、、
このままでは、最初に言っていた『添付ファイルが複数の場合』に対応できていません!!
ということで、次回は添付ファイルを複数登録できるよう、レイアウトを修正していきます。
参考文献:Claris FileMaker 公式トレーニング教材 から、「FileMaker Master Book 初級編」 等を参考にしています
https://content.claris.com/fmb19_reg-ja