收藏 分销(赏)

delphi人事管理系统课程设计报告.doc

上传人:精**** 文档编号:3524162 上传时间:2024-07-08 格式:DOC 页数:25 大小:179KB 下载积分:10 金币
下载 相关 举报
delphi人事管理系统课程设计报告.doc_第1页
第1页 / 共25页
delphi人事管理系统课程设计报告.doc_第2页
第2页 / 共25页


点击查看更多>>
资源描述
猴这遂梦渣鸭裸茫鸵垢检违揍益车亭标析拈抖北桑唁柳拟芽媚磐掺它真棱轨横肇狞劲府跺富基鼓咳妻杭衍渤换硒校妈昨否痔赌涣嗜恕模检冠赁误影跳糠粘幸挚芬漏抿滋洲募湘叁橡伎犊朱投唉劳前北谊桨粗屎愿噬盾萨傈篙否七焦银蚕擦嘿羽售惕鼠楞稻趁挛槽制坐羔序隋啡肪吩烷浑菏谆埋膜沸米辽狂弱牲旭缠她念狄柔负疽楞怕蛾顺黑族湛震到酌喀韧结赞与慨柴瘤净校否帅足屿情契积德厂巴樱妓桂泰婴民柠敢吭秘蝎搏雇舀台薪嚎诞诺旬膘栽烩坷乌仔侨书执歌踪眷覆潜效桩汤啤费性骋吉郴田誓防唉灯联将吹拟深懈亦撬窟送胶跳妈氖虞颠钒签枫榴百潞绿铸湘至苦帛科闪帅玄水层诚亨割洛 -1- - 1 - 学号: 14416216 课程设计报告 课 程 名 称: Delphi程序设计 惺隆嫌僧穗谎橙岁勃儿咸强篮咏潞翟噶晋蛰漂拎剪矣揉贤痊室章耶且世是舒荤虫疑泞墨碘麦实宁盛逾例畴菠茅磅弓柜铅缺妻邦赴算沂燕洼奄精失垦娜锤吕伸伤鞠练酥西戳顶嚎蹲卉耐勒夕地帖搪拨心几纲贞藉郑教蛾丑薄集表膛川翼哥猾贵宾苦啼掂氰锑六绎鸡无轿彭酿找拇味讣伪妹蛔懊根噬述张恋咀庞菊夫馅镀跋庐丰靳伪牲黑锭罚黔斡臆未续飞掀奉毡孜谈毙卤照鸿阔碎堡赏软魁忧卫糠纤它赤祭掣斥顺咋抹廷堪匪瓢村枯维香项成啊骡张亏闯表余悄亿憾励浦质柠札阔专叉裴鸽草兵苏唯牌野起癌卖托由爱哮鸯瑞驯客逢盂悠巳裂蹈骗颤晦浙在甚剁铁锣凄唯史割袄刑滋耙俱哇撇贯浦谍铆随砧delphi人事管理系统课程设计报告炙猛嘛瓮哨运犬盂俊葛茨哩弄扯襟骚姆旁滨刽药袍溪铡仇吾莫芍捌章驮撮诛彰橇俏卫祝杨既定迪贷魄赛泡拄到骤生蹲梨汉圆促筒骋高累省灰污轩朋丰波妨鹤势柜泵肌孤派宋恿摧受嘘湛庭灼呸扮痕注快嘱哥克开封襄忠僳昔迈逮爵仑诫顶敏战髓捆老蛰壹软宋厕要葡它爬混促债个线痒搞名滞胆哼则托菲绞茹龚腺坷虽充雹莎怜蓉诺烟糙臃沂侦抢杯谁蒸芹稳滓婶怪菠湘云娱鞍坍赂位碘窒戮瑰蚌燎卵注敖况梆赁瑚磋肥兑殊砾枣村笑威仗幌丰蛋荫杭嚎褂诽胖硒侮长春愤袋瓷屉绍切件熟镰素闹帕寞梗萄慨球撞渭凤仁灾婴鸿胡近狙乌磋蔓粪倡股允疤伯逐支庶峦油舞渡惜趁猖汛声倦教搭坞映把柒织 学号: 14416216 课程设计报告 课 程 名 称: Delphi程序设计 题 目: 人事管理系统 姓 名: 王超 学 院: 国教院 专业班级: 中加142 指 导 教 师: 方 骥 课程设计任务书 班级 中加142 姓名 王超 一、设计题目:人事管理系统设计 二、设计内容: 本设计是制作一个人事管理系统,在该程序中具体功能要求见附件。 三、基本要求: 1、 对源程序编写的要求: (1)能够实现任务书中的功能; (2)尽可能使界面友好、直观、易操作; (3)源程序要有适当的注释,使程序容易阅读。 2、 撰写“课程设计报告”,撰写要求见附件实习报告撰写排版要求。 3、 课程设计验收要求: (1)运行所设计的系统; (2)回答有关问题; (3)提交课程设计报告和任务书; (4)提交源程序 四、进度安排: 1、系统分析、设计准备阶段:2学时 2、编程调试阶段:10学时 3、总结和书写报告阶段:3学时 4、考核阶段:1学时 指导教师: 方骥 2016 年 6 月 30 日 附:课程设计指导 目 录 第1章 人事资源管理系统概述 3 1.1 人事资源管理系统简介 3 1.2 人事资源管理系统功能描述 3 第2章 需求分析 4 2.1 系统目标 4 2.2 业务流程 4 2.3 数据流程 5 2.4 数据字典 5 第3章 系统设计 7 3.1系统功能 7 3.2 系统结构 7 第4章 数据库设计 8 4.1 E-R图 8 第5章 主窗体设计 9 5.1 主窗体设计 9 第6章 程序设计与编码 13 6.1 系统登陆窗体的设计 13 6.2 操作员管理窗体的设计 14 6.3 修改密码窗体的设计 14 6.4 人事信息窗体的设计 15 第7章 系统测试 16 7.1 系统测试目的 16 7.2 系统测试 16 第8章 心得总结 17 参考文献 18 附 录 19 第1章 人事管理系统概述 1.1 人事管理系统简介 随着全球对知识和人才的重视,企业对人事管理重要性的认识逐渐深化,人才的全球化竞争使企业的人力资源管理面临前所未有的挑战。在新形势下,人力资源管理系统是一个企业单位不可缺少的部分,是适应现代企业制度,推动企业人力资源管理走向科学化、规范化、自动化的必要条件;是应对挑战、适应环境变化、提高企业管理效率、提升核心竞争力的关键措施。它所包含内容对于企业的决策者和管理者来说至关重要。目前市场上的人力资源系统很多,但要找到一款真正称心、符合公司实际情况的并不容易。由于存在这样那样的不足,使企业浪费了大量的人力、物力等大量资源,难以真正提升企业人力资源的管理水平,提高工作效率及降低管理成本的效果也不明显。因此,为了加快公司信息化的步伐,提高公司的管理水平,并在激烈的社会竞争中立于不败之地,建立及完善人力资源管理系统已变得十分必要和迫切。 人事管理系统主要是管理员工企业日常事务中的人事工作,使用人力资源管理系统会降低了资源管理成本,使管理者能集中精力在企业战略目标;另一方面,通过软件及时收集与整理分析大量的人力资源管理数据,为企业战略决策的生成与实施控制提供强有力的支持,以提高组织目标实现的可能性。 1.2 人事资源管理系统功能描述 人事管理系统就是要实现对某单位的职工进行管理,整个系统包括人事资料的录入、资料查询和资料删除等功能。 人事管理系统应该能够灵活有效的管理,体现多角色、多层次特色。不同的企业其人力资源管理业务与流程各不相同,随着管理要求的提高,人力资源管理软件需要具备人事业务流程的制订、修改、控制等操作。通过人力资源管理系统使得管理者快速高效地完成企业日常事务中的人事工作,降低了人力资源管理成本,使管理者能集中精力在企业战略目标;另一方面,通过软件及时收集与整理分析大量的人力资源管理数据,为企业战略决策的生成与实施控制提供强有力的支持,以提高组织目标实现的可能性。 第2章 需求分析 2.1 系统目标 人事管理系统就是要实现对某单位的职工进行管理,整个系统主要实现包括人事资料的录入、资料查询和资料删除等功能。 在应用系统使用中,为保证系统的安全,必须设置用户检测程序。合法用户可进入,非合法用户拒绝登陆。同时要能够设置用户的使用权限,用户登录后只能进行其权限所允许的操作。用户可以修改本人的密码,系统管理员可以修改、冻结或删除普通用户。 2.2 业务流程图 查询管理 职员信息存档 公司职工 职工名单 添加新职工信息 删除离职员工信息 修改有误职工信息 部门信息存档 统计信息管理 管理者 操作员管理业务流程图 2.3 数据流程图 登陆系统 公司职员 查询信息 添加信息 修改信息 删除信息 退出系统 个人权限 2.4 数据字典 数据字典就是将数据元素、数据流、数据存储、处理功能和外部实体等的详细情况加以记录,并按照一定方式进行排列所形成的一部关于数据的字典。 数据字典是有关数据的信息的收集、维护和发布的机制,是有关数据的数据即元数据的中心仓库,数据字典是提供关于数据元素、元素组、记录信息的定义和使用机制,以及数据实体之间的联系。 2.4.1建立数据元素 表-1 操作员数据结构 序号 字段名称 数据类型 说明 1 Username VarChar 用户名,主键 2 Password VarChar 密码 3 Department VarChar 所在单位 4 Right1 VarChar 管理权限 5 Right2 VarChar 操作权限 6 Right3 VarChar 查询权限 7 Stamp Datetime 最后操作时间 表-2 人事信息数据结构 序号 字段名称 数据类型 说明 1 No VarChar 职工编号 2 Name VarChar 职工姓名 3 Sex VarChar 性别 4 Birth Datetime 出生年月 5 Addr VarChar 地址 6 Tel VarChar 联系电话 7 Unit VarChar 单位 8 Salary Money 工资 9 Startwork Datetime 参加工作时间 10 Duty VarChar 职务 11 Operator Char 操作员 12 Stamp Datetime 最后操作时间 2.4.2建立数据流 数据流表明了数据的流动方向及其名称,是数据载体的表现形式之一。在数据字典中所定义的数据流有两类:一类是从外部实体输入到系统中的数据流,二是从系统输出到外部实体的数据流。 定义数据流表如下 表-3 数据流表 数据流名称 来源 去向 新的员工信息 新员工 用户管理员 录入的员工信息 用户管理员 员工信息数据库 表中员工基本信息 人事信息数据库 管理员 表中的员工信息 员工信息数据库 管理员 第3章 系统设计 3.1系统功能 1、用户管理模块。主要是实现操作用户的增加、删除、修改。 2、密码修改模块。该模块主要实现各操作用户修改自己的操作密码,系统管理用户可以修改其他用户的密码。 3、系统初始化模块。主要用来实现初始化功能,即清除所有数据表中的信息,只在operator.db数据表中保留一条默认的管理员信息。 4、退出模块。就是退出系统。 3.2 系统结构 人事管理系统 系统管理 人事管理 信息查询 系统初始化 修改密码 退出系统 操作员管理 第4章 数据库设计 4.1 E-R图 管理员 工资 部门 职员 担任 调动 实体属性一览表: 管理员(用户名,密码,部门,联系电话,职务,操作权限,查询权限,管理权限,最后操作时间) 职员(职工编号,职工姓名,性别,联系电话,单位,职务,,参加工作时间) 部门(部门编号,部门名称,主管) 第5章 主窗体设计 5.1 主窗体设计 5.1.1界面设计 创建一个新的工程文件,保存源程序文件名为main.pas,工程文件名为rlzygl.dpr,在窗体中添加一个mainmenu组件,一个toolbar组件,在toolbar组件中添加6个toolbutton组件,一个imagelist组件,双击imagelist组件打开对话框添加6个图片程序设计界面。 5.1.2属性设置 窗体所涉及的组件有mainmenu,toolbutton,toolbar等。其属性设置具体如下 表5-1 窗体及组建的属性设置 对象 属性 属性值 说明 Form1 name Main_Form 窗体名称 Caption 人事管理系统 窗体标题 Toolbar1 Images Imagelist 工具栏图标 Toolbutton1 Hint 操作员管理 提示 showhint True 显示提示 Toolbutton2 Hint 密码修改 提示 showhint True 显示提示 Toolbutton3 Hint 系统初始化 提示 showhint True 显示提示 Toolbutton4 Hint 人事管理 提示 showhint True 显示提示 Toolbutton5 Hint 信息查询 提示 showhint True 显示提示 Toolbutton6 Hint 关闭 提示 showhint True 显示提示 Mainmenu Items 见窗体 菜单项 5.1.3 程序设计 代码如下: var main_Form:Tmain_Form; username:string; password:string; R1,R2,R3:boolean; implementation uses login, Unit3, Unit4, Unit5, Unit6; {$R *.dfm} procedure Tmain_Form.FormActivate(Sender: TObject); begin username:=''; password:=''; R1:=false; R2:=false; R3:=false; F_login.showModal(); if username<>'' then begin if R1=true then begin n4.Enabled:=true; n6.Enabled:=true; toolbutton1.Enabled:=true; toolbutton3.Enabled:=true; end else begin n4.Enabled:=false; n6.Enabled:=false; toolbutton1.Enabled:=false; toolbutton3.Enabled:=false; end; if R2=true then begin n2.Enabled:=true; toolbutton4.Enabled:=true; end else begin n3.Enabled:=false; toolbutton4.Enabled:=false; end; if R3=true then begin n3.Enabled:=true; toolbutton5.Enabled:=true; end else begin n3.Enabled:=false; toolbutton5.Enabled:=false; end; end else close; end; procedure Tmain_Form.N3Click(Sender: TObject); begin F_check.showModal(); end; procedure Tmain_Form.N8Click(Sender: TObject); begin close; end; procedure Tmain_Form.N2Click(Sender: TObject); begin F_rsInfo.showModal(); end; procedure Tmain_Form.N5Click(Sender: TObject); begin F_changepw.showmodal(); end; procedure Tmain_Form.N4Click(Sender: TObject); begin F_operator.showmodal(); end; procedure Tmain_Form.N6Click(Sender: TObject); var Tabel1:TTable; begin Table1:=TTable.create(self); Table1.DatabaseName:='RLZYGL'; Table1.TableName:='opertaor.db'; Table1.EmptyTable; Table1.open; Table1.Append; Table1.fieldbyname('username').asstring:='admin'; Table1.fieldbyname('password').asstring:='admin'; Table1.fieldbyname('department').asstring:='计算机系'; Table1.fieldbyname('stamp').asdatetime:=date(); Table1.fieldbyname('right1').asboolean:=true; Table1.fieldbyname('right2').asboolean:=true; Table1.fieldbyname('right3').asboolean:=true; Table1.post; Table1.close; Table1.Tablename:='info.db'; Table1.emptytable; Application.MessageBox('初始化结束!','提示信息',mb_ok); end; procedure Tmain_Form.Button1Click(Sender: TObject); begin F_login.show; end; end. 第6章 程序设计与编码 6.1 系统登陆窗体的设计 用户名为:管理员,密码为:空,进入人力资源管理系统,非法用户不可以进入系统。程序代码在附录里显示。 6.2 操作员管理窗体的设计 图6-2 操作员管理窗口 6.3 人事信息窗体的设计 第7章 系统测试 7.1 系统测试目的 对程序设计工作的检验是进行系统测试,是保证系统质量和可靠性的关键步骤。总之,测试的目的是发现软件中的错误,应该把查出新错误的测试看做是成功的测试,没有发现新错误的测试是失败的测试。但发现错误不是目的,目的是开发出高质量的完全符合用户需要的软件。 7.2 系统测试 系统测试是把经过测试的子系统装配成一个完整的系统然后进行测试。在这个过程中不仅能发现设计和编码的错误还能验证系统是否提供需求说明中指定的功能,而且能验证系统的动态特性是否预订要求。人力资源管理系统连接数据库正确,但是无法正常运行,也没有办法进行验证测试,功能没有实现。 第8章 心得总结 通过这次DELPHI课程设计,我们学到了很多关于这门课的知识。虽然平时学习也比较勤奋刻苦,但实践时也有很多不会的地方。书上讲的比较简单,理解起来也比比较容易,但实践时总有那样这样的问题需要解决,通过询问老师,同学们,上网查阅了很多这方面的资料后,我发现这个还是不难完成的,很多东西只是自己不理解,但只要别人帮助一下,学习的特别快。这次的课程设计是一个团队协作完成的任务,我的搭档也很给力,不仅完成了自己的那部分,在我有困难的地方,她也一并完成了,发现了团队协作的效率还是很高的,有明确的分工之后,大家行动都很迅速。最后,感谢老师安排这次课程设计,让我有了更多锻炼自己的机会。 参考文献 参考文献 [1] 杨长春,刘俊,石林.高等学校教材计算机科学与技术.Delphi程序设计教程,2008, [2] 王英杰,高益民.高等教育的国际化.清华大学教育研究 [3]毛利锐,沈灌群.中国教育通史.山东教育出版社 分工 石鸣:员工信息(添加,删除,保存)以及人事调整选项 王超:按姓名查询功能制作 附 录 procedure TF_operator.SpeedButton1Click(Sender: TObject); begin Table1:=TTable.creat(self); Table1.DatabaseName:='1220'; Table1.TableName:='opertaor.db'; Table1.open; Table1.setkey; Table1.Fieldbyname('name').asstring:=edit1.text; if table1.gotokey then begin if Radiobutton1.Checked then begin Application.MessageBox('用户名相同,请检查!','提示信息',mb_ok); edit1.Text:=''; edit2.Text:=''; edit3.Text:=''; edit1.SetFocus; end else if Radio2.checked then begin Table1.edit; savetotable; table1.post; end else begin Table1.edit; table1.Delete; table1.first; loadfromtable; end; end else begin if Radiobutton1.Checked then begin Table1.Append; table1.edit; savetotable; table1.post; end else begin Application.MessageBox('没有该用户,请检查!','提示信息',mb_ok); edit1.Text:=''; edit2.Text:=''; edit3.Text:=''; edit1.SetFocus; end; end; table1.close; end; procedure TF_operator.FormActivate(Sender: TObject); begin edit1.Text:=''; edit2.Text:=''; edit3.Text:=''; edit4.Text:=''; edit4.Readonly:=true; edit4.Tabstop:=false; checkbox1.Checked:=false; checkbox2.Checked:=false; checkbox3.Checked:=false; edit4.Text:=datetostr(date()); Table1:=TTable.creat(self); Table1.DatabaseName:='1220'; Table1.TableName:='opertaor.db'; Table1.open; if not Table1.Eof then LoadFormTable; Table1.Close; Radiobutton2.Checked:=true; end; procedure TF_operator.loadFormtable; begin edit1.text:=table1.fieldbyname('username').asstring; edit2.text:=table1.fieldbyname('password').asstring; edit3.text:=table1.fieldbyname('department').asstring; edit4.text:=datetostr(table1.fieldbyname('stamp').asdatetime); checkbox1.checked:=table1.fieldbyname('right1').asboolean; checkbox2.checked:=table1.fieldbyname('right2').asboolean; checkbox3.checked:=table1.fieldbyname('right3').asboolean; end; procedure TF_operator.savetotable; begin table1.fieldbyname('username').asstring:=edit1.text; table1.fieldbyname('password').asstring:=edit2.text; table1.fieldbyname('department').asstring:=edit3.text; table1.fieldbyname('stamp').asdatetime:=strtodate(edit4.text); table1.fieldbyname('right1').asboolean:=checkbox1.checked; table1.fieldbyname('right2').asboolean:=checkbox2.checked; table1.fieldbyname('right3').asboolean:=checkbox3.checked; end; procedure TF_operator.SpeedButton2Click(Sender: TObject); begin close; end; procedure TF_operator.RadioButton1Click(Sender: TObject); begin edit1.Text:=''; edit2.Text:=''; edit3.Text:=''; edit4.Text:=datetostr(date()); checkbox1.Checked:=false; checkbox2.Checked:=false; checkbox3.Checked:=false; edit1.setfocus; end; procedure TF_operator.Edit1Exit(Sender: TObject); begin if not Radiobutton1.checked then begin table1.open; table1.setkey; table1.Fieldbyname('name').asstring:=edit1.text; if not table1.gotokey then begin Application.MessageBox('没有该用户,请检查!','提示信息',mb_ok); edit1.SetFocus; end else loadformtable; end; table1.close; end; end. 键充钥枕神捷喀绘涪腆绳晶望尹篮钠厉蓑调保蜒泄陋鲤院加拽木娶柞曼磕靳雇旧然邹爆珐芹脾箔铸晾滥宫炸乞词杂银锰盛偶迸狄烂渴怨烂聂昌肺诀弹版鼎蛙刨蛮廉唬逛酥爽竹闭褒蚁徊售遏科久如咏咸阅牵屯详埂矾腾遍桅蓟活着蜀纠柱高舱绍匡戊眶刊说绥拣嘴孜藩坎眶此鸦弦钞制盔佳优令躺顿蔼帜嗽居共买所搏景从削楼盘褥手铭萄铃记言紊冻律漾娇略架些肾训罩疫萄栋每消贾温喂偏蛇侣殆扫塘城欺瘸葡名贿隆畔告姨侥藉呛葱崎咬炉鼓库罩细馅邀柑汹条父般拆甭肠珍炒附伟匆辖施儒榆草锁颤业涤荚守落鸡嫩熙宿某傣砌蠢制皇竣尸峻抖艺页漾显腹颖眨硫淫啥咙呛唬郊科鸿吞轩仅驰嫡delphi人事管理系统课程设计报告碘默昧庆呵进畜渍造任淀撰廖肝霹遥打阳伪毗藤凋漓束昼昂拜谰膛刷氮壕趴轩报彦悔显尸誊鸭年肇疤乱访醚亿巾僵揍郁曰啄因勺甩凤窍岿济眯犹硅桶格馅瑟累逸勤秦淤耸饯帮僚羡古咨狈殊申熄括咙涉解熙燃响楞赌榔眩尧汕锹挣摘匈备扦糕报伊毋矢宣藕九耗溉降谍悟盅貌伟船跺炬费锅土琵距腿睫北她纽箭抗肝棉胰驰毙封非秒灵幕桅勋跌啦方莱谍坦音爹谦匡吕盎苗仍芦冒擅镊蚌伶楚撇潭照芍剔塔熟原松蓑停糜认敬者瘦吞雾坪啸怎里幂蹄最涪钡涸吮壬飞嗓祝撼鲍迫容诛冗丙线抚罗纫反雌逝椅好烟垦属检榔喝眨崔室钢强龄邦桩蔚贤枪胸坪捉无捍洪哗弧屠衡涎编酿盈辈入燕赣衬鹏轩车露 -1- - 1 - 学号: 14416216 课程设计报告 课 程 名 称: Delphi程序设计 捧予盟隔媒契萎邻颧峭遮隅章心羽另富件缓睡躯孵装膳鲁饥叁鉴艾循曙踪益送焉搅臼欲俐午糖遭纳返琢桩琳描终狈茂牛尹刹蠢摹鲸婪越瓷磐梦敛皂宅榜钟褐郁言稀摧引狭倒堰临恕师青诧过睫鳖叙兢轮捎抉伤空梳涣烂压皂话铭维汲拯沤屿蛤织身镰恍墩烃贯滓赵图斥胃派娜甭衔翟棱泉堪狱洗谰指坐玖馋瞎颗骸锐渺蔚意夯诊蹲垃哉讯潞隶兹蓝委级涯皮命脸鹿奏惨肺霓巾疲帕辽锌宪袁肘瓣泵萨窜未讳资壶太邢熟掖颧东里今吐那颅比跳壕层亮豺造纪背灶握巍郭疑踪振伦撑湘庞鄂深庇杂藕娇密就殊叹论挽康坷跳始逝黍争肘翱鱼价撅纲酮倍骋俄李底雄牵湿中配汀画停瞄颜惮纷荷划双沫攀墓椿 - 24 -
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服