工程地质系统开发分析论文

时间:2022-07-02 10:00:00

导语:工程地质系统开发分析论文一文来源于网友上传,不代表本站观点,若需要原创文章可咨询客服老师,欢迎参考。

工程地质系统开发分析论文

1前言

自2003年中国地质学会工程地质专业委员会发起建立“全国工程地质专家库”以来,得到全国各界工程地质(含岩土工程和地质工程相关专业)行业高科技人员的积极响应,已经收到420余份反馈回来的专家登记表,均已录入数据库。“全国工程地质专家库”已初具规模,从针对服务的行业来说,包括水利电力、铁路交通、矿山和工业民用建筑等;从专业领域来说,包括工程地质勘察、岩土工程施工、地质灾害研究等;从遍及的单位来说,包括高等院校、科研院所、各部委直属勘测设计院和公司等一百多家;从职称分布来说,包括工程院院士、勘察大师、教授级高级工程师、高级工程师、教授、副教授、研究员、副研究员等;从工作职务来说,包括院长、副院长、总工程师、副总工程师、经理、校长、系主任等。

入库的单位及其人数情况:北京国电华北电力工程有限公司14人;长安大学地质工程与测绘工程学院11人;成都理工大学环境与土木工程学院12人;国家电力公司成都勘测设计研究院43人;国家电力公司贵阳勘测设计研究院15人;国家电力公司昆明勘测设计研究院39人;建设综合勘察研究设计院11人;水利部天津水利水电勘测设计研究院11人;中国科学院地质与地球物理研究所17人;中航勘察设计研究院39人(这里只列出了10人以上的单位)。

2软件功能

2.1基本功能

①显示工程地质(地质工程、岩土工程及相关专业)专家基本信息,包括姓名、性别、出生年月、技术职称、工作职务、工作单位、单位性质、联系方式。②显示专家专业特长,工作领域。③打印专家表。④按照入库序号、姓名和工作单位排序,方便检索。⑤可随时登记入库。

2.2查询

按照姓名、出生年月、工作单位、单位性质、技术职称、专业特长、工作领域等单个字段查询,查询的结果可显示专家基本信息、专业特长和工作领域,打印专家表。

2.3高级查询

多个字段的组合条件查询,查询结果可制作报表。

2.4数据库维护

数据库管理员能够轻松完成数据库的日常维护工作,如添加、删除、查询等。

专家库可用于人事档案管理、查找工程咨询专家、聘请工程项目评审专家、查找稿件评阅人、聘任学位论文审阅人等。

3系统界面及功能模块

3.1主界面

全国工程地质专家库系统主界面如图1所示。界面包括菜单区、查询区、信息管理区和信息显示区。菜单包括记录、查询、管理员和帮助等项。查询区包括单个字段的简单查询和高级查询按钮。信息管理区由基本资料、专业特长、工作领域、备注、全表浏览、打印、退出按钮组成,点选不同的按钮,信息显示区将显示不同的信息。

3.2高级查询界面

点击主界面窗口中查询区的高级查询按钮会弹出高级查询窗口,如图2所示。通过该窗口可生成查询条件、选择结果中要显示的字段、选择排序字段、选择组合查询条件,并执行查询。查询结果由查询结果窗口(图3)显示出来。

3.3查询结果窗口

点击高级查询窗口中的开始查询按钮就可弹出查询结果窗口。查询结果窗口左上部分显示符合查询条件的记录,右上部分是打印全部结果按钮和打印选中结果按钮。下部是选中专家的详细信息,当点选左上部的不同专家,其详细信息会改变。

3.4查询结果报表打印窗口

点击查询结果窗口中的打印全部结果按钮将弹出查询结果报表打印窗口,如图4所示。上部是打印按钮、导出按钮和缩放比例下拉列表框,中间是报表显示区,下部是页码显示和翻页按钮。

3.5选中结果报表打印窗口

点击主界面信息管理区打印按钮和查询结果窗口中的打印选中结果按钮将弹出选中专家资料报表打印窗口,如图5所示。

3.6数据库管理员界面

点击主界面管理员菜单下的管理员登陆菜单项后,弹出管理员登陆对话框(图6),输入帐号和密码后,点击确定按钮进入数据库管理员界面(图7)。

数据库管理员界面由菜单、工具按钮、专家信息编辑区和全表数据浏览和编辑区组成。工具按钮包括移动记录、添加、删除等按钮组成,专家信息编辑区用来编辑专家信息,全表数据浏览、编辑区浏览和编辑数据库记录。

4工程地质专家库系统开发

4.1数据库

(1)信息来源

通过学术会议、信件和网上下载(见/xwdt-040106.htm)等途径分发“全国工程地质专家库专家登记表”,收集反馈回来的原始登记表,录入数据库中。

(2)创建数据库

在MicrosoftOfficeAccess软件中建立专家数据库。数据库中包括的字段有:姓名、性别、出生年月、工作单位、技术职称、工作职务、专家特长、工作领域、通信地址、邮政编码、联系电话、传真和电子邮箱等,基本涵盖了专家的基本信息、特长、工作领域和联系方式。

(3)数据录入

数据录入方式有两种方式:①在Access中录入;②数据维护方式,即在数据库管理员界面中输入数据。

所有专家的信息存储在一个数据表中,每位专家的信息在数据表中表现为一条记录。

4.2系统功能的代码实现

采用MicrosoftVisualBasic6.0作为开发工具,运用其集成开发环境和快速应用程序开发技术,根据软件的功能模块分别创建程序界面和窗口(图1-图7)。开发过程中使用了ADOData控件、DataGrid控件、DataEnviornment设计器、DataReport设计器等。

下面着重叙述高级查询的实现。在高级查询窗口中,用户填写的查询条件包括查询结果中显示的字段、where子句查询条件、字段排序子句,用字符串连接生成SQL查询语句。然后在专家数据表中查找符合查询条件的专家记录并在查询结果窗口中显示给用户。完成高级查询功能的程序片段如下:

PrivateSubcmdQuery_Click()

DimstrKeyAsString

DimstrSQLAsString,strsqlAllAsString

DimstrOrderSQLAsString

DimstrOrderAsString

DimintLenKeyAsInteger

DimiAsInteger,jAsInteger

''''查询结果至少要显示一个字段

IflstKey.SelCount=0Then

MsgBox"查询结果中至少要显示一个字段!",vbMsgBoxSetForeground,"缺少字段"

ExitSub

EndIf

IftxtCondition.Text=vbNullStringThen

MsgBox"请加入查询条件!",vbOKOnly+vbInformation,"提示"

ExitSub

EndIf

''''查询结果中显示的字段

strKey=vbNullString

strkeys=vbNullString

Fori=0TolstKey.ListCount-1

IflstKey.Selected(i)=TrueThen

strKey=strKey&lstKey.List(i)&","

EndIf

strkeys=strkeys&lstKey.List(i)&","

Next

strKey=Mid(strKey,1,Len(strKey)-1)

strkeys=Mid(strkeys,1,Len(strkeys)-1)

''''where子句查询条件

strWhere=vbNullString

IfLen(Trim(strQuerySQL))>0Then

strWhere="where"&Trim(strQuerySQL)

Else

strWhere=vbNullString

EndIf

''''字段排序字句

IflstOrderKey.ListCount>0Then

mstrOrderSQLs=""

intLenKey=0

Forj=0TolstOrderKey.ListCount-1

strOrderSQL=lstOrderKey.List(j)

IfoptOrder(0).Value=TrueThen

intLenKey=InStr(1,strOrderSQL,"(升序)",vbTextCompare)

strOrder="ASC"

Else

intLenKey=InStr(1,strOrderSQL,"(降序)",vbTextCompare)

strOrder="DESC"

EndIf

IfintLenKey>0Then

strOrderSQL=Mid(strOrderSQL,1,intLenKey-1)

IfmstrOrderSQLs<>""Then

mstrOrderSQLs=mstrOrderSQLs&","

EndIf

mstrOrderSQLs=mstrOrderSQLs&strOrderSQL&strOrder

EndIf

Nextj

mstrOrderSQLs="orderby"&mstrOrderSQLs

Else

mstrOrderSQLs=""

EndIf

''''字符串连接生成SQL查询语句

strSQL="select"&strKey&"from"&"专家库"&strWhere&mstrOrderSQLs

strsqlAll="select"&strkeys&"from"&"专家库"&strWhere&mstrOrderSQLs

adoconnection.ExecutestrSQL

adoconnection.ExecutestrsqlAll

IfErrThen

MsgBoxErr.Number&vbCrLf&Err.Description&Err.Source,vbCritical,"SQL语句错误"

Err.Clear

ExitSub

EndIf

SetrecResult=NewADODB.Recordset

SetrecKeyword=NewADODB.Recordset

frmQueryResult.strSQL=strSQL

frmQueryResult.strSQL=strsqlAll

recKeyword.OpenstrSQL,adoconnection,adOpenStatic,adLockOptimistic

recResult.OpenstrsqlAll,adoconnection,adOpenDynamic,adLockOptimistic

IfrecKeyword.RecordCount<=0Then

MsgBox"没有您要查找的记录!",vbInformation+vbOKOnly,"找不到记录"

ExitSub

EndIf

''''查询结果显示

frmQueryResult.ShowvbModal

EndSub

5结语

中国地质学会工程地质专业委员会建立“全国工程地质专家库系统”的目是便于相互了解、交流,以满足各单位部门了解专家专家信息的需求,充分发挥专家作用,更快推进工程地质学科和事业的创新发展。