デフォルトフィールドのXMLの仕様が判明
FileMaker Pro 17 Advanced から導入されたデフォルトフィールド。
テーブルを新規で作った時に、自動的に設定されるフィールドです。その設定が書かれているXMLファイルを編集することで、好きなフィールドを指定できました。ただ、フィールドを定義するXMLの仕様がDDRとは異なるため、一部不明な設定も存在しました。
しかし、FileMaker Pro 18 Advanced からデータベースの構造をXMLで保存できるようになり、そのXMLの仕様はデフォルトフィールドのXMLと同様の仕様となっています。
デフォルトフィールドの基本情報
設定が書かれたファイルの場所(このファイルは編集しないように)
Windowsの場合
/Applications/FileMaker Pro 17 Advanced/FileMaker Pro Advanced.app/Contents/Resources/ja.lproj/DefaultFields.xml
macOSの場合
/Applications/FileMaker Pro 17 Advanced/FileMaker Pro Advanced.app/Contents/Resources/ja.lproj/DefaultFields.xml
デフォルトフィールドをオフにする場合は下記に「DefaultFields.xml」という名前の中身が空っぽのテキストファイルを置けばOKです。好きなフィールドが出てくるようにする場合は、そのXMLファイルを編集します。こうすることで、上記のアプリケーションフォルダにあるデフォルトフィールドの設定を上書きしてくれます。
Windowsの場合
<drive>:\ProgramData\FileMaker\Shared
macOSの場合
/Users/Shared/FileMaker/Shared
デフォルトフィールドXMLファイルの基本仕様
基本的には下記の様な構造になっています。
――――――――――――――――――――――――――――――――
<?xml version="1.0" encoding="utf-8"?>
<FMDefaultItems version="1" source="17.0.1" membercount="1">
<DefaultFields membercount="【フィールド数】">
【フィールドXML】
</DefaultFields>
</FMDefaultItems>
――――――――――――――――――――――――――――――――
基本的にはフィールドの設定情報が書かれたXMLを【フィールドXML】に入れ、フィールドの数を【フィールド数】に設定すればOKです。
XMLファイルの構造
FileMaker Pro 18 Advanced からXMLを保存するには2つ手段があります。
[名前をつけてXMLとして保存…]スクリプトステップ
メニューバーの[ツール]→[名前をつけてXMLとして保存…]
ここではツールから手動で行います。
FileMaker Pro 18 Advanced から保存できるXMLファイルは下記のような構造になっています。
デフォルトフィールドで使うには緑の枠の内側の部分です。
(macOSのSafariで開いています)
この緑枠の内枠部分をコピペすれば良いのかと思うのですが、下記の設定がある場合に問題が置きます。
計算値を使った入力値の自動化設定箇所
入力制限の「計算値で制限」設定箇所
作成されたデフォルトフィールドが下記のようにコンテキストが<不明>となってしまいます。
この問題を解決するためには下図の該当箇所を削除します。
去年作成した「デフォルトフィールド編集ツール」で作ることも可能ですが、この方法の方が全ての設定項目に対応しますし、汎用性が高そうですね。
デフォルトフィールド作成の手順まとめ
デフォルトフィールドにしたいフィールドのみがある.fmp12ファイルを作る
FileMaker Pro 18 AdvancedのツールからXMLを保存
デフォルトフィールドの設定ファイル「DefaultFields.xml」を複製し「Shared」フォルダ直下に置く
上記XMLファイルのフィールドの設定が書かれてある箇所をコピー
コピーしたテキストを「DefaultFields.xml」へ貼り付け
Comentários