CertFlow 合格证打印操作手册¶
本文档详细说明打印功能的每个按钮、右键菜单和页面跳转行为
目录¶
页面跳转关系图¶
┌─────────────────────────────────────────────────────────────────────┐
│ 页面跳转关系图 │
└─────────────────────────────────────────────────────────────────────┘
┌──────────────┐ ┌──────────────┐
│ 首页 │ │ 导入页 │
│ (index=0) │ │ (index=1) │
└──────┬───────┘ └──────┬───────┘
│ │
└──────────────┬────────────────────┘
↓
┌──────────────┐
│ 查询页 │ ←─────────────────┐
│ (index=2) │ │
└──────┬───────┘ │
│ │
┌─────────────────────┼─────────────────────┐ │
│ │ │ │
↓ ↓ ↓ │
┌───────┐ ┌───────────┐ ┌───────┐ │
│工具栏 │ │ 右键菜单 │ │导航按钮│ │
│打印按钮│ │打印合格证 │ │🖨 打印│ │
└───┬───┘ └─────┬─────┘ └───┬───┘ │
│ │ │ │
└────────────────────┼────────────────────┘ │
↓ │
┌──────────────┐ │
│ 打印页 │ ────────────────┘
│ (index=3) │ (返回首页)
└──────────────┘
关键跳转:查询页 → 打印页 会自动携带选中记录的ID
查询页面操作详解¶
界面区域说明¶
┌─────────────────────────────────────────────────────────────────────┐
│ [选择列] [📋 复制] [🙈 隐藏] [🏷️ 打印合格证] [🔍 搜索] │ ← 工具栏
├─────────────────────────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ ← 筛选行
│ │产品型号: [▼]│ │订单号: [▼] │ │状态: [▼] │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
├─────────────────────────────────────────────────────────────────────┤
│ ☑ | ID | 产品型号 | 订单号 | 客户 | 生产状态 | 合格证编号 | ... │ ← 表头
│ ☐ | 1 | Z41H-25C | PO001 | XX公司 | 生产中 | V2506001 | │
│ ☐ | 2 | D942X-10Q| PO002 | YY公司 | 已完成 | 未生成 | │ ← 数据行
│ ☐ | 3 | ... | ... | ... | ... | ... | │
├─────────────────────────────────────────────────────────────────────┤
│ 选中 0 条 第 1 / 10 页 [◀ 上一页] [下一页 ▶]│
└─────────────────────────────────────────────────────────────────────┘
工具栏按钮详解¶
按钮 |
图标 |
点击效果 |
是否弹窗 |
触发后页面跳转 |
|---|---|---|---|---|
选择列 |
- |
弹出自定义列对话框,勾选需要显示的字段 |
✅ 是 |
无 |
📋 复制 |
📋 |
将选中行的数据复制到剪贴板(JSON格式) |
❌ 否 |
无 |
🙈 隐藏 |
🙈 |
将选中行的 |
❌ 否 |
无 |
🏷️ 打印合格证 |
🏷️ |
跳转到打印页,自动携带选中ID |
❌ 否 |
跳转到 index=3 |
🔍 搜索 |
- |
根据筛选条件刷新表格 |
❌ 否 |
无 |
筛选条件说明¶
筛选字段 |
操作符 |
说明 |
|---|---|---|
产品型号 |
包含(contains) |
模糊匹配 |
订单号 |
包含(contains) |
模糊匹配 |
生产状态 |
等于(eq) |
精确匹配 |
是否已编号 |
为空/不为空 |
判断合格证编号是否存在 |
右键菜单详解¶
在表格任意行右键点击,弹出菜单:
┌─────────────────────────────────────────────────────────────────┐
│ 📝 自动编号 ← 为选中行生成合格证编号 │
├─────────────────────────────────────────────────────────────────┤
│ ✏️ 手动编号 ← 手动输入前缀和起始号 │
├─────────────────────────────────────────────────────────────────┤
│ 📋 复制编号 ← 将源行的编号复制到其他选中行 │
├─────────────────────────────────────────────────────────────────┤
│ ──────────── │
├─────────────────────────────────────────────────────────────────┤
│ 📅 设置年月 ← 将计划日期设为编号前缀年月 │
├─────────────────────────────────────────────────────────────────┤
│ 📋 填充计划单号 ← 批量填充生产计划单号 │
├─────────────────────────────────────────────────────────────────┤
│ ──────────── │
├─────────────────────────────────────────────────────────────────┤
│ 🏷️ 打印合格证 ← 跳转到打印页,自动携带选中ID │
├─────────────────────────────────────────────────────────────────┤
│ ──────────── │
├─────────────────────────────────────────────────────────────────┤
│ 🙈 隐藏 ← 隐藏选中行 │
├─────────────────────────────────────────────────────────────────┤
│ 👁 取消隐藏 ← 取消隐藏(需先清除筛选) │
├─────────────────────────────────────────────────────────────────┤
│ ──────────── │
├─────────────────────────────────────────────────────────────────┤
│ 📎 导出选中行 ← 导出为Excel文件 │
└─────────────────────────────────────────────────────────────────┘
各菜单项的详细行为¶
📝 自动编号-自动编号
属性 |
说明 |
|---|---|
触发条件 |
至少选中1行 |
执行动作 |
调用 |
编号格式 |
|
弹窗确认 |
✅ 是(生成后询问"是否跳转打印") |
结果反馈 |
状态栏显示"已编号 X 条(前缀=V)" |
✏️ 手动编号-手动编号
属性 |
说明 |
|---|---|
触发条件 |
至少选中1行 |
执行动作 |
弹出输入框,输入前缀和起始编号 |
编号格式 |
|
弹窗确认 |
✅ 是(输入对话框 + 确认对话框) |
结果反馈 |
状态栏显示"已编号 X 条(手动)" |
📋 复制编号-复制编号
属性 |
说明 |
|---|---|
触发条件 |
选中多行,其中一行已有编号 |
执行动作 |
将源行的编号复制到其他选中行 |
弹窗确认 |
❌ 否 |
结果反馈 |
状态栏显示"复制编号 X 条" |
📅 设置年月-设置年月
属性 |
说明 |
|---|---|
触发条件 |
至少选中1行 |
执行动作 |
将 |
弹窗确认 |
❌ 否 |
结果反馈 |
状态栏显示"已设置 X 条计划日期" |
🏷️ 打印合格证-打印合格证
属性 |
说明 |
|---|---|
触发条件 |
至少选中1行 |
执行动作 |
发射 |
页面跳转 |
自动切换到打印页(index=3) |
数据传递 |
打印页自动加载选中ID对应的数据 |
🙈 隐藏-隐藏
属性 |
说明 |
|---|---|
触发条件 |
至少选中1行 |
执行动作 |
设置 |
弹窗确认 |
❌ 否 |
结果反馈 |
行立即从表格消失 |
📎 导出选中行-导出为excel文件
属性 |
说明 |
|---|---|
触发条件 |
至少选中1行 |
执行动作 |
弹出文件保存对话框,导出为Excel |
弹窗确认 |
✅ 是(文件保存对话框) |
结果反馈 |
状态栏显示"已导出 X 条" |
打印页面操作详解¶
Tab页概览¶
┌─────────────────────────────────────────────────────────────────────┐
│ [打印] │ [数据源] │ [打印历史] │ [设置] │ ← Tab标签
├─────────────────────────────────────────────────────────────────────┤
│ │
│ 当前Tab页内容 │
│ │
└─────────────────────────────────────────────────────────────────────┘
Tab 0: 打印 - 左侧控制面板¶
┌─────────────────────────────────────────────────────────────────────┐
│ ┌─ 合格证模板 ─────────────────────────────────────────────────────┐│
│ │ [全中文合格证模板 ▼] ││
│ │ ├─ 全中文合格证模板 → template_style=1, 底图已印MPa ││
│ │ ├─ 中英文合格证模板 → template_style=2, 显示"2.5MPa" ││
│ │ ├─ 全英文合格证模板 → template_style=3, 显示"2.5MPa" ││
│ │ └─ 俄英文合格证模板 → template_style=4, 显示"2.5MPa" ││
│ └──────────────────────────────────────────────────────────────────┘│
│ │
│ ┌─ 产品信息 ───────────────────────────────────────────────────────┐│
│ │ 产品名称:[高性能蝶柜 ] ││
│ │ 产品型号:[D942X-10Q ] ││
│ │ 公称通径:[DN100 ] ← 可手动修改 ││
│ │ 公称压力:[1.0MPa ] ← 可手动修改 ││
│ │ 适用温度:[≤120℃ ] ││
│ │ 适用介质:[水 ] ││
│ │ 出厂年月:[2026.06 ] ← 格式: YYYY.MM ││
│ │ 检验标准:[GB/T 13927-2008 ] ││
│ │ 检验工号:[ZQ001 ] ││
│ └──────────────────────────────────────────────────────────────────┘│
│ │
│ ┌─ 合格证编号设置 ─────────────────────────────────────────────────┐│
│ │ 编号模式:[读取编号 ▼] ││
│ │ ├─ 读取编号 → 从Certificate读取已有编号 ││
│ │ ├─ 正则式自动刷新编号 → V+YYMM+流水号 ││
│ │ ├─ 直接复制编号 → 所有页使用同一编号 ││
│ │ └─ 三位流水编号 → V+三位流水号 ││
│ │ 前缀:[V ] 起始编号:[1 ] 数量:[3 ] 后缀:[ ] ││
│ └──────────────────────────────────────────────────────────────────┘│
│ │
│ ┌─ 打印选项 ───────────────────────────────────────────────────────┐│
│ │ ☑ 自动填写口径压力 ← 从型号自动解析DN/PN ││
│ │ ☑ 首张打印前预览 ← 打印前弹出预览对话框 ││
│ │ ☑ 保存打印日志到数据库 ← 写入print_logs表 ││
│ └──────────────────────────────────────────────────────────────────┘│
└─────────────────────────────────────────────────────────────────────┘
Tab 0: 打印 - 右侧预览面板¶
┌─────────────────────────────────────────────────────────────────────┐
│ 实时预览 │
│ [◀ 上一张] [1/3] [下一张 ▶] │
├─────────────────────────────────────────────────────────────────────┤
│ ┌─────────────────────────────────────────────────────────────────┐ │
│ │ │ │
│ │ 60mm × 100mm 预览区域 │ │
│ │ │ │
│ │ 产品名称:高性能蝶阀 │ │
│ │ 产品型号:D942X-10Q │ │
│ │ 公称通径:DN100 │ │
│ │ 公称压力:1.0MPa │ │
│ │ 工作温度:≤120℃ │ │
│ │ 适用介质:水 │ │
│ │ 检验标准:GB/T 13927-2008 │ │
│ │ 检验工号:ZQ001 │ │
│ │ 出厂日期:2026.06 │ │
│ │ 产品编号:V2506001 │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────────┘
↓ 底部按钮区域
┌────────────┬────────────┬────────────┬────────────┐
│ 单次打印 │ 批量打印 │ 打印预览 │ 生成PDF │
└────────────┴────────────┴────────────┴────────────┘
Tab 0 按钮详解¶
按钮 |
点击效果 |
执行动作 |
弹窗 |
页面影响 |
|---|---|---|---|---|
单次打印 |
弹出预览对话框 |
用户确认后调用 |
✅ 预览对话框 |
无 |
批量打印 |
弹出确认对话框 |
按数量循环调用 |
✅ 确认对话框 |
进度条显示 |
打印预览 |
弹出大窗口 |
仅显示HTML预览,不打印 |
✅ 预览窗口 |
无 |
生成PDF |
保存文件对话框 |
调用 |
✅ 文件对话框 |
无 |
◀ 上一张 |
切换编号 |
预览上一张编号的样式 |
❌ |
预览刷新 |
下一张 ▶ |
切换编号 |
预览下一张编号的样式 |
❌ |
预览刷新 |
Tab 1: 数据源¶
┌─────────────────────────────────────────────────────────────────────┐
│ [加载数据] [刷新] [生成合格证] [查模板] [一键打印] [筛选型号...] │
├─────────────────────────────────────────────────────────────────────┤
│ ID | 产品名称 | 产品型号 | 产品规格 | 订货单位 | 项目名称 | ... │
│ 1 | 蝶阀 | D942X-10Q| DN100 | XX公司 | 项目A | │
│ 2 | 闸阀 | Z41H-25C | DN150 | YY公司 | 项目B | │
│ 3 | 截止阀 | J41H-16C | DN50 | ZZ公司 | 项目C | │
└─────────────────────────────────────────────────────────────────────┘
↓ 双击任意行
┌─────────────────────────────────────────────────────────────────────┐
│ 匹配的历史模板(双击选择): │
│ ┌─────────────────────────────────────────────────────────────────┐│
│ │ [1] D942X-10Q | DN100 | PN1.0MPa | ≤120℃ | 水 | GB/T 13927 ││
│ │ [2] D942X-10Q | DN150 | PN1.0MPa | ≤120℃ | 水 | GB/T 13927 ││
│ └─────────────────────────────────────────────────────────────────┘│
└─────────────────────────────────────────────────────────────────────┘
按钮 |
点击效果 |
与打印Tab的交互 |
|---|---|---|
加载数据 |
从数据库加载SalePlan |
无 |
刷新 |
重新加载数据 |
无 |
生成合格证 |
调用 |
生成后可切换到打印Tab |
查模板 |
从 |
结果在下方列表显示 |
一键打印 |
完整流程:生成→查模板→打印→回填 |
自动切换到打印Tab |
双击数据行 |
填充打印表单 + 自动查模板 |
填充左侧表单 + 查询模板 |
双击模板行 |
应用模板 + 更新Certificate |
填充左侧表单 + 更新数据库 |
Tab 2: 打印历史¶
┌─────────────────────────────────────────────────────────────────────┐
│ [刷新] [筛选...] │
├─────────────────────────────────────────────────────────────────────┤
│ ID | 合格证编号 | 产品型号 | DN | PN | 打印机 | 状态 | 打印时间 │
│ 101| V2506001 | D942X-10Q|100 |1.0MPa|EPSON | success|2026-06-06 │
│ 100| V2506002 | D942X-10Q|100 |1.0MPa|EPSON | success|2026-06-06 │
│ 99 | V2506003 | D942X-10Q|100 |1.0MPa|EPSON | success|2026-06-06 │
└─────────────────────────────────────────────────────────────────────┘
每条记录包含完整的51个Access SignTb兼容字段。
Tab 3: 设置¶
配置项 |
可选值 |
默认值 |
影响范围 |
|---|---|---|---|
默认打印机 |
系统已安装打印机列表 |
系统默认 |
GDI打印 |
纸张大小 |
60x100mm / 130x75mm / A4 |
60x100mm |
打印尺寸 |
页边距(上) |
0-20mm |
3mm |
HTML预览 |
页边距(下) |
0-20mm |
2mm |
HTML预览 |
页边距(左) |
0-20mm |
3mm |
HTML预览 |
页边距(右) |
0-20mm |
3mm |
HTML预览 |
参数补充对话框¶
触发条件¶
当Certificate记录缺少以下任一参数时自动弹出:
公称通径 (DN) 为空
公称压力 (PN) 为空
工作温度 为空
适用介质 为空
对话框结构¶
┌─────────────────────────────────────────────────────────────────────┐
│ 参数补充 - D942X-10Q [✕] │
├─────────────────────────────────────────────────────────────────────┤
│ 产品型号:D942X-10Q │
│ 以下参数缺失或需确认,请补充后继续打印: │
├─────────────────────────────────────────────────────────────────────┤
│ ┌─ 基本参数 ─────────────────────────────────────────────────────┐ │
│ │ 公称通径 (DN):[DN100 ] ← 必填,否则下次再弹│ │
│ │ 公称压力 (PN):[1.0MPa ] ← 必填 │ │
│ │ 工作温度: [≤120℃ ] ← 必填 │ │
│ │ 适用介质: [水 ] ← 必填 │ │
│ └─────────────────────────────────────────────────────────────────┘ │
│ ┌─ 检验参数 ─────────────────────────────────────────────────────┐ │
│ │ 试压标准: [GB/T 13927-2008 ] ← 可选 │ │
│ │ 检验工号: [ZQ001 ] ← 可选 │ │
│ └─────────────────────────────────────────────────────────────────┘ │
│ ┌─ 材质参数 ─────────────────────────────────────────────────────┐ │
│ │ 阀体材质: [WCB ▼] ← 下拉可选,可手动输入│ │
│ │ 阀杆材质: [2Cr13 ▼] │ │
│ │ 启闭件材质: [2Cr13 ▼] │ │
│ └─────────────────────────────────────────────────────────────────┘ │
│ │
│ [跳过全部(留空)] [确认并打印] [取消] │
└─────────────────────────────────────────────────────────────────────┘
按钮行为详解¶
按钮 |
行为 |
数据库操作 |
下次同型号 |
|---|---|---|---|
确认并打印 |
保存所有填写参数 |
写入Certificate + 自学习表 |
直接命中,不再弹窗 |
跳过全部 |
所有参数留空 |
不写入自学习表 |
下次仍会弹窗 |
取消 |
关闭对话框 |
无操作 |
取消本次打印 |
自学习机制¶
用户确认后,系统自动记录到配置表:
参数类型 |
写入表 |
下次效果 |
|---|---|---|
口径(DN) |
|
同口径字符串直接转换 |
压力+型号 |
|
同型号自动填充PN |
温度/介质 |
|
同型号自动填充 |
完整操作流程图¶
┌─────────────────────────────────────────────────────────────────────┐
│ 完整打印流程 │
└─────────────────────────────────────────────────────────────────────┘
┌─────────────┐
│ 1. 导入Excel │
│ (导入页面) │
└──────┬──────┘
↓
┌─────────────┐
│ 2. 查询筛选 │
│ (查询页面) │
└──────┬──────┘
↓
┌─────────────┐
│ 3. 勾选记录 │
│ (多选) │
└──────┬──────┘
↓
┌─────────────────────────────────────────────────────────────┐
│ 4. 选择操作方式 │
├─────────────────────────┬───────────────────────────────────┤
│ 方式A:工具栏按钮 │ 方式B:右键菜单 │
│ 「🏷️ 打印合格证」 │ 「🏷️ 打印合格证」 │
└────────────┬────────────┴───────────────┬───────────────────┘
↓ ↓
┌─────────────────────────────────────────────────────────────┐
│ 5. 自动跳转到打印页面 (index=3) │
│ 携带选中记录的ID列表 │
└─────────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────┐
│ 6. 检查Certificate是否存在 │
├─────────────────────────┬───────────────────────────────────┤
│ 不存在 │ 已存在 │
│ 调用create_certificates│ 直接使用现有记录 │
└────────────┬────────────┴───────────────┬───────────────────┘
↓ ↓
┌─────────────────────────────────────────────────────────────┐
│ 7. 检查参数完整性 │
├─────────────────────────┬───────────────────────────────────┤
│ 参数完整 │ 参数缺失 │
│ 跳过补充对话框 │ 弹出参数补充对话框 │
└────────────┬────────────┴───────────────┬───────────────────┘
↓ ↓
┌─────────────────────────────────────────────────────────────┐
│ 8. 用户确认打印 │
├─────────────────────────┬───────────────────────────────────┤
│ 单次打印 │ 批量打印 │
│ 弹出预览对话框 │ 确认数量后执行 │
└────────────┬────────────┴───────────────┬───────────────────┘
↓ ↓
┌─────────────────────────────────────────────────────────────┐
│ 9. GDI精确打印 (win32print) │
├─────────────────────────┬───────────────────────────────────┤
│ 成功 │ 失败 │
│ 记录success日志 │ 降级为HTML打印 + 记录failed │
└────────────┬────────────┴───────────────┬───────────────────┘
↓ ↓
┌─────────────────────────────────────────────────────────────┐
│ 10. 记录打印日志 (print_logs表) │
│ 51字段完全兼容Access SignTb │
└─────────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────┐
│ 11. 铭牌刻印系统读取 │
│ SQLite print_logs表 → Access链接表/导出.mdb │
└─────────────────────────────────────────────────────────────┘
常见问题¶
Q1: 查询页面点击「打印合格证」后没有反应?¶
A: 检查是否至少选中了一行记录。需要先勾选表格左侧的复选框。
Q2: 打印页面没有自动填充产品信息?¶
A:
确认是从查询页面通过「打印合格证」按钮跳转过来的
检查选中的记录是否已生成Certificate(可在数据源Tab查看)
Q3: 参数补充对话框反复弹出?¶
A: 说明必填参数(DN/PN/温度/介质)留空了。点击「确认并打印」前请填写完整。
Q4: 如何批量打印不同型号的产品?¶
A:
在查询页面勾选多行(可跨页)
点击「打印合格证」
系统会为每条记录独立生成Certificate
在打印页使用「批量打印」功能
Q5: GDI打印失败怎么办?¶
A: 系统会自动降级为HTML打印,在浏览器中手动打印即可。长期失败请检查:
打印机是否就绪
纸张尺寸是否设置为60×100mm
打印机驱动是否支持自定义纸张
Q6: 如何查看历史打印记录?¶
A: 进入打印页面的「打印历史」Tab页,可筛选查询。
附录:编号格式说明¶
模式 |
格式 |
示例 |
适用场景 |
|---|---|---|---|
正则式 |
V{YYMM}{流水号} |
V2506001 |
默认模式,含年月信息 |
三位流水 |
V{3位流水} |
V001 |
简单流水号 |
直接复制 |
{指定编号} |
2506-001 |
特殊编号规则 |
读取编号 |
从Certificate读取 |
- |
已编号产品 |
文档版本: 2.0 | 更新日期: 2026-06-06