《07数据库课程设计排版示例.docx》由会员分享,可在线阅读,更多相关《07数据库课程设计排版示例.docx(20页珍藏版)》请在三一办公上搜索。
1、高校工资管理系统l=J随着计算机和网络的发展,基于网络的管理信息系统越来越受到欢迎,在这种需求 的刺激下,高校工资管理系统具有实际应用价值。高校工资管理系统是以软件工程方法 为指导,结合实践,经过系统的调研、需求分析、软件设计、数据库设计、界面设计、 编码和测试等步骤实现了系统的原型。注意:将你的论文相应部分复制到这里,然后用格式刷将你的论文刷成上面段落文 字的格式,再删除样例的文字!关键词:管理信息系统;工资;C/S模式;PowerBuilder; Microsoft SQL Server高校工资管理系统是时代的产物,信息化的飞速发展和计算机软件的日益完善让越 来越多的信息管理都由计算机软件
2、来实现高速化、规范化、自动化管理。为此开发一个 简单易于使用的高校工资管理系统可以大大地减少高校工作人员的工作量,很大程度上 提高了高校的工作效率。注意:将你的论文相应部分复制到这里,然后用格式刷将你的论文刷成上面段落文 字的格式,再删除样例的文字!1.1系统的开发背景注意:将你的论文相应部分复制到这里,然后用格式刷将你的论文刷成样例的文字 的格式,再删除样例的文字!1.2系统的开发目标和原则注意:将你的论文相应部分复制到这里,然后用格式刷将你的论文刷成样例的文字 的格式,再删除样例的文字!1.3系统开发软件简介注意:将你的论文相应部分复制到这里,然后用格式刷将你的论文刷成样例的文字 的格式,
3、再删除样例的文字!第2章数据库设计2.1概念结构设计概念结构设计采用的方法是自底向上设计方法,首先定义各局部应用的概念结构, 然后将他们集成起来得到全局概念结构13高校工资管理系统的主要E-R图如下:图3-4职工基本信息E-R图图3-7出勤信息E-R图图3-8退休信息E-R图3.2.2逻辑结构设计逻辑结构设计的主要任务就是把概念结构设计阶段设计好的基本E-R图转换成与 选用的SQL所支持的数据模型相符合的逻辑结构。在设计逻辑结构是分成三步进行:1)将概念结构转换成为一般的关系、网状、层次模型;2)将转换来的关系、网状、层次模型向SQL支持下的数据模型转换;3)对数据模型进行优化13高校工资管理
4、系统的逻辑结构设计主要的工作是设计主要的数据库表格。根据在数据库需求分析阶段的分析,设计数据库表格如下:表3-1用户表字段名称属性名类型(长度)可否为空描述名称NameChar(20)否职工号IdChar(20)否主键密码PasswordChar(20)否级别flagInt(4)否表3-2基本工资表字段名称属性名类型(长度)可否为空描述姓名NameChar(20)否职工号IdChar(20)否主键单位DanweiChar(20)否职称ZhichengChar(20)否基本工资JibengzFloat(8)否浮动工资FudonggzFloat(8)可职务工资ZhiwugzFloat(8)可工龄工
5、资GonglinggzFloat(8)可考核工资KaohegzFloat(8)可奖金JiangjinFloat(8)可表3-3出勤情况登记表字段名称属性名类型(长度)可否为空描述姓名NameChar(20)否职工号IdChar(20)否主键所在单位DanweiChar(20)否职称ZhichengChar(20)否日期DateDate (8)否出勤ChuqinInt(4)可缺勤QueqinInt(4)可请假QingjiaInt(4)可加班JiabanInt(4)可迟到ChidaoInt(4)可早退ZaotuiInt(4)可出差ChuchaiInt(4)可表3-4银行发放表字段名称属性名类型(长
6、度)可否为空描述姓名NameChar(20)否职工号IdChar(20)否主键所在单位DanweiChar(20)否日期DateDate (8)否职称ZhichengChar(20)否工资卡号KahaoInt(20)否实发工资ShifagongziFloat(8)可备注BeizhuChar(50)可表3-5扣税款表字段名称属性名类型(长度)可否为空描述姓名NameChar(20)否职工号IdChar(20)否主键所在单位DanweiChar(20)否日期RiqiDate (8)否职称ZhichengChar(20)否房租费FangzufeiFloat(8)可水电费ShuidianfeiFloa
7、t(8)可煤气费MeiqifeiFloat(8)可医疗保健YiliaofeiFloat(8)可保险费BaoxianfeiFloat(8)可生育补助ShengyubuzhuFloat(8)可养老保险费YanglaobaoxinFloat(8)可表3-6退休信息表字段名称属性名类型(长度)可否为空描述姓名NameChar(20)否职工号IdChar(20)否主键学位XueweiChar(20)否所在单位DanweiChar(20)否职称ZhichengChar(20)否年龄NianlingInt(4)否退休金TuixiujinFloat(8)可表3-7教职工信息表字段名称属性名类型(长度)可否为空
8、描述姓名NameChar (20)否职工号IdChar (20)否主键性别XingbieChar (10)否学位XueweiChar (20)否所在单位DanweiChar (20)否职称ZhichengChar (20)否婚姻HunyinChar (20)否政治情况ZhengzhiChar (20)可联系方式LianxiChar (20)可3.3详细设计详细设计的主要工作是对各个功能模块进行详细的分析设计,主要包括各个功能模 块的功能、输入、输出、算法和基本的逻辑流程。1 .登录模块(1) 程序描述设置身份验证的目的在于维护系统的安全性。进入本系统,必须首先通过身份认证。(2) 功能功能是对
9、申请登录用户进行身份认证,通过才能进入系统。输入处理输出图3-10登录模块的功能流程图(3) 输入项表3-8登录输入项名称数据类型数据值范围输入方式用户名Varchar键盘输入职工号Varchar键盘输入密码Varchar键盘输入(4) 输出项输出为合法用户(5) 算法身份验证模块采用的算法是:当用户填写用户名和密码,程序根据登陆表的内容进 行比较。若存在并相同则进入系统,否则提示密码错误。(6) 逻辑流程图3-11登录模块流程图2. 工资核算模块(1) 程序描述将教职工的基本工资结合出勤情况和扣款清单进行净工资的结算。得出的结果是教 职工的净工资。输入处理输出图3-12工资核算功能流程图(2
10、)功能其功能在于将输入的基本工资、扣款结果和出勤结果按照一定的关系计算出每位教 职工应得的净工资。(3)输入项基本工资信息、扣款结果、出勤情况统计结果(4)输出项净工资(5)算法根据出勤情况计算出教职工的出勤奖励和克扣,并计算出其各项费用(房租费、水 电费、煤气费、个人所得税等)和教职工的基本工资进行求和运算得出的结果即为每位 教职工的净工资。(6)逻辑流程工资核算由财务处对统计来的信息进行计算得出净工资。3. 教职工查询模块(1)程序描述设置教职工查询模块的目的在于对教职工的信息(工资情况、出勤情况、扣款情况) 的查询。(2)功能其功能是让教职工对自己的工资情况进行查询,同时也包括对教职工的
11、出勤情况和 扣款情况进行查询。输入处理输出(3)输入项教职工的信息(4)输出项工资情况、扣款情况、出勤情况、基本信息(5)算法当教职工输入其登录信息后根据需要查询相关的信息,系统根据其要查询的信息对 数据库进行检索,输出其需要的信息到显示器上显示。(6)逻辑流程图3-14教职工查询流程图4. 系部考勤统计模块(1) 程序描述系部对所在系的教职工的考勤情况进行统计并登记入数据库。(2) 功能其功能是将教职工的月出勤情况统计入库以被财务处进行考勤核算工资。输入处理输出图3-15系部考勤统计模块的功能流程(3)输入项教职工的出勤情况(4)输出项考勤情况(5)算法当系部工作人员进入系统后选择考勤登记界
12、面,首先要选择所在系,然后进行输入。(6)逻辑流程图3-16系部考勤统计模块流程图第3章系统的实现高校工资管理系统前台开发语言是PowerBuilder 9.0,后台数据库采用的是微软的 Microsoft SQL Server 2000。系统的实现主要是对高校工资管理系统的各个模块的功能实现和整体功能协调,主 要是代码设计,在代码设计之后是对系统进行测试,主要测试其功能是否全面和代码编 写是否有误,系统的维护是在系统交付之后的工作,主要是用户在使用过程中遇到的错 误和想添加的一些功能。4.1系统的实现高校工资管理系统主要的开发语言是PowerBuilder的语言和Microsoft SQL
13、Server 数据库语言7, I。,15。对于主要的功能模块其实现如下:(1)登录模块登录模块的主要功能是对进入系统的用户进行身份验证,如果验证通过则进入系 统,失败则退出登录。string s1,s2,s3select name,id,password,flaginto :s1,:s2,:s3,:s4from g_loginwhere id=:sle_2.text and name =:sle_1.text;if sle_1.text = or sle_2.text = or sle_3.text = then messagebox(警告,信息不能为空!)elseif sqlca.sqlco
14、de = 0 thenif s1=sle_1.text and s2=sle_2.text and s3= sle_3.text then open(w_main)elsemessagebox(提示,编号或密码输入有误)end ifelseif sqlca.sqlcode=100 thenmessagebox(提示,编号或密码输入有误)elsemessagebox(提示,连接数据库失败)end if(2)系部出勤情况统计修改和保在这里主要是在数据窗口中操作,由数据窗口来实现数据的插入、删除、 存的。插入按钮的代码是:dw_1.insertrow(0)删除按钮的代码是:dw_1.deletero
15、w(0)保存按钮的代码是:if update(dw_1,true,false)=1 then保存修改成功,提交修改dw_1.resetupdate()messagebox(恭喜,保存成功!)commit;else保存修改失败,取消所作的修改rollback;弹出一个对话框警告messagebox(错误!,数据保存失败)end if(3)工资设定模块工资设定主要是对教职工的基本工资进行设定。图4-2工资设定测试界面-查找按钮:其主要的功能是让“确定”,“取消”,文本框可用。sle_1.enabled = truecb_8.enabled = truecb_9.enabled = true确定按钮
16、:dw_1.settransobject(sqlca)dw_1.retrieve(sle_1.text)首行按钮:int row_currentdw_1.ScrollToRow(1)指向第一条记录dw_1.SetFocus() if row_current=1 thenmessagebox(警告,已经是最前一条记录啦!)end if上一行按钮:integer row_currentrow_current=dw_1.ScrollPriorRow()前一记录dw_1.SetFocus()光标到数据窗口控件if row_current=1 thenmessagebox(警告,已经是最前一条记录啦!)
17、 end if下一行按钮:integer row_count,row_current row_count=dw_1.rowcount() row_current=dw_1.ScrollNextRow()下一记录dw_1.SetFocus()光标到数据窗口控件if row_count=row_current thenmessagebox(警告,已经是最后一条信息啦!)end if末行按钮:integer row_countrow_count=dw_1.rowcount() 得到最后一条行数dw_1.ScrollToRow(row_count) /跳到最后一行修改按钮:if update(dw_1
18、,true,false)=1 then保存修改成功,提交修改dw_1.resetupdate()messagebox(恭喜,保存成功!) commit;else保存修改失败,取消所作的修改rollback;弹出一个对话框警告messagebox(错误!,数据保存失败)end if(4)工资发放模块图4-3工资发放测试界面 检索按钮:dw_1.settransobject(sqlca)dw_1.retrieve(sle_1.text)cb_1.enabled = truecb_2.enabled = true查询是否发放按钮:select flaginto :flagfrom g_yinhang
19、fafang where id = :sle_1.text;if string(flag) =0 thenmessagebox(,未发放) elsemessagebox(,已发放) end if发放按钮:string id select flag into :flagfrom g_yinhangfafangwhere id = :sle_1.text;if string(flag)0 thenmessagebox(,已发放不能在操作)elseupdate g_yinhangfafang set flag = 1 where id = :sle_1.text;if sqlca.sqlcode =
20、 0 thenmessagebox(,发放成功!)elsemessagebox(,发放失败)end ifend if(5)工资核算模块图4-4工资核算测试界面 查询按钮:dw_1.settransobject(sqlca)dw_1.retrieve(sle_1.text)dw_2.settransobject(sqlca)dw_2.retrieve(sle_1.text)dw_3.settransobject(sqlca)dw_3.retrieve(sle_1.text)cb_2.enabled = truesle_2.text =计算总工资按钮:long jiben,kou,kaojiben
21、 = dw_1.getitemnumber(1,compute_1) kou=dw_2.getitemnumber(1,compute_1) kao = dw_3.getitemnumber(1,compute_1) sle_2.text=string(jiben - kou - kao) cb_2.enabled =false保存按钮:string id,gongziupdate g_yinhangfafang set gongzi = :sle_2.text where id = :sle_1.text; if sqlca.sqlcode = 0 thenmessagebox(提示,保存成
22、功!) elsemessagebox(提示,保存失败!) end if章总结参考文献I 王涛,耿国华,周明全.PowerBuilder环境下灵活的工资管理系统的实现J.计算机技术 与发展,2004,35(12):104-106刘艺,王春生.计算机英语M.北京:机械工业出版社,2004,08:125-1293 齐治昌,谭庆平,宁洪.软件工程M.北京:高等教育出版社,2004,04.4 许树云.基于网络的工资管理系统开发J.武汉理工大学学报,2004,28(6):97-985 沈永强,曹玉金.通用工资管理系统的设计与实现J.计算机工程与应用, 2002,72(13):217-2206 陈超泉,赵君
23、,陆娟娟,匡昭平.高校工资管理系统的设计与实现J.桂林工学院学报, 2002,14(4):52-557 李红发,傅蓉,杨毅等译.PowerBuilder高级客户/服务器开发M.北京:机械工业出版 社,2004,10.8 宋秀娟.计算机在工资管理中的应用J鸡西大学学报大学学报,2004,21(3) :25-329 吴烈,唐伟.考勤工资管理系统的设计与实现J.辽宁工程技术大学学报, 2006,97(81):285-28610 张长富,李匀.PowerBuilder 9.0开发人员指南皿.兵器工业出版社,北京希望电子出版 社,2004,9.II 金鉴禄,孟宪宝.人事管理系统的研究与实现J.长春工业大
24、学学报(自然科学版), 2003,8(2):25-27.12 姚洪勇.工资管理系统在单位中的应用J.辽宁大学学报(自然科学版), 2002,22(1):96-9713 萨师煊,王珊.数据库系统概论M.北京:高等教育出版社,2000,02.14 程燕.工资管理信息系统的开发J.上海电机学院学报,2003,11(4):37-4015 崔巍.PowerBuilder面向对象开发教程M.北京:高等教育出版社,2002,12.16 熊炜,王木森,罗丽佳.高校工资管理系统设计与实现J .贵州工业大学学报(自然科学 版),2004,16(2):58-5917Status of human resource management in public university libraries in Bangladesh . The International Information & Library Review, Volume 39, Issuer, March 2007, Page 52-61 M.Roknuzzaman.