企业人事管理说明书_第1页
企业人事管理说明书_第2页
企业人事管理说明书_第3页
企业人事管理说明书_第4页
企业人事管理说明书_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

企业人事管理说明书摘要 2正文 31、问题描述 32、需求分析 42.1体系需乞降功能 42.2数据流程图 42.3数据字典 63、体系总体设计 73.1概念构造设计(E-R图) 73.2由E-R图转换获得的关系模式 73.3逻辑构造设计(数据库的设计) 84、具体设计 104.1人事治理体系的重要功能: 104.2人事治理体系的重要功能法度榜样流程图 104.3用户界面与法度榜样设计 125、体系测试 155.1测试方法 155.2测试用例 156、软件应用说明书 17总结 19参考文献 20致谢 21附件Ⅰ部分原法度榜样代码 22摘要当今社会人员流淌越来越频繁,使得档案治理工作也变得越来越复杂。若何治理号企业人事的信息,成为企业治理的一个大年夜问题。若何实现档案治理的主动化,无疑是公司的治理部分带来专门大年夜的便利。人事治理体系恰是一个为适应当前各个行业对人力资本信息治理的那个急切需求而设计开创的软件体系,其开创重要包含后台数据库的建立和爱护以及前端应用法度榜样的开创两个方面。关于前者要求保持数据的一致性和完全性以及好的数据安稳性;后者设计应用法度榜样能够便利地实现公司人事档案的治理,易应用、检索灵敏、查找便利。这些长处能够或许极大年夜的进步人事档案的治理的效力,也是进步公司人事治理,更好的为公司办事。关键词:人事治理;数据库;治理体系正文问题描述该设计要肄业生以企业人事治理营业为背景,设计、开创一套“企业人事治理体系”软件。经由过程该标题标设计、开创,使学生初步获得数据库开创的练习,周全培养软件开创过程中的分析、设计、编码、测试及文档规范书写的才能,获得软件开创的综合练习,进步解决实际问题的才能。2、需求分析2.1体系需乞降功能设计一小我事治理体系,使体系知足以下需乞降功能1)依照企业人事治理的须要,对企业以及企业中职员的信息进行添假删除等操作,并能对人事档案进行扫瞄,对人事材料进行查询,对人事材料进行统计。为企业的人事治理供给一个便利的治理体系。2)、体系功能包含:a体系治理(设置用户和退出体系)。b差不多数据治理(平易近族档案设置,职工类型设置,文化程度设置,政治面孔设置,部分类别设置,工资类别设置,职称类别设置,职务类别设置)。c人事档案治理(人事档案扫瞄,人事材料查询,人事材料统计)。数据库治理(数据库的备份与复原)。2.2数据流程图数据流图由四种全然的元素构成:数据流(DataFlow),处理(Process),数据储备和数据源(数据终点)。数据流(DataFlow):为具有名称且有流向的数据,用标有名称的箭头表示,一个数据可因此记录、组合项或全然项。处理(Process):表示对数据所进行的加工和变换,在图顶用矩形框表示。指向处理数据流为该处理的输入数据,分开处理的数据为处理的输出数据。数据储备:表示用文件方法或数据库情势所储备的数据,堆砌进行的存取分别以指向或分开数据储备的箭头表示。数据源及数据终点:表示数据的来源或数据的去向,可因此一个组织或人员,它处于体系范畴之外,因此又称它为外部实体,它是为了赞助明白得体系界面而引入的,一样只涌现在数据流图的起点和终点。数据流程图如图2.1所示:治理员治理员接收信息更新系统信息小我信息处理事务用户信息信息信息查询图2.1数据流程图2.3数据字典数据字典是关于数据的信息的集合,也确实是对数据流图中包含的所有元素的定义的集合。因为本次设计是小型软件体系的开创,因此采取卡片情势书写数据字典。每张卡片上储存描述一个数据的信息如许做更新和修改起来比较便利,同时能零丁处理描述每个数据的信息。下面将列出若干数据元素的数据卡片信息。数据字典卡片如下:名称:职工信息表名称:职工信息表别号:描述:对职员全然情形的描述定义:职员信息表=职员号+姓名地位:显示到屏幕储存到磁盘名字:治理员名称别号:描述:惟一地标识一门特定治理员的关键域定义:治理员名称=10{字符}地位:治理员信息表名称:职员表别号:名称:职员表别号:描述:对整体职员全然情形的描述定义:职员信息表=所有职员的全然信息的总和地位:显示到屏幕储存到磁盘名字:职员家庭表别名:描述:惟一地标识一个职员的家庭状况定义:家庭名称=10{字符}地位:家庭信息表职员信息表3、体系总体设计3.1概念构造设计(E-R图)经分析人事治理体系的E-R图如图3.1所示:职员职员用户属于部分名称负责人属于职务临时职称正式用户口令用户名籍贯姓名性别学历婚姻状况编号图3.1人事治理体系E-R图3.2由E-R图转换获得的关系模式用户(用户名,暗码,是否治理员)平易近族档案设置(平易近族编号,平易近族名称)职工类型设置(职工类型号,职工类型名称)文化程度设置(文化程度编号,文化程度名称)政治面孔设置(政治面孔编号,政治面孔名称)部分类别设置(部分类别编号,部分类别号称)工资类别设置(工资类别编号,工资类别号称)职称类别设置(职称类别编号,职称类别号称)职务类别设置(职务类别编号,职务类别号称)职工表(职工编号,职工名,出身日期,年纪,平易近族,婚姻状况,身份证,家庭德律风,电子邮箱,手机,籍贯,地址,卒业黉舍,地点部分,政治面孔,职称类别,职务类别,工资类别,文化程度)职工家庭情形(编号,职职员号,成员姓名,关系,出身日期,地点部分,担负职务,政治面孔,手机)3.3逻辑构造设计(数据库的设计)建立数据库本设计用MicrosoftOfficeAccess2003作为后台数据库,在MSSQLServer2000中创建一个名为Manager1的数据库,并在个中建立逻辑设计中涉及的表.建立表:在Access中,能够查看所建立的表,并添加恰当测试数据用户表如图3.2所示:图3.2用户表平易近族挡案表如图3.3所示:职工类型表如图3.4所示:图3.3平易近族档案表图3.4职工类型表文化程度表如图3.5所示:政治面孔表如图3.6所示:图3.5文化程度表图3.6政治面孔表部分类别设置表如图3.7所示:工资类别表如图3.8所示:图3.7部分类型设置表图3.8工资类别表职称类别表如图3.9所示:职务类别表如图3.10所示:图3.9职称类别表图3.10职务类别表4、具体设计4.1人事治理体系的重要功能:1.教师各类信息的输入,包含教师全然信息,课程信息,论文信息,项目信息的输入等。2.教师营业档案治理的各类信息查询,修改和爱护。3.操作日记的治理。4.教师营业档案治理体系的应用赞助。4.2人事治理体系的重要功能法度榜样流程图体系操作流程图:缺点信息体系主界面缺点信息体系主界面体系登录界面体系登录界面体系治理体系治理输入操作员及暗码输入操作员及暗码数据库暗码缺点检查数据库暗码缺点检查暗码精确暗码精确功能界面功能界面功能处理 图5.1体系操作流程图功能处理人事治理体系职员各类信息的查询功能流程图如图5.2所示:用户用户输入查询前提查询响应信息信息确信是否存在从新查询停止是否否是否是图5.2查询功能流程图3.删除功能流程图如图5.3所示:从新删除治理员删除信息从新删除治理员删除信息确信停止删除成功从新删除治理员删除信息确信停止删除成功从新删除治理员删除信息确信停止删除成功是是否否否是图5.3删除功能流程图4.3用户界面与法度榜样设计1.一样交互设计一样交互涉及信息显示、数据输入和体系整体操纵等方面。(1)一致性为客户交互界面中的菜单选择、敕令输入、数据显示以及浩渺的其他功能,应用一致的格局。在设计的过程中,全然上保持了体系的格局一致。(2)信息的反馈向用户及时供给视觉和听觉的信息反馈,以包管在用户和体系之间及时地建立双向通信。在本体系设计过程中,全然做到了信息的及时反馈,在信息显示的大年夜部分窗体中包含了刷新按钮,会对数据库中的数据进行及时地显示。别的,在进行缺点操作是,会弹出提示窗口并发出警告提示音。(3)履行有较大年夜阻碍的操作前提示用户确认在设计过程中,假如用户要履行删除操作,以及对数据库的读写操作时,都邑有窗体弹出询问连续操作或者予以提示。(4)削减两次操作间须要经历的内容为了幸免用户为下一步操作而经历大年夜量数据,因此在设计过程中在须要数据传递的窗体中设置全局变量,来传递数据。(5)对话、移动和思虑的效力尽量削减用户击键的次数,在设计时推敲到了用户屏幕的构造以削减用户鼠标移动的距离,尽量幸免用户在操作中产生疑问的情形。(6)许可缺点许可用户的误操作尽量纰谬体系造成损害。(7)按功能对动作分类,并据此设计屏幕构造屏幕构造尽量将软件所具有的所有功能在主页面展现,界面一目了然。2.信息显示设计应当尽量为用户供给的界面显示时完全的、明白的和轻易明白得的。如许才能知足用户的需求。(1)只显示与当前用户有关的信息在用户操作有关体系的特定功能的信息时,不必看到与之无关的数据、菜单和图形。(2)应用一致的标记、标准的缩写和可预知的色彩为了使体系所表达的含义精确、无误,就必须有用一致的标记、标准的缩写和能够预知的缩写,如许用户就无需参照其他信息源就能明白得,而精确地有用软件。(3)产生有意义的缺点信息关于体系在运行过程中产生的缺点尽量给用户返回一个轻易明白得的缺点信息,以应用户保持对体系的信任,和体系的可用性。(4)应用窗口分隔不合类型的信息应用不合的窗口显示、储存不合类型的信息。(5)高效力的应用显示屏当应用多窗口时,应当有足够的空间使得每个窗口至少都能显示出一部分。此外,屏幕的大年夜小应当选得和应用体系的类型相配套。在各个显示数据的窗口中,因为数据窗体项目较多,因此在数据窗体空间中较多的是用了垂直和程度滚动条,以包管信息的周全精确显示。3.数据输入设计用户的大年夜部分时刻用在选择菜单敕令、键入数据和向体系供给输入。在体系中,键盘是重要的输入介质,然则鼠标等设备的也是重要的输入手段,因此,关于他们的数据输入操作有如下商定:(1)保持信息显示和数据输入间的一致性为了便应用户的应用,鼠标应当尽量削减操作的幅度。(2)保持显示信息和输入信息之间的一致性关于用户来说,要包管其输入的数据在显示上与其他显示的视觉特点(例如:文字大年夜小、色彩、地位等)要一致。关于不合类型的用户在登录到体系后,因为有不合的权限,因此在主界面中会有一些项目受到限制而无法应用,因此要使这些项目不产生感化,以包管体系安稳。5.体系测试5.1测试方法软件的测试方法有两种,一种是黑盒测试(功能测试),别的一种是白盒测试(构造测试)。白盒测试在体系的实现过程和法度榜样的调试过程中,碰到专门多问题,现在应当对法度榜样细心扫瞄,设置断点,进行白盒测试。黑盒测试体系完成后,要进行黑盒测试,即设置一些测试用例,对体系的各个模块的功能进行测试,看可否获得精确的输出。在那个地点以治理员的身份登录体系,以便对体系的各个功能模块进行测试。5.2测试用例上岸测试:图5.1上岸界面暗码缺点时:图5.2上岸缺点提示界面查询职工表:图5.3查询职工表职工家庭情形表:图5.4职工家庭情形表6、软件应用说明书1、运行情形:Windowsxp操作体系,VisualStudio20052、应用方法在安装了VisualStudio2005的体系,点击可履行文件,如许就主动在所应用的运算机中设备好ODBC数据源,并进入上岸界面。能够应用帐号admin和暗码admin上岸。上岸测试界面如图6.1所示:图6.1上岸界面暗码精确时精确的进入主界面的界面如图6.2所示:图6.2主界面人事档案查询功能测试的界面如图6.3所示:图6.3人事查询界面总结在这两周课程设计中,我的课程设计标题是企业人事治理体系。经由过程该标题标设计过程,我加深了对VC++、ACCESS数据库常识点的明白得,对数据库建表的全然操作的实现有所操纵,对教材中所学的各类数据库构造进一步明白得和操纵,学会了若何把学到的常识用于解决实际问题,锤炼了本身着手的才能,也培养了本身自力思虑问题和解决问题的才能。我的同窗在设计过程中为我发明专门多缺点,也帮我解决了专门多问题,在此我衷心的感激他们。在今后的进修中我会加倍留意各个方面的才能的调和成长。在课程设计时碰到了专门多的问题,在师长教师的赞助,和对各类材料的查阅中,将问题一个一个的解决了,培养了我自立着手,自力研究的才能,为往后在进修工作中能更好的成长打下了坚实的差不多。一小我要完成所有的工作是专门困难和耗时的。在今后的进修中我会加倍留意各个方面的才能的调和成长。在课程设计时碰到了专门多的问题,在师长教师的赞助,和对各类材料的查阅中,将问题解决,培养了我自立着手,自力研究的才能,为往后在进修工作中能更好的成长打下了坚实的差不多。两周的课程设计专门短暂,但其间的内容是专门充分的,在个中我进修到了专门多日常平凡书本中无法学到的器械,积聚了体会,锤炼了本身分析问题、解决问题的才能,并学会了若何将所学的各课常识融合、组织、来合营进修,这两周中我收益专门大年夜,学到了专门多。参考文献[1]张海藩,软件工程导论[M].清华大年夜学出版社,2003年12月[2]张海藩.软件工程导论进修指导[M].清华大年夜学出版社,2004年9月[3]萨师煊,王珊.数据库体系概论[M].清华大年夜学出版社,2002年2月[4]汪孝宜,刘中兵,徐佳晶等.JSP数据库开创实例精华精辟[M].电子工业出版社,2005年1月[5]陈磊,郭斌,李翔.PowerBuilder9数据库项目案例导航,清华大年夜学出版社[6]廖疆星,张艳钗,肖金秀.PowerBuilder&SQLSever2000数据库体系治理与实现[M].冶金工业出版社[7]卫海,黄浩.PowerBuilder9.0课程设计案例精编[M].致谢附件Ⅰ部分原法度榜样代码人事材料统计重要代码如下:voidCStatDlg::OnClickList1(NMHDR*pNMHDR,LRESULT*pResult){ //TODO:Addyourcontrolnotificationhandlercodehere CStringstrSQL; CStringstrValue="0"; CDatabasedb; db.Open(_T("Manager1")); CRecordsetrecordset(&db); UpdateData(TRUE); //获得统计类型 intnType=m_ctrList.GetSelectionMark(); inti=0; switch(nType) { case0://按性别统计 m_ctrResult.DeleteAllItems(); m_ctrResult.DeleteColumn(1); m_ctrResult.DeleteColumn(0); m_ctrResult.InsertColumn(0,"性别"); m_ctrResult.InsertColumn(1,"人数"); m_ctrResult.SetColumnWidth(0,100); m_ctrResult.SetColumnWidth(1,100); strSQL="selectcount(ID)asnum,sexfrompersongroupbysex"; //MessageBox(strSQL); if(!recordset.Open(CRecordset::forwardOnly,strSQL)) { MessageBox("打开数据库掉败!","数据库缺点",MB_OK); return; } while(!recordset.IsEOF()) { recordset.GetFieldValue("sex",strValue); m_ctrResult.InsertItem(i,strValue); recordset.GetFieldValue("num",strValue); //MessageBox(strValue); m_ctrResult.SetItemText(i,1,strValue); i++; recordset.MoveNext(); } recordset.Close(); break; case1://按年纪统计 m_ctrResult.DeleteAllItems(); m_ctrResult.DeleteColumn(1); m_ctrResult.DeleteColumn(0); m_ctrResult.InsertColumn(0,"年纪"); m_ctrResult.InsertColumn(1,"人数"); m_ctrResult.SetColumnWidth(0,100); m_ctrResult.SetColumnWidth(1,100); strSQL="selectcount(ID)asnum,agefrompersongroupbyage"; if(!recordset.Open(CRecordset::forwardOnly,strSQL)) { MessageBox("打开数据库掉败!","数据库缺点",MB_OK); return; } while(!recordset.IsEOF()) { recordset.GetFieldValue("age",strValue); m_ctrResult.InsertItem(i,strValue); recordset.GetFieldValue("num",strValue); m_ctrResult.SetItemText(i,1,strValue); i++; recordset.MoveNext(); } recordset.Close(); break; case2://按平易近族统计 m_ctrResult.DeleteAllItems(); m_ctrResult.DeleteColumn(1); m_ctrResult.DeleteColumn(0); m_ctrResult.InsertColumn(0,"平易近族"); m_ctrResult.InsertColumn(1,"人数"); m_ctrResult.SetColumnWidth(0,100); m_ctrResult.SetColumnWidth(1,100); strSQL="selectcount(ID)asnum,folkfrompersongroupbyfolk"; if(!recordset.Open(CRecordset::forwardOnly,strSQL)) { MessageBox("打开数据库掉败!","数据库缺点",MB_OK); return; } while(!recordset.IsEOF()) { recordset.GetFieldValue("folk",strValue); m_ctrResult.InsertItem(i,strValue); recordset.GetFieldValue("num",strValue); m_ctrResult.SetItemText(i,1,strValue); i++; recordset.MoveNext(); } recordset.Close(); break; case3://按籍贯统计 m_ctrResult.DeleteAllItems(); m_ctrResult.DeleteColumn(1); m_ctrResult.DeleteColumn(0); m_ctrResult.InsertColumn(0,"籍贯"); m_ctrResult.InsertColumn(1,"人数"); m_ctrResult.SetColumnWidth(0,100); m_ctrResult.SetColumnWidth(1,100); strSQL="selectcount(ID)asnum,nativefrompersongroupbynative"; if(!recordset.Open(CRecordset::forwardOnly,strSQL)) { MessageBox("打开数据库掉败!","数据库缺点",MB_OK); return; } while(!recordset.IsEOF()) { recordset.GetFieldValue("native",strValue); m_ctrResult.InsertItem(i,strValue); recordset.GetFieldValue("num",strValue); m_ctrResult.SetItemText(i,1,strValue); i++; recordset.MoveNext(); } recordset.Close(); break; case4://按职务类别统计 m_ctrResult.DeleteAllItems(); m_ctrResult.DeleteColumn(1); m_ctrResult.DeleteColumn(0); m_ctrResult.InsertColumn(0,"职务"); m_ctrResult.InsertColumn(1,"人数"); m_ctrResult.SetColumnWidth(0,100); m_ctrResult.SetColumnWidth(1,100); strSQL="selectcount(ID)asnum,dutyfrompersongroupbyduty"; if(!recordset.Open(CRecordset::forwardOnly,strSQL)) { MessageBox("打开数据库掉败!","数据库缺点",MB_OK); return; } while(!recordset.IsEOF()) { recordset.GetFieldValue("duty",strValue); m_ctrResult.InsertItem(i,strValue); recordset.GetFieldValue("num",strValue); m_ctrResult.SetItemText(i,1,strValue); i++; recordset.MoveNext(); } recordset.Close(); break; case5://按职称类别统计 m_ctrResult.DeleteAllItems(); m_ctrResult.DeleteColumn(1); m_ctrResult.DeleteColumn(0); m_ctrResult.InsertColumn(0,"职称"); m_ctrResult.InsertColumn(1,"人数"); m_ctrResult.SetColumnWidth(0,100); m_ctrResult.SetColumnWidth(1,100); strSQL="selectcount(ID)asnum,technicalfrompersongroupbytechnical"; if(!recordset.Open(CRecordset::forwardOnly,strSQL)) { MessageBox("打开数据库掉败!","数据库缺点",MB_OK); return; } while(!recordset.IsEOF()) { recordset.GetFieldValue("technical",strValue); m_ctrResult.InsertItem(i,strValue); recordset.GetFieldValue("num",strValue); m_ctrResult.SetItemText(i,1,strValue); i++; recordset.MoveNext(); } recordset.Close(); break; case6://按文化程度统计 m_ctrResult.DeleteAllItems(); m_ctrResult.DeleteColumn(1); m_ctrResult.DeleteColumn(0); m_ctrResult.InsertColumn(0,"文化程度"); m_ctrResult.InsertColumn(1,"人数"); m_ctrResult.SetColumnWidth(0,100); m_ctrResult.SetColumnWidth(1,100); strSQL="selectcount(ID)asnum,educationfrompersongroupbyeducation"; if(!recordset.Open(CRecordset::forwardOnly,strSQL)) { MessageBox("打开数据库掉败!","数据库缺点",MB_OK); return; } while(!recordset.IsEOF()) { recordset.GetFieldValue("education",strValue); m_ctrResult.InsertItem(i,strValue); recordset.GetFieldValue("num",strValue); m_ctrResult.SetItemText(i,1,strValue); i++; recordset.MoveNext(); } recordset.Close(); break; case7://按政治面孔统计 m_ctrResult.DeleteAllItems(); m_ctrResult.DeleteColumn(1); m_ctrResult.DeleteColumn(0); m_ctrResult.InsertColumn(0,"政治面孔"); m_ctrResult.InsertColumn(1,"人数"); m_ctrResult.SetColumnWidth(0,100); m_ctrResult.SetColumnWidth(1,100); strSQL="selectcount(ID)asnum,politicalfrompersongroupbypolitical"; if(!recordset.Open(CRecordset::forwardOnly,strSQL)) { MessageBox("打开数据库掉败!","数据库缺点",MB_OK); return; } while(!recordset.IsEOF()) { recordset.GetFieldValue("political",strValue); m_ctrResult.InsertItem(i,strValue); recordset.GetFieldValue("num",strValue); m_ctrResult.SetItemText(i,1,strValue); i++; recordset.MoveNext(); } recordset.Close(); break; case8://按地点部分统计 m_ctrResult.DeleteAllItems(); m_ctrResult.DeleteColumn(1); m_ctrResult.DeleteColumn(0); m_ctrResult.InsertColumn(0,"部分"); m_ctrResult.InsertColumn(1,"人数"); m_ctrResult.SetColumnWidth(0,100); m_ctrResult.SetColumnWidth(1,100); strSQL="selectcount(ID)asnum,deptfrompersongroupbydept"; if(!recordset.Open(CRecordset::forwardOnly,strSQL)) { MessageBox("打开数据库掉败!","数据库缺点",MB_OK); return; } while(!recordset.IsEOF()) { recordset.GetFieldValue("dept",strValue); m_ctrResult.InsertItem(i,strValue); recordset.GetFieldValue("num",strValue); m_ctrResult.SetItemText(i,1,strValue); i++; recordset.MoveNext(); } recordset.Close(); break; case9://按职工类型统计 m_ctrResult.DeleteAllItems(); m_ctrResult.DeleteColumn(1); m_ctrResult.DeleteColumn(0); m_ctrResult.InsertColumn(0,"职工类型"); m_ctrResult.InsertColumn(1,"人数"); m_ctrResult.SetColumnWidth(0,100); m_ctrResult.SetColumnWidth(1,100); strSQL="selectcount(ID)asnum,isworkerfrompersongroupbyisworker"; if(!recordset.Open(CRecordset::forwardOnly,strSQL)) { MessageBox("打开数据库掉败!","数据库缺点",MB_OK); return; } while(!recordset.IsEOF()) { r

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论