対象者: Claris FileMaker 開発者(初級〜)
皆さん、こんにちは!シリーズ第2弾は、個人的に「待ってました!」と叫びたくなった超便利な新スクリプトステップ、「レコード一覧へ移動」を徹底解説しちゃいます!「複雑な検索をした後、その結果を一時的に保存しておきたい…」「スナップショットリンクは便利だけど、ちょっと大げさ…」なんて思ったこと、ありませんか? Claris FileMaker 2025 は、その悩みを過去のものにしてくれますよ!
「レコード一覧へ移動」ステップって何ができるの?
このスクリプトステップは、一言でいうと「レコード ID のリストを渡すだけで、そのレコードたちを対象レコードにしてくれる」という魔法のような機能です。
設定はとってもシンプル。レコード ID の入力欄に、改行で区切られた ID のリストか、JSON 配列形式の ID リストを指定するだけ。これだけで、複雑なリレーションや検索条件がなくても、目的のレコード群を一瞬で呼び出せるわけです。
こんな場面で大活躍!活用シナリオ5選
じゃあ具体的にどんな時に便利なの?っていうのをいくつか考えてみました!
1. ソートしたいんじゃなくて、自分が思うような順で表示したい
これまで自分が思うような順でレコードをソートする場合、各レコードに自分が思うような数値を入れたり、そのような数値になるような計算フィールドをわざわざ作っていたかと思います。これからは、自分が思うように順序を指定できます。
2. Data API や ExecuteSQL の結果を、レコードに表示したい
FileMaker の検索ではないもので、レコード抽出を行ったあと、そのレコードを表示したいと思っても、検索モード、OR の検索条件をたくさんいれ、検索実行、なんて必要がありましたが、もう不要です。
3. サーバー上で検索した結果を表示
非保存計算フィールドが絡む検索はなるべく避けたいところではありますが、どうしても必要な場合は サーバー上のスクリプト実行 で行うと高速になります。その結果をクライアントで受け取ったあとそのレコードを表示したいとき、このステップが大活躍します。
4. 値一覧の完全な代替として
値一覧をカスタム値ではなく、レコードの値を使った場合はその表示順を制御できません。そこで値一覧を使用せずカードウインドウなどを使って実際のレコードを表示して選択してもらう UI を作ることが多いと思います。このときってだいたい表示したい順てありますよね。
5. 簡易版スナップショットリンクとして
ユーザーが行った複雑な検索結果を、ID リストとしてグローバル変数や別テーブルに保存。ボタン一つでいつでもその状態を復元できます。
柔軟なレコード指定方法
このスクリプトステップは、表示したい「レコード ID」を表示したい順で渡すことでそのとおりに表示してくれます。レコード ID は FileMaker が内部的に持っているユニークな値で、GET(レコード ID) 関数、ExecuteSQL では ROWID 列で取得できますが、今回新たな GetRecordIDsFromFoundSet 関数で現在表示中のレコードIDたちを取得できます。
「レコード ID の一覧」の指定方法は次のような多くのバリエーションで受け付けてくれます。
指定方法 | 例 |
---|---|
改行区切り | 4¶1¶2 |
範囲テキスト | 1-4 |
改行区切り + 範囲テキスト | 4¶1-2 |
配列(テキスト) | [“4″,”1″,”2”] |
配列(数字) | [4,1,2] |
配列(範囲テキスト) | [“1-4”] |
配列(テキスト + 範囲テキスト) | [“4″,”1-2”] |
配列(オブジェクト) | [{“recordId”:”4″,”fieldA”:”a”},{“recordId”:”1″,”fieldA”:”b”},{“recordId”:”2″,”fieldA”:”c”}] (Data APIの結果をそのまま使用できる!) |
さらに便利な使い方
使い方 | 例 | 結果 |
---|---|---|
重複してもいい | 3¶3¶1¶3 | 3,1 の順 |
重複は先が優先 | 3¶1-4 | 3,1,2,4 の順 |
存在しない ID は無視 | 1000000¶3 | 3 |
空行は無視 | 3¶¶¶1 | 3,1 の順 |
配列の null は無視 | [“3″,null,”1”] | 3,1 の順 |
黄金パターン!「GetRecordIDsFromFoundSet」との連携
このステップをさらにパワフルにするのが、相棒となる新関数「GetRecordIDsFromFoundSet」です。この関数を使えば、現在の対象レコードの ID 群を、改行区切りや JSON 配列でサクッと取得できます。
つまり、
- ユーザーが検索やソートを行う
- GetRecordIDsFromFoundSet でその結果の ID リストを変数に保存
- 後で「レコード一覧へ移動」ステップにその変数を渡す
という「検索結果の保存&復元」が黄金パターンとして簡単に実装できるんです!
この関数は引数を1つだけ必要とします。次の数を設定します。
引数 | パターン | 例 |
---|---|---|
0 | 改行区切り | 4¶1¶2 |
1 | 配列(テキスト) | [“4″,”1″,”2”] |
2 | 配列(数字) | [4,1,2] |
3 | 改行区切り + 範囲テキスト | 4¶1-2 |
4 | 配列(テキスト + 範囲テキスト) | [“4″,”1-2”] |
まとめ
新スクリプトステップ「レコード一覧へ移動」は、単純な機能に見えて、実は開発の幅を大きく広げてくれる可能性を秘めた素晴らしい機能です。検索結果の保存だけでなく、ユーザーに特定の順序でデータを見せたい場合など、様々な場面での活躍が期待できますね。皆さんもぜひ、この新しい武器を手に入れて、よりスマートなカスタム App 開発を楽しんでください!
当ブログでは、この他にも Claris FileMaker 2025 のリリースに関する様々な記事を公開しています。
ぜひ、以下の一覧ページから気になる記事を探してみてください。
▼関連記事の一覧はこちら
AI・Web 連携・開発効率が爆速進化!Claris FileMaker 2025 リリース特集ブログ一覧