【正文】
組合框的 list值為:男,女。按鈕控件用來觸發(fā)它們相應(yīng)的事件的發(fā)生。 其中記載按鈕的 click事件:當(dāng)單擊該按鈕時(shí),首先檢查文本框輸入的是否為空, 接著連接數(shù)據(jù)庫,建立記錄集,并利用記錄集打開查詢,最后對(duì)該查詢記錄集增加一條記錄,語句: 。并設(shè)置增加的記錄的相應(yīng)字段值為文本框和組合框的輸入值,記錄集更新記錄。語句: 。更新語句是很重要的,如果沒有更新語句,最后數(shù)據(jù)庫中的記錄不能得到修改和添加。這樣就完成了對(duì)員工基本信息表的添加記錄。退出按鈕的 click事件是關(guān)閉該窗體,語句是: unload me。 該窗體的源代碼具體如下 : Dim WithEvents adoPrimaryRS As Recordset Private Sub Command1_Click() If = Then MsgBox 員工編號(hào)不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 姓名不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 性別不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 部門不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 民族不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 出生年月不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If Not IsDate() Then MsgBox 生日應(yīng)輸入日期( yyyymmdd)! , vbOKOnly + vbExclamation, 警告 Exit Sub Else = Format(, yyyymmdd) End If If = Then MsgBox 政治面貌不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 家庭住址不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 聯(lián)系電話不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 畢業(yè)學(xué)校不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 最高學(xué)歷不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 所學(xué)專業(yè)不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 技術(shù)職稱不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 職稱時(shí)間不能為空 ! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If Not IsDate() Then MsgBox 職稱應(yīng)輸入日期( yyyymmdd)! , vbOKOnly + vbExclamation, 警告 Exit Sub Else = Format(, yyyymmdd) End If If = Then MsgBox 基本工資不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If Dim db As Connection Set db = New Connection = adUseClient PROVIDER=。Data Source=。 Set adoPrimaryRS = New Recordset a = select * from ygInfo where 員工編號(hào) =39。 amp。 a amp。 39。, db, adOpenStatic, adLockOptimistic If Not Then MsgBox 該編號(hào)重復(fù)! , vbOKOnly + vbExclamation, 警告 Exit Sub Else (員工編號(hào) ) = (姓名 ) = (性別 ) = (部門 ) = (民族 ) = (出生年月 ) = (政治面貌 ) = (家庭住址 ) = (聯(lián)系電話 ) = (畢業(yè)學(xué)校 ) = (最高學(xué)歷 ) = (所學(xué)專業(yè) ) = If = Then (職務(wù) ) = 無 Else (職務(wù) ) = End If (專業(yè)技術(shù)職稱 ) = (職稱時(shí)間 ) = (基本工資 ) = If = Then (獎(jiǎng)懲情況 ) = 無 Else (獎(jiǎng)懲情況 ) = End If If = Then (個(gè)人簡(jiǎn)歷 ) = 無 Else (個(gè)人簡(jiǎn)歷 ) = End If MsgBox 記載成功! , vbOKOnly + vbExclamation, 提示 End If = = = = = = = = = = = = = = = = = = End Sub Private Sub Command2_Click() Unload Me End Sub Private Sub Form_Load() Left = ( Width) \ 2 Top = ( Height) \ 2 End Sub 通過該窗體的操作,系統(tǒng)可以完成對(duì)員工的基本信息的錄入。錄入后員工的基本信息的維護(hù),包括信息的修改,刪除,瀏覽,簡(jiǎn)單的查找等操作,可以通過員工基本信息維護(hù)窗體來完成。 員工基本信息維護(hù)窗體的設(shè)計(jì) 通過上面的員工基本信息輸入窗體可以得知,員工基本信息的輸入窗體是不具備數(shù)據(jù)的維護(hù)功能的,員工的基本信息的維護(hù)功能是通過另外設(shè)計(jì)的窗體完成的。 圖 45 員工基本信息界面圖 該窗體包括的控件有文本框和組合框,按鈕等控件,文本框和組合框可以顯示數(shù)據(jù)庫中員工基本信息表的記錄,默認(rèn)的記錄定位為第一條記錄,用戶可 以通過按鈕的導(dǎo)航,瀏覽數(shù)據(jù)庫中其它記錄。第一條,上一條,下一條,最后條的按鈕的 click事件分別是將記錄集進(jìn)行移動(dòng),實(shí)現(xiàn)文本框,組合框的不同的顯示。導(dǎo)航按鈕的事件源代碼主要分別是:(移到第一條), (移到上一條),(移到下一條), (移到最末一條)。 其它按鈕還有修改按鈕,添加按鈕,刪除按鈕,查找按鈕。分別實(shí)現(xiàn)信息表中的數(shù)據(jù)的修改更新, 添加信息,刪除當(dāng)前記錄 ,實(shí)現(xiàn)簡(jiǎn)單的查找定位。 下面簡(jiǎn)單介紹查找定位按鈕的 click 事件,其它按鈕的事件源代碼可以參考附件和程序。 事件源代碼: a = Do While ( = False) If (員工編號(hào) ) a Then Else = (員工編號(hào) ) = (姓名 ) ?? Exit Sub End If Loop If Then MsgBox 員工基本信息表中沒有該記錄! , vbOKOnly + vbExclamation, 提示! End If 通過輸入員工編號(hào),源代碼功能原理分析:首先利用循環(huán)語句 Do While ( = False)?loop 來判斷員工記錄集 是否越下標(biāo)界限。當(dāng)未越界的時(shí)候,一直循環(huán)。接著利用語句 If (員工編號(hào) ) a Then Else? 顯示記錄 ?endif 來判斷記錄集是否下移,當(dāng)當(dāng)前記錄集的員工字段編號(hào)不等于輸入的員工編號(hào)值時(shí),記錄集就下移。這樣當(dāng)最后下標(biāo)越界的時(shí)候,說明沒有找到該記錄,如果存在 (員工編號(hào) ) =a則文本框顯示記錄。 員工業(yè)務(wù)界面設(shè)計(jì) 該功能與上圖功能十分相似,使得管理都覺似曾 相識(shí),這樣就給初學(xué)者減輕的心里的負(fù)擔(dān),從而很快地熟練該人事信息管理軟件的使用。 本功能采用與人事檔案相同對(duì)象編程技術(shù),固源碼得到了重用,這是軟件工程所提供的源碼重用過程,這樣不僅可以縮短開發(fā)周期及減少開發(fā)費(fèi)用。從更早的將人事信息管理系統(tǒng)投入到實(shí)際的應(yīng)用中。如下圖: 圖 46早期人事信息管理系統(tǒng)圖 窗體的設(shè)計(jì)包括 2個(gè)文本框和 1個(gè)組合框,其中 1個(gè)文本框?qū)?yīng)的字段由于是備注型,所以文本框的屬性值設(shè)定為: Multiline屬性設(shè)置為 True。, Scrollbars的值設(shè)定為 2。 按鈕的 click事件和員工基本 信息輸入的界面按鈕類似,不同是該按鈕觸發(fā)的事件連接的數(shù)據(jù)庫表是員工業(yè)務(wù)檔案表,而上面是員工基本信息表而已。 通過該窗體的操作,系統(tǒng)可以完成對(duì)員工的檔案信息的錄入。錄入后檔案的信息的維護(hù),包括信息的修改,刪除,等操作,可以通過檔案信息維護(hù)窗體來完成。該窗體的設(shè)計(jì)過程這里不再介紹。 具體代碼如下 : Dim WithEvents adoPrimaryRS As Recordset Private Sub Command1_Click() If = Then MsgBox 員工編號(hào)不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 崗位編號(hào)不能為空! , vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 業(yè)務(wù)