跳到主要内容
版本:Next

ParameterTransferActivity - 参数传递

概述​

属性值
节点名称参数传递
节点描述参数传递步骤
节点类型业务节点
命名空间CMS.Plugin.MesSuite.Activitys
程序集CMS.Plugin.MesSuite.Activitys
分类工序步骤
排序1
发布是
基类ProcessBusinessActivity

功能说明​

ParameterTransferActivity 是参数传递节点,用于监听触发信号变量,当触发信号变化时,将源变量的值传递到目标变量。该节点采用订阅模式,持续监听变量变化事件。

主要功能:

  • 监听触发信号变量的变化
  • 当触发信号为指定值时,读取源变量并写入目标变量
  • 当触发信号复位时,复位目标变量和传递结果
  • 支持多组参数传递配置

配置属性​

属性名显示名称类型必填默认值说明
TransferSuccessWriteValue传递成功下发值int否1传递成功时写入的值
TransferFailWriteValue传递失败下发值int否2传递失败时写入的值
IsRestVerificationResult复位传递结果bool否true触发信号复位时是否复位传递结果
TransferRestWriteValue复位结果下发值int否0复位时写入的值
ReadRetryCount读取重试次数int否10读取变量的重试次数
ReadRetryDelay读取重试延时int否500读取重试延时(毫秒)
WriteRetryCount写入重试次数int否10写入变量的重试次数
WriteRetryDelay写入重试延时int否500写入重试延时(毫秒)
StringTypesResetValue字符类型复位值string否string.Empty字符类型变量的复位值
DecimalTypesResetValue数值类型复位值string否0数值类型变量的复位值
OtherTypesResetValue其他类型复位值string否null其他类型变量的复位值

业务逻辑​

执行流程​

进入节点
│
▼
检查工位和功能是否启用
│
├─► 未启用 → 记录日志,返回
│
▼
获取参数传递配置列表
│
▼
创建变量监听通道
│
▼
订阅变量变化事件
│
▼
等待变量变化
│
├─► 触发信号 = 1 → 执行传递
│ │
│ ├─► 读取源变量
│ ├─► 写入目标变量
│ └─► 写入传递结果
│
└─► 触发信号 = 0 → 执行复位
│
├─► 复位传递结果
└─► 复位目标变量(可选)

参数传递配置​

每组参数传递包含以下配置:

配置项说明
Name参数名称
TransferSignal触发信号变量
SourceVariable源变量(读取)
TargetVariable目标变量(写入)
TransferResult传递结果变量

触发信号值​

信号值动作
1 / true执行参数传递
0 / false执行复位(如果启用)

流程数据项​

输入数据项​

数据项类型说明
ApplicationDataProcessModel工艺模型(包含参数传递配置)

输出数据项​

数据项类型说明
{参数名}_TransferVariable_Valuestring传递的变量值
{参数名}_TransferResult_Valuebool传递结果
{参数名}_ParameterTransfer_Counterint传递计数器
{参数名}_ParameterTransfer_ResultDataItemCollection传递结果集合

依赖服务​

服务接口说明
IVariableDataCache变量数据缓存
IFlowVariableService流程变量服务
IVariableTypeDeterminer变量类型判断器
ILmesMetricsLMES 指标服务

使用示例​

基本配置​

<ParameterTransferActivity Name="参数传递">
<TransferSuccessWriteValue>1</TransferSuccessWriteValue>
<TransferFailWriteValue>2</TransferFailWriteValue>
<IsRestVerificationResult>true</IsRestVerificationResult>
<TransferRestWriteValue>0</TransferRestWriteValue>
</ParameterTransferActivity>

自定义重试配置​

<ParameterTransferActivity Name="参数传递">
<ReadRetryCount>5</ReadRetryCount>
<ReadRetryDelay>300</ReadRetryDelay>
<WriteRetryCount>5</WriteRetryCount>
<WriteRetryDelay>300</WriteRetryDelay>
</ParameterTransferActivity>

工艺模型配置​

参数传递配置在工艺模型的 ParameterTransfers 中定义:

{
"ParameterTransfers": [
{
"Name": "产品码传递",
"TransferSignal": "Transfer_Trigger_1",
"SourceVariable": "PLC_SerialNumber",
"TargetVariable": "MES_SerialNumber",
"TransferResult": "Transfer_Result_1"
},
{
"Name": "工单号传递",
"TransferSignal": "Transfer_Trigger_2",
"SourceVariable": "PLC_OrderCode",
"TargetVariable": "MES_OrderCode",
"TransferResult": "Transfer_Result_2"
}
]
}

相关节点​

注意事项​

  1. 该节点采用订阅模式,会持续监听变量变化
  2. 需要在工艺模型中配置参数传递列表
  3. 触发信号变量必须存在且可监听
  4. 复位功能会根据变量类型自动选择复位值
  5. 节点退出模式为手动(Manual),需要外部触发退出
  6. 流程取消时会自动取消订阅