Studio
2023.10
バナーの背景画像
Studio ガイド
最終更新日 2024年4月26日

概要

トリガー ベースの有人オートメーションには、以下を含めることができます。

フォームと吹き出しは、有人オートメーションの中心となる機能です。トリガーを使用して実行することで、複雑なシナリオを構築できます。このようなシナリオでは、同時に複数のイベントを発生させる必要があります。さらに、グローバル変数の値に基づいてアクションをトリガーすることもでき、対応できる有人シナリオがさらに広がります。

下図は、フォーム、フォーム イベント トリガー、アプリケーション イベント トリガーを使用して構築されたプロセスを示しています。同様のプロセスを、ユーザー イベント トリガーと吹き出しに基づいて構築することもできます。



前提条件

トリガー ベースの有人オートメーションを設計および実行するには、以下の手順を実行します。

  • 次のアクティビティ パッケージをインストールします。
    • Form.Activities バージョン 23.4
    • System.Activities 23.4
    • UIAutomation.Activities 23.4
    • Callout.Activities 23.4
  • フォーム ファイルの作成時に「Couldn't find a compatible Webview2 Runtime installation to host WebViews (WebView をホストできる WebView2 ランタイム インストールが見つかりませんでした。)」というエラーが発生する場合は、Microsoft Edge WebView2 をインストールします。

フォーム

有人オートメーションにおけるフォームの目的は、ユーザーまたはアプリケーションによる入力を収集して処理することです。現在のフォーム機能では、以下を行うことができます。

  • プロジェクトの内部で フォーム (uiform ファイル) を使用して、アクティビティの外部でフォームを作成する。後から、フォームを使用するアクティビティから独立してフォームの構築や編集を行うことができます。これにより、フォームを構築するプロセスを分離した上で、そのフォームを同じオートメーションで使用できます。
  • カスタム HTML ファイルを使用してフォームを作成する。HTML フォームは、uiform ファイルと同様に使用できます。
  • [フォームを表示] アクティビティを使用して、同時に複数のフォームを表示する。複数の [フォームを表示] アクティビティを追加し、[インスタンス名] フィールドで各アクティビティに一意の名前を指定します。[インスタンス名] プロパティは、Form.Activities パッケージのほとんどのアクティビティで利用でき、以下の目的に使用できます。
    • 表示する各フォームに一意のインスタンス名を指定して、同じフォームの複数のインスタンスに対してアクションを表示または実行する。
    • [インスタンス名] フィールドを空のままにして、すべてのインスタンスに対してアクションを表示または実行する。
  • フォーム イベントに基づいて開始するトリガーを設定する。このようなイベントでは、フォームを閉じるイベントや、特定のフォーム コンポーネントが変化するイベントを表すことができます。このためには、[フォーム イベント トリガー] アクティビティを使用できます。
  • フォームを表示するだけにするのか、それとも残りのワークフローの実行中にフォームを表示するのかを選択する。このためには、[ワークフローの実行を続行] プロパティを有効化または無効化します。
  • [フォームの値を設定] アクティビティと [フォームの値を取得] アクティビティを使用して、実行時にフォームの値を編集および取得する。
  • [フォームのプロパティを変更] アクティビティを使用して、実行時にフォームのプロパティを変更する。
  • [フォームのスクリプトを実行] アクティビティを使用して、カスタム JavaScript をフォームに挿入する。

吹き出し

有人オートメーションにおける吹き出しの役割は、ユーザーをアプリケーション、Web サイト、製品、さらにはフォーム内の特定の UI 要素に誘導することです。また、吹き出しを使用してアプリのカスタム検証を作成したり、フィールドに事前に入力したり、複数のオートメーションをユーザーの入力に基づいてトリガーしたりすることもできます。

吹き出し機能では、以下を行うことができます。

  • フォーム (uiform) ファイルを使用して吹き出しを作成し、フォーム ビルダーを使用してデザインする。
  • [吹き出しを表示] アクティビティを使用して、吹き出しを表示する場所の横にある UI 要素を指定する。
  • 吹き出し内の要素に値を渡す。
注: 吹き出しとは、[吹き出しを表示] アクティビティを使用して UI 要素にバインドされ、その要素の横に表示されるフォームです。

吹き出し専用の Callout.Activities パッケージがありますが、吹き出しは通常のフォームと同じように uiform ファイルであるため、Form.Activities パッケージを使用して吹き出しを処理することもできます。つまり、Form.Activities パッケージを使用する場合は、通常のフォームを操作するのと同じ方法で吹き出しを操作できます。

トリガー

有人オートメーションにおけるトリガーの目的は以下のとおりです。
  1. アプリケーション イベントやユーザー イベントに基づいてワークフローを開始する。さらに、スケジュール モードを使用して、トリガーの起動時にアクションを実行する方法を指定できます。
    • Sequential - アクションは 1 つずつ順番に実行されます。
    • Concurrent - アクションの実行が重なる場合があります。
    • OneTime - 1 つのアクションを実行し、監視を終了します。
    • SequentialCollapse - 現在のイベントの実行が完了するまで、今後発生するすべてのイベント (最新のイベントを除く) を無視します。
    • 順次 (drop) - 前のイベントの実行を停止し、次のイベントを開始します。
    アプリケーション イベントやユーザー イベントに基づいてワークフローをトリガーするには、以下のアクティビティを使用します。
    アクティビティ説明
    フォーム イベント トリガーフォーム内で発生するイベントに基づいてワークフローをトリガーする。
    アプリケーション イベント トリガー任意の種類の要素 (トップレベル ウィンドウやその他の指定した UI 要素) のネイティブ イベントに基づいてトリガーを設定する。
    トリガーを繰り返しこのアクティビティでは、TimeSpan入力引数として設定できます。この時間が経過すると、トリガーが実行され、設定に基づいてトリガーを繰り返すことができます。
    キー押下イベント トリガー指定した UI 要素に対するキー押下のイベント トリガーを設定します。
    クリック イベント トリガー指定した UI 要素にクリック イベント トリガーを設定します。
    ホットキー トリガー指定したシステムワイドのキー イベントを監視します。
    マウス トリガー*指定したマウスとキーの組み合わせのシステムワイドのイベントを監視します。
    画像クリック トリガー*ターゲットの UI 要素によって定義された画像に対してのマウス入力を監視します。
    システム トリガー*指定したシステムワイドのキーおよび/またはマウス イベントを監視します。
    SAP セッション属性変更トリガー*指定した SAP セッションの属性の変更を監視します。

    * - 自身のアクティビティで使用することも、[トリガー スコープ] アクティビティ内で使用することもできます。

  2. 一度だけ、順番に、または同時に発生する可能性のある複数の有人シナリオを自動化する。このためには、以下のアクティビティを使用します。
    アクティビティ説明
    ローカル トリガーを実行ユーザーのマシン上のイベントをリッスンするすべてのローカル トリガーを初期化して開始します。
    ローカル トリガーを停止ローカル トリガーの実行を終了します。実行すると、イベントによってトリガーされたワークフローを含めて、実行中のすべてのアクションがキャンセルされます。[ローカル トリガーを停止] を実行すると、イベントによってトリガーされる実行中のワークフローはキャンセルされますが、メイン ワークフロー内のアクティビティは通常どおり続行されます。
    ローカル トリガーを無効化[ローカル トリガーを実行] アクティビティで開始された 1 つ以上のアクティブなローカル トリガーを無効化します。
    ローカル トリガーを有効化[ローカル トリガーを実行] アクティビティで開始された 1 つ以上のアクティブなローカル トリガーを有効化します。
  3. データ マネージャーで作成したグローバル変数の動作に基づいてワークフローを開始する。このためには、以下のアクティビティを使用します。
    アクティビティ説明
    グローバル変数変更トリガーグローバル変数の値が変化したときに、通知に登録している全ユーザーに通知をプッシュする。
    グローバル変数の変更を通知 グローバル変数の値が変化したときに開始するトリガーです。

ローカル トリガーを実行

[ローカル トリガーを実行] アクティビティでは、複数のイベントを同時にトリガーできます。このアクティビティを使用すると、実行時またはデバッグ時にバックエンドで Triggereventargs という別個の読み取り専用ワークフローが生成されます。このワークフローには複数の [トリガー スコープ] アクティビティが含まれ、これによってプロジェクト内のすべてのトリガーを並列実行します。
プロジェクトを初めて実行するときに、各トリガー ワークフローは Triggereventargs ワークフローを引数として [引数] パネルにキャプチャします。トリガー ワークフローごとに専用の Triggereventargs 引数があり、ここに各ワークフローの情報が保持されます。プロジェクトを実行すると、Triggereventargs 引数は最新の実行情報で更新されます。
Triggereventargs 引数は主に、各トリガー ワークフローに固有の次の情報を提供します。
  • トリガーの種類
  • トリガー名
  • トリガーを起動するターゲット要素
  • フォーム コンポーネント ([フォーム トリガー アクティビティ] の場合)
  • フォーム インスタンス名 ([フォーム トリガー アクティビティ] の場合)
Triggereventargs 引数の情報にアクセスするには、トリガーの種類に基づいてさまざまなメソッドを適用できます。ユーザー イベント トリガーでは、次のメソッドを使用できます。
  1. TargetElement - 監視対象のターゲット要素の情報を取得します。
    1. Attributes - 監視対象のターゲット要素の属性を取得します。
    2. DisplayDpiScaleFactor - ターゲット要素のサイズをピクセル単位で指定します。
    3. ImageBase64 - ターゲット要素の画像を Base64 画像に変換します。
    4. Selector - ターゲット要素で使用されているセレクターの情報を取得します。


  2. トリガーの種類
フォーム トリガーでは、次のメソッドを使用できます。
  1. FormSourceId - トリガーが起動されたフォームの ID にアクセスします。
  2. インスタンス名 - トリガーが起動されたフォームのインスタンス名を取得します。

トリガーの動作

  • トリガー ワークフローとは、トリガーによって開始されるワークフローです。プロジェクト全体のコンテキストでデバッグすることも、独立してデバッグすることもできます。
  • トリガーが大量にあるためパフォーマンスに影響が出ると思われる場合は、[ローカル トリガーを有効化] および [ローカル トリガーを無効化] アクティビティを使用して、特定のトリガーを有効化または無効化できます。
  • [ローカル トリガーを有効化] および [ローカル トリガーを無効化] アクティビティは、ユーザー イベントを監視するワークフローが複数あり、そのイベントを判断するために、ユーザーが到達したオートメーションのフェーズを使用するようなシナリオで便利です。
    • たとえば、[ローカル トリガーを有効化] アクティビティを使用して、ユーザーが自身のユーザー名をフォーム内に入力した後にトリガーをアクティブ化できます。
    • 一方、[ローカル トリガーを無効化] アクティビティを使用すると、たとえばユーザーが製品ガイド ツアー中に特定の手順に到達した後に、順次実行されるようにスケジュールされたトリガーを無効化できます。

グローバル変数

有人オートメーションにおけるグローバル変数の目的は、ユーザー イベントやアプリケーション イベントに関する情報を記録して変数内に格納し、後でその変数を他のアクティビティの入力やトリガーとして使用できるようにすることです。これにより、データを複数のワークフロー間で簡単に共有できます。グローバル変数機能では、以下を行うことができます。

  • 前提条件
  • フォーム
  • 吹き出し
  • トリガー
  • ローカル トリガーを実行
  • トリガーの動作
  • グローバル変数

Was this page helpful?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
UiPath ロゴ (白)
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.