Delphi7.0员工工资管理系统开发文档

合集下载

职工工资管理系统

职工工资管理系统

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊目录一设计目的 (1)二功能介绍 (1)三程序流程 (1)四设计步骤 (2)1 任务解析 (2)2 功能实现 (3)3 系统测试 (3)五设计总结 (30)参考文献 (30)┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊一设计目的通过Java程序设计的学习,使学生对软件编程能力有一定的提高。

Java学习是锻炼学生在进一步掌握模块化、结构化程序设计的方法的同时,培养学生运用已学知识分析问题、解决问题及编写实用程序的能力,从而巩固和加深对java编程的基础理论知识的理解,培养学生综合运用所学理论解决实际问题的能力,使学生成为具有扎实的计算机理论基础和较强动手能力的综合型、应用型人才。

为专业课的深入学习和毕业设计打基础。

二功能介绍能够对职工工资进行管理。

(1)具有新用户注册功能。

(2)具有注册用户登录功能。

(3)具有职工工资的录入功能,要求只录入工资各项,自动计算每个职工工资总额。

(4)具有数据查询功能,可以实现查询全部信息和按条件执行查询。

(5)具有按条件删除数据功能。

三程序流程┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊登录工资管理系统登陆权限对与否管理员编辑界面员工查询界面Y N增添删除修改员工信息基本工资员工信息基本工资员工信息基本工资员工信息基本工资查询退出子系统四设计步骤1.任务解析该职工工资管理系统的总体功能可以从两个方面来分析,一是查找功能,二是编辑功能----包括修改,删除,和添加,员工和管理员都可以通过在进入工资管理子系统后,对员工的基本,和基本工资信息进行查询,管理员通过管理权┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊限登录后,可根据改变员工信息,对基本工资表,工资表进行修改,添加和删除操作。

2.代码设计(如:职工证号和部门代号等)每一个代码都只代表唯一的实体或属性,代码必须简单明了,但必须有利于对数据进行统计、汇总、分析等操作。

工资管理论文( Delphi在工资管理系统中的应用)概要

工资管理论文( Delphi在工资管理系统中的应用)概要

XXXXXXXXXXX 学院毕业论文Delphi在工资管理系统中的应用学生姓名 XXXXXXXXXXXXXXXXX 指导教师 XXXXXXXXXXXXXXXXX 专业 XXXXXXXXXXXXXXXXX 年级 XXXXXXXXXXXXXXXXX 完成日期摘要数据库支持是 delphi 编程环境中的关键部分, delphi6.0继续在这一方面发挥了强大的优势。

本文是用 delphi6.0所编成的工资管理系统, 主要介绍了本课题的开发背景, 所要完成的功能和开发的过程。

重点的说明了系统设计的重点、设计思想、难点技术和解决方案。

关键字 : 数据库 delphi6.0 工资管理系统AbstractData base is a key part to Delphi, Delphi 6.0 continue to develop the powerful superiority in this aspect.This thesis introduce the Wages of Management System , it usage Delphi 6.0 development tool,tell us the development background of the topic,the function and the developing procedure of the system.It explain to the emphasis , the idea , the difficult technique and the settling plan of the system.Key word :Data base delphi6.0 the Wages of Management System目录第 1章开发工资管理系统的问题… … … … … … … … … … … … … … … 4 1.1技术背景和需求分析………………………………………………… ……… 4 1.2本系统的目的和意义………………………………………………………… 4 第 2章工资管理系统的分析与设计… … … … … … … … … … … … … … 5 2. 1系统的分析与概要设计… … … … … … … … … … … … … … … … … … 5 2.2 连接数据库方面的问题…………………………………………………… 5 第 3章系统各模块详细设计及代码实现… … … … … … … … … … 9 3.1 模块的开发环境的简介_Delphi …………………………………………… 9 3.2系统各模块的详细设计和代码实现.......................................... 13 毕业设计小结... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 25 参考文献......................................................... (26)第一章开发工资管理系统的问题1.1技术背景和需求分析随着计算机技术的飞速发展, 计算机在企业管理中应用的普及, 利用计算机实现工资的数据库管理势在必行。

职工工资管理系统

职工工资管理系统

一课题主要功能该程序是一个实现对职工工资管理的系统。

包括计算,显示,添加,删除,修改,排序,查找,统计及退出等功能。

输入职工的工号、姓名,基本工资,奖金及扣款对其进行存储,在存储后可以对职工的应发工资,税款,实发工资按工号和姓名进行查寻。

该系统具有存贮职工数据,按工号、姓名查询,列出职工各项数据和统计功能。

系统输入数据后,将在当前目录中建立一个名为zzgzk.dat文件,用于保存输入的数据。

二.设计概要主函数主要由一个switch()开关语句构成,开关语句在一个无限循环体里,开关语句里的开关是调用主菜单显示函数的返回值。

除最后一个语句是强制结束整个程序的语句外,其它case都是调用相应的函数,完成相应的功能。

各调用情况如下: case1:调用计算函数 case 2:调用显示函数、case 3:调用追加函数、case 4:调用修改函数、case 5:调用删除函数、 case 6:调用查询函数、 case 7:调用排序函数、case 8:调用退出函数。

主函数将保证每调用完一个函数之后又调用显示函数,然后按任意键又重新回到主菜单,以便用户进行下一次的操作。

运行主函数选择菜单框图:系统主要由计算模块,显示模块、追加模块、修改模块、删除模块、查询模块、排序模块七大模块组成。

下面将介绍每个模块的功能及与他们之间的关系.模块图如下:三.各模块功能详细设计分析<1> 工资计算模块:Void Caculate( )这个模块的主要功能是计算每个职工的应发工资,税款,实发工资。

在主菜单中选择“1”就可以调用这个函数。

函数是通过for循环来重复计算每个人的应发工资,税款,实发工资。

<2>职工工资显示模块:Void Disp( )这个模块的主要功能是用来显示所有职工各项工资的金额。

在主菜单中选择“2”就可以进入这个模块界面。

这个功能的实现是用了一个for循环来完成的。

通过这个循环printf()函数依次输出每一个人的工号,姓名,基本工资,奖金,扣款,应发工资,实发工资,最后在界面上显示所有职工的信息。

职工工资管理系统设计带源码

职工工资管理系统设计带源码

课程设计报告课程名称:职工工资管理系统课程设计设计题目:带头结点单循环链表(职工工资管理系统)系别:计算机系专业:信息管理组别:学生姓名:学号:起止日期:09年11月7 日~ 09年 12月20日指导教师:目录第一章需求分析1.1 课程设计题目1.2 课程设计任务及要求1.3 课程设计思想1.4 软硬件运行环境及开发工具第二章概要设计2。

1 设计流程图2.2 主要的数据结构2.3 方法及原理的简要说明第三章详细设计3。

1 计算机程序框图3.2 自编程序第四章调试与操作说明4。

1 系统调试4。

2 操作使用说明第五章课程设计与总结体会5。

1 对开发的过程归纳与总结5.2 在过程中遇到的技术难点与解决方法 5。

3 程序尚存问题5.4 进一步开发的见解与建议 5.5 收获与体会 第六章 致谢第七章 参考文献 第八章 附录源码链接 第一章 需求分析1. 课程设计题目带头结点的单循环链表(职工工资管理系统) 2. 课程设计任务及要求编写一个职工工资管理系统,可以实现对数据的基本处理,要求用带头结点的单循环链表实现 3. 课程设计思想首先完成对程序的密码的确认,其次完成数据录入模块,然后实现对已录入的数据的存储和读入,最后就可以在其基础建立链表完成其余各项操作 4. 软硬件运行环境及开发工具Tur boc2.0,W indows XP ,VC++6.0第二章 概要设计2.1 设计流程图图1主函数流程图2.1.1录入读取建链流程图建链流程图如图2所示2.1.图3操作函数流程图2.2 主要的数据结构2.2。

1链表结构如图4所示图4链表结构图2.2.2链表的结点结构如表1所示表1链表的结点结构3.1 计算机程序框图3.1.1密码确认部分程序图如表5所示3.1 3.2 3。

{ /int i=0;int c;int a=1;int b;printf(”\n”);p=head;r=head—>next;while(a==1){q=(LNode *)malloc(sizeof(struct node));ﻩ b=1;ﻩwhile(b==1)/*编码确认部分*/ﻩ{printf("输入编号:\n”);ﻩscanf("%d",&q—>num);r=head—>next;ﻩ while(r!=NULL&&r!=head&&r-〉num!=q-〉num){ﻩﻩ r=r—〉next;ﻩﻩ}ﻩif(r==NULL||r==head)ﻩ b=0;elseﻩ{printf(”你输入的员工已录入,请重新输入。

考勤管理系统(Delphi70)

考勤管理系统(Delphi70)

回目录页
有关数据表
员工信息表:编号、姓名、编码、性别、职称、部 员工信息表:编号、姓名、编码、性别、职称、 住址、 门、住址、基本工资 出勤情况表:员工编号、月份、应出勤、迟到、 出勤情况表:员工编号、月份、应出勤、迟到、早 请假、旷工、 退、请假、旷工、实际出勤 、缺勤情况示意图 工资表:员工编号、月份、基本工资、奖金、实际 工资表:员工编号、月份、基本工资、奖金、 工资、 工资、调整系数
回目录页
编写要求
创建上述所有的数据表(Access类型),并录入一定数 创建上述所有的数据表(Access类型) (Access类型 量的模拟数据(记录) 量的模拟数据(记录)所采用的标准 能够实现系统的主要功能,程序结构清晰易读, 能够实现系统的主要功能,程序结构清晰易读,程序 通过调试,程序运行较为可靠,操作界面友好 通过调试,程序运行较为可靠, 编写简要用户操作说明 数据库名直接使用磁盘路径( 数据库名直接使用磁盘路径(缺省为工程文件所在路 径),不使用数据库别名 编程时生成的所有文件(包括数据表文件) 编程时生成的所有文件(包括数据表文件)均存放在 同一目录下, 同一目录下,完成后把该目录下所有文件上交
Y
显 示
Y
是否删除记录? 是否显示该员工记录?
Y
N
显示原有记录
N
结束
相关查询流程图
开始
输入数据
N
存 在?
Y
显 示
结束
密码修改流程图
开始
N
输入密码是否正确
Y
输入新密码
N
验证新密码
Y
修改成功
结束
系统运行
回目录页
说 明 目 录
功 能 特 色
打 印 本 页

Delphi7.0员工工资管理系统开发文档

Delphi7.0员工工资管理系统开发文档

Delphi7.0员工工资管理系统开发文档员工工资管理系统作者签名:日期:年月日摘要企业的员工管理是公司管理的一个重要内容。

随着企业人员数量增加,企业的员工管理工作也变得越来越复杂。

员工管理既涉及到企业劳动人事的管理,企业财务管理等。

员工管理需要和人事管理相联系,同时连接工时考勤和医疗保险等等,来生成企业每个职工的基本工资、津贴、医疗保险、保险费、实际发放工资等。

早期的员工统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现员工统计错误的现象。

早期员工管理多采取纸质材料和具有较强的时间限制。

基于以上原因,企业员工管理系统使用电脑安全保存、快速计算、全面统计,实现员工管理的系统化、规范化、自动化。

企业员工管理系统是典型的信息管理系统(MIS),前台程序开发工具采用DELPHI,后台数据库采用SQL SERVER 2000数据库。

DELPHI开发工具,具有组件丰富、语言简单、功能强大的优点。

SQL数据库具有与DELPHI 无缝连接、操作简单、易于使用的优点。

运行结果证明,本企业员工管理系统极大提高了工作效率,节省了人力和物力,最终满足企业员工管理等需要,同时也成为现代化企业管理的标志。

【关键字】员工信息系统,数据库,工资管理,实体关系图(E-R 图),数据字典,数据流图。

AbstractEnterprise staff management is an important aspect of management. With the increase in the number of enterprises, corporate management staff has become more and more complex. Both staff management and personnel involved in labor management, enterprise financial management. Staff management needs and associated personnel management,working hours, attendance at the same time to connect and medical insurance, etc., to generate business for each of the basic wages of workers, allowance, medical insurance, insurance, wages actually paid. Early release of statistics and the staff are using artificial methods to deal withpaper-based materials, not only the financial officers spent a lot of time and difficult to preserve, often transcription factors as a result of personal carelessness or negligence of the calculation, there is the wrong statistics staff. Early management staff to take paper-based materials and many have strong time constraints. For these reasons, the enterprise management system for staff to preserve the use of computer security, and rapid calculation, comprehensive statistics, staff management to achieve the systematic, standardized and automated. Employee Management System is a typical management information system (MIS), development tools for the future use of DELPHI, back-end database using SQL SERVER 2000 database. DELPHI development tools, has a component rich in simple language and powerful advantages. SQL database with the DELPHI seamless, simple operation, easy-to-use advantages. The results prove that the enterprise management system staff have greatly improved work efficiency, saving human and material resources, and ultimately meet the needs of enterprises, such as staff management, but also become a symbol of the modernization of enterprise management 【Keywords】staff information system, database, payroll management, entity relationship diagram (ER diagram), data dictionary, data flow diagram.目录第1章绪论 (1)1.1研究课题的背景 (1)1.2开发工具简介 (1)1.3数据库管理系统 (2)第2章员工工资管理系统分析与设计 (3)2.1应用需求分析 (3)2.2系统功能模块划分 (3)第3章数据库管理系统设计 (5)3.1数据库中表的建立和设计 (5)3.2数据库中各个表的触发器的建立 (7)第4章应用程序设计 (9)4.1欢迎界面 (9)4.2登录模块设计 (9)4.2.1身份验证 (10)4.3主窗体设计 (11)4.4信息录入管理窗体设计 (12)4.4.1 录入模块设计 (12)4.5信息查询管理窗体设计 (13)4.5.1 查询模块设计 (14)4.6信息修改模块 (15)4.6.1 修改模块设计 (16)4.7数据导出模块设计 (17)第6章系统测试 (22)6.1测试目的 (22)6.2测试方法 (22)6.3测试结论 (22)第7章结束语 (23)参考文献 (24)致谢 (25)第1章绪论1.1研究课题的背景借助现代信息技术和管理理论,建立员工管理信息系统是当今社会的重要趋势。

公司工资管理系统delphi源码设计文档(源代码大小16M)

公司工资管理系统delphi源码设计文档(源代码大小16M)

单击菜单向下箭头可扩展菜单选项。
第一条纪录:将光标移到第一条纪录。
前一条纪录:将光标移到当前纪录之前。
下一条纪录:将光标移到当前纪录之后的一条纪录。
最后一条纪录:将光标移到最后一条纪录。
插入纪录:在当前纪录之前查入一条空的纪录。
删除纪录:删除当前一条纪录,操作将不可恢复。
保存数据:编辑完数据后点击按钮,保存修改数据。
上报数据:打开上报数据对话框。
打 印:将操作页面转到打印项目。
清除数据:将当前全部数据全部清除掉。此项操作将不可恢复。
数据操作选项 依次为:
查 询:查找符合条件的纪录,具体说明见<3、菜单及其他辅助选项>。
排 序:点击向下的箭头根据菜单提示进行选择排序,直接单击按钮可按照默认方式排序,也可直接按SHift+F1等快捷键进行操作。样式如图:
单击菜单向下箭头可扩展菜单选项。
2、项目操作
(1)机构信息
点击“编辑状态:只读”按钮,该按钮变为“编辑状态:可写”,才能进入编辑状态。
a.机构基本信息设置
“主管单位”:本级单位的上级机构名称,本项目必须输入,鼠标单击后面 按钮进行选择输入。
“单位名称”:本级单位的名称,本项目必须输入,鼠标单击后面 按钮进行选择输入。
“待 遇”:本项目必须输入,鼠标单击后面 按钮或鼠标右键根据该人员实际情况进行选择输入。
“任职时间”:可选输入,根据实际情况填写,输入方式同“出生日期”。
“见习工资”:根据该人员实际情况,正确填写金额。
“职务档次”:根据该人员实际情况,正确填写金额(见习期人员不能输入此项目)。
辅助菜单:在某些栏目按鼠标右键可弹出辅助选项菜单,用户可根据需要使用相应功能,如图:

职工工资管理系统设计与源代码

职工工资管理系统设计与源代码

职工工资管理系统一、设计目标:按照软件工程的规范,以SQL Server或Access为后台数据库,以Delphi 或Visual C++为前端开发工具,设计并实现一个简化的工资管理系统。

二、需求描述该系统存储了某单位全体职工和工资信息。

职工的基本信息包括:职工编号、姓名、性别、出生年月、职称、最后学历、工资和婚否。

每一个职工的工资信息包括:月份、职工编号、职工姓名、基本工资、津贴、岗贴、补贴、房贴、交通补贴、应发数、房租、储蓄、会费、个人所得税、应扣数、实发数、其他收入。

个人所得税计算方法设为:应发数少于800元为0;800~1000元的部分为5%;1000~5000元的部分为10%;5000元以上的部分为20%。

系统功能如下:1.职工信息管理:a.增加职工信息。

增加新职工时输入新职工的基本信息;b.删除某职工的基本信息。

如,职工死亡或离职时;c.修改某职工(指定职工编号)的某些信息(如,加工资、获得新学位、晋升职称、结婚或离婚)。

2.工资管理:a.增加工资信息。

当增加新职工时,添加某职工的工资信息;b.职工离职或死亡时,删除某职工的工资信息;c.修改工资信息。

当月开始增加或减少某些项工资或扣款数变化时,修改某职工的部分工资信息;3.查询与统计:a.查询职工信息,如查询全体职工信息,或按职称、学历、出生年月、出生年月之前/ 之后、已婚/ 未婚等条件或多个条件的组合来查询相应的职工信息。

b.查询指定编号职工的工资信息;c.按时间段统计职工收入或单位的工资支出。

三、概要设计四、详细设计void CWorkerMgr6View::OnExit(){OnExit();}void CWorkerMgr6View::OnRecordFirst(){if(m_pSet->IsBOF()){m_pSet->SetFieldNull(NULL);}else{m_pSet->MoveFirst();UpdateData(FALSE);//更新对话框窗口}}void CWorkerMgr6View::OnRecordLast(){m_pSet->MoveLast();UpdateData(FALSE);//更新对话框窗口}void CWorkerMgr6View::OnRecordNext(){if(m_pSet->IsBOF()){m_pSet->SetFieldNull(NULL);}//判断是否溢出if(m_pSet->IsEOF()){AfxMessageBox("已经到达最后记录");}else{m_pSet->MoveNext();}UpdateData(FALSE);}void CWorkerMgr6View::OnRecordPre(){if(m_pSet->IsBOF()){AfxMessageBox("已经到达第一个记录");m_pSet->MoveFirst();}m_pSet->MovePrev();UpdateData(FALSE);}void CWorkerMgr6View::OnAddWorker(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);//连接数据库//上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;}}catch(_com_error e)///捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage);///显示错误信息}CAddWorker dl;if(dl.DoModal()==IDOK){m_pSet->AddNew();m_pSet->m_name=dl.m_nm;m_pSet->m_id=dl.m_ids;m_pSet->m_sex=dl.m_sx;m_pSet->m_born=dl.m_bn;m_pSet->m_zhichen=dl.m_zhch;m_pSet->m_xueli=dl.m_xli;m_pSet->m_salary=dl.m_sala;m_pSet->m_marry=dl.m_marr;m_pSet->Update();m_pSet->MoveLast();UpdateData(false);}OnAddMoney();}void CWorkerMgr6View::OnDeleteWorker(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);///连接数据库///上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;}}catch(_com_error e)///捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage);///显示错误信息}CDelWorker dl;if(dl.DoModal()==IDOK)UpdateData(true);try{long id=dl.m_idid;CString str;str.Format("DELETE from worker where ID=%d",id);_variant_t RecordsAffected;m_pConnection->Execute((_bstr_t)str,&RecordsAffected,adCmdText); AfxMessageBox("删除成功!");}catch(_com_error*e){AfxMessageBox(e->ErrorMessage());}m_pSet->MoveNext();if(m_pSet->IsEOF())m_pSet->MoveLast();UpdateData(FALSE);}}void CWorkerMgr6View::OnChangWorker(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);///连接数据库///上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;}}catch(_com_error e)///捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage);///显示错误信息}CChangeWork dl2;if(dl2.DoModal()==IDOK){UpdateData(true);long id=dl2.m_wid;m_pSet->MoveFirst();while(m_pSet->m_id!=dl2.m_wid)m_pSet->MoveNext();CChangeOne dl1;dl1.m_name1=m_pSet->m_name;dl1.m_id1=m_pSet->m_id;dl1.m_sex1=m_pSet->m_sex;dl1.m_born1=m_pSet->m_born;dl1.m_zhichen1=m_pSet->m_zhichen;dl1.m_xueli=m_pSet->m_xueli;dl1.m_salary1=m_pSet->m_salary;dl1.m_marry1=m_pSet->m_marry;if(dl1.DoModal()==IDOK){m_pSet->Edit();m_pSet->m_name=dl1.m_name1;m_pSet->m_id=dl1.m_id1;m_pSet->m_sex=dl1.m_sex1;m_pSet->m_born=dl1.m_born1;m_pSet->m_zhichen=dl1.m_zhichen1;m_pSet->m_xueli=dl1.m_xueli;m_pSet->m_salary=dl1.m_salary1;m_pSet->m_marry=dl1.m_marry1;m_pSet->Update();// m_pSet->MoveNext();UpdateData(false);}}}void CWorkerMgr6View::OnMShowDetail() {CMShowDetail dl;long id=m_pSet->m_id;m_pSet->MoveFirst();while(m_pSet->m_id!=id)m_pSet->MoveNext();dl.m_month=m_pSet->m_month;dl.m_id=m_pSet->m_id;dl.m_name=m_pSet->m_name;dl.m_base=m_pSet->m_base;dl.m_jintie=m_pSet->m_jintie;dl.m_gangtie=m_pSet->m_gangtie;dl.m_butie=m_pSet->m_butie;dl.m_fangtie=m_pSet->m_fangtie;dl.m_jiaotong=m_pSet->m_jiaotong;dl.m_yingfa=dl.m_base+dl.m_jintie+dl.m_gangtie+dl.m_butie+dl.m_fangtie+ dl.m_jiaotong;dl.m_fangzu=m_pSet->m_fangzu;dl.m_chuxu=m_pSet->m_chuxu;dl.m_huifei=m_pSet->m_huifei;if(dl.m_yingfa<800){dl.m_gerentax=0;}else if(dl.m_yingfa>=800&&dl.m_yingfa<=1000){dl.m_gerentax=dl.m_yingfa*0.05f;}else if(dl.m_yingfa>1000&&dl.m_yingfa<=5000){dl.m_gerentax=dl.m_yingfa*0.1f;}else if(dl.m_yingfa>5000){dl.m_gerentax=dl.m_yingfa*0.2f;}dl.m_yingkou=dl.m_fangzu+dl.m_chuxu+dl.m_huifei+dl.m_gerentax;dl.m_shifa=dl.m_yingfa-dl.m_yingkou;dl.m_other=m_pSet->m_other;dl.DoModal();}void CWorkerMgr6View::OnAddMoney(){CAddMoney dl;dl.m_id=m_pSet->m_id;dl.m_name=m_pSet->m_name;if(dl.DoModal()==IDOK){m_pSet->Edit();m_pSet->m_base=dl.m_base;m_pSet->m_month=dl.m_month;m_pSet->m_jintie=dl.m_jintie;m_pSet->m_gangtie=dl.m_gangtie;m_pSet->m_butie=dl.m_butie;m_pSet->m_fangtie=dl.m_fangtie;m_pSet->m_jiaotong=dl.m_jiaotong;dl.m_yingfa=dl.m_base+dl.m_jintie+dl.m_gangtie+dl.m_butie+dl.m_fangtie+ dl.m_jiaotong;m_pSet->m_yingfa=dl.m_yingfa;m_pSet->m_fangzu=dl.m_fangzu;m_pSet->m_chuxu=dl.m_chuxu;m_pSet->m_huifei=dl.m_huifei;if(dl.m_yingfa<800){dl.m_gerentax=0;}else if(dl.m_yingfa>=800&&dl.m_yingfa<=1000){dl.m_gerentax=dl.m_yingfa*0.05f;}else if(dl.m_yingfa>1000&&dl.m_yingfa<=5000){dl.m_gerentax=dl.m_yingfa*0.1f;else if(dl.m_yingfa>5000){dl.m_gerentax=dl.m_yingfa*0.2f;}m_pSet->m_gerentax=dl.m_gerentax;dl.m_yingkou=dl.m_fangtie+dl.m_chuxu+dl.m_huifei+dl.m_gerentax;m_pSet->m_yingkou=dl.m_yingkou;dl.m_shifa=dl.m_yingfa-dl.m_yingkou;m_pSet->m_shifa=dl.m_shifa;m_pSet->m_other=dl.m_other;m_pSet->Update();//m_pSet->MoveLast();UpdateData(false);}}void CWorkerMgr6View::OnDeleteMoney(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);///连接数据库///上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;}}catch(_com_error e)///捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage);///显示错误信息}CDeleteMoney dl;if(dl.DoModal()==IDOK)UpdateData(true);try{long id=dl.m_id;CString str;str.Format("DELETE from worker where ID=%d",id);_variant_t RecordsAffected;m_pConnection->Execute((_bstr_t)str,&RecordsAffected,adCmdText); AfxMessageBox("删除成功!");}catch(_com_error*e){AfxMessageBox(e->ErrorMessage());}m_pSet->MoveNext();if(m_pSet->IsEOF())m_pSet->MoveLast();UpdateData(FALSE);}}void CWorkerMgr6View::OnChangeMoney(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);}}catch(_com_error e) //捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage); //显示错误信息}CChangeWork dl2;if(dl2.DoModal()==IDOK){UpdateData(true);long id=dl2.m_wid;m_pSet->MoveFirst();while(m_pSet->m_id!=dl2.m_wid)m_pSet->MoveNext();CChangeMoney dl1;dl1.m_month=m_pSet->m_month;dl1.m_name=m_pSet->m_name;dl1.m_id=m_pSet->m_id;dl1.m_base=m_pSet->m_base;dl1.m_jintie=m_pSet->m_jintie;dl1.m_gangtie=m_pSet->m_gangtie;dl1.m_butie=m_pSet->m_butie;dl1.m_fangtie=m_pSet->m_fangtie;dl1.m_jiaotong=m_pSet->m_jiaotong;dl1.m_yingfa=dl1.m_base+dl1.m_jintie+dl1.m_gangtie+dl1.m_butie+dl1.m_fa ngtie+dl1.m_jiaotong;dl1.m_fangzu=m_pSet->m_fangzu;dl1.m_chuxu=m_pSet->m_chuxu;dl1.m_huifei=m_pSet->m_huifei;if(dl1.m_yingfa<800){dl1.m_gerentax=0;}else if(dl1.m_yingfa>=800&&dl1.m_yingfa<=1000){dl1.m_gerentax=dl1.m_yingfa*0.05f;}else if(dl1.m_yingfa>1000&&dl1.m_yingfa<=5000){dl1.m_gerentax=dl1.m_yingfa*0.1f;}else if(dl1.m_yingfa>5000){dl1.m_gerentax=dl1.m_yingfa*0.2f;}dl1.m_yingkou=dl1.m_gerentax+dl1.m_fangzu+dl1.m_chuxu+dl1.m_huifei;dl1.m_shifa=dl1.m_yingfa-dl1.m_yingkou;dl1.m_other=dl1.m_other;if(dl1.DoModal()==IDOK){m_pSet->Edit();m_pSet->m_name=dl1.m_name;m_pSet->m_id=dl1.m_id;m_pSet->m_month=dl1.m_month;m_pSet->m_base=dl1.m_base;m_pSet->m_jintie=dl1.m_jintie;m_pSet->m_gangtie=dl1.m_gangtie;m_pSet->m_butie=dl1.m_butie;m_pSet->m_fangtie=dl1.m_fangtie;m_pSet->m_jiaotong=dl1.m_jiaotong;m_pSet->m_yingfa=dl1.m_base+dl1.m_jintie+dl1.m_gangtie+dl1.m_butie+dl1. m_fangtie+dl1.m_jiaotong;m_pSet->m_fangzu=dl1.m_fangzu;m_pSet->m_chuxu=dl1.m_chuxu;m_pSet->m_huifei=dl1.m_huifei;if(m_pSet->m_yingfa<800){m_pSet->m_gerentax=0;}else if(m_pSet->m_yingfa>=800&&m_pSet->m_yingfa<=1000){m_pSet->m_gerentax=m_pSet->m_yingfa*0.05f;}else if(m_pSet->m_yingfa>1000&&m_pSet->m_yingfa<=5000){m_pSet->m_gerentax=m_pSet->m_yingfa*0.1f;}else if(m_pSet->m_yingfa>5000){m_pSet->m_gerentax=m_pSet->m_yingfa*0.2f;}m_pSet->m_yingkou=dl1.m_fangzu+dl1.m_chuxu+dl1.m_huifei+m_pSet->m_geren tax;m_pSet->m_shifa=m_pSet->m_yingfa-m_pSet->m_yingkou;m_pSet->m_other=dl1.m_other;m_pSet->Update();// m_pSet->MoveNext();UpdateData(false);}}}void CWorkerMgr6View::OnFindMoney(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);}}catch(_com_error e) //捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage); //显示错误信息}CFindNo dl2;if(dl2.DoModal()==IDOK){UpdateData(true);long id=dl2.m_id;m_pSet->MoveFirst();while(m_pSet->m_id!=dl2.m_id)m_pSet->MoveNext();CMShowDetail dl1;dl1.m_month=m_pSet->m_month;dl1.m_name=m_pSet->m_name;dl1.m_id=m_pSet->m_id;dl1.m_base=m_pSet->m_base;dl1.m_jintie=m_pSet->m_jintie;dl1.m_gangtie=m_pSet->m_gangtie;dl1.m_butie=m_pSet->m_butie;dl1.m_fangtie=m_pSet->m_fangtie;dl1.m_jiaotong=m_pSet->m_jiaotong;dl1.m_yingfa=dl1.m_base+dl1.m_jintie+dl1.m_gangtie+dl1.m_butie+dl1.m_fa ngtie+dl1.m_jiaotong;dl1.m_fangzu=m_pSet->m_fangzu;dl1.m_chuxu=m_pSet->m_chuxu;dl1.m_huifei=m_pSet->m_huifei;if(dl1.m_yingfa<800){dl1.m_gerentax=0;}else if(dl1.m_yingfa>=800&&dl1.m_yingfa<=1000){dl1.m_gerentax=dl1.m_yingfa*0.05f;}else if(dl1.m_yingfa>1000&&dl1.m_yingfa<=5000){dl1.m_gerentax=dl1.m_yingfa*0.1f;}else if(dl1.m_yingfa>5000){dl1.m_gerentax=dl1.m_yingfa*0.2f;}dl1.m_yingkou=dl1.m_gerentax+dl1.m_fangzu+dl1.m_chuxu+dl1.m_huifei;dl1.m_shifa=dl1.m_yingfa-dl1.m_yingkou;dl1.m_other=dl1.m_other;dl1.DoModal();}}void CWorkerMgr6View::OnStaticsMoney(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);}}catch(_com_error e) //捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage); //显示错误信息}m_pSet->MoveFirst();float sum=0;while(!m_pSet->IsEOF()){sum=sum+m_pSet->m_shifa;m_pSet->MoveNext();}CString string;string.Format("%f",sum);MessageBox(string,"统计当月支出",MB_OKCANCEL);}五、测试及结果分析(a)在此前端主界面下查看后台数据库中员工的基本信息。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

员工工资管理系统作者签名:日期:年月日摘要企业的员工管理是公司管理的一个重要内容。

随着企业人员数量增加,企业的员工管理工作也变得越来越复杂。

员工管理既涉及到企业劳动人事的管理,企业财务管理等。

员工管理需要和人事管理相联系,同时连接工时考勤和医疗保险等等,来生成企业每个职工的基本工资、津贴、医疗保险、保险费、实际发放工资等。

早期的员工统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现员工统计错误的现象。

早期员工管理多采取纸质材料和具有较强的时间限制。

基于以上原因,企业员工管理系统使用电脑安全保存、快速计算、全面统计,实现员工管理的系统化、规范化、自动化。

企业员工管理系统是典型的信息管理系统(MIS),前台程序开发工具采用DELPHI,后台数据库采用SQL SERVER 2000数据库。

DELPHI开发工具,具有组件丰富、语言简单、功能强大的优点。

SQL数据库具有与DELPHI无缝连接、操作简单、易于使用的优点。

运行结果证明,本企业员工管理系统极大提高了工作效率,节省了人力和物力,最终满足企业员工管理等需要,同时也成为现代化企业管理的标志。

【关键字】员工信息系统,数据库,工资管理,实体关系图(E-R图),数据字典,数据流图。

AbstractEnterprise staff management is an important aspect of management. With the increase in the number of enterprises, corporate management staff has become more and more complex. Both staff management and personnel involved in labor management, enterprise financial management. Staff management needs and associated personnel management, working hours, attendance at the same time to connect and medical insurance, etc., to generate business for each of the basic wages of workers, allowance, medical insurance, insurance, wages actually paid. Early release of statistics and the staff are using artificial methods to deal withpaper-based materials, not only the financial officers spent a lot of time and difficult to preserve, often transcription factors as a result of personal carelessness or negligence of the calculation, there is the wrong statistics staff. Early management staff to take paper-based materials and many have strong time constraints. For these reasons, the enterprise management system for staff to preserve the use of computer security, and rapid calculation, comprehensive statistics, staff management to achieve the systematic, standardized and automated. Employee Management System is a typical management information system (MIS), development tools for the future use of DELPHI, back-end database using SQL SERVER 2000 database. DELPHI development tools, has a component rich in simple language and powerful advantages. SQL database with the DELPHI seamless, simple operation, easy-to-use advantages. The results prove that the enterprise management system staff have greatly improved work efficiency, saving human and material resources, and ultimately meet the needs of enterprises, such as staff management, but also become a symbol of the modernization of enterprise management 【Keywords】staff information system, database, payroll management, entity relationship diagram (ER diagram), data dictionary, data flow diagram.目录第1章绪论 (1)1.1研究课题的背景 (1)1.2开发工具简介 (1)1.3数据库管理系统 (2)第2章员工工资管理系统分析与设计 (3)2.1应用需求分析 (3)2.2系统功能模块划分 (3)第3章数据库管理系统设计 (5)3.1数据库中表的建立和设计 (5)3.2数据库中各个表的触发器的建立 (7)第4章应用程序设计 (9)4.1欢迎界面 (9)4.2登录模块设计 (9)4.2.1身份验证 (10)4.3主窗体设计 (11)4.4信息录入管理窗体设计 (12)4.4.1 录入模块设计 (12)4.5信息查询管理窗体设计 (13)4.5.1 查询模块设计 (14)4.6信息修改模块 (15)4.6.1 修改模块设计 (16)4.7数据导出模块设计 (17)第6章系统测试 (22)6.1测试目的 (22)6.2测试方法 (22)6.3测试结论 (22)第7章结束语 (23)参考文献 (24)致谢 (25)第1章绪论1.1研究课题的背景借助现代信息技术和管理理论,建立员工管理信息系统是当今社会的重要趋势。

党和政府根据知识经济时代的特点,对国民经济建设提出了“用信息化带动工业化”的指导思想。

对企业而言,全面开发和应用计算机管理信息系统就是近期不能回避的问题。

在企业管理中,人力资源是企业最宝贵的资源,也是企业的“生命线”,因此员工管理是企业的计算机管理信息系统重要组成部分。

而员工管理又是人力资源管理的重中之重。

实行电子化的员工管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。

员工管理信息系统的实现可以减轻比较繁琐的手工员工管理。

现在应用在大中型企业的管理信息系统中,几乎都包括了员工管理模块。

有些环境中是由作为大型ERP软件中的一个模块引进的,有些是作为企业的财务系统的一部分。

这些根据规范的西方的管理制度设计的员工管理软件,在很多时候还不能完全解决中国特色的中小企业的问题,本文介绍的毕业设计的研究工作就是要为这些具有中国特色的中小企业解决他们在员工管理方面的问题。

通过在本单位经过一周的调研,并参考其他同行设计员工管理软件,我基本上搞清楚了小型企业对系统的需求,如果能够设计一套针对类似本单位的小型国有企业的员工管理系统特别有意义,并且是现行的其他管理软件代替不了的。

在和指导老师多次交流后,确定实现方案的要点和工作计划。

本系统的实现的主要功能有:员工信息管理、工资管理、部门信息管理、员工考勤管理等功能。

1.2 开发工具简介开发工具采用Delphi7.0。

Delphi7.0是目前较为广泛的、易学易用的开发工具。

Delphi7.0也提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。

因此,本系统使用Delphi7.0开发。

1.3数据库管理系统数据库开发工具采用Sql Server 2000。

借助Sql Server 2000的数据库管理系统对数据库进行一切操作,包括定义各种更新和控制。

在数据库领域中通常把数据模型分为三种:层次模型(Hierarchical Model)、网状模型(Network Model)和关系模型(Relational Model)。

Sql Server 2000就是一种关系型数据库管理系统。

关系模型是数据库系统中最重要的模型,关系模型中数据的逻辑结构是一张二维表。

使用表格来描述实体之间的关系,用外键表示实体间联系。

关系模型是由若干个关系模式组成的集合。

关系模式相当于前面提到的记录类型,每个关系实际上是一张二维表格。

关系模型和层次、网状模型的最大判别是用关键码而不是用指针导航数据,表格简单用户易懂,编程时并不涉及存储结构,访问技术等细节。

SQL语言是关系型数据库的标准化语言,已得到了广泛的应用。

第2章员工工资管理系统分析与设计2.1 应用需求分析需求分析的过程可以说是一个对具体问题的反复理解和抽象的过程。

理解就是对现实问题的理解,要弄清楚究竟需要解决什么问题。

抽象就是除去问题的表面,提取问题的本质,建立问题的逻辑模型,以便于以后阶段的系统的设计实现。

需求分析阶段是软件产品生存命期中的一个重要阶段,其根本任务是确定用户对软件系统的需求。

所谓需求是指用户对软件的功能和性能的要求,就是用户希望软件能什么事情,完成什么样的功能,达到什么性能。

通常需求分为两种类型:一种是功能性需求,一种是非功能性需求,这一点也需要有一种清楚的认识。

功能性需求是指需要计算机系统解决的问题,也就是对数据的处理要求,这是一类最主要的需求。

相关文档
最新文档