數(shù)據(jù)庫課程設(shè)計員工信息管理系統(tǒng)_第1頁
數(shù)據(jù)庫課程設(shè)計員工信息管理系統(tǒng)_第2頁
數(shù)據(jù)庫課程設(shè)計員工信息管理系統(tǒng)_第3頁
數(shù)據(jù)庫課程設(shè)計員工信息管理系統(tǒng)_第4頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、課程設(shè)計任務(wù)書姓名學(xué)號班級課題組成員姓名性別班級在本項目中的分工VB界面設(shè)計、系統(tǒng)查詢功能、 SQL 表的創(chuàng)建完善及權(quán)限、觸發(fā)器設(shè)計、系統(tǒng)健壯性維護VB界面設(shè)計、系統(tǒng)添加功能、 SQL 表的建立及索引設(shè)計、數(shù)據(jù)字典、系統(tǒng)測試、系統(tǒng)邏輯設(shè)計系統(tǒng)修改功能、 SQL表的創(chuàng)建、需求分析、系統(tǒng)用戶注冊、考勤修改功能、 SQL 表的創(chuàng)建、功能設(shè)計分析課程名稱數(shù)據(jù)庫系統(tǒng)原理課程性質(zhì)專業(yè)必修課設(shè)計時間2009年 5 月 3 日 2009年 6月 15 日設(shè)計名稱員工信息管理系統(tǒng)設(shè)計要求1、 對實際系統(tǒng)要有恰當?shù)男枨蠓治鲞^程,內(nèi)容至少應(yīng)包含主要數(shù)據(jù)流圖、基本數(shù)據(jù)字典等信息的描述及相關(guān)系統(tǒng)功能的分析。2、 設(shè)計過

2、程應(yīng)體現(xiàn)和側(cè)重對數(shù)據(jù)庫的分析和設(shè)計過程,內(nèi)容至少包含 E R 圖設(shè)計,關(guān)系模式設(shè)計及優(yōu)化,表間關(guān)系的分析等內(nèi)容(至少有 4 張以上基表的設(shè)計) 。3、 要有數(shù)據(jù)庫和表的創(chuàng)建腳本,輸入必要的初始數(shù)據(jù)(每表至少有 20 條以上記錄) 。4、 要有體現(xiàn)數(shù)據(jù)庫安全性策略的設(shè)計過程,包括必要的權(quán)限設(shè)計與管理。5、 要有數(shù)據(jù)完整性設(shè)計,應(yīng)包括必要的數(shù)據(jù)完整性校驗、一致性檢查等。6、 對典型功能鼓勵使用存儲過程、函數(shù)和觸發(fā)器的設(shè)計與應(yīng)用。7、 系統(tǒng)前臺的設(shè)計,可由學(xué)生自選開發(fā)工具完成,但要完成與數(shù)據(jù)庫連接配置與相關(guān)數(shù)據(jù)控件的綁定。8、 成果提交形式:課程設(shè)計報告完成系統(tǒng)功能的、有一定健壯性的系統(tǒng)。設(shè)計思路與

3、設(shè)計過程計劃與進度任課教師意見說明1、需求分析;2、進行數(shù)據(jù)庫的概念設(shè)計;3、進行數(shù)據(jù)庫的邏輯設(shè)計;4、進行數(shù)據(jù)庫的物理設(shè)計;5、進行應(yīng)用程序設(shè)計;6、編程實現(xiàn)。7、調(diào)試完善1、 2009.05.32009.05.5需求分析2、 2009.05.72009.05.10概念設(shè)計3、 2009.05.102009.05.14邏輯設(shè)計4、 2008.05.152009.06.2系統(tǒng)設(shè)計5、 2009.06.52009.06.15課程設(shè)計報告撰寫設(shè)計名稱: 員工信息管理系統(tǒng)日期: 2009 年5 月3 日設(shè)計內(nèi)容:1、員工信息添加2、員工信息修改3、員工信息刪除4、員工信息查詢(多種方式)5、員工考勤

4、信息添加6、員工考勤信息修改7、員工考勤信息刪除8、員工考勤信息查詢9、用戶注冊10、SQL基本表建立11、SQL權(quán)限、索引、觸發(fā)器、函數(shù)的創(chuàng)建12、ODBC連接設(shè)計目的與要求:1)加深對數(shù)據(jù)庫系統(tǒng)原理、軟件工程、程序設(shè)計語言的理論知識的理解和應(yīng)用水平。2)通過設(shè)計實際的數(shù)據(jù)庫系統(tǒng)應(yīng)用課題,進一步熟悉數(shù)據(jù)庫管理系統(tǒng)的操作技術(shù),提高動手能力,提高分析問題和解決問題的能力。3) 通過設(shè)計,掌握數(shù)據(jù)庫應(yīng)用系統(tǒng)綜合開發(fā)的方法與技能。設(shè)計環(huán)境或器材、原理與說明:VB 6.0SQL 設(shè)計過程(步驟)或程序代碼:1 需求分析1.1 系統(tǒng)需求分析在人才過剩的今天, 企業(yè)對于有用人才的需求逐步加大,企業(yè)內(nèi)部的人

5、事變動和部門規(guī)劃也開始加速, 傳統(tǒng)的人事檔案已經(jīng)不能滿足各個企業(yè)的人員流動速度,迫使人們起用新的管理方法來管理員工的相關(guān)信息??茖W(xué)技術(shù)日新月異的進步,讓人類生活發(fā)生了巨大的變化,計算機技術(shù)的飛速發(fā)展, 使各行各業(yè)在計算機技術(shù)應(yīng)用方面得到了廣泛的普及和使用。信息化時代的到來成為不可抗拒的潮流,人類文明正在進入一個嶄新的時代。因此,員工管理系統(tǒng)也以方便、快捷、費用低、綠色環(huán)保的優(yōu)點正慢慢地進入各個行業(yè)和領(lǐng)域,將傳統(tǒng)的員工管理方式徹底的解脫出來, 提高效率,減輕工人人員以往繁忙的工作,加速信息的更新速度,使企業(yè)管理層第一時間了解到員工的信息,從而進一步的進行對員工的調(diào)配。功能需求詳細說明:增加增加員

6、工的基本信息、考勤信息編輯用戶可以對員工信息、考勤信息進行刪除用戶可以對員工的姓名、編號等員工基本信息進行修改用戶可以對員工的出勤天數(shù)、請假天數(shù)等考勤信息進行修改查詢用戶可以根據(jù)姓名、編號,準確的查到要找的員工,也可以選擇部門,查看選中的部門的所有員工。1.2 可行性分析本次課程設(shè)計題目: “員工信息管理系統(tǒng)” ,主要目的是編制一個登陸系統(tǒng),連接數(shù)據(jù)庫系統(tǒng), 用以實現(xiàn)員工個人信息與考勤信息的管理。同時對整個系統(tǒng)的分析、設(shè)計過程給出一個完整的論證。由于本系統(tǒng)管理的對象簡單, 且每個數(shù)據(jù)內(nèi)容之間都具有關(guān)聯(lián)性,涉及過程并不是很復(fù)雜。因此,比較適合于采用數(shù)據(jù)庫管理。在技術(shù)難度方面,由于有指導(dǎo)老師的指導(dǎo)

7、和相關(guān)參考文獻,特別是網(wǎng)上和圖書館資料, 特別是參考其它程序的功能,因此完全可以實現(xiàn)。2 數(shù)據(jù)庫的概念設(shè)計實體設(shè)計:員工(員工編號,姓名,性別,出生日期,籍貫,專業(yè),學(xué)歷編號,職稱編號,職務(wù)編號,部門編號,參加工作時間,進入公司時間,員工備注,政治面貌,員工技術(shù)特長,畢業(yè)學(xué)校,用工性質(zhì),工資等級,合同期限)考勤(員工編號,考勤日期,姓名,應(yīng)出勤天數(shù),遲到次數(shù),早退次數(shù),請假天數(shù),曠工天數(shù),加班天數(shù),加班天數(shù),補休天數(shù),加班費,扣款,備注)根據(jù)以上需求分析,可畫出E-R 模型圖( 圖 1.1 ):圖 1.1E-R 圖3 數(shù)據(jù)庫的邏輯設(shè)計根據(jù)系統(tǒng)功能設(shè)計的要求以及功能模塊的劃分,對員工信息管理系統(tǒng)

8、可以列出以下數(shù)據(jù)項及數(shù)據(jù)結(jié)構(gòu):員工個人基本信息 :包括員工編號、姓名、性別、出生日期、籍貫、專業(yè)、學(xué)歷編號、職稱編號、職務(wù)編號、部門編號、參加工作時間、進入公司時間、員工備注、政治面貌、員工技術(shù)特長、畢業(yè)學(xué)校、用工性質(zhì)、合同期限。員工考勤基本信息 :包括員工編號、姓名、應(yīng)出勤天數(shù)、遲到次數(shù)、早退次數(shù)、請假天數(shù)、曠工天數(shù)、加班天數(shù)、加班天數(shù)、補休天數(shù)、加班費、扣款、備注。部門信息: 包括部門編號、部門名稱、部門簡介職稱信息: 包括職稱序號、職稱名稱、備注學(xué)歷信息: 包括學(xué)歷序號、學(xué)歷名稱、備注職務(wù)信息: 包括職務(wù)序號、職務(wù)名稱、備注用戶信息 :包括用戶的帳號及密碼。4 數(shù)據(jù)庫的物理設(shè)計4.1 數(shù)

9、據(jù)字典與關(guān)系圖根據(jù)系統(tǒng)需求及邏輯結(jié)構(gòu)設(shè)計,本網(wǎng)站基于SQL Server 2000 數(shù)據(jù)庫,建立如下數(shù)據(jù)庫表(表1.1 ):表 1.1庫名(員工數(shù)據(jù)庫)用戶信息表( sysuser )字段類型說明大小是否為空user_idnvarchar用戶賬號8NOT NULLuser_pwdnvarchar密碼8NOT NULL部門信息表( department )字段類型說明大小是否為空dept_idint部門編號4NOT NULLdept_namenvarchar部門名稱20NOT NULLdept_desnvarchar部門簡介50員工基本信息表( employee)字段類型說明大小是否為空emp_

10、idint員工編號4NOT NULLemp_namenvarchar姓名20NOT NULLsexnvarchar性別2NOT NULLbirthdaysmaldatetime出生日期4NOT NULLnativenvarchar籍貫20professionnvarchar專業(yè)20edu_idint學(xué)歷編號4NOT NULLtitle_idint職稱編號4NOT NULLdept_idint部門編號4NOT NULLduty_idint職務(wù)編號4NOT NULLemp_date1smaldatetime參加工作時間4NOT NULLemp_date2smaldatetime進入公司時間4NOT

11、 NULLemp_desnvarchar員工備注255zzmmnvarchar政治面貌50ygjstcnvarchar員工技術(shù)特長50bisxnvarchar畢業(yè)學(xué)校50ygxznvarchar用工性質(zhì)50htqxnvarchar合同期限50職稱信息表( title)字段類型說明大小是否為空title_idint職稱序號4NOT NULLtitle_namenvarchar職稱名稱20NOT NULLtitle_desnvarchar備注255學(xué)歷信息表( education )字段類型說明大小是否為空edu_idint學(xué)歷序號4NOT NULLedu_namenvarchar學(xué)歷名稱20NO

12、T NULLedu_desnvarchar備注255職務(wù)信息表( duty )字段類型說明大小是否為空duty_idint職務(wù)序號4NOT NULLduty_namenvarchar職務(wù)名稱20NOT NULLduty_desnvarchar備注255考勤信息表( checkin )字段類型說明大小是否為空emp_idint員工編號4NOT NULLcheck_ymnvarchar員工姓名6NOT NULLw_dayreal應(yīng)出勤天數(shù)4NOT NULLl_numsint遲到次數(shù)4NOT NULLe_numsint早退次數(shù)4NOT NULLh_daysreal請假天數(shù)4NOT NULLn_day

13、sreal曠工天數(shù)4NOT NULLo_daysreal加班天數(shù)4NOT NULLr_daysreal補休天數(shù)4NOT NULLovertime_sreal加班費4NOT NULLd_checkreal扣款4NOT NULLcheck_desnvarchar備注255注:波浪線為主鍵。圖 1.2關(guān)系圖4.2 數(shù)據(jù)庫建立與初始化4.2.1建立數(shù)據(jù)庫Create table employee(emp_id int(4) not null,emp_name nvarchar(20) not null,sex nvarchar(2) not null,birthday smaldatetime(4)

14、not null,native nvarchar(20),profession nvarchar(20),edu_id int(4),not null,title_id int(4),not null,dept_id int(4),not null,duty_id int(4),not null,emp_date1 smaldatetime(4),not null,emp_date2 smaldatetime(4),not null,emp_des nvarchar(255),zzmm nvarchar(50),ygjstc nvarchar(50),bisx nvarchar(50),ygx

15、z nvarchar(50),htqx nvarchar(50),constraint EmPK primary key(emp_id),constraint EduFK foreign key(edu_id) references education(edu_id), constraint TitleFK foreign key(title_id) references education(title_id), constraint DuFK foreign key(duty_id) references education(duty_id), constraint DeFK foreign

16、 key(dept_id) references education(dept_id),)Create table title(title_id int(4) not null,title_name nvarchar(20) not null,title_des nvarchar(255)constraint TiPK primary key(title_id),)Create table education(edu_id int(4) not null,edu _name nvarchar(20) not null,edu _des nvarchar(255)constraint EdPK

17、primary key(edu _id),)Create table duty(duty _id int(4) not null,duty _name nvarchar(20) not null,duty _des nvarchar(255)constraint DuPK primary key(duty _id),)Create table department(dept_id int(4) not null,dept _name nvarchar(20) not null,dept _des nvarchar(255)constraint DePK primary key(dept _id

18、),)4.2.2安全性(權(quán)限)grant all privileges on employee to sasagrant all privileges on checkin to sasagrant all privileges on sysuser to sasagrant all privileges on duty to sasagrant all privileges on title to sasagrant all privileges on department to sasagrant all pr ivileges on education to sasa4.2.3觸發(fā)器功能

19、:使姓名中不能出現(xiàn)數(shù)字。CREATE TRIGGER T_INON dbo.employeeFOR INSERT,UpdateASIF EXISTS (SELECT *FROM employeeWHERE emp_namelike %0-9%)BEGINRAISERROR(錯誤!姓名中不可出現(xiàn)數(shù)字,16,1)ROLLBACKRETURNEND4.2.4建立索引create cluster index pk_duty on duty_idcreate cluster index pk_department on dept_idcreate cluster index pk_title on ti

20、tle_idcreate cluster index pk_education on edu_idcreate cluster index pk_sysuser on user_idcreate cluster index pk_employee on emp_idcreate cluster index pk_checkin on (emp_id,check_ym)4.2.5VB數(shù)據(jù)庫連接語句Option ExplicitPublic dbConn As New ADODB.ConnectionPublic loginUser As StringPublic loginOK As Boole

21、anPublic cmdType As StringPublic tUser_id As StringPublic tDept_id As IntegerPublic tEmp_id As IntegerPublic tCheck_ym As StringPublic tQx As StringSub Main()If ConnectToDatabase = False ThenMsgBox 連接數(shù)據(jù)庫出錯! EndEnd IfloginOK = FalsecmdType = frmLogin.Show vbModalUnload frmLoginIf loginOK ThenMDIForm1

22、.ShowEnd IfEnd Sub 連接到數(shù)據(jù)庫Function ConnectToDatabase() As BooleanOn Error GoTo ERR_CONN 設(shè)置服務(wù)器名稱,數(shù)據(jù)庫名稱,登錄名(此時假設(shè)密碼為空)dbConn.ConnectionString = dsn=rsgl;Database=man;uid=ZFS;pwd=dbConn.ConnectionString = Provider=msdasql;Database=man;server=computer;uid=sa;pwd=dbConn.OpenConnectToDatabase = TrueExit Fun

23、ctionERR_CONN:ConnectToDatabase = FalseEnd Function4.2.6ODBC連接連接數(shù)據(jù)庫方法如下:1、 打開我的電腦 - 控制面板 -管理工具。2、 雙擊“數(shù)據(jù)源(ODBC )”,打開“ ODBC 數(shù)據(jù)源管理器”對話框,如圖(圖1.3)所示。3、 在“系統(tǒng) DSN ”選項卡下,單擊“添加”按鈕,彈出如圖(圖1.4)所示對話框,在該對話框中選擇SQLServer 選項。4、 單擊“完成”按鈕。5、 在該對話框中輸入數(shù)據(jù)源名“ emp”、服務(wù)器名,按要求填空完成后,即可完成數(shù)據(jù)源的連接設(shè)置(圖1.6)。圖 1.3圖 1.4圖 1.5圖 1.65 應(yīng)用程

24、序設(shè)計5.1 系統(tǒng)功能分析員工信息管理系統(tǒng)基于用戶驗證登錄的方式實現(xiàn)員工個人信息管理和員工考勤信息管理。其功能結(jié)構(gòu)如圖(圖 1.7):圖 1.7:系統(tǒng)功能結(jié)構(gòu)圖5.2 系統(tǒng)功能模塊設(shè)計員工信息管理系統(tǒng)主要包含用戶登錄、新增、編輯、查詢功能模塊。1、用戶登陸員工信息管理系統(tǒng)采用用戶名及密碼驗證方式,進入員工信息管理系統(tǒng)前,用戶必須在登錄窗口輸入用戶名及密碼,只有驗證通過的用戶方可進入員工信息管理系統(tǒng)操作主頁面。2、新增功能模塊包含 2 個功能模塊:員工個人信息的添加、員工考勤信息的添加3、編輯功能模塊包含 2 個功能模塊:員工個人信息的刪除、按月份進行員工考勤信息編輯與刪除4、查詢功能模塊包含

25、2 個功能模塊:員工個人信息查詢、按月份進行員工考勤信息查詢系統(tǒng)操作流程圖(圖1.8 ) :圖 1.8:開始登錄密碼框N判斷密碼Y員工信息管理系統(tǒng)其他管理保存操作結(jié)果結(jié)束設(shè)計結(jié)果與分析 (可以加頁 ):1、員工信息查詢(frmEmpInfo2.frm)圖 1.9 :員工信息查詢界面主要代碼如下 :Private Sub Command1_Click()Dim strId As StringDim strName As StringDim strDept As StringDim strTitle As StringDim strDuty As StringDim strEdu As Strin

26、gDim strSex As String 設(shè)置錯誤陷阱On Error GoTo ERR_CONNIf Trim(MskId) = ThenstrId = ElsestrId = and a.emp_id= & MskId & End IfIf Trim(Text2) = ThenstrName = ElsestrName = and a.emp_name= & Trim(Text2) & End IfIf cboDept.ListIndex = 0 ThenstrDept = ElsestrDept = and c.dept_name= & cboDept.Text & End IfIf

27、cboTitle.ListIndex = 0 ThenstrTitle = ElsestrTitle = and e.title_name= & cboTitle.Text & End IfIf cboDuty.ListIndex = 0 ThenstrDuty = ElsestrDuty = and d.duty_name= & cboDuty.Text & End IfIf cboEdu.ListIndex = 0 ThenstrEdu = ElsestrEdu = and _name= & cboEdu.Text & End IfIf cboSex.ListIndex = 0

28、ThenstrSex = ElsestrSex = and a.sex= & cboSex.Text & End If打開一個數(shù)據(jù)集strSql=selecta.emp_id,a.emp_name,a.sex,_name,c.dept_name,d.duty_name,e.title_name fromemployee a,educationb,departmentc,dutyd,titlee _id=_id and a.dept_id=c.dept_id and a.duty_id=d.duty_id anda.title_id=e.title_id

29、& strId & & strName & & strDept & & strTitle & & strTitle & & strDuty & & strEdu & & strSex& order by a.emp_idrs.Open strSql, dbConn, adOpenForwardOnly, adLockReadOnlyIf rs.EOF ThenLabel9 = 找到0條記錄flxShow.Rows = 1Else填寫數(shù)據(jù)flxShow.Rows = 1Do While Not rs.EOFflxShow.Rows = flxShow.Rows + 1flxShow.TextMa

30、trix(flxShow.Rows-1,0)=rs.Fields(0).ValueFor i = 2 To rs.Fields.CountflxShow.TextMatrix(flxShow.Rows- 1,i)= rs.Fields(i-1).ValueNext irs.MoveNextLoopLabel9 = 找到 & flxShow.Rows - 1 & 條記錄 End Ifrs.CloseExit SubERR_CONN:MsgBox 請檢查輸入的數(shù)據(jù)是否有效End SubPrivate Sub Command3_Click()Unload MeEnd SubPrivate Sub F

31、orm_Load() 性別 cboSex.AddItem cboSex.AddItem 男 cboSex.AddItem 女 cboSex.ListIndex = 0 學(xué)歷strSql = Select edu_id,edu_name from education Order By edu_id rs.Open strSql, dbConn, adOpenForwardOnly, adLockReadOnly cboEdu.AddItem Do While Not rs.EOFcboEdu.AddItem (rs.Fields(edu_name).Value) cboEdu.ItemData(

32、cboEdu.NewIndex) = rs.Fields(edu_id).Value rs.MoveNextLooprs.ClosecboEdu.ListIndex = 0部門strSql= Selectdept_id,dept_namefrom department OrderBy dept_idrs.Open strSql, dbConn, adOpenForwardOnly, adLockReadOnly cboDept.AddItem Do While Not rs.EOFcboDept.AddItem (rs.Fields(dept_name).Value)cboDept.ItemD

33、ata(cboDept.NewIndex)=rs.Fields(dept_id).Valuers.MoveNextLooprs.ClosecboDept.ListIndex = 0 職務(wù)strSql = Select duty_id,duty_name from duty Order By duty_idrs.Open strSql, dbConn, adOpenForwardOnly, adLockReadOnlycboDuty.AddItem Do While Not rs.EOFcboDuty.AddItem (rs.Fields(duty_name).Value)cboDuty.Ite

34、mData(cboDuty.NewIndex) = rs.Fields(duty_id).Valuers.MoveNextLooprs.ClosecboDuty.ListIndex = 0 職稱strSql = Select title_id,title_name from title Order By title_id rs.Open strSql, dbConn, adOpenForwardOnly, adLockReadOnly cboTitle.AddItem Do While Not rs.EOFcboTitle.AddItem (rs.Fields(title_name).Valu

35、e)cboTitle.ItemData(cboTitle.NewIndex) = rs.Fields(title_id).Valuers.MoveNextLooprs.ClosecboTitle.ListIndex = 0 設(shè)置列數(shù) flxShow.Cols = 8 列標題flxShow.TextMatrix(0, 0) = 工號 flxShow.TextMatrix(0, 1) = flxShow.TextMatrix(0, 2) = 姓名 flxShow.TextMatrix(0, 3) = 性別 flxShow.TextMatrix(0, 4) = 學(xué)歷 flxShow.TextMatr

36、ix(0, 5) = 部門 flxShow.TextMatrix(0, 6) = 職務(wù) flxShow.TextMatrix(0, 7) = 職稱 設(shè)置列寬flxShow.ColWidth(0) = 1000flxShow.ColWidth(1) = 0flxShow.ColWidth(2) = 1400flxShow.ColWidth(3) = 800flxShow.ColWidth(4) = 1400flxShow.ColWidth(5) = 1400flxShow.ColWidth(6) = 1400flxShow.ColWidth(7) = 1410設(shè)置各列的對齊方式For i = 0

37、 To 7flxShow.ColAlignment(i) = 0Next i 表頭項居中flxShow.FillStyle = flexFillRepeatflxShow.Col = 0flxShow.Row = 0flxShow.RowSel = 1flxShow.ColSel = flxShow.Cols - 1flxShow.CellAlignment = 4flxShow.Rows = 1 強制跨越整個行選擇 flxShow.SelectionMode = flexSelectionByRowEnd Sub2、員工考勤查詢(frmCheckInfo2.frm )員工考勤查詢界面主要代碼

38、如下 :Private Sub Command3_Click()Dim strId As StringDim strName As StringDim strDept As StringDim strCheck As String 按工號查詢If Len(Trim(MskId) = 0 ThenstrId = 按姓名查詢If Len(Trim(Text1) = 0 ThenstrName = ElsestrName = and b.emp_name= & Trim(Text1) & End If 按部門查詢If cboDept = ThenstrDept = ElsestrDept = and

39、 c.dept_name= & cboDept & End If 按時間查詢If cboCheckYear = ThenIf cboCheckMonth = Then 年月都為空時 strCheck = Else任意年份的指定月strCheck=anda.check_ymin(&Year(Date)&cboCheckMonth & , & Year(Date) - 1 & cboCheckMonth & )End IfElseIf cboCheckMonth = Then指定年份的任意月strCheck = and a.check_ym in ( & cboCheckYear & 01 &,

40、& cboCheckYear & 02 & , & cboCheckYear & 03 & , &cboCheckYear & 04 & , &cboCheckYear & 05 & , &cboCheckYear& 06 & ,& cboCheckYear & 03 & ,& cboCheckYear & 07 & ,& cboCheckYear & 08 & ,& cboCheckYear & 09 & ,& cboCheckYear& 10 & ,& cboCheckYear & 11 & ,& cboCheckYear & 12 & )Else指定的年月strCheck=anda.ch

41、eck_ymin(&cboCheckYear&cboCheckMonth & )End IfEnd If 打開一個數(shù)據(jù)集strSql = select a.emp_id,b.emp_name,c.dept_name,a.check_ym,a.w_days,a.l_nums,a.e_nums,a.h_days,a.n_days from checkin a ,employee b,department c where a.emp_id = b.emp_id and c.dept_id=b.dept_id & strCheck & & strDept& & strName & & strId &

42、order by b.emp_idrs.Open strSql, dbConn, adOpenForwardOnly, adLockReadOnly flxShow.Rows = 1If rs.EOF ThenElse 填寫數(shù)據(jù)Do While Not rs.EOF flxShow.Rows = flxShow.Rows + 1 flxShow.TextMatrix(flxShow.Rows - 1, 0) = rs.Fields(0).Value For i = 2 To rs.Fields.CountflxShow.TextMatrix(flxShow.Rows-1,i)= rs.Fiel

43、ds(i-1).ValueNext irs.MoveNextLoopEnd IfLabel8 = 找到 & flxShow.Rows - 1 & 條記錄 rs.CloseEnd SubPrivate Sub Form_Load()Me.Icon = LoadPicture(App.Path & Graph07.ico)設(shè)置列數(shù)flxShow.Cols = 10列標題flxShow.TextMatrix(0, 0) = 工號 flxShow.TextMatrix(0, 1) = flxShow.TextMatrix(0, 2) = 姓名 flxShow.TextMatrix(0, 3) = 部門 flxShow.TextMatrix(0, 4) = 考勤時間 flxShow.TextMatrix(0, 5) = 應(yīng)出勤 flxShow.TextMatrix(0, 6) = 遲到 flxShow.TextMatrix(0, 7) = 早退 flxShow.TextMatrix

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論