CookBook

IM-BloomMaker キー押下時プロパティの使い方

投稿日:

このCookBookでは、2024Springでリリースした「キー押下時」プロパティの使い方について紹介しています。

数値入力エレメントに数値入力後、Enter キーを押下したときに、一致する案件番号の情報を取得するアクションを実行させるサンプルです。

完成イメージ

※「2」を入力後、Enter キーを押下しています。

完成サンプル

以下の完成サンプルをダウンロードしてご活用ください。

このサンプルは、2024 Spring 版以降でインポートできます。

  • IM-BloomMaker インポートデータ:im_cookbook_235920_im_bloommaker-data
    • IM-BloomMakerのインポート機能を利用してインポートしてください。
      インポート後、インポートしたルーティング定義の認可 URI の設定を行ってください。
  • IM-LogicDesigner インポートデータ:im_cookbook_235920_im_logicdesigner-data
    • IM-LogicDesignerのインポート機能を利用してインポートしてください。
      インポート後、インポートしたルーティング定義の認可 URI の設定を行ってください。
  • 「テナント管理」→「データベース操作」にて、以下のSQL文を実行してください。
  • テーブル インポートデータ:im_cookbook_235920
    • テーブルのインポート機能を利用してインポートしてください。

ローカル環境で表示させる場合は、以下のURLにアクセスしてください。 http://localhost:8080/imart/im_cookbook/bloommaker/235920

なおベースURLである以下の部分は、環境に合わせて適宜変更してください。 http://localhost:8080/imart

レシピ

  1. (事前準備)テーブルの説明
  2. (事前準備)LogicDesignerのフローの説明
  3. (事前準備)BloomMakerの画面の説明
  4. BloomMakerのアクションの作成
  5. キーの指定方法について補足

1.(事前準備)テーブルの説明

以下のような案件情報のテーブルを用意しています。

テーブル名:「im_cookbook_235920」

2.(事前準備)LogicDesignerのフローの説明

以下のようなユーザ定義を含んだLogicDesignerのフローを用意しています。

案件番号を入力値として受け取り、一致する案件番号の案件情報を返却しています。

3.(事前準備)BloomMakerの画面の説明

以下のような画面と変数を用意しています。

4-1. BloomMakerのアクションの作成(カスタムスクリプトを使用する場合)

ここから、「キー押下時」プロパティに指定するアクションを作成していきます。

こちらのアクションでは、Enter キー押下時に以下を実行します。

  • 検索結果を表示するボックスエレメントの表示・非表示の切り替え
  • LogicDesignerにリクエストを送信することで、入力された案件番号と一致する案件情報の獲得

「キー押下時」プロパティに指定するアクションには、カスタムスクリプトを含めるか、「キーが押下されたとき」実行条件を含める必要があります。

まず、カスタムスクリプトを使用した場合のアクション作成を見ていきましょう。(アクション名:search project)

①アクションタブを開き、「アクションを追加」アイコンをクリックして、「アクションエディタ」を開きます。「変数◯に◯を代入する」アクションアイテムと「IM-LogicDesigner フロールーティング◯にリクエストを送信する」アクションアイテムを追加します。

②それぞれのアクションアイテムのプロパティを埋めます。

③それぞれのアクションアイテムに、「上記のカスタムスクリプトの返却値が true のとき」実行条件を追加します。

④ ③で追加した実行条件に、以下のように記述します。

⑤最後に、数値入力エレメントの「キー押下時」プロパティに、作成したアクションを指定します。

このようにアクションを作成することで、数値入力エレメント選択時に Enter キーを押すと、アクションが実行されるようになりました。

4-2. BloomMakerのアクションの作成(「キーが押下されたとき」実行条件を使用する場合)

次に、「キーが押下されたとき」実行条件を使用する場合のアクション作成をご紹介します。(アクション名:search project2)

①②は、4-1. と全く同じ工程です。

③それぞれのアクションアイテムに、「キーが押下されたとき」実行条件を追加します。

④ ③で追加した実行条件に、以下のように記述します。


⑤最後に、数値入力エレメントの「キー押下時」プロパティに、作成したアクションを指定します。

5. キーの指定方法について補足

4. で示した通り、「キー押下時」プロパティを使用するには、カスタムスクリプトを使用するか、または「キーが押下されたとき」実行条件を使用する必要があります。

カスタムスクリプトで、キーを指定する条件式について
  • Enter キーを指定
    • $im.event.keyboard.key == "Enter"
  • Ctrl キー+任意の文字キーを指定
    • $im.event.keyboard.ctrlkey && $im.event.keyboard.key == "任意の文字キー"
    • ctrlkey の他に、altkey、shiftkey、metakey(Windows の場合は win キー、 Mac の command キーが押されている場合は true)が使用できます。
  • 記号を指定
    • $im.event.keyboard.key == "任意の記号"
    • 例:右矢印(ArrowRight)
  • Fn キーを指定
    • $im.event.keyboard.key == "F1"
カスタムスクリプトについて
  • 今回のCookBookで示したように、「上記のカスタムスクリプトの返却値が true のとき」実行条件に、「return 「キーを指定する条件式」」のように指定する方法があります。
  • もしくは、「カスタムスクリプトを実行する」アクションを使用する場合、「if(「キーを指定する条件式」)「{実行したい内容」}」のように指定する方法もあります。
カスタムスクリプトと「キーが押下されたとき」実行条件でキーを指定するときの違い
  • カスタムスクリプトでキーを指定した場合、キーの既存の機能を打ち消しません。(例:WindowsでCtrl キー + Fで、キーを指定した場合、標準装備されたブラウザ検索機能を打ち消しません。)
  • 「キーが押下されたとき」実行条件でキーを指定した場合、キーの既存の機能を打ち消します。(例:WindowsでCtrl キー + Fで、キーを指定した場合、標準装備されたブラウザ検索機能が打ち消されます。)

-CookBook

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

画面UI部品(imuiValidate)のバリデーションメッセージを任意の場所に表示する方法

このCookBookでは、画面UI部品のバリデーションメッセージを任意の場所に表示する方法について紹介しています。 intra-mart Accel Platform では、画面上に配置したUI部品の …

IM-BloomMaker 時刻入力に設定した日付・時刻型変数の日付やタイムゾーンはどうなっているの?

はじめに 2022 Winter でリリースした「時刻入力」エレメントは、時刻の入力フォームを表示するエレメントです。 「時刻入力」エレメントの value プロパティには日付・時刻型変数を指定します …

no image

IM-BloomMaker Bulmaエレメントに使用するアイコンの探し方

このCookBookでは、 intra-mart Accel Platform 2020 Summer から利用可能になったコンテンツ種別「Bulma」で使用できるアイコンについて説明いたします。 I …

スプレッドシートでForma入力チェックユーザプログラムを利用して入力チェックを実行する方法

このCookBookでは、スプレッドシートでForma入力チェックユーザプログラムを利用して入力チェックを実行する方法について紹介しています。 Formaの入力チェックプログラムでは以下の2つのチェッ …

no image

OAuth2.0 の アクセストークンを Google から取得する方法

このクックブックでは、OAuth2.0 の アクセストークンを Google から取得する方法を説明します。 intra-mart Accel Platformでは、OAuth2.0 の アクセストー …