5.2 KiB
5.2 KiB
Uft30ChangeCode(UFT30 代码转换工具)
一款基于 Qt 6 + MinGW 开发的桌面工具,用于将 UF20 业务代码转换为 UFT3 格式,并提供功能查询、代码检索、元数据更新、数据映射等配套能力。UI 采用 ElaWidgetTools 组件库。
- 当前版本:v1.4.0
- 运行平台:Windows
- 界面框架:Qt Widgets + ElaWidgetTools
功能特性
| 模块 | 说明 |
|---|---|
| 业务转码 | 将 UF20 函数批量转换为 UFT3 函数格式,支持进度显示与中止 |
| 功能查询 | UF20 / UFT3 功能(函数)查找,支持 2.0 账户功能查询 |
| 代码检索 | "转码业务" / "非转码业务" 调用链路分析,支持涉及文件与调用链导出 |
| 元数据更新 | 更新 UF20 / UFT3 标准字段、数据类型、接口数据等,支持增量更新与强制全量更新 |
| 数据映射 | 表映射、函数映射 |
| 设置 | 配置 UFT30 / UF20 项目路径、账户环境路径、转码生成路径等 |
| 其它 | 在线帮助文档、关于页、版本更新提示;全局文字可选中复制、表格 Ctrl+C 导出 |
目录结构
Uft30ChangeCode/
├─ main.cpp # 程序入口,安装全局文字可复制过滤器
├─ Uft30ChangeCode.pro # qmake 工程文件
├─ build.bat # 一键构建脚本(Release)
├─ build_advanced.bat # 进阶构建脚本
├─ config/
│ └─ change_code.ini # 默认配置模板(构建时按需部署到 bin/uf2touft3/)
├─ src/
│ ├─ mainwindow/ # 主窗口
│ ├─ pages/ # 各功能页面(batchconvert / codesearch / functionsearch / metadatupdate / datamapping / settings / about)
│ ├─ metadataupdate/ # 元数据扫描与处理(UF2 / UFT3 接口、数据类型、字段等)
│ ├─ pythonrunner/ # 调用外部转码工具(uf2touft3.exe)
│ ├─ components/ # 自定义控件
│ └─ utils/ # 公共工具(日志、配置读取、调用链分析、版本检查、常量等)
├─ 3rd/ # 第三方库(ElaWidgetTools 等)
├─ resources/ resources.qrc # 图标等资源
├─ help/ # 帮助文档(Writerside)
└─ update_info.json # 版本发布说明
构建
环境要求
- Qt 6.6.2(mingw_64)
- MinGW 11.2.0(Qt Tools 自带)
build.bat 中默认路径如下,如与本机不一致请自行修改:
set QT_PATH=D:\01.InstallInfo\InstallPath\QT\6.6.2\mingw_64
set MINGW_PATH=D:\01.InstallInfo\InstallPath\QT\Tools\mingw1120_64
一键构建
build.bat
脚本会依次执行:关闭正在运行的程序 → 清理旧构建产物 → qmake → mingw32-make release → windeployqt 部署 Qt 运行库 → 按需部署默认 change_code.ini。
构建产物:bin\Uft30ChangeCode.exe
注意:外部转码工具
bin\uf2touft3\uf2touft3.exe需自行放置,程序运行时依赖它完成实际转码。
手动构建
qmake Uft30ChangeCode.pro -spec win32-g++
mingw32-make release
配置说明(config/change_code.ini)
构建时若 bin/uf2touft3/change_code.ini 不存在,会从 config/change_code.ini 拷贝一份默认模板;已存在则保留用户配置不覆盖。
[codeSearch] 代码检索路径
| 键 | 说明 |
|---|---|
convertPath |
转码业务代码检索路径 |
searchPath |
非转码业务代码检索路径 |
[log] 日志配置
| 键 | 默认值 | 说明 |
|---|---|---|
level |
INFO |
日志等级:DEBUG < INFO < WARNING < ERROR,等级越高输出越少 |
path |
./logs |
日志输出目录(相对路径基于 exe 目录,绝对路径直接生效) |
file |
change_code.log |
日志文件名 |
fileEnabled |
true |
是否写入日志文件 |
maxSize |
10MB |
单个日志文件最大大小(支持 B/KB/MB/GB,0 表示不限制) |
maxFiles |
100 |
日志文件轮转保留数量 |
maxAge |
30 |
日志文件保留天数(0 表示不限制) |
console |
true |
是否在控制台打印日志 |
caller |
false |
是否在日志中附加调用堆栈(仅 Windows 生效) |
format |
text |
日志格式:text / json |
timeFormat |
2006-01-02 15:04:05.000 |
时间格式(支持 Go 风格布局或 Qt 格式) |
帮助文档
更多使用说明见 help/ 目录(Writerside 工程),涵盖业务转码、功能查询、代码检索、元数据更新、数据映射、设置等模块的图文操作指引。
版本记录
| 版本 | 主要更新 |
|---|---|
| v1.4.0 | 提升业务转码性能;元数据更新支持增量/强制全量;新增代码检索与函数调用链路分析;支持全局文字选中复制及表格 Ctrl+C 导出 |
| v1.3.0 | 修复设置路径不生效;修复元数据更新后转码函数检查状态异常 |
| v1.2.0 | 新增数据映射(表映射、函数映射);新增版本更新提示 |
| v1.1.0 | 支持 2.0 账户功能查询及业务转码 |
| v1.0.0 | 首个版本:业务转码、UF20/UFT3 功能查找、帮助文档、接口元数据更新、设置 |