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

下載本文檔

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

文檔簡(jiǎn)介

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

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

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

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

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

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

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

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

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

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

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

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

13、sreal曠工天數(shù)4NOT NULLo_daysreal加班天數(shù)4NOT NULLr_daysreal補(bǔ)休天數(shù)4NOT NULLovertime_sreal加班費(fèi)4NOT NULLd_checkreal扣款4NOT NULLcheck_desnvarchar備注255注:波浪線為主鍵。圖 1.2關(guān)系圖4.2 數(shù)據(jù)庫(kù)建立與初始化4.2.1建立數(shù)據(jù)庫(kù)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(錯(cuò)誤!姓名中不可出現(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ù)庫(kù)連接語(yǔ)句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ù)庫(kù)出錯(cuò)! EndEnd IfloginOK = FalsecmdType = frmLogin.Show vbModalUnload frmLoginIf loginOK ThenMDIForm1

22、.ShowEnd IfEnd Sub 連接到數(shù)據(jù)庫(kù)Function ConnectToDatabase() As BooleanOn Error GoTo ERR_CONN 設(shè)置服務(wù)器名稱,數(shù)據(jù)庫(kù)名稱,登錄名(此時(shí)假設(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ù)庫(kù)方法如下:1、 打開(kāi)我的電腦 - 控制面板 -管理工具。2、 雙擊“數(shù)據(jù)源(ODBC )”,打開(kāi)“ ODBC 數(shù)據(jù)源管理器”對(duì)話框,如圖(圖1.3)所示。3、 在“系統(tǒng) DSN ”選項(xiàng)卡下,單擊“添加”按鈕,彈出如圖(圖1.4)所示對(duì)話框,在該對(duì)話框中選擇SQLServer 選項(xiàng)。4、 單擊“完成”按鈕。5、 在該對(duì)話框中輸入數(shù)據(jù)源名“ emp”、服務(wù)器名,按要求填空完成后,即可完成數(shù)據(jù)源的連接設(shè)置(圖1.6)。圖 1.3圖 1.4圖 1.5圖 1.65 應(yīng)用程

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

25、2 個(gè)功能模塊:?jiǎn)T工個(gè)人信息查詢、按月份進(jìn)行員工考勤信息查詢系統(tǒng)操作流程圖(圖1.8 ) :圖 1.8:開(kāi)始登錄密碼框N判斷密碼Y員工信息管理系統(tǒng)其他管理保存操作結(jié)果結(jié)束設(shè)計(jì)結(jié)果與分析 (可以加頁(yè) ):1、員工信息查詢(frmEmpInfo2.frm)圖 1.9 :?jiǎn)T工信息查詢界面主要代碼如下 :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è)置錯(cuò)誤陷阱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打開(kāi)一個(gè)數(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填寫(xiě)數(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 請(qǐng)檢查輸入的數(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部門(mén)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 列標(biāo)題flxShow.TextMatrix(0, 0) = 工號(hào) flxShow.TextMatrix(0, 1) = flxShow.TextMatrix(0, 2) = 姓名 flxShow.TextMatrix(0, 3) = 性別 flxShow.TextMatrix(0, 4) = 學(xué)歷 flxShow.TextMatr

36、ix(0, 5) = 部門(mén) 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è)置各列的對(duì)齊方式For i = 0

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

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

39、 c.dept_name= & cboDept & End If 按時(shí)間查詢If cboCheckYear = ThenIf cboCheckMonth = Then 年月都為空時(shí) 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 打開(kāi)一個(gè)數(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 填寫(xiě)數(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列標(biāo)題flxShow.TextMatrix(0, 0) = 工號(hào) flxShow.TextMatrix(0, 1) = flxShow.TextMatrix(0, 2) = 姓名 flxShow.TextMatrix(0, 3) = 部門(mén) flxShow.TextMatrix(0, 4) = 考勤時(shí)間 flxShow.TextMatrix(0, 5) = 應(yīng)出勤 flxShow.TextMatrix(0, 6) = 遲到 flxShow.TextMatrix(0, 7) = 早退 flxShow.TextMatrix

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論