課程設(shè)計(jì)報(bào)告企業(yè)人事管理系統(tǒng)畢設(shè)論文_第1頁
課程設(shè)計(jì)報(bào)告企業(yè)人事管理系統(tǒng)畢設(shè)論文_第2頁
課程設(shè)計(jì)報(bào)告企業(yè)人事管理系統(tǒng)畢設(shè)論文_第3頁
課程設(shè)計(jì)報(bào)告企業(yè)人事管理系統(tǒng)畢設(shè)論文_第4頁
課程設(shè)計(jì)報(bào)告企業(yè)人事管理系統(tǒng)畢設(shè)論文_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、目錄一、簡介 22. 外形設(shè)計(jì). . 43. 詳細(xì)設(shè)計(jì). . 6四、調(diào)試運(yùn)行結(jié)果及主要問題 . 16五、課程設(shè)計(jì)總結(jié)6. 參考文獻(xiàn). . _介紹一、設(shè)計(jì)環(huán)境:設(shè)計(jì)環(huán)境具體包括visual basic 6.0、Microsoft SQL Server 2000。2. 同組成員:完成設(shè)計(jì)的人員是04-3班的方靜和鄺瑞強(qiáng)。三、具體分工:經(jīng)過兩人的討論和分析,共同完成了題目的需求分析、概念結(jié)構(gòu)設(shè)計(jì)和邏輯結(jié)構(gòu)設(shè)計(jì)。在具體實(shí)現(xiàn)階段,方靜主要負(fù)責(zé)登錄界面,每個(gè)員工的基本信息和對應(yīng)的數(shù)據(jù)庫連接部分的界面設(shè)計(jì),以及數(shù)據(jù)庫備份和恢復(fù)部分初始化數(shù)據(jù)庫數(shù)據(jù)的實(shí)現(xiàn).鄺瑞強(qiáng)主要負(fù)責(zé)每個(gè)人相關(guān)信息的刪除、修改和添加,界面設(shè)

2、計(jì)和對應(yīng)的連接數(shù)據(jù)庫部分,操作員管理和權(quán)限設(shè)置。外形設(shè)計(jì)系統(tǒng)需求分析:通過對當(dāng)?shù)仄髽I(yè)的調(diào)研,根據(jù)企業(yè)的具體情況設(shè)計(jì)企業(yè)人事管理制度。主要功能有:人事檔案管理:戶籍狀況、政治狀況、生理狀況、合同管理等;考勤和加班管理;人事變動:新員工登記、員工離職登記、人事變動記錄;考核獎懲; 員工培訓(xùn);系統(tǒng)維護(hù):如數(shù)據(jù)安全管理(包括備份和恢復(fù))、操作員管理、權(quán)限設(shè)置等;從上面可以看出,可以具體設(shè)計(jì)五類人員:員工、維修部員工、經(jīng)理、人事部經(jīng)理、總裁。其中,員工只能查詢自己的基本信息:工號、性別、戶籍、政治狀況、生理狀況、合同情況,所屬部門將通過自己的考勤考核獎勵情況。除了普通員工的職能外,維護(hù)人員還可以進(jìn)行系統(tǒng)

3、維護(hù)。經(jīng)理可以對員工進(jìn)行管理,包括增加和刪除本部門的員工以及修改員工數(shù)據(jù)。人事部經(jīng)理在經(jīng)理功能中增加了刪除、增加、修改其他部門員工信息的功能,總裁可以任意增加、刪除、修改所有部門經(jīng)理和員工的信息.對所有人員,記錄其基本信息和日常狀態(tài)信息。系統(tǒng)結(jié)構(gòu)設(shè)計(jì):從需求分析中可以得出系統(tǒng)結(jié)構(gòu)圖,如下:功能模塊設(shè)計(jì):通過以上分析,可以得出功能模塊設(shè)計(jì)圖,如下:詳細(xì)設(shè)計(jì)系統(tǒng)數(shù)據(jù)庫設(shè)計(jì):經(jīng)過需求分析和設(shè)計(jì),得到了數(shù)據(jù)庫設(shè)計(jì)的概念模型,其中包含兩個(gè)實(shí)體,一個(gè)是人事表,一個(gè)是日常情況表。如下:人員(工號、性別、年齡、戶籍、政治狀況、身體狀況、合同管理、照片、密碼、部門(地區(qū))、職務(wù))日常情況(工號、日期、考勤、加班

4、、處罰、培訓(xùn))創(chuàng)建表的具體代碼如下:創(chuàng)建表基表(BID varchar(10) 非空唯一,BName varchar(20) 不為空, BAge int,BSex varchar(2),BResidence varchar(50),BPolity varchar(50),BHealthy varchar(50),BAgreement varchar(50),BDepartment varchar(20) 不為空,B照片圖像,BPassword varchar(50) 不為空,BPosition varchar(10) 不為空,主鍵(BID),檢查(BAge 0),檢查(BSex in (mal

5、e,female)),check (BPosition in (employee,maintenance employee,manager,personnel manager,president);創(chuàng)建表擴(kuò)展表(EID varchar(10) 不為空,EDate 日期時(shí)間不為空,EState varchar(4), -Attendance , 包含“請假、缺席、遲到、正常、出差”EOverwork varchar(2), - 加班,“是,否”ERAP varchar(500), -rewards和懲罰ETraining varchar(500),主鍵(EID,EDate),check (ESt

6、ate in (請假, 到達(dá), 遲到, 正常, 出差),檢查(EOverwork in (Yes,No)),外鍵(EID)在刪除級聯(lián)時(shí)引用 BaseTable(BID));創(chuàng)建的表的設(shè)計(jì)圖如下所示:基表:該實(shí)體由 ER 圖表示,如下所示:擴(kuò)展表:該實(shí)體由 ER 圖表示,如下所示:完整的 ER 圖如下所示:系統(tǒng)主要功能模塊設(shè)計(jì)各模塊主要算法對應(yīng)的原代碼數(shù)據(jù)庫連接:= 1 * GB2使用控制Adodc連接:在Adodc控件中,設(shè)置ConnectString Provider=”SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=Fal

7、se;Initial Catalog=ManageSystem” ,然后將CommandType設(shè)置為8 adCmdUnknown,數(shù)據(jù)源設(shè)置為SQL查詢語句,聲明內(nèi)容根據(jù)不同需要而變化。設(shè)置 ConnectString 屬性P.S:當(dāng)然可以手動輸入,也可以使用“生成”讓VB自動給出語句。設(shè)置RecordSource屬性連接數(shù)據(jù)庫的核心語句:Adodc1.ConnectString Provider=”SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystem”Adod

8、c1.RecordSource= SQL 查詢語句Adodc1.Recordset.OpenAdodc1.Refresh斷開數(shù)據(jù)庫核心語句:Adodc1.Recordset.Close _= 2 * GB2使用ADODB對象作為SQL連接接口:由于在程序中使用即時(shí)連接數(shù)據(jù)庫比長期連接數(shù)據(jù)庫效率更高,并且在本程序中使用,增加了模塊Module1,并自定義了SqlConnect函數(shù)作為連接, SqlDisConnect函數(shù)用于斷開連接,方便編程和提高代碼的使用。率,提高開發(fā)效率和運(yùn)營效率。連接數(shù)據(jù)庫的核心語句:設(shè)置 Ado_Conn = New ADODB.Connection設(shè)置 Ado_RS

9、= 新 ADODB.Recordsetstr_CS = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystemstr_RS = SQL 查詢語句SqlConnect Ado_Conn、Ado_RS、str_CS、str_RSSqlConnect 函數(shù)在模塊中定義:公共子 SqlConnect(ByVal Ado_Connection As ADODB.Connection, _ByVal Ado_Recordset As ADODB.Records

10、et, _Ado_ConnectionString 作為字符串,_Ado_RecordSource 作為字符串)Ado_Connection.ConnectionString = Ado_ConnectionStringAdo_Connection.ConnectionTimeout = 30Ado_Connection.OpenAdo_Recordset.Open Ado_RecordSource, Ado_Connection結(jié)束子斷開數(shù)據(jù)庫核心語句:SqlDisConnect Ado_RSSqlDisConnect 函數(shù)在模塊中定義:公共子 SqlDisConnect(ByVal Ado

11、Recordset As ADODB.Recordset)如果 AdoRecordset.State 則 AdoRecordset.Close結(jié)束子資料查詢:= 1 * GB21)使用表格方法查詢SQL數(shù)據(jù):使用連接數(shù)據(jù)庫的方法,返回一個(gè) RecordSet 集合。MSHFlexGrid控件、 DataGrid控件等控件以表格形式輸出集合。在使用Adodc 控件時(shí),可以通過設(shè)置屬性將MSHFlexGrid控件和DataGrid1控件綁定到Adodc 控件。與 Adodc 控件捆綁在一起使用 ADODB 對象時(shí),可以通過 Set 語句將 ADODB 對象的 Recordset 值賦給 MSHFl

12、exGrid .DataSourse。但DataGrid1不能。= 2 * GB22 )通過字符通道查詢SQL數(shù)據(jù)使用連接數(shù)據(jù)庫的方法,返回一個(gè) RecordSet 集合。通過提取RecordSet集合,將元組中的屬性值賦給TextBox等控件,并讓它們輸出。核心代碼: Adodc1.Recordset.MoveFirstAdodc1.Recordset.Find 工作 ID=1234Text1.Text = Adodc1.Recordset.Fields(Job ID).ValueText2.Text = Adodc1.Recordset.Fields().Value.= 3 * GB2(3

13、)對查詢得到的集合做空判斷:方法很多:(設(shè)置Ado_RS為Recordset)A 、用EOF和BOF判斷:如果 Ado_RS.B OF = False并且 Ado_RS.EOF = False 那么集合不為空別的集合為空萬一RecordCount屬性判斷:如果 Ado_RS.RecordCount 0 那么集合不為空別的集合為空萬一C、使用DataGrid的ApproxCount屬性判斷:判斷標(biāo)準(zhǔn)將根據(jù)表格的自定義顯示而有所不同如果DataGrid1.ApproxCount 0 那么集合不為空別的集合為空萬一D. 使用MSHFlexGrid 的 Rows 屬性判斷:判斷標(biāo)準(zhǔn)將根據(jù)表格的自定義顯

14、示而有所不同如果MSHFlexGrid 1 。行 1 然后集合不為空別的集合為空萬一= 4 * GB2查詢特定元組對于特定的元組,由于主鍵的唯一性,在準(zhǔn)確查詢到主鍵時(shí),結(jié)果表中只有兩種情況:只有一個(gè)元組或什么都沒有。通過= 3 * GB2(3)的方法,可以判斷集合為空。如果為空,則認(rèn)為具體的元組不存在,查詢失?。蝗绻祷匾粋€(gè)元組,則指針必須指向該元組,并且可以立即讀取數(shù)據(jù)。核心代碼:設(shè)置 Ado_Conn = New ADODB.Connection設(shè)置 Ado_RS = 新 ADODB.Recordsetstr_CS = Provider=SQLOLEDB.1;Integrated Secu

15、rity=SSPI;Persist Security Info=False;Initial Catalog=ManageSystemstr_RS = select * from BaseTable where BID= & Trim(Text1.Text) & SqlConnect Ado_Conn、Ado_RS、str_CS、str_RSAdo_RS.RecordCount檢查是否存在If Ado_RS.EOF = False Then 如果存在如果 Trim(Ado_RS.Fields(BID) = Trim(Text1.Text) 和 Trim(Ado_RS.Fields(BPasswo

16、rd) = Trim(Text2.Text) 那么還有一種方法是使用Find方法進(jìn)行搜索,如果找到,則指針指向元組。如果未找到,則返回錯(cuò)誤。因此,捕捉錯(cuò)誤的方法也是有效的。第三種,使用MSHFlexGrid控件、 DataGrid控件等,可以使用控件部分的屬性和方法進(jìn)行查詢。數(shù)據(jù)修改:= 1 * GB2使用嵌入式SQL語句。首先使用ADODB對象連接方法,使用ADODB.Connection。執(zhí)行嵌套運(yùn)行的 SQL 語句來修改數(shù)據(jù)。核心聲明:Ado_Conn.Execute 更新表名設(shè)置屬性=XX = 2 * GB2此外,您還可以使用ADO 接口提供的Fields屬性來修改數(shù)據(jù)。核心聲明:Ad

17、odc1.Recordset.Find 工作 ID= & Text3.Text & Adodc1.Recordset.Fields() = Text4.TextAdodc1.Recordset.Fields(部門) = Combo2.TextAdodc1.Recordset.Fields(位置) = Combo3.TextAdodc1.Recordset.UpdateAdodc1.Refresh= 3 * GB2(3)使用DataGrid控件強(qiáng)制修改數(shù)據(jù)庫。只需要連接數(shù)據(jù)庫,然后綁定DataGrid,將DataGrid的AllowUpdate等屬性設(shè)置為True,直接通過接口修改即可。刪除數(shù)據(jù)

18、基本方法同3。= 1 * GB2使用 SQL 嵌套語句刪除數(shù)據(jù)。Ado_Conn.Execute “從屬性=XX 的表名中刪除”= 2 * GB2此外,您還可以使用ADO 接口提供的Fields屬性來修改數(shù)據(jù)。核心聲明:Adodc1.Recordset.MoveFirstAdodc1.Recordset.Find 工作 ID= & Text3.Text & Adodc1.Recordset.DeleteAdodc1.Recordset.Update5、數(shù)據(jù)補(bǔ)充:基本方法同3。= 1 * GB2使用 SQL 嵌套語句來增加數(shù)據(jù)。Ado_Conn.Execute “插入表名值(屬性=XX) ”= 2 * GB2此外,您還可以使用ADO 接口提供的Fields屬性來修改數(shù)據(jù)。核心聲明:Adodc1.Recordset.MoveFirstAdodc1.Recordset.AddItem _Adodc1.Recordset.Fields() = Text4.TextAdodc1.Recordset.Fiel

溫馨提示

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

最新文檔

評論

0/150

提交評論