跳转至

工作流设计器#

自动化集成中应用的所有逻辑都是使用自动化控制器工作流设计器设计的一组工作流。

设计器使用页面、任务、链接和转换器来处理拖放逻辑。

image1

  1. 页面列表
  2. 任务列表(工具栏)
  3. 活动页面工作流设计器
  4. 任务
  5. 链接
  6. 转换器

页面#

页面背后的理念是单独设计集成的每个功能,以便在开发、更新和支持步骤中保持组织有序并关注重点。

每个页面都有自己的工作流,然而,在运行时,控制器会同时加载整组页面,因此,尽管它们是单独设计的,但它们是一起执行的。

没有直接的方法可以链接不同页面之间的任务。

在右侧菜单的“页面”选项卡上,您可以添加[1]、删除[3]或编辑[2]页面。您可以通过更改其核心json代码来编辑页面,这对于导出和制作小修补程序非常有用。

image2

image3

Warning

在修补Json时要密切注意,因为可能会引入不一致并破坏工作流。

任务列表(工具栏)#

您可以使用的所有任务都将显示在此处。此列表应包含所有系统任务以及自定义任务(如果有可用的)。

此列表由HTML5 GUI config.json文件控制(请参阅有关位置和使用情况的相应部分)。其中重要的部分是:

image4

可用任务有一个搜索栏,它将使用增量搜索机制来过滤列表,在每个字符输入到字段中后仅显示相关匹配项。

活动页面工作流设计器#

这是活动/当前工作区。有关工作流编辑的所有操作将在此处执行。其中最重要/最常见的一些操作包括:

  • 将现有任务拖放到工作区周围,以使其更好地对齐/排序;
  • 可以使用位于右侧面板的任务列表中的拖放功能创建新的任务实例;
  • 可以创建新的链接,以将输出连接到输入;
  • 可以通过右键单击链接来定义、更改或删除转换器;
  • 可见区域可以进行平移、放大/缩小等。

任务#

任务是一组代码,可以激活、设置输入、发出输出、配置设置和/或发出错误和成功。

任务的目的是拥有能够执行简单、易于使用和理解以及高度可配置操作的业务逻辑原子集。这些任务代表用javascript/typescript编写的代码,因此,即使在运行时,也可以轻松创建和调试这些代码。

以下各节介绍了一组标准任务;但是,借助可扩展性功能,您还可以根据您的实施需求创建自定义任务。

在任务的设置部分,您可以指定名称、描述、颜色并填写任务可能具有的特定设置。如果任务是依赖于驱动程序的,它将继承已分配的驱动程序颜色,但可以使用设置中定义的颜色覆盖该颜色。

image5

链接#

链接是任务的输出值与任务的输入值之间的连接。链接允许在任务之间传递值。链接需要连接两端的类型相匹配。

image6

通过将输出与输入进行连接来创建链接。相同的输出可以与不同的输入链接,同时相同的输出也可以具有来自不同输入的值。

链接具有多种视觉提示,可帮助您直观地识别正在连接的任务的属性或事件:

用户操作 视觉提示
链接悬停 当鼠标悬停在链接上方时,将突出显示连接两个任务的线条以及允许重新绘制线条的边框点
link_highlight
事件悬停 当鼠标悬停在属性或事件上方时,将突出显示连接两个任务的线条,以帮助用户了解任务之间的关系
event_hover
任务单选 选择任务本身后,也会选择源自任务的所有链接
task_select
任务多选 选择多个任务时,只有两个任务共享的链接才会突出显示,以便用户能够区分不同的关系
multi_task_select

转换器#

任务可以具有输入和输出;因此,它们可以与其他任务进行链接。有时,一个任务的输出与另一个任务的所需输入之间没有匹配的类型,或者出于某种原因,有必要对任务的输出应用一些小型业务逻辑。

为了满足这一需求,可创建转换器。您也可以在单个链接上使用多个转换器,按调用顺序依次执行转换。

与任务一样,借助可扩展性功能,您还可以根据您的实施需求创建自定义转换器。

如果链接包含转换器,则会显示一个特殊图标image7

要在链接中添加/更改转换器,请右键单击链接,选择转换器,然后在弹出窗口中填写所需参数。

如果需要删除所有转换器,请执行相同的操作,但要选择删除

image8

image9