2024年6月に FileMaker Pro 2024(バージョン21)がリリースされました。この記事では、新規に実装・強化された以下の機能を簡単にご紹介します。
- 便利機能
- スクリプト強化
- コールバックを使用してサーバー上のスクリプト実行
- [FileMaker Data API を実行]
- ローカル通知の構成
- エラーログ設定
- トランザクションを復帰
- URL から挿入
- 新しい関数
- JSONMakeArray
- GetLiveTextAsJSON
- 関数強化
クイックオープン
この機能を利用して、お気に入りのファイルや最近使用したファイル、開いているファイルのレイアウトやスクリプトを、どの画面からでも検索して操作できるようになりました。バージョン19で実装された、レイアウトモードでレイアウトを検索できる「Open Quickly」という機能に似ています。
この「クイックオープン」テキストボックスに検索ワードを入力することで、ファイル・レイアウト・スクリプトを検索できます。検索できる対象は [ファイル], [レイアウト], [スクリプト] の3種類で、[レイアウト] と [スクリプト] は現在開いているファイルが検索対象です。
使用するショートカットキーは [control + K](Windows), [Command + K](Mac) です。バージョン20まではこのショートカットキーで、レイアウトモードの [フィールド] タブが開いていましたが、 [control + Alt + K](Windows), [Command + option + K](Mac) に変更されています。
[ファイル] の検索
クイックオープンを使ったファイルの検索対象は、お気に入り、もしくは最近使った項目のファイルです。検索結果を選択するとファイルを開くことができます。
[レイアウト] の検索
クイックオープンを使ったレイアウトの検索対象は、現在開いているファイルです。ショートカットキーを押して表示されたテキストボックスに検索ワードを入力すると、該当するレイアウトが表示されるので、選択するとそのレイアウトに切り替わります。
また、 [Alt](Windows), [option](Mac) を押したまますることで、レイアウト名の横のアイコンが切り替わり、その状態で選択したレイアウトを新規ウインドウで開くこともできます。
[スクリプト] の検索
クイックオープンを使ったレイアウトの検索対象は、現在開いているファイルです。ショートカットキーを押して表示されたテキストボックスに検索ワードを入力すると、該当するスクリプトが表示されます。検索結果を選択すると、スクリプトワークスペース上でそのスクリプトが開きます。
[Alt](Windows), [option](Mac) を押すことでスクリプト名横のアイコンが切り替わり、選択したスクリプトを直接実行することができます。[完全アクセス権] でない場合は、常にこちらの [スクリプトの実行] の状態で結果が表示されます。
コールバックを使用してサーバー上のスクリプト実行
このスクリプトを利用することで、クライアントを一時停止せずにサーバー上でスクリプトを実行し、さらにその終了後に任意のスクリプトをクライアント上で実行できます。
オプション
- [指定] サーバー上で実行するスクリプトを直接選択か、スクリプト名で指定します。
- [引数] (ひとつ目) [指定] で選択したスクリプトの引数を指定します。
- [指定されたコールバックスクリプト] [指定] で選択したスクリプトの終了後に実行するスクリプトを指定します。 スクリプトを直接選択か、スクリプト名で指定します。
- [引数] (ふたつ目) [指定されたコールバックスクリプト] で選択したスクリプトの引数を指定します。
- [状態] [指定されたコールバックスクリプト] が実行される際にクライアントで実行中のスクリプトをどう扱うかを、[続行], [停止], [終了], [再開], [一時停止] から選択します。
[サーバー上のスクリプト実行]との違い
[サーバー上のスクリプト実行] の動作は、オプションで指定したスクリプトをサーバー上で実行し、その終了を待ってから後続のスクリプトステップを実行するか、終了を待たずに後続のステップを実行するかのどちらかです。
Get ( スクリプトの結果 ) を使用して結果を取得し、後続の処理を分岐してサーバー上で実行したスクリプトの終了を待つことができますが、終了を待つ間はクライアントが一時停止するためユーザーの操作を受け付けません。
その点、[コールバックを使用してサーバー上のスクリプトを実行] は、クライアントを一時停止せず処理が終了したタイミングで指定したスクリプトを実行できます。
ただし、サーバーでスクリプトを実行している間にユーザーが操作できるということは、コールバックに指定したスクリプトが実行される際のテーブルオカレンスが、常に同じではないということです。現在ユーザーが行なっている操作を損なわないように、目的のテーブルオカレンスで処理を行うようにスクリプトを記述しましょう。
FileMaker Data API を実行
- レコードデータの書き込みリクエストで、[create], [update], [delete], [duplicate] を設定できるようになりました。
- Get (最終エラー), Get (最終エラー詳細), Get (最終エラー位置) で適切なエラー情報を返すようになりました。
- [データの入力時にユーザによる上書きを許可する] 制限オプションを上書きできるようになりました。options.entrymode に uset (フィールドの入力値の制限条件に従う) もしくは script (フィールドの入力値の制限条件を無視する) を設定できます。
ローカル通知の構成
今回のアップデートで、FileMaker Pro でもこのスクリプトステップ利用できるようになりました。
オプション
- [処理] 次のオプション [名前] で指定したローカル通知の設定をキューに加えるか、消去します。
- [名前] ローカル通知の名前を指定します。通知ごとに固有の名前を使用してください。
- [スクリプト] ユーザーが通知を操作した後に実行するスクリプトを指定します。FileMaker Pro では、システムの設定で通知が許可されていなくても実行されます。
- [遅延] 通知をキューするまでの待機秒数を指定します。
- [タイトル] 通知のタイトルを指定します。
- [ボディ] 通知の本文を指定します。
- [ボタン 1〜3 ラベル] ボタン1〜3のラベルを指定します。
- [ボタン 1〜3 前面] ボタンを選択した際に App を手前に切り替えるかの設定ができます。1 (True) なら切り替え、0 (False) もしくは未指定の場合は切り替えません。
- [App が前面にある場合に表示] これは FileMaker Go でのみ有効なオプションです。App が手前にある場合でも通知を表示するかどうかを 1 (True) or 0 (False) で指定します。
実際の通知はこのようになります。
また、[スクリプト] で指定したスクリプトで Get ( スクリプト引数 ) を使用すると、ボタンを押した時の状況などを取得できます。
- [1行目] 通知の名前
- [2行目]
- NotificationSelected:出てきた通知を選択した場合。
- NotificationNotDisplayed:FileMaker Go が手前にあったために通知が表示されなかった場合。
- NotificationNotAllowed:設定で通知が無効になっている場合。
- 「ボタンのラベル名」:通知の中の特定のボタンを押した場合、そのボタン名。
- [3行目] 通知が出たときに App が手前にあれば 1 、バックグラウンドであれば 0。
- [4行目] [スクリプト] で指定したスクリプト引数。
エラーログ設定
今回のアップデートで、FileMaker Wed Direct および FileMaker Data API で実行したスクリプト内でサポートされるようになりました。
トランザクションを復帰
今回のアップデートで、トランザクションの中で実行したサブスクリプト内でも動作するようになりました。
URL から挿入
AWS の Signature Version 4 署名を付与するための cURL オプション –aws-sigv4 がサポートされました。
JSONMakeArray
任意の文字で区切った値の一覧を JSON 配列に変換します。
JSONMakeArray ( “値” ; “区切り文字” ; JSONデータタイプ )
区切り文字が未指定の場合は、キャリッジリターン、ラインフィードなどの行区切り文字を区切り文字として認識します。
GetLiveTextAsJSON
テキスト認識アルゴリズムを使用して、指定したオブジェクトフィールド内の画像に印字された各行のテキストとその位置データを JSON 形式のデータで返します。位置の数値は、画像左上からのピクセル数です。
ちなみに日本語は iOS 16, iPadOS 16, macOS 13 以降のオペレーティングシステムでサポートされています。
JSON関数の構文の改善
JSONSetElement 関数で、[キーまたは索引またはパス] に「[+]」を使用して、「現在の配列の最後の次」の要素を簡単に表すことができるようになりました。
また、「[:]」で最後の要素を表すことができるようになりました。
以上、利用頻度の高い新機能・強化された機能の簡単な解説でした。本バージョンでは、開発に便利なものから、ユーザーが便利に カスタム App を利用できそうなものまで、様々な機能が実装されています。
FileMaker Pro 2024 をお持ちの方は、ぜひお試しください。