【问题标题】:UIPath Execute List of WorkflowsUIPath 执行工作流列表
【发布时间】:2019-01-08 20:52:17
【问题描述】:

我在 UIPath 中有几个工作流。我想要做的是:对于给定的流程图,我想以“随机”顺序执行这些工作流程 - 但也不会两次执行相同的工作流程。

例如,假设我有 3 个工作流程。我把它们都放在同一个流程图中。

当我点击“运行”时,我希望 UIPath 决定首先运行哪个,但在运行之后,我希望它在工作流 2 和工作流 3 之间做出决定 - 而不是再次运行工作流 1。

从逻辑上讲,我不知道该怎么做。我对 UIPath 相当陌生,所以我对变量没有太多经验,但我认为一种方法可能是为每个工作流创建一个布尔变量,然后在每个工作流运行后,我将变量切换为那个工作流程。但是,我不知道该怎么做...

我能想到的另一种方法是使用一个 Switch(或多个 Switch)并使用 new Random().Next(1,3) 将表达式设置为 1 到 3 之间的随机数 - 但我仍然遇到它可能运行 Workflow 1 的问题两次。有没有办法告诉 Switch 活动以随机顺序执行所有案例?

【问题讨论】:

    标签: uipath


    【解决方案1】:

    这是一种可能的方法。确保每个工作流都移动到自己的文件中。创建一个包含所有文件名的集合。打乱列表,对其进行迭代,然后调用工作流文件。

    我的示例使用Integers,但您也可以使用Strings。请注意,我在 Invoke Code 活动中初始化了列表,但您可以在任何您喜欢的地方执行此操作并将列表作为 In 参数传递。

    这是调用代码活动中使用的代码,取自here

    Dim r As Random = New Random()
    Dim list As New List(Of Int32)(New Int32() {1, 2, 3})
    out_List = list.OrderBy(Function(a) r.Next()).ToList()
    

    这种方法的一个好处是添加或删除工作流文件只需要更改列表,而不需要更改主工作流本身。

    【讨论】:

      猜你喜欢
      • 2019-08-10
      • 2017-12-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多