企業(yè)考勤管理系統(tǒng)的設(shè)計(jì)說(shuō)明書(shū)_第1頁(yè)
企業(yè)考勤管理系統(tǒng)的設(shè)計(jì)說(shuō)明書(shū)_第2頁(yè)
企業(yè)考勤管理系統(tǒng)的設(shè)計(jì)說(shuō)明書(shū)_第3頁(yè)
企業(yè)考勤管理系統(tǒng)的設(shè)計(jì)說(shuō)明書(shū)_第4頁(yè)
企業(yè)考勤管理系統(tǒng)的設(shè)計(jì)說(shuō)明書(shū)_第5頁(yè)
已閱讀5頁(yè),還剩38頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上廣西大學(xué)數(shù)學(xué)與信息科學(xué)學(xué)院數(shù)據(jù)庫(kù)開(kāi)發(fā)與應(yīng)用課程設(shè)計(jì)報(bào)告題目 : 企業(yè)考勤管理系統(tǒng) 班 級(jí): 信息與計(jì)算科學(xué)121學(xué) 號(hào): xxx 姓 名: xxxxx 日 期: 二一四年六月 一、 背景與意義考勤管理系統(tǒng)是企業(yè)單位管理系統(tǒng)中最重要的信息。通過(guò)員工考勤考核管理,反映員工在一定階段的工作成績(jī)。而我國(guó)眾多的企業(yè)都是采用傳統(tǒng)的手工方式記錄企業(yè)員工每日的出勤情況,這種方式繁瑣易錯(cuò),準(zhǔn)確性、透明度、實(shí)時(shí)性差,受人為因素影響過(guò)大,增加了企業(yè)的人力資源成本。隨著現(xiàn)代科技的進(jìn)步,利用信息和計(jì)算機(jī)技術(shù)來(lái)進(jìn)行企業(yè)員工考勤的管理也成為現(xiàn)代化企業(yè)運(yùn)作必不可少的一部分。一個(gè)企業(yè)對(duì)其職工的正常上下

2、班、延時(shí)工作及加班工作進(jìn)行考勤,通過(guò)報(bào)表的形式輸出,合理調(diào)整員工工作安排,用計(jì)算機(jī)對(duì)考勤數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析處理,得到我們所需要的各種統(tǒng)計(jì)報(bào)表和考勤原始數(shù)據(jù),方便了企業(yè)對(duì)員工的管理。因此,開(kāi)發(fā)一個(gè)合適的、高質(zhì)量的、界面友好、易于操作的企業(yè)考勤管理系統(tǒng)進(jìn)行企業(yè)員工的考勤管理,對(duì)企業(yè)的長(zhǎng)遠(yuǎn)發(fā)展有重大的意義。本考勤管理系統(tǒng)的開(kāi)發(fā),是為了規(guī)范企業(yè)中考勤的管理工作,為考勤管理部門(mén)提供一套高效、快捷的應(yīng)用軟件。使用計(jì)算機(jī)進(jìn)行考勤信息的處理,具有如下優(yōu)點(diǎn):(1) 及時(shí)信息交流,改善管理質(zhì)量通過(guò)本系統(tǒng)對(duì)考勤信息的規(guī)范管理,可以及時(shí)掌握員工的信息,也能讓員工及時(shí)了解部門(mén)主管發(fā)布的通知信息。(2) 方便查詢(xún),提高工作

3、效率。 二、需求分析本系統(tǒng)要實(shí)現(xiàn)的功能模塊主要有:基本信息設(shè)置模塊、檔案管理模塊、審批模塊、查詢(xún)模塊、考勤記錄模塊、匯總統(tǒng)計(jì)模塊和系統(tǒng)管理模塊。要求提供數(shù)據(jù)輸入、輸出和整理功能,滿(mǎn)足日常工作的需要;具有查詢(xún)、統(tǒng)計(jì)等功能,方便用戶(hù)快捷使用和管理信息,提高工作效率;采用一定的安全保護(hù)措施,應(yīng)分有不同的使用權(quán)限,保證系統(tǒng)的實(shí)用性;具有系統(tǒng)備份和恢復(fù)功能,使系統(tǒng)使用者能容易進(jìn)行維護(hù),同時(shí)軟件功能完整、運(yùn)行穩(wěn)定、界面友好、操作簡(jiǎn)便。1. 對(duì)功能的規(guī)定針對(duì)企業(yè)的考勤管理業(yè)務(wù),本系統(tǒng)要實(shí)現(xiàn)以下功能:(1) 基本信息設(shè)置擁有對(duì)系統(tǒng)中的基本信息,包括:部門(mén)信息、員工職稱(chēng)信息、請(qǐng)假類(lèi)型信息、加班類(lèi)型信息、出差類(lèi)型

4、信息的添加、修改、刪除、查詢(xún)等操作的功能,當(dāng)大量新的信息需要錄入時(shí),可以通過(guò)EXCEL表格導(dǎo)入方式實(shí)現(xiàn),同時(shí)也可將相應(yīng)信息分別導(dǎo)出到EXCEL表格中。(2) 檔案管理?yè)碛袑?duì)系統(tǒng)中的員工信息、考勤制度信息、通知信息進(jìn)行增加、修改、刪除、查詢(xún)等操作的功能。在錄入員工信息時(shí),輸入員工的身份證號(hào),進(jìn)行回車(chē)操作即可自動(dòng)填充員工性別,年齡,身份屬地,生日信息。當(dāng)有大量新的員工信息、通知信息需要錄入時(shí),可以通過(guò)EXCEL表格導(dǎo)入方式實(shí)現(xiàn),同時(shí)也可將相應(yīng)信息導(dǎo)出到EXCEL表格中。(3) 審批管理?yè)碛袑?duì)系統(tǒng)中的請(qǐng)假信息、加班信息、出差信息進(jìn)行審批的功能。查詢(xún)出相應(yīng)的記錄,對(duì)該記錄進(jìn)行審批,審批通過(guò)則說(shuō)明該條請(qǐng)

5、假記錄生效,否則為無(wú)效記錄。此功能只有考勤主管和部門(mén)主管有操作權(quán)限。(4) 查詢(xún)管理?yè)碛袑?duì)系統(tǒng)中員工信息、企業(yè)考勤制度、出勤信息、請(qǐng)假信息、加班信息、出差信息進(jìn)行查詢(xún)的功能??梢园凑諉T工編號(hào),姓名,部門(mén)名等條件對(duì)員工具體信息進(jìn)行模糊/精確查詢(xún)。(5) 考勤記錄管理?yè)碛袑?duì)企業(yè)員工中的出勤信息、請(qǐng)假信息、加班信息、出差信息進(jìn)行增加、修改、刪除、查詢(xún)等操作,同時(shí)具有將相應(yīng)信息導(dǎo)出到EXCEL表格中的功能。其中只有可以對(duì)出勤信息進(jìn)行操作,當(dāng)有大量員工考勤相關(guān)信息需要錄入時(shí),只有考勤管理員可以通過(guò)EXCEL表格導(dǎo)入方式實(shí)現(xiàn)。(6) 匯總統(tǒng)計(jì)管理?yè)碛袑?duì)考勤情況進(jìn)行統(tǒng)計(jì)以及報(bào)表查看的功能。選擇某一時(shí)間段,可

6、對(duì)該時(shí)間段員工的考勤信息進(jìn)行統(tǒng)計(jì),其中只有審核通過(guò)的請(qǐng)假記錄,加班記錄,出差記錄能夠參與到考勤情況統(tǒng)計(jì)中??梢詫?duì)統(tǒng)計(jì)過(guò)的考勤情況通過(guò)報(bào)表來(lái)查看到具體信息。(7) 系統(tǒng)管理?yè)碛忻艽a修改、用戶(hù)管理、系統(tǒng)初始化、數(shù)據(jù)備份/恢復(fù)、日志查看的功能。密碼修改供當(dāng)前登錄用戶(hù)修改自己的密碼,修改時(shí)需要對(duì)新密碼提供二次輸入校對(duì)。用戶(hù)管理提供用戶(hù)的添加,修改,刪除,用戶(hù)名使用的是員工的編號(hào)。系統(tǒng)初始化將系統(tǒng)中的數(shù)據(jù)都刪除,初始化前需對(duì)系統(tǒng)中的數(shù)據(jù)進(jìn)行備份。數(shù)據(jù)備份/恢復(fù)擁有對(duì)系統(tǒng)中的數(shù)據(jù)進(jìn)行備份和恢復(fù)的功能。日志查看擁有對(duì)使用本系統(tǒng)的用戶(hù)的登錄及退出信息進(jìn)行查看的功能,以維護(hù)系統(tǒng)的正常操作。2. 對(duì)性能的規(guī)定為保

7、證本系統(tǒng)能夠長(zhǎng)期、安全、穩(wěn)定、可靠、高效的運(yùn)行,系統(tǒng)須滿(mǎn)足以下性能要求:(1) 實(shí)用性:本系統(tǒng)應(yīng)能夠系統(tǒng),便捷,快速的實(shí)現(xiàn)對(duì)員工作休時(shí)間的管理,從而保障企業(yè)的高效運(yùn)營(yíng)。(2) 操作簡(jiǎn)單:本系統(tǒng)應(yīng)適用于不同計(jì)算機(jī)水平的使用者,系統(tǒng)的操作盡可能簡(jiǎn)單易行。(3) 技術(shù)先進(jìn):產(chǎn)品的系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)應(yīng)緊跟計(jì)算機(jī)的發(fā)展潮流,產(chǎn)用目前較先進(jìn)的設(shè)計(jì)思想,利用最先進(jìn)的開(kāi)發(fā)技術(shù)和開(kāi)發(fā)工具。(4) 安裝使用簡(jiǎn)便:服務(wù)器端安裝簡(jiǎn)潔明了,客戶(hù)機(jī)無(wú)需再裝任何軟件,可直接使用。(5) 適應(yīng)性和可擴(kuò)充性:應(yīng)能廣泛使用與不同的企業(yè),開(kāi)發(fā)過(guò)程中,應(yīng)充分考慮可擴(kuò)充問(wèn)題。3. 數(shù)據(jù)管理能力的要求為保證企業(yè)使用本系統(tǒng)中數(shù)據(jù)的完整性,須滿(mǎn)

8、足以下數(shù)據(jù)管理要求:(1) 盡可能減少故障的發(fā)生,保障好數(shù)據(jù)的備份,數(shù)據(jù)的備份采用數(shù)據(jù)庫(kù)服務(wù)器的備份功能實(shí)現(xiàn)。(2) 當(dāng)系統(tǒng)發(fā)生故障時(shí),當(dāng)重新啟動(dòng)的時(shí)候,系統(tǒng)能夠正常運(yùn)行,若有數(shù)據(jù)遺失,能夠通過(guò)備份來(lái)還原。(3) 要保證數(shù)據(jù)的安全性,只有授權(quán)的人員才能進(jìn)入系統(tǒng)進(jìn)行相應(yīng)的操作。(4) 發(fā)現(xiàn)有錯(cuò)誤的數(shù)據(jù),及時(shí)地進(jìn)行修改。三、 系統(tǒng)總體分析與設(shè)計(jì)1. 解決方案為企業(yè)中的員工分別分配一個(gè)用戶(hù)號(hào)和密碼及相應(yīng)角色,員工可用該用戶(hù)名和密碼登錄進(jìn)入企業(yè)考勤管理系統(tǒng)。不同的角色對(duì)應(yīng)有不同的使用權(quán)限:普通員工可以進(jìn)入系統(tǒng)可以對(duì)各類(lèi)信息進(jìn)行查詢(xún),錄入自己的請(qǐng)假,加班及出差的記錄,對(duì)考勤的統(tǒng)計(jì)報(bào)表進(jìn)行查看以及對(duì)自己的

9、登錄密碼進(jìn)行修改;部門(mén)主管除擁有普通員工所有權(quán)限外,還可對(duì)員工信息,通知信息進(jìn)行添加,修改,刪除的操作,對(duì)員工輸入的請(qǐng)假,加班,出差記錄進(jìn)行審批,對(duì)員工某一階段的考勤進(jìn)行統(tǒng)計(jì);考勤管理員除擁有普通員工所有權(quán)限外,還可對(duì)企業(yè)的考勤制度進(jìn)行設(shè)置,對(duì)員工的出勤信息進(jìn)行錄入或?qū)?,同時(shí)也可對(duì)員工的請(qǐng)假,加班及出差記錄進(jìn)行批量導(dǎo)入;考勤主管具有系統(tǒng)的完全管理權(quán)限,要定期對(duì)系統(tǒng)進(jìn)行檢查和備份,以維護(hù)系統(tǒng)的安全。 系統(tǒng)設(shè)計(jì)分八個(gè)模塊:主菜單模塊,登錄模塊,檔案管理模塊,審批管理模塊,查詢(xún)管理模塊,考勤記錄管理模塊,匯總統(tǒng)計(jì)管理模塊和系統(tǒng)管理模塊。具體的功能結(jié)構(gòu)圖如圖1-1所示。圖3-1 企業(yè)考勤管理系統(tǒng)功能

10、結(jié)構(gòu)圖本系統(tǒng)采用Delphi技術(shù),以及SQL Server數(shù)據(jù)管理技術(shù)進(jìn)行主要的設(shè)計(jì),數(shù)據(jù)庫(kù)用SQL Server進(jìn)行設(shè)計(jì)和管理。系統(tǒng)使用分三種角色,包括:?jiǎn)T工,考勤管理員,部門(mén)主管,考勤主管。體現(xiàn)各角色的使用權(quán)限的功能結(jié)構(gòu)圖如圖1-2。圖3-2 體現(xiàn)各角色使用權(quán)限的功能結(jié)構(gòu)圖2. 數(shù)據(jù)庫(kù)設(shè)計(jì)(1) Personal(員工信息表)員工信息表主要存放員工的基本信息,具體字段信息如表3-1。表3-1 員工信息表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明Pno員工編號(hào)CHAR14PKP+日期+序號(hào)Pname姓名VARCHAR10Not nullDno部門(mén)編號(hào)CHAR14FKNot nullPTno職務(wù)編號(hào)CHAR14F

11、KNot nullIDCard身份證CHAR18ShuDi身份屬地CHAR20Sex性別CHAR2Age年齡INT-Birth生日DATE-Tel電話(huà)號(hào)碼VARCHAR20Photo相片VARBINARY50(2) PersonalType(職稱(chēng)表)職稱(chēng)表主要存放員工職稱(chēng)信息,被員工信息表所調(diào)用,具體字段信息如表4-9。表4-9 職稱(chēng)表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明PTno職稱(chēng)編號(hào)CHAR14PKPT+序號(hào)PTname職稱(chēng)名稱(chēng)VARCHAR20Not null(3) Department(部門(mén)信息表)部門(mén)信息表主要存放部門(mén)基本信息,提供給員工信息表調(diào)用,具體字段信息如表4-10。表4-10 部門(mén)信息表

12、字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明Dno部門(mén)編號(hào)CHAR14PKD+序號(hào)Dname部門(mén)名稱(chēng)VARCHAR20Not nullIntroduce部門(mén)簡(jiǎn)介VARCHAR100(4) Attendance(考勤記錄表)考勤記錄表主要存放員工日常的出勤信息,具體字段信息如表4-11。表4-11 考勤記錄表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明Ano記錄編號(hào)CHAR14PKA+日期+序號(hào)Pno員工編號(hào)CHAR14FKNot nullInOut出入情況CHAR2Not nullATime時(shí)間DATETIME-Not null(5) Overwork(加班記錄表)加班記錄表主要存放員工日常加班的記錄信息,只有主管審批通過(guò)后才能生效,才

13、能進(jìn)行相應(yīng)的加班統(tǒng)計(jì),具體字段信息見(jiàn)表4-12。表4-12 加班記錄表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明Ono記錄編號(hào)CHAR14PKO+日期+序號(hào)Pno員工編號(hào)CHAR14FKNot nullStartTime開(kāi)始時(shí)間DATETIME-EndTime結(jié)束時(shí)間DATETIME-OTno加班類(lèi)型編號(hào)CHAR14FKNot nullAPProval審核結(jié)果CHAR1(6) OverworkType(加班類(lèi)型表)加班類(lèi)型表主要存放加班類(lèi)型信息,提供給加班記錄表調(diào)用,具體字段信息如表4-13。表4-13 加班類(lèi)型表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明OTno加班類(lèi)型編號(hào)CHAR14PKOT+序號(hào)OTname加班類(lèi)型名VARCH

14、AR20Not null(7) Errand(出差記錄表)出差記錄表主要存放出差記錄信息,只有主管審批通過(guò)后才能生效,才能進(jìn)行相應(yīng)的出差統(tǒng)計(jì),具體字段如表4-14。表4-14 出差記錄表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明Eno記錄編號(hào)CHAR14PKE+日期+序號(hào)Pno員工編號(hào)CHAR14FKNot nullStartTime開(kāi)始時(shí)間DATETIME-EndTime結(jié)束時(shí)間DATETIME-Place出差地點(diǎn)VARCHAR20ETno出差類(lèi)型編號(hào)CHAR14FKNot nullAPProval審核結(jié)果CHAR1(8) ErrandType(出差類(lèi)型表)出差類(lèi)型表主要存放加班類(lèi)型信息,提供給出差記錄表調(diào)用,

15、具體字段信息如表4-15。表4-15 出差類(lèi)型表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明ETno出差類(lèi)型編號(hào)CHAR14PKET+序號(hào)ETname出差類(lèi)型名VARCHAR20Not null(9) Leave(請(qǐng)假記錄表)請(qǐng)假記錄表主要存放請(qǐng)假記錄信息,只有主管審批通過(guò)后才能生效,才能進(jìn)行相應(yīng)的請(qǐng)假統(tǒng)計(jì),具體字段如表4-16。表4-16 請(qǐng)假記錄表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明Lno記錄編號(hào)CHAR14PKL+日期+序號(hào)Pno員工編號(hào)CHAR14FKNot nullStartTime開(kāi)始時(shí)間DATETIME-EndTime結(jié)束時(shí)間DATETIME-LTno請(qǐng)假類(lèi)型編號(hào)CHAR14FKNot nullDemo情況說(shuō)明VA

16、RCHAR100APProval審核結(jié)果CHAR1(10) LeaveType(請(qǐng)假類(lèi)型表)請(qǐng)假類(lèi)型表主要存放加班類(lèi)型信息,提供給請(qǐng)假記錄表調(diào)用,具體字段信息如表4-17。表4-17 請(qǐng)假類(lèi)型表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明LTno請(qǐng)假類(lèi)型編號(hào)CHAR14PKLT+序號(hào)LTname請(qǐng)假類(lèi)型名VARCHAR20Not null(11) AttendanceCount(出勤情況統(tǒng)計(jì)表)出勤情況統(tǒng)計(jì)表主要記錄的是員工出勤,請(qǐng)假,加班,出差的一些統(tǒng)計(jì)信息,提供給企業(yè)管理著進(jìn)行查看,具體字段信息如表4-18。表4-18 出勤情況統(tǒng)計(jì)表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明ACno記錄編號(hào)CHAR14PKG+日期+序號(hào)Pno員工

17、編號(hào)CHAR14FKNot nullARno制度編號(hào)CHAR14FKNot nullYearMonth年月CHAR7Not nullShouldTime應(yīng)工作時(shí)間INT-小時(shí)ActualTime實(shí)際工作時(shí)間INT-小時(shí)LeaveTime累計(jì)請(qǐng)假時(shí)間INT-半天OverworkTime累計(jì)加班時(shí)間INT-小時(shí)ErrandTime累計(jì)出差時(shí)間INT-半天Late遲到次數(shù)SMALLINT-次LateTime遲到時(shí)間累計(jì)INT-小時(shí)Early早退次數(shù)SMALLINT-次EarlyTime早退時(shí)間累計(jì)INT-小時(shí)Absence曠工次數(shù)SMALLINT-次AbsenceTime曠工時(shí)間累計(jì)INT-小時(shí)(1

18、2) Logdb(日志信息表)日志信息表主要記錄的是企業(yè)中的員工登錄到系統(tǒng)以及退出系統(tǒng)的信息,具體字段信息如表4-19。表4-19 日志信息表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明Logno日志編號(hào)INT-PK自動(dòng)編號(hào)Uno用戶(hù)編號(hào)CHAR14FKNot nullLoginTime登錄時(shí)間DATETIME-LogoutTime退出時(shí)間DATETIME-(13) Userdb(用戶(hù)信息表)用戶(hù)信息表主要存儲(chǔ)用戶(hù)的信息,其中員工編號(hào)作為用戶(hù)名進(jìn)行登錄,密碼默認(rèn)為,同時(shí)也定義了用戶(hù)的角色,具體字段信息如表4-20。表4-20 用戶(hù)信息表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明Uno用戶(hù)編號(hào)CHAR14PKU+日期+序號(hào)Pno員工編號(hào)

19、CHAR14FKNot nullAuthority角色CHAR2Passwd密碼VARCHAR20默認(rèn)為(14) ARegulation(考勤制度表)考勤制度表主要存儲(chǔ)的是企業(yè)的考勤制度,具體字段信息如表4-21。表4-21 考勤制度表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明ARno制度編號(hào)CHAR14PKAR+序號(hào)ComeTime上午上班時(shí)間TIME-Not nullGooffTimepm上午下班時(shí)間TIME-Not nullComeTimepm下午上班時(shí)間TIME-Not nullGooffTime下午下班時(shí)間TIME-Not nullAmemo考勤制度VARCHAR10000(15) ShuDi(屬地表)

20、屬地表主要存儲(chǔ)的是身份證前6位所對(duì)應(yīng)的屬地名稱(chēng)的信息,錄入員工數(shù)據(jù)中身份證數(shù)據(jù)時(shí)快速得出員工性別,年齡,身份屬地,生日信息,減小因手工輸入產(chǎn)生的信息錯(cuò)誤概率,具體字段信息如表4-22。表4-22 屬地表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明ID編號(hào)CHAR6PKNot nullBM屬地編號(hào)CHAR14Not nullDQ屬地名稱(chēng)VARCHAR30Not null(16) Notice(通知表)通知表主要存儲(chǔ)的是企業(yè)中的一些通知信息,具體字段信息如表4-23。表4-23 通知表字段名稱(chēng)類(lèi)型長(zhǎng)度碼說(shuō)明Nno 通知編號(hào)CHAR14PKN+日期+序號(hào)NTime通知時(shí)間Datetime-Title 通知標(biāo)題VARCHA

21、R30Not nullContent 通知內(nèi)容CHAR5000四、系統(tǒng)的實(shí)現(xiàn)1. 界面設(shè)計(jì)系統(tǒng)設(shè)計(jì)中的界面設(shè)計(jì)不同于一般的平面設(shè)計(jì),擁有自身的設(shè)計(jì)特征。網(wǎng)頁(yè)設(shè)計(jì)應(yīng)時(shí)刻圍繞“信息傳達(dá)”這一主題來(lái)進(jìn)行。界面力求清晰、準(zhǔn)確、有力地傳達(dá)信息。本系統(tǒng)主要采用的的界面模板主要包括:登錄界面、主菜單界面、基本信息設(shè)置界面、檔案管理界面、查詢(xún)管理界面、考勤記錄管理界面、審核管理界面、匯總統(tǒng)計(jì)界面、系統(tǒng)管理設(shè)置界面。 (1). 登錄界面運(yùn)行本系統(tǒng)后,出現(xiàn)如圖4-1的登錄界面,輸入用戶(hù)名和密碼,選擇用戶(hù)角色,點(diǎn)擊“登錄”按鈕,如果輸入的信息不正確,會(huì)有“用戶(hù)名或密碼錯(cuò)誤,請(qǐng)檢查!”的錯(cuò)誤提醒 ,如果三次登陸錯(cuò)誤,

22、會(huì)有“你無(wú)權(quán)使用本系統(tǒng)!”的錯(cuò)誤提醒,即每次登錄,最多允許有三次登錄錯(cuò)誤的機(jī)會(huì)。當(dāng)所有信息都輸入正確后,可以登錄到主界面,不用的用戶(hù)角色進(jìn)入的主界面中的功能菜單不同。登錄界面允許效果圖如圖4-1。4-1 登錄界面(2). 主菜單界面用戶(hù)登錄后,可進(jìn)入到如圖4-2的主菜單界面,在主菜單界面中,用戶(hù)可以看到企業(yè)中發(fā)布的通知信息,這有利于讓企業(yè)中的員工盡可能快而全面地掌握企業(yè)中消息的動(dòng)態(tài)。主菜單界面如圖4-2圖4-2 主菜單界面(3).查詢(xún)管理界面在主菜單上點(diǎn)擊查詢(xún)菜單下的“請(qǐng)假情況查詢(xún)”,即可進(jìn)入到如下圖4-3請(qǐng)假情況查詢(xún)界面,在界面中輸入員工號(hào)或員工姓名、部門(mén)名稱(chēng)、請(qǐng)假類(lèi)型等信息,以及選擇時(shí)間范

23、圍的信息,即可進(jìn)行組合查詢(xún)以及模糊查詢(xún)。其他信息的查詢(xún)功能跟此功能基本一致,在此不再贅述。請(qǐng)假情況查詢(xún)界面如圖4-3。圖4-3 請(qǐng)假情況查詢(xún)界面(4). 信息管理界面信息管理界面包括:基本信息設(shè)置界面(圖4-4)、檔案管理界面(圖4-5)、考勤記錄管理界面(圖4-6)。點(diǎn)擊信息管理界面中的“添加”按鈕,相應(yīng)的記錄信息將自動(dòng)編號(hào),在輸入相應(yīng)信息即可。以員工信息管理為例,點(diǎn)擊“添加”按鈕,編號(hào)處將自動(dòng)填充,編號(hào)規(guī)則為::“P+年月日+001”,輸入省份證號(hào)后,回車(chē)即可得出性別、年齡、省份屬地、生日等信息,在部門(mén)的編輯框處雙擊,即可得出企業(yè)中的部門(mén)信息,選擇相應(yīng)的部門(mén),則可在該編輯框中得出相應(yīng)的部門(mén)

24、編號(hào),也可手動(dòng)輸入正確的部門(mén)編號(hào),職稱(chēng)的填寫(xiě)方式和部門(mén)的填寫(xiě)方式相同,再相應(yīng)地填寫(xiě)其他信息,點(diǎn)擊保存,如果信息填寫(xiě)無(wú)誤,會(huì)有“保存成功!”的提示,添加信息完成。同時(shí)也可選中相應(yīng)的員工信息,對(duì)其進(jìn)行刪除操作。也可導(dǎo)入/導(dǎo)出Excel表格。其他信息管理的功能跟此功能類(lèi)似,不再贅述。檔案管理界面如圖4-4。圖4-4 檔案管理界面圖4-5 基礎(chǔ)信息設(shè)置界面圖4-6 考勤記錄管理界面(5). 審批界面在主菜單上點(diǎn)擊查詢(xún)菜單下的“出差審批”,即可進(jìn)入到出差審批界面,如圖4-7。查詢(xún)出相應(yīng)的員工出差信息,覺(jué)得員工的出差信息無(wú)誤后即可進(jìn)行審批,點(diǎn)擊“確定”按鈕后,會(huì)出現(xiàn)“審批完成!”的提示。出差審批界面如圖4

25、-7。圖4-7 審批界面(6). 統(tǒng)計(jì)界面在主菜單上點(diǎn)擊查詢(xún)菜單下的“出差審批”,即可進(jìn)入到出差審批界面,如圖4-8。選擇需要統(tǒng)計(jì)的起始時(shí)間,點(diǎn)擊統(tǒng)計(jì),即可得到員工考勤情況的統(tǒng)計(jì)表(統(tǒng)計(jì)的信息包括:應(yīng)工作時(shí)間(小時(shí)),實(shí)際工作時(shí)間(小時(shí)),累計(jì)請(qǐng)假時(shí)間(半天),累計(jì)加班時(shí)間(小時(shí)),累計(jì)出差時(shí)間(半天),遲到次數(shù)(次),遲到時(shí)間累計(jì)(小時(shí)),早退次數(shù)(次),早退時(shí)間累計(jì)(小時(shí)),曠工次數(shù)(次),曠工時(shí)間累計(jì)(小時(shí))。統(tǒng)計(jì)需要一些時(shí)間,進(jìn)度條會(huì)顯示統(tǒng)計(jì)的進(jìn)度。統(tǒng)計(jì)界面如圖4-8。圖4-8 統(tǒng)計(jì)界面2. 系統(tǒng)實(shí)現(xiàn)關(guān)鍵技術(shù)(1). 添加數(shù)據(jù)時(shí)自動(dòng)編號(hào)運(yùn)行系統(tǒng)時(shí),當(dāng)需要新增信息時(shí),點(diǎn)擊“添加”按鈕,即

26、可進(jìn)行自動(dòng)對(duì)記錄的ID進(jìn)行編號(hào),以實(shí)現(xiàn)編號(hào)的規(guī)范性。添加數(shù)據(jù)時(shí)自動(dòng)編號(hào)的代碼如下:1. 自定義函數(shù):根據(jù)原來(lái)編號(hào)bh,構(gòu)造新編號(hào):年月日+3位序列。function xbh(bh:string):string;var d0,d1,c : string; begin d0:=copy(bh,2,8);/取8位日期數(shù)碼 c:=copy(bh,10,3);/取最后3位數(shù)碼 d1:=formatdatetime('yyyymmdd',now);/獲取當(dāng)天日期 if d0 <> d1 then / 如果不是同一天 bh:=d1+ '001'/構(gòu)造當(dāng)天第一個(gè)編號(hào)

27、 else begin c:='00'+inttostr(strtoint(c)+1);/在原來(lái)基礎(chǔ)上加1 bh:=d1+copy(c,length(c)-2,3);/構(gòu)造編號(hào):日期+3位整數(shù) end; xbh:= bh; end;(2). 員工信息管理中“添加”按鈕的點(diǎn)擊事件代碼。procedure TDanganForm.SpeedButton1Click(Sender: TObject);var bm:string;begin if adotable1.IsEmpty then bm:='P'+formatdatetime('yyyymmdd

28、9;,now)+ '001'/構(gòu)造第一個(gè)編號(hào) else begin adotable1.Last; bm:=adotable1'Pno'/ 讀取數(shù)據(jù)表末尾記錄的編號(hào) bm:='P'+xbh(bm); end; adotable1.Append;/在表尾添加新紀(jì)錄 DBedit11.Text:=bm;/在編輯框中填寫(xiě)新編號(hào) DBGrid2.Fields0.Text:=bm;/在表格框中填寫(xiě)新編號(hào) DBedit12.SetFocus;/將光標(biāo)移到填寫(xiě)姓名框end;員工信息添加為例,效果如圖4-9。圖4-9 員工信息添加頁(yè)面(3). 輸入身份證號(hào)回車(chē)顯

29、示其他相關(guān)信息運(yùn)行系統(tǒng),添加員工信息時(shí),輸入身份證號(hào),回車(chē)即可顯示該身份證號(hào)對(duì)應(yīng)員工的身份屬地、性別、年齡及生日信息。使用此功能減小了錄入信息的人員因失誤輸入錯(cuò)誤信息的概率,保證了信息的正確性。運(yùn)行效果圖如圖5-1所示,具體代碼如下:1. 身份證號(hào)對(duì)應(yīng)編輯框回車(chē)事件代碼。procedure TDanganForm.DBEdit13KeyPress(Sender: TObject; var Key: Char);const W:array 1.18 of integer = (7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); /位權(quán) A:array 0.10 of

30、char = ('1','0','x','9','8','7','6','5','4','3','2'); /校驗(yàn)碼Var i, j, S: integer; NewID, shud: string; da:Tdatetime; kk:boolean;begin kk:= (key=#8) or (key=#13) or (key='x') or (key='X') or (key>

31、=#48) and (key<=#57); if not kk then key:=#0; /鍵盤(pán)輸入過(guò)濾掉非身份證號(hào)碼 if key=#13 then begin NewID:= DBedit13.Text; /1. 檢查長(zhǎng)度 if Length(NewID) <> 18 then begin messageDlg('輸入的數(shù)字不是18位,請(qǐng)重新輸入!',mtError,mbOK,0); DBedit13.SetFocus; exit; end; /2.檢查屬地 ADOquery1.close; ADOquery1.Parameters.ParamByNam

32、e('sd').Value:= copy(NewID,1,6); /給動(dòng)態(tài)SQL語(yǔ)句賦值 ADOquery1.open; /打開(kāi),查詢(xún)記錄 if ADOquery1.RecordCount=0 then /如果找不到sd相同的記錄 begin MessageDlg('前面六位數(shù)字無(wú)效,請(qǐng)檢查!',mtinformation,mbok,0); DBedit13.SetFocus; exit; end else shud :=ADOquery1.FieldByName('DQ').Value; /獲取屬地/3. 檢查年年份 i:=strtoint(c

33、opy(NewID,7,4); /獲取年份 if ( i<1900) or ( i>2020) then begin MessageDlg('年份號(hào)碼無(wú)效,請(qǐng)檢查!',mtinformation,mbok,0); DBedit13.SetFocus; exit; end ; j:=strtoint(copy(NewID,11,2); /獲取月份 if ( j<1) or ( j>12) then begin MessageDlg('月份號(hào)碼無(wú)效,請(qǐng)檢查!',mtinformation,mbok,0); DBedit13.SetFocus;

34、 exit; end ; s:=strtoint(copy(NewID,13,2); if ( s<1) or ( s>31) then begin MessageDlg('日數(shù)號(hào)碼無(wú)效,請(qǐng)檢查!',mtinformation,mbok,0); DBedit13.SetFocus; exit; end ; da:= EncodeDate(i,j,s); /構(gòu)造生日 /4. 檢查校驗(yàn)碼 s:= 0; for i:=1 to 17 do begin j:= StrToInt(NewIDi) * Wi; s:= s + j; end; s:= s mod 11; if N

35、ewID18='X' then NewID18:='x' /將大寫(xiě)字母X變成小寫(xiě)字母x if NewID18<>AS then begin messageDlg('校驗(yàn)碼錯(cuò)!請(qǐng)重新輸入!',mtError,mbOK,0); showmessagefmt('校驗(yàn)碼錯(cuò)!應(yīng)該是%s!請(qǐng)重新輸入!',AS); DBedit13.SetFocus; exit; end; /5. 填寫(xiě)證件的詳細(xì)信息 ADOTable1.Edit; DBedit16.Text :=shud; /屬地 DBedit17.Text :=formatda

36、tetime('ddddd',da); /生日 DBedit18.Text :=formatdatetime('yy',date-da); /年齡 if NewID17 in '1','3','5','7','9' then /以下是判別性別 DBedit15.Text :='男' else DBedit15.Text :='女' end;end;(4). 導(dǎo)出EXCEL表格 運(yùn)行系統(tǒng)時(shí),可以對(duì)系統(tǒng)中的相應(yīng)數(shù)據(jù)信息導(dǎo)出到excel表格中,方便用戶(hù)使用相

37、應(yīng)的數(shù)據(jù)信息。1. 將某個(gè)數(shù)據(jù)表導(dǎo)出成Excel表的通用函數(shù)function ExportDBGrid(DBGrid: TDBGrid; SheetName: string): boolean;/直接保存,不顯示EXCELVarc, r, i, j: integer;app: Olevariant;TempFileName, ResultFileName: string;begintry result := True; app := CreateOLEObject('Excel.application'); app.WorkBooks.Add(xlWBatWorkSheet);

38、 except Application.MessageBox('Excel沒(méi)有正確安裝!','警告',MB_OK); result := False; exit; end; mainForm.SaveDialog1.DefaultExt:='xls' mainForm.SaveDialog1.FileName := SheetName; if mainForm.SaveDialog1.Execute then TempFileName := mainForm.SaveDialog1.FileName else Exit; app.Workbook

39、s.add; app.Visible := false; Screen.Cursor := crHourGlass; DBGrid.DataSource.DataSet.First; c := DBGrid.DataSource.DataSet.FieldCount; r := DBGrid.DataSource.DataSet.RecordCount; Application.ProcessMessages; for i := 0 to c - 1 do app.cells(1, 1 + i) := DBGrid.DataSource.DataSet.Fieldsi.DisplayLabel

40、; for j := 1 to r do begin for i := 0 to c - 1 do app.cells(j + 1, 1 + i) := DBGrid.DataSource.DataSet.Fieldsi.AsString; DBGrid.DataSource.DataSet.Next; end; ResultFileName := TempFileName; if ResultFileName = '' then ResultFileName := '數(shù)據(jù)導(dǎo)出' if FileExists(TempFileName) then DeleteFi

41、le(TempFileName); app.Activeworkbook.saveas(TempFileName); app.Activeworkbook.close(false); app.quit; app := unassigned;end;2. 調(diào)用導(dǎo)出Excel數(shù)據(jù)的函數(shù),“導(dǎo)出Excel表格”按鈕的點(diǎn)擊事件代碼。procedure TDanganForm.SpeedButton5Click(Sender: TObject);begin try Screen.Cursor := crHourGlass; /將鼠標(biāo)成沙漏狀 main.ExportDBGrid(DBGrid2,'

42、'); /調(diào)用函數(shù)導(dǎo)出數(shù)據(jù) finally Screen.Cursor := crDefault; /回復(fù)鼠標(biāo)原狀 end;end;(5).導(dǎo)入EXCEL表格運(yùn)行系統(tǒng)時(shí),當(dāng)需要新增大量數(shù)據(jù)時(shí),可以通過(guò)導(dǎo)入Excel表格實(shí)現(xiàn)批量增加的操作。注意:需要導(dǎo)入的Excel表格中的數(shù)據(jù)一定要與數(shù)據(jù)表中的數(shù)據(jù)類(lèi)型一致,否則會(huì)出現(xiàn)導(dǎo)入失敗的情況。導(dǎo)入Excel表格中數(shù)據(jù)的代碼如下:procedure TDanganForm.SpeedButton9Click(Sender: TObject); var oe:variant; str:string; i,j,n:integer; begin if o

43、pendialog1.Execute then opendialog1.DefaultExt:='xls' str:=opendialog1.FileName; oe:=CreateOleObject('Excel.Application'); oe.workbooks.open(str); /連接所選定的Excel表 n:=oe.Worksheets1.UsedRange.Rows.Count; /求工作表 sheet1中已有數(shù)據(jù)的行數(shù) tryfor i:=2 to n do /從Excel表第2行開(kāi)始,逐行讀入(假設(shè)第一行為表頭) begin ADoTabl

44、e2.Append; /添加空記錄 for j:=1 to ADOTable2.fieldcount do ADOTable2.Fieldsj-1.Value:=oe.worksheets1.cellsi,j.value; end; ADoTable2.Refresh; showmessage('導(dǎo)入完畢'); except showmessage('數(shù)據(jù)庫(kù)錯(cuò)誤或有重復(fù)編號(hào),請(qǐng)檢查'); end;end;(6). 組合查詢(xún)配合模糊查詢(xún)組合查詢(xún)配合模糊查詢(xún)能夠滿(mǎn)足查詢(xún)的各種需求。本系統(tǒng)中多處都實(shí)現(xiàn)了組合查詢(xún)以及模糊查詢(xún)。以查詢(xún)請(qǐng)假記錄為例,代碼如下:1. 查詢(xún)請(qǐng)假

45、記錄,“查詢(xún)”按鈕的事件代碼。procedure TSelectForm.SpeedButton3Click(Sender: TObject);var sqlstr: string; begdate: string; enddate: string;begin if ComboBox2.Text <>' ' then begin begdate := datetostr(DateTimePicker3.date) ; enddate := datetostr(DateTimePicker4.date); if combobox2.Text='在.日'

46、 then sqlstr := ' select * from Leave_Per_D where StarTime>='''+ begdate + ''' and StarTime<''' +datetostr(DateTimePicker3.date+1) + ''' and Pno like ''%'+ edit4.text + '%'' and Pname like ''%'+ edit10.Text

47、 + '%'' and Dname like ''%'+ edit9.Text + '%'' and LTname like ''%'+ edit17.Text + '%''' else if combobox2.Text='在.前' then sqlstr := ' select * from Leave_Per_D where StarTime<='''+ begdate + ''' a

48、nd Pno like ''%'+ edit4.text + '%'' and Pname like ''%'+ edit10.Text + '%'' and Dname like ''%'+ edit9.Text + '%'' and LTname like ''%'+ edit17.Text + '%''' else if combobox2.Text='在.后' then s

49、qlstr := ' select * from Leave_Per_D where StarTime>='''+ begdate + ''' and Pno like ''%'+ edit4.text + '%'' and Pname like ''%'+ edit10.Text + '%'' and Dname like ''%'+ edit9.Text + '%'' and LTnam

50、e like ''%'+ edit17.Text + '%''' else if combobox2.Text='在.間' then sqlstr := ' select * from Leave_Per_D where StarTime>='''+ begdate + ''' and StarTime<=''' + enddate + ''' and Pno like ''%'+ e

51、dit4.text + '%'' and Pname like ''%'+ edit10.Text + '%'' and Dname like ''%'+ edit9.Text + '%'' and LTname like ''%'+ edit17.Text + '%''' end else sqlstr := ' select * from Leave_Per_D where Pno like '

52、9;%'+ edit4.text + '%'' and Pname like ''%'+ edit10.Text + '%'' and Dname like ''%'+ edit9.Text + '%'' and LTname like ''%'+ edit17.Text + '%''' ADOQuery2.Close; ADOQuery2.SQL.Clear; ADOQuery2.SQL.Add(sqlstr); ADOQuery2.open;end;查詢(xún)效果如圖4-10。圖4-10 請(qǐng)假查詢(xún)效果圖(7). 匯總統(tǒng)計(jì)運(yùn)行本系統(tǒng)時(shí),選擇需要統(tǒng)計(jì)的起始時(shí)間,點(diǎn)擊統(tǒng)計(jì),即可得到員工考勤情況的統(tǒng)計(jì)表(統(tǒng)計(jì)的信息包括:應(yīng)工作時(shí)間(小時(shí)),實(shí)際工作時(shí)間(小時(shí)),累計(jì)請(qǐng)假時(shí)間(半天),累計(jì)加班時(shí)間(小時(shí)),累計(jì)出差時(shí)間(半天),遲到次數(shù)(次),遲到時(shí)間累計(jì)(小時(shí)),早退次數(shù)(次),早退時(shí)間累計(jì)(小時(shí)),曠工次數(shù)(次),曠工時(shí)間累計(jì)(小時(shí))。具體代碼如下:1. “統(tǒng)計(jì)”按鈕事件代碼。procedure THuizForm.SpeedButton2Clic

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論