画面フローのアクションボタンを使ってみよう

Summer'24のリリースによって追加された画面フローの新要素である「アクションボタン」コンポーネントについて、ご紹介します。

はじめに

今回は、Summer'24のリリースによって追加された画面フローの新要素である「アクションボタン」コンポーネントについてご紹介します。
画面フローを使用する時、画面右下の「次へ」や「完了」ボタンをクリックしないと処理が走らないということがあるのではないでしょうか。
「アクションボタン」コンポーネントを使用することで、画面を離れることなく、1画面内で処理を完結させることができるようになります。
画面を切り替えることなく、1画面内で同じ処理を繰り返し行うことが可能になります。

画面フローコンポーネントの「アクションボタン」とは

有効な自動起動フローをフロー画面に追加し、ボタンをクリックすることで、処理を呼び出すことができます。

例えば、以下のような処理を実行することが可能です。

・画面フロー内のデータテーブルの更新
 フィルタリングした内容をデータテーブルに反映

・レコードの登録、更新
 複数レコードを作成する場合、同じ画面内で繰り返し実行

フローの実装

実際の機能と実装方法を2つご紹介します。

シナリオ1

データテーブルをフィルタリングしてレコードを表示してみます。
カスタムオブジェクト「課題」の選択リスト項目、ステータス「未着手」「着手中」「完了」のステータスごとの一覧を画面遷移なしで切り替えながら表示します。

画面イメージ1

下記画面イメージです。
「未着手」にチェックを付け「検索」をクリックすると、ステータスが「未着手」の「課題」レコードが表示されます。
同様に「着手中」にチェックを付け「検索」すると、「着手中」のレコードが表示されます。

実装方法1

画面フローの全体の処理の流れは下記のようになります。

①画面コンポーネント内に選択リストを設置
②画面コンポーネント内の「アクションボタン」から自動起動フローを呼び出す(選択リスト値を渡す)
③自動起動フロー内で選択リスト値と一致する「課題」レコードを取得
④③で取得したレコードをデータテーブルに表示

作るフローは2つになります。
1、画面フロー
2、自動起動フロー
それぞれの処理内容について説明します。

自動起動フロー1

最初に画面フロー内のアクションボタンから呼び出すフローを作成します。
処理の内容は下記の通りです。
変数:Status(データ型:テキスト、「入力で使用可能」:TRUE)
レコードコレクション変数:List(データ型:レコード、「複数の値を許可(コレクション):TRUE、「出力で使用可能」:TRUE)

画面フロー1

画面要素を配置し、設定内で下記コンポーネントを配置します。
・選択リスト:「課題」オブジェクトのステータス選択リスト値
・アクションボタン:作成した自動起動フローを設定
・データデーブル:取得したレコードを表示

「入力値を設定」に画面フロー内で選択した選択リスト値を設定します。
この値が自動起動フロー側に渡されます。
設定は以上で終了です。
デバッグすると下記のように処理が実行されます。

シナリオ2

データテーブルを確認しながら「課題」レコードを画面遷移なしで作成します。
複数作成する場合も画面遷移は発生しません。

画面イメージ2

下記画面イメージです。
「課題名」「ステータス」「進捗率」を入力し、「課題作成」ボタンをクリックすると新規「課題」レコードが作成されます。

実装方法2

画面フローの全体の処理の流れは下記のようになります。

①画面コンポーネント内に必要な入力欄を配置
②画面コンポーネント内の「アクションボタン」から自動起動フローを呼び出す(入力値を渡す)
③自動起動フロー内でレコードを作成


作るフローは2つになります。
1、画面フロー
2、自動起動フロー
それぞれの処理内容について説明します。

自動起動フロー2

最初に画面フロー内のアクションボタンから呼び出すフローを作成します。
処理の内容は下記の通りです。
画面フローから渡される変数を用意します。(「入力で使用可能」:TRUE)
画面フローからもらった値でレコード作成を作成します。

画面フロー2

入力欄とアクションボタンを配置します。
・入力欄:作成するレコードの名前やステータスを入力
・アクションボタン:作成した自動起動フローを設定し、入力した値を渡す

設定は以上で終了です。
「課題作成」ボタンをクリックすると「課題」レコードが作成されます。

まとめ

今回は画面フローの「アクションボタン」についてご紹介させていただきました。
今回紹介したもの以外にも画面フローからアクションボタンを利用するシーンはあると思います。
工夫次第では色々なことができそうな機能だと感じました。