版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
编号:审定成绩:先锋软件学院2011届毕业论文题目:ERP工资管理系统分院:软件工程分院学生姓名:专业:计算机应用技术班级:学号:指导教师:填表时间:年月先锋软件学院学生毕业设计(论文)工作自查表(2010年10月-2011年4月检查)学生姓名专业学号导师姓名职称教师导师每周指导次数5每次:3小时题目名称ERP工资管理系统作息时间上午9时~12时下午14时~17时晚间19时~21时个人精力实际投入日均工作小时8周均工作小时40缺席天数0出勤率%100毕业设计(论文)工作进度已完成主要内容%待完成主要内容%2010年11月初开始收集资料,工具的选择;2011年1月初开始论文的编写,排版。图表的添加,删除等操作;2011年1月中旬完成论文,发表总结,修改不足之处等结尾工作。95加入图片,表格页面的美工,论文的批改,页眉页脚,字体文表等各方面不足之处的修改和完善论文。5存在问题工作措施主要是各个功能块的连接方式还存在问题,待老师帮助解决后,有了初步的解决构思。指导教师(签字):日期:年月日先锋软件学院毕业论文评阅表(指导教师、评阅人用)论文(设计)名称ERP工资管理系统学生姓名学号4985指导教师或评阅人)姓名序号评审项目指标满分评分1论文(设计)完成量论文(设计)内容完成量,难易程度符合教学基本要求202调查与综合根据论文(设计)任务,能独立查阅文献资料和从事其它有关调研。有收集、综合和正确利用各种信息的能力。203论文(设计)质量文章切合选题,材料丰富、内容充实,观点明确、论据充分、论证严格,构思完整、层次分明、段落、论题间的衔接自然、舒展。文笔流畅、语言通顺、使用专业术语准确,图表清楚,符合要求。504创新有独特的见解,或有一定应用价值10总分评语:(明确指出论文(设计)的调研论证材料收集是否适合论点要求、创新点、论文(设计)论证能力、写作水平,同时要明确指出论文(设计)的不足之处及改进方向。)评阅人:年月日摘要[摘要]:随着Internet技术的发展,人们的日常生活已经离不开网络。未来社会人们的生活和工作将越来越依赖于数字技术的发展,越来越数字化点、网络化、电子化、虚拟化。电子商务也会随着网络的发展日益贴近人们的生活。Internet目前的发展趋势以及应用状况,可以充分的相信网络技术,极大的改善我们的生活方式和工作方式。本设计尝试使用Delphi开发一个属于本公司的员工的工资管理系统,以使得整个公司上下很好的管理每一位员工每月的工资发放和统计。[关键词]:InternetRADDelphi电子商务数据库AbstractAbstract:SummaryalongwiththedevelopmentofInternettschnology,dailylifecannotalreadydowithoutthenetwork.Thelifeandworkofthesocialpeopleoffuturewilldependonthedevelopmentofdigitaltechnologymoreandmore,Digitizemoreandmore,thenetworking,electronization,virtual,E-commercepressesclosetopeople’slifedaybydayalongwiththedevelopmentofnetworktoo.DevelopmentcourseandpresentapplicationstateanddevelopmenttrendofInternet,canbelievenetworktechnologygreatchangelifeandworkingwayofusfully,evenacertainchangewilltakeplaceinthevaluesofthesociety.ThisdesigntriestouseDelphitodevelopacompanyisemployeesBelongtotheSalaryManagementSystem,TomakethewholewellmanagedAcrossthecompanyeveryemployeepayrollandmonthlystatistica.[Keyword]:InternetRADDelphiE-commerceDatabase.目录系统开发背景系统开发目的系统功能结构设计 9数据库设计 9主界面设计 14前言上世纪八、九十年代以来,计算机产业飞速发展,其应用渗透在社会生产的各个领域。计算机在国内的崛起加速了各企事业单位、机关的自动化进程,提高了国民生产的效率,从而为国民经济的飞速发展创造了必要的条件。步入21世纪以来,计算机更是以惊人的普及速度,进入各行各业和大部分家庭。各种应用的需求也不断增加,人们更加追求生活的品质和工作的效率,企业更是视提高生产效率为生存和发展之道,于是通过科技手段提高生产和管理效率自然成为竞争和发展的焦点。这不仅包括如何实现企业生产设备的改进和生产技术的提高还包括如何有效地组织和管理企业各项事务,实现企业的办公自动化。而管理信息系统(ManagementInformationSystem,MIS)在办公自动化的进程中发挥着重要的作用。市场需求也日益增加。大型企业的分工比较严格、细致,组织较为紧密,对软硬件的要求也就比较高,因此试图以一款软件来解决企业的所有问题显然是不可能的,这就需要我们细化事务,有针对性地开发纵向应用广泛的MIS系统。不仅能够解决大型企业和机构的某方面问题,还应该能为更多的中、小型企业利用,提高他们的工作效率,加速企业的发展,从而促进国民经济的建设。财务是每一个单位都会涉及的问题,管理软件雨后春笋般崛起的今天,企业不仅需要通过软件有效地对其实施管理,还想操作能够尽可能简单,软件易于上手。通过查阅相关资料,对市场需求进行分析,对既成工资管理软件的研究和测试,我们认为本课题是一个适应现今工资管理需求的计算机信息管理系统,具有一定的现实意义和开发使用价值。1.系统概况系统开发背景自20世纪80年代以来,知识经济的兴起和信息技术的日新月异消除了人与人之间知识、信息传递的障碍,也带来了人类经营意识、管理观念的巨大改变。21世纪是一个经济时代,经济竞争说到底是人才的竞争,谁拥有了人才,谁就将最终拥有财富。通过工资人事管理可以获得并维持组织的竞争优势,人作为公司最重要的资产,如何用好人才,为每个人找到合适的岗位去发挥其特长是用人的关键环节。而运用先进科技手段进行有效管理是最好的发展方向。MIS作为提高管理效率和办公自动化进程的重要工具,已深入到国民生产的方方面面。我们更加需要开发适应不同行业不同需求的MIS系统。系统开发目的本系统开发的主要目的就是要使企事业单位工资管理实现计算机管理,使管理员能够有序地管理每一位职工的各项工资条款的发放以及员工个人台帐的生成,使企业运用现代化技术创造更多更高的经济效益。系统平台选用数据库技术的现状与发展数据库是60年代末出现的一门计算机软件技术,到现在虽然只有三十多年的历史,但在理论和时间上都得到了和很大的发展。现在,数据库是数据处理的主要工具,是管理信息系统(MIS)的核心部分。数据库系统是当今计算机信息系统的核心,是计算机技术和应用发展的关键。传统的数据库系统旨在处理永久、稳定的数据,强调维护数据的完整性、一致性。数据库理论与技术的发展极其迅速,其应用日益广泛,在当今的信息社会中,它几乎无所不在。以关系型为代表的三大经典(层次、网状、关系)型数据库在传统的(商务和管理的事务型)应用领域获得了极大成功。计算机世界报社与IBM公司联合举办了"21世纪数据库技术发展专家研讨会"。IBMDB2的创始人DonaldHaderle先生与国内著名数据库专家,就下世纪数据库发展的趋势、数据库领域革命性的突破、IBMDB2的应用、数据仓库的实施、我国数据库技术和应用的现状及趋势、我国数据库用户的需求等问题,进行了广泛而深入的讨论。数据库系统的选择原则=1\*GB3①数据库系统采用易于集成的,开放的技术。=2\*GB3②产品质量优异,可靠性高,适于长期运行,能支持关键应用。=3\*GB3③数据安全,保安型高。=4\*GB3④能提供分布式数据库功能。=5\*GB3⑤支持多种开发环境,软件开发容易。=6\*GB3⑥扩充性和升级能力强。系统开发工具的选择本次工资管理系统选用Delphi与Oracle11g进行开发,现在市场上有很多MIS的开发工具,如:Visualbasic、Delphi、ASP等等,数据库开发工具又有很多种,如:Access,SQLSever,Oracle等等。与其他开发工具相比,Delphi与Oracle有着自己的特点与优势。=1\*GB2⑴Delphi简介Delphi,是Windows平台下著名的快速应用程序开发工具(RapidApplicationDevelopment,简称RAD)。它的前身,即是DOS时代盛行一时的“BorlandTurboPascal”,最早的版本由美国Borland(宝兰)公司于1995年开发。主创者为AndersHejlsberg。经过数年的发展,此产品也转移至Embarcadero公司旗下。从产品名称上就可以知道,TurboPascal使用的是Pascal语言。从TurboPascal版开始,Borland公司在传统Pascal的基础上加入了面向对象的功能。Delphi是一个集成开发环境(IDE),使用的核心是由传统Pascal语言发展而来的ObjectPascal,以图形用户界面(GraphicalUserInterface,简称GUI)为开发环境,透过IDE、VCL工具与编译器,配合连结数据库的功能,构成一个以面向对象程序设计为中心的应用程序开发工具。Delphi所编译的可运行档,虽然容量较大,但效能上却比较快。除了使用数据库的程序之外,不需安装即可运行,在使用上相当方便。Delphi在本质上应该归类为软件开发工具,而非程序语言,但由于Delphi几乎是目前市场上唯一使用Pascal,并持续推出新版本的商业产品。因此,有时人们会把Delphi视为ObjectPascal的代名词。Borland公司因而把ObjectPascal改称为Delphi。2006年,Borland把开发工具产品线独立出来,成立了一家新的公司CodeGear,并把产品线交由此公司负责。原本的Delphi,亦曾一度因此被命名为TurboDelphi。但是在新的版本中,除了DelphiforWin32(原有的Delphi版本)之外,还有一个新产品“DelphiforPHP”。在CodeGear的发展规划中,或许“Delphi”不再是ObjectPascal的专属IDE名称,而是将之提升到通用IDE品牌的层次。2008年5月7日,EmbarcaderoTechnologies(易博龙)公司宣布以2300万美元的价格收购CodeGear公司,从而把Delphi收入囊中。2009年5月6日,MicroFocus宣布以7500万美元收购Borland。Delphi目前的最新版本是2010。Delphi具有如下特点:=1\*GB3①直接编译生成可执行代码,编译速度快。由于Delphi编译器采用了条件编译和选择链接技术,使用它生成的执行文件更加精炼,运行速度更快。在处理速度和存取服务器方面,Delphi的性能远远高于其他同类产品。=2\*GB3②支持将存取规则分别交给客户机或服务器处理的两种方案,而且允许开发人员建立一个简单的部件或部件集合,封装起所有的规则,并独立于服务器和客户机,所有的数据转移通过这些部件来完成。这样,大大减少了对服务器的请求和网络上的数据传输量,提高了应用处理的速度。=3\*GB3③提供了许多快速方便的开发方法,使开发人员能用尽可能少的重复性工作完成各种不同的应用。利用项目模板和专家生成器可以很快建立项目的构架,然后根据用户的实际需要逐步完善。=4\*GB3④具有可重用性和可扩展性。开发人员不必再对诸如标签、按钮及对话框等Windows的常见部件进行编程。Delphi包含许多可以重复使用的部件,允许用户控制Windows的开发效果。=5\*GB3⑤具有强大的数据存取功能。它的数据处理工具BDE(BorlandDatabaseEngine)是一个标准的中介软件层,可以用来处理当前流行的数据格式,如xBase、Paradox等,也可以通过BDE的SQLLink直接与Sybase、SQLServer、Informix、Oracle等大型数据库连接。Delphi既可用于开发系统软件,也适合于应用软件的开发。=6\*GB3⑥拥有强大的网络开发能力,能够快速的开发B/S应用,它内置的IntraWeb和ExpressWeb使得对于网络的开发效率超过了其他任何的开发工具。=7\*GB3⑦Delphi使用独特的VCL类库,使得编写出的程序显得条理清晰,VCL是现在最优秀的类库,它使得Delphi在软件开发行业处于一个绝对领先的地位。用户可以按自己的需要,任意的构建、扩充、甚至是删减VCL,以满足不同的需要。=8\*GB3⑧从Delphi8开始Delphi也支持.Net框架下程序开发。当前DELPHI已经成为一个品牌,而不仅仅是一个开发平台或开发语言的名称。当前DELPHI产品已经由CodeGear公司继续发展,该公司是BORLAND公司的全资子公司。当前,CodeGear为广大开发者提供了DELPHIFORPHP,以高度可视化的方式全面支持面向对象的PHP网站开发,大大提高了PHP开发网站的代码复用程度,成为WEB应用开发的新利器。=2\*GB2⑵Oracle简介Oracle的关系数据库是世界第一个支持SQL语言的数据库。1977年,Lawrence领着一些同事成立了Oracle公司,他们的成功强力反击了那些说关系数据库无法成功商业化的说法。现在,Oracle公司的财产净值已经由当初的2000美元增值到了现在的年收入超过97亿美元。Oracle11g扩展了Oracle独家具有的提供网格计算优势的功能,可以利用它来提高用户服务水平、减少停机时间以及更加有效地利用IT资源,同时还可以增强全天候业务应用程序的性能、可伸缩性和安全性。11g降低了数据库升级以及其他硬件和操作系统更改的成本,显著简化了更改前后的系统测试以便您可以识别和解决问题。例如:利用DatabaseReplay,可以在数据库级别轻松捕获实际的生产负载并在您的测试系统上重新播放,这样您可以全面测试系统更改(包括关键的并发特性)的影响。Oracle数据库11g继续致力于(从Oracle9i数据库开始一直到Oracle数据库10g)显著简化和完全自动化DBA任务。Oracle数据库11g中的新功能包括:利用自学功能自动进行SQL优化系统全局区(SGA)和程序全局区(PGA)的内存缓存区的自动、统一调整新的advisor用于分区、数据恢复、流性能和空间管理针对自动数据库诊断监视器(ADDM)的增强,能够提供Oracle真正应用集群(OracleRAC)环境中的更好的性能全局视图以及改进的性能比较分析功能。Oracle数据库11g中新增的故障诊断功能使客户在发生错误后捕获OracleSupport所需的数据变得极为简单。这可以加速问题的解决,减少客户重现问题的需要。=3\*GB2⑶Delphi和Oracle数据库的连接方法Oracle是以高级结构化查询语言(SQL)为基础的大型关系数据库,是目前最流行的客户/服务器(CLIENT/SERVER)体系结构的数据库之一,目前被广泛应用于各类型企业的信息化管理中。数据库支持是开发环境的一个重要特性,很多程序员在数据库应用程序开发中都采用作为开发工具,来实现对数据库的访问和控制。Delphi数据库应用程序是通过数据库引擎来访问它们引用的数据源的。本文概括性的介绍在WindowsXP环境中连接Oracle数据库的3种方式,它们分别是BDE、ADO、DbExpress。ADO(ActiveXDataObjects)是Microsoft的高级接口,基于Microsoft的数据访问OLEDB技术而实现。本系统采用ADO方式连接Oracle数据库。2.需求分析需求陈述本系统拟在完成工资管理的同时,集成其他必要的功能,以保证系统的完整性和安全性。具体包括,员工基本信息管理、部门管理、当前工资及历史工资管理等。现对有关要求描述如下:①整体结构合理,风格一致,模块化结构,界面清晰,接口灵活,操作简便。②开发方法,文档规范化,便于管理,可扩充。③完善的数据输入,维护,输出。④自检性能高,用户误输、错输均有提示。⑤容错性能高,某个用户的操作错误不会引起整个系统的瘫痪,每一功能的操作都有信息提示以免重复操作,错误操作有警告,以便用户及时改正。可行性分析技术可行性技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,软硬件配置能否满足开发者需要等,这一特点非常适合计算机的特点,发挥计算机的数据处理速度快,准确率高的优势,现代计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件。通过对Delphi和Oracle的系统学习,已经基本掌握了开发本系统所需的技术和查阅文献的能力。对工资管理系统这一类的财务系统开发也有一定的认识,因此具备技术可行性。时间、设备可行性5周的时间足够开发一个满足中小型企业简单需求的工资管理系统,现有计算机的软硬件配置能够满足系统开发的要求,具备时间和设备的可行性。经济可行性基于企业的现有计算机及配套设备,建设MIS系统。不但能大大减少重复性的书面报告,降低办公费用,提高办公室效率,而且能提高检测数据效用,为企业提供很方便。由于企业工资管理系统是一个比较小型的系统,开发工具也均可免费使用,网络资源丰富,只需较少的花费在技术文献上,开发成本较低,因此,开发本系统具有经济上的可行性。3.概要设计系统功能结构设计工资管理系统工资管理系统数据字典维护工资数据当月报表历史数据系统信息部门信息管理员工信息管理基本数据每月填报每月存档当月报表当月汇总部门月报月汇总表图功能模块图功能序号功能名称功能说明1部门信息管理包含对部门信息的增加、删除2员工信息管理包含对员工信息的增加、删除3基本工资数据查看和修改基本工资信息4活动工资数据填报每月活动工资数据5每月工资存档每月工资填报完毕后存储数据6当月报表查看当月各部门工资表,打印工资条7当月汇总表查询当月各部门工资汇总信息8历史部门月报查询历史年月的部门工资信息9历史月汇总表查询指定部门制定年月的历史工资汇总信息10系统信息系统与作者信息等表功能说明表设计角色:财务管理人员数据库设计数据库逻辑结构字段名称类型宽度约束说明BhVARCHAR23Pk部门编号McVARCHAR210部门名称表部门信息表(bm)字段名称类型宽度约束说明BmVARCHAR210部门BhVARCHAR23编号XmVARCHAR210姓名Z1NUMBER(8,2)岗位资Z2NUMBER(8,2)基本资Z3NUMBER(8,2)效益资J1NUMBER(8,2)加班J2NUMBER(8,2)金额J3NUMBER(8,2)夜班J4NUMBER(8,2)金额Z4NUMBER(8,2)独子Z5NUMBER(8,2)月效资Z6NUMBER(8,2)技师补Z7NUMBER(8,2)医务补Z8NUMBER(8,2)护10%Z9NUMBER(8,2)护龄Z10NUMBER(8,2)女工卫Z11NUMBER(8,2)厂扣Z12NUMBER(8,2)应得资K1NUMBER(8,2)房租金KNUMBER(8,2)水电暖K3NUMBER(8,2)公积金Z13NUMBER(8,2)保险RqVARCHAR2200日期KbxNUMBER(8,2)实发工资表职工工资信息表(ry)字段名称类型宽度约束说明BmVARCHAR21部门BhVARCHAR23编号XmVARCHAR210姓名Z1NUMBER(8,2)岗位资Z2NUMBER(8,2)基本资Z3NUMBER(8,2)效益资J1NUMBER(8,2)加班J2NUMBER(8,2)金额J3NUMBER(8,2)夜班J4NUMBER(8,2)金额Z4NUMBER(8,2)独子Z5NUMBER(8,2)月效资Z6NUMBER(8,2)技师补Z7NUMBER(8,2)医务补Z8NUMBER(8,2)护10%Z9NUMBER(8,2)护龄Z10NUMBER(8,2)女工卫Z11NUMBER(8,2)厂扣Z12NUMBER(8,2)应得资K1NUMBER(8,2)房租金KNUMBER(8,2)水电暖K3NUMBER(8,2)公积金Z13NUMBER(8,2)保险RqVARCHAR2200日期KbxNUMBER(8,2)实发工资表历史数据表(sj)数据库E-R图部门部门员工工作工资资资金暖金保险日期金额夜班独子金额加班资资资补补厂扣卫领取n11n图工资管理系统实体关系图Oracle数据库的使用在Oracle中创建用户,如图所示图创建用户在Oracle中建表,如图所示图建表4.详细设计主界面设计由于本系统是针对财务管理人员角色设计开发的,故未进行权限的设定。在主界面显示每个模块的入口,点击即可进入。在状态栏显示系统日期和登录系统时间。系统主界面如图所示:图系统主界面该模块主要代码:procedure(Sender:TObject);ext:='系统日期:'+datetostr(date);[1].Text:='系统时间:'+timetostr(time);end;procedure(Sender:TObject);alue:=;('y1').Value:=;TryExecSql;exceptshowmessage('服务器连接error,程序退出!');;end;end;end;procedure(Sender:TObject);beginifmessagedlg('如果系统中存在本部门数据不能删除,确要删除吗',mtconfirmation,[mbyes,mbno],0)=mrnothenexit;;'deletefrombm');'where(bhlike:bh)');'bh').Value:=+'%';Try;exceptshowmessage('服务器连接error,程序退出!');;end;;end;procedure(Sender:TObject);vari:integer;begin;'Selectbh,mcFrombm');'orderbybh');Try;exceptshowmessage('服务器连接error,程序退出!');;End;:=+1;:=2;ForI:=0ToDo[I].Clear;[0,0]:='编号';[1,0]:='名称';ForI:=1ToDoBegin[0,i]:=('bh').AsString);[1,i]:=('mc').AsString);;End;;end;procedure(Sender:TObject;varAction:TCloseAction);begin(Sender:TObject);vari:integer;begin:=rgb(220,170,140);fori:=1to9do'0'+inttostr(i));fori:=10to50do:=rgb(180,130,100);end;员工信息维护:图员工信息维护员工信息维护核心代码:procedure(Sender:TObject);begin:=trim;if(length=0)or(length=0)or(length=0)thenbeginshowmessage('编号与单位名称不能为空!');exit;end;withQ1dobeginClose;;('InsertIntory(bm,bh,xm)');('Values(:y0,:y1,:y2)');('y0').Value:=;('y1').Value:=;('y2').Value:=;TryExecSql;exceptshowmessage('服务器连接error,程序退出!');;end;end;end;procedure(Sender:TObject);beginifmessagedlg('如果系统中存在本人工资数据不能删除,确要删除吗',mtconfirmation,[mbyes,mbno],0)=mrnothenexit;:=trim;if(length<2)thenexit;;'deletefromry');'where((bhlike:bh)and(bmlike:bm))');'bh').Value:=+'%';'bm').Value:=+'%';Try;exceptshowmessage('服务器连接error,程序退出!');;end;;end;procedure(Sender:TObject);vari:integer;begin;'Selectbh,xmFromry');'where(bmlike:bm)');'orderbybh');'bm').Value:=+'%';Try;exceptshowmessage('服务器连接error,程序退出!');;End;'编号姓名');ForI:=1ToDoBegin''+('bh').AsString+''+('xm').AsString);;End;;end;procedure(Sender:TObject);vari:integer;begin;'Selectbh,xmFromry');'where(bmlike:bm)');'orderbybh');'bm').Value:=+'%';Try;exceptshowmessage('服务器连接error,程序退出!');;End;'编号姓名');ForI:=1ToDoBegin''+('bh').AsString+''+('xm').AsString);;End;;:='';:='';end;procedure(Sender:TObject;varAction:TCloseAction);begin(Sender:TObject);vari:integer;begin:=rgb(220,170,140);;'SelectmcFrombm');'orderbybh');Try;exceptshowmessage('服务器连接error,程序退出!');;End;ForI:=1ToDoBegin'mc').AsString);;End;;fori:=1to9do'0'+inttostr(i));fori:=10to99do工资数据模块本模块包括月基本工资数据、月活动工资填报、月数据存档三个子模块,分别用于查看修改月基本工资数据,填报月活动工资数据以及对填报好的所有数据存档。月基本数据界面设计如图所示:图月基本数据核心代码:procedure(Sender:TObject);vari,j,k:integer;s:string;beginifmessagedlg('确认更新数据吗',mtconfirmation,[mbyes,mbno],0)=mrnothenexit;if=''thenexit;k:=0;fori:=1todoforj:=1to10dobegintry[j,i]:=floattostr(strtofloat[j,i]));exceptshowmessage('第'+inttostr(i)+'行第'+inttostr(j)+'列有非法数字');k:=k+1;end;end;ifk>0thenexit;s:='';fori:=1todobegins:=[0,i];;'updaterysetz1=:z1,z2=:z2,z3=:z3,z4=:z4,z5=:z5,z6=:z6,');'z7=:z7,z8=:z8,z9=:z9,z10=:z10,z11=:z11,k3=:k3,kbx=:kbx');'where(bmlike:bm)and(bhlike:bh)');'z1').Value:=strtofloat[1,i]);'z2').Value:=strtofloat[1,i])*;'z3').Value:=strtofloat[1,i])*;'z4').Value:=strtofloat[2,i]);'z5').Value:=strtofloat[3,i]);'z6').Value:=strtofloat[4,i]);'z7').Value:=strtofloat[5,i]);'z8').Value:=strtofloat[6,i]);'z9').Value:=strtofloat[7,i]);'z10').Value:=strtofloat[8,i]);'z11').Value:=-(strtofloat[1,i])*;sfloat:=0;'k3').Value:=strtofloat[9,i]);'bm').Value:=copy,3,20)+'%';'bh').Value:=copy(s,1,2)+'%';'kbx').Value:=strtofloat[10,i]);Try;exceptshowmessage('数据库更新error重新点击“更新”按钮!');exit;end;end;showmessage('操作OK!')end;procedure(Sender:TObject);vari:integer;begin;'Selectbh,xm,z1,z4,z5,z6,z7,z8,z9,z10,k3,kbxFromry');'where(bmlike:bm)');'bm').Value:=copy,3,20)+'%';'orderbybh');Try;exceptshowmessage('数据库连接error,程序退出!');;End;:=+1;:=11;ForI:=0ToDo[I].Clear;[0,0]:='编号姓名';[1,0]:='岗位资';[2,0]:='计生补';[3,0]:='月效资';[4,0]:='技师补';[5,0]:='医务补';[6,0]:='护10%';[7,0]:='教护龄';[8,0]:='女工卫';[9,0]:='公积金';[10,0]:='保险';sString)+('xm').AsString));[0,i]:=('bh').AsString+('xm').AsString;[1,i]:=floattostr('z1').Asfloat);[2,i]:=floattostr('z4').Asfloat);[3,i]:=floattostr('z5').Asfloat);[4,i]:=floattostr('z6').Asfloat);[5,i]:=floattostr('z7').Asfloat);[6,i]:=floattostr('z8').Asfloat);[7,i]:=floattostr('z9').Asfloat);[8,i]:=floattostr('z10').Asfloat);[9,i]:=floattostr('k3').Asfloat);[10,i]:=floattostr('kbx').Asfloat);;End;;end;procedure(Sender:TObject;varAction:TCloseAction);begin(Sender:TObject);vari:integer;begin:=rgb(255,255,255);;'Selectbh,mcFrombm');'orderbybh');Try;exceptshowmessage('服务器连接error,程序退出!');;End;ForI:=1ToDoBegin'bh').AsString+('mc').AsString);;End;;end;每月活动工资填报图每月数据填报该部分核心代码:procedure(Sender:TObject);vari,j,k:integer;s:string;beginForI:=1ToDo[6,i]:=;ifmessagedlg('确认更新数据吗',mtconfirmation,[mbyes,mbno],0)=mrnothenexit;iftrim=''thenexit;k:=0;fori:=1todoforj:=2to5dobegintry[j,i]:=floattostr(strtofloat[j,i]));exceptshowmessage('第'+inttostr(i)+'行第'+inttostr(j)+'列有非法数字');k:=k+1;end;end;ifk>0thenexit;s:='';fori:=1todobegins:=[0,i];;'updaterysetj1=:j1,j2=:j2,j3=:j3,j4=:j4,');'k1=:k1,k2=:k2,rq=:rq');'where(bmlike:bm)and(bhlike:bh)');'j1').Value:=strtofloat[2,i]);'j2').Value:=strtofloat[2,i])*strtofloat[1,i])/30;'j3').Value:=strtofloat[3,i]);'j4').Value:=strtofloat[3,i])*;'k1').Value:=strtofloat[4,i]);'k2').Value:=strtofloat[5,i]);'rq').Value:=[6,i];'bm').Value:=copy,3,20)+'%';'bh').Value:=copy(s,1,2)+'%';Try;exceptshowmessage('数据库更新error重新点击“更新”按钮!');exit;end;end;showmessage('操作OK!')end;procedure(Sender:TObject);vari:integer;begin;'Selectbh,xm,z1,j1,j3,k1,k2,rqFromry');'where(bmlike:bm)');'bm').Value:=copy,3,20)+'%';'orderbybh');Try;exceptshowmessage('数据库连接error,程序退出!');;End;ForI:=0ToDo[I].Clear;:=+1;:=7;[0,0]:='编号姓名';[1,0]:='岗位资';[2,0]:='加班';[3,0]:='夜班';[4,0]:='房租';[5,0]:='水电暖';[6,0]:='日期';ForI:=1ToDoBegin[0,i]:=('bh').AsString+('xm').AsString;[1,i]:=floattostr('z1').Asfloat);[2,i]:=floattostr('j1').Asfloat);[3,i]:=floattostr('j3').Asfloat);[4,i]:=floattostr('k1').Asfloat);[5,i]:=floattostr('k2').Asfloat);[6,i]:=('rq').Asstring;;End;;end;procedure(Sender:TObject;varAction:TCloseAction);begin(Sender:TObject);vari:integer;Year,Month,Day:word;beginDecodeDate(Date,Year,Month,Day);:=inttostr(year)+'-'+inttostr(Month);:=rgb(220,170,140);;'Selectbh,mcFrombm');'orderbybh');Try;exceptshowmessage('服务器连接error,程序退出!');;End;ForI:=1ToDoBegin'bh').AsString+('mc').AsString);;End;;end;数据存档界面与代码:图数据存档该部分核心代码:procedure(Sender:TObject);vari,x,y:integer;s:string;begin;'deletefromsj');'where(rqlike:rq)');'rq').Value:=+'%';Try;exceptshowmessage('存档失败,程序退出!');exit;end;;'Selectcount(*)');'Fromry');Try;exceptexit;End;x:=[0].asinteger;showmessage('本单位共'+inttostr(x)+'人');;'Selectcount(*)');'Fromry');'where(rqlike:y1)');'y1').Value:=+'%';Try;exceptexit;End;y:=[0].asinteger;showmessage('当前月数据共'+inttostr(y)+'条');ifx<>ythenbeginshowmessage('当月数据未填报完毕,不许存档!');exit;end;;'Select*Fromry');Try;exceptshowmessage('操作失败,请重来!');exit;End;forI:=1todoBEGIN'InsertIntosj(bm,bh,xm,z1,z2,z3,z4,z5,z6,z7,z8,z9,z10,z11,z12,z13,j1,j2,j3,j4,k1,k2,k3,rq,kbx)');'Values(:y0,:y1,:y2,:y3,:y4,:y5,:y6,:y7,:y8,:y9,:y10,:y11,:y12,:y13,:y14,:y15,:y16,:y17,:y18,:y19,:y20,:y21,:y22,:y23,:y24)');'y0').Value:=('bm').AsString;'y1').Value:=('bh').AsString;'y2').Value:=('xm').AsString;'y3').Value:=('z1').AsFloat;'y4').Value:=('z2').AsFloat;'y5').Value:=('z3').AsFloat;'y6').Value:=('z4').AsFloat;'y7').Value:=('z5').AsFloat;'y8').Value:=('z6').AsFloat;'y9').Value:=('z7').AsFloat;'y10').Value:=('z8').AsFloat;'y11').Value:=('z9').AsFloat;;'y12').Value:=('z10').AsFloat;'y13').Value:=('z11').AsFloat;'y14').Value:=('z12').AsFloat;'y15').Value:=('z13').AsFloat;'y16').Value:=('j1').AsFloat;'y17').Value:=('j2').AsFloat;'y18').Value:=('j3').AsFloat;'y19').Value:=('j4').AsFloat;'y20').Value:=('k1').AsFloat;'y21').Value:=('k2').AsFloat;'y22').Value:=('k3').AsFloat;'y23').Value:=('rq').AsString;'y24').Value:=('kbx').AsFloat;Try;except;'deletefromsj');'where(rqlike:rq)');'rq').Value:=+'%';Try;exceptshowmessage('存档失败,程序退出!');exit;end;showmessage('存档失败,程序退出!');exit;end;;END;showmessage('当月数据存档OK!');end;当月报表模块本模块包含当月报表与当月汇总表两个子功能模块,当月报表用于打印某一个部门的工资表或工资条,月汇总表可以查看一个或几个部门的月工资汇总信息。界面设计如图,图所示。图当月报表图月汇总表核心代码:procedure(Sender:TObject);vari,j:integer;yf,sf:real;beginyf:=strtofloat[i,3])+strtofloat[i,7])+strtofloat[i,9]);yf:=yf+strtofloat[i,10])+strtofloat[i,11])+strtofloat[i,12]);yf:=yf+strtofloat[i,13])+strtofloat[i,14])+strtofloat[i,15]);yf:=yf+strtofloat[i,16])+strtofloat[i,17]);lear;:=*2;:=23;k:=0;fori:=1todobeginforj:=0to22dobegin[j,k]:=[j,0];[j,k+1]:=[j,i];end;k:=k+2;end;历史数据模块本模块包含历史月报表与历史汇总表两个子功能模块,用于查询一个多多个部门的历史工资汇总。如图,图所示。图历史月报表图历史汇总表核心代码:procedure(Sender:TObject);varExcelApp,MyWorkbook:oleVariant;i,j,h:integer;s:string;begintryExcelApp:=CreateOleObject('');MyWorkBook:=CreateOleobject('');exceptonExceptiondoraise('无法运行EXCEL!请确认已安装!')end;:=true;ange['A1:W1'].Merge(True);ange['A1:J2'].HorizontalAlignment:=$FFFFEFF4;ells[1,1].Value:=;ells[i,j+1].Value:=[j,0];forh:=1todoforj:=0todoiftrim[j,h])<>''then[1].Cells[h+2,j+1].Value:=[j,h];olumns[1].ColumnWidth:=4;[1].Columns[8].ColumnWidth:=4;[1].Columns[3].ColumnWidth:=5;ange['A1:w2'].:=clBlue;ange['A1:F1'].:='楷体';ange['A1:J1'].:=18;ange[s].:='仿宋';[1].Range[s].:=12;fori:=0todoif[i]thenbegin[0,j]:=copy[i],1,2);[1,j]:=copy[i],3,20);j:=j+1;end;[1,]:='合计';fori:=1todobegin;'Selectsum(z1),sum(z2),sum(z3),');'sum(j1),sum(j2),sum(j3),sum(j4),');'sum(z4),sum(z5),sum(z6),sum(z7),sum(z8),');'sum(z9),sum(z10),sum(z11),sum(z12),');'sum(k1),sum(k2),sum(k3),sum(kbx),sum(z13)');'Fromry');'where(bmlike:y1)and(rqlike:y2)');'y1').Value:=[1,i]+'%';
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 技术协助与专项服务承诺书(3篇)
- 艺术作品修复技术进步承诺函(8篇)
- 2026年戒烟成功者经验分享知识付费平台可行性
- 2026年学校食堂食品加工设备操作规程
- 2026年消防应急通信设备操作与火场通信保障
- 2026年集团财务总监资金集中管控与运作能力
- 技术合作协议修订细节商洽函(8篇)
- 2026年结核病防治知识校园讲座总结
- 2026年职业技能鉴定考试(制冷工-高级)历年参考题库含答案详解
- 居民自治组织应对社区内下水道堵塞事情预案
- 2026年中考历史考前冲刺:中国+世界(古代史|近代史|现代史) 小论文范文汇编
- 2025版《CSCO前列腺癌诊疗指南》全文
- 2026年中级社会工作者《社会工作综合能力》考试押题密卷带答案详解(模拟题)
- 焊接质量检测技术全套课件
- GB/T 32580.4-2026轨道交通地面装置高压交流开关设备及互感器第4部分:电压互感器
- DBJ50-T-157-2022房屋建筑和市政基础设施工程施工现场从业人员配备标准
- 教你填《广东省普通高中学生档案》精编版
- 2023年贵州省黔西南州兴义市桔山街道社区工作者招聘笔试题库及答案解析
- 天使爱美丽-电影剧本法语版
- 《简单教数学》读书-分享-
- 高标准农田建设监理评估报告
评论
0/150
提交评论