课程设计报告企业人事管理系统文档格式.docx
- 文档编号:17934586
- 上传时间:2022-12-12
- 格式:DOCX
- 页数:17
- 大小:449.17KB
课程设计报告企业人事管理系统文档格式.docx
《课程设计报告企业人事管理系统文档格式.docx》由会员分享,可在线阅读,更多相关《课程设计报告企业人事管理系统文档格式.docx(17页珍藏版)》请在冰豆网上搜索。
④考核奖惩;
⑤员工培训;
⑥系统保护:
如数据安全管理(含备份与恢复)、操作员管理、权限设置等;
由以上可知可以具体设计五类人员:
员工,保护部员工,领导,人事部领导和总裁,其中员工只能查询本人的大体资料:
工号,姓名,性别,户籍情况,政治面貌,生理状况,合同,所属部门和自身的考勤考核奖励情况。
而保护部员工除可以完成普通员工的功能外还可以进行系统保护。
领导可以管理员工,包括增加删除本部门员工和修改员工资料。
人事部领导在领导的功能上增加了可以删除增加修改其他部门员工资料的功能,而总裁可以任意增加删除修改所有部门领导及员工的资料。
而对于所有人员均记录其大体资料和日常状况资料。
2.系统结构设计:
由需求分析可以划出系统结构图,如下:
3.功能模块设计:
由以上分析可以划出功能模块设计图,如下:
详细设计
1.系统数据库设计:
通过需求分析设计后得出数据库设计的概念模型,其中包括两个实体,一个是人员表,一个是日常情况表。
如下:
人员(工号,姓名,性别,年龄,户口,政治面貌,生理状况,合同管理,照片,密码,所管(属)部门(地域),职位)
日常情况(工号,日期,考勤,加班,惩罚,培训)
具体创建表的具体代码如下:
createtableBaseTable(
BIDvarchar(10)notnullunique,
BNamevarchar(20)notnull,
BAgeint,
BSexvarchar
(2),
BResidencevarchar(50),
BPolityvarchar(50),
BHealthyvarchar(50),
BAgreementvarchar(50),
BDepartmentvarchar(20)notnull,
BPhotoimage,
BPasswordvarchar(50)notnull,
BPositionvarchar(10)notnull,
primarykey(BID),
check(BAge>
0),
check(BSexin('
男'
'
女'
)),
check(BPositionin('
员工'
保护部员工'
领导'
人事领导'
总裁'
))
);
createtableExtendTable(
EIDvarchar(10)notnull,
EDatedatetimenotnull,
EStatevarchar(4),--考勤,内容为“请假,旷到,迟到,正常,出差”
EOverworkvarchar
(2),--加班,内容“有,无”
ERAPvarchar(500),--奖惩(rewardsandpunishment)
ETrainingvarchar(500),
primarykey(EID,EDate),
check(EStatein('
请假'
旷到'
迟到'
正常'
出差'
check(EOverworkin('
有'
无'
foreignkey(EID)referencesBaseTable(BID)ondeletecascade
所创建表的设计图如下所示:
BaseTable表:
用E-R图表示该实体如下:
ExtendTable表:
完整的E-R图如下所示:
系统主要功能模块设计
各模块的主要算法对应的原代码
1、数据库的连接:
利用控件Adodc连接:
在Adodc控件中,设置ConnectStringProvider=”;
IntegratedSecurity=SSPI;
PersistSecurityInfo=False;
InitialCatalog=ManageSystem”,然后再设置CommandType为8–adCmdUnknown,数据源定为SQL查询语句,语句内容按照不同需要而更改。
设定ConnectString属性
P.S:
固然,可以手工输入,也可以利用“生成”让VB自动给出语句。
设定RecordSource属性
连接数据库核心语句:
=”;
InitialCatalog=ManageSystem”
=SQL查询语句
断开数据库核心语句:
利用ADODB对象作为SQL连接接口:
由于在程序中利用刹时连接数据库比长期连接数据库高效,而且在本程序中大量利用,因此新增了模块Module1,自概念了SqlConnect函数作为连接,SqlDisConnect函数来断开连接,方便编写程序,提高代码利用率,提高开发效率和运行效率。
SetAdo_Conn=New
SetAdo_RS=New
str_CS="
Provider=;
InitialCatalog=ManageSystem"
str_RS=SQL查询语句
SqlConnectAdo_Conn,Ado_RS,str_CS,str_RS
其中模块中概念了SqlConnect函数:
PublicSubSqlConnect(ByValAdo_ConnectionAs,_
ByValAdo_RecordsetAs,_
Ado_ConnectionStringAsString,_
Ado_RecordSourceAsString)
=Ado_ConnectionString
=30
Ado_RecordSource,Ado_Connection
EndSub
SqlDisConnectAdo_RS
其中模块中概念了SqlDisConnect函数:
PublicSubSqlDisConnect(ByValAdoRecordsetAs
IfThen
2、数据的查询:
利用表格方式对SQL数据进行查询:
利用连接数据库的方式,返回一个RecordSet集合。
通过MSHFlexGrid控件、DataGrid控件等控件对集合作表格方式的输出。
利用Adodc控件时,可以通过属性的设定,把MSHFlexGrid控件、DataGrid1控件捆绑在Adodc控件上。
对用Adodc控件捆绑
当利用ADODB对象时,可以通过Set语句对进行赋ADODB对象的Recordset值。
可是DataGrid1则不能。
利用字符窜方式对SQL数据进行查询
通过对RecordSet集合的提取,把元组中的属性值赋给TextBox等控件控件,让其输出。
核心代码:
"
工号='
1234"
="
工号"
).Value
姓名"
.
对查询所取得的集合作出判空:
方式有多种:
(设Ado_RS为Recordset)
A、利用EOF和BOF两个属性进行判断:
If=FalseAnd=FalseThen
集合不为空
Else
集合为空
EndIf
B、利用Recordset的RecordCount属性判断:
If>
0Then
C、利用DataGrid的ApproxCount属性来判断:
判断条件会因表格的自概念显示而有所不同
0Then
D、利用MSHFlexGrid的Rows属性判断:
IfMSHFlexGrid1.Rows>
1Then
查询特定元组
对于特定元组,由于主码的唯一性,所以当对主码作准确查询时,所得的表只有两种情况:
只有一条元组或什么都没有。
通过
的方式,可以对集合判空。
若是为空,则以为特定元组不存在,,查询失败;
若是返回一条元组,则指针肯定是指向该元组,可以马上对数据进行读取。
SetAdo_Conn=New
SetAdo_RS=New
str_CS="
str_RS="
select*fromBaseTablewhereBID='
"
&
Trim&
"
'
SqlConnectAdo_Conn,Ado_RS,str_CS,str_RS
'
检测帐号是不是存在
If=FalseThen'
若是帐号存在
IfTrim("
BID"
))=TrimAndTrim("
BPassword"
))=TrimThen
还有一种方式,利用Find方式进行查找,若是找到则指针指向该元组。
如找不到则返回错误。
因此利用捕捉错误的方式也可以取得效果。
第三种,利用MSHFlexGrid控件、DataGrid控件等,都可以利用控件内部的属性和方式进行查询。
3、数据的修改:
利用嵌入SQL语句。
首先利用ADODB对象连接的方式,利用.
Execute直接嵌套运行SQL语句对数据进行修改。
核心语句:
“updata表名set某属性=XX”
另外还可以利用ADO接口提供的Fields属性对数据进行修改。
)=
所属部门"
职位"
利用DataGrid控件对数据库进行强行修改。
只需要连接好数据库,然后对DataGrid进行捆绑,而且DataGrid的AllowUpdate等属性设为True就可以够通过界面直接修改。
4、数据的删除
大体方式跟3一样。
利用SQL嵌套语句删除数据。
“deletefrom表名where某属性=XX”
另外还可以利用ADO接口提供的Fields属性对数据进行修改。
、数据的添加:
利用SQL嵌套语句增加数据。
“insertinto表名values(某属性=XX)”
7、权限的分派
读取BaseTable(员工大体表)里面的BPosition(职位)。
通过对其的判断,来选择其他更多的步骤。
核心语句:
SelectCaseTrim("
BPosition"
))'
检测权限
Case"
总裁"
…………
人事领导"
领导"
保护部员工"
员工"
EndSelect
调试与运行结果及主要问题
在程序设计进程中碰到的主要问题是如何将数据库数据和vb连接起来,设置外码与被参照关系中主码的及联关系和如何高效地实现查询功能。
同时由于在数据库大体资料表中添加了照片属性,但由于能力有限,至今仍不懂往数据库表中插入图片的方式。
另外一个方面的问题就是界面不够漂亮,显得有点古板。
主要截图如下:
登岸框
总裁管理截图
员工管理截图
数据备份和恢复
领导管理截图
考勤-奖惩-培训一览表
添加领导截图
添加员工截图
保护员工查询截图
一般员工查询截图
*课程设计小结*
参考文献
1.萨师煊,王珊。
数据库系统概论(第三版)
2.刘晓华。
SQLServer2000数据库应用开发
3.张勇。
VisualBasic课程设计案例精编
4.EVangelosPetroutsos,KevinHough(邱仲潘译)VisualBasic6高级开发指南
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 报告 企业 人事管理系统
![提示](https://static.bdocx.com/images/bang_tan.gif)