ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:446.64KB ,
资源ID:10345562      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10345562.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(课程设计报告企业人事管理系统.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

课程设计报告企业人事管理系统.docx

1、课程设计报告企业人事管理系统目录1.引言 22.概要设计. 43.详细设计. 64. 调试与运行结果及存在的主要问题. 165. 课程设计小结6. 参考文献.引言1.设计环境:设计环境具体有visual basic 6.0,Microsoft SQL Server 2000.2.同组人员:完成该设计的人员为04- 3班的方靖和邝锐强。3.具体分工:经过两人的讨论分析后共同完成该题目的需求分析,概念结构设计以及逻辑结构的设计。在具体实施阶段方靖主要负责登陆界面,各职工基本资料的界面设计及相应的连接数据库部分,实现数据库备份和还原部分以及数据库数据的初始化。邝锐强主要负责对各人员相关资料的删除,修

2、改,增加部分的界面设计及相应的连接数据库部分,操作员管理和权限设置。概要设计1. 系统需求分析:通过调查本地的企业,根据企业的具体情况设计企业人事管理系统。主要功能有:人事档案管理:户口状况、政治面貌、生理状况、合同管理等;考勤加班出差管理;人事变动:新进员工登记、员工离职登记、人事变更记录;考核奖惩;员工培训;系统维护:如数据安全管理(含备份与恢复)、操作员管理、权限设置等;由以上可知可以具体设计五类人员:员工,维护部员工,经理,人事部经理以及总裁,其中员工只能查询本人的基本资料:工号,姓名,性别,户籍情况,政治面貌,生理状况,合同,所属部门以及自身的考勤考核奖励情况。而维护部员工除了可以完

3、成普通员工的功能外还可以进行系统维护。经理可以管理员工,包括增加删除本部门员工以及修改员工资料。人事部经理在经理的功能上增加了可以删除增加修改其他部门员工资料的功能,而总裁可以任意增加删除修改所有部门经理及员工的资料。而对于所有人员均记录其基本资料和日常状况资料。2. 系统结构设计:由需求分析可以划出系统结构图,如下:3. 功能模块设计:由以上分析可以划出功能模块设计图,如下:详细设计1. 系统数据库设计:经过需求分析设计后得出数据库设计的概念模型,其中包含两个实体,一个是人员表,一个是日常情况表。如下:人员(工号,姓名,性别,年龄,户口,政治面貌,生理状况,合同管理,照片,密码,所管(属)部

4、门(地区),职位)日常情况(工号,日期,考勤,加班,惩罚,培训)具体创建表的具体代码如下:create table BaseTable( BID varchar(10) not null unique, BName varchar(20) not null, BAge int, BSex varchar(2), BResidence varchar(50), BPolity varchar(50), BHealthy varchar(50), BAgreement varchar(50), BDepartment varchar(20) not null, BPhoto image, BPas

5、sword varchar(50) not null, BPosition varchar(10) not null, primary key(BID), check (BAge0), check (BSex in (男,女), check (BPosition in (员工,维护部员工,经理,人事经理,总裁);create table ExtendTable( EID varchar(10) not null, EDate datetime not null, EState varchar(4), -考勤,内容为“请假,旷到,迟到,正常,出差” EOverwork varchar(2), -

6、加班,内容“有,无” ERAP varchar(500), -奖惩(rewards and punishment) ETraining varchar(500), primary key(EID,EDate), check (EState in (请假,旷到,迟到,正常,出差), check (EOverwork in (有,无), foreign key(EID) references BaseTable(BID) on delete cascade );所创建表的设计图如下所示:BaseTable表:用E-R图表示该实体如下:ExtendTable表:用E-R图表示该实体如下:完整的E-R

7、图如下所示:系统主要功能模块设计各模块的主要算法对应的原代码1、 数据库的连接: 利用控件Adodc连接:在Adodc控件中,设置ConnectStringProvider=”SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystem”,然后再设置CommandType为8 adCmdUnknown,数据源定为SQL查询语句,语句内容根据不同需要而更改。 设定ConnectString属性PS:当然,可以手工输入,也可以利用“生成”让VB自动给出语句。设定RecordS

8、ource属性连接数据库核心语句:Adodc1.ConnectStringProvider=”SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystem”Adodc1.RecordSource = SQL查询语句Adodc1.Recordset.OpenAdodc1.Refresh断开数据库核心语句:Adodc1.Recordset.Close利用ADODB对象作为SQL连接接口:由于在程序中使用瞬间连接数据库比长期连接数据库高效,而且在本程序中大量使用,因而新增了模块

9、Module1,自定义了SqlConnect函数作为连接,SqlDisConnect函数来断开连接,方便编写程序,提高代码使用率,提高开发效率和运行效率。连接数据库核心语句:Set Ado_Conn = New ADODB.ConnectionSet Ado_RS = New ADODB.Recordsetstr_CS = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystemstr_RS = SQL查询语句SqlConnect Ado_Conn,

10、 Ado_RS, str_CS, str_RS其中模块中定义了SqlConnect函数: Public Sub SqlConnect(ByVal Ado_Connection As ADODB.Connection, _ ByVal Ado_Recordset As ADODB.Recordset, _ Ado_ConnectionString As String, _ Ado_RecordSource As String) Ado_Connection.ConnectionString = Ado_ConnectionString Ado_Connection.ConnectionTimeo

11、ut = 30 Ado_Connection.Open Ado_Recordset.Open Ado_RecordSource, Ado_ConnectionEnd Sub断开数据库核心语句:SqlDisConnect Ado_RS其中模块中定义了SqlDisConnect函数:Public Sub SqlDisConnect(ByVal AdoRecordset As ADODB.Recordset) If AdoRecordset.State Then AdoRecordset.CloseEnd Sub2、 数据的查询: 利用表格方式对SQL数据进行查询:利用连接数据库的方法,返回一个Re

12、cordSet集合。通过MSHFlexGrid控件、DataGrid控件等控件对集合作表格方式的输出。使用Adodc控件时,可以通过属性的设定,把MSHFlexGrid控件、DataGrid1控件捆绑在Adodc控件上。对用Adodc控件捆绑当使用ADODB对象时,可以通过Set语句对MSHFlexGrid.DataSourse 进行赋ADODB对象的Recordset值。但是DataGrid1则不能。利用字符窜方式对SQL数据进行查询利用连接数据库的方法,返回一个RecordSet集合。通过对RecordSet集合的提取,把元组中的属性值赋给TextBox等控件控件,让其输出。核心代码: A

13、dodc1.Recordset.MoveFirst Adodc1.Recordset.Find 工号=1234Text1.Text = Adodc1.Recordset.Fields(工号).Value Text2.Text = Adodc1.Recordset.Fields(姓名).Value . . .对查询所得到的集合作出判空:方法有多种:(设Ado_RS为Recordset)A、利用EOF和BOF两个属性进行判断: If Ado_RS.BOF = False And Ado_RS.EOF = False Then 集合不为空 Else 集合为空 End If B、利用Recordset

14、 的RecordCount属性判断: If Ado_RS.RecordCount 0 Then 集合不为空 Else 集合为空 End If C、利用DataGrid 的ApproxCount属性来判断: 判断条件会因表格的自定义显示而有所不同 If DataGrid1.ApproxCount 0 Then 集合不为空 Else 集合为空 End If D、利用MSHFlexGrid的Rows属性判断: 判断条件会因表格的自定义显示而有所不同 If MSHFlexGrid1. Rows 1 Then 集合不为空 Else 集合为空 End If查询特定元组对于特定元组,由于主码的唯一性,所以当

15、对主码作准确查询时,所得的表只有两种情况:只有一条元组或者什么都没有。通过的方法,可以对集合判空。如果为空,则认为特定元组不存在,查询失败;如果返回一条元组,则指针肯定是指向该元组,可以马上对数据进行读取。核心代码: Set Ado_Conn = New ADODB.Connection Set Ado_RS = New ADODB.Recordset str_CS = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystem str_RS = se

16、lect * from BaseTable where BID= & Trim(Text1.Text) & SqlConnect Ado_Conn, Ado_RS, str_CS, str_RS Ado_RS.RecordCount 检测帐号是否存在 If Ado_RS.EOF = False Then 如果帐号存在 If Trim(Ado_RS.Fields(BID) = Trim(Text1.Text) And Trim(Ado_RS.Fields(BPassword) = Trim(Text2.Text) Then还有一种方法,利用Find方法进行查找,如果找到则指针指向该元组。如找不到

17、则返回错误。因此利用捕获错误的方法也可以得到效果。第三种,利用MSHFlexGrid控件、DataGrid控件等,均可以利用控件内部的属性和方法进行查询。3、 数据的修改:利用嵌入SQL语句。 首先使用ADODB对象连接的方法,利用ADODB.Connection.Execute直接嵌套运行SQL语句对数据进行修改。 核心语句: Ado_Conn.Execute “updata 表名 set 某属性=XX”此外还可以利用ADO接口提供的Fields属性对数据进行修改。 核心语句:Adodc1.Recordset.Find 工号= & Text3.Text & Adodc1.Recordset.

18、Fields(姓名) = Text4.Text Adodc1.Recordset.Fields(所属部门) = Combo2.Text Adodc1.Recordset.Fields(职位) = Combo3.Text Adodc1.Recordset.Update Adodc1.Refresh利用DataGrid控件对数据库进行强行修改。只需要连接好数据库,然后对DataGrid进行捆绑,而且DataGrid的AllowUpdate等属性设为True就可以通过界面直接修改。4、 数据的删除基本方法跟3一样。使用SQL嵌套语句删除数据。Ado_Conn.Execute “delete from

19、表名 where某属性=XX” 此外还可以利用ADO接口提供的Fields属性对数据进行修改。 核心语句: Adodc1.Recordset.MoveFirst Adodc1.Recordset.Find 工号= & Text3.Text & Adodc1.Recordset.DeleteAdodc1.Recordset.Update5、数据的添加:基本方法跟3一样。使用SQL嵌套语句增加数据。Ado_Conn.Execute “insert into 表名 values(某属性=XX)” 此外还可以利用ADO接口提供的Fields属性对数据进行修改。 核心语句:Adodc1.Recordse

20、t.MoveFirstAdodc1.Recordset.AddItem Adodc1.Recordset.Fields(姓名) = Text4.Text Adodc1.Recordset.Fields(所属部门) = Combo2.Text Adodc1.Recordset.Fields(职位) = Combo3.Text Adodc1.Recordset.Update Adodc1.Refresh7、权限的分配读取BaseTable(员工基本表)里面的BPosition(职位)。通过对其的判断,来选择其他更多的步骤。核心语句: Select Case Trim(Ado_RS.Fields(B

21、Position) 检测权限 Case 总裁 Case 人事经理 Case 经理 Case 维护部员工 Case 员工 End Select调试与运行结果及主要问题在程序设计过程中遇到的主要问题是如何将数据库数据和vb连接起来,设置外码与被参照关系中主码的及联关系以及如何高效地实现查询功能。同时由于在数据库基本资料表中添加了照片属性,但由于能力有限,至今仍不懂往数据库表中插入图片的方法。另外一个方面的问题就是界面不够漂亮,显得有点死板。主要截图如下:登陆框总裁管理截图员工管理截图数据备份和恢复经理管理截图考勤-奖惩-培训一览表添加经理截图添加员工截图维护员工查询截图一般员工查询截图*课程设计小结*参考文献1. 萨师煊,王珊。数据库系统概论(第三版)2. 刘晓华。SQL Server 2000数据库应用开发3. 张勇。Visual Basic 课程设计案例精编4. EVangelos Petroutsos,Kevin Hough(邱仲潘译) Visual Basic6高级开发指南

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1