書籍名「小さな会社のFilemakerデータベース作成・運用」
株式会社キクミミ 富田
読もうと思った経緯
・業務でノーコードツール(Filemakerではない)に触れる機会があり、 その時に、ノーコードツールの知見を深めたいと思ったため
・FileMakerはノーコードで業務用アプリケーションとしては歴史が長く、FileMakerを抑えておけば他のノーコードツールを触る際の助けになると思ったため
印象に残った部分
p37 業務は常に変わるもの
・現実には形通りにはまってくれるシステム開発はそうそうありません。
システム開発に要する期間よりも、企業を取り巻く環境や業務が変化する期間のほうがはるかに短いからです。
・大規模なプロジェクトや会社の命運を握るプロジェクトなら、満足な時間・人員予算が確保できます。
ところが現場の日常業務を効率化するプロジェクトの場合、残念ながら時間、人員予算を確保できる方がまれです。
このため、システム開発を始めるにあたりソフトウェアの選定が重要になっていきます。
選定
表計算ソフトとオープンソースのソフトウェア
・個人だけで回っている業務を効率化する場合に適した技法です
・数人~部門間レベルで使用するシステムでは、各自のITスキルも要求されるため運用が難しい
プログラミング言語を使って独自開発する
・習得と開発の時間が確保できるなら可。
・部門間レベルで使用するシステムの場合はRASISを満たすシステム開発を心掛ける必要がある。
※
R・・Reliability(信頼性)
A・・Availability(可用性)
S・・Serviceability(保守性)
I・・Integrity(完全性)
S・・Security(機密性)
アプリケーションプラットフォームを利用する
選定や開発方法を間違わなければ、個人利用から部門間レベルで利用するシステムまで幅広いニーズに対応できる。
学習コスト低い
p37 全部をシステム化しないという考え方
業務のほとんどを自動化で行えるようにアプリケーションを開発すると、想定外の事象が発生した際に、
システムだけは対応が不可能になります。
この場合、柔軟に変換対応できる人間のための「のりしろ」をシステムに残しておこないと変化に対応できないシステムになってしまいます。
p60~63 レイアウト、オブジェクト
レイアウト
データを入力、表示するための要素
1つのレイアウトには、必ずテーブルが1つ関連付けられます。用途に応じたレイアウトを用意することで、
業務に合わせたアプリケーションと画面動線を設計します。
レイアウトパート
画面に表示する情報を、整理・集計するためにあらかじめ区分けされた部分です。
例:ヘッダ、ボディ、フッタなど
p69 テーブルオカレンスとは
データベース定義画面のリレーションシップグラフ上にテーブルを仮想化して表示したもの
Filemakerのレイアウトやスクリプトなどでの操作は、テーブルオカレンスに対して行います。
※テーブルとは別の概念
テーブルでは、型、カラム、制限(ユニーク、型一致)などを定義する。
p74 ファイルの分離
保守の面を考慮した場合、ファイル分割して管理したほうが好ましいです。
用途別にテーブルをグルーピングし、FileMakerファイルを分離する。
「レイアウト情報のみを格納するファイル」
「マスタ系のレコードを格納するファイル」
「データ系のレコードを格納するファイル」
※会社の情報を入力する場合、FileMakerファイルに適切な権限情報を設定するくせをつける。
p83 例外処理
2通りの方法がある。
・データベース定義で設定する。
データベース定義→入力値の制限
・スクリプト中に設定する。
p86 ネットワークによる共同利用
WebDirect
WebDirectとは、Filmaker Server13で提供されるWebブラウザ上でFileMakerデータベースを簡単に共有するための仕組みです。
FileMakerProのWebブラウザ版というべきを有している。
※FileMakerServerが必要
FileMaker Server
FileMakerファイルを共有して利用するためのアプリケーションです。
FileMakerServerにFileMakerを配置設定して共有する。FileMakerServer単体ではFileMakerアプリケーションの開発はできません。
インスタントWeb公開
FileMaker Pro12以前で提供されていたWebブラウザ上でFileMakerデータベースで簡単に共有するための仕組みです。
カスタムWeb公開
・FileMaker Server, FileMaker Server Advancedにてサポートされている共有機能です。FileMakerデータベースをXMLおよびPHPを利用してWebアプリケーションと連携させることが可能になります。
p141 画面遷移はなぜ 必要か?
テーブルの設計の次に画面遷移設計図を作成します。画面遷移とは各画面の導線のことです。
システム上で再現する業務の順番に従い、画面で情報の入力順番や集計処理時の順序を設計します。
p151 ポータルの配置
ポータルは関連テーブルからレコードを複数個表示するための機能です。
詳細レイアウトにポータルを配置することで、テーブルオカレンスとリレーションを貼った他テーブルのレコードを複数行表示する事が可能です。
p156 インスペクタ
オブジェクトに設定された視覚効果や位置表示、UIの種類を横断して確認操作できる機能です。
位置・・位置、配置と整列、グリッド
スタイル・・テーマ、スタイル
外観・・テキスト、段落設定
データ・・フィールド、操作、データの書式設定
感想
・解消したい課題に対して適切にノーコードツールを選定することが大事だと思いました。
1年に1個はノーコードツールを調べる必要があると思いました。
(PowerAppとかkintoneを試す)
・FileMakerの使い方以外にもシステム開発の一般論も書かれていて勉強になりました
・FileMakerの製品ごとを違いを知ることができて良かった。
Web版あたりのイメージです。
・ノーコードとプログラミングの使い分けに言及されていて勉強になりました。
・10年前の2014年に発行された本ですが、ch3~6の手順通りに試したところ作れましたので今でも使えます。
実践すること
・ch4顧客管理システムを作るを試す→完了
・ch5営業データ管理システムを作るを試す→完了
・ch7見積&請求書管理システムを作るを試す→完了
・FileMaker Serverを構築する