はじめに
UiPath Formsアクティビティを使ったことがありますか。自動化の実行時に人間による確認や入力が必要な場合、UiPath Formsアクティビティを使用して人間が操作できるUIを提示できます。
例えば、以下の画面はUiPathのFormsアクティビティを使用して作成したものです。

UiPath Formsアクティビティを通じて、自動化対象システムの値を上記の画面で表示したり、人間の入力内容を自動化対象システムに反映したりできます。
UiPath Formsを使用することで、自動化できる範囲が大幅に拡大します。
利用バージョンについて
UiPath Studio 23.4のリリースノートによると、「トリガーベースの有人オートメーション」に関連してフォームの機能を向上させるために、新しいエクスペリエンスのForms アクティビテがリリースされました。
新しいフォーム エクスペリエンスは、Studio 2023.4 および Form.Activities 23.4.3 以降で使用できます。
注意事項:
バージョン2.0.7より前のパッケージで作成したワークフローをバージョン23.4.3以降を使用するプロジェクト内で再利用する必要がある場合、新しいアクティビティを使用して再作成する必要があります。
詳細については、以下のリンクをご参照ください。
https://docs.uipath.com/ja/activities/other/latest/workflow/about-the-form-activities-pack
各バージョンでの利用可能かは以下の通りです。
バージョン | タイプ | Formsアクティビテ(2.0.7まで) | Formsアクティビテ(23.4.3以降) |
---|---|---|---|
23.4以降 | Studio | 〇 | 〇 |
StudioX | 〇 | × | |
22.10まで | Studio | 〇 | × |
StudioX | 〇 | × |
トリガーベースの有人オートメーションって何?
有人オートメーションは、人間の入力と監督のもとで実行され、ユーザーやアプリケーションのアクションに基づいて進められます。
UiPathのエコシステムでは、これらのアクションはイベントとして定義されており、トリガーを使用して複雑なオートメーションを実現します。このプロセスはトリガーベースの有人オートメーションと呼ばれます。
トリガーベースの有人オートメーションに関する詳細は以下のページをご参照ください。
従来のオートメーションは基本ワークフローに沿って順序立てて実行されます。一方、トリガーベースの有人オートメーションはトリガーによって様々なイベントを起動し、複雑な業務を行います。
Salesforceの業務を例として、トリガーベースの有人オートメーションを用いると、以下のワークフローを実現できます。
- まずSalesforceにログインします。
- 次に、新しいレコードを入力するためのフォームが表示されます。そのフォームにデータを入力し、チェックした後、Salesforceに転記します。
- 最後に、Salesforceを閉じる前に、タイムシートに作業時間を記録してから作業を終了します。これは一連の業務ワークフローです。
トリガーベースの有人オートメーションの作成
実際の例を通してトリガーベースの有人オートメーションの実現方法を解説します。このフォーム画面を通して、以下のことを実現します。
- 「ファイル選択...」ボタンをクリックして、出席一覧のCSVファイルを選択します。
- 選択されたCSVファイルのデータはテーブル形式で表示されます。
- データを確認し、編集した後、「保存して終了」ボタンをクリックすると、編集後のデータが出席一覧CSVファイルに書き戻されます。

ワークフローの作成を通じて、フォームの作成やトリガー及びフォームとワークフロー間データの渡し方を理解できるようになります。利用する開発環境はStudioの2023.10.3です。
全体構成
ワークフロー一式は以下の通りで、3つのXAMLファイルとフォームファイルです。
肝心な部分のみ説明していますので、詳細なワークフローは以下のフォルダーから取得して確認してください。
フォーム作成(ExcelData.uiform)
左側のコンポーネントから必要なものを選択し、右側のエリアに配置します。
- 出席一覧ファイル:
- 役割:選択されたファイルのパスの表示
- コンポーネント:テキストフィールド
- フィールドキー:textField(フォーム外とデータの受け渡しをする際に利用する名前)
- ファイルを選択:
- 役割:クリックされたら、ファイルを選択するダイアログの表示
- コンポーネント:ボタン
- CreateTrigger:「ファイルを選択」ボタンがクリックされた際の動作を定義するXAML(fileトリガー.xaml)を作成する必要があります
- 出席一覧:
- 役割:データテーブルの編集をするコンポーネントを載せるコンテナー
- コンポーネント:編集グリッド
- フィールドキー:datatable(フォーム外とデータの受け渡しをする際に利用する名前)
- お名前、年齢:
- 役割:外部から受け取ったデータテーブルの名前と年齢の表示
- コンポーネント:テキストフィールド
- フィールドキー:データテーブルの列名と同じ名前
- 保存して終了:
- 役割:クリックされたら、編集後データテーブルを保存してフォームを閉じること
- コンポーネント:ボタン
- CreateTrigger:「保存して終了」ボタンがクリックされた際の動作を定義するXAML(submitトリガー.xaml)を作成する必要があります。また、アクションをデフォルトの「確定」から「イベント」へ変更します補足事項。
補足事項:
Submitボタンのデフォルトアクションが「確定」であるため、Submitのクリックイベントが発生するとフォーム自体が閉じられてしまいます。フォームが閉じられた後は、フォーム経由でのデータ取得や設定ができなくなるため、Submitのアクションをデフォルトの「確定」から「イベント」へ変更する必要があります。
メインワークフロー(Main.xaml)
ワークフロー実行を開始する際、まず作成したフォームを表示し、ローカルのイベントを待ちます。
予めフォームに表示してほしいデータがある場合、「フォームを表示」の引数欄を通じて、データの受け渡しが可能です。
ファイル選択ワークフロー(fileトリガー.xaml)
「ファイルを選択」のボタンがクリックされたら、ファイル選択ダイアログを表示し、選択されたCSVファイルを読み込んでフォームに渡します。
選択されたファイルのパス及び読み込んだCSVのデータテーブルをフォームに渡すために、「フォームの値を設定」アクティビティを利用して引数を設定します。
保存して終了ワークフロー(submitトリガー.xaml)
「保存して終了」のボタンがクリックされたら、編集後のデータを出席一覧CSVファイルに書き込み、フォームを閉じてからイベント待ちを停止します。
最後に
ここまでで、トリガーベースの有人オートメーションのイメージを掴むことができました。トリガーやフォームの機能を活用し、応答性の高いオートメーションを構築できます。これは、人間とシステムが頻繁にやり取りが必要な場合(例:コンタクトセンター)に適用できるでしょう。
今後の記事では、より高度な使い方を解説します。
参考情報