第105回 Enter キー、Return キーで次のレコードに移動する

初めまして。6月に入職致しました、エヌ・ケイ・カスタマイズの濵田と申します。

これまでFileMaker に触れる機会はありましたが、簡易な修正や操作までしか経験はなく、これから知見を深めていきます。

さて今回は、レコードを移動する際に「Enter キー」もしくは「Return キー」を使用して移動する方法についてお伝えします。

はじめに

FileMaker の標準機能で「Tab」キーを押下することでカーソルがフィールド間を移動できますが、下記のような表においては、レコード間で移動できるとデータがより見やすくなります。

図1

この動作はステータスツールバーにある「次のレコードへ移動」にて可能ですが、今回実現する方法では、ステータスツールバーでの操作は必要なく、キーボードの操作で実現することができます。

それでは、実際に設定をしていきましょう。

スクリプトトリガの設定

キーボードで指定したキーが押下された場合にスクリプトが実行されるように、「OnLayoutKeystroke スクリプトトリガ」を設定します。

図2

◇ OnLayoutKeystroke スクリプトトリガとは?

  • 対象のキーが押下されたときにスクリプトを実行します

    • 「Alt」「Ctrl」キーを設定することはできません。

       

  • 詳しくはこちらを参照ください。

スクリプトの作成

指定したキーが押下された場合に、レコード間を移動するスクリプトを作成します。

◇ スクリプトの内容

◇ スクリプトでは以下の関数を使用します

  • Get(トリガキー入力)
  • Code($トリガキー入力)
  • Get(トリガ修飾キー)

◇ 使用する関数について

  • Get(トリガキー入力)

   →「OnLayoutKeystroke スクリプトトリガ」が起動されたキーを返します

  • Code($トリガキー入力)

   →「OnLayoutKeystroke スクリプトトリガ」が起動されたキーのUnicode コードポイントを返します

     例:「Enter」キーの場合は「13」を取得します

  • Get(トリガ修飾キー)

   →「OnLayoutKeystroke スクリプトトリガ」が起動されたキーと「Shift」もしくは「Ctrl」が共に押下されていた場合は「1」を返します

実行

それでは実際にキーボードを操作していきます。

私の環境はWindows のため、以下のキーボードを押下することでレコード間の移動ができることを確認しました。

「↓」「Enter」 = 次のレコードへ

「↑」「Enter+Shift」 = 前のレコードへ

「↑+Shift」 = 最初のレコードへ

「↓+Shift」 = 最後のレコードへ

まとめ

キーボードの操作のみで完結されたい方にとって、この機能はとても便利だと思います。

ただその反面「OnLayoutKeystroke スクリプトトリガ」により、キーボードを押下する度にスクリプトが実行されるため、利用される方がそのことを認識した上で使用されないと無駄な処理が走るので注意が必要です。

次回も引き続きよろしくお願い致します。
それでは、来週もお楽しみに!


参考文献:Claris FileMaker 公式トレーニング教材 から、「FileMaker 関数・スクリプトガイド」等を参考にしています
https://content.claris.com/fmb19_reg-ja