- 相關推薦
全國工程地質專家庫系統的開發
摘要:介紹了中國學會工程地質專業委員會“全國工程地質專家庫系統”的功能和部分程序段,歡迎專家們加入專家庫。
關鍵詞:工程地質 專家庫系統 功能 界面 模塊 開發
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)信息來源
通過學術會議、信件和網上下載(見http://www.enggeo.org/xwdt-040106.htm)等途徑分發“全國工程地質專家庫專家登記表”,收集反饋回來的原始登記表,錄入數據庫中。
(2)創建數據庫
在Microsoft Office Access中建立專家數據庫。數據庫中包括的字段有:姓名、性別、出生年月、工作單位、技術職稱、工作職務、專家特長、工作領域、地址、郵政編碼、聯系電話、傳真和郵箱等,基本涵蓋了專家的基本信息、特長、工作領域和聯系方式。
(3)數據錄入
數據錄入方式有兩種方式: ① 在Access中錄入; ② 數據維護方式,即在數據庫管理員界面中輸入數據。
所有專家的信息存儲在一個數據表中,每位專家的信息在數據表中表現為一條記錄。
4.2 系統功能的代碼實現
采用Microsoft Visual Basic 6.0作為開發工具,運用其集成開發環境和快速應用程序開發技術,根據的功能模塊分別創建程序界面和窗口(圖1-圖7)。開發過程中使用了ADO Data控件、DataGrid控件、DataEnviornment設計器、Data Report設計器等。
下面著重敘述高級查詢的實現。在高級查詢窗口中,用戶填寫的查詢條件包括查詢結果中顯示的字段、where子句查詢條件、字段排序子句,用字符串連接生成SQL查詢語句。然后在專家數據表中查找符合查詢條件的專家記錄并在查詢結果窗口中顯示給用戶。完成高級查詢功能的程序片段如下:
Private Sub cmdQuery_Click()
Dim strKey As String
Dim strSQL As String, strsqlAll As String
Dim strOrderSQL As String
Dim strOrder As String
Dim intLenKey As Integer
Dim i As Integer, j As Integer
'查詢結果至少要顯示一個字段
If lstKey.SelCount = 0 Then
MsgBox "查詢結果中至少要顯示一個字段!", vbMsgBoxSetForeground, "缺少字段"
Exit Sub
End If
If txtCondition.Text = vbNullString Then
MsgBox "請加入查詢條件!", vbOKOnly + vbInformation, "提示"
Exit Sub
End If
'查詢結果中顯示的字段
strKey = vbNullString
strkeys = vbNullString
For i = 0 To lstKey.ListCount - 1
If lstKey.Selected(i) = True Then
strKey = strKey & lstKey.List(i) & ","
End If
strkeys = strkeys & lstKey.List(i) & ","
Next
strKey = Mid(strKey, 1, Len(strKey) - 1)
strkeys = Mid(strkeys, 1, Len(strkeys) - 1)
'where子句查詢條件
strWhere = vbNullString
If Len(Trim(strQuerySQL)) > 0 Then
strWhere = " where " & Trim(strQuerySQL)
Else
strWhere = vbNullString
End If
'字段排序字句
If lstOrderKey.ListCount > 0 Then
mstrOrderSQLs = ""
intLenKey = 0
For j = 0 To lstOrderKey.ListCount - 1
strOrderSQL = lstOrderKey.List(j)
If optOrder(0).Value = True Then
intLenKey = InStr(1, strOrderSQL, "(升序)", vbTextCompare)
strOrder = " ASC"
Else
intLenKey = InStr(1, strOrderSQL, "(降序)", vbTextCompare)
strOrder = " DESC"
End If
If intLenKey > 0 Then
strOrderSQL = Mid(strOrderSQL, 1, intLenKey - 1)
If mstrOrderSQLs <> "" Then
mstrOrderSQLs = mstrOrderSQLs & ","
End If
mstrOrderSQLs = mstrOrderSQLs & strOrderSQL & strOrder
End If
Next j
mstrOrderSQLs = " order by " & mstrOrderSQLs
Else
mstrOrderSQLs = ""
End If
'字符串連接生成SQL查詢語句
strSQL = "select " & strKey & " from " & " 專家庫 " & strWhere & mstrOrderSQLs
strsqlAll = "select " & strkeys & " from " & " 專家庫 " & strWhere & mstrOrderSQLs
adoconnection.Execute strSQL
adoconnection.Execute strsqlAll
If Err Then
MsgBox Err.Number & vbCrLf & Err.Description & Err.Source, vbCritical, "SQL語句錯誤"
Err.Clear
Exit Sub
End If
Set recResult = New ADODB.Recordset
Set recKeyword = New ADODB.Recordset
frmQueryResult.strSQL = strSQL
frmQueryResult.strSQL = strsqlAll
recKeyword.Open strSQL, adoconnection, adOpenStatic, adLockOptimistic
recResult.Open strsqlAll, adoconnection, adOpenDynamic, adLockOptimistic
If recKeyword.RecordCount <= 0 Then
MsgBox "沒有您要查找的記錄!", vbInformation + vbOKOnly, "找不到記錄"
Exit Sub
End If
'查詢結果顯示
frmQueryResult.Show vbModal
End Sub
5 結語
中國學會工程地質專業委員會建立“全國工程地質專家庫系統”的目是便于相互了解、交流,以滿足各單位部門了解專家專家信息的需求,充分發揮專家作用,更快推進工程地質學科和事業的創新發展。
【全國工程地質專家庫系統的開發】相關文章:
紡織企業快速報價系統開發05-11
職工工資管理系統的設計與開發論文開題報告09-15
飛機艙音背景聲特征實時分析系統開發及應用05-05
淺談開發電力系統繼電保護中級工教學培訓包的實踐與體會05-28
工程地質隨想(三)08-21
綜合布線系統概述09-22
前臺mis治理系統06-04
績效治理系統及作用06-05
項目管理系統開題報告06-30
庫存管理系統論文07-21