同步#
Synchronize任务用于在任务之间同步数据。
输入#
| 名称 | 数据类型 | 值 | 是否是触发器 | 描述 |
|---|---|---|---|---|
<custom list> | <custom> | 否 | 要同步的输入 | |
Auto Input | None | 根据链接的来源创建新的输入和输出 | ||
| 激活 | Any | 是 | 激活任务执行 |
输出#
| 名称 | 数据类型 | 值 | 描述 |
|---|---|---|---|
<custom list> | <custom> | 输出已同步 | |
Auto Output | None | 根据链接的目标创建新的输出和输入 | |
| 成功 | Boolean | 如果没有问题,则发出true | |
| 错误 | Error | 处理此任务期间发生的错误 |
自动输入/输出#
此任务实现了动态输入/输出的自动创建,可显著缩短配置时间。
行为相当简单。只需链接到Link here to add new输入,便会创建源内容的副本(具有相同的名称和数据类型),并会在这两个元素之间创建链接。此外,您可以将Link from here to add new输出拖到另一个任务的输入中,以创建名称和类型相同的新输出并链接它们。
设置#
在General选项卡中,您有常用设置和以下选项设置:
| 名称 | 数据类型 | 值 | 默认 | 描述 |
|---|---|---|---|---|
| 到期时间 | Integer | 60000 | 在Activate触发之前保留输入的最长时间(以毫秒为单位) | |
| 全部定义时发出 | Boolean | False | 只有在同一区域/上下文中已填充所有输入时才会发出输出 |
在Inputs/Outputs选项卡中,您有以下选项设置:
| 名称 | 数据类型 | 值 | 默认 | 描述 |
|---|---|---|---|---|
| 名称 | String | 输入和输出的名称 | ||
| 易记名称 | String | 输入/输出中将显示的文本 | ||
| 类型 | enum | LongDecimalDateTimeBooleanStringInteger... | 输入/输出值的类型 | |
| 集合类型 | enum | NoneArrayMap | 输入/输出的集合类型 |
行为#
上面的示例显示了一个设备接口,它对装载器和卸载器使用了相同的事件。确定我们正在处理哪种场景的唯一方法是通过使用事件提供的$Port变量来判断。现在,假设这两个事件同时发生,并且您希望确保装载器执行TrackIn且卸载器执行TrackOut。
如果没有Synchronize任务,将需要更多的逻辑/任务来确保$MagazineId变量在TrackIn和TrackOut上分别都是正确的。
根据设置,当Activate输入被立即触发或仅当所有输入都已填充时,输出将发出相应的值。
如果在指定的超时时段内未触发Activate,则接收到的所有输入值都将被丢弃。
备注#
此任务使用基于上下文的数据的特定结构,称为zone。有关此主题的更多信息,请参阅区域页面。



