Orchestrator
2020.10
False
横幅背景图像
不在支持范围内
Orchestrator 用户指南
上次更新日期 2023年12月12日

关于队列和事务

队列是一个容器,可用于存储不限数量的项目。队列项目可存储多种类型的数据,例如发票信息或客户详细信息。可以在其他系统(例如 SAP 或 Salesforce)中处理此信息。

默认情况下,存储在队列项目中以及从队列项目输出的数据是自由格式。对于需要特定模式的情况,例如与其他应用程序的集成,计算机生成的表单的处理,或者分析,您可以上传自定义 JSON 架构以确保所有队列项目数据的格式正确。

在 Orchestrator 中,默认情况下,新创建的队列为空。要用项目填充它们,您可以使用 Orchestrator 中的上传功能,也可以使用 Studio 活动。后者还使您能够更改项目状态并进行处理。队列项目一经处理,便成为事务。

队列概述

队列使您可以创建大型自动化项目,其中复杂的逻辑非常重要。例如,您可以创建一个流程,用以收集所有发票信息并为每段数据创建一个队列项目来存储它。随后,您可以创建另一个流程,该流程从 Orchestrator 收集信息并将其用于执行其他任务,例如在不同的应用程序中支付发票,根据到期日期或价值推迟付款,每次支付账单时向会计团队发送电子邮件等。

使用“队列”页面可以创建新的队列。还为您提供了对以下内容的访问权限:先前创建的队列、事务状态随时间变化的图表以及各种其他详细信息,例如平均执行时间和成功事务的总数。

项目状态由 RPA 开发者在创建自动化项目时控制,而修订状态则在 Orchestrator 中进行控制,并使您能够执行版本控制,但仅对因应用程序或业务异常而被放弃或失败的队列项目进行控制

也可以将失败或放弃的项目分配给审核人,必要时可以随时对其进行更改或清除。在审核详细信息窗口的历史记录选项卡中跟踪所有这些更改。审核人负责评估分配给他的交易的当前状态,并更改审核状态。可以在审核请求页面中更改要修订的队列项目的状态。

架构定义

在创建或编辑队列时,您可以上传特定数据输出数据和/或分析数据JSON 架构。使用该架构后,将根据提供的格式验证所有事务,如果结果数据不符合要求,则该项目将出现因业务异常,导致失败。
重要提示:
  • 架构不会追溯应用到现有事务,仅追溯到上传架构后执行的事务。
  • 您的架构不得包含数组
  • 出于验证目的, DateTime 被接受为 string 类型。
  • 要使用和验证分析数据架构,需要 19.10 或更高版本的机器人和活动。
  • 如果上传的架构不包含有效的架构定义 URI,则将 draft-07 定义(如下例所示)用作回退。

架构示例:

{
  "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
      ]
    }
  }
}

事务概述

事务页面显示给定队列中的事务。此页面还显示这些事务的状态、应处理日期、负责处理的机器人,以及引发的异常类型或分配的引用(如果如有)。

您可以根据通过添加队列项目活动和添加事务项目活动的引用属性添加的自定义引用搜索特定事务或一组事务。该引用可用于将您的事务链接到自动化项目中使用的其他应用程序。此外,此功能使您可以根据提供的自定义引用在 Orchestrator 中搜索特定事务。

也可以强制事务参考在队列级别唯一。此功能在创建队列时启用,并应用于所有事务(已删除或重试的事务除外)。这使识别特定项目变得轻而易举,并简化了审核过程。

如果在将项目添加到队列时遇到重复引用,则作业将失败,并显示为“发生故障”状态,并在“作业详细信息”窗口中显示“Execution error: UiPath.Core.Activities.OrchestratorHttpException: Error creating Transaction. Duplicate Reference.”错误消息。

队列项目中存储的信息显示在 Orchestrator 中“事务详细信息”窗口的“特定数据”下。此外,如果该项目失败并重试,项目的历史记录将显示在同一窗口中。



注意:为了更好地控制 Orchestrator 的性能,通过 Queue.MaxSpecificDataSizeInKiloBytes 参数,队列项的特定数据大小被限制为 1 MB。任何超出此限制的数据都无法添加到队列中,并且会返回错误代码 403 - Payload Too Large。如果您需要上传较大的项目,请将较大的数据存储在外部存储中,并且仅在项目中引用链接。

“事务详细信息”窗口包含三个选项卡:

  • 详细信息 - 使您可以查看添加到事务中的确切信息、其状态变化以及重试的次数。
  • 需要与团队成员共享有关特定事务的信息时,可以通过注释选项卡,查看和添加与事务相关的注释。所有对队列和事务具有查看编辑删除权限的用户都可以分别添加、编辑或删除注释,但是请记住,您只能更改自己的注释。
  • 历史记录 - 使您可以查看谁执行了什么操作,查看谁是审核人以及审核状态是什么。

处理顺序

在任何给定队列中,将按层次结构处理事务,依据的顺序如下:

  1. 具有截止日期的项目,如下所示:
    1. a按优先级顺序;并且
    2. b. 对于优先级相同的项目,根据所设置的截止日期
  2. 没有截止日期的项目按优先级排序,并且
    1. 对于优先级相同的项目,根据根据先进先出规则。
设置截止日期延期日期时,建议您在各个字段中填充相对日期。例如,DateTime.Now.AddHours(2)DateTime.Now.AddDays(10)DateTime.Now.Add(New System.TimeSpan(5, 0, 0, 0))。此外,您可以使用美国日期表示法来添加确切时间,例如 10/10/2019 07:40:00。提供日期自动更正功能,例如,如果您输入 12 10 2019 9:0,它将自动转换为 12/10/2019 09:00:00

在 Studio 的“截止日期”和“延期”字段中添加的时间会显示在 Orchestrator 的“事务”页面中的“截止日期”和“延期”列下。

导出事务

您可以单击“事务”页面上的“导出”按钮,将与给定队列相关的所有事务和信息导出到 .csv 文件。所有页面筛选选项也适用于生成的文件。



请注意,为了确保最佳性能,导出的条目不按时间倒序排列。

队列 SLA 预测

此工具可帮助您为队列中新添加的项目设置 SLA(项目截止日期)。这可以帮助您评估是否可以及时处理它们,以及需要分配哪些资源以确保不违反其 SLA。只要有无法满足 SLA 的危险,就会适时地通知您进行相应的调整。

备注:

了解如何配置队列 SLA

SLA 仅适用于未设置截止日期的项目,这意味着没有预先定义截止日期的新添加的项目将根据设置为 SLA 的值自动填充。具体来说,每个项目的截止日期从队列项目添加到队列中的时间算起,由为队列 SLA 设置的值表示。例如,如果我将 SLA 设置为 2 小时,并且在下午 4、5 和 6 点将 3 个项目添加到队列中,那么我的项目的截止日期分别为下午 6、7、8 点。

具有截止日期的项目(在 Studio 或用于上传的 .csv 文件中设置) 不受 SLA 设置的影响。

重要提示:
  • 启用 SLA 预测后,添加到队列中的项目的优先级会自动设置为,无论在 Studio 或用于上传的 .csv 文件中是如何设置的。
  • 您无法删除与启用了 SLA 预测的队列关联的流程。
  • 如果至少一个队列项目超过了其截止日期,则“必要机器人 (SLA)”列中将显示超出容量,并且不再计算预测。
  • 对截止日期在未来 24 小时内的队列项目进行预测(可以使用 web.config 中的 Queue.SlaReadaheadTimeLimitHours 参数进行更改),并且不考虑项目的延期日期。

就队列-流程关联而言,队列触发器和 SLA 预测是相互依赖的。因此,每当配置一个时,另一个都会预填充,以使配置之间保持一致。假设我为队列 Y 定义了一个队列触发器以使用流程 X。队列 Y 的 SLA 预测只能使用流程 X 进行;因此,当为 Y 启用队列 SLA 时,X 会预填充,并且为只读状态。

风险 SLA

您还可以为项目定义一个风险 SLA,其作用类似于 SLA 之前的缓冲区。明确地说,项目的风险截止时间是根据风险 SLA 计算得出的,从将队列项目添加到队列之时算起。假设我将风险 SLA 设置为 2 小时,并且在下午 4:30、5:15 和 6:45 将 3 个项目添加到队列中,那么我的项目的风险截止时间分别为下午 6:30、7:15、8:45。

如果已超过风险 SLA 且队列项目未得到处理,该项目就有可能无法满足其截止时间。系统会适当通知用户,以便用户做出相应调整。

权限

要能够为队列配置 SLA 预测,您需要具有以下权限:

  • 对流程的查看权限
  • 查看队列
  • 队列的“编辑”权限(在编辑队列时配置 SLA)
  • 队列的“创建”权限(在创建队列时配置 SLA)

使用 CSV 文件批量上传项目

此功能使您能够使用 .csv 文件将队列项目批量上传到 Orchestrator 中的特定队列中。为此,请先将文件上传到特定队列的 Orchestrator 实例中。成功处理文件后,将根据所选策略将包含的项目上传到队列中。请注意,必须事先使用预定义的格式填充文件,以确保上传操作成功。

构建 .csv 文件时,可以使用一系列预定义的列标题,但也可以使用其他自定义标题。成功上传 .csv 文件后,具有预定义标题的列中包含的信息将映射到 Orchestrator 中找到的列。具有自定义标题的列中包含的信息位于 Orchestrator 中相应项目的特定数据部分下。

注意:上传限制为每个文件 15,000 个项目。您可以使用 UiPath.Orchestrator.dll.config 中的 Upload.Queues.MaxNumberOfItems 参数来降低此限制。

页。

列映射

文件列标题

Orchestrator 字段

参考

对唯一参考队列为必需。

它支持所有特殊字符,但双引号除外 - "

参考

注意:引用与 Orchestrator 或机器人的 v2016.2 或更低版本不兼容。

截止日期

必须使用以下任一种格式填充日期:

  • yyyy-MM-dd
  • YYYY/MM/DD
  • YYYY MM DD
  • YYYY-MM-DD HH:mm
  • YYYY/MM/DD HH:mm
  • YYYY MM DD HH:mm
  • YYYY-MM-DD HH:mm:ss
  • YYYY/MM/DD HH:mm:ss
  • YYYY MM DD HH:mm:ss

截止日期

延期

必须使用以下任一种格式填充日期:

  • yyyy-MM-dd
  • YYYY/MM/DD
  • YYYY MM DD
  • YYYY-MM-DD HH:mm
  • YYYY/MM/DD HH:mm
  • YYYY MM DD HH:mm
  • YYYY-MM-DD HH:mm:ss
  • YYYY/MM/DD HH:mm:ss
  • YYYY MM DD HH:mm:ss

延期

优先级

必须填充以下值之一:

  • 或 1
  • 正常或 2
  • 或 3

如果未在文件中指定优先级,则默认情况下将以高优先级上传项目。

优先级

分别映射到以下值:

  • 正常

[Custom_Name]

名称只能由字母数字字符组成:0-9、a-z 或下划线。

特定数据

以 JSON 格式映射。

例如:

银行内求偿支票:5540

请注意,文件中不能有空的列标题。

注意:预定义的列标题区分大小写,请确保遵循上面的映射规则。名为reference 的 .csv 中的列将映射到特定数据部分,而不是参考列。

上传策略

有两种处理上传的策略:

  • 独立处理全部 - 单独处理所有项目,并将它们添加到队列中(如果成功)。如果不成功,则返回处理失败的项目的列表。您可以选择将该列表下载到 .csv 文件,该文件中填充的字段与最初上传的文件中的字段相同。
  • 全部或无 - 仅在所有项目都已成功处理时添加项目。否则,不添加任何项目。

示例:

假设您将以下 .csv 文件的内容上传到队列中。创建此类文件的一种简单方法是将数据填充到 Excel 文件中,并将其另存为 .csv 文件:

 

或者,您也可以下载具有所有预填充列标题的 .csv 文件,并根据需要自定义它。

请注意,此文件包含 3 个预定义列(其名称与 Orchestrator 中的名称相同(“参考”、“截止日期”和“优先级”,并以绿色突出显示))和 2 个自定义列(“客户”和“颜色”,并以红色突出显示)。

 

  1. 单击上传项目以获取所需的队列,然后选择 .csv 文件。Orchestrator 会解析文件以确认其符合格式设置规则。
  2. 选择所需的上传策略,然后单击“上传”以完成该过程。


选择“更多操作”>“查看事务”以查看上传的队列项目。



“事务”页面会显示从文件上传的每个项目。文件的预定义列中包含的信息将映射到 Orchestrator 中具有相同名称的列(“参考”、“截止日期”和“优先级”,并以绿色突出显示):

 

自定义列中的信息以 JSON 格式映射到每个项目的特定数据部分。单击所需项目的查看详细信息以查看该项目:



此页面是否有帮助?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath 白色徽标
信任与安全
© 2005-2024 UiPath. All rights reserved.