Orchestrator
2021.10
バナーの背景画像
Orchestrator ユーザー ガイド
最終更新日 2024年2月15日

Studio でキューを管理する

キューにアイテムを追加する

  1. [キュー] ページでキューを作成します。
  2. Studioで Excel スプレッドシートから特定の数値を回収して変数内に格納するオートメーション プロジェクトを作成するとします。
  3. [アクティビティ] パネルから、[キュー アイテムを追加] アクティビティをデザイナーパネルにドラッグします。
  4. [プロパティ] パネルの [キュー名] フィールドに、手順 1 で作成したキューの名前を引用符で囲んで入力します。
    注: キューの名前については、大文字と小文字は区別されません。たとえば、「Test_QueUe」と「test_queue」は同じです。
  5. [優先度] リストで、このアクティビティで追加するアイテムの重要度と望ましい処理速度に応じて、[Low][Normal]、または [High] を選択します。
  6. (任意) [参照] フィールドに、キュー アイテムまたはそれらのグループの識別子として機能する文字列または String 型変数を入力します。(参照を使用して、トランザクションをオートメーション プロジェクト内で使用される他のアプリケーションにリンクできます。さらに、この機能を使用して、指定されたカスタム参照に基づいて、Orchestrator 内で特定のトランザクションを検索できます。)
    注: 参照は、2016.2 以前のバージョンの Orchestrator または Robot には対応していません。
  7. (任意) [処理期限] フィールドに、アイテムの処理期限の日付を追加します。
  8. (任意) [延期] フィールドに、キュー アイテムの処理開始可能日を追加します。
  9. [アイテム情報] フィールドの横の [参照] docs image ボタンをクリックします。[アイテム情報] ウィンドウが表示され、作成した各キュー アイテムにデータを追加できます。


    注: [アイテム情報] ウィンドウに追加された文字列引数の値には、[ および " " の文字は含むことはできません。
  10. [引数を作成] をクリックします。新しい空の引数が作成されます。
  11. 必要に応じて、引数の名前をもっとわかりやすいものに変更します。
  12. 必要な引数の種類を変更します。たとえば、トランザクションの数字を格納する場合は、Int32 を選択します。
  13. [値] フィールドに、キュー アイテムに追加する値、または特定の値を格納するために使用する変数を入力します。
  14. [OK] をクリックします。設定が保存されます。
    注: これらの種類のオートメーション プロジェクトをループに配置します。配置しない場合は 1 つのアイテムのみが作成され、Orchestrator に設定されます。

Studio の [アイテム情報] ウィンドウで追加したデータが、Orchestrator のアイテムの [詳細] ウィンドウの [特定のデータ] に表示されます。キューに追加したアイテムのステータスは、すべて [新規] に設定されています。



キューからアイテムを取得し、そのステータスを変更する

  1. Orchestrator で、既にキューにアイテムを設定しているとします。
  2. Studio で、[トランザクション アイテムを取得] アクティビティを [アクティビティ] パネルからデザイナー パネルにドラッグします。
  3. [プロパティ] パネルの [キュー名] フィールドに、Orchestrator から設定したキューの名前を、引用符で囲んで入力します。
    注: キューの名前については、大文字と小文字は区別されません。たとえば、「New_QueUe」と「new_queue」は同じです。
  4. QueueItem 型変数を作成します。この変数には、優先度や期限に基づいてキューの最初のアイテムが格納されます。この変数をループに配置すると、ロボットによりすべてのキュー アイテムが繰り返し処理されます。このアクティビティの通過後はキュー アイテムは処理されず、アイテムのステータスが [処理中] に変わります。
  5. [トランザクション アイテム] フィールドに、以前作成した QueueItem 型変数を入力します。
  6. [アクティビティ] パネルから、[トランザクション アイテムを取得] アクティビティの下にある [フロー条件分岐] アクティビティをドラッグします。
  7. オートメーションの要件を作成します。たとえば、Excel スプレッドシートにトランザクション アイテムを追加する、情報を記載したメールを送信する、など。
  8. [プロパティ] パネルの [条件] フィールドに、アイテムのステータスが変更される条件 (たとえば、キュー アイテムが空の場合、など) を入力します。
  9. [アクティビティ] パネルから [トランザクションのステータスを設定] アクティビティをドラッグし、[フロー条件分岐] アクティビティの [False] ブランチに接続します。このアクティビティを通過するトランザクション アイテムはすべて、手順 7 で追加した条件を満たしません。
  10. [プロパティ] パネルの [ステータス] ドロップダウン リストから [Successful] を選択します。このステータスは、このアクティビティを通過するすべてのキュー アイテムに適用されます。
  11. [トランザクション アイテム] フィールドに、手順 5 で使用した QueueItem 型変数を入力します。
  12. (任意) [分析] フィールドの横の [参照] docs image ボタンをクリックして、アイテムの詳細ウィンドウに表示させるデータを [分析] フィールドに入力します。
  13. (任意) [出力] フィールドの横の [参照] docs image ボタンをクリックして、アイテムの詳細ウィンドウに表示させるデータを [出力] フィールドに入力します。
    注: この情報は、キュー アイテムが正常に処理された場合にのみ表示されます。
  14. 別の [トランザクションのステータスを設定] アクティビティをデザイナー パネルにドラッグし、[フロー条件分岐] アクティビティの [True] ブランチに接続します。このアクティビティを通過するキュー アイテムはすべて、手順 7 で追加した条件を満たします。
  15. [プロパティ] パネルの [ステータス] フィールドから [Failed] を選択します。このステータスは、このアクティビティを通過するすべてのキュー アイテムに適用されます。
  16. [トランザクション アイテム] フィールドに、手順 5 で使用した QueueItem 型変数を入力します。
  17. [エラーの種類] のリストから、[フロー条件分岐] アクティビティで設定した条件に応じて [Business] または [Application] を選択します。たとえば、空のキュー アイテムをアプリケーション例外とし、トランザクション値が標準値より小さい場合、ビジネス例外とすることができます。
  18. [理由] フィールドに、例外が発生した理由を説明する文字列を入力します。プロジェクトの実行後、この情報がアイテムの [詳細] ウィンドウに表示されます。
  19. 両方の [トランザクションのステータスを設定] アクティビティを [トランザクション アイテムを取得] アクティビティに接続します。これによりループが作成され、すべてのキュー アイテムが繰り返し処理されます。基本的なオートメーション プロジェクトは、次のスクリーンショットのように表示されます。


    以下は、[トランザクションのステータスを設定] アクティビティのプロパティ (左側) から、Orchestrator のアイテムの [詳細] ウィンドウ内で対応するフィールドへのマッピングです。



キュー アイテムから特定のデータを取得する場合は SpecificContent() メソッドを使用できます。その際、キューへの情報の追加に使用した引数の名前を括弧の間に記述し、引用符で囲みます。


例として、上のスクリーンショットには [代入] アクティビティの [右辺値] フィールドが表示されています。このフィールドから、(Orchestrator のアイテムの [詳細] ウィンドウ内の [固有データ] に表示される) キュー アイテムの値を取得して文字列変数に代入し、後で処理することができます。

前のスクリーンショットは次のようになっています。

  • transItem - トランザクション アイテムを格納するために使用している QueueItem 変数を表します。
  • .SpecificContent - トランザクション アイテムから情報を取得するメソッドです。
  • ("transactionID") - [アイテム情報] ウィンドウで追加した、キュー アイテムにデータを設定するための引数の名前です。この引数名は、Orchestrator のアイテムの [詳細] ウィンドウの [固有データ] にも表示されます。
  • .ToString - もともと整数だったキューの ID を文字列に変換するために使用する関数です。

トランザクション アイテムの処理を延期する

  1. Orchestrator で、既に複数のキューにアイテムを設定しているとします。
  2. すべてのキュー アイテムを繰り返し処理できる [トランザクション アイテムを取得] アクティビティが既に Studio にあるとします。
  3. [アクティビティ] パネルから [フロー条件分岐] アクティビティをワークフローにドラッグします。このアクティビティにより、一部のキュー アイテムの処理を延期する基準となるビジネス上の決断を下すことができます。たとえば、請求額が 3,000 ドルを超えた場合に支払いを延期する、などです。
  4. [アクティビティ] パネルから、[トランザクション アイテムを延期] アクティビティを [フロー条件分岐] アクティビティの [True] ブランチにドラッグします。これは、[フロー条件分岐] アクティビティに設定した条件を満たすすべてのキュー アイテムの処理が、構成に従って延期されることを意味します。
  5. [トランザクション アイテム ] フィールドに、[トランザクションを取得] アクティビティで使用される QueueItem 型変数を入力します。
  6. [延期] フィールドに、延期日時を追加します。この日時までこのアイテムの処理が延期されます。
  7. [処理期限] フィールドに、このアイテムの処理期限を追加します。

    [処理期限] プロパティと [延期] プロパティによって、新しい優先順位がキュー アイテムに追加されます。たとえば、今日の午後 7 時が処理期限で優先度が [中] であるキュー アイテムは、処理期限がなく、優先度が [高] の別のアイテムよりも先に処理されます。

    注: キュー アイテムの処理期限を変更または延期すると、そのステータスが [新規] に変更されます。

カスタムの進行状況を追加する

  1. Orchestrator で、多数 (何百万という単位) のアイテムが設定された [処理中] ステータスのキューがあるとします。
  2. Studio で、既に [トランザクション アイテムを取得] アクティビティがあり、すべてのキュー アイテムを繰り返し処理し、QueueItem 変数を使っているとします。
  3. [アクティビティ] パネルから [トランザクションの進行状況を設定] アクティビティをデザイナー パネルにドラッグします。
  4. アクティビティの [トランザクション アイテム] プロパティに、QueueItem 型変数を入力します。
  5. [進行状況] プロパティに、その時点での進行状況を表す "BeforeFirstDecision" などの独自の文字列を追加します。これにより、このアイテムが Orchestrator データベースから取得されたことがわかります。オートメーション プロジェクトが実行中にここでクラッシュした場合、1 つのアイテムがこのステータスとなり、[進行状況] 列に表示されます。
    注: 独自の進行状況ステータスは、アイテムのステータスが [進行中] の場合にのみ表示されます。

オートメーション プロジェクトの残りは、上のように設定できます。

たとえば、次のワークフローの例では、トランザクション本体のシーケンスをどのように設計しているかに応じて、各アイテムのステータスを自動的に [成功] または [失敗] に設定します。

  • 何もしない繰り返しをブレーク続行 - 成功の場合の結果
  • 例外をスロー - 失敗 (アプリケーション エラー) の場合の結果
  • ビジネス ルール例外をスロー - 失敗 (ビジネス エラー) の場合の結果
  • トランザクションのステータスを設定 - 設定したステータスの場合の結果
  • トランザクション アイテムを延期 - 新規の場合の結果
  • 停止すべきか確認 - ワークフローを Orchestrator から停止すると、ワークフローは現在のトランザクションの完了後にループを終了します。

    ワークフローはすべてのキュー アイテムに対して自動的に繰り返され、対応するトランザクション ステータスを設定します。

    [繰り返しをブレーク] の場合、またはキューが空の場合、ワークフローはループを終了します。



アーカイブされたワークフローをダウンロードし、参照として使用します。

Was this page helpful?

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