FileMaker条件文の思い込み

047_omoikomi

仕事をしているとついついやってしまう「思い込み」  以前のエントリーでも話題にした、「思い込みは失敗の母」という言葉。以前やってしまった失敗談を一つ、恥ずかしながらお届けします。

FileMaker条件文で…

FileMakerには「スクリプトステップ」という機能があり、作業を自動化することができます。「If」という条件分岐の為のスクリプトステップでは、次のような書き方をします。

If [条件文1]
Else If [条件文2]
End If

上記の書き方を行うことによって、プログラミング上の条件分岐を行うことができるというわけです。

この条件文の書き方でやってしまった失敗とは…

うっかり数学式のように書いてしまった

If [ 21 < $変数 < 25 ]

実はこの書き方には間違いがあるのです。どういうことでしょうか。

変数の値が21より大きく25より小さい場合、という条件を書こうとしたのです。そこでうっかり、数学式のように書いてしまったのが上記なのです。

正確には、

If [ 21 < $変数 and $変数 < 25 ]

と、間に「and」を置き、式を二つ併記しなければきちんと動いてくれません。これに気付かず、頭をひねることに時間を費やしてしまいました。笑ってください… ハハハ…

他の言語ではどうなのか

考えてみれば、Javascriptだって「while (a < max && b < max)」というように、「&&」や「||」をはさんで式を二つ併記します。Rubyだって同様に、「if old < 50 && old > 30 then」と記述しますね。

「わかっていたつもりだったのに…」というのが思い込みの危ういところ。そして、後から気づきにくいところが最大のネックです。みなさんもプログラミング時、エラーに遭遇したら自分の思い込みを疑ってかかりましょう。