Claris FileMaker 2026 -「名前をつけてXMLとして保存」が機能強化!
2026年06月26日 10:00 AM
Claris FileMaker 2026
「名前をつけてXMLとして保存」が機能強化!
2026年6月にリリースされた Claris FileMaker 2026 では、「名前をつけてXMLとして保存」(FMSaveAsXML)が大きく機能強化されました。ダイアログの UI が刷新され、2つの新オプションと細かな仕様変更が加わっています。この記事では、実際に XML を出力して検証した結果をもとに変更点を解説します。
「名前をつけてXMLとして保存」ヘルプページ:
https://help.claris.com/ja/pro-help/content/save-a-copy-as-xml.html
関連ページ「データベーススキーマを文書化する」:
https://help.claris.com/ja/pro-help/content/documenting-schemas.html
目次
- ダイアログの変化
- ルート要素に追加された3属性
- 新オプション①「各レイアウトオブジェクトのバイナリデータをノード下に保存」
- 新オプション②「各データベースでカタログごとに別のXMLファイルを作成」
- FMUpgradeTool との関係
- まとめ
1. ダイアログの変化
FileMaker 2026 で「ツール」メニューから「名前をつけてXMLとして保存」を選択すると、刷新されたダイアログが表示されます。
- 複数の
.fmp12ファイルを同時に選択して保存できるようになった - 含めるカタログを20種類から個別にチェックで選択できるようになった
- 下部に3つのオプションが追加された(うち2つが新機能)
- 「完了時に自動的に概要を開く」オプションが追加された
2. ルート要素に追加された3属性
FM2026 以降、出力される XML のルート要素 <FMSaveAsXML> には、選択状態にかかわらず常に3つの属性が付加されるようになりました。
<FMSaveAsXML version="2.X.X.X" Source="26.X.X" File="タスク.fmp12" UUID="..." locale="English" Has_DDR_INFO="False" binary_under_lo="False" split_catalogs="False">
| 属性名 | 対応オプション | 意味 |
|---|---|---|
Has_DDR_INFO |
分析ツールの詳細を含める | True のとき XML 末尾に <DDR_INFO> セクションが存在する |
binary_under_lo |
バイナリデータをノード下に保存 | True のとき各 LayoutObject に Base64 データが直接展開される |
split_catalogs |
カタログごとに別のXMLファイルを作成 | True のとき出力が複数ファイルに分割されている |
分析ツールがファイル全体を解析せずに出力の性質を即座に把握できるよう、3オプションの状態がすべてヘッダーに記録されます。
3. 新オプション①「各レイアウトオブジェクトのバイナリデータをノード下に保存」
バイナリデータの扱いの変遷
FileMaker のバイナリデータ(レイアウト上の画像など)の XML への格納方法は、バージョンによって変化しています。
| バージョン | 動作 |
|---|---|
| FM2026(オフ) | <LibraryCatalog> に実体、LayoutObject は <LibraryReference> で参照 |
| FM2026(オン) | LayoutObject 直下に <StreamList> が直接展開、<LibraryCatalog> は消滅 |
検証結果
Logo.fmp12(ロゴ画像1枚、1レイアウト)で検証しました。
| オフ(False) | オン(True) | |
|---|---|---|
<LibraryCatalog> |
あり(実体を格納) | なし(完全に消える) |
<LibraryReference> |
あり(参照のみ) | なし |
LayoutObject の <BinaryData> |
<LibraryReference> のみ |
<StreamList> + Base64 が直接展開 |
オフ:LibraryCatalog に実体、LayoutObject は参照のみ
<LibraryCatalog membercount="1">
<BinaryData>
<LibraryReference id="1" key="C943F048..."/>
<StreamList>
<Stream name="PNGf" type="Base64" size="4938">iVBORw0KGgo...</Stream>
</StreamList>
</BinaryData>
</LibraryCatalog>
<!-- LayoutObject 側 -->
<BinaryData>
<LibraryReference id="1" key="C943F048..."/>
</BinaryData>
オン:LibraryCatalog なし、LayoutObject に直接展開
<!-- LibraryCatalog は存在しない -->
<!-- LayoutObject 側 -->
<BinaryData>
<StreamList>
<Stream name="PNGf" type="Base64" size="4938">iVBORw0KGgo...</Stream>
</StreamList>
</BinaryData>
split_catalogs との依存関係
「カタログごとに別のXMLファイルを作成」をオンにすると、このオプションが自動でオンになりグレーアウトします。同時に「ライブラリデータ」カタログがチェック不可になります。
ファイル分割時は、レイアウトの XML ファイルから別ファイルの LibraryCatalog を横断参照することができません。そのため分割モードでは LibraryCatalog が存在できず、バイナリデータは各 LayoutObject 直下への埋め込みが必須になります。
4. 新オプション②「各データベースでカタログごとに別のXMLファイルを作成」
検証結果
タスク.fmp12 で検証しました。
出力されたファイル構成:
書き出し先フォルダ/
概要.xml ← ルート要素は FMSaveAsXML ではなく FMPReport
タスク/ ← DBファイル名のサブフォルダが自動生成
タスク_AccountsCatalog.xml
タスク_BaseDirectoryCatalog.xml
タスク_BaseTableCatalog.xml
タスク_CustomFunctionsCatalog.xml
タスク_CustomMenuCatalog.xml
タスク_CustomMenuSetCatalog.xml
タスク_ExtendedPrivilegesCatalog.xml
タスク_ExternalDataSourceCatalog.xml ← 空ファイル(外部DS未定義)
タスク_FieldCatalog.xml
タスク_FileAccessCatalog.xml
タスク_LayoutCatalog.xml
タスク_Metadata.xml
タスク_PersistentStoreCatalog.xml ← 空ファイル(永続データなし)
タスク_PrivilegeSetsCatalog.xml
タスク_RelationshipCatalog.xml
タスク_ScriptCatalog.xml
タスク_TableOccurrenceCatalog.xml
タスク_ThemeCatalog.xml
タスク_ValueListCatalog.xml
ファイル名は {DBファイル名}_{カタログ名}.xml の規則で生成されます。コンテンツが存在しないカタログでも空ファイルが生成されるため、「このDBに〇〇が存在しない」という情報も明示的に表現されます。
概要.xml の構造
<FMPReport CreationDate="2026/06/22" CreationTime="19:31:04"
type="Summary" version="2.X.X.X" membercount="1">
<File name="タスク.fmp12" path="ソースDBのフォルダパス">
<XML path="分割XMLの出力フォルダパス"/>
</File>
</FMPReport>
ルート要素が <FMSaveAsXML> ではなく <FMPReport> である点に注意してください。
各分割ファイルの構造
各カタログファイルは通常の FMSaveAsXML と同じルート要素を持ちます。Metadata.xml のみ <Structure> ではなく <Metadata> 直下に <AddAction> が入ります。
<FMSaveAsXML version="2.X.X.X" Source="26.X.X" File="タスク.fmp12"
Has_DDR_INFO="False" binary_under_lo="True" split_catalogs="True">
<Structure>
<AddAction>
<!-- 各カタログの内容 -->
</AddAction>
</Structure>
</FMSaveAsXML>
Git との相性
分割モードの最大のメリットは差分管理です。スクリプトを変更した場合は ScriptCatalog.xml だけが変更されるため、レイアウトやフィールドの変更と明確に分離できます。単一ファイルでは数万行のうち変更箇所を見つける必要がありましたが、その問題が解消されます。
5. FMUpgradeTool との関係
FMSaveAsXML は FMUpgradeTool(Claris FileMaker Upgrade Tool)のパッチファイル作成の基礎データです。FM2026 の機能強化はパッチ作成ワークフローにも直接影響します。
split_catalogs(分割モード): 変更したカタログのファイルだけを参照してパッチを作成できます。フィールド定義だけを変更した場合、FieldCatalog.xml のみ確認すれば済み、数万行のレイアウト情報を追う必要がなくなります。
binary_under_lo(バイナリデータ): LayoutObject を含むパッチを作成する際、オンにすることで <Replace type="LayoutObject" ...> が自己完結します。LibraryCatalog の操作が不要になりパッチ構造が単純化されます(ただし同じ画像を多数レイアウトで共有する場合は、オフの方がパッチが小さくなります)。
6. まとめ
| 変更点 | 主なメリット |
|---|---|
| ダイアログ UI 刷新・カタログ個別選択・複数DB同時保存 | 必要な部分だけ出力できる |
| ルート要素に3属性が常時出力 | 分析ツールが出力の性質を即座に把握できる |
| バイナリデータをノード下に保存 | LayoutObject が自己完結・LibraryCatalog が不要になる |
| カタログごとに別ファイルを作成 | Git との相性が向上・カタログ単位での差分管理が可能 |
「バイナリデータをノード下に保存」と「カタログごとに別ファイルを作成」の2オプションには依存関係があります(分割モードを有効にするとバイナリデータオプションが強制オン)。この連動を理解することで、目的に合った適切なオプション選択ができるようになります。
Claris FileMaker 2026 に関するご質問やお問い合せ
さて、新しい Claris FileMaker 2026 いかがでしょうか?
皆様が気になっていること、知りたいこと、ぜひ弊社に教えてください。
ボリュームライセンスについて、新機能についてのご質問などもお待ちしています。
問い合わせ先
株式会社イエスウィキャン
TEL :03-3797-3921(平日10:00~18:00)
Mail:ywcinfo@ywc.com
LINE:@335oxitc
