职工工资管理系统设计与源代码.doc
《职工工资管理系统设计与源代码.doc》由会员分享,可在线阅读,更多相关《职工工资管理系统设计与源代码.doc(18页珍藏版)》请在三一办公上搜索。
1、职工工资管理系统一、 设计目标:按照软件工程的规范,以SQL Server或Access为后台数据库,以Delphi 或Visual C+为前端开发工具,设计并实现一个简化的工资管理系统。二、 需求描述该系统存储了某单位全体职工和工资信息。职工的基本信息包括:职工编号、姓名、性别、出生年月、职称、最后学历、工资和婚否。每一个职工的工资信息包括:月份、职工编号、职工姓名、基本工资、津贴、岗贴、补贴、房贴、交通补贴、应发数、房租、储蓄、会费、个人所得税、应扣数、实发数、其他收入。个人所得税计算方法设为:应发数少于800元为0;8001000元的部分为5%;10005000元的部分为10%;5000
2、元以上的部分为20%。系统功能如下:1 职工信息管理:a. 增加职工信息。增加新职工时输入新职工的基本信息;b. 删除某职工的基本信息。如,职工死亡或离职时;c. 修改某职工(指定职工编号)的某些信息(如,加工资、获得新学位、晋升职称、结婚或离婚)。2 工资管理:a. 增加工资信息。当增加新职工时,添加某职工的工资信息;b. 职工离职或死亡时,删除某职工的工资信息;c. 修改工资信息。当月开始增加或减少某些项工资或扣款数变化时,修改某职工的部分工资信息;3 查询与统计:a. 查询职工信息,如查询全体职工信息,或按职称、学历、出生年月、出生年月之前/ 之后、已婚/ 未婚等条件或多个条件的组合来查
3、询相应的职工信息。b. 查询指定编号职工的工资信息;c. 按时间段统计职工收入或单位的工资支出。三、 概要设计四、 详细设计void CWorkerMgr6View:OnExit()OnExit();void CWorkerMgr6View:OnRecordFirst()if(m_pSet-IsBOF()m_pSet-SetFieldNull(NULL);elsem_pSet-MoveFirst();UpdateData(FALSE);/更新对话框窗口void CWorkerMgr6View:OnRecordLast()m_pSet-MoveLast();UpdateData(FALSE);/
4、更新对话框窗口void CWorkerMgr6View:OnRecordNext()if(m_pSet-IsBOF()m_pSet-SetFieldNull(NULL);/判断是否溢出if(m_pSet-IsEOF()AfxMessageBox(已经到达最后记录);elsem_pSet-MoveNext();UpdateData(FALSE);void CWorkerMgr6View:OnRecordPre()if(m_pSet-IsBOF()AfxMessageBox(已经到达第一个记录);m_pSet-MoveFirst();m_pSet-MovePrev();UpdateData(FAL
5、SE);void CWorkerMgr6View:OnAddWorker()HRESULT hr;tryhr =m_pConnection.CreateInstance(ADODB.Connection);/创建Connection对象if(SUCCEEDED(hr)hr=m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=worker.mdb,adModeUnknown);/连接数据库/上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Micro
6、soft.Jet.OLEDB.3.51;catch(_com_error e)/捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%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
7、_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;tryhr =m_pConnection.CreateInstance(ADODB.Connection);/创建Connection对象if(SUCCEEDED(hr)hr=m_pCo
8、nnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=worker.mdb,adModeUnknown);/连接数据库/上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;catch(_com_error e)/捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%s,e.ErrorMessage();AfxMessageBox(errormes
9、sage);/显示错误信息CDelWorker dl;if(dl.DoModal()=IDOK)UpdateData(true);trylong 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-ErrorMessag
10、e();m_pSet-MoveNext();if(m_pSet-IsEOF()m_pSet-MoveLast();UpdateData(FALSE);void CWorkerMgr6View:OnChangWorker()HRESULT hr;tryhr =m_pConnection.CreateInstance(ADODB.Connection);/创建Connection对象if(SUCCEEDED(hr)hr=m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=worker.mdb,adModeUnknown);
11、/连接数据库/上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;catch(_com_error e)/捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%s,e.ErrorMessage();AfxMessageBox(errormessage);/显示错误信息CChangeWork dl2;if(dl2.DoModal()=IDOK)UpdateData(true);long id=dl2.m_wid
12、;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(
13、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)
14、;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_pSe
15、t-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_yingfa1000&dl.m_yingfa5000)dl.m_geren
16、tax=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.
17、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
18、_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_yingfa1000&dl.m_yingfa5000)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_yin
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 职工工资 管理 系统 设计 源代码
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-3784583.html