




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
职工工资管理系统一、 设计目标:按照软件工程的规范,以SQL Server或Access为后台数据库,以Delphi 或Visual C+为前端开发工具,设计并实现一个简化的工资管理系统。二、 需求描述该系统存储了某单位全体职工和工资信息。职工的基本信息包括:职工编号、姓名、性别、出生年月、职称、最后学历、工资和婚否。每一个职工的工资信息包括:月份、职工编号、职工姓名、基本工资、津贴、岗贴、补贴、房贴、交通补贴、应发数、房租、储蓄、会费、个人所得税、应扣数、实发数、其他收入。个人所得税计算方法设为:应发数少于800元为0;8001000元的部分为5%;10005000元的部分为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);elsem_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(已经到达最后记录);elsem_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;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=Microsoft.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_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_pConnection-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(errormessage);/显示错误信息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-ErrorMessage();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);/连接数据库/上面一句中连接字串中的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;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_yingfa1000&dl.m_yingfa5000)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_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_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;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=Microsoft.Jet.OLEDB.3.51;catch(_com_error e)/捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%s,e.ErrorMessage();AfxMessageBox(errormessage);/显示错误信息CDeleteMoney dl;if(dl.DoModal()=IDOK)UpdateData(true);trylong 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;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);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;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_fangtie+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_yingfa1000&dl1.m_yingfa5000)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_yingfam_gerentax=0;else if(m_pSet-m_yingfa=800&m_pSet-m_yingfam_gerentax=m_pSet-m_yingfa*0.05f;else if(m_pSet-m_yingfa1000&m_pSet-m_yingfam_gerentax=m_pSet-m_yingfa*0.1f;else if(m_pSet-m_yingfa5000)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_gerentax;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;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);catch(_com_error e) /捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%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_fangtie+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_yingfa1000&dl1.m_yingfa5000)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;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);catch(_com_error e) /捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%s,e.ErrorMessage();AfxMessageBox(error
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 入职生产安全培训内容课件
- 你比我猜课件
- 智慧树知道网课《船舶与海洋工程专业导论(哈尔滨工程大学)》课后章节测试答案
- 非战备状态管理办法
- 企业环保安全培训文案课件
- 纪检巡察工作管理办法
- 纪检材料归档管理办法
- 发展新质生产力的主阵地
- (公职考试)2025时事政治考试题及答案
- 2025年中医执业医师考试重点讲解与模拟试题及答案
- 公司产品报价单通用格式模板
- (中职)《电子商务基础》第1套试卷试题及答案
- GB∕T 3098.25-2020 紧固件机械性能 不锈钢和镍合金紧固件选用指南
- 硬笔书法第一课新版ppt
- 部编版语文八年级下册第一单元口语交际 应对 练习(含答案解析)
- 部编版八年级上册语文《消息二则》课件(定稿)
- 新员工三级安全教育培训试题(有答案)
- 预测分析:技术、模型与应用 - SAP Predictive Analytics
- 2014中国神经外科颅底内镜临床应用技术专家共识
- 教务处作业检查记录表
- 针刺伤的预防及处理(课堂PPT)
评论
0/150
提交评论