跳到主要内容
版本:Next

PrintInitializeActivity - 打印初始化

概述

属性
节点名称打印初始化
节点描述打印数据初始化
节点类型业务节点
命名空间CMS.Plugin.MesSuite.Activitys
程序集CMS.Plugin.MesSuite.Activitys
分类工序步骤
排序8
发布
基类BusinessActivity

功能说明

PrintInitializeActivity 是打印初始化节点,用于准备标签打印所需的数据。该节点会根据产品型号和工位配置,查询标签模板、初始化打印数据源,并支持从变量、流程数据项、条码生成等多种方式获取打印数据。

配置属性

属性名显示名称类型必填默认值说明
WriteRetryCount下发重试次数int3下发变量的重试次数
WriteRetryDelay下发重试延时int500下发重试延时(毫秒)

业务逻辑

执行流程

开始


初始化打印结果数据项


检查工艺模型

├─► 为空 → 设置结果=2,返回


检查工位打印机配置

├─► 为空 → 设置结果=2,返回


获取产品型号

├─► 从追溯数据获取

└─► 从产品识别码获取

├─► 为空 → 设置结果=2,返回


遍历打印机配置

├─► 查询打印代理配置

├─► 查询标签打印模板

└─► 初始化打印数据映射

├─► 变量类型 → 读取变量值
├─► 流程数据项类型 → 获取流程数据
└─► 生成条码类型 → 调用条码生成


构建打印数据模型列表


结束

数据映射类型

类型说明
Variable从变量读取值
FlowItems从流程数据项获取值
GenerateBarcode调用条码生成服务生成条码

流程数据项

输入数据项

数据项类型说明
ApplicationDataProcessModel工艺模型
LabelPrinterstring打印机名称(多个用逗号分隔)
LabelPrintSerialNumberValuestring产品条码
LabelPrintProductValuestring产品型号识别码
LabelPrintDataSourceDictionary<string, string>扩展打印数据源

输出数据项

数据项类型说明
PrintDataModelList<PrintDataModel>打印数据模型列表
LabelPrintResultValueint打印初始化结果
LabelPrintDescriptionValuestring打印初始化说明
ProductModelProductModel产品型号模型
TraceModelTraceModel追溯数据模型

依赖服务

服务接口说明
IProductProvider产品提供者
ITraceProvider追溯提供者
ILabelProvider标签提供者
ISettingManager设置管理器
IBarcodeProvider条码提供者
IFlowVariableService流程变量服务
IJsonSerializerJSON 序列化器

使用示例

基本配置

<PrintInitializeActivity Name="打印初始化">
<WriteRetryCount>3</WriteRetryCount>
<WriteRetryDelay>500</WriteRetryDelay>
</PrintInitializeActivity>

设置打印参数

<VariableWriteActivity Name="设置打印机">
<Variable>LabelPrinter</Variable>
<Value>Printer1,Printer2</Value>
</VariableWriteActivity>

<VariableWriteActivity Name="设置产品码">
<Variable>LabelPrintSerialNumberValue</Variable>
<Value>{产品码}</Value>
</VariableWriteActivity>

<PrintInitializeActivity Name="打印初始化" />

典型流程配置

设置打印参数 → 打印初始化 → 标签打印
<!-- 设置打印机和产品码 -->
<VariableWriteActivity Name="设置打印参数">
<Variable>LabelPrinter</Variable>
<Value>DefaultPrinter</Value>
</VariableWriteActivity>

<PrintInitializeActivity Name="打印初始化">
<WriteRetryCount>3</WriteRetryCount>
</PrintInitializeActivity>

<ConditionActivity Name="初始化结果判断">
<Condition>Flow.DataItems["LabelPrintResultValue"] != 2</Condition>
<TrueBranch>
<PrintLabelActivity Name="标签打印" />
</TrueBranch>
<FalseBranch>
<LogActivity Name="记录初始化失败" />
</FalseBranch>
</ConditionActivity>

系统配置要求

打印代理配置

需要在系统设置中配置打印代理:

{
"PrintAgentConfig": [
{
"DisplayName": "Printer1",
"PrintAgentIP": "192.168.1.100:9100",
"PrinterName": "ZebraPrinter",
"PrintTemplate": "D:\\Templates"
}
]
}

相关节点

注意事项

  1. 此节点当前未发布(Visible = false)
  2. 工位打印机配置必须存在
  3. 产品型号必须能够查询到
  4. 标签模板必须在系统中配置
  5. 条码生成需要配置有效的条码规则