UiPath Studio

UiPath Studio 指南

状态机

状态机是一种自动化类型,它在执行过程中使用有限数量的状态。当被某个活动触发时,状态机可以进入一种状态,当另一个活动被触发时,就会退出该状态。

状态机的另一个重要方面是转换,因为转换还用于添加从一种状态跳转到另一种状态的条件。转换是由箭头或者状态之间的分支来表示。

There are two activities that are specific to state machines, namely State and Final State, found under Workflow > State Machine.

Note:

您只能创建一个初始状态,但是可以有多个“最终状态”。

“状态”活动包括三个部分,即“入口”、“出口”和“转换”,而“最终状态”只有一个部分,即“入口”。这两个活动都可以通过双击来展开,从而查看更多信息并进行编辑。

“入口”和“出口”部分用于为所选状态添加入口和出口触发器,而“转换”部分则显示链接到所选状态的所有转换。

当双击转换时,转换就会展开,就像“状态”活动一样。它们包含三个部分:“触发器”、“条件”和“操作”,用于为下一个状态添加触发器,或者添加要执行活动或序列的条件。

如何使用状态机的示例

为了举例说明如何使用状态机,我们将制作一个我们在前一章中做过的猜谜游戏,唯一的区别是我们将尝试猜测一个 1 到 100 之间的数字。

  1. 创建一个空白流程,然后在“设计”选项卡中的“文件”组中,选择“新建”>“状态机”。系统将显示“新建状态机”窗口。

Note:

You can also add a State Machine activity to the Designer panel to create a new state machine automation.

  1. 在“名称”字段中,键入自动化的名称,例如“第一个状态机”,然后保留默认的项目位置或者添加字文件夹。单击“创建”。“设计器”面板会相应地更新。
  2. 创建两个整数变量:InitialGuessRandomNumber。第一个变量存储您的猜测,而第二个变量存储随机数。
  3. 向“设计器”面板中添加“状态”活动,并将其连接到“开始”节点。这是初始状态,用来生成一个随机数。
  4. 双击活动。此“状态”活动将在“设计器”面板中展开显示。
  5. 在“属性”面板的“显示名称”字段中,键入“初始化随机数字”。这使您能够很容易地区分状态。
  6. In the Entry section, add an Assign activity.
  7. 在“至”字段中,添加 RandomNumber 变量。
  8. 在“值”字段中,键入 new Random().Next(1,100)此表达式生成一个随机数。
  9. 返回到主项目视图并添加一个新的“状态”活动。
  10. 将其连接到先前添加的活动。
  11. 双击上次添加的“状态”活动。此活动将在“设计器”面板中展开显示。
  12. 在“属性”面板的“显示名称”字段中,键入“猜数字”。此状态用于提示用户猜一个数字。
  13. In the Entry section, add an Input Dialog activity.
  14. 选择“输入对话框”,然后在“属性”面板中添加适当的“标签”和“标题”,以提示用户猜测介于 1 和 100 之间的数字。
  15. 在“结果”字段中,添加 InitialGuess 变量。这个变量存储用户的猜测值。
  16. 返回到主项目视图,并创建一个从“猜数字”状态指向自身的转换。
  17. 双击转换。转换将在“设计器”面板中展开显示。
  18. 在“属性”面板的“显示名称”字段中,键入“尝试更小数字”。此消息显示在箭头上,有助于更轻松地运行自动化。
  19. 在“条件”部分中,键入 InitialGuess > RandomNumber这将验证用户的猜测是否大于随机数。
  20. In the Action section, add a Message Box activity.
  21. 在“文本”字段中,键入类似于下面的内容:“您猜的数字太大。请尝试一个更小的数字。”当用户猜测数字大于随机数时,系统将显示此消息。
  22. 返回到主项目视图,并创建一个从“猜数字”状态指向自身的新转换。
  23. 双击转换。转换将在“设计器”面板中展开显示。
  24. 在“属性”面板的“显示名称”字段中,键入“尝试更大数字”。此消息显示在箭头上,有助于更轻松地运行自动化。
  25. 在“条件”部分中,键入 InitialGuess < RandomNumber这将验证猜测是否小于随机数。
  26. 在“操作”部分中,添加“消息框”活动。
  27. 在“文本”字段中,键入类似于下面的内容:“您猜的数字太小。请尝试一个更大的数字。”当用户猜测数字小于随机数时,系统将显示此消息。
  28. 返回到主项目视图,并向“设计器”面板中添加“最终状态”活动。
  29. 连接从“猜数字”活动到“最终状态”的转换。
  30. 在“属性”面板的“显示名称”字段中,键入“猜对了”。
  31. 在“条件”字段中,键入 InitialGuess = RandomNumber这是此自动化进入最终状态并结束的条件。
  32. 双击“最终状态”活动。该活动将在“设计器”面板中展开显示。
  33. 在“入口”部分中,添加“消息框”活动。
  34. 在“文本”字段中,键入类似于下面的内容:“恭喜。您猜对了! 数字为“ + RandomNumber.ToString + “。”当用户猜对数字时,这是要显示的最终消息。
    最终的项目应如以下屏幕截图所示。
  1. 按 F5。系统将正确执行自动化。

9个月前更新



状态机


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.