基于VC++_Access的平板平面度计量检定系统

2016-03-22 14:21徐炜东
电脑知识与技术 2016年1期
关键词:计量检定数据库

徐炜东

摘要:计量检定工作中,平板平面度需处理的数据较多,人工计算尤为不便。文章依据国家颁布的最新平板检定规程,开发了基于VC++设计工具和Access数据库技术平板平面度计量检定软件系统。

关键词:平板平面度;VC++;数据库;计量检定

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)01-0108-03

在平板平面度计量检定中,检定人员根据平板尺寸选择相应的测量点数。依据国家质监总局颁布的最新平板检定规程,平板工作面测量点数与平板尺寸关系如表1[1]。可以看出,当平板尺寸越大,所需测量点数越多,需要处理的数据也就越多。检定规程中所给出的计算公式较为复杂,采用人工计算方式不仅工作效率低,而且有可能损失数据精度。通过计算机软件进行处理,能有效克服人工计算方式中的诸多缺点,提高工作效率。

表1 平板工作面测量点数

[平板尺寸/mm\&测量点数\&≤(400×400)\&≥9\&(630×400)~(1600×1000)\&≥25\&>(1600×1000)\&≥49\&]

1 开发环境及工具

本文基于微软公司的Visual Studio 2005 集成开发环境开发,采用VC++设计工具和Access数据库技术。

VC++是微软公司开发的面向对象的windows应用程序可视化编程工具,封装了大部分windows应用程序开发过程中所需用到的C++类,开发人员可根据需要从这些类派生相应的类。通过VC++开发的应用程序具有执行效率高、可移植能力强等特点[2-3]。VC++通过API接口和COM控件可以方便地访问各种数据库,可以实现对数据库的编辑、更新等操作。

Access数据库是微软公司推出的一种桌面数据库系统,操作简单,能方便的被各种编程工具访问。

2 系统设计

2.1 系统构成及工作流程

本软件实现了平板平面度准确度等级的评定,采用模块化设计思想,系统结构如图1所示,主要由五个模块构成,分别为参数设定模块、数据输入模块、数据处理模块、结果显示模块和数据库模块。其中,参数设定模块由用户设定所检定平板相关参数;数据输入模块是系统和用户数据交互接口,由用户输入相关测量数据;数据处理模块对用户输入的数据进行处理;结果显示模块用来显示已经检定的平板的相关信息,方便操作人员查询相关信息;数据库模块实现对所检定平板信息的保存。

图1 系统结构框图

系统工作流程如图2所示。软件启动后,用户需要先设定相关参数,根据用户设定的参数,会弹出相应的交互界面。在交互界面中,用户需要输入相应的测量数据,输入数据完毕后,用户即可点击相应按钮进行数据处理。数据处理结束后,相应的评定结果会显示在交互界面中。用户可以通过点击菜单弹出相应界面显示所检定平板信息,并将该信息保存到系统数据库中。

图2 系统工作流程图

2.2 数据库设计及访问

常见的数据库有Access、SQL Server、Oracle等,不同的数据库应用场合不同。Access数据库是微软公司推出的office办公软件套件中的重要一员,主要用于日常工作中的一些小型数据库应用场合,易于使用且界面友好;SQL Server数据库具有良好的兼容性,能够进行联机分析处理,能够很好地适应在线应用程序部署,主要用于一些中大型数据库应用场合;Oracle数据库具有高效率、可靠性好的优点,能够很好的应用于一些大数据场合。由于本系统所需要处理的数据量较小,综合考虑采用Access数据库。

VC++中提供了多种数据库访问技术,常见的有ODBC API、MFC ODBC、DAO、OLE DB、ADO等。ODBC API数据库访问技术是一种底层访问技术,能够进行异步处理、事务管理,但使用起来较复杂,所需编写代码工作量大;MFC ODBC以类的形式封装了ODBC API函数,操作起来相对简便[4];DAO提供了一种通过程序代码创建和操纵数据库的机制;OLE DB是VC++数据库开发中提供的新技术,基于COM接口,对关系型数据库和非关系型数据库提供了统一的接口,同ODBC API一样,属于一种底层访问技术;ADO访问技术基于OLE DB的访问接口,继承了OLE DB访问技术的优点,将OLE DB接口进行封装,定义了ADO对象,因而能够很方便的操作数据库[5-6]。基于此,本文采用ADO数据库访问方式。

通过ADO方式访问Access数据库,其编程步骤如下:

1)为使用ADO中封装各种操作数据库的类,需要在工程头文件stdafx.h中加入动态链接库,同时为避免命名空间冲突,需要重命名名空间,代码如下:

#import "C:\Program Files\Common Files\System\ado\msado15.dll" \ no_namespace,rename("EOF","adoEOF") //链接动态库,重命名名空间

2)由于ADO基于OLE DB技术,因此需要初始化COM接口,代码如下:

AfxOleInit();//初始化COM接口

3)为了能够单独操作数据库,可在工程中添加类,通过在类中编写相关函数来实现对数据库的操作,其中连接数据库代码实现如下:

_ConnectionPtr m_pConnection; //定义Connection指针

HRESULT hr; //创建句柄对象

hr = m_pConnection.CreateInstance("ADODB.Connection"); //创建Connection对象

if (SUCCEEDED(hr)) //判断Connection对象是否创建成功

{

hr = m_pConnection->Open("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\database\\DetectData.accdb;","","",adModeUnknown); //连接数据库

MessageBox("连接数据库成功!");

}

2.3 系统界面设计

系统的主要任务是实现平板平面度等级的评定以及相关信息的保存,启动界面如图3所示。用户可以根据窗口中的提示来操作软件。当用户在菜单中选择检测类型后,会弹出参数选择窗口,用户选定好完整的参数后,点击“确定”按钮数据交互窗口弹出,图4是某种平板尺寸下系统的界面。

图3 启动界面

图4 工作界面

用户输入测量数据后,即可点击“计算”按钮 ,系统进行数据处理;点击“数据”按钮,系统计算所得的相关参数会在编辑框中显示;点击“结果”按钮,系统会依据平板检定规程给出平板平面度的检定结果。

得到检定结果信息后,用户点击菜单“检定信息”,会弹出如图5所示对话框,用户填写完整相关信息后,点击“确定”按钮即可将检定信息保存到数据库中,如图6所示。

图5 检定信息窗口

图6 检定信息数据库数据库

3 结束语

本文设计的平板平面度检定系统界面简洁,易于操作,解决了人工计算的诸多不便,符合中华人民共和国国家计量平板检定规程JJG 117-2013。通过在我站日常检定工作中的应用,极大地提高了工作人员的工作效率。

参考文献:

[1] 中华人民共和国国家计量检定规程JJG 117-2013[S].北京: 中国质检出版社, 2013.

[2] 贺军,高胜友,蒋方帅,等.Visual C++ 6.0技术内幕[M].北京: 北京希望电子出版社, 1999.

[3] Jeffrey Richter著. Windows高级编程指南[M].王书洪, 刘光明,译. 北京: 清华大学出版社, 1999.

[4] 刘锐,宁梁水,宋坤. Visual C++程序开发范例宝典[M].北京:人民邮电出版社, 2009.

[5] 姚领田.精通MFC程序设计[M].北京: 人民邮电出版社, 2006.

[6] 四维科技,刘炜,徐慧.Visual C++数据库编程技术与实例[M].北京: 人民邮电出版社, 2005.

猜你喜欢
计量检定数据库
论如何做好计量检定工作
计量检定工作质量提升有效措施探析
医疗计量器具计量检定的重要性及检定中常见的问题