親です。

読んだ本とかについて書いてます

FileMakerの勉強 vol.9(第13章)

どもっす勉強する(この記事3回消えました。)

 

『FileMakerMasterBook 初級編』第13章(計算式をきちんと理解しよう)

①計算式とは

 ファイルメーカーではExcelみたいな乗りでフィールドに計算式を入れることができる。例えば、期限までの残り日数を表示させたいとしよう。こんなとき指折り数えて残り日数を計算し、そんで「期限までの日数」フィールドに日にちを入力するのはクッソ面倒くさい。そんなときファイルメーカーがどうするかっていうと、下記のように計算式を設定させることができる。

「タスクの期限」 - 「本日の日にち」

タスクの締め切り日から今日の日にちを引けば、まあ残り日数が設定できる。かつ、とても都合がいいのは、本来毎日カウントダウンされ変化するはずの「期限までの日数」を毎日入力しなおす必要がないってことだ。「本日の日にち」が更新されれば「期限までの日数」も更新される。こういうのを再評価という。再評価については次の項目でも軽く解説する。

②計算式と再評価

計算式の内容が、その計算式の中で使われている項目の更新に合わせて更新されることを再評価という。上の例だと、「期限までの日数」はその計算に使われる「本日の日にち」の更新に合わせて更新される、という具合。んで、ここは理解できるんだが、ちょっとわからないところがあったのでメモ。

それは、再評価に索引の概念が関係してくるってこと。索引というと、ちょっとまえの記事で軽くまとめたアレだ。俺の中では検索の中で使われるもので、検索の速度をより早くための、リストみたいなものだと思っていた。しかし、この索引が設定されているか否かによって再評価のタイミングが異なるようだ。まあ、よくわかんねえっすね!! 

③関数

 ファイルメーカーにも関数がある。関数がなにかというと、ユーザーがよく使うであろう計算式をある程度まとめておいてくれた便利なやつだ。Excelにもあるアレです。構文もだいたいExcelと同じで、入社以来Excelを主要ツールにしてきた自分にとっては、まあとっつきやすかった。

また面白かったのが、変数宣言用の関数としてLet関数があるってこと。Swiftの定数宣言としてLetがあるけど、それと語源が同じなのかな? つーかファイルメーカーにおける変数っててっきりまあフィールドで代替されるのかと思ってたから、少し意外に思った。けどよく考えればワーク項目の宣言とかのために必要なんだな。

また変数にはローカル変数とグローバル変数があるとも。そこらへんはCOBOLにもExcelにもない概念なので、ちと勉強が必要だなと思った。

④コーディングてきなところ

 関数の一部としてIF関数やCASE関数もあった。これらは条件分岐の関数だ。このノリでFOR文とかまであれば、もう順次・分岐・反復の三要素がそろうことになる。これだけそろえばプログラミングができちゃうので、いつものノリでコーディング可能。

ただし、ファイルメーカーには良いエディタも搭載されていないし、インデント下げようと思ってTabキーを押したら別の項目に移動してしまうので、ウーム。このコーディングのしにくさはどうにかしたいところ。

 

今回は以上。オゥイェ。