top of page
350

アドオンテーブルを編集出来るか?

玄人はそんなに使わないけど、初心者に優しいアドオンテーブルですが、よくよく見ると独自のアドオンテーブルが作れそうな雰囲気はあります。

アドオンテーブルの設定は下記にあります。

注意:今回の記事の内容を実行する場合は自己責任でお願いします。

■Windows

<drive>:\Program Files\FileMaker\FileMaker Pro 17 Advanced\DynamicTemplates

■macOS

/Applications/FileMaker Pro 17 Advanced/FileMaker Pro Advanced.app/Contents/Resources/DynamicTemplates

アドオンテーブル毎にフォルダ分けされており、中身は下記ファイル群となります。

de.xml

en.xml

es.xml

fr.xml

icon.png

icon@2x.png

info_de.xml

info_en.xml

info_es.xml

info_fr.xml

info_it.xml

info_ja.xml

info_ko.xml

info_nl.xml

info_pt.xml

info_sv.xml

info_zh.xml

it.xml

ja.xml

ko.xml

nl.xml

preview.png

pt.xml

sv.xml

template.xml

zh.xml

関係があるのは赤文字の部分。

重要な設定は「template.xml」で行われており、中身はデフォルトフィールドとよく似たXMLとなっています。

ここで思い出して欲しいのが、アドオンテーブルを配置した時に、ポータルのみだけではなくボタンやスクリプトも定義されます。

つまり、「template.xml」はテーブルやフィールドの他にもレイアウトやスクリプトも記述されています。

ざっくり分析したものが下記になります。

概要

  • テーブル

  • オカレンス

  • フィールド

  • スクリプト一覧

  • スクリプト個別の内容の定義

  • ポータルレイアウト

  • その他レイアウトオブジェクト(レイアウトのボタンはSVGのコードをBase64化して定義)

この辺を分析していけば独自のアドオンテーブルは作れそうですね。

「info_ja.xml」はアドオンテーブルを選択する時に出てくる情報を定義しています。

「ja.xml」は「template.xml」で定義された英語のフィールド名を日本語に置換しています。

<DynamicTemplateString>

<StringID>com.fmi.basetable.field.Notes::CreationTimestamp</StringID

<SourceText>CreationTimestamp</SourceText>

<TargetText>作成情報タイムスタンプ</TargetText>

<Comment>Fields</Comment>

</DynamicTemplateString>

タグで言うと、<StringID>の<SourceText>の内容を<TargetText>の内容で置換しています。

メモを複製して画像をと説明文を編集したものが下記となります。

アドオンテーブル

ただ、デフォルトフィールドと違い、独自のアドオンテーブルを作ったとしてもそんなに便利にはならないような気もします。レイアウトも定義できるので、ポータルを作るふりして色んなレイアウトオブジェクトを配置できるようにしても面白いかなと思ったのですが、自分のテンプレートからコピペした方が早いですよね。

いいアイデアがあればお知らせください。

 

※この記事はシリーズです まとめページはこちら

閲覧数:508回0件のコメント

最新記事

すべて表示

コメント


bottom of page