ExecuteSQL()
困った仕様も多そうだけど、List()やGetNthRecord()と同じく便利な状況もありそう。
マニュアルは相変わらずそっけなさ過ぎ。
どこかでドキュメントが出るんだろうけど、ざっと見て分かったのは以下。
- "?"プレースホルダを使ったバインドが可能(値はオプションとなってる第4引数に指定)
- クエリのターゲットはテーブルではなくTO(テーブル名ではエラー)
- 返り値は単一のテキスト…(フィールドとレコードの区切り文字は任意で指定)
- SELECTはJOINとかUNIONとか効くけど、INSERTとかダメ?
- Evaluate()通して実行した場合、エラーコードに"8309"とか"8310"とか返るのはどうしたものか
返り値がテンポラリなTOとして使えるとかいう仕様だったら感動したんですが、FileMakerはFileMaker…。FileMaker Dictionary 関数(bidonさんの記事です)とか導入するか、長めのリテラル区切りにしないとダメ。
テーマとCSS
わかったこと。
- スタイルのエンジンはwebkitベース
- 独自のセレクタやプロパティが追加されてる
- 組み込みのテーマが40個(うち5個がGo向け)
- テーマは以下のファイルで構成
- manifest.xml:定義ファイル
- manifest_言語コード.xml:言語別定義ファイル(manifest.xmlにオーバーライド)
- テーマ名.css:メインのスタイルファイル
- テーマ名_言語コード.css:言語別スタイルファイル(manifest_言語コード.xmlで読み込み指定)
- テーマからは画像なども読み込める
- 組み込みは全てPNG
- SVGとか他のフォーマットが使えるかは不明
- 内容がテキストのファイルは全てUTF-8のBOM付き
- 自前のテーマも\Themesに放りこめば認識される
- テーマのコードを変更した場合、反映されるのに条件がある?
- セレクタ
- :droptarget とか :normal とかの独自擬似セレクタあり
- .self とか .icon とか .inner_border とかのクラスもあり
- プロパティ
- text-shadow とか trasition とか無視されるプロパティいっぱい
- box-shadowはなぜかFileMaker側UIから触らせないけど有効
- width とか height とか float とか display とか持ってるけど挙動がはっきりしてないものもある
独自のセレクタやクラスは調査中。そのうちドキュメントは出るだろうから、それまでの繋ぎとして自分用に解析を進める。先々、テーマを作って共有できるサービスを作る予定。
その他
レスポンス
レイアウトエンジン変わったためか、描画が全体的にもっさりしてます。ver.7登場時にも言われてたみたいですが、今回も結構目に付く。ver.11で実用上問題なかった無理な描画も、12ではもっさりすぎて使えないかも。Evaluatorとか。これから最適化されるんでしょうか。
ヘルプの誤植
ローカライズを中華の人に外注したのか、「関数」を「函數」と表記している箇所が幾つもあります。厳密に言えば間違いとは言えないだろうけど、校正不足っぷりが嫌な感じ…。
バグ
すでに幾つか挙がってるみたい。でも探しにくい。
取り敢えずナレッジベースのRSSが取れるようになったのだけでも、昔よりはましか。