FileMaker v8Aとの格闘の末に

FileMaker v8 Advanced(一昔前でいうDevelopper Edition)と格闘を続けていた。仕事で、見開きレイアウトに記事のコマを配置して、それぞれの記事を入力。しかるべきのちにチェックして送信するというプログラム(データベース)を作っていたのだ。
営業から又聞きした内容から推測して全体像を勝手にブチ上げてKeynoteの仕様書にまとめ、客先に出して説明を行うも……仕様はまったく固まっていない様子。
そんなことはおかまいなしに各部の設計やらスペック出しを行いつつ……データベースでは困難と思われる実装についてリストアップしてはトライしつつあった。
つまり、開発プロジェクトとしてはトップスピードに乗りかけた段階にちょうどさしかかり、技術的な課題もいくつかクリアしつつあった。
データベース上のフィールドを間接的に指定できないかと調べていたものの……FMv8Aではまだそうした処理はできないようだった。どこかのフィールドに「L1」と入れておくと、そのL1という名前のフィールドにアクセスできる……という状況を作りたかったのだが、そういう評価はしてくれないらしかった(eval関数が使えるとかいうのは、8.5になってからなのだろうか)。
しばし試行錯誤したのちに、実際のフィールドL1〜L24を、テスト用の繰り返しフィールド「arrayTest」(24個の繰り返しフィールド)に突っ込んで、そのフィールド上で配列的なアクセスを行ったのちに、元のフィールドに書き戻すという作業を行うことにした。
コマの存在確認や大きさによる配置可能域などを専用のテーブルを定義しながら判定するようにして、山を越えたあたりで夕方。
夕方に営業がやってきて、なにやら……仕様が大幅に変わるとかで、納期自体も変更になったとか。
………………そもそも、短い納期で予算もさほどないという状況で、そのうえ文字が汚くて画面がみすぼらしくていちいちアップデートばかりさせられる大嫌いなWindows相手の仕事であったため、FileMaker(のランタイム)を使うことにしたのだ。
実際の開発はMac上で行って、最後にWindowsに持っていくことにしていた。動作確認自体も、WindowsマシンにRemote Desktop ClientでMacから接続して、あのサイテーな品質のキーボードとマウスに触らずに済む予定だった。
……だが、開発期間も見直しになるのであれば、機能面でも追加になることは間違いなく、どうやらFileMakerで足りるような範疇には収まりそうもなくなってきた。
FileMakerのScriptを久しぶりに書きつつ、変態的な日本語命令に苦しめられながらも、変数が使えることでずいぶんプログラムっぽいプログラムを実装できることに感心。
しかしながら、プログラムは英語のほうが読みやすいしメニューから選択しないと命令を書けないとか選択行を複数まとめて移動できないとか一括書き換えができないとか自動生成できないとか作り置きしておいたルーチンを使い回すことができないとか(カスタム関数にしろとでもいうのだろうか?)…………さまざまな不満をぶつぶつ言いながらの(絶叫していた気もする)作業であった。
開発プラットフォームは、FileMaker以外の何かで作るほかないだろう。REALbasicだろうか…………。

Copyright By Piyomaru Software. All Rights Reserved