余翠蘭
摘 要: 人事管理是一個(gè)復(fù)雜的系統(tǒng)工程,手工管理方式不利于查找、更新和維護(hù)等,開發(fā)一套對(duì)人事信息進(jìn)行管理的軟件是必須的。在此使用數(shù)據(jù)庫(kù)管理系統(tǒng)Visual Foxpro 9.0作為開發(fā)工具,采用面向?qū)ο蟮脑O(shè)計(jì)方法、簡(jiǎn)單易讀的算法,構(gòu)建一款適合高職學(xué)校的人事管理系統(tǒng)。該系統(tǒng)主要包括檔案查詢、檔案瀏覽與編輯、檔案統(tǒng)計(jì)、檔案輸出等功能,使信息管理工作更加系統(tǒng)化、信息化、科學(xué)化。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)運(yùn)行穩(wěn)定、正確、界面操作方便、成本低、具有較強(qiáng)的實(shí)用價(jià)值。
關(guān)鍵詞: 人事管理系統(tǒng); VFP; 查詢; 統(tǒng)計(jì)
中圖分類號(hào): TN964?34; TP315 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2014)04?0072?04
Design and realization of VFP?based personnel management system suitable for higher vocational schools
YU Cui?lan
(Department of computer science, Dehong Teacher's College, Luxi 678400, China)
Abstract: Personnel management is a complex engineering, which the manual management is not easy to inquire, update and maintain. Therefore, it is extremely necessary to develop a personnel management software. With the Object?oriented design method, comprehensible algorithm and database management system Visual Foxpro 9.0, a VFP?based personnel management system suitable for higher vocational schools was built. It has the functions of information search, archival statistics, information output, archival browse and archival edition. With the above functions, it makes the information management more systematization, informationization and scientization. The experimental results demonstrate that the system running is stable and accurate, and the interface operation is convenient. Its cost is low. The system has a strong practical value.
Keywords: personnel management system; VFP; search; statistics
人事管理信息化是計(jì)算機(jī)技術(shù)的必然趨勢(shì)。使用計(jì)算機(jī)對(duì)高職學(xué)校人事信息進(jìn)行管理,具有傳統(tǒng)管理無法比擬的優(yōu)點(diǎn)。例如,檢索迅速、管理靈活、存儲(chǔ)量大等。Visual FoxPro 9.0 是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)[1],它提供的數(shù)據(jù)庫(kù)表、表單、菜單、報(bào)表等功能使得數(shù)據(jù)存儲(chǔ)、查詢、界面設(shè)計(jì)、報(bào)表生成等變得非常簡(jiǎn)單,也具有存儲(chǔ)方式單一、面向?qū)ο?、支持ODBC、數(shù)據(jù)處理速度快、開發(fā)成本低等特點(diǎn)。因此本文采用Visual FoxPro 9.0作為高職學(xué)校人事管理系統(tǒng)的開發(fā)工具和數(shù)據(jù)庫(kù)系統(tǒng)。
1 系統(tǒng)設(shè)計(jì)
1.1 系統(tǒng)功能設(shè)計(jì)
系統(tǒng)的設(shè)計(jì)開發(fā)[2?3]需要針對(duì)不同院校的實(shí)際情況采取定制化的開發(fā)模式,既滿足復(fù)雜多樣的人事管理[4?6]工作需求,又要滿足用戶界面的簡(jiǎn)單易用。結(jié)合我校人事信息管理日常工作的實(shí)際需要,通過需求分析和可行性分析,高職學(xué)校人事管理系統(tǒng)主要包含以下幾個(gè)功能:檔案瀏覽及編輯、檔案查詢、檔案統(tǒng)計(jì)、檔案輸出。該人事管理系統(tǒng)的功能模塊如圖1所示。
1.2 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)
根據(jù)系統(tǒng)功能結(jié)構(gòu)建立所需要的一系列數(shù)據(jù)表,并根據(jù)數(shù)據(jù)表間的相關(guān)性建立表間關(guān)聯(lián),然后設(shè)置相關(guān)的數(shù)據(jù)參照完整性規(guī)則,使得相關(guān)聯(lián)的表能夠協(xié)同工作,數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)直接關(guān)系到系統(tǒng)運(yùn)行的效率和實(shí)現(xiàn)效果。本系統(tǒng)創(chuàng)建了一個(gè)名為“人事數(shù)據(jù)庫(kù).DBC”的數(shù)據(jù)庫(kù)文件,該數(shù)據(jù)庫(kù)中共包含4個(gè)數(shù)據(jù)庫(kù)表。
(1) 員工表。含有字段:編號(hào)、部門編號(hào)、姓名、性別、出生年月、到崗日期、戶口所在地、婚姻狀況、籍貫、聯(lián)系電話、民族、身份證號(hào)、文化程度、員工狀態(tài)、政治面貌、職務(wù),并按編號(hào)建立了主索引。
(2) 部門表。含有字段:部門編號(hào)、部門名稱、上級(jí)編號(hào)、部門描述,并按部門編號(hào)建立了主索引。
圖1 高職學(xué)校人事管理系統(tǒng)功能模塊圖
(3) 員工工資表。含有字段:編號(hào)、姓名、部門名稱、邊疆補(bǔ)貼、地區(qū)補(bǔ)貼、浮動(dòng)工資、福利費(fèi)、艱苦補(bǔ)貼、固定一級(jí)、津貼、獎(jiǎng)金津貼、三項(xiàng)補(bǔ)貼、特種津貼、校內(nèi)津貼、各種補(bǔ)貼、個(gè)人稅、公積金、應(yīng)發(fā)數(shù)、房租、曠假、其他扣款、扣款合計(jì)、實(shí)發(fā)合計(jì),并按編號(hào)建立了候選索引,部門名稱建立了普通索引。
(4) 用戶表。用來實(shí)現(xiàn)對(duì)用戶的管理,含有字段:用戶名、密碼、用戶類型。只有輸入了正確的用戶名和口令才能使用本系統(tǒng)。
該數(shù)據(jù)庫(kù)中表間關(guān)聯(lián)的數(shù)據(jù)參照完整性規(guī)則設(shè)置情況如下:更新規(guī)則設(shè)置為“級(jí)聯(lián)”,刪除和插入規(guī)則都設(shè)置為“限制”。
2 系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)
2.1 登錄密碼驗(yàn)證
用戶使用系統(tǒng)前,必須在“登錄”表單中,輸入用戶名和密碼,系統(tǒng)用戶表存儲(chǔ)的記錄進(jìn)行身份驗(yàn)證。
“登錄”功能的實(shí)現(xiàn)代碼如下:
IF ALLTRIM(thisform.txtUserName.Value)==''
MessageBox("請(qǐng)輸入用戶名")
RETURN
ENDIF
IF ALLTRIM(thisform.txtUserPwd.Value)==''
MessageBox("請(qǐng)輸入密碼")
RETURN
ENDIF
use date\用戶表
Locate For Allt(用戶名)=Allt(thisform.txtUserName.Value)
If Found()==.T.
If Allt(密碼)==Allt(thisform.txtUserPwd.Value)
MessageBox("歡迎使用本程序",64,"身份驗(yàn)證通過")
UserName = 用戶名
UserYype = 用戶類型
release thisform
Else
MessageBox("密碼不正確",16,"錯(cuò)誤提示")
Endif
Else
MessageBox("用戶名不存在",16,"錯(cuò)誤提示")
Endif
2.2 檔案查詢
輸入查詢條件,系統(tǒng)可以顯示符合條件的記錄,該系統(tǒng)包括:?jiǎn)T工基本信息查詢、員工工資查詢、部門查詢。其中,員工基本信息查詢可以根據(jù)姓名、身份證號(hào)、或籍貫查詢。
例如,員工工資查詢界面如圖2所示,單擊“查詢”,得到查詢結(jié)果如圖3所示。
圖2 員工工資查詢界面
“查詢”功能的實(shí)現(xiàn)代碼如下:
select * from 員工工資表 where alltrim(姓名)=alltrim(thisform.combo1.displayvalue) into cursor temp
go top
if eof()
go bottom
=messagebox("對(duì)不起,沒有此人,請(qǐng)確認(rèn)",0+32+1024,"人事管理系統(tǒng)")
else
do form 查詢結(jié)果
endif
圖3 員工工資查詢結(jié)果
2.3 檔案瀏覽及編輯
該模塊對(duì)信息進(jìn)行瀏覽、添加、刪除、修改。包括員工基本信息瀏覽及編輯、部門信息瀏覽及編輯、員工工資瀏覽及編輯。例如,員工基本信息瀏覽及編輯界面如圖4所示 ,可以實(shí)現(xiàn):?jiǎn)螕簟吧弦粭l”、“下一條”按鈕等瀏覽“員工表”中每一個(gè)員工的信息;單擊“修改”按鈕,重新輸入需修改的值,單擊“保存”或“放棄”,則可實(shí)現(xiàn)修改當(dāng)前員工的信息;單擊“添加”按鈕,輸入新員工信息,單擊“保存”,則可增加新員工信息;單擊“刪除”按鈕,可增加當(dāng)前顯示的員工信息。“上一條”“下一條”等按鈕是自建了一個(gè)“移動(dòng)記錄”按鈕類。
圖4 員工基本信息瀏覽及編輯界面
“增加”功能的實(shí)現(xiàn)代碼如下:
append blank
thisform.refresh
thisform.編號(hào)1.setfocus
thisform.編號(hào)1.enabled=.t.
thisform.姓名1.enabled=.t.
thisform.性別1.enabled=.t.
……
“保存”按鈕功能的click事件代碼如下:
=tableupdate(.t.)
??chr(7)
=messagebox("增加或修改記錄成功!",48,"信息窗口")
“保存”按鈕功能的Error事件代碼如下:
LPARAMETERS nError, cMethod, nLine
cmessagetitle="學(xué)校人事管理系統(tǒng)"
cmessagetext="員工編號(hào)不唯一,請(qǐng)重新輸入!"
cmessagetype=16
messagebox(cmessagetitle,cmessagetext,cmessagetype)
=tablerevent(.t.)
locate for empty(員工表.編號(hào))
delete
pack
2.4 檔案統(tǒng)計(jì)
該模塊對(duì)教職工的信息進(jìn)行統(tǒng)計(jì),包括統(tǒng)計(jì)政治面貌、統(tǒng)計(jì)婚姻民族狀況。如統(tǒng)計(jì)婚姻民族狀況的結(jié)果如圖5所示。
圖5 員工婚姻民族狀況統(tǒng)計(jì)表
“統(tǒng)計(jì)婚姻民族狀況”功能的部分代碼如下:
store 0 to h11,h22,h33,h44,h55,h66,h77
use date\員工表
do while i<7
dw=substr("辦公室 計(jì)科系 外語(yǔ)系 中文系 數(shù)學(xué)系 后勤處 ",j,8)
store 0 to h1,h2,h3,h4,h5,h6,h7
count all for 婚姻狀況="已婚" .and. 部門編號(hào)=i to h4
count all for 婚姻狀況="未婚" .and. 部門編號(hào)=i to h5
count all for 民族="漢" .and. 部門編號(hào)=i to h6
count all for 民族<>"漢" .and. 部門編號(hào)=i to h7
count all for 性別="男" .and. 部門編號(hào)=i to h2
count all for 性別="女" .and. 部門編號(hào)=i to h3
store h2+h3 to h1
h11=h1+h11
……
h77=h7+h77
store h+1 to h
i=i+1
j=j+8
h=h+1
enddo
2.5 檔案輸出
該模塊輸出檔案相關(guān)信息,包括輸出部門信息、全體員工基本信息、員工工資信息、員工名冊(cè),如圖6所示。例如,選擇“員工工資信息”,單擊“打印預(yù)覽”,則調(diào)用報(bào)表“全體員工基本信息”,結(jié)果界面如圖7所示。
圖6 檔案輸出
圖7 員工工資信息輸出
“打印預(yù)覽”功能的實(shí)現(xiàn)代碼如下:
do case
case thisform.optiongroup1.value=1
report form 部門信息 preview
case thisform.optiongroup1.value=2
report form 全體員工基本信息 preview
case thisform.optiongroup1.value=3
report form 員工工資信息 preview
case thisform.optiongroup1.value=4
report form 員工名冊(cè) preview
endcase
3 結(jié) 語(yǔ)
基于VFP的學(xué)校人事管理系統(tǒng),通過優(yōu)化合理的數(shù)據(jù)庫(kù)結(jié)構(gòu),并利用菜單、表單、報(bào)表設(shè)計(jì)等理論方法,實(shí)現(xiàn)對(duì)學(xué)校人事的系統(tǒng)管理。該系統(tǒng)界面友好,運(yùn)行穩(wěn)定、功能基本符合用戶需求,具有較高的應(yīng)用推廣價(jià)值。
參考文獻(xiàn)
[1] 陳明銳,李懷成.數(shù)據(jù)庫(kù)管理系統(tǒng)Visual FoxPro 9.0應(yīng)用教程[M].北京:高等教育出版社,2010.
[2] 于寧,吳慶學(xué).基于VFP的校園招聘信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2013,36(4):23?25.
[3] 江世軍.基于VFP6的學(xué)籍成績(jī)管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2010.
[4] 侯偉.高職學(xué)院人事管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].濟(jì)南:山東大學(xué),2013.
[5] 金鑒祿,孟憲寶.人事管理系統(tǒng)的研究與實(shí)現(xiàn)[J].長(zhǎng)春工業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2003,24(2):23?25.
[6] 李強(qiáng).一種人事管理系統(tǒng)的開發(fā)[J].電子測(cè)試,2013(7):90?91.
store 0 to h11,h22,h33,h44,h55,h66,h77
use date\員工表
do while i<7
dw=substr("辦公室 計(jì)科系 外語(yǔ)系 中文系 數(shù)學(xué)系 后勤處 ",j,8)
store 0 to h1,h2,h3,h4,h5,h6,h7
count all for 婚姻狀況="已婚" .and. 部門編號(hào)=i to h4
count all for 婚姻狀況="未婚" .and. 部門編號(hào)=i to h5
count all for 民族="漢" .and. 部門編號(hào)=i to h6
count all for 民族<>"漢" .and. 部門編號(hào)=i to h7
count all for 性別="男" .and. 部門編號(hào)=i to h2
count all for 性別="女" .and. 部門編號(hào)=i to h3
store h2+h3 to h1
h11=h1+h11
……
h77=h7+h77
store h+1 to h
i=i+1
j=j+8
h=h+1
enddo
2.5 檔案輸出
該模塊輸出檔案相關(guān)信息,包括輸出部門信息、全體員工基本信息、員工工資信息、員工名冊(cè),如圖6所示。例如,選擇“員工工資信息”,單擊“打印預(yù)覽”,則調(diào)用報(bào)表“全體員工基本信息”,結(jié)果界面如圖7所示。
圖6 檔案輸出
圖7 員工工資信息輸出
“打印預(yù)覽”功能的實(shí)現(xiàn)代碼如下:
do case
case thisform.optiongroup1.value=1
report form 部門信息 preview
case thisform.optiongroup1.value=2
report form 全體員工基本信息 preview
case thisform.optiongroup1.value=3
report form 員工工資信息 preview
case thisform.optiongroup1.value=4
report form 員工名冊(cè) preview
endcase
3 結(jié) 語(yǔ)
基于VFP的學(xué)校人事管理系統(tǒng),通過優(yōu)化合理的數(shù)據(jù)庫(kù)結(jié)構(gòu),并利用菜單、表單、報(bào)表設(shè)計(jì)等理論方法,實(shí)現(xiàn)對(duì)學(xué)校人事的系統(tǒng)管理。該系統(tǒng)界面友好,運(yùn)行穩(wěn)定、功能基本符合用戶需求,具有較高的應(yīng)用推廣價(jià)值。
參考文獻(xiàn)
[1] 陳明銳,李懷成.數(shù)據(jù)庫(kù)管理系統(tǒng)Visual FoxPro 9.0應(yīng)用教程[M].北京:高等教育出版社,2010.
[2] 于寧,吳慶學(xué).基于VFP的校園招聘信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2013,36(4):23?25.
[3] 江世軍.基于VFP6的學(xué)籍成績(jī)管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2010.
[4] 侯偉.高職學(xué)院人事管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].濟(jì)南:山東大學(xué),2013.
[5] 金鑒祿,孟憲寶.人事管理系統(tǒng)的研究與實(shí)現(xiàn)[J].長(zhǎng)春工業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2003,24(2):23?25.
[6] 李強(qiáng).一種人事管理系統(tǒng)的開發(fā)[J].電子測(cè)試,2013(7):90?91.
store 0 to h11,h22,h33,h44,h55,h66,h77
use date\員工表
do while i<7
dw=substr("辦公室 計(jì)科系 外語(yǔ)系 中文系 數(shù)學(xué)系 后勤處 ",j,8)
store 0 to h1,h2,h3,h4,h5,h6,h7
count all for 婚姻狀況="已婚" .and. 部門編號(hào)=i to h4
count all for 婚姻狀況="未婚" .and. 部門編號(hào)=i to h5
count all for 民族="漢" .and. 部門編號(hào)=i to h6
count all for 民族<>"漢" .and. 部門編號(hào)=i to h7
count all for 性別="男" .and. 部門編號(hào)=i to h2
count all for 性別="女" .and. 部門編號(hào)=i to h3
store h2+h3 to h1
h11=h1+h11
……
h77=h7+h77
store h+1 to h
i=i+1
j=j+8
h=h+1
enddo
2.5 檔案輸出
該模塊輸出檔案相關(guān)信息,包括輸出部門信息、全體員工基本信息、員工工資信息、員工名冊(cè),如圖6所示。例如,選擇“員工工資信息”,單擊“打印預(yù)覽”,則調(diào)用報(bào)表“全體員工基本信息”,結(jié)果界面如圖7所示。
圖6 檔案輸出
圖7 員工工資信息輸出
“打印預(yù)覽”功能的實(shí)現(xiàn)代碼如下:
do case
case thisform.optiongroup1.value=1
report form 部門信息 preview
case thisform.optiongroup1.value=2
report form 全體員工基本信息 preview
case thisform.optiongroup1.value=3
report form 員工工資信息 preview
case thisform.optiongroup1.value=4
report form 員工名冊(cè) preview
endcase
3 結(jié) 語(yǔ)
基于VFP的學(xué)校人事管理系統(tǒng),通過優(yōu)化合理的數(shù)據(jù)庫(kù)結(jié)構(gòu),并利用菜單、表單、報(bào)表設(shè)計(jì)等理論方法,實(shí)現(xiàn)對(duì)學(xué)校人事的系統(tǒng)管理。該系統(tǒng)界面友好,運(yùn)行穩(wěn)定、功能基本符合用戶需求,具有較高的應(yīng)用推廣價(jià)值。
參考文獻(xiàn)
[1] 陳明銳,李懷成.數(shù)據(jù)庫(kù)管理系統(tǒng)Visual FoxPro 9.0應(yīng)用教程[M].北京:高等教育出版社,2010.
[2] 于寧,吳慶學(xué).基于VFP的校園招聘信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2013,36(4):23?25.
[3] 江世軍.基于VFP6的學(xué)籍成績(jī)管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2010.
[4] 侯偉.高職學(xué)院人事管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].濟(jì)南:山東大學(xué),2013.
[5] 金鑒祿,孟憲寶.人事管理系統(tǒng)的研究與實(shí)現(xiàn)[J].長(zhǎng)春工業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2003,24(2):23?25.
[6] 李強(qiáng).一種人事管理系統(tǒng)的開發(fā)[J].電子測(cè)試,2013(7):90?91.