FileMakerでアプリケーションを組むメリットのひとつに、レイアウトが組みやすい点があげられる。直感的に線や丸・長方形やフィールドを配置できるので、簡単に帳票もデザインすることが可能だ。この辺りの操作性はFileMaker Pro 5といった旧バージョンから変わっておらず、いまでも「FileMaker = 帳票が組みやすい」というイメージを持つユーザ/デベロッパは少なくないだろう。前回よりFileMaker Pro Advancedの機能「データベースデザインレポート」を活用したWeb帳票を実装するにあたり、XMLの見方について紹介している。今回は、フィールドオブジェクトに関連する属性・プロパティを紹介しよう。
データベースデザインレポートの仕様 - フィールドオブジェクトに関連する属性・プロパティ
Layout->Object->FieldObj->Name
Layout->Object->FieldObj->DDRInfo->Field['name']
フィールド名が格納される。Layout->Object->FieldObj->Nameでは、現在のテーブルか関連先テーブルかに関わらず、(テーブルオカレンス名)::(フィールド名)となる。
Layout->Object->FieldObj['numOfReps']
該当フィールドオブジェクトの繰り返し数が格納される。横方向に繰り返しを表示している場合は正の数、縦方向に繰り返しを表示している場合は負の数となる。
Layout->Object->FieldObj['displayType']
該当フィールドオブジェクトのコントロールスタイルが格納される。対応する値は次のとおり。
displayType値 | 対応するコントロールスタイル |
---|---|
0 | 編集ボックス(Edit Box) |
1 | ドロップダウンリスト(Drop-down List) |
2 | ポップアップメニュー(Pop-up Menu) |
3 | チェックボックスセット(Checkbox Set) |
4 | ラジオボタンセット(Radio Button Set) |
6 | ドロップダウンカレンダー(Calendar popup) |
displayType値の5はなぜか欠番となっている。
Layout->Object->FieldObj->ValueList
Layout->Object->FieldObj->DDRInfo->ValueList['name']
Layout->Object->FieldObj->DDRInfo->ValueList['id']
該当フィールドオブジェクトに設定した値一覧のidと名前が格納される。このidを使用して、ValueListCatalog->ValueListから値一覧情報を取得する。
![]() |
各ValueListには値一覧のid/名前が格納されている。idを使用してValueListCatalogから値一覧情報を取得することもできるが、値一覧で選択する文字列の長さやレンダリングの都合上、帳票レイアウトを自動化するのがむずかしい。HTMLコードを出力するPHPロジックを実装したら、ここは手動で調整をおこなったほうが良いかもしれない |
このほか帳票のデザインにはあまり影響がないが、入力メソッドやクイック検索に関連する属性・プロパティも紹介しておこう。FileMaker ProのインスタントWeb公開にちかい実装をおこなう際に参考にしてほしい。
Layout->Object->FieldObj['inputMode']
インプットメソッドの設定(Windowsでは「IMEモードの切り替え」)が格納される。対応する値は次のとおり。
inputMode値 | 対応するインプットメソッドの設定 | 使用できるオペレーティングシステム |
---|---|---|
0 | 自動 | Windows, Mac OS |
128 | フォントと連動(Synch Field Font) | Windows, Mac OS |
129 | 日本語入力オン(Japanese Active) | Windows |
130 | 直接入力(Japanese Direct) | Windows |
131 | ひらがな(Hiragana) | Windows |
132 | 全角カタカナ(Full-Width Katakana) | Windows |
133 | 全角英数字(Full-Width Alpha) | Windows |
134 | 半角カタカナ(Half-Width Katakana) | Windows |
135 | 半角英数字(Half-Width Alpha) | Windows |
これらのうち一部の値はWindows版FileMakerでのみ設定をおこなうことができ、Mac版FileMakerではその設定値を使用/確認することができない。(レイアウト情報としては保存されているので、データベースデザインレポート上では確認可能。参考: フィールドのテキスト入力方法の設定)
Layout->Object->FieldObj['quickFind']
該当フィールドがクイック検索の対象に含まれているかどうかを示す。含まれている場合は1、含まれていない場合は0が格納される。
次回はこれまでに取りあげたプロパティ値のまとめ、およびSimpleXMLを使っての取得の方法を紹介しよう。