员工工资管理系统

上传人:a**** 文档编号:156163338 上传时间:2022-09-26 格式:DOC 页数:44 大小:477.50KB
收藏 版权申诉 举报 下载
员工工资管理系统_第1页
第1页 / 共44页
员工工资管理系统_第2页
第2页 / 共44页
员工工资管理系统_第3页
第3页 / 共44页
资源描述:

《员工工资管理系统》由会员分享,可在线阅读,更多相关《员工工资管理系统(44页珍藏版)》请在装配图网上搜索。

1、员工工资管理系统摘要本系统以数据库管理系统为开发环境,采用小型数据库管理系统中优秀的软件“Visual C+ 6.0” 作为系统开发工具,主要解决员工工资的管理,包括对员工信息与员工工资详情的查询、添加、修改与删除等各种操作以及考勤的管理,本系统还实现了员工工资计算公式的修改等操作,程序设计合理、操作简单、运行可靠、保密性强。程序通过调试运行,初步实现了设计目标,并且经过适当完善后,将可以应用于企业解决实际问题,以提高企业工资核算效率。关键词:员工信息;工资管理;保密性;Visual C+1 可行性研究报告1.1 引言1.1.1 编写目的 工资管理是企业管理的重要组成部分,它与企业的人事管理、

2、财务管理有着密切的联系。对于劳资关系相对复杂的大中型企事业单位,手工进行工资的发放工作往往需要耗费大量的人力与时间。由于工资发放在时间和操作上存在着一定的重复性、规律性,这使得员工工资管理的计算机化成为可能。于是,设计一个适合的员工工资管理系统就显得很有必要和价值。由计算机来代替人工执行一系列诸如增加新职员工、删除旧员工、工资修改、查询、统计及打印等操作。这样就使办公人员可以轻松快捷地完成工资管理的任务。该系统正是在此基础上进一步实现企业员工工资管理的规范化和自动化。 项目背景项目名称:员工工资管理系统 项目的提出者:程丹;开发者:程丹; 实现软件的单位:华星科技;项目简介:本系统主要实现员工

3、工资和员工信息管理。 定义工资管理系统是为了提高企业的工资核算效率而设计的。实现了对员工信息以及员工工资的有效管理,可以实现对单位的工资支出项目进行详尽的统计分析,根据比较分析为企业领导提供职工收入的依据,单位领导做出决策判断,有目的的向一些关键岗位和对企业发展贡献大的岗位进行倾斜,调动职工的积极性,保持企业的良性发展。1.2 可行性研究的前提 要求 功能:对企业员工信息和员工工资进行有效的管理;性能:数据库的录入;职工信息查询;职工工资信息查询;员工考勤查询; 输出:员工信息;工资信息; 输入:员工号;密码; 安全保密:企业所有员工信息可供员工随时查阅;员工信息只能被系统管理员修改,删除。运

4、行环境:Windows2000/XP;数据库类型:Access 2003;机器配置:CPU:2800+以上,内存大于256M;完成期限:2008年9月。 目标 以最低的成本,在最短的期限内开发出具有管理员工信息和员工工资功能的工资信息系统。(包括:人力与设备费用的节省;处理速度的提高;人员工作效率的提高) 条件、假定和限制* 建议该系统运行的最短寿命为10年;* 进行该系统方案选择比较的期限为2个月;* 建议该系统软件投入使用的最迟时间为2008年10月;* 开发该软件系统的经费来源为自己出资;*该系统要受资金、寿命、社会等系列因素的制约和限制。 决定可行性的因素主要因素有经济条件、技术条件、

5、团队合作精神等。 所建议的系统 1.3.1 系统说明 该系统着眼于员工工资业务的实际,对发放工资业务进行了细致的分析、研究,认真分析其业务流程,采用灵活方便的计算处理方式,改变手工操作的繁杂、低效、不宜操作、灵活性差的特点,提高其工作效率和效益。实现员工工资管理业务的制度化、现代化的管理。工资管理系统是为了能够迅速、准确地反映出用户需要的各种信息,及时方便的进行各种检索,从而为决策者做出准确的判断提供强有力的支持。计算机的使用使得企业管理变得更加合理,更加规范,更加科学。 .1 具体要求* 系统数据初始化;* 员工基本信息数据的查询、添加、修改、删除;* 企业工资的基本设定;* 企业工资参数的

6、设定与管理;* 员工考勤的管理;* 员工个人工资表的查询;* 员工工资的浏览、修改、添加、删除;* 系统的维护包括用户的操作权限、密码修改。.2 系统限制员工信息只能被管理员修改,添加,删除;.3 系统实现方法和创新发展特点系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于技术维护人员进行补充、维护。 系统改进之处员工工资管理系统规模较小,但是功能齐全,具有相当的管理功能,员工信息不能被随意改动。 系统的影响该系统提供了提示窗口,使用户能够按照提示语句完成各项操作。系统具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。 系统的运行过程系统使用期半年,在

7、开始必须对初始数据进行录入,包括所有的员工基本状况,基本工资的设定,工资参数的设定,工资信息等。在半年的使用期通过检验后,将要优化该系统的性能,把一些发挥不良的组件重新开发,或者加入合适的补丁文件,系统稳定后的主要工作是加强该系统安全性。 1.4 社会因素方面的可行性法律方面的可行性遵守中华人民共和国的一切法律法规。 使用方面的可行性从用户单位企业的管理和工作制度等方面来看,是完全能够使用该软件系统。本系统直观、方便,非计算机专业的人员也可以熟练地进行操作。1.5 可行性研究结论鉴于以上分析可知,该工资管理信息系统开发项目有巨大的经济效益。从而使我们深信该系统开发出来之后将获得巨大的成功。综上

8、所述,该项目在技术、经济和社会效益上是完全可行的。2 软件需求说明书 编写目的此需求说明书对员工工资管理系统软件做了全面细致的用户需求分析,明确所要开发的软件应具有的功能、性能与界面,使系统分析人员及软件开发人员能清楚地了解用户的需求,并在此基础上进一步提出概要设计说明书和完成后续设计与开发工作。本说明书的预期读者为客户、业务或需求分析人员、测试人员、用户文档编写者、项目管理人员。 背景项目名称:员工工资管理系统;项目的提出者:程丹;开发者:程丹; 实现软件的单位:华星科技;项目简介:本系统主要实现员工工资和员工信息管理。定义无。2.2 任务概述 目标使用户和项目人员明确系统的功能、应用范围。

9、用户的特点员工工资管理系统面向企业,属于企业信息管理的一部分。操作本软件的工作人员只需基本的计算机知识,而系统的维护人员需要具备VC+和数据库的相关专业知识。假定和约束本程序在开发的过程中,分为技术实现与软件工程两大部分,两部分都有侧重点,若技术支持出现故障或疑难问题无法解决、程序开发出现偏差,会延误工程进度,影响工程的按期完工。若软件工程陈述出现问题,部分描述含混不清,则会影响系统的完整性与可继承性。在管理方面,如管理者没有预见性,对出向的问题无法采用可行的解决手段,都会影响开发模块之间的互动,从而影响工程的顺利开展,导致工程无法按期完工。 需求规定 对功能的规定工资管理系统共分为5个模块:

10、(1)员工信息模块。该模块包含的数据库项有员工号、员工姓名、员工所在的部门、员工基本工资、公司福利、公司奖金、各种罚款、额外工资与合计得到的员工实得总工资;(2)系统管理模块。该模块包含用户登陆,密码修改,系统退出; (3)工资设定模块。该模块实现计算工资的功能;(4)工资参数模块。该模块包含的数据库项有出勤、出差,加班、迟到、请假、旷工等的参数设定;(5)考勤管理模块。该模块包括员工号、员工姓名、部门、员工的出勤、出差,加班、迟到、请假、旷工。 对性能的规定.1 精度工资单位为元,精度为0.0元。.2 时间特性要求响应时间:对远程查询响应的平均时间是1秒,最长是3秒;吞吐量:每秒处理的事务数

11、达到2000条。.3 灵活性系统具有一定的可扩展性,适应工资信息变化,允许管理员随时对其进行更新和维护。 输人输出要求系统中员工号是一个自定义的字符串,采用数字实现。工资是浮点型数据,精度为0.0。 数据管理能力要求数据存储量较大,需要较大的存储空间。2.4 运行环境规定 设备本系统所使用的平台是Windows XP Professional;Microsoft Visual C+ ;Access的版本是2003。 接口(1)用户界面。本系统的用户界面为应用程序界面;(2)软件接口。访问的数据库是Access。3 概要设计说明书3.1引言3 编写目的员工工资管理信息化程度的不断提高,企业对于各

12、种业务提出了新的要求,为了满足企业的发展需求,更好的为企业提供服务,现结合原有各版本的员工工资管理系统的优点和特点,开发一套采用优越的员工工资管理系统。本系统从底层予以优化,使整个系统的运行速度得到较大提高,通过重新优化数据库内部结构,使系统的可扩充性得到极大提高。3 背景项目名称:员工工资管理系统;项目的提出者:程丹;开发者:程丹; 实现软件的单位:华星科技;项目简介:本系统主要实现员工工资和员工信息管理。 定义* Access 2003:数据库管理软件;* DBMS:数据库管理系统;* Windows 2000/2003/XP:运行环境;* VC+ :集成开发环境;模块的独立性:是指软件系

13、统中每个模块只涉及软件要求的具体的子功能,而和软件系统中其他的模块的接口是简单的。 总体设计概念结构总体设计员工信息部门员工号姓名性别住址生日 职务图3.1员工信息实体E-R图员工工资部门员工号姓名基本工资总工资罚款奖金额外工资 图3.2 员工工资实体E-R图员工考勤部门员工号姓名迟到加班出差出勤旷工统计时间请假员工信息对应员工工资对应员工考勤公司福利公司奖金 图3.4 实体之间关系图3.2.2系统结构流程设计 图 系统的流程图3.3 系统数据结构设计逻辑结构设计给出本系统内所使用的每个数据结构的名称、标识符以及它们之中每个数据项、记录、文卷和系的标识、定义、长度及它们之间的层次的或表格的相互

14、关系。3.4 物理结构设计要点表3-1 员工工资及考勤表列名数据类型可否为空员工号(主键)文本型(10)不能为空姓名文本型(50)可为空部门文本型(50)可为空基本工资单精度型可为空奖金单精度型可为空额外工资单精度型可为空罚款单精度型可为空福利单精度型可为空总工资单精度型可为空加班单精度型可为空出差单精度型可为空请假单精度型可为空迟到单精度型可为空旷工单精度型可为空出勤单精度型可为空统计时间日期型可为空备注文本型(50)可为空表3-2 员工信息表列名数据类型可否为空员工号(主键)文本型(10)不能为空姓名文本型(50)可为空部门文本型(50)不能为空性别文本型(50)可为空职务文本型(50)可

15、为空 文本型(50)可为空住址文本型(50)可为空生日日期型可为空表3-3 系统用户管理表列名数据类型可否为空用户名文本型(20)不能为空密码文本型(10)不能为空 出错处理设计3.6.1出错信息给出出错信息表:表3-4 出错信息表差错编号 出错时间 故障名称 系统反映 差错描述补救措施3.6.2 补救措施* 周期性地把磁盘信息记录到磁带上,当原始数据丢失后启用此副本。* 使用手工操作和数据的人工记录作为降效技术。* 使用回滚技术使软件从故障点开始继续工作。3.6.3 系统维护设计对数据库进行如下维护计划:全备份每3 个月进行一次;差分备份每个月进行一次;增量备份每天进行一次。4 详细设计4.

16、1 引言 编写目的对在概要设计中定义的各个模块给出它们的内部过程描述,从而在编码阶段,可以把这些描述直接翻译成程序语言。具体地描述该系统,用某一种结构图来实现其算法。4.2 读者对象软件需求分析人员、设计人员、软件测试人员及用户,其中用户包括:工资管理员和员工。4.3 项目概述项目名称:员工工资管理系统;用户单位:华星科技;项目功能:软件项目的大致功能和性能要求(见需求规格说明书功能需求描述一节)。设计一个算法实现对所有职工的工资进行计算和管理,要求方便操作的系统。4.2主界面的设计说明4.2.1 模块描述用户登陆系统后,启动该模块。4.2.2 功能该模块提供员工工资与员工信息界面的切换。 变

17、量表表4-1 主界面Tab控件变量表控件ID号变量类别变量类型变量名IDD_TABControlCTabCtrlm_TabIDC_STATIC_DLG,ValueCStringm_Static4.3员工信息模块设计说明4.3.1 模块描述该模块包含的数据库项有员工号、员工姓名、员工所在的部门、员工基本工资、公司福利、公司奖金、各种罚款、额外工资与合计得到的员工实得总工资。4.3.2 功能该模块提供显示、查询、修改、删除、添加员工信息等功能。4.3.3 变量表表4-2 员工信息界面控件变量表控件ID号变量类别变量类型变量名IDC_IDValueCStringm_strIDIDC_NAMEValu

18、eCStringm_strNameIDC_COMBO_SEXControlCComboBoxm_SexIDC_COMBO_DEPARTMENTControlCComboBoxM_DepartmentIDC_JOBValueCStringm_strJobIDC_DATETIMEPICKERValueCTimem_BirthdayIDC_TELValueCStringm_strTelIDC_ADDRESSValueCStringm_strAddressIDC_LIST1ControlCListCtrlm_List4.3.5 算法在员工信息界面中的输入员工号,点击查询,可显示该员工的信息。点击修改,

19、修改该员工信息。点击删除或添加按钮,输入要删除或添加的员工号,凭密码删除或添加员工信息。点击显示员工信息可显示所有员工信息。.6 流程逻辑(1)管理员输入员工号,点击查询按钮,显示该员工信息;(2)若点击修改,修改该员工信息;(3)若点击删除,弹出对话框提示输入要删除的员工号,密码确认;(4)若点击添加,弹出对话框提示输入要添加的员工信息,密码确认;(5)若点击显示员工信息,显示所有员工信息。4.4员工工资模块设计说明4.4.1 模块描述该模块包含员工号、员工姓名、员工所在的部门、员工基本工资、公司福利、公司奖金、各种罚款、额外工资与合计得到的员工实得总工资。4.4.2 功能该模块实现了员工工

20、资快速查询、修改,员工工资信息的删除、添加。4.4.3 变量表表4-3 员工信息界面控件变量表控件ID号变量类别变量类型变量名IDC_QUERYValueCStringm_strQueryIDC_BUTTON_QUERYControlCBottonm_QueryIDC_BUTTON_EDITControlCBottonm_EditIDC_BUTTON_DETELControlCBottonm_DetelIDC_BUTTON_ADDControlCBottonm_AddIDC_BUTTON_COMPUTATIONControlCBottonm_ComputationIDC_BUTTON_SALA

21、RYSHOWControlCBottonm_SalaryIDC_BUTTON_CHECKSHOWControlCBottonm_CheckIDC_LIST2ControlCListCtrlm_List2IDC_LIST3ControlCListCtrlm_List34.4.4 算法输入要操作的员工号,可对其进行快速查询,修改操作。点击删除或添加可删除或添加员工工资信息。点击工资计算公式按钮进入工资计算公式界面,点参数修改可对各项参数进行设定。4.4.5 流程逻辑(1) 管理员输入要操作的员工号,点击快速查询按钮,可显示该员工工资信息;(2)若点击修改,对员工工资信息进行修改;(3)若点击删除,

22、弹出对话框提示输入要删除的员工号;(4)若点击添加,弹出对话框提示输入要添加的员工工资信息;(5)若点击工资计算公式,弹出工资计算公式界面,可对参数进行修改;(6)点击工资表显示,显示所有员工工资信息;(7)点击考勤表显示,显示所有员工考勤情况。4.5 系统用户管理模块设计说明4.5.1 模块描述该模块实现用户登陆及身份验证的功能。4.5.2 变量表表4-4 修改密码对话框空间对变量表控件ID号变量类别变量类型变量名IDC_NAMEValueCStringm_NameIDC_OLDPWDValueCStringm_OldPwdIDC_NEWPWD1ValueCStringm_NewPwd1ID

23、C_NEWPWD2ValueCStringm_NewPwd24.5.3 算法在登陆界面中输入要登陆的用户名及密码,如果用户名或密码为空,弹出对话框提示用户输入用户名和密码。如果用户名与密码不符,弹出对话框提示用户名和密码有错。4.5.4 流程逻辑(1)管理员只输入用户名或密码,点击登陆,弹出对话框提示输入用户名和密码;(2)管理员输入的用户名或密码不正确,点击登陆,弹出对话框提示用户名和密码有错;(3)管理员输入正确的用户名及密码,若点击登陆,进入工资管理系统操作界面;若点击退出,退出系统登陆界面。5 测试5.1 引言 编写目的本测试计划旨在为整个系统的测试提供理论依据,定量测试的方法和度量测

24、试过程中的各项指标,并规范测试用例,促使该系统软件能最终达到预期的需求。 测试计划执行情况测试项目:员工工资管理系统;测试机构:华星科技;测试人员:程丹。5.2 测试结果(1)身份验证对话框:运行系统弹出此界面。图5.1身份验证对话框(2)员工工资界面:在登陆对话框中输入用户名及密码并验证通过后,进入此界面。图5.2 员工工资界面(3)员工工资快速查询对话框:当管理员输入要查询的员工号,点击快速查询按钮,弹出此对话框。图5.3借书处理对话框(4)员工工资修改对话框:当管理员输入要操作的员工号,点击修改按钮,弹出此对话框。修改后员工工资信息,输入密码确认,保存修改。图5.4 员工工资修改对话(5

25、)删除员工工资对话框:当管理员点击删除按钮时,弹出此对话框,输入要删除的员工号,密码确认后,该记录从员工工资数据库中删除。图5.5员工工资删除对话框(6)添加员工工资对话框:当管理员点击添加按钮时,弹出此对话框。输入员工工资信息,点击确定,该记录被添加到员工工资数据库中。图5.6 添加员工工资对话框(7)员工信息界面:当管理员点击主界面上的员工信息时,显示此界面 。图5.7 员工信息界面(8)删除员工信息对话框:当管理员点击删除按钮时,弹出此对话框。管理员输入要删除的员工号,密码确认,点击确定,即可将该记录从员工信息数据库中删除。图5.8 删除员工信息对话框(9)添加员工信息对话框:当管理员点

26、击添加按钮时,弹出此对话框。管理员输入要添加的员工信息,点击确定,即可将该记录添加到员工信息数据库中。图5.9 添加员工信息对话框结束语本篇论文主要阐述了一个员工工资管理系统的实现和开发过程,从需求的提出到分析、,析1 dderCost 概要设计、系统详细设计到测试。虽然由于时间不足和篇幅的限制不能对整个系统作一个完整论述,但是基本能对本次开发活动的核心技术和设计思想有较完整的描述。在实现和开发的过程中,应用了Visual C+和ACCESS数据库编程,对系统的分析和制作有了较深刻认识和理解。这个系统的实现,给了我们一次绝好的机会,去了解软件工程的思想,用软件工程的一套方法去编制系统,一改我们

27、对管理信息系统的认识和看法,明白了软件工程书上说的东西,不是枯燥无味的,而是前辈总结出来的精华所在。在以后的开发过程中,要注重这种思想,真正将这门课程学通了。在这次软件工程课程设计中,曾遇到过不少问题,在此,我衷心感谢给予过我帮助的同学和指导老师。参考文献 M.北京:清华大学出版社,2007:2 D.Esposito,施平安译高级编程M.北京:清华大学出版社,2006:3 王立福,麻志毅.软件工程(第二版)M. 北京: 北京大学出版社,2001:4 赵辉,叶子青.Visual C+系统开发实例精粹.北京:人民邮电出版社M, 2005:附录源代码清单:/ 程序名称:CSalarlyDlg.cpp

28、 / 程序功能:主界面Tab控件的实现。/ 程序 程丹/ 最后修改日期:2008-9-20BOOL CSalarlyDlg:OnInitDialog()CDialog:OnInitDialog();m_Tab.InsertItem(1,员工信息,0); m_Tab.InsertItem(0,员工工资,1);m_Tab.SetCurSel(0);m_pSalaryDlg = new CSalaryDlg;m_pSalaryDlg-Create(IDD_SALARY,GetDlgItem(IDC_STATIC_DLG);m_pEmployDlg = new CEmployDlg;m_pEmploy

29、Dlg-Create(IDD_EMPLOY,GetDlgItem(IDC_STATIC_DLG);DoTab(0);return TRUE; / return TRUE unless you set the focus to a controlvoid CSalarlyDlg:SetDlgState(CWnd *pWnd, bool bShow) /用来显示或隐藏指定的对话框pWnd-EnableWindow(bShow);if(bShow)pWnd-ShowWindow(SW_SHOW);pWnd-CenterWindow(); /显示居中elsepWnd-ShowWindow(SW_HID

30、E);void CSalarlyDlg:DoTab(int nSel) /切换对话框的显示if(nSel1)nSel=1; /确定nSel值不能超过的范围if(nSel=0)DoTab(nSelect);*pResult = 0;/ 程序名称:CEmployDlg.cpp / 程序功能:员工信息的查询、添加、修改、删除与显示等。/ 程序 程丹/ 最后修改日期:2008-9-20BOOL CEmployDlg:OnInitDialog() /初始化List控件CDialog:OnInitDialog();m_List1.SetExtendedStyle(LVS_EX_FULLROWSELECT|

31、LVS_EX_GRIDLINES); /设置List网格m_List1.InsertColumn(0,_T(员工号),LVCFMT_IMAGE|LVCFMT_LEFT);m_List1.InsertColumn(1,_T(姓名);m_List1.InsertColumn(2,_T(部门);m_List1.InsertColumn(3,_T(性别);m_List1.InsertColumn(4,_T(职务);m_List1.InsertColumn(5,_T( );m_List1.InsertColumn(6,_T(生日);m_List1.InsertColumn(7,_T(住址);int j;

32、 for(j=0; j =7; j+)m_List1.SetColumnWidth(j, 80); m_List1.SetColumnWidth(2, 50);return TRUE; void CEmployDlg:OnButtonShow() m_List1.DeleteAllItems(); /清除LIST控件的当前显示int i=0; CEmploySet m_Set;m_Set.Open(); /打开记录集 m_Set.MoveFirst(); /移到数据表中的第一条记录do /把数据表中的内容显示到LIST控件中CString s;m_List1.InsertItem(i,m_Se

33、t.m_ID,0);m_List1.SetItemText(i,1,m_Set.m_name); m_List1.SetItemText(i,2,m_Set.m_department); m_List1.SetItemText(i,3,m_Set.m_sex); m_List1.SetItemText(i,4,m_Set.m_job);m_List1.SetItemText(i,5,m_Set.m_tel);m_List1.SetItemText(i,6,m_Set.m_birthday.Format(%Y-%#m-%#d); m_List1.SetItemText(i,7,m_Set.m_a

34、ddress); i+; m_Set.MoveNext(); while(!m_Set.IsEOF();m_Set.Close();void CEmployDlg:OnButtonQuery() /员工信息的查询功能CEmploySet cSet;UpdateData(); /更新数据CString str;m_strQuery.TrimLeft (); /从给定的查询编号中删除首部的空格及控制字符if(m_strQuery.IsEmpty () /查询的编辑控为空时MessageBox(要查询的员工号不能为空!); /弹出系统消息对话框return;str=m_strQuery;r.Form

35、at(ID=%s,str); /指定查询条件cSet.Open();if(!cSet.IsEOF() /如果打开记录集有记录m_strDepartment=cSet.m_department; /使数据表中的数据和对话框中的要求一一对应m_strName=cSet.m_name;m_strSex=cSet.m_sex;m_strTel=cSet.m_tel;m_strAddress=cSet.m_address;m_Birthday=cSet.m_birthday;m_strJob=cSet.m_job;m_strID=cSet.m_ID;UpdateData(FALSE); /自动更新表单中

36、控件显示的内容elseMessageBox(查询的员工记录不存在!); /否则弹出系统消息对话框if(cSet.IsOpen()cSet.Close(); /如果记录集打开则关闭void CEmployDlg:OnButtonAdd() CEmployOdlg dlg;CEmploySet pSet;if(dlg.DoModal()=IDOK) /单击确定,弹出添加员工信息的对话框pSet.Open(); /打开记录集pSet.AddNew(); /添加新记录/使对话框中的信息和数据表中的一一对应,添加都数据表中pSet.m_department =dlg.m_strDepartment; p

37、Set.m_ID =dlg.m_strID;pSet.m_name =dlg.m_strName;pSet.m_sex =dlg.m_strSex;pSet.m_job =dlg.m_strJob;pSet.m_birthday =dlg.m_Birthday;pSet.m_tel =dlg.m_strTel;pSet.m_address =dlg.m_strAddress;pSet.Update(); /数据表的更新MessageBox(添加成功!); /弹出系统消息对话框pSet.Requery(); /更新数据库中的数据void CEmployDlg:OnButtonEdit() /员工

38、信息的修改功能CEmploySet pSet;UpdateData(); /读取控件中的数据CString str;m_strQuery.TrimLeft (); /从给定的查询结果中删除首部的空格及控制字符if(m_strQuery.IsEmpty () /判断查询的员工号的结果是否为空MessageBox(要修改的员工号不能为空!);return;str=m_strQuery;pSet.m_strFilter.Format(ID=%s,m_strID); /格式化pSet.Open(); /打开数据表pSet.Edit(); /编辑数据表中的内容/使数据表中内容和对话框中的内容一一对应pS

39、et.m_department=m_strDepartment;pSet.m_ID= m_strID;pSet.m_name=m_strName;pSet.m_sex= m_strSex;pSet.m_job=m_strJob;pSet.m_birthday= m_Birthday;pSet.m_tel= m_strTel;pSet.m_address= m_strAddress;pSet.Update();UpdateData(FALSE); /把数据表中的内容显示到控件中MessageBox(修改成功);pSet.Requery(); /数据表更新pSet.Close(); /关闭数据表i

40、f(pSet.IsOpen()pSet.Close(); /关闭数据表void CEmployDlg:OnButtonDelet() /员工信息的删除功能,跳转到删除对话框CDelectEmployDlg dlg;dlg.DoModal();/ 程序名称:CSalaryDlg.cpp / 程序功能:工资与考勤的查询、添加、修改、删除与工资、考勤的显示等。/ 程序 程丹/ 最后修改日期:2008-9-20void CSalaryDlg:OnButtonSalaryshow() m_List2.DeleteAllItems(); /清除LIST控件的当前显示int i=0; CSalarySet

41、m_Set;m_Set.Open(); m_Set.MoveFirst(); /移到数据表中的第一条记录do /把数据表中的内容显示到LIST控件中CString s; m_List2.InsertItem(i,m_Set.m_ID,0);m_List2.SetItemText(i,1,m_Set.m_department); m_List2.SetItemText(i,2,m_Set.m_name);s.Format(%.1f,m_Set.m_basic); m_List2.SetItemText(i,3,s);s.Format(%.1f,m_Set.m_bonus); m_List2.Se

42、tItemText(i,4,s);s.Format(%.1f,m_Set.m_add);m_List2.SetItemText(i,5,s);s.Format(%.1f,m_Set.m_welfare); m_List2.SetItemText(i,6,s);s.Format(%.1f,m_Set.m_fine); m_List2.SetItemText(i,7,s);s.Format(%.1f,m_Set.m_salary); m_List2.SetItemText(i,8,s);m_List2.SetItemText(i,9,m_Set.m_date.Format(%Y-%#m-%#d);

43、m_List2.SetItemText(i,10,m_Set.m_remark);i+; m_Set.MoveNext(); while(!m_Set.IsEOF();m_Set.Close();void CSalaryDlg:OnButtonQuery() /员工工资及员工考勤的查询功能 CSalarySet cSet; UpdateData(); /更新数据库m_strQuery.TrimLeft (); /从给定的查询号中删除首部的空格及控制字符if(m_strQuery.IsEmpty () /查询的编辑控为空时MessageBox(要查询的员工号不能为空!);return;.Form

44、at(ID=%s,m_strQuery); /判断查询的员工号是否在数据表中有一致的cSet.Open();if(!cSet.IsEOF() /如果打开记录集有记录CSalaryODlg dlg;/使对话框中的数据和数据表中的要求一一对应dlg.m_strDepartment=cSet.m_department; dlg.m_Basic=cSet.m_basic;dlg.m_Bonus=cSet.m_bonus;dlg.m_Welfare=cSet.m_welfare;dlg.m_Fine=cSet.m_fine;dlg.m_strName=cSet.m_name;dlg.m_Total=cS

45、et.m_salary;dlg.m_Add=cSet.m_add;dlg.m_strID=cSet.m_ID;dlg.m_Date=cSet.m_date; /统计时间的匹配 /考勤的匹配dlg.m_strRemark=cSet.m_remark;dlg.m_Worktime=cSet.m_worktime;dlg.m_Overtime=cSet.m_overtime;dlg.m_Business=cSet.m_business;dlg.m_Late=cSet.m_late;dlg.m_Leave=cSet.m_leave;dlg.m_Absent=cSet.m_absent;dlg.DoMo

46、dal(); /显示对话框UpdateData(FALSE); /数据表中的内容显示到控件中elseMessageBox(查询的员工记录不存在);if(cSet.IsOpen()cSet.Close();void CSalaryDlg:OnButtonAdd() /员工工资及员工考勤的添加功能CSalaryODlg dlg;CSalarySet pSet;CComputationSet cSet;cSet.Open();if(dlg.DoModal()=IDOK) /单击确定,弹出添加对话框pSet.Open();pSet.AddNew();pSet.m_bonus =dlg.m_Bonus;

47、pSet.m_worktime =dlg.m_Worktime;pSet.m_overtime =dlg.m_Overtime;pSet.m_business =dlg.m_Business;pSet.m_late =dlg.m_Late;pSet.m_leave =dlg.m_Leave;pSet.m_absent =dlg.m_Absent;pSet.m_welfare =dlg.m_Welfare;pSet.m_remark =dlg.m_strRemark;pSet.m_date =dlg.m_Date;pSet.m_ID =dlg.m_strID;pSet.m_department

48、=dlg.m_strDepartment;pSet.m_name =dlg.m_strName; /计算额外工资pSet.m_add=cSet.m_business*pSet.m_business+cSet.m_overtime*pSet.m_overtime;pSet.m_basic=cSet.m_worktime*pSet.m_worktime; /计算基本工资/计算罚款 pSet.m_fine=cSet.m_absent*pSet.m_absent+cSet.m_late*pSet.m_late+cSet.m_leave*pSet.m_leave;pSet.m_salary=pSet.m

49、_bonus+pSet.m_basic+pSet.m_add+pSet.m_welfare-pSet.m_fine; /计算总工资if(pSet.m_salary0) pSet.m_salary=0; / 保证实发金额不小于0pSet.Update();pSet.Requery(); /更新数据库中的数据MessageBox(添加成功);if(cSet.IsOpen()cSet.Close();void CSalaryDlg:OnButtonDetel() /员工工资的删除功能,跳转到删除对话框CDelectDlg dlg; /定义对话框类对象dlg.DoModal(); /显示对话框void

50、 CSalaryDlg:OnButtonComputation() CComputation dlg;dlg.DoModal(); /工资计算公式对话框void CSalaryDlg:OnButtonEdit() /修改先查询要修改的员工号的工资详情CSalarySet cSet; UpdateData(); m_strQuery.TrimLeft (); if(m_strQuery.IsEmpty ()MessageBox(要修改的员工号不能为空!);return;cSet.m_strFilter.Format(ID=%s,m_strQuery); cSet.Open();if(!cSet.

51、IsEOF()CSalaryEditDlg dlg;dlg.m_strDepartment=cSet.m_department;dlg.m_Basic=cSet.m_basic;dlg.m_Bonus=cSet.m_bonus;dlg.m_Welfare=cSet.m_welfare;dlg.m_Fine=cSet.m_fine;dlg.m_strName=cSet.m_name;dlg.m_Total=cSet.m_salary;dlg.m_Add=cSet.m_add;dlg.m_strID=cSet.m_ID;dlg.m_Date=cSet.m_date;dlg.m_strRemark=

52、cSet.m_remark;dlg.m_Worktime=cSet.m_worktime;dlg.m_Overtime=cSet.m_overtime;dlg.m_Business=cSet.m_business;dlg.m_Late=cSet.m_late;dlg.m_Leave=cSet.m_leave;dlg.m_Absent=cSet.m_absent;dlg.DoModal();UpdateData(FALSE);else MessageBox(修改的员工记录不存在); if(cSet.IsOpen()cSet.Close();/ 程序名称:CComputation.cpp / 程序

53、功能:工资计算公式的修改。/ 程序 程丹/ 最后修改日期:2008-9-20BOOL CComputation:OnInitDialog() CDialog:OnInitDialog();OnBtnReset(); / 调用“恢复缺省设置”按钮处理函数 return TRUE; / return TRUE unless you set the focus to a controlvoid CComputation:OnBtnReset() CString strFileName=.computation.ini; / INI文件名/ 读取INI文件m_Overtime1=GetPrivateProfileInt(Computation,OverTime,150, strFileName);m_Workti

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!