Blog

「FileMaker Data apiを実行」スクリプトを体験!【metaData編】

こんにちは。リナークのニシザワです。 今回は、「FileMaker Data APIを実行」スクリプトの metaDataアクション について解説します。FileMakerを使っていると、データベースのフィールドやレイアウト情報を確認した…

スキル
「FileMaker Data apiを実行」スクリプトを体験!【metaData編】のアイキャッチ画像

こんにちは。リナークのニシザワです。

今回は、「FileMaker Data APIを実行」スクリプトのmetaDataアクションについて解説します。FileMakerを使っていると、データベースのフィールドやレイアウト情報を確認したい場面に直面することがあります。特にデータベース構造を理解しておくことは、システム設計や外部との連携をスムーズに進めるために重要です。しかし、これらの情報を手作業で確認するのは手間がかかります。

そこで活躍するのがmetaDataアクションです。このアクションを活用すれば、データベースのフィールドやレイアウトの情報を簡単に取得し、データ構造を把握することができます。

今回も会員テーブルのデモデータを使用して、metaDataアクションの使い方を具体的に解説していきます。フィールドの種類やレイアウトの情報を取得するプロセスを見ていきましょう。

metaDataアクションとは?

metaDataアクションは、FileMakerのデータベース構造を確認するために非常に便利なツールです。特定のテーブルやレイアウトに含まれるフィールド情報を取得し、どのデータがどのように保存されているのかを可視化できます。特にフィールドの名前、型、レイアウトの構成などを素早く把握できるため、データベース設計や外部システムとの連携に役立ちます。

どんなときに使うか?

データベース構造を把握したいとき

データベースが複雑になればなるほど、どのフィールドがどのテーブルに存在するのかを把握するのは難しくなります。metaDataアクションを使えば、データベースの全体像を簡単に確認できます。

外部システムと連携する前にフィールドの確認が必要なとき

APIなどで外部システムとデータ連携を行う際、正確なフィールド名やデータ型を知る必要があります。metaDataアクションを使えば、こうした情報を簡単に取得できます。

開発者間でデータベースの共有が必要なとき

複数の開発者が同じプロジェクトに参加している場合、データベース構造の把握は重要です。metaDataアクションを使うことで、全員が同じデータ構造を正確に理解できます。

metaDataアクションの基本的な仕組み

metaDataアクションは、データベース内の特定のテーブルやレイアウトのフィールド情報を返します。これにより、各フィールドの名前や型、配置情報などを確認することができ、設計や運用に役立ちます。

今回は、会員テーブルのデモデータを使って、metaDataアクションの具体的な使い方を説明していきます。このテーブルには、IDや名前、住所、メールアドレスなどのフィールドが含まれており、これらの構造を確認するプロセスを見ていきましょう。

ステップ1:レイアウトに表示されているフィールド情報の取得

まずは、「FileMaker Data APIを実行」スクリプトのmetaDataアクションを使って、会員レイアウトに表示されているフィールド情報を取得してみましょう。この情報を取得することで、データがどのように表示され、どのフィールドが画面に配置されているのかを把握できます。

例:レイアウトに表示されているフィールド情報の取得クエリ

以下は、レイアウト::T001_会員.APIに表示されているフィールド情報を取得するためのクエリ例です。このクエリを実行すると、レイアウト::T001_会員.APIに表示されているフィールド情報が返されます。

\{
        "action" : "metaData",
        "layouts" : "T001_会員.API"
\}

このクエリでは、レイアウト::T001_会員.APIに表示されているフィールド情報をリクエストしています。データベースにどのフィールドが含まれているか、各フィールドがどのようなデータ型で定義されているかを確認できます。

結果

クエリを実行すると、次のようなフィールドリストが返されます。

\{
        "messages" : 
        [
                \{
                        "code" : "0",
                        "message" : "OK"
                \}
        ],
        "response" : 
        \{
                "fieldMetaData" : 
                [
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "クレジットカード",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "マイナンバー",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "メールアドレス",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "会社名",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "郵便番号",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "住所",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "名",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "名_ひらがな",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "姓",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "姓_ひらがな",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "年齢",
                                "notEmpty" : false,
                                "numeric" : true,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "number",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "性別",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "血液型",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "携帯電話番号",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "有効期限",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : true,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "生年月日",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "date",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "displayType" : "editText",
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "電話番号",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \}
                ],
                "portalMetaData" : \{\},
                "table" : "T001_会員"
        \}
\}

この結果から、レイアウト::T001_会員.APIに表示されているフィールドが確認できます。例えば、年齢フィールドはnumericがTrueで定義されており、生年月日フィールドはfourDigitYearがTrueとして定義されていることがわかります。

フィールド情報の実務への応用

データの整合性確認:フィールド情報を確認することで、レイアウトに表示されている項目を確認できます。これにより、該当するレイアウトに表示されているフィールドをリストで確認することで、レイアウトにおけるフィールド表示の過不足を確認することができます。

ステップ2:テーブルに設定しているフィールド情報の取得

metaDataアクションを使えば、テーブルに設定しているフィールド情報を取得することができます。テーブルに設定しているフィールド情報を確認することで、テーブルにどのようなフィールドが存在し、それぞれがどのようなデータ型で定義されているかを確認することができます。

例:テーブル情報の取得クエリ

以下は、T001_会員テーブルに関する情報を取得するためのクエリの例です。このクエリを実行することで、T001_会員のレイアウトに配置されているフィールドやその属性が返されます。

\{
        "action" : "metaData",
        "tables" : "T001_会員"
\}

このクエリでは、指定されたレイアウト「T001_会員」に関する情報を取得します。この情報を取得することで、テーブル内にどのようなフィールドが存在し、それぞれがどのようなデータ型で定義されているかを確認することができます。

結果

会員テーブルのフィールド情報を取得するためのクエリ例です。このクエリを実行すると、会員テーブルに含まれるすべてのフィールド情報が返されます。

\{
        "messages" : 
        [
                \{
                        "code" : "0",
                        "message" : "OK"
                \}
        ],
        "response" : 
        \{
                "baseTable" : "会員",
                "fieldMetaData" : 
                [
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "姓",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "名",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "姓_ひらがな",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "名_ひらがな",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "年齢",
                                "notEmpty" : false,
                                "numeric" : true,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "number",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : true,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "生年月日",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "date",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "性別",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "血液型",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "メールアドレス",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "電話番号",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "携帯電話番号",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "郵便番号",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "住所",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "会社名",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "クレジットカード",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "有効期限",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "マイナンバー",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : true,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "__id",
                                "notEmpty" : true,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "__z0__",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "number",
                                "timeOfDay" : false,
                                "type" : "calculation"
                        \},
                        \{
                                "autoEnter" : false,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "__z1__",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "number",
                                "timeOfDay" : false,
                                "type" : "calculation"
                        \},
                        \{
                                "autoEnter" : true,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "za_accountCreated",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : true,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "za_accountModified",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "text",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : true,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "za_timestampCreated",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "timeStamp",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : true,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "za_timestampModified",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "timeStamp",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : true,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "za_trigger_modified",
                                "notEmpty" : false,
                                "numeric" : false,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "time",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \},
                        \{
                                "autoEnter" : true,
                                "fourDigitYear" : false,
                                "global" : false,
                                "maxCharacters" : 0,
                                "maxRepeat" : 1,
                                "name" : "__SEQ__",
                                "notEmpty" : true,
                                "numeric" : true,
                                "repetitionEnd" : 1,
                                "repetitionStart" : 1,
                                "result" : "number",
                                "timeOfDay" : false,
                                "type" : "normal"
                        \}
                ],
                "portalMetaData" : \{\}
        \}
\}

この結果から、会員テーブルに含まれるフィールドの名前と型が確認できます。

まとめ:metaDataアクションでデータ構造を可視化しよう

今回は、「FileMaker Data APIを実行」スクリプトのmetaDataアクションについて、具体的な使用方法とその利便性を紹介しました。metaDataアクションを使えば、データベース内のフィールドやレイアウトの情報を取得し、システム設計やデータベースのメンテナンスを効率化することができます。さらに、フィールドのデータ型や属性を確認することで、外部システムとのデータ連携や運用管理をスムーズに行える点も大きなメリットです。

レイアウト情報の取得

レイアウトに表示されるフィールド情報を取得し、ユーザーがどのような画面でデータを確認・入力しているかを理解できるようになりました。これを活用して、画面デザインの最適化やUI改善に役立てることができます。

テーブル情報の取得

会員テーブルに含まれるフィールド名やデータ型を取得し、データベース構造を把握する方法を解説しました。これにより、システム内のデータがどのように管理されているかを可視化しやすくなります。

フィールドの型や属性の確認

各フィールドのデータ型や属性情報を取得し、データ入力時の制約やデータの一貫性を確認する方法を紹介しました。これにより、データベースの信頼性を高め、システム運用がさらに安定します。

metaDataアクションは、FileMakerデータベースの管理において欠かせないツールです。データ構造を把握し、システム設計や運用管理に役立てることで、より効率的にデータベースを活用できるようになります。この記事を参考に、実際のプロジェクトでmetaDataアクションを活用してみてください。

サンプルソリューション

今回の記事で使用したサンプルソリューションは、以下からダウンロードできます。ZIP形式のため、解凍してご利用ください。

サンプルソリューションをダウンロード

ファイルをダウンロードしてFileMakerで開くと、カスタムダイアログボックスが表示されます。以下に記載のアカウント名とパスワードを使用してログインしてください。

アカウント名:Administrator
パスワード:UzIXmy5x2Ss50jHK

Start small

記事の内容を自社の業務に置き換えて相談できます

業務システム、Excelや紙管理、Claris FileMaker® 活用、データ設計について、今の業務の話から整理します。

  • 要件が固まっていなくても
  • Excelや紙管理の相談からでも
  • 小さく始める方法から整理します