- スタート アップ ガイド
- ベスト プラクティス
- テナント
- レジストリ
- Cloud ロボット
- Automation Suite ロボット
- フォルダー コンテキスト
- プロセス
- ジョブ
- Apps (アプリ)
- トリガー
- ログ
- 監視
- インデックス
- キュー
- アセット
- コネクション
- ビジネス ルール
- ストレージ バケット
- MCP サーバー
- Orchestrator のテスト
- リソース カタログ サービス
- Integrations
- トラブルシューティング
Orchestrator でオートメーションの作業項目を無制限に保存および処理するためのキューとトランザクションの概要です。
キューとは、無制限にアイテムを保持できる収納機能です。キュー アイテムには、インボイスの情報や顧客情報などさまざまな種類のデータを格納できます。この情報は、例として SAP や Salesforce などの他のシステムで処理することもできます。
キュー アイテムに格納され、キュー アイテムから出力されるデータは、既定では自由形式です。他のアプリケーションとの連携、マシン生成フォームの処理、分析など、特定のスキーマが必要な状況では、カスタム JSON スキーマをアップロードして、すべてのキュー アイテム データが適切な形式になっていることを確認できます。
In Orchestrator, newly created queues are empty by default. To populate them with items you can either use the upload functionality in Orchestrator, or Studio activities. The latter also enable you to change item statuses and process them. You can also configure queue triggers to automatically start Maestro or RPA processes whenever new items are added. As soon as queue items are processed, they become transactions.
キューの概要
キューでは、複雑なロジックによって明示される大型のオートメーション プロジェクトを作成できます。たとえば、すべての請求書情報を収集して、各データを格納するキュー アイテムを作るプロセスを作成できます。続いて、Orchestrator からその情報を収集し、それを使用して追加のタスク (別のアプリケーションで請求書の支払いをする、支払期日または値にもとづいて支払いを延期する、請求書の支払いが行われるたびに会計チームにメールを送信するなど) を実行する別のプロセスを作成できます。
[キュー] ページでは、新しいキューを作成したり、以前に作成したキューを表示したり、グラフにアクセスして、トランザクション ステータスの経時的な進行状況やその他のさまざまな詳細 (平均実行時間、成功したトランザクションの総数など) を確認したりできます。
キュー グリッドで利用可能なデータは定期的に更新されます。つまり、必ずしもリアルタイムに表示されるとは限らず、わずかな遅延が発生する可能性があります。さらに、アイテム保持ポリシーの影響も受けないため、データベースの項目をアーカイブしても、グリッドに表示される情報は変更されません。
アイテム ステータスは、オートメーション プロジェクトを作成する際に RPA 開発者が管理します。それに対して、リビジョン ステータスは Orchestrator により管理され、バージョン管理を可能にしますが、アプリケーションまたはビジネス例外により破棄された、または失敗したキュー アイテムのみが対象となります。
失敗または破棄されたアイテムもレビュー担当者に割り当てることができます。レビュー担当者は、それらのアイテムを必要に応じて変更またはクリアできます。こうした変更はそれぞれ、[監査の詳細] ウィンドウの [履歴] タブで追跡されます。レビュー担当者は、割り当てられたトランザクションの現在のステータスの評価とレビュー ステータスの変更を担当します。リビジョン前のキュー アイテムのステータスは、[レビュー リクエスト] ページで変更できます。
キュー アイテムを正常に処理するため、参照によってキューから削除する場合は、キュー レベルで一意の参照が設定されている必要があります。参照を一意に保たないと、同時アクセスの問題が発生します。たとえば、トランザクション データが見つからないことによるエラー (「No Transaction Data エラー メッセージ」など) が発生します。参照を一意にすることができない場合は、参照を使用せずにキューから削除することをお勧めします。
スキーマ定義
キューを作成または編集する場合、特定データ、出力データ、分析データのカスタム JSON スキーマをアップロードできます。スキーマを配置すると、すべてのトランザクションが指定された形式に対して検証され、結果のデータがそのアイテムに適合しない場合、ビジネス例外で失敗します。
- スキーマは、既存のトランザクションに遡及的に適用されるのではなく、スキーマをアップロードした後に実行されるトランザクションにのみ適用されます。
- スキーマには、配列を含めることはできません。
- 検証のために、
DateTimeはstring型として受け入れられます。 - 分析データスキーマの使用と検証には、バージョン 19.10 以降のロボットとアクティビティが必要です。
- アップロードしたスキーマに有効な
URIスキーマ定義がない場合、以下の例に示すように、draft-07がフォールバックとして使用されます。
Orchestrator のパフォーマンスの観点から制御性の向上を図るために、キュー アイテムの固有データのサイズは最大 256,000 文字 (512,000 バイト) に制限されています。この制限を超えるアイテムはキューに追加できず、エラー コード 403 - Payload Too Large (ペイロードが大きすぎます) が返されます。制限値を超えるアイテムをアップロードする必要がある場合、大きなデータは外部ストレージに保存して、アイテムにはリンクの参照のみを含めます。
Draft-07 スキーマのフィールド
$schema URI が存在しないか、認識されているスキーマ バージョンと一致しない場合、Orchestrator はキュー アイテムのデータを JSON スキーマ draft-07 仕様に照らして検証します。次の表で、draft-07 スキーマに含めることができるフィールドについて説明します。
ルートレベルのフィールドは、最上位のスキーマオブジェクトに属します。プロパティ レベルのフィールドは、 properties オブジェクトの各エントリ内に属します。
| フィールド | レベル | Required | 説明 |
|---|---|---|---|
type: "object" | ルート | はい | キュー アイテムのデータが構造化オブジェクトであることを宣言します。 |
properties | ルート | はい | 想定される各フィールドとそのデータ型を定義します。 |
$schema | ルート | いいえ | JSON スキーマのバージョン URI存在しない場合、または認識されない場合、Orchestrator は draft-07 検証を使用します。 |
required | ルート | いいえ | 各キュー アイテムに存在する必要があるプロパティ名の配列です。 |
additionalProperties | ルート | いいえ | properties にリストされていないプロパティを受け付けるかどうかを制御します。 |
type | プロパティ | はい | フィールドのデータ型を指定します。次のセクションでサポートされるタイプを参照してください。 |
default | プロパティ | いいえ | フィールドの既定値です (指定されていない場合)。 |
examples | プロパティ | いいえ | 文書化のみを目的としたサンプル値です。 |
pattern | プロパティ | いいえ | string値が一致する必要がある正規表現。 |
minimum | プロパティ | いいえ | integer プロパティまたは number プロパティに許容される最小値です。検証では、プロパティと、エラー発生時に構成された最小値が報告されます。 |
maximum | プロパティ | いいえ | integer または number プロパティの最大許容値です。検証では、エラー発生時にプロパティと設定された最大値が報告されます。 |
minLength | プロパティ | いいえ | stringプロパティの最小文字数。検証では、失敗時にプロパティと設定された最小長が報告されます。 |
maxLength | プロパティ | いいえ | stringプロパティの最大文字数です。検証では、失敗時にプロパティと設定された最大長が報告されます。 |
$id | ルートまたはプロパティ | いいえ | スキーマまたは特定のプロパティの一意の識別子です。 |
title | ルートまたはプロパティ | いいえ | スキーマまたはプロパティの人間が判読できるラベルです。 |
サポートされているデータ型
各プロパティ定義の type フィールドによって、そのフィールドの値に想定される形式が指定されます。次の値は、プロパティ レベルの型定義に有効です。
| 入力 | 説明 |
|---|---|
string | テキスト値。この型は DateTime フィールドに使用します。 |
integer | 小数コンポーネントを含まない整数。 |
boolean | true または false 値を選択します。 |
number | 小数を含む数値。 |
object | 独自の properties 定義を持つ入れ子になった構造化オブジェクト。 |
次のテンプレートは、1 つの必須テキスト フィールドを含む、単純な有効な draft-07 スキーマの例です。
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"fieldName": {
"type": "string"
}
},
"required": ["fieldName"]
}
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"fieldName": {
"type": "string"
}
},
"required": ["fieldName"]
}
完全なスキーマの例
次の例は、複数のプロパティの種類と任意のフィールドを示しています。
{
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://example.com/root.json",
"type": "object",
"title": "The Root Schema",
"additionalProperties": { "type": "string" },
"required": [
"stringTest",
"intTest",
"boolTest"
],
"properties": {
"stringTest": {
"$id": "#/properties/stringTest",
"type": "string",
"title": "The Stringtest Schema",
"default": "",
"examples": [
"stringTest"
],
"pattern": "^(.*)$"
},
"intTest": {
"$id": "#/properties/intTest",
"type": "integer",
"title": "The Inttest Schema",
"default": 0,
"examples": [
30
]
},
"boolTest": {
"$id": "#/properties/boolTest",
"type": "boolean",
"title": "The Booltest Schema",
"default": false,
"examples": [
false
]
}
}
}
{
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://example.com/root.json",
"type": "object",
"title": "The Root Schema",
"additionalProperties": { "type": "string" },
"required": [
"stringTest",
"intTest",
"boolTest"
],
"properties": {
"stringTest": {
"$id": "#/properties/stringTest",
"type": "string",
"title": "The Stringtest Schema",
"default": "",
"examples": [
"stringTest"
],
"pattern": "^(.*)$"
},
"intTest": {
"$id": "#/properties/intTest",
"type": "integer",
"title": "The Inttest Schema",
"default": 0,
"examples": [
30
]
},
"boolTest": {
"$id": "#/properties/boolTest",
"type": "boolean",
"title": "The Booltest Schema",
"default": false,
"examples": [
false
]
}
}
}
トランザクションの概要
[トランザクション] ページでは、対象のキューのトランザクションを表示します。また、そのステータスや処理日、処理を実行するロボット、また、例外および参照情報がある場合は、その種類も表示されます。
You can search for a specific transaction or a group of them, according to a custom reference, which is added through the Reference property of the Add Queue Item and Add Transaction Item activities. The reference can be used to link your transactions to other applications used within an automation project.
Additionally, this feature enables you to search for certain transactions in Orchestrator, according to the provided custom reference.
トランザクション参照をキュー レベルで一意とするようにすることもできます。この機能はキュー作成時に有効となり、削除またはリトライされたものを除き、すべてのトランザクションに適用されます。この設定により特定のアイテムの識別が容易になり、またレビュープロセスが簡素化されます。
キューへのアイテムの追加時に重複参照が発生した場合には、ジョブは [エラー] ステータスで失敗し、Execution error: UiPath.Core.Activities.OrchestratorHttpException: Error creating Transaction. Duplicate Reference. というエラー メッセージが [ジョブの詳細] ウィンドウに表示されます。
処理順序
任意のキュー内で、トランザクションは次の順序に従って階層的に処理されます。
- 次のように処理期限のあるアイテム。
- [優先度] の順序と
- [優先度] が同じアイテムについては、設定された [処理期限] に従います。
- 処理期限のないアイテムは [優先度] の順序。
- [優先度] が同じアイテムについては、先入れ先出しのルール
When setting a Deadline or a Postpone date, we recommend populating the respective fields with relative dates. For example, DateTime.Now.AddHours(2), DateTime.Now.AddDays(10) and DateTime.Now.Add(New System.TimeSpan(5, 0, 0, 0)). Additionally, you can use the US notation to add an exact time, such as 10/15/2019 07:40:00.
Automatic correction of this date is available, for example, if you write 15 10 2019 9:0, it is automatically transformed to 15/10/2019 09:00:00.
処理期限は、同じ優先順位のタスクを並べ替える場合に便利です。一方延期では、指定した時刻より前にタスクが開始されないようにします。ただし、この 2 つのパラメーターは一緒に使用するようには設計されていません。
Studio で [処理期限] および [延期] フィールドに追加された日付は、Orchestrator の [トランザクション] ページの [処理期限] および [延期]列の下に表示されます。
キュー アイテムの一括編集
[ トランザクション ] ページから複数のキュー アイテムを同時に更新できます。キュー アイテムは [トランザクション] ページから一括編集できます。1 つ以上のアイテムを選択して [ 編集] を選択します。更新できるフィールドは次のとおりです。
- 優先度
- 延期日
- 期限日
- トランザクションの進行状況をリセット
一括編集は、選択したすべての項目に適用されます。更新できるのは、[ 新規]、[ 失敗]、または [破棄済み ] ステータスのアイテムのみです。
トランザクションをエクスポートする
[トランザクション] ページの [エクスポート] ボタンを選択すれば、指定のキューに関連するすべてのトランザクションや情報を .csv ファイルにエクスポートできます。ページの絞り込みオプションはすべて、生成されたファイルにも適用されます。
図 1. CSV ファイル
最高のパフォーマンスを得るためにエクスポートされたエントリは日付の新しい順に並んでいないため、注意が必要です。
キュー SLA の予測
このツールを使用すると、キューに新しく追加されたアイテムに SLA (アイテム期限) を設定できます。これにより、追加されたアイテムをタイムリーに処理できるかどうか、および SLA に違反しないように割り当てる必要があるリソースを評価できます。SLA が満たされない危険性がある場合は、適切に通知され、それに応じて調整を行うことができます。
The SLA only applies to those items that don't have a deadline set, meaning that a newly added item with no deadline defined beforehand has it automatically filled in according to the value set as the SLA. Specifically, each item's deadline is represented by the value set for the queue SLA from the moment the item was added into the queue.
For instance, if I set the SLA to 2 hours, and I add 3 items into the queue at 4, 5, and 6 PM, then my items have the deadlines 6, 7, 8 PM, respectively.
SLA 違反アラートは、毎時 7 分から 30 分ごとにトリガーされます。
期限のあるアイテム (Studio またはアップロードに使用される .csv ファイルのいずれかで設定) は SLA の設定による影響は受けません。
- Studio またはアップロードに使用される .csv ファイルでの設定に関係なく、SLA 予測を有効化した後にキューに追加されたアイテムの優先度は自動的に [高] に設定されます。
- SLA 予測が有効化されているキューに関連付けられているプロセスは削除できません。
- 少なくとも 1 つのキュー アイテムがその処理期限を超えている場合、[必要なロボットの台数 (SLA)] 列に [キャパシティ オーバー] と表示され、予測値は算出されなくなります。
- 処理期限が 24 時間以内に迫っているキュー アイテムが予測されますが、アイテムの延期日数は考慮されません。
キュー トリガーと SLA 予測値は、キューとプロセスの関連付けに関して互いに依存しています。したがって、一方を構成すると、設定が一致するように、もう一方は自動入力されます。たとえば、キュー Y に対するキュー トリガーを、プロセス X を使用するように 定義します。キュー Y の SLA 予測値はプロセス X のみを使用して決まるので、Y のキュー SLA を有効化すると、X には値が事前入力され、読み取り専用になります。
リスク SLA (Risk SLA)
アイテムのリスク SLA を定義することもできます。これは、SLA の前のバッファーゾーンのように機能します。明示的に、アイテムのリスク期限は、キュー アイテムがキューに追加された時点からのリスク SLA に基づいて計算されます。SLA を 2 時間に設定し、4:30、5:15、および 6:45 PM に 3 つのアイテムをキューに追加すると、アイテムのリスク期限はそれぞれ 6:30、7:15、8:45 PM になります。
リスク SLA が経過し、キュー アイテムが処理されない場合、アイテムは期限に間に合わないリスクが発生します。ユーザーには適切に通知され、それに応じて調整を行うことができます。
キュー SLA の権限
キューの SLA 予測値を構成できるようにするには、次の権限が付与されている必要があります。
- プロセスの表示
- キューの表示
- キューの編集権限 (キューの編集時に SLA を構成するため)
- キューの作成権限 (キューの作成時に SLA を構成するため)