8.6 KiB
8.6 KiB
版本历史
**本文档引用的文件** - [version_info.txt](file://version_info.txt) - [DB/数据库字段修改记录.txt](file://DB/数据库字段修改记录.txt) - [Install/Geomative Studio/version_info.txt](file://Install/Geomative Studio/version_info.txt) - [Install/Geomative Studio/database_modify.xml](file://Install/Geomative Studio/database_modify.xml) - [Install/geomativestudio.nsi](file://Install/geomativestudio.nsi) - [config.ini](file://config.ini) - [README-2021.txt](file://README-2021.txt) - [LOG/upg_geo_filetrans_log.txt](file://LOG/upg_geo_filetrans_log.txt)目录
版本概览
Geomative Studio 是一款用于地质勘探数据处理与分析的软件系统。根据项目文件分析,当前最新版本为 2.4.1,该版本信息在 version_info.txt 文件中明确标识。项目自早期版本持续演进,经历了多个重要功能迭代与数据库结构变更,支持从 GD-10 到 GD-20 等多种硬件设备。
项目开发始于 T31 版本,并计划从 T34 版本开始发布新系列。开发环境采用 Visual Studio 2015,以兼顾新功能与旧电脑的兼容性。
Section sources
版本演进历史
根据 DB/数据库字段修改记录.txt 和 database_modify.xml 等文件,Geomative Studio 的版本历史可追溯至 2015 年。以下是按时间顺序整理的主要版本变更记录:
2015 年
- 2015年6月2日
- 在
td2dcon、td3dcon、td1dcon表中增加bUse字段,用于标记记录的有效性。
- 在
- 2015年6月12日
- 在
Td表中增加rect(矩形大小)和rect_loc(矩形位置)字段。 - 将
Td表中的Espace和Edistance字段从数字类型改为文本类型。 - 在
SCON表中添加Rect、RectLoc、PoleDistance、PoleStep字段。 - 删除原有的
X0、Y0、X1、Y1字段。
- 在
2016 年
- 2016年12月2日
- 在
ac、acds、td_spc_attr表中新增 10 个时窗信息。 - 在
cm表中加入发射频率 9 (0.03125Hz)。
- 在
2017 年
- 2017年9月12日
- 在
project和tz表中加入默认工程和默认测区。
- 在
- 2017年9月18日
- 在
device表中增加GPS字段。 - 在
desetting表中增加CableType、LowPowerAlarm、AutoStack字段。 - 将
gr表中的ECODE字段从文本类型改为整型。 - 在
td表中增加SkipCable字段。 - 将
td表中的DESN字段从必填改为非必填。
- 在
- 2017年9月23日
- 新增
task_timer表。
- 新增
- 2017年9月25日
- 在
td表中添加IsAutoGenerate字段。
- 在
- 2017年9月26日
- 在
timer_task表中增加PLCID字段。
- 在
- 2017年9月28日
- 将
td1d、td2d、td3dcon表中的V、I、R0、SP字段改为非必填。 - 修改
timer_task表的时间字段属性。
- 将
- 2017年10月27日
- 设置
TaskTimer日期格式。
- 设置
- 2017年10月28日
- 修改
Medium表中部分装置的值。
- 修改
2019 年
- 2019年7月4日
- 在
medium表中新增“加强梯度装置”。
- 在
- 2019年7月14日
- 在
medium表中新增“跨孔装置”。 - 新增
TTaskInfoCoordinetes表,用于保存电极坐标信息,支持与 GD 设备的数据同步。
- 在
- 2019年12月3日
- 新增
TPictureInfo表用于存放图片信息。 - 新增
TPictureCode表用于存放岩性编辑图片的二维码。
- 新增
- 2019年12月11日
- 新增
TLoggingTaskInfo表用于存放新建测井任务信息。 - 新增
TLoggingTaskContent表用于保存测点数据信息。
- 新增
2021 年及以后
- 2021年11月10日
- 项目从 T31 目录复制,后续开发从此处开始,首个发布版本为 T34。
- 开发环境确定为 Visual Studio 2015。
- 当前版本 2.4.1
- 最新版本号在
version_info.txt中定义,表明项目已进入成熟稳定阶段。
- 最新版本号在
Section sources
版本号命名规则与发布周期
Geomative Studio 采用标准的 主版本号.次版本号.修订号(如 2.4.1)命名规则:
- 主版本号:重大架构变更或功能重构。
- 次版本号:新增重要功能或模块。
- 修订号:修复缺陷或进行小规模优化。
发布周期不固定,主要根据功能开发进度和用户反馈进行更新。从数据库变更记录的密集程度来看,2017 年是功能迭代最频繁的时期,之后趋于稳定,以维护和小功能补充为主。
此外,系统通过 config.ini 中的 [ONLINE_VERSION] 配置项(VERID)区分在线服务版本,当前为 V2.0,表明系统支持多版本并行服务。
Section sources
数据库模式演变
数据库模式经历了从简单到复杂、从功能单一到支持多场景的演变过程。
演变过程
- 初期(2015年):以基础测试任务数据存储为主,结构较为简单。
- 中期(2016-2017年):引入时窗、定时任务、GPS 定位等高级功能,数据模型复杂度显著提升。
- 后期(2019年):支持跨孔测量、测井、图片管理等专业场景,新增多个专用数据表。
演变特点
- 向后兼容性:多数变更通过新增字段或表实现,避免直接删除或重命名关键字段,确保旧数据可被新版本读取。
- 数据类型优化:如将
ECODE从文本改为整型,提升查询效率。 - 灵活性增强:将多个字段(如
X0/Y0/X1/Y1)整合为rect和rect_loc,提高配置灵活性。
erDiagram
td ||--o{ td2dcon : "包含"
td ||--o{ td3dcon : "包含"
td ||--o{ td1dcon : "包含"
device ||--o{ task_timer : "关联"
project ||--o{ tz : "包含"
medium }|--o{ TTaskInfoCoordinetes : "支持"
TLoggingTaskInfo ||--o{ TLoggingTaskContent : "包含"
Diagram sources
向后兼容性与升级路径
向后兼容性策略
- 数据库兼容:通过
database_modify.xml文件记录数据库变更,系统启动时自动检测并执行必要的结构升级。 - 接口兼容:代码中通过
g_iOnLineVersion全局变量区分不同版本功能,避免因硬件或服务版本不同导致功能异常。 - 配置兼容:
config.ini文件保留旧配置项,同时支持新增配置,确保旧配置文件可被新版本加载。
升级路径指导
- 备份数据:升级前务必备份
GeoMativeDB.accdb数据库文件。 - 执行升级:运行安装程序,系统将自动应用
database_modify.xml中定义的变更。 - 验证功能:检查新增功能(如跨孔测量、测井支持)是否正常工作。
- 处理兼容性问题:若遇到功能异常,检查
config.ini中的VERID设置是否与当前服务匹配。
Section sources
- [Install/Geomative Studio/database_modify.xml](file://Install/Geomative Studio/database_modify.xml)
- config.ini
- cpp/Main/Global.cpp
功能演进与技术变更
功能演进
- 测量模式:从基础 1D/2D/3D 测量,扩展到支持跨孔、测井等复杂场景。
- 数据管理:从纯数值数据,扩展到支持图片、二维码、GPS 坐标等多媒体信息。
- 自动化:引入定时任务、自动堆叠、自动生成功能,提升工作效率。
技术变更
- 开发环境:从 Visual Studio 2013 升级至 2015,平衡新特性与兼容性。
- 依赖库:使用 cURL 库(
curl.h)进行网络通信,支持在线更新和数据同步。 - 安装技术:使用 NSIS(
geomativestudio.nsi)制作安装包,支持驱动安装、VC++ 运行库部署等复杂操作。
系统通过持续的技术迭代,实现了从单一测量工具到综合性地质勘探平台的转变。
Section sources