FILEMAKER

FileMaker お蔵出し (3) - 集計

本ブログ・シリーズでは、これまで Claris からお届けしてきた数々の珠玉の技術情報を、FileMaker ビギナーズ & ジュニアズのみなさんに、気になるテーマ別でご紹介します。

名付けて、「FileMaker お蔵出し」。

今回のテーマは、「FileMaker で集計」です。

今回の旅路:

  • 不幸な出会い
  • とは言え
  • まずは基本を
  • クロス集計とパフォーマンス
  • おわりに

不幸な出会い

FileMaker の「中の人」をやっていて時々聞こえてくるのが、「(FileMaker を使わなくても)スプレッドシートで十分だ」というお客様の声です。たいへん残念ながら、それを理由に FileMaker から離れてしまわれるお客様もいらっしゃいます。
そんな話を耳にするたびに、思わず、ばんっ!と障子を開けてお客様の目の前に立ち塞がって「それ、ちゃいます、旦那!そもそも、スプレッドシートででぎるごどだげにしか FileMaker 使わねえなんて、もったいねえわ!」と懇々と誤解を解きたくなります(そして、これを読んでくださっている FileMaker ビギナーズ&ジュニアズのみなさんは、スプレッドシートではなく FileMaker を選んでくださった「違いのわかる」みなさんですから、同じように思ってくださっていると信じてる!)。

スプレッドシート、便利ですが…

そもそも、メインのテーブルが 1 個とか 2 個とかしかなくて、扱っているデータがテキストと数値だけで、やりたい処理が集計だけで、使ってる人が 2, 3 人だけだったりするのであれば、スプレッドシートで十分(なことが多い)です。もうちょっと言うと、アクセス制御(ユーザによって閲覧 / 編集できるデータ範囲を制限する)だとか、同時実行制御(複数人で同じデータを同時に編集できないようにする)だとか、ファイルの暗号化だとかも、最近のスプレッドシートでは普通にできるようになっています。ユーザインタフェースも、頑張ればそれなりのものができます(かつて一部で「方眼用紙」として使われていたくらいですから)。
つまり、スプレッドシートの世界で完結して満足できることはスプレッドシートに任せて、FileMaker では、FileMaker だからできること、FileMaker を使った開発だからできること、FileMaker を使うとより簡単にできること、これらを存分に満喫すれば良いと思うのです。

しかし、冒頭のお客様の声のようなケースでは、どういう経緯でそうなったのかはわかりませんが、おそらく、スプレッドシートの代わり、あるいはスプレッドシートの延長として FileMaker が導入され、FileMaker の本領がよくわからないうちに、「スプレッドシートだったら簡単にできるのに」とか「FileMaker は難しすぎて使えない」といったことになってしまったのだと思われます。

やりたいことができない、やれることが伝わらない。お互いにとって、不幸な出会いです。

とは言え

どんなシステムでも、少なからぬ量の数値を扱っていれば、必ずと言っていいほど「集計」したい場面が出てきます。膨大な数の数値データをまとめて俯瞰し理解するためには、「集計」は避けて通れません。それほどデータ量が多くなくても、いろいろな切り口(分類軸)で合計や平均などの統計情報を出してみると、意外な発見があったりします。
たとえ、カスタム App でどんなに最先端の技術を使っても、そこここに集計が絡んできます。例えば、JavaScript を使ったアドオンでインタラクティブなグラフを挿入するにせよ、機械学習で販売予測機能を組み込むにせよ、集計結果を使ったり、結果を集計してさらに分析したり、といった具合です。

FileMaker で集計をする、というのは、FileMaker ビギナーズ&ジュニアズのみなさんには最初はピンとこないかもしれません。でも、仕掛けはちゃんと用意されていて、さらに先達が数々の道標を残してくださっています。今回はそれを辿りながら、「スプレッドシートではできないことができる FileMaker」で、敢えてスプレッドシートでやるような集計のテクニックを紐解いてみましょう。

まずは基本を

FileMaker Pro で「集計」するための基本的な仕掛けをマスターするには、まずはお馴染み、「FileMaker オンライン学習」からですね。

FileMaker オンライン学習 初級編」では、FileMaker Pro に用意されている「集計」をするための 3 つの「要素」(小計/総計パート、ソート、集計タイプフィールド)について、演習を交えて 2 回にわたってわかりやすく解説されています。


FileMaker オンライン学習 初級編より

さらに「FileMaker オンライン学習 中級編」では、正しく「集計」するために考慮すべき 5 つのポイントを概観し、小計と総計の設定、集計レポートの作成について演習を通してじっくりと学習することができます。なお、中級編の「番外編」では、本編とはまた違った雰囲気で「集計」の世界に触れることができます。

クロス集計とパフォーマンス

「クロス集計」とは、2 つ以上のカテゴリでデータを分類して、それらのカテゴリの組み合わせごとに集計をすることです。例えば、販売実績を支店毎、販売日毎に集計する、といったことはごく普通に行われていますね。

FileMaker Pro でも基本的な機能だけでクロス集計することはできます。各カテゴリごとの小計パートを配置して、集計タイプフィールドを置くだけです。

でも、これは、はっきり言って、見にくい。

なぜかというと、集計行が縦に並んでいくからです。「クロス集計」というと、だいたいの人が想像するのが「クロス集計表」、そう、2 次元の表ですよね。縦横に集計値が並んだ、こんな感じ↓のやつ(いつの間にか月毎に集計されていますが)。

よくあるクロス集計表

そう言えばそうなのですが、そうは言っても、そういう見場のクロス集計表を FileMaker でどうやって作るのか、FileMaker Master Book にも書いてないし、よくわからないので、カスタム App で管理されているデータをスプレッドシートに書き出して…。
とか言うと、FileMaker 業界では白い目で見られるかもしれないのですが、場合によっては「アリ」だと(個人的には)思います。要は、道具はなんであれ、目的に合ったことを一番効率的にできる方法を採ればいいのではないでしょうか。

でも、(また最初に戻るのですが)せっかく FileMaker を選んでカスタム App を開発しているのですから、FileMaker の中でクロス集計表をどうやって実現するかも、せっかくなので押さえておきましょう。
具体的なやり方は、さすがユーザ層がぶ厚い FileMaker 業界、昔から名うての識者がとてもわかりやすいセッションを披露してくださっています。ここでは、比較的最近の動画をご紹介します。

やり方も 1 つだけではないので、ご自身に合ったやり方を採る(あるいは、まったく採らない)ということで大丈夫です。

  • 動画:FileMaker Conference / FileMaker Road Showより
  • 「ハード」な方法 x 3 +「ソフト」な方法 x 3 の紹介とデモ


  • サマリーテーブルを使った手法


  • 集計処理のサーバでのスケジュール実行の方法

「効率的なカスタム App 開発のための実践テクニック最新版 - クロス集計編 -」より

また、昨年の Claris Engage Japan 2020 では、集計/パートだけでなく、集計に関連した Tips も披露されています。

  • 動画:Claris Engage Japan 2020
  • Tips:20 行ごとに改ページ / 小計ソート対象ごとに改ページ&ページ番号を振り直す / 横軸に日付がある集計レポート / 縦線を繋げるコツ、など


あとは、Claris コミュニティにも数多くの Q&A が残されています。「集計」「Excel 集計」などのキーワードで検索すると、同じようなクロス集計の悩みがあれよあれよと解決されているかもしれないので、ぜひ覗いてみてください。

おわりに

今回は、FileMaker 標準機能の「集計」と「クロス集計」の実装方法について、比較的最近の動画を中心にご紹介しました。実は、ここでご紹介したものより古い動画でも、FileMaker Pro のユーザインタフェースが替わっているいるだけで、集計テクニックに関してはそのまま学習できるものもたくさんあります。みなさんも、今回ご紹介の動画を見終わった後に、YouTube Claris ジャパン公式チャンネルや、Claris Web セミナーの録画なども探してみてください。

「FileMaker はクロス集計は不得意」と言っている方もいらっしゃいますが、データ分析用の BI ツールのように専用機能として提供するのではなく、基本機能を工夫して組み合わせることによって「クロス集計」はもちろん、様々な機能を柔軟に実現できるというところが、ローコード開発プラットフォームである FileMaker の本来の姿であり、オシャレなところでもあると(中の人は)思ってます。

それでは、次の「FileMaker お蔵出し」もなんとなく楽しみにしてくださっていると嬉しいです。ciao!