版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、 - -1畢業(yè)設計畢業(yè)設計( (論文論文) )題 目 員工工資管理系統(tǒng)員工工資管理系統(tǒng) 2目錄第第 1 章章 緒論緒論.51.1 研究課題的背景.51.2 開發(fā)工具簡介.61.3 數(shù)據(jù)庫管理系統(tǒng).6第第 2 章章 員工工資管理系統(tǒng)分析與設計員工工資管理系統(tǒng)分析與設計.72.1 應用需求分析.72.2 系統(tǒng)功能模塊劃分.8第第 3 章章 數(shù)據(jù)庫管理系統(tǒng)設計數(shù)據(jù)庫管理系統(tǒng)設計.93.1 數(shù)據(jù)庫中表的建立和設計.93.2 數(shù)據(jù)庫中各個表的觸發(fā)器的建立.12第第 4 章章 應用程序設計應用程序設計.154.1 歡迎界面.154.2 登錄模塊設計.164.2.1 身份驗證.164.3 主窗體設計.184
2、.4 信息錄入管理窗體設計.194.4.1 錄入模塊設計.194.5 信息查詢管理窗體設計.214.5.1 查詢模塊設計.214.6 信息修改模塊.234.6.1 修改模塊設計.244.7 數(shù)據(jù)導出模塊設計.25第第 5 章章 系統(tǒng)測試系統(tǒng)測試.325.1 測試目的.325.2 測試方法.325.3 測試結(jié)論.33第第 6 章章 結(jié)束語結(jié)束語.34致致 謝謝.36參考文獻參考文獻.37 - -3摘 要企業(yè)的員工管理是公司管理的一個重要內(nèi)容。隨著企業(yè)人員數(shù)量增加,企業(yè)的員工管理工作也變得越來越復雜。員工管理既涉及到企業(yè)勞動人事的管理,企業(yè)財務管理等。員工管理需要和人事管理相聯(lián)系,同時連接工時考勤
3、和醫(yī)療保險等等,來生成企業(yè)每個職工的基本工資、津貼、醫(yī)療保險、保險費、實際發(fā)放工資等。早期的員工統(tǒng)計和發(fā)放都是使用人工方式處理紙質(zhì)材料,不僅花費財務人員大量的時間且不易保存,往往由于個人的因素抄寫不慎或計算疏忽,出現(xiàn)員工統(tǒng)計錯誤的現(xiàn)象。早期員工管理多采取紙質(zhì)材料和具有較強的時間限制。基于以上原因,企業(yè)員工管理系統(tǒng)使用電腦安全保存、快速計算、全面統(tǒng)計,實現(xiàn)員工管理的系統(tǒng)化、規(guī)范化、自動化。企業(yè)員工管理系統(tǒng)是典型的信息管理系統(tǒng)(mis),前臺程序開發(fā)工具采用delphi,后臺數(shù)據(jù)庫采用 sql server 2000 數(shù)據(jù)庫。delphi 開發(fā)工具,具有組件豐富、語言簡單、功能強大的優(yōu)點。 sql
4、 數(shù)據(jù)庫具有與 delphi 無縫連接、操作簡單、易于使用的優(yōu)點。運行結(jié)果證明,本企業(yè)員工管理系統(tǒng)極大提高了工作效率,節(jié)省了人力和物力,最終滿足企業(yè)員工管理等需要,同時也成為現(xiàn)代化企業(yè)管理的標志?!娟P鍵字】員工信息系統(tǒng),數(shù)據(jù)庫,工資管理,實體關系圖(e-r 圖),數(shù)據(jù)字典,數(shù)據(jù)流圖。abstract enterprise staff management is an important aspect of management. with the increase in the number of enterprises, corporate management staff has beco
5、me more 4and more complex. both staff management and personnel involved in labor management, enterprise financial management. staff management needs and associated personnel management, working hours, attendance at the same time to connect and medical insurance, etc., to generate business for each o
6、f the basic wages of workers, allowance, medical insurance, insurance, wages actually paid. early release of statistics and the staff are using artificial methods to deal with paper-based materials, not only the financial officers spent a lot of time and difficult to preserve, often transcription fa
7、ctors as a result of personal carelessness or negligence of the calculation, there is the wrong statistics staff. early management staff to take paper-based materials and many have strong time constraints. for these reasons, the enterprise management system for staff to preserve the use of computer
8、security, and rapid calculation, comprehensive statistics, staff management to achieve the systematic, standardized and automated. employee management system is a typical management information system (mis), development tools for the future use of delphi, back-end database using sql server 2000 data
9、base. delphi development tools, has a component rich in simple language and powerful advantages. sql database with the delphi seamless, simple operation, easy-to-use advantages. the results prove that the enterprise management system staff have greatly improved work efficiency, saving human and mate
10、rial resources, and ultimately meet the needs of enterprises, such as staff management, but also become a symbol of the modernization of enterprise management 【keywords】 staff information system, database, payroll management, entity relationship diagram (er diagram), data dictionary, data flow diagr
11、am. - -5第第 1 章章 緒論緒論1.1 研究課題的背景研究課題的背景借助現(xiàn)代信息技術和管理理論,建立員工管理信息系統(tǒng)是當今社會的重要趨勢。黨和政府根據(jù)知識經(jīng)濟時代的特點,對國民經(jīng)濟建設提出了“用信息化帶動工業(yè)化”的指導思想。對企業(yè)而言,全面開發(fā)和應用計算機管理信息系統(tǒng)就是近期不能回避的問題。在企業(yè)管理中,人力資源是企業(yè)最寶貴的資源,也是企業(yè)的“生命線” ,因此員工管理是企業(yè)的計算機管理信息系統(tǒng)重要組成部分。而員工管理又是人力資源管理的重中之重。實行電子化的員工管理,可以讓人力資源管理人員從繁重瑣碎的案頭工作解脫出來,去完成更重要的工作。員工管理信息系統(tǒng)的實現(xiàn)可以減輕比較繁瑣的手工員工管
12、理?,F(xiàn)在應用在大中型企業(yè)的管理信息系統(tǒng)中,幾乎都包括了員工管理模塊。有些環(huán)境中是由作為大型 erp 軟件中的一個模塊引進的,有些是作為企業(yè)的財務系統(tǒng)的一部分。這些根據(jù)規(guī)范的西方的管理制度設計的員工管理軟件,在很多時候還不能完全解決中國特色的中小企業(yè)的問題,本文介紹的畢業(yè)設計的研究工作就是要為這些具有中國特色的中小企業(yè)解決他們在員工管理方面的問題。通過在本單位經(jīng)過一周的調(diào)研,并參考其他同行設計員工管理軟件,我基本上搞清楚了小型企業(yè)對系統(tǒng)的需求,如果能夠設計一套針對類似本單位的小型國有企業(yè)的員工管理系統(tǒng)特別有意義,并且是現(xiàn)行的其他管理軟件代替不了的。在和指導老師多次交流后,確定實現(xiàn)方案的要點和工作
13、計劃。本系統(tǒng)的實現(xiàn)的主要功能有:員工信息管理、工資管理、部門信息管理、員工考勤管理等功能。61.2 開發(fā)工具簡介開發(fā)工具簡介開發(fā)工具采用 delphi7.0。delphi7.0 是目前較為廣泛的、易學易用的開發(fā)工具。delphi7.0 也提供了大量的控件,這些控件可用于設計界面和實現(xiàn)各種功能,減少了編程人員的工作量,也簡化了界面設計過程,從而有效的提高了應用程序的運行效率和可靠性。因此,本系統(tǒng)使用 delphi7.0 開發(fā)。1.3 數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫開發(fā)工具采用 sql server 2000。借助 sql server 2000 的數(shù)據(jù)庫管理系統(tǒng)對數(shù)據(jù)庫進行一切操作,包括定義
14、各種更新和控制。在數(shù)據(jù)庫領域中通常把數(shù)據(jù)模型分為三種:層次模型(hierarchical model) 、網(wǎng)狀模型(network model)和關系模型(relational model) 。sql server 2000 就是一種關系型數(shù)據(jù)庫管理系統(tǒng)。關系模型是數(shù)據(jù)庫系統(tǒng)中最重要的模型,關系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表。使用表格來描述實體之間的關系,用外鍵表示實體間聯(lián)系。關系模型是由若干個關系模式組成的集合。關系模式相當于前面提到的記錄類型,每個關系實際上是一張二維表格。關系模型和層次、網(wǎng)狀模型的最大判別是用關鍵碼而不是用指針導航數(shù)據(jù),表格簡單用戶易懂,編程時并不涉及存儲結(jié)構(gòu),訪問技術
15、等細節(jié)。sql 語言是關系型數(shù)據(jù)庫的標準化語言,已得到了廣泛的應用。 - -7第第 2 章章 員工工資管理系統(tǒng)分析與設計員工工資管理系統(tǒng)分析與設計2.1 應用需求分析應用需求分析需求分析的過程可以說是一個對具體問題的反復理解和抽象的過程。理解就是對現(xiàn)實問題的理解,要弄清楚究竟需要解決什么問題。抽象就是除去問題的表面,提取問題的本質(zhì),建立問題的邏輯模型,以便于以后階段的系統(tǒng)的設計實現(xiàn)。需求分析階段是軟件產(chǎn)品生存命期中的一個重要階段,其根本任務是確定用戶對軟件系統(tǒng)的需求。所謂需求是指用戶對軟件的功能和性能的要求,就是用戶希望軟件能什么事情,完成什么樣的功能,達到什么性能。通常需求分為兩種類型:一種
16、是功能性需求,一種是非功能性需求,這一點也需要有一種清楚的認識。功能性需求是指需要計算機系統(tǒng)解決的問題,也就是對數(shù)據(jù)的處理要求,這是一類最主要的需求。非功能性需求是指實際使用環(huán)境所要求的需求,往往是一些限制要求,例如:性能要求,可靠性要求,安全保密要求,等等。軟件需求一般包含三個層次業(yè)務需求、用戶需求和功能需求,還包括非功能需求。業(yè)務需求:反映了組織機構(gòu)或客戶對系統(tǒng)、產(chǎn)品高層次的目標要求,它們在項目視圖與范圍文檔中予以說明。用戶需求:描述了用戶使用產(chǎn)品必須要完成的任務和具備的功能,這在使用實例文檔或方案腳本說明中予以說明。功能需求:定義了開發(fā)人員必須實現(xiàn)的軟件功能,使得用戶能完成他們的任務,從
17、而滿足其業(yè)務需求。82.2 系統(tǒng)功能模塊劃分系統(tǒng)功能模塊劃分開發(fā)這個系統(tǒng)的目的就是幫助企業(yè)的主管部門提高工作效率,實現(xiàn)企業(yè)員工信息管理的系統(tǒng)化、規(guī)范化和自動化。能夠和工資管理系統(tǒng)、考勤管理系統(tǒng)相結(jié)合,真正實現(xiàn)企業(yè)高效、科學、現(xiàn)代化的員工管理。系統(tǒng)最終實現(xiàn)的主要功能如圖 2-1所示:工資管理系統(tǒng)信息錄入信息修改打 印信息查詢員工信息錄入員工工資錄入部門信息錄入員工工資查詢部門信息查詢部門信息修改員工信息修改員工工資修改添加管理員員工信息查詢所有員工工資修改打印員工信息打印員工工資圖 2-1 系統(tǒng)結(jié)構(gòu)圖1)部門管理:能夠維護體現(xiàn)部門間的組織關系,反映部門的基本信息,能夠進行部門的增加撤消,以及部門
18、信息(如部門名稱、負責人名稱等)的修改。2)用戶管理:能夠?qū)ο到y(tǒng)中已有的用戶進行編輯、修改權限或刪除,并能添加其他的用戶。用戶管理是該系統(tǒng)中最為安全的地方,他設置權限問題,不同的權限設置相應的操作權限。這對一個企業(yè)來說是至關重要的。是該系統(tǒng)中設置安全問題最為復雜的。3)員工信息的管理:維護員工的基本信息,用戶可以進行員工檔案信息的錄入及更改,其中包括員工的基本信息,要求這些員上檔案信息可以進行新增、刪除、修改操作,同時可以進行瀏覽和查詢的操作。該模塊是本系統(tǒng)的重點,用戶可以 - -9通過該模塊為單位建立一個比較完整的人事檔案系統(tǒng),同時可以比較方便地對檔案進行查看。4)員工工資信息管理:維護員工
19、的工資信息,可以對員工的工資信息進行查找,和相應的新增、刪除、修改等操作,同時也可進行瀏覽查詢的操作。該模塊也是該系統(tǒng)中設置安全問題比較多的,員工工資直接關系到一個企業(yè)財務問題,所以他不允許不具有權限的員工進行修改。同時他的總和是計算機自動計算的,避免了出現(xiàn)不必要的錯誤。5)員工考勤信息管理:維護員工考勤信息,可以對員工的考勤信息進行修改、添加、刪除等操作,同時具備對指定員工考勤信息的查詢?yōu)g覽功能的操作。第第 3 章章 數(shù)據(jù)庫管理系統(tǒng)設計數(shù)據(jù)庫管理系統(tǒng)設計3.1 數(shù)據(jù)庫中表的建立和設計數(shù)據(jù)庫中表的建立和設計所用 sql server 是一個后臺數(shù)據(jù)庫管理系統(tǒng),它功能強大操作簡便,目前很多開發(fā)工
20、具都提供了與 sql server 的接口。sql server 不但可以應用于大中型數(shù)據(jù)庫管理中,建立分布式關系數(shù)據(jù)庫,也可以開發(fā)桌面數(shù)據(jù)庫。sql server 數(shù)據(jù)庫處理的基本結(jié)構(gòu),采取關系型數(shù)據(jù)庫模式,但在它的數(shù)據(jù)庫處理方式上,則是使用面向?qū)ο蟮牟僮鞣绞?,也就是說,sql server 的所有功能,都可以基于系統(tǒng)已經(jīng)建立好的一些對象來達成,是相當 oo(面向?qū)ο螅┑囊粋€系統(tǒng)結(jié)構(gòu)。sql server 企業(yè)管理器是 sql server 的主要管理工具,這也是作者在開發(fā)這個人事管理系統(tǒng)所用到的一個重要工具。 數(shù)據(jù)庫設計主要是進行數(shù)據(jù)庫邏輯設計,即將數(shù)據(jù)按一定的分類、分組系統(tǒng)和邏輯層次組織
21、起來,是面向用戶的。數(shù)據(jù)庫設計時需要綜合企業(yè)各個部門的存檔數(shù)據(jù)和數(shù)據(jù)需求,分析各個數(shù)據(jù)之間的關系,按照 dbms 提供的功能和描述工10具,設計出規(guī)模適當、正確反映數(shù)據(jù)關系、數(shù)據(jù)冗余少、存取效率高、能滿足多種查詢要求的數(shù)據(jù)模型表 3-1 用戶表列名數(shù)據(jù)類型長度是否為空用戶名char10否密碼char10否權限nchar15否說明:這張表存放的目前用戶的權限信息,其中用戶名設為主鍵。每個登錄用戶必定屬于以上一個權限。該權限直接關系到在系統(tǒng)中所具有的權限,并且用戶名必須唯一并不能為空。表 3-2 員工基本信息表列名數(shù)據(jù)類型長度是否為空員工編號char10否員工姓名nvarchar10否性別nvar
22、char10否出生年月smalldatetime4否參加工作時間smalldatetime4否部門名稱nvarchar20否政治面貌nvarchar20否婚姻狀況nvarchar20否說明:員工信息表中包含了員工的基本信息,其中員工編號是該表的主鍵。字段出生年月和參加工作時間必須按照相應的時間格式(yyyy-mm-dd)進行填寫否則將出現(xiàn)字符轉(zhuǎn)換的錯誤。表 3-3 員工工資信息表(wages) - -11列名數(shù)據(jù)類型長度是否為空員工編號char10否時間datetime8否基本工資int4否崗位工資int4否住房補貼int4否津貼int4否工會會費int4否水電費int4否住房公積金int4否
23、養(yǎng)老保險int4否獎金int4否罰金int4否應發(fā)金額int4是應扣金額int4是實發(fā)金額int4是說明:員工工資信息表包含該企業(yè)所有員工的工資信息,包括每位員工所得得每項獎勵和罰款,其中員工編號是根據(jù)員工信息表中的員工編號一致的。字段應發(fā)金額、應扣金額、實發(fā)金額都是根據(jù)前面的值進行自己計算的。這就省去了人工計算的麻煩和相應的錯誤。表 3-4 部門信息表列名數(shù)據(jù)類型長度是否為空部門編號char20否部門名稱nvarchar20否12部門負責人nrarchar20否部門人數(shù)int4否說明:部門信息表中包含了改企業(yè)中所有的部門和該部門的管理人和名稱。其中部門人數(shù)是根據(jù)員工信息管理中各部門人數(shù)自動累
24、加的。3.2 數(shù)據(jù)庫中各個表的觸發(fā)器的建立數(shù)據(jù)庫中各個表的觸發(fā)器的建立 觸發(fā)器是保證數(shù)據(jù)完整性的有效方法。在很多情況下,用戶希望把一行數(shù)據(jù)插入表中后,某個業(yè)務規(guī)則能夠建立立即執(zhí)行;或者,用戶刪除一行數(shù)據(jù)后,應該立即把其他表中與該行數(shù)據(jù)相關的數(shù)據(jù)也刪除掉;或者更新某個表中的一條數(shù)據(jù)后,能立即實現(xiàn)所有相關數(shù)據(jù)的必要更新。要實現(xiàn)這些目的,一個很有效的手段就是觸發(fā)器。員工管理系統(tǒng)要求員工信息必須是同步的,當員工信息表中添加員工信息時相應的員工工資信息表、考勤信息表中也應該添加相應的數(shù)據(jù)。1.當員工信息表中發(fā)生變化時,比如刪除員工基本信息,對應的員工基本工資信息表里的員工信息也應該刪除。這是就需要 de
25、lete 觸發(fā)器:create trigger employee_delete on dbo.員工基本信息表for deleteasdeclare num intselect num=部門信息表.部門人數(shù) from 部門信息表,deleted where 部門信息表.部門編號=deleted.部門編號begin update 部門信息表 set 部門人數(shù)=部門人數(shù)-1 from 部門信息表,deleted where 部門信息表.部門編號=deleted.部門編 - -13號 delete 員工工資信息表 from deleted where deleted.員工編號=員工工資信息表.員工編號
26、 delete 用戶表 from deleted where deleted.員工編號=用戶表.用戶名end2.當員工信息表中添加員工信息時,部門人數(shù)應該增加所以應該有 insert觸發(fā)器:create trigger employee_insert on dbo.員工基本信息表for insertasdeclare num intselect num=部門信息表.部門人數(shù) from 部門信息表,inserted where 部門信息表.部門編號=inserted.部門編號begin update 部門信息表 set 部門人數(shù)=部門人數(shù)+1 from 部門信息表,inserted where
27、部門信息表.部門編號=inserted.部門編號end3.如果部門信息表里記錄的部門人數(shù)不正確,數(shù)據(jù)庫應該有自動計算出人數(shù)并修改的功能,這就需要 update 觸發(fā)器:create trigger employee_update on dbo.員工基本信息表 for updateasupdate 部門信息表 set 部門人數(shù)=( 14 select count(員工基本信息表.員工編號) from 員工基本信息表,inserted where 員工基本信息表.部門編號=inserted.部門編號) from 部門信息表,insertedwhere 部門信息表.部門編號=inserted.部門編
28、號update 部門信息表 set 部門人數(shù)=( select count(員工基本信息表.員工編號) from 員工基本信息表,deleted where 員工基本信息表.部門編號=deleted.部門編號) from 部門信息表,deletedwhere 部門信息表.部門編號=deleted.部門編號 - -15第第 4 章章 應用程序設計應用程序設計4.1 歡迎界面歡迎界面系統(tǒng)啟動后,先顯示封面,突出系統(tǒng)主題,如圖 4-1。圖 4-1歡迎界面是系統(tǒng)設計中經(jīng)常用到的,他利用系統(tǒng)在正常啟動所用的時間,而對用戶表達本系統(tǒng)的一些相應的訊息,同時解除用戶在等待是的無聊時光在 form1 上放置一
29、image 控件,并將其 picture 屬性設置為需要的圖片,將此窗體的 borderstyle、position 和 formstyle 三個屬性的值設置為bsnone、podesktopcenter 和 fsstayontop,以便使封面窗體沒有標題且顯示在屏幕中央所有窗口的上方。該登錄界面使用 playsoundplaysound(c:windowsmediawindows xp 啟動.wav,0,snd_sync);組件,調(diào)用系統(tǒng)音樂主要源碼:16application.initialize; application.createform(tform1, form1); form1.
30、show;form1.update; playsound(c:windowsmediawindows xp 啟動.wav,0,snd_sync); form1.free; application.createform(tform2, form2);4.2 登錄模塊設計登錄模塊設計系統(tǒng)封面顯示完畢后,系統(tǒng)創(chuàng)建主窗體,即登陸界面。登陸界面包含用戶名、密碼、用戶登錄按鈕、職工登錄按鈕,注冊按鈕,如下圖所示:圖 4-24.2.1 身份驗證身份驗證輸入:輸入用戶名稱,填寫正確的密碼。處理:(1) 用戶登錄窗體啟動。 - -17(2) 用戶填寫用戶名并輸入密碼。(3) 從用戶清單表中檢查是否有相應的用戶名
31、和密碼。(4) 如果輸入的用戶名或相應密碼錯誤,進行提示。(5) 如果輸入的用戶名和相應密碼正確,判斷用戶的權限并且進入主控制平臺輸出:主控制平臺 除了必要的控件外還需要一數(shù)據(jù)庫控件 tadtable,設置connectionstring 連接到工資管理數(shù)據(jù)庫。登陸驗證部分代碼為: form2.adotable1.locate(用戶名;密碼;權限,vararrayof(edit1.text,edit2.text,管理員)/button1 按鈕事件(管理員),驗證用戶登錄信息由于管理員和職工進入的主界面相同,所以只需要設置一些按鈕的 enable為 false 即可,這樣做減少了窗體,相應的程序
32、所占用的空間也減少。因為“良好的交互性有利于提高人機匹配效率“,所以,除以上代碼之外,還需設置提醒信息:如“登陸失敗” , “請重新登陸”等字樣,這樣,出現(xiàn)錯誤的時候可以友好的提示用戶。4.3 主窗體設計主窗體設計用戶登錄后進入系統(tǒng)的主界面,如圖 4-3 所示:18圖 4-3在這個項目中,選擇使用多文檔界面。使用這個窗體的好處是可以使程序更加有條理。對于一個多任務的應用程序,使用多文檔窗體還可以減少占用的系統(tǒng)資源。主窗體設計的界面是用菜單編輯器做的,主要信息錄入、信息查詢、信息修改、信息打印四部分組成。主窗體是進行相關操作的主界面。該界面是系統(tǒng)的主界面,通過主界面進入其他的功能界面。其中用戶能
33、夠顯示登錄的用戶名而權限顯示的該用戶所具有的權限。如果是管理員權限能夠?qū)φ麄€系統(tǒng)進行所有的操作,而普通用戶權限只能進入信息查尋、錄入和修改自己的信息。 在住窗體中進入信息錄入(員工信息錄入,員工工資錄入,部門信息錄入)時,進入的是同一個窗體(form4),所以在單擊菜單編輯器時就需要用代碼對format4 窗體進行必要的修改,如 form4 的 caption,adotabel 連接的數(shù)據(jù)表,還有 edit 和 label 的可見度和 label 的 caption,form4 的大小等。 - -194.4 信息錄入管理窗體設計信息錄入管理窗體設計信息錄入窗體員工信息錄入,如圖 4-4:圖 4
34、-44.4.1 錄入模塊錄入模塊設計設計該窗體時由三個窗體集合而成 form5,包括員工信息錄入,員工工資錄入,部門信息錄入三個部分。當員工進入時只能用員工信息錄入。其他二個功能的 enable 為 false 不可用。主要源碼:a判斷錄入信息是否完整:20if (form5.edit1.text=) or (form5.edit2.text=) or (form5.edit3.text=) then showmessage(信息不完整)b連接數(shù)據(jù)庫:if form5.caption=員工信息錄入 then/根據(jù)標題確定連接的數(shù)據(jù)表 begin form5.adotable1.connecti
35、on:=form2.adoconnection1; form5.adotable1.close; form5.adotable1.tablename:=員工基本信息表;/連接的數(shù)據(jù)表 form5.adotable1.open; form5.adotable1.active:=true;c系統(tǒng)進入錄入狀態(tài):form5.adotable1.insert;d錄入三種數(shù)據(jù)類型數(shù)據(jù)的轉(zhuǎn)換:1.字符串型:form5.adotable1.fieldbyname(員工編號).asstring:=edit1.text; 2.時間型:form5.adotable1.fieldbyname(出生年月).asdate
36、time:=strtodatetime(edit4.text); 3.數(shù)據(jù)類型:form5.adotable1.fieldbyname(崗位工資).asinteger:=strtoint(edit4.text); e錄入成功保存:form5.adotable1.post; showmessage(錄入成功);4.5 信息查詢管理窗體設計信息查詢管理窗體設計信息查詢窗體員工信息查詢,圖 4-5 - -21圖 4-54.5.1 查詢模塊設計查詢模塊設計該窗體是三個窗體集成的窗體 form6,它包括:員工信息查詢,員工工資查詢,部門信息查詢?nèi)齻€部分。管理員和員工進入這個界面時的操作時相同的在查詢到信
37、息時還可以把所查詢的信息進行打印。通過該窗體,企業(yè)可以掌握員工的姓名,出生日期,參加工作時間等,這有助于對員工的了解,同時員工可以通過該窗體自己的個人信息和工資信息進行確認,了解部門信息等在該窗體中查詢的設計總共用到兩次:指定相應信息的查詢設計和查詢所有的信息。使用 radiobutton 設置了不同的選擇條件,當選擇員工編號時,其他的信息輸入欄變?yōu)椴豢捎?,同樣選擇其他的另外兩個不可用,查詢時根據(jù)選定的radiobutton 而判斷查詢的條件。22主要源碼:if form6.caption=員工信息查詢 then/確定標題用于連接數(shù)據(jù)表 begin form6.adotable1.close;
38、 form6.adotable1.open; form6.adotable1.active:=true; if form6.radiobutton1.checked then/判斷查詢的方式 begin /按員工編號查詢 if form6.adotable1.locate(員工編號,edit1.text,) then showmessage(找到信息) else showmessage(沒有此項記錄); end; if form6.radiobutton2.checked then/按姓名查詢 begin if form6.adotable1.locate(姓名,edit2.text,) th
39、en showmessage(找到信息) else showmessage(沒有此項記錄); end; end;4.6 信息修改模塊信息修改模塊 信息修改模塊員工基本信息修改,圖 4-6 和圖 4-7 - -23圖 4-6圖 4-74.6.1 修改模塊設計修改模塊設計該窗體也是三個窗體集成與一個窗體 form7,包括:員工基本信息修改,員工工資信息修改,部門信息修改三個部分。當職工進入時如果要修改就必須通24過員工姓名查找出該員工(圖 4-6) ,如果輸入的員工名字是正確的 edit 表中就有內(nèi)容,否則,出現(xiàn)提示信息沒有該員工的記錄。當管理員進入時(圖 4-7) ,會有 dbgrid 表,單擊
40、這張表中的內(nèi)容會自動賦值到 edit 中部分代碼:a查找出要修改的員工:if form7.caption=員工信息修改 then begin if form7.adotable1.locate(員工姓名,edit13.text,) then begin edit1.text:=dbgrid1.fields0.asstring;/省略 end else showmessage(沒有該員工的記錄);bdbgrid 的單擊事件(單擊 dbgrid 把內(nèi)容賦值到 edit):if form7.adotable1.tablename=員工工資信息表 then begin edit1.text:=dbgr
41、id1.fields0.asstring;/省略 end;c修改,保存:form7.adotable1.edit;/系統(tǒng)進入修改狀體 form7.adotable1.fieldbyname(員工編號).asstring:=edit1.text;/字符串類型修改 form7.adotable1.fieldbyname(出生年月).asdatetime:=strtodatetime(edit4.text);/時間類型修改 - -25 adotable1.post;/修改后保存 showmessage(修改成功);4.7 數(shù)據(jù)導出模塊設計數(shù)據(jù)導出模塊設計數(shù)據(jù)導出時必不可少的功能,同樣數(shù)據(jù)的導入也必須
42、有的。該系統(tǒng)設計并沒有設計打印功能,而是設計了數(shù)據(jù)的導出。導出的數(shù)據(jù)是直接導入到 excel,這樣又可以對數(shù)據(jù)進行進一步的整理,同時也可利用 excel 的打印和打印預覽功能 。這樣減少了系統(tǒng)所耗得系統(tǒng)資源。有利于系統(tǒng)的快速運行,優(yōu)化了系統(tǒng)。導出分導出所有和導出單條,其中導出所有就是導出員工信息表中所有的數(shù)據(jù)而導出單條是建立在查詢的基礎上的,也就是說首先需要查詢,當你查詢到某條數(shù)據(jù)后,在可以導出所查到得數(shù)據(jù)。導出的源代碼如下:procedure tform3.n15click(sender: tobject);var h,k:integer; excelid: olevariant; s: s
43、tring;begin try excelid := createoleobject(excel.application); except application.messagebox(excel 沒有安裝!, 提示信息, mb_ok+mb_iconasterisk+mb_defbutton1+mb_applmodal); exit; end;26 try adoquery1.close; adoquery1.sql.clear; adoquery1.sql.add(select * from 員工基本信息表); adoquery1.open; k:=adoquery1.recordcount
44、; excelid.visible := true; excelid.workbooks.add; excelid.worksheets1.rangea1:i1.merge(true); excelid.worksheets1.cells1,1.value :=員工基本信息表 ; excelid.worksheets1.rangea1:a1.horizontalalignment := $ffffeff4; excelid.worksheets1.rangea1:a1.verticalalignment := $ffffeff4; excelid.worksheets1.cells2,1.nu
45、mberformat:=1-1; excelid.worksheets1.cells2,1.value := 員工編號; excelid.worksheets1.cells2,2.value := 姓 名; excelid.worksheets1.cells2,3.value := 性 別; excelid.worksheets1.cells2,4.columnwidth:=10; excelid.worksheets1.cells2,4.value := 出生年月; - -27 excelid.worksheets1.cells2,5.columnwidth:=10;excelid.work
46、sheets1.cells2,5.value := 參加工作時間;excelid.worksheets1.cells2,6.value := 部門編號;excelid.worksheets1.cells2,7.value := 職 務;excelid.worksheets1.cells2,8.value := 政治面貌;excelid.worksheets1.cells2,9.value := 婚姻狀況; excelid.worksheets1.rangea1:i1.font.name := 宋體;excelid.worksheets1.rangea1:i1.font.size:=14; ex
47、celid.worksheets1.rangea1:i2.font.bold:=true; excelid.worksheets1.rangea2:i2.font.size:=10; excelid.worksheets1.rangea2:i2.horizontalalignment:= $ffffeff4; excelid.worksheets1.rangea2:i2.verticalalignment := $ffffeff4; h:=3; adoquery1.first; while not adoquery1.eof do beginexcelid.worksheets1.cellsh
48、,1.value:=adoquery1.fieldbyname(員工編號).asstring;excelid.worksheets1.cellsh,2.value:=adoquery1.fieldbyname(姓名).asstring;excelid.worksheets1.cellsh,3.value:=adoquery1.fieldbyname(性別).asstring;28excelid.worksheets1.cellsh,4.value:=adoquery1.fieldbyname(出生年月).asstring;excelid.worksheets1.cellsh,5.value:=
49、adoquery1.fieldbyname(參加工作時間).asstring;excelid.worksheets1.cellsh,6.value:=adoquery1.fieldbyname(部門編號).asstring;excelid.worksheets1.cellsh,7.value:=adoquery1.fieldbyname(職務).asstring;excelid.worksheets1.cellsh,8.value:=adoquery1.fieldbyname(政治面貌).asstring;excelid.worksheets1.cellsh,9.value:=adoquery
50、1.fieldbyname(婚姻狀況).asstring; inc(h); adoquery1.next; end; s := a2:i+ inttostr(k+2);excelid.worksheets1.ranges.font.name := 宋體; excelid.worksheets1.ranges.borders.linestyle := 1;exceptapplication.messagebox(導入數(shù)據(jù)出錯!請檢查文件的格式是否正確!, 提示信息, mb_ok+mb_iconasterisk+mb_defbutton1+mb_applmodal); end;end; - -29
51、第第 5 章章 應用程序和數(shù)據(jù)庫的連接應用程序和數(shù)據(jù)庫的連接數(shù)據(jù)庫和應用程序都已經(jīng)建立,現(xiàn)在就是怎樣使應用程序和數(shù)據(jù)庫進行連接,能夠使應用程序操作數(shù)據(jù)庫,進行相應的操作。該系統(tǒng)使用 adoconnection 和 adotabel 使應用程序和數(shù)據(jù)庫進行連接。首先建立數(shù)據(jù)模塊(datamodule)將所需的 adoconnection 和 adotabel 都放到datamodule 中,然后連接數(shù)據(jù)庫。在登陸界面添加按鈕“數(shù)據(jù)庫連接”當點擊按鈕產(chǎn)生 adoconnection 的connectionstring 屬性,這樣就可以通過他連接數(shù)據(jù)庫。這樣的優(yōu)點是不局限于某一臺機器,只要是在同一個
52、局域網(wǎng)中能夠搜索到然后進行連接。這就是系統(tǒng)更加靈活。將 adotabel 的 connection 屬性選擇為 adoconnection 這樣就建立了應用程序和數(shù)據(jù)庫的連接。選擇 adoquery 是因為他能夠更好的使用 sql 語句,能更好的處理應用程序?qū)?shù)據(jù)庫的操作。30第第 5 章章 系統(tǒng)測試系統(tǒng)測試5.1 測試目的測試目的在軟件生命周期的每個階段都不可避免的會引入新的錯誤。如果在軟件投入生產(chǎn)性運行之前,沒有發(fā)現(xiàn)并糾正軟件中的大部分差錯,則這些差錯遲早會在生產(chǎn)過程中暴露出來,那時不僅糾正這些錯誤的代價更高,而且往往會造成很惡劣的后果。測試的目的就是在軟件投入生產(chǎn)性運行之前,盡可能多的發(fā)
53、現(xiàn)軟件中的錯誤。5.2 測試方法測試方法本課題所采用的測試方法是黑盒測試,及實在程序接口進行的測試,它只檢查程序功能是否按照規(guī)格說明書的規(guī)定正常使用,黑盒測試也稱功能測試或數(shù)據(jù)驅(qū)動測試,它是在已知產(chǎn)品所應具有的功能,通過測試來檢測每個功能是否都能正常使用,在測試時,把程序看作一個不能打開的黑盆子,在完全不考慮程序內(nèi)部結(jié)構(gòu)和內(nèi)部特性的情況下,測試者在程序接口進行測試,它只檢查程序功能是否按照需求規(guī)格說明書的規(guī)定正常使用,程序是否能適當?shù)亟邮蛰斎霐?shù)鋸而產(chǎn)生正確的輸出信息,并且保持外部信息(如數(shù)據(jù)庫或文件)的完整性。黑盒測試方法主要有等價類劃分、邊值分析、因果圖、錯誤推測等,主要用于軟件確認測試。
54、“黑盒”法著眼于程序外部結(jié)構(gòu)、不考慮內(nèi)部邏輯結(jié)構(gòu)、針對軟件界面和軟件功能進行測試。 “黑盒”法是窮舉輸入測試,只有把所有可能的輸入都作為測試情況使用,才能以這種方法查出程序中所有的錯誤。實際上測試情況有無窮多個,人們不僅要測試所有合法的輸入,而且還要對那些不合法但是可能的輸入進行測 - -31試。5.3 測試結(jié)論測試結(jié)論對此系統(tǒng)的功能、性能,以及可用性均進行了測試,通過對測試結(jié)果的分析總結(jié)得出:此系統(tǒng)的功能基本滿足用戶需求,性能基本達到需求,具有可用性和友好性。 但是測試用例有一定的局限性,測試環(huán)境和實際運行環(huán)境也存在著一定的差異,所以不能完全地、準確地測試出系統(tǒng)存在的問題,還需要在后期的維護
55、過程中,對系統(tǒng)暴露出來的問題進行糾正和更新。第第 6 章章 結(jié)束語結(jié)束語在本項目的軟件開發(fā)的過程中,我全面實踐一個面向數(shù)據(jù)庫的應用系統(tǒng)的開32發(fā)過程,學習了很多有關的知識。這樣的項目對我學過的數(shù)據(jù)結(jié)構(gòu),程序設計,數(shù)據(jù)庫等課程是一個綜合性很高的實踐。一些以前沒有學得很雜實的課程的內(nèi)容,由于需要在實踐中運用,剛開始我也感到很頭痛。但回過頭再去看有關的教科書,經(jīng)過一段時間的鉆研,對與這些知識點的相關的背景,概念和解決方案理解得更透徹了,學習起來也越來越有興趣,越來越輕松。另外我還充分體會了從事軟件開發(fā)工作需要特別嚴謹認真的態(tài)度和作風,一點都馬虎不得。每一個細微的細節(jié)都必須十分的注意,如果不認真思考決策,就會出現(xiàn)或大或小的錯誤,如果早期的錯誤隱藏下來,對后面的工作影響就會很大,甚至有時要推倒很多前面做的工作重來。有時候,我自己覺得我寫的程序非常的正確,但是就是編譯通不過,在查找錯誤的過程中,面臨著否認自己的過程,非常的痛苦,而且由于自己的經(jīng)驗及各方面的能力的不足,所以進展的速度非常的緩慢,往往幾天的時間還沒有一點進展。這時候,我一般是先自己通過書本,手冊和資料找解決辦法,實
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 消防安全網(wǎng)格化培訓
- 酒店禮賓服務計劃培訓
- 2024教師安全培訓
- 數(shù)控車削加工技術 課件 項目五 數(shù)控車床的面板操作
- 四川省成都市西藏中學2024-2025高一(6-7班)10月月考英語 - 副本
- 湖北省鄂東南省級示范高中教育教學改革聯(lián)盟學校2025屆高三上學期期中聯(lián)考語文試卷(含答案)
- 2024-2025學年江蘇省揚州市邗江區(qū)維揚中學八年級(上)10月月考數(shù)學試卷(含答案)
- 獸醫(yī)專業(yè)基礎理論知識單選題100道及答案解析
- 部編版六年級語文上冊第七單元口語交際《聊聊書法》教學課件
- 第二-商品和貨幣
- 兼職潛水教練合同
- 防寒潮安全教育
- 中藥基礎知識培訓試題
- 華為認證數(shù)通高級 HCIE-Datacom H12-891考試題庫-上(單選、多選題匯總)
- 增資擴產(chǎn)政府措施
- 2024年安徽合肥興泰商業(yè)保理有限公司招聘筆試參考題庫含答案解析
- 《釬焊方法及工藝》課件
- 住宅小區(qū)人群分析報告
- 第10課《興趣是個好老師》課件
- 四年級上冊綜合實踐課課件
- 醫(yī)療標書的供貨方案
評論
0/150
提交評論