信息管理系统

目录

一、可行性分析...................................... 5

二、系统分析部分.................................... 9 1)业务流程图.................................. 9

2)数据流程图.................................. 9

3)功能分析图 ..................................10

4)数据字典 ...................................11

5)数据加工处理的描述 ...........................11

6)管理信息系统流程设想图(新系统模型).............13

三、系统设计部分 ...................................14

1)功能结构图设计...............................14

2)新系统信息处理流程设计........................14

四、系统实施部分 ....................................16 1)程序框图....................................16 2)源程序.....................................18

5)系统使用说明书...............................31

五、附录或参考资料...................................32

工资管理信息系统课程设计

引 言

本课题将设计一个应用与事业单位的工资管理系统。随着国民经济的急速发展,事业单位的工资应用体系也变的越来越复杂,单位中,部门、职务、工作效益等与工资管理有关的信息随之急剧增加。在这种情况下单靠人工来处理员工的工资不但要消耗大量的人力和物力,而且极容易出错。

该系统的具体任务就是设计一个事业单位工资的数据库管理系统,由计算机来代替人工执行一系列工作,诸如增加员工添加删除、工资设置、修改、查询、统计等操作。这样就使财务人员可以快捷高效地完成工资管理任务。

1 .应用背景

人类社会正从工业时代阔步迈向信息时代,人们越来越重视信息技术对传统产业的改造,信息化水平的高低已经成为衡量一个单位现代化水平的高低。在这种环境下,传统的手工工资管理已经远远落后于信息化管理。

随着计算机技术的飞速发展,计算机在信息管理中应用的普及,利用计算机实现人事工资的管理势在必行。利用计算机管理工资信息,是适应现代化的要求、推动管理制度走向科学化、规范化的必要条件;工资管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,一般不允许出错,如果实行手工操作,每月发放工资须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,利用计算机进行工资发放工作,不仅能够保证工资核算准确无误、快速输出,而且还可以利用计算机对有关工资的各种信息进行统计,服务于财务部门其他方面的核算和财务处理,同时计算机具有着手工管理所无法比拟的优点. 例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事工资管理的效率, 也是管理科学化、正规化, 与世界接轨的重要条件。

该系统的具体任务就是设计一个工资的数据库管理系统,由计算机来代替人工执行一系列工作,诸如增加员工添加删除、工资设置、统计、发放、修改、查询等操作。这样就使财务人员可以快捷高效地完成工资管理任务。

设计的指导思想是一切为用户着想,界面简洁,操作尽量简单明了。计算机的资源是受到限制的,因此充分利用了Visual Basic的功能,在尽可能地减少对系统资源的占用的前提下,设计出功能丰富的软件。

2. 课题研发的目的与意义

工资管理是一项琐碎、复杂而又十分细致的工作,一般不允许发生错误。手工进行工资发放工作,需要反复地进行抄写、计算,不仅花费财务人员大量的时间,而且往往由于抄写不慎,出现张冠李戴,或者由于计算的疏忽,出现工资发放错误的现象。同时工资的发放具有较强的时间限制,必须严格按照单位规定的时间完成计算和发放工作。

正是工资管理的这种重复性、规律性、时间性,使得工资管理计算机化成为可能。计算机进行工资发放工作,不仅能够保证工资核算正确无误、快速输出,而且还可以利用工资数据库对有关工资的各种信息进行统计,服务于财务部门其他方面的核算和财务处理,使会计人员从繁重的手工制作中解脱出来, 提高了会计信息的及时性、正确性、全面性。大大提高了管理水平和管理效率,产生了巨大的经济效益和社会效益。

信息时代计算机技术的发展给整个社会的生活、工作方式带来了一次革命。传统意义上的工资管理的形式和内涵都在发生着本质的变化。以前那种一个会计、一个账本的工资管理形式已经可以被计算机及财务软件所代替。计算机以及相关软件的介入使得工资的管理变得科学化、透明化、简单化。因此,根据不同单位的自身特点开发适合自己的工资管理软件是显得十分必要的。

工资管理软件隶属于财务软件(又称会计软件)。中国的财务软件起步于70年代末,经历了从自主开发、委托定点开发向标准化、通用化、商品化、专业化发展几个阶段。三十年来财务软件市场规模化、产业化发展迅速。

近年来随着市场竞争的日趋激烈,财务软件模式转向集中式管理;一些行政单位为适应财政预算管理的变革,开始对财务实行集中式管理。可以说集中式财务管理在某些单位来说是一种管理发展的趋势。这种管理模式在以前因网络、通讯技术的限制而无法实施,随着互联网技术的发展,基于网络计算,支持集中管理模式的财务软件开始出现在市场,并越来越受到希望采取集中财务管理模式的单位所喜爱。所以,在我国各级事业单位中他们更需要有一个方便、快捷、安全、透明的工资管理软件。

3. 信息系统介绍

管理信息系统就是我们常说的MIS (Management Information System ),在强调管理,

强调信息的现代社会中它越来越得到普及。MIS 是一门新的学科,它跨越了若干个领域,比如管理科学、系统科学,运筹学、统计学以及计算机科学。在这些学科的基础上,形成信息收集和加工的方法,从而形成一个纵横交 织的系统。

它是一个不断发展的新型学科。管理信息系统的定义随着计算机技术和通讯技术的进步也在不断更新。在现阶段普遍认为,管理信息系统是一个由人和计算机或其他信息处理手段组成的并用于管理信息的系统。管理信息系统能进行信息收集、传输、加工、保存、维护和使用。它能实测国民经济部门或不同单位的各种运行情况,能利用过去的数据预测未来,能从全局出发辅助决策,能利用信息控制国民经济部门或不同单位的活动,并帮助实现其规划目标。管理信息系统是一门综合了管理科学、系统理论、计算机科学的系统性边缘学科。

4. 管理信息系统概述

20世纪,随着全球经济的蓬勃发展,众多经济学家纷纷提出了新的管理理论。20世纪50年代,西蒙提出管理依赖于信息和决策的思想。同时期的维纳发表了控制论,他认为管理是一个控制过程。1958年,盖尔写到:“管理将以较低的成本得到及时准确的信息,做到较好的控制。”这个时期,计算机开始用于会计工作,出现数据处理一词。

1970年,Walter T.Kennevan给刚刚出现的管理信息系统一词下了一个定义:“以口头或书面的形式,在合适的时间向经理、职员以及外界人员提供过去的、现在的、预测未来的有关企业内部及其环境的信息,以帮助他们进行决策。”在这个定义里强调了用信息支持决策,但并没有强调应用模型,没有提到计算机的应用。

1985年,管理信息系统的创始人,明尼苏达大学的管理学教授Gordon B.Davis给了管理信息系统一个较完整的定义,即“管理信息系统是一个利用计算机软硬件资源,手工作业,分析、计划、控制和决策模型以及数据库的人-机系统。它能提供信息支持企业或组织的运行、管理和决策功能。”这个定义全面地说明了管理信息系统的目标、功能和组成,而且反映了管理信息系统在当时达到的水平。

管理信息系统起初应用于最基础的工作,如打印报表、计算工资、人事管理等,进而发展到企业财务管理、库存管理等单项业务管理,这属于电子数据处理(EDP ,Electronic Data Processing)系统。当建立了企业数据库,有了计算机网络从而达到数据共享后,从系

统观点出发,实施全局规划和设计信息系统时,就达到管理信息系统的阶段。随着计算机技术的进步和人们对系统的需求进一步提高,人们更加强调管理信息系统能否支持企业高层领导的决策这一功能,更侧重于企业外部信息的收集、综合数据库、模型库、方法库和其他人工智能工具能否直接面向决策者,这是决策支持系统(DSS ,Decision Support System )的任务。

近20年间,国外大公司出现了3种变化:

● 抓管理着重于建立MIS 系统,使管理技术走向成熟。

● 信息是决策的依据,MIS 随时为经理们提供信息服务。

● 经理通过MIS 使其经营计划和具体的业务活动联系在一起。

由于以上的变化,MIS 应用得到了迅速发展。不仅大中型企业普遍建立了自己的MIS ,一些中小企业也不例外,普遍建立了公用数据网络,尤其是近年来Internet 的飞速发展,Intranet 技术得到广泛应用,为企业MIS 提供了良好的支持环境。从国际技术发展趋势看,20世纪90年代出现了几种全新的管理技术,相应的MIS 开发技术在20世纪90年代也有了新的发展。

1. 信息综合集成

MIS 在计算机网络和分布式数据库管理系统的支持下,与企业其他的系统,如OA 、CAD 、CAM 、CAPP 、在线数据采集系统集成,形成制造业的计算机集成制造系统,或者一般企事业单位的综合信息系统(CIIS ,Computer Integrated Information System ),实现办公、管理、计算、设计、控制、监测,以及决策等多功能综合。

2. Internet/Intranet

因特网(Internet )已经被广大用户所熟悉,而以因特网技术为基础的企业内部信息系统——Intranet 既可以通过接入的方式成为因特网的一部分,也可以自成体系,实现企业内部的管理。它可以克服传统MIS 存在的系统封闭、用户界面形式不统一、多种软件版本并存、维护移植困难等问题,为新一代企业MIS 的开发注入了强劲的活力。

3. 先进的软件开发工具

为了缩短软件开发的周期,提高软件的质量和标准化水平以及软件的可维护性,越来越多的软件开发公司使用先进的软件开发工具或计算机辅助软件工程工具(CASE ,

Computer-Aided Software Engineering),如各种可视化建模工具、系统分析和设计工具、软件质量测试工具、软件文档建立和管理工具等。还有各种MIS 开发平台和代码生成

工具,这些工具极大地方便了MIS 的开发。

4. 多媒体技术

随着计算机性能的提高,MIS 采用越来越多的多媒体技术,用图形、图像、声音替代原来单调的字符形式,给用户提供了一个更加生动真实的应用环境。

会计信息系统也称为电算化会计系统,它是以提供会计信息为目的的信息系统。会计信息系统主要由帐务处理、报表处理、工资核算、固定资产核算、应收应付核算、材料核算、销售核算、成本核算等子系统组成。工资核算信息系统是会计信息系统中的重要组成部分。

5. 工资管理信息系统的最终目的

工资管理信息系统的最终目的是为管理、决策服务,达到这个目标的手段无外乎以下几个方面:一是利用计算机可快速整理、传输、处理各种数据的特点,处理会计业务,从而更为全面、更为准确的提供管理、决策所需的财务信息;二是利用计算机处理数据速度快的特点,处理会计业务,从而更为快捷地提供各种管理、决策所需地财务信息;三是利用计算机对数据分类整理的优点,按管理的要求,对会计核算数据进行各种加工、处理,从而筛选出管理所需的信息;四是会计人员从繁杂的手工核算工作中解脱出来,利用他们懂财务、了解情况的优势,参与分析、参与管理、参与决策。

一、可行性分析

可行性分析的任务是明确开发应用项目的必要性和可行性。必要性来自实现开发任务的迫切性,而可行性则取决于实现应用系统的资源和条件。这项工作建立在初步调查的基础上。

系统的可行性研究在系统的整个过程中占有很重要的地位,它决定所选项目是不是可能实现或值得去实现。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。它主要包括技术、经济、运行、法律等方面的可行性:现有技术是否能够实现本系统的设计开发;经济上是否值得去实现;是否能够在一般平台下运行等。

技术可行性是指开发一个新系统所需要的技术是否具备,如支持新系统的软硬件功能以及技术人员的数量和水平。本系统是进行职工工资处理。结合实际需要,经过仔细斟酌,我选择了Microsoft Visual Basic 6.0 作为开发用户界面软件,它综合了可视化开发环境的易用性、32位优化编译技术的快速和强大、有数据引擎提供的可伸缩性等特点;选Microsoft Office Access 2000用来开发后台数据库,它具有很好的安全性与兼容性;而

且本系统对硬件的要求不高,在现有技术基础上一定能实现本系统。

经济可行性是评价一个计算机信息系统是否可行的最基本的一种方法,是对信息系统解决方案的成本有效性的量度。信息系统的开发是一种投资,因此对于用户来说,他首先关心的是:是否值得开发一个信息系统。而在效益方面,他们首先关心的是:当他们使用了这套管理信息系统后,工资处理的效率是否提高了,人力资源是否节省了。而本系统的设计和开发事实上恰好能满足他们的这些要求。还有该系统对硬件的要求不高,装有win98系统以上的计算机一般就能运行系统,所以在系统运行方面也不存在问题。

1. 开发方法

在开发方法的选择上,我选择了自顶向下的开发策略:自顶向下的开发策略是从工资管理的整体进行设计,逐步从抽象到具体,从概要设计到详细设计,体现结构化的设计思想。

自顶向下是强调由全局到局部、由长远到近期、由上层到下层,从探索、研制一种合理的信息流的模型出发,设计出适合于这种信息流的信息系统。子模块通过信息流确定,而且尽可能的要求每个局部模块优化建立在全局优化的指导下。

第一层首先分析工资管理信息系统的系统环境、系统边界、系统的总目标,然后分析系统完成总目标所应具有的功能以及实现这些功能的信息需求。

第二层是模块级。根据系统的目标、功能以及需求,导出各个模块的目标、功能以及信息需求。同理,逐级地推演更下一层地模块,即由上而下、由粗而细、逐级分解、逐层细化。

“自顶向下”是一种演绎式的分析方法,是一种整体性、系统性强的分析方法。其具体步骤如下:

分析工资核算的目标、环境和系统运行的条件;

根据总体目标确定各项具体功能;

确定需要决策的内容;

根据每项决策的内容确定所需要的信息;

为整个系统规定各个功能模块;

为要研制的各个功能模块和数据库规定先后顺序。

该方法的优点是对整个计划来讲,逻辑性很强;其缺点是难以制定这样大的方案。为了解决这一矛盾,我在参考了现有工资管理信息系统的基础上,进行总体规划。

2. 开发环境介绍

(1) 数据库技术介绍

数据库技术作为数据管理技术,是计算机软件领域的一个重要分支,产生于60年代末。现已形成相当规模的理论体系和实用技术。优秀的数据库设计是应用成功的基石。万万丈高楼平地起,数据库设计如同高楼的基石,是开发高品质应用的前提。

(2) 数据库的体系结构

数据的体系结构分成三级:内部级(Internal ), 概念级(Conceptual)和外部级

(External )。这个三级结构有时也称为“三级模式结构”。

外部级:最接近用户,是单个用户所能看到的数据特性。单个用户使用的数据视图的描述称为“外模式”。

概念级别:涉及到所有用户的数据定义、是全局的数据视图。全局视图的描述称为“概念模式”。

内部级:最接近于物理存储设备,涉及到实际数据存储的结构物理存储数据视图的描述称为“内模式”。

数据库的三级模式结构是数据的三个抽象级别。它把数据的具体组织留给DBMS 去做,用户只要抽象地处理数据,而不必关心数据在计算机中的表示和存储,这样就减轻了用户使用系统的负担。

(3) 数据库管理系统(DBMS )

数据库管理系统(DBMS )是指数据库系统中管理数据的软件系统。DBMS 是数据库系统的核心组成部分。对数据库的一切操作,包括定义、查询、更新及各种控制,都是通过DBMS 进行的。

在不同的计算机系统中,由于缺乏统一的标准,即使同种数据模型的DBMS ,它们在用户接口、系统功能方面也常常是不相同的。

用户对数据库进行操作,是由DBMS 把操作从应用程序带到外部级、概念级、再导向内部级,进而操作存储器中的数据。DBMS 的主要目标,是使数据作为一种可管理的资源处理。

DBMS 的主要功能为:

数据库定义功能:DBMS 提供数据定义语言(DDL )定义数据库的三级结构,包括外模式、概念模式、内模式及基相互之间的映象,定义数据的完整性、安全控制等约束。因此,在DBMS 中应包括DDL 的编译程序。

数据库的操纵功能:DBMS 提供数据操纵语言(DML )实现对数据库中数据的操作。基

本的数据操作分成两类四种:检索(查询)更新(插入、删除、修改)

数据库的保护功能:数据库中的数据是信息社会的战略资源,对数据的保护是至关重要的大事。DBMS 对数据库的保护主要通过四个方面实现:

数据库恢复:数据库被破坏或数据不正确时,系统有能力把数据库恢复到正确的状态。 数据库的并发控制:DBMS 的并发控制子系统能防止错误发生,正确处理好多用户、多任务环境下的并发操作。

数据库的完整性控制:保证数据库中数据及语义的正确性和有效性,防止任何对数据造成错误的操作。

数据库的安全性控制:防止未经授权的用户蓄谋或无意地存取数据库中的数据,以免数据的泄露、更改或破坏。

数据库的存储管理:把各种DML 语句转换成低层的文件系统命令,起到数据的存储、检索和更新的作用。

(4) Access 数据库介绍

Access 数据库软件是一个关系型数据库管理系统,它为用户提供了数据库管理的工具集和应用程序的开发环境。Microsoft Office 应用软件在办公自动化方面已得到广泛的应用,而Access 2000是Office 2000系列中的重要组件之一,它是关系型数据库,特别是中小型数据库应用领域中最通用的数据库软件。

Access 是一种数据库管理系统(DBMS ), 它同Oracle 、DBASE 和Foxpro 等数据库软件系统一样,用于构造数据库应用程序并实行对数据库的统一管理。用户可以通过Access 提供的开发环境及工具集方便地构建数据库应用程序,大部分是直观地可视化地操作,无需编写程序代码便可方便地完成数据库的管理工资

它的优点是:

1. ACCESS 是真正的关系型数据库管理系统。ACCESS 具有主关键字和外部关键字定义,提供了数据库的完整性应用,避免数据遭到不合理的删除或修改。ACCESS 数据库还具有数据确认规则,以免输入的数据是非精确数据。它支持的字段类型有数字 文本、日期、货币、备注、是/否及OLE 对象和空值等。可以说,ACCESS 数据库软件提供了真正的关系型数据库管理。

2. ACCESS是面向数据库开发人员和最终用户的数据库管理系统。ACCESS 提供了

VBA(VISUAL BASIC FOR APPLICATION)语言。对于数据库开发人员。利用该语言以及系统提供的可视化和向导,便可以设计出具有一定规模、功能强大的数

据库应用系统。对于数据库的最终用户,并不需要编程,就可利用这些可视化工具和

向导进行简单的数据库设计和管理。

3.ACCESS 是开放式的数据库管理系统。

4.ACCESS 内置了大量的内部函数。ACCESS 软件包含了大量的内部函数,包括数据库、数学、财务、日期、时间、字符串等函数。

5.可视化的操作工具和方便的向导。

(5) Visual basic编程语言简介

Visual Basic 简称VB ,是微软公司推出的一种可视化编程工具,是当今世界上应用最广泛的编程语言之一,它也被公认为是编程效率最高的一种编程方法。它开发速度快捷,具有语法简单易学的开发环境,是初学者的首选。VB 提供可视化的开发环境,使用者可以像搭积木一样构建出程序的界面,而且它提供丰富的控件组,省去了自己编写代码的实现这些效果的麻烦,这样就可以把更多的精力放在程序功能方面的实现上。本系统中使用的是Microsoft Visual Basic 6.0 中文企业版。

二、系统分析部分

1)业务流程图

2)数据流程图

数据流程图是一种能全面地描述信息系统逻辑模型的主要工具,它可以用少数几种符号综合地反映出信息在系统中的流动、处理和存储情况。符号说明如下:

外部实体

处理

数据流

数据存储

数据流程图分多少层次视实际情况而定,考虑到工资管理信息系统相对较小,在这里我把数据流程图分为二层。

第一层:

第二层:

3)功能分析图

系统功能分析是在系统开发的总体任务的基础上完成的。该工资管理系统采用的是MIS 的设计方法,在设计系统之前,需要充分了解系统的功能,根据系统所要达到的要求设计具体的模块。本系统需要完成的功能主要有:

4)数据字典 数据项的定义:

数据流定义:

6)管理信息系统流程设想图(新系统模型)

通过对现行系统的需求分析,本系统数据流向是合理的,但为了便于计算机化管理,也为了使系统能够提供更多的辅助决策信息,本系统应做如下改进设想: 1. 财务处理系统未对工资分配情况进行反馈,应增加工资分配反馈环节; 2. 工资统计与工资汇总重复计算,去除工资统计环节; 3. 工资查询在财务处理系统进行查询,减少不必要环节;

根据前面的分析与评价结果,提出的新系统数据流程如图:

三、系统设计部分

1)功能结构图设计

相比原来的功能结构图,我们对其进行简化,把奖金、劳务工资等放入“更新主文件”目录,罚金、税金等放入“扣款文件”目录,基本工资放入“主文件”目录,可以看出来,现在的系统较原来更简洁,更容易让员工清楚工资发放机制。

2)新系统信息处理流程设计

现行系统的需求分析,本系统数据流向是合理的,但为了便于计算机化管理,也为了使系统能够提供更多的辅助决策信息,本系统应做如下改进设想:

1. 财务处理系统未对工资分配情况进行反馈,应增加工资分配反馈环节; 2. 工资统计与工资汇总重复计算,去除工资统计环节; 3. 工资查询在财务处理系统进行查询,减少不必要环节;

新系统信息处理流程:

四、系统实施部分

1)程序框图

登陆界面:

账号与密码都为1,输入点击登录按钮:

进入主界面:

点击员工信息,跳出如下界面:

在员工信息管理界面可以对不同部门员工进行添加、修改、删除操作,点击离开后,进入基本工资界面:

2)源程序

管理员登录界面:

工资管理登录系统图登陆窗口,进行密码验证,如果用户输入正确的用户名和密码就可正常的登陆。如果密码错误则出现错误提示,如果想关闭系统,单击取消按钮即可退出系统,其实现代码如下: Login.frm

Public EN, a, PW As String Public P As Integer

Private Sub Command1_Click(Index As Integer) Select Case Index Case 0

txtSQL = "select * from accounts where account = '" & Text1(0).Text & "'" & "and password = '" & Text1(1).Text + "'" Set rs = exesql(txtSQL) If rs.EOF = True Then

MsgBox "没有这个用户,请重新输入!", vbCritical, "警告"

With Text1(0) .SelStart = 0

.SelLength = Len(Text1(0).Text) Text1(0).SetFocus End With Else

EN = Trim(rs.Fields(0)) a = Trim(rs.Fields(1)) PW = Trim(rs.Fields(2)) P = Trim(rs.Fields(3)) Unload Me

Set login = Nothing Main.Show End If Case 1

Text1(0).Text = "" Text1(1).Text = ""

Command1(0).Enabled = False Command1(1).Enabled = False Text1(0).SetFocus Case Else Unload Me

Set login = Nothing End

End Select End Sub

Private Sub Form_Activate() Text1(0).SetFocus End Sub

Private Sub Label1_Click(Index As Integer)

End Sub

Private Sub Text1_Change(Index As Integer)

If Text1(0).Text "" Or Text1(1).Text "" Then Command1(1).Enabled = True End If

If Text1(0).Text "" And Text1(1).Text "" Then Command1(0).Enabled = True Else

Command1(0).Enabled = False End If End Sub

员工信息界面:

在员工信息管理界面可以对不同部门员工进行添加、修改、删除等功能操作,要求添加工人编号、所在部门、用户名、职务等。点击离开后,进入基本工资界面,其功能实现代码如下:

Grengl.frm

Option Explicit

Dim rs0 As New ADODB.Recordset

Dim sql0 As String

Dim a As String

Dim b As String

Dim c As Boolean

Dim d As Boolean

Private Sub Command1_Click()

Timer1.Enabled = True

Text1.Enabled = True

c = False

d = False

End Sub

Private Sub Command2_Click()

Timer1.Enabled = True

Text1.Enabled = False

c = False

d = False

End Sub

Private Sub Command3_Click()

Dim rs00 As New ADODB.Recordset

Dim sql00 As String

sql00 = "delete from yuangon where id='" & rs0.Fields(0) & "'"

Dim a As String

Dim b As String

Dim choose

a = "信息删除"

b = "" & rs0.Fields(0) & " 删除"

choose = MsgBox("删除员工信息会将其其它相关信息也一起删除, 是否删除?", vbOKCancel, "系统信息")

If choose = vbOK Then

Call data3(sql00, a, b)

Else

End If

Set rs00 = data1(rs00, sql0)

Set rs0 = rs00

Set DataGrid1.DataSource = rs0

DataGrid1.Refresh

End Sub

Private Sub Command4_Click()

Unload Me

End Sub

Private Sub Command5_Click()

Dim rs4 As New ADODB.Recordset

Dim sql4 As String

Dim rs5 As New ADODB.Recordset

Dim sql5 As String

Dim sql6 As String

On Error GoTo k2:

If Text1.Text "" Then

If Text1.Enabled = True Then

sql4 = "select jibengonzi from bumengz where bumen='" & DataCombo2.Text & "'and ziwu='" & DataCombo1.Text & "'"

Set rs4 = data1(rs4, sql4)

sql5 = "insert into yuangon (id,xinming,nianling,xingbie,bumen,ziwu) values ('" & Text1.Text & "','" & Text2.Text & "'," & Text3.Text & ",'" & Combo1.Text & "','" & DataCombo2.Text & "','" & DataCombo1.Text & "')"

sql6 = "insert into jibengonzi (id,jibengonzi) values ('" & Text1.Text & "'," & rs4.Fields(0) & ")"

a = "信息增加"

b = " " & Text1.Text & " 信息增加"

Call data4(sql5, sql6, a, b)

Set rs5 = data1(rs5, sql0)

Set rs0 = rs5

Else

sql4 = "select jibengonzi from bumengz where bumen='" & DataCombo2.Text & "'and ziwu='" & DataCombo1.Text & "'"

Set rs4 = data1(rs4, sql4)

sql5 = "update yuangon set xinming='" & Text2.Text & "',nianling=" & Text3.Text & ",xingbie='" & Combo1.Text & "',bumen='" & DataCombo2.Text & "',ziwu='" & DataCombo1.Text & "' where id='" & Text1.Text & "'"

If c = True Or d = True Then

sql6 = "update jibengonzi set jibengonzi=" & rs4.Fields(0) & ""

Else

sql6 = ""

End If

a = "信息修改"

b = " " & Text1.Text & " 信息修改"

If sql6 "" Then

Call data4(sql5, sql6, a, b)

Else

Call data3(sql5, a, b)

End If

Set rs5 = data1(rs5, sql0)

Set rs0 = rs5

End If

Else

MsgBox "员工编号不能为空"

End If

c = False

d = False

Text1.Text = ""

Text2.Text = ""

Text3.Text = ""

Set DataGrid1.DataSource = rs0

DataGrid1.Refresh

Exit Sub

k2:

If Err.Number = 3021 And Text1.Text = "" Then MsgBox " 员工编号不能为空", vbOKOnly, " 错误"

If Err.Number = 3021 And DataCombo1.Text = "" Or DataCombo2.Text = "" Then MsgBox " 部门, 职位不能为空", vbOKOnly, "错误"

If Err.Number = -2147467259 Then MsgBox "年龄必须在16~60周岁", vbOKOnly, "错误"

If Err.Number = -2147217900 And Text1.Text "" Then MsgBox "员工编号重复!", vbOKOnly, "错误"

End Sub

Private Sub Command6_Click()

Timer2.Enabled = True

c = False

d = False

End Sub

Private Sub DataCombo1_Click(Area As Integer)

d = True

End Sub

Private Sub DataCombo2_Change()

Dim rs3 As New ADODB.Recordset

Dim sql3 As String

sql3 = "select ziwu from bumengz where bumen='" & DataCombo2.Text & "'" Set rs3 = data1(rs3, sql3)

Set DataCombo1.DataSource = rs3

Set DataCombo1.RowSource = rs3

c = True

End Sub

Private Sub DataCombo2_Click(Area As Integer)

Dim rs3 As New ADODB.Recordset

Dim sql3 As String

sql3 = "select ziwu from bumengz where bumen='" & DataCombo2.Text & "'" Set rs3 = data1(rs3, sql3)

Set DataCombo1.DataSource = rs3

Set DataCombo1.RowSource = rs3

c = True

End Sub

Private Sub DataCombo3_Click(Area As Integer)

Dim rs2 As New ADODB.Recordset

Dim sql2 As String

sql2 = "select * from yuangon where bumen='" & DataCombo3.Text & "'"

Set rs2 = data1(rs2, sql2)

If rs2.BOF Then

MsgBox "部门内无员工信息", vbOKOnly, "新部门"

Else

Set rs0 = rs2

End If

Set DataGrid1.DataSource = rs0

DataGrid1.Refresh

End Sub

Private Sub DataGrid1_DblClick()

On Error GoTo k1:

If Text1.Enabled = False Then

Text1.Text = rs0.Fields(0)

Text2.Text = rs0.Fields(1)

Text3.Text = rs0.Fields(2)

Combo1.Text = rs0.Fields(3)

DataCombo2.Text = rs0.Fields(4)

DataCombo1.Text = rs0.Fields(5)

End If

Exit Sub

k1:

If Err.Number = 3021 Then MsgBox "无记录, 无法修改", vbOKOnly, "

End Sub

Private Sub Form_Load()

Combo1.ListIndex = 0

Set rs0 = New ADODB.Recordset

sql0 = "select * from yuangon"

Set rs0 = data1(rs0, sql0)

Set DataGrid1.DataSource = rs0

DataGrid1.Refresh

Dim rs1 As New ADODB.Recordset

Dim sql1 As String

sql1 = "select * from bumen"

Set rs1 = data1(rs1, sql1)

Set DataCombo3.DataSource = rs1

Set DataCombo3.RowSource = rs1

Set DataCombo2.DataSource = rs1

Set DataCombo2.RowSource = rs1

c = False

d = False

End Sub

Private Sub Text3_KeyPress(KeyAscii As Integer)

If Not IsNumeric(Chr(KeyAscii)) And KeyAscii 8 Then

KeyAscii = 0

End If

End Sub

错误"

Private Sub Timer1_Timer()

If DataGrid1.Height > 2655 Then DataGrid1.Height = DataGrid1.Height - 16.8 If Frame1.Height

If Frame1.Top > 2880 Then Frame1.Top = Frame1.Top - 15.6

If DataGrid1.Height = 2655 Then Timer1.Enabled = False

End Sub

Private Sub Timer2_Timer()

Frame1.Visible = False

If DataGrid1.Height

Frame1.Top = 4440

Frame1.Height = 15

Frame1.Visible = True

Timer2.Enabled = False

End If

End Sub

基本工资管理界面:

基本工资管理界面可以对各部门的不同职务基本工资进行添加、修改和删除操作,其实现代码如下:

Main.frm

Private Sub Form_Load()

StatusBar1.Panels(1) = "现在时间:" & " " & Date & " " & Time

End Sub

Private Sub j1_Click()

fuligl.Show

End Sub

Private Sub j2_Click()

bumengl.Show

End Sub

Private Sub j3_Click()

ziwugl.Show

End Sub

Private Sub k_Click()

End Sub

Private Sub k1_Click()

gerengl.Show

End Sub

Private Sub k2_Click()

fuli.Show

End Sub

Private Sub k3_Click()

bmgzgl.Show

End Sub

Private Sub k4_Click()

gonzitz.Show

End Sub

Private Sub l1_Click()

gonzicx.Show

End Sub

Private Sub l2_Click()

gonzidel.Show

End Sub

Private Sub l3_Click()

gonzifafang.Show

End Sub

Private Sub q_Click()

rizicx.Show

End Sub

Private Sub Timer1_Timer()

StatusBar1.Panels(1) = "现在时间:" & " " & Date & " " & Time

End Sub

Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)

Select Case Button.Index

Case 1

gerengl.Show

Case 2

Case 3

laowugongzi.Show

Case 4

jiangjin.Show

Case 5

koukuan.Show

Case 6

gongzihuizong.Show

Case 7

End

End Select

Option Explicit

Dim rs1 As New ADODB.Recordset

Dim sql1 As String

Dim a As String

Dim b As String

Private Sub Command1_Click()

Dim rs4 As New ADODB.Recordset

Dim sql4 As String

Dim rs41 As New ADODB.Recordset

Dim sql41 As String

On Error GoTo Now1:

sql41 = "select * from bumengz where bumen='" & DataCombo1.Text & "'and ziwu='" & DataCombo2.Text & "'"

sql4 = "update bumengz set ziwu='" & DataCombo2.Text & "',jibengonzi=" & Text2.Text & " where bumen='" & rs1.Fields(0) & "' and ziwu='" & rs1.Fields(1) & "' " a = "信息修改"

b = "" & DataCombo1.Text & " " & DataCombo2.Text & "" & " 基本工资"

If DataCombo2.Text rs1.Fields(1) Then

Set rs41 = data1(rs41, sql41)

If rs41.BOF = True Then

Call data3(sql4, a, b)

Set rs4 = data1(rs4, sql1)

Set rs1 = rs4

Else

MsgBox "本部门内存在相同职务工资,无法修改", vbOKOnly, "错误"

End If

Call data3(sql4, a, b)

Set rs4 = data1(rs4, sql1)

Set rs1 = rs4

End If

Set DataGrid1.DataSource = rs1

DataGrid1.Refresh

Exit Sub

Now1:

Select Case Err.Number:

Case -2147217900

MsgBox "基本工资不能为空", vbOKOnly, "错误"

Case 3021

MsgBox "本部门内暂无职务工资信息", vbOKOnly, "错误"

End Select

End Sub

Private Sub Command2_Click()

End Sub

Private Sub Command3_Click()

Dim sr As New ADODB.Recordset

Dim sql As String

sql = "select * from bumengz"

Set sr = data1(sr, sql)

End Sub

Private Sub Command4_Click()

Unload Me

End Sub

Private Sub Command5_Click()

Dim rs3 As New ADODB.Recordset

Dim sql3 As String

sql3 = "insert into bumengz (bumen,ziwu,jibengonzi) values ( '" & DataCombo1.Text & "','" & DataCombo2.Text & "'," & Text2.Text & ")"

Dim rs31 As New ADODB.Recordset

Dim sql31 As String

sql31 = "select * from bumengz where bumen='" & DataCombo1.Text & "'and ziwu='"

a = "信息增加"

b = "" & DataCombo1.Text & "" & DataCombo2.Text & "" & "基本工资"

On Error GoTo Now1:

Set rs31 = data1(rs31, sql31)

If rs31.BOF Then

Call data3(sql3, a, b)

Set rs3 = data1(rs3, sql1)

Set rs1 = rs3

Set DataGrid1.DataSource = rs1

DataGrid1.Refresh

Else

MsgBox "本部门内存在相同职务工资,无法添加", vbOKOnly, "错误"

End If

Exit Sub

Now1:

Select Case Err.Number:

Case -2147217904

MsgBox "基本工资只能输入数字", vbOKOnly, "错误"

Case -2147217900

MsgBox "基本工资不能为空", vbOKOnly, "错误"

End Select

End Sub

Private Sub Command6_Click()

Dim rs4 As New ADODB.Recordset

Dim rs41 As New ADODB.Recordset

Dim sql4 As String

Dim sql41 As String

Dim choose

sql4 = "select * from yuangon where bumen='" & DataCombo1.Text & "'"

sql41 = "delete from bumengz where bumen='" & DataCombo1.Text & "'and ziwu='" & DataCombo2.Text & "'"

a = "信息删除"

b = "" & DataCombo1.Text & "" & DataCombo2.Text & "" & "基本工资"

If rs4.BOF Then

choose = MsgBox("确定要删除信息?", vbOKCancel + vbDefaultButton2 + vbQuestion, " 警告")

If choose = vbOK Then Call data3(sql41, a, b)

Else

MsgBox "对应部门职务存在,信息可能正被使用!删除失败", vbOKOnly, "错误" End If

Set rs41 = data1(rs41, sql1)

Set rs1 = rs41

Set DataGrid1.DataSource = rs1

DataGrid1.Refresh

End Sub

Public Sub DataCombo1_Click(Area As Integer)

Dim rs2 As New ADODB.Recordset

sql1 = "select bumen,ziwu,jibengonzi from bumengz where bumen='" & DataCombo1.Text & "'"

Set rs2 = data1(rs2, sql1)

Set rs1 = rs2

Set DataGrid1.DataSource = rs1

DataGrid1.Refresh

End Sub

Private Sub DataGrid1_DblClick()

If Not rs1.BOF Then

DataCombo2.Text = rs1.Fields(1)

Text2.Text = rs1.Fields(2)

Else

MsgBox "本部门内无信息", vbOKOnly, "错误"

End If

End Sub

Private Sub Form_Load()

Dim rs0 As New ADODB.Recordset

Dim sql0 As String

sql0 = "select * from bumen "

Set rs0 = data1(rs0, sql0)

Set DataCombo1.DataSource = rs0

Set DataCombo1.RowSource = rs0

DataCombo1.Refresh

Dim rs00 As New ADODB.Recordset

Dim sql00 As String

sql00 = "select * from ziwu "

Set rs00 = data1(rs00, sql00)

Set DataCombo2.DataSource = rs00

Set DataCombo2.RowSource = rs00

DataCombo2.Refresh

If rs0.BOF Or rs00.BOF Then

Else

Command1.Enabled = True

Command4.Enabled = True

Command5.Enabled = True

Command6.Enabled = True

End If

Set rs1 = New ADODB.Recordset

sql1 = "select bumen,ziwu,jibengonzi from bumengz"

Set rs1 = data1(rs1, sql1)

Set DataGrid1.DataSource = rs1

DataGrid1.Refresh

End Sub

Private Sub Text2_KeyPress(KeyAscii As Integer)

If Not IsNumeric(Chr(KeyAscii)) And KeyAscii 8 Then

KeyAscii = 0

End If

End Sub

3)系统使用说明书

本系统基本上可以满足工资管理的基本要求,系统中使用的各种表格,保存相关的工资信息以及工资结构等信息。使用本系统的查询的前提是要输入员工的的标号,之后可以查询出员工的基本信息或工资结构。本系统经过实际的需求分析,采用功能强大的VB 作为开发工具,Microsoft SQL Server 作为数据库开发出来的小型的工资管理系统。 系统可以达到如下功能:1、通过员工的编号,查询出员工的基本信息。

2、通过员工的编号,查询出员工的工资结构以及基本工资。

3、通过员工编号,查询出员工的工资账目。

(5)附录或参考资料:

[ 1]黄梯云著 管理信息系统(第四版) 高等教育出版社

[ 2]刘炳文、许蔓舒编著 Visual Basic 程序设计教程 清华大学出版社

[ 3]Evangelos编著 Visual Basic 6.0高级开发指南 电子工业出版社

[ 4]李东玉等编著 Visual Basic6.0控件大全 清华大学出版社

[ 5]龚沛曾等编著 Visual Basic程序设计教程 高等教育出版社

[ 6]Francesco Balena著 Visual Basic 6编程技术大全 机械工业出版社

[ 7]张宏林等编著 Visual Basic6 开发数据库 人民邮电出版社

[ 8]刘韬等编著 Visual Basic数据库系统开发实例导航 人民邮电出版社

[ 9]王文莲等编著 电算化会计原理软件开发与试验 立信会计出版社

工资管理系统课程设计小结

经过小组成员的共同努力,通过可行性分析、系统分析、系统设计,最终系统功能达到了设计的要求,实现了我们的设计计划。

在实现系统功能的过程中,我们小组成员在翻阅了大量VB 方面的书籍,重新温习VB 的基础知识,了解VB 的基本语法, 又看了一些经经典案例后,学会了一些高级控件的使用,并运用到了系统中。

工资管理信息系统的整个开发过程采用了结构化的设计方法,遵循先逻辑后物理、自顶而下等原则,实现系统各部分的模块化,各子系统之间独立性强,便于系统的运行维护和日后的扩充和完善,达到的功能的设计要求。

由于我们的知识和经验的限制,我们肯定在细节方面还有很多的不足,有些细致的地方欠缺考虑,无法在系统中体现出来,有些虽然我们考虑到了,由于知识的严重欠缺,无法达到设计的要求。这个软件还存在这样那样的无法避免的缺点,但是在专业知识方面,学到了在课堂中无法学到的知识。比如在可行性分析中,一定要考虑到公司管理的实际情况,人机界面的设计要方便使用等,这些知识对一个系统开发人员来说,虽然是最基本的要求,但是我们在课程设计中学到呢,对我们将来的工作不失为一个好的开始。

由于某些方面的不足,在系统实现过程中,有些功能不能很好的实现,有待进一步改进。设计过程中遇到的困难,在老师和同学的帮助下,最终我克服了难题,完成了我的工作管理系统的设计。

通过此次系统地编写工资管理信息系统,自己在编程能力方面有了显著的提高。对VB 和管理信息系统了更加深刻的了解,深化了所学的基本知识,由单纯的书本知识,应用到具体实践,增强知识转化为实际操作的能力。

目录

一、可行性分析...................................... 5

二、系统分析部分.................................... 9 1)业务流程图.................................. 9

2)数据流程图.................................. 9

3)功能分析图 ..................................10

4)数据字典 ...................................11

5)数据加工处理的描述 ...........................11

6)管理信息系统流程设想图(新系统模型).............13

三、系统设计部分 ...................................14

1)功能结构图设计...............................14

2)新系统信息处理流程设计........................14

四、系统实施部分 ....................................16 1)程序框图....................................16 2)源程序.....................................18

5)系统使用说明书...............................31

五、附录或参考资料...................................32

工资管理信息系统课程设计

引 言

本课题将设计一个应用与事业单位的工资管理系统。随着国民经济的急速发展,事业单位的工资应用体系也变的越来越复杂,单位中,部门、职务、工作效益等与工资管理有关的信息随之急剧增加。在这种情况下单靠人工来处理员工的工资不但要消耗大量的人力和物力,而且极容易出错。

该系统的具体任务就是设计一个事业单位工资的数据库管理系统,由计算机来代替人工执行一系列工作,诸如增加员工添加删除、工资设置、修改、查询、统计等操作。这样就使财务人员可以快捷高效地完成工资管理任务。

1 .应用背景

人类社会正从工业时代阔步迈向信息时代,人们越来越重视信息技术对传统产业的改造,信息化水平的高低已经成为衡量一个单位现代化水平的高低。在这种环境下,传统的手工工资管理已经远远落后于信息化管理。

随着计算机技术的飞速发展,计算机在信息管理中应用的普及,利用计算机实现人事工资的管理势在必行。利用计算机管理工资信息,是适应现代化的要求、推动管理制度走向科学化、规范化的必要条件;工资管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,一般不允许出错,如果实行手工操作,每月发放工资须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,利用计算机进行工资发放工作,不仅能够保证工资核算准确无误、快速输出,而且还可以利用计算机对有关工资的各种信息进行统计,服务于财务部门其他方面的核算和财务处理,同时计算机具有着手工管理所无法比拟的优点. 例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事工资管理的效率, 也是管理科学化、正规化, 与世界接轨的重要条件。

该系统的具体任务就是设计一个工资的数据库管理系统,由计算机来代替人工执行一系列工作,诸如增加员工添加删除、工资设置、统计、发放、修改、查询等操作。这样就使财务人员可以快捷高效地完成工资管理任务。

设计的指导思想是一切为用户着想,界面简洁,操作尽量简单明了。计算机的资源是受到限制的,因此充分利用了Visual Basic的功能,在尽可能地减少对系统资源的占用的前提下,设计出功能丰富的软件。

2. 课题研发的目的与意义

工资管理是一项琐碎、复杂而又十分细致的工作,一般不允许发生错误。手工进行工资发放工作,需要反复地进行抄写、计算,不仅花费财务人员大量的时间,而且往往由于抄写不慎,出现张冠李戴,或者由于计算的疏忽,出现工资发放错误的现象。同时工资的发放具有较强的时间限制,必须严格按照单位规定的时间完成计算和发放工作。

正是工资管理的这种重复性、规律性、时间性,使得工资管理计算机化成为可能。计算机进行工资发放工作,不仅能够保证工资核算正确无误、快速输出,而且还可以利用工资数据库对有关工资的各种信息进行统计,服务于财务部门其他方面的核算和财务处理,使会计人员从繁重的手工制作中解脱出来, 提高了会计信息的及时性、正确性、全面性。大大提高了管理水平和管理效率,产生了巨大的经济效益和社会效益。

信息时代计算机技术的发展给整个社会的生活、工作方式带来了一次革命。传统意义上的工资管理的形式和内涵都在发生着本质的变化。以前那种一个会计、一个账本的工资管理形式已经可以被计算机及财务软件所代替。计算机以及相关软件的介入使得工资的管理变得科学化、透明化、简单化。因此,根据不同单位的自身特点开发适合自己的工资管理软件是显得十分必要的。

工资管理软件隶属于财务软件(又称会计软件)。中国的财务软件起步于70年代末,经历了从自主开发、委托定点开发向标准化、通用化、商品化、专业化发展几个阶段。三十年来财务软件市场规模化、产业化发展迅速。

近年来随着市场竞争的日趋激烈,财务软件模式转向集中式管理;一些行政单位为适应财政预算管理的变革,开始对财务实行集中式管理。可以说集中式财务管理在某些单位来说是一种管理发展的趋势。这种管理模式在以前因网络、通讯技术的限制而无法实施,随着互联网技术的发展,基于网络计算,支持集中管理模式的财务软件开始出现在市场,并越来越受到希望采取集中财务管理模式的单位所喜爱。所以,在我国各级事业单位中他们更需要有一个方便、快捷、安全、透明的工资管理软件。

3. 信息系统介绍

管理信息系统就是我们常说的MIS (Management Information System ),在强调管理,

强调信息的现代社会中它越来越得到普及。MIS 是一门新的学科,它跨越了若干个领域,比如管理科学、系统科学,运筹学、统计学以及计算机科学。在这些学科的基础上,形成信息收集和加工的方法,从而形成一个纵横交 织的系统。

它是一个不断发展的新型学科。管理信息系统的定义随着计算机技术和通讯技术的进步也在不断更新。在现阶段普遍认为,管理信息系统是一个由人和计算机或其他信息处理手段组成的并用于管理信息的系统。管理信息系统能进行信息收集、传输、加工、保存、维护和使用。它能实测国民经济部门或不同单位的各种运行情况,能利用过去的数据预测未来,能从全局出发辅助决策,能利用信息控制国民经济部门或不同单位的活动,并帮助实现其规划目标。管理信息系统是一门综合了管理科学、系统理论、计算机科学的系统性边缘学科。

4. 管理信息系统概述

20世纪,随着全球经济的蓬勃发展,众多经济学家纷纷提出了新的管理理论。20世纪50年代,西蒙提出管理依赖于信息和决策的思想。同时期的维纳发表了控制论,他认为管理是一个控制过程。1958年,盖尔写到:“管理将以较低的成本得到及时准确的信息,做到较好的控制。”这个时期,计算机开始用于会计工作,出现数据处理一词。

1970年,Walter T.Kennevan给刚刚出现的管理信息系统一词下了一个定义:“以口头或书面的形式,在合适的时间向经理、职员以及外界人员提供过去的、现在的、预测未来的有关企业内部及其环境的信息,以帮助他们进行决策。”在这个定义里强调了用信息支持决策,但并没有强调应用模型,没有提到计算机的应用。

1985年,管理信息系统的创始人,明尼苏达大学的管理学教授Gordon B.Davis给了管理信息系统一个较完整的定义,即“管理信息系统是一个利用计算机软硬件资源,手工作业,分析、计划、控制和决策模型以及数据库的人-机系统。它能提供信息支持企业或组织的运行、管理和决策功能。”这个定义全面地说明了管理信息系统的目标、功能和组成,而且反映了管理信息系统在当时达到的水平。

管理信息系统起初应用于最基础的工作,如打印报表、计算工资、人事管理等,进而发展到企业财务管理、库存管理等单项业务管理,这属于电子数据处理(EDP ,Electronic Data Processing)系统。当建立了企业数据库,有了计算机网络从而达到数据共享后,从系

统观点出发,实施全局规划和设计信息系统时,就达到管理信息系统的阶段。随着计算机技术的进步和人们对系统的需求进一步提高,人们更加强调管理信息系统能否支持企业高层领导的决策这一功能,更侧重于企业外部信息的收集、综合数据库、模型库、方法库和其他人工智能工具能否直接面向决策者,这是决策支持系统(DSS ,Decision Support System )的任务。

近20年间,国外大公司出现了3种变化:

● 抓管理着重于建立MIS 系统,使管理技术走向成熟。

● 信息是决策的依据,MIS 随时为经理们提供信息服务。

● 经理通过MIS 使其经营计划和具体的业务活动联系在一起。

由于以上的变化,MIS 应用得到了迅速发展。不仅大中型企业普遍建立了自己的MIS ,一些中小企业也不例外,普遍建立了公用数据网络,尤其是近年来Internet 的飞速发展,Intranet 技术得到广泛应用,为企业MIS 提供了良好的支持环境。从国际技术发展趋势看,20世纪90年代出现了几种全新的管理技术,相应的MIS 开发技术在20世纪90年代也有了新的发展。

1. 信息综合集成

MIS 在计算机网络和分布式数据库管理系统的支持下,与企业其他的系统,如OA 、CAD 、CAM 、CAPP 、在线数据采集系统集成,形成制造业的计算机集成制造系统,或者一般企事业单位的综合信息系统(CIIS ,Computer Integrated Information System ),实现办公、管理、计算、设计、控制、监测,以及决策等多功能综合。

2. Internet/Intranet

因特网(Internet )已经被广大用户所熟悉,而以因特网技术为基础的企业内部信息系统——Intranet 既可以通过接入的方式成为因特网的一部分,也可以自成体系,实现企业内部的管理。它可以克服传统MIS 存在的系统封闭、用户界面形式不统一、多种软件版本并存、维护移植困难等问题,为新一代企业MIS 的开发注入了强劲的活力。

3. 先进的软件开发工具

为了缩短软件开发的周期,提高软件的质量和标准化水平以及软件的可维护性,越来越多的软件开发公司使用先进的软件开发工具或计算机辅助软件工程工具(CASE ,

Computer-Aided Software Engineering),如各种可视化建模工具、系统分析和设计工具、软件质量测试工具、软件文档建立和管理工具等。还有各种MIS 开发平台和代码生成

工具,这些工具极大地方便了MIS 的开发。

4. 多媒体技术

随着计算机性能的提高,MIS 采用越来越多的多媒体技术,用图形、图像、声音替代原来单调的字符形式,给用户提供了一个更加生动真实的应用环境。

会计信息系统也称为电算化会计系统,它是以提供会计信息为目的的信息系统。会计信息系统主要由帐务处理、报表处理、工资核算、固定资产核算、应收应付核算、材料核算、销售核算、成本核算等子系统组成。工资核算信息系统是会计信息系统中的重要组成部分。

5. 工资管理信息系统的最终目的

工资管理信息系统的最终目的是为管理、决策服务,达到这个目标的手段无外乎以下几个方面:一是利用计算机可快速整理、传输、处理各种数据的特点,处理会计业务,从而更为全面、更为准确的提供管理、决策所需的财务信息;二是利用计算机处理数据速度快的特点,处理会计业务,从而更为快捷地提供各种管理、决策所需地财务信息;三是利用计算机对数据分类整理的优点,按管理的要求,对会计核算数据进行各种加工、处理,从而筛选出管理所需的信息;四是会计人员从繁杂的手工核算工作中解脱出来,利用他们懂财务、了解情况的优势,参与分析、参与管理、参与决策。

一、可行性分析

可行性分析的任务是明确开发应用项目的必要性和可行性。必要性来自实现开发任务的迫切性,而可行性则取决于实现应用系统的资源和条件。这项工作建立在初步调查的基础上。

系统的可行性研究在系统的整个过程中占有很重要的地位,它决定所选项目是不是可能实现或值得去实现。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。它主要包括技术、经济、运行、法律等方面的可行性:现有技术是否能够实现本系统的设计开发;经济上是否值得去实现;是否能够在一般平台下运行等。

技术可行性是指开发一个新系统所需要的技术是否具备,如支持新系统的软硬件功能以及技术人员的数量和水平。本系统是进行职工工资处理。结合实际需要,经过仔细斟酌,我选择了Microsoft Visual Basic 6.0 作为开发用户界面软件,它综合了可视化开发环境的易用性、32位优化编译技术的快速和强大、有数据引擎提供的可伸缩性等特点;选Microsoft Office Access 2000用来开发后台数据库,它具有很好的安全性与兼容性;而

且本系统对硬件的要求不高,在现有技术基础上一定能实现本系统。

经济可行性是评价一个计算机信息系统是否可行的最基本的一种方法,是对信息系统解决方案的成本有效性的量度。信息系统的开发是一种投资,因此对于用户来说,他首先关心的是:是否值得开发一个信息系统。而在效益方面,他们首先关心的是:当他们使用了这套管理信息系统后,工资处理的效率是否提高了,人力资源是否节省了。而本系统的设计和开发事实上恰好能满足他们的这些要求。还有该系统对硬件的要求不高,装有win98系统以上的计算机一般就能运行系统,所以在系统运行方面也不存在问题。

1. 开发方法

在开发方法的选择上,我选择了自顶向下的开发策略:自顶向下的开发策略是从工资管理的整体进行设计,逐步从抽象到具体,从概要设计到详细设计,体现结构化的设计思想。

自顶向下是强调由全局到局部、由长远到近期、由上层到下层,从探索、研制一种合理的信息流的模型出发,设计出适合于这种信息流的信息系统。子模块通过信息流确定,而且尽可能的要求每个局部模块优化建立在全局优化的指导下。

第一层首先分析工资管理信息系统的系统环境、系统边界、系统的总目标,然后分析系统完成总目标所应具有的功能以及实现这些功能的信息需求。

第二层是模块级。根据系统的目标、功能以及需求,导出各个模块的目标、功能以及信息需求。同理,逐级地推演更下一层地模块,即由上而下、由粗而细、逐级分解、逐层细化。

“自顶向下”是一种演绎式的分析方法,是一种整体性、系统性强的分析方法。其具体步骤如下:

分析工资核算的目标、环境和系统运行的条件;

根据总体目标确定各项具体功能;

确定需要决策的内容;

根据每项决策的内容确定所需要的信息;

为整个系统规定各个功能模块;

为要研制的各个功能模块和数据库规定先后顺序。

该方法的优点是对整个计划来讲,逻辑性很强;其缺点是难以制定这样大的方案。为了解决这一矛盾,我在参考了现有工资管理信息系统的基础上,进行总体规划。

2. 开发环境介绍

(1) 数据库技术介绍

数据库技术作为数据管理技术,是计算机软件领域的一个重要分支,产生于60年代末。现已形成相当规模的理论体系和实用技术。优秀的数据库设计是应用成功的基石。万万丈高楼平地起,数据库设计如同高楼的基石,是开发高品质应用的前提。

(2) 数据库的体系结构

数据的体系结构分成三级:内部级(Internal ), 概念级(Conceptual)和外部级

(External )。这个三级结构有时也称为“三级模式结构”。

外部级:最接近用户,是单个用户所能看到的数据特性。单个用户使用的数据视图的描述称为“外模式”。

概念级别:涉及到所有用户的数据定义、是全局的数据视图。全局视图的描述称为“概念模式”。

内部级:最接近于物理存储设备,涉及到实际数据存储的结构物理存储数据视图的描述称为“内模式”。

数据库的三级模式结构是数据的三个抽象级别。它把数据的具体组织留给DBMS 去做,用户只要抽象地处理数据,而不必关心数据在计算机中的表示和存储,这样就减轻了用户使用系统的负担。

(3) 数据库管理系统(DBMS )

数据库管理系统(DBMS )是指数据库系统中管理数据的软件系统。DBMS 是数据库系统的核心组成部分。对数据库的一切操作,包括定义、查询、更新及各种控制,都是通过DBMS 进行的。

在不同的计算机系统中,由于缺乏统一的标准,即使同种数据模型的DBMS ,它们在用户接口、系统功能方面也常常是不相同的。

用户对数据库进行操作,是由DBMS 把操作从应用程序带到外部级、概念级、再导向内部级,进而操作存储器中的数据。DBMS 的主要目标,是使数据作为一种可管理的资源处理。

DBMS 的主要功能为:

数据库定义功能:DBMS 提供数据定义语言(DDL )定义数据库的三级结构,包括外模式、概念模式、内模式及基相互之间的映象,定义数据的完整性、安全控制等约束。因此,在DBMS 中应包括DDL 的编译程序。

数据库的操纵功能:DBMS 提供数据操纵语言(DML )实现对数据库中数据的操作。基

本的数据操作分成两类四种:检索(查询)更新(插入、删除、修改)

数据库的保护功能:数据库中的数据是信息社会的战略资源,对数据的保护是至关重要的大事。DBMS 对数据库的保护主要通过四个方面实现:

数据库恢复:数据库被破坏或数据不正确时,系统有能力把数据库恢复到正确的状态。 数据库的并发控制:DBMS 的并发控制子系统能防止错误发生,正确处理好多用户、多任务环境下的并发操作。

数据库的完整性控制:保证数据库中数据及语义的正确性和有效性,防止任何对数据造成错误的操作。

数据库的安全性控制:防止未经授权的用户蓄谋或无意地存取数据库中的数据,以免数据的泄露、更改或破坏。

数据库的存储管理:把各种DML 语句转换成低层的文件系统命令,起到数据的存储、检索和更新的作用。

(4) Access 数据库介绍

Access 数据库软件是一个关系型数据库管理系统,它为用户提供了数据库管理的工具集和应用程序的开发环境。Microsoft Office 应用软件在办公自动化方面已得到广泛的应用,而Access 2000是Office 2000系列中的重要组件之一,它是关系型数据库,特别是中小型数据库应用领域中最通用的数据库软件。

Access 是一种数据库管理系统(DBMS ), 它同Oracle 、DBASE 和Foxpro 等数据库软件系统一样,用于构造数据库应用程序并实行对数据库的统一管理。用户可以通过Access 提供的开发环境及工具集方便地构建数据库应用程序,大部分是直观地可视化地操作,无需编写程序代码便可方便地完成数据库的管理工资

它的优点是:

1. ACCESS 是真正的关系型数据库管理系统。ACCESS 具有主关键字和外部关键字定义,提供了数据库的完整性应用,避免数据遭到不合理的删除或修改。ACCESS 数据库还具有数据确认规则,以免输入的数据是非精确数据。它支持的字段类型有数字 文本、日期、货币、备注、是/否及OLE 对象和空值等。可以说,ACCESS 数据库软件提供了真正的关系型数据库管理。

2. ACCESS是面向数据库开发人员和最终用户的数据库管理系统。ACCESS 提供了

VBA(VISUAL BASIC FOR APPLICATION)语言。对于数据库开发人员。利用该语言以及系统提供的可视化和向导,便可以设计出具有一定规模、功能强大的数

据库应用系统。对于数据库的最终用户,并不需要编程,就可利用这些可视化工具和

向导进行简单的数据库设计和管理。

3.ACCESS 是开放式的数据库管理系统。

4.ACCESS 内置了大量的内部函数。ACCESS 软件包含了大量的内部函数,包括数据库、数学、财务、日期、时间、字符串等函数。

5.可视化的操作工具和方便的向导。

(5) Visual basic编程语言简介

Visual Basic 简称VB ,是微软公司推出的一种可视化编程工具,是当今世界上应用最广泛的编程语言之一,它也被公认为是编程效率最高的一种编程方法。它开发速度快捷,具有语法简单易学的开发环境,是初学者的首选。VB 提供可视化的开发环境,使用者可以像搭积木一样构建出程序的界面,而且它提供丰富的控件组,省去了自己编写代码的实现这些效果的麻烦,这样就可以把更多的精力放在程序功能方面的实现上。本系统中使用的是Microsoft Visual Basic 6.0 中文企业版。

二、系统分析部分

1)业务流程图

2)数据流程图

数据流程图是一种能全面地描述信息系统逻辑模型的主要工具,它可以用少数几种符号综合地反映出信息在系统中的流动、处理和存储情况。符号说明如下:

外部实体

处理

数据流

数据存储

数据流程图分多少层次视实际情况而定,考虑到工资管理信息系统相对较小,在这里我把数据流程图分为二层。

第一层:

第二层:

3)功能分析图

系统功能分析是在系统开发的总体任务的基础上完成的。该工资管理系统采用的是MIS 的设计方法,在设计系统之前,需要充分了解系统的功能,根据系统所要达到的要求设计具体的模块。本系统需要完成的功能主要有:

4)数据字典 数据项的定义:

数据流定义:

6)管理信息系统流程设想图(新系统模型)

通过对现行系统的需求分析,本系统数据流向是合理的,但为了便于计算机化管理,也为了使系统能够提供更多的辅助决策信息,本系统应做如下改进设想: 1. 财务处理系统未对工资分配情况进行反馈,应增加工资分配反馈环节; 2. 工资统计与工资汇总重复计算,去除工资统计环节; 3. 工资查询在财务处理系统进行查询,减少不必要环节;

根据前面的分析与评价结果,提出的新系统数据流程如图:

三、系统设计部分

1)功能结构图设计

相比原来的功能结构图,我们对其进行简化,把奖金、劳务工资等放入“更新主文件”目录,罚金、税金等放入“扣款文件”目录,基本工资放入“主文件”目录,可以看出来,现在的系统较原来更简洁,更容易让员工清楚工资发放机制。

2)新系统信息处理流程设计

现行系统的需求分析,本系统数据流向是合理的,但为了便于计算机化管理,也为了使系统能够提供更多的辅助决策信息,本系统应做如下改进设想:

1. 财务处理系统未对工资分配情况进行反馈,应增加工资分配反馈环节; 2. 工资统计与工资汇总重复计算,去除工资统计环节; 3. 工资查询在财务处理系统进行查询,减少不必要环节;

新系统信息处理流程:

四、系统实施部分

1)程序框图

登陆界面:

账号与密码都为1,输入点击登录按钮:

进入主界面:

点击员工信息,跳出如下界面:

在员工信息管理界面可以对不同部门员工进行添加、修改、删除操作,点击离开后,进入基本工资界面:

2)源程序

管理员登录界面:

工资管理登录系统图登陆窗口,进行密码验证,如果用户输入正确的用户名和密码就可正常的登陆。如果密码错误则出现错误提示,如果想关闭系统,单击取消按钮即可退出系统,其实现代码如下: Login.frm

Public EN, a, PW As String Public P As Integer

Private Sub Command1_Click(Index As Integer) Select Case Index Case 0

txtSQL = "select * from accounts where account = '" & Text1(0).Text & "'" & "and password = '" & Text1(1).Text + "'" Set rs = exesql(txtSQL) If rs.EOF = True Then

MsgBox "没有这个用户,请重新输入!", vbCritical, "警告"

With Text1(0) .SelStart = 0

.SelLength = Len(Text1(0).Text) Text1(0).SetFocus End With Else

EN = Trim(rs.Fields(0)) a = Trim(rs.Fields(1)) PW = Trim(rs.Fields(2)) P = Trim(rs.Fields(3)) Unload Me

Set login = Nothing Main.Show End If Case 1

Text1(0).Text = "" Text1(1).Text = ""

Command1(0).Enabled = False Command1(1).Enabled = False Text1(0).SetFocus Case Else Unload Me

Set login = Nothing End

End Select End Sub

Private Sub Form_Activate() Text1(0).SetFocus End Sub

Private Sub Label1_Click(Index As Integer)

End Sub

Private Sub Text1_Change(Index As Integer)

If Text1(0).Text "" Or Text1(1).Text "" Then Command1(1).Enabled = True End If

If Text1(0).Text "" And Text1(1).Text "" Then Command1(0).Enabled = True Else

Command1(0).Enabled = False End If End Sub

员工信息界面:

在员工信息管理界面可以对不同部门员工进行添加、修改、删除等功能操作,要求添加工人编号、所在部门、用户名、职务等。点击离开后,进入基本工资界面,其功能实现代码如下:

Grengl.frm

Option Explicit

Dim rs0 As New ADODB.Recordset

Dim sql0 As String

Dim a As String

Dim b As String

Dim c As Boolean

Dim d As Boolean

Private Sub Command1_Click()

Timer1.Enabled = True

Text1.Enabled = True

c = False

d = False

End Sub

Private Sub Command2_Click()

Timer1.Enabled = True

Text1.Enabled = False

c = False

d = False

End Sub

Private Sub Command3_Click()

Dim rs00 As New ADODB.Recordset

Dim sql00 As String

sql00 = "delete from yuangon where id='" & rs0.Fields(0) & "'"

Dim a As String

Dim b As String

Dim choose

a = "信息删除"

b = "" & rs0.Fields(0) & " 删除"

choose = MsgBox("删除员工信息会将其其它相关信息也一起删除, 是否删除?", vbOKCancel, "系统信息")

If choose = vbOK Then

Call data3(sql00, a, b)

Else

End If

Set rs00 = data1(rs00, sql0)

Set rs0 = rs00

Set DataGrid1.DataSource = rs0

DataGrid1.Refresh

End Sub

Private Sub Command4_Click()

Unload Me

End Sub

Private Sub Command5_Click()

Dim rs4 As New ADODB.Recordset

Dim sql4 As String

Dim rs5 As New ADODB.Recordset

Dim sql5 As String

Dim sql6 As String

On Error GoTo k2:

If Text1.Text "" Then

If Text1.Enabled = True Then

sql4 = "select jibengonzi from bumengz where bumen='" & DataCombo2.Text & "'and ziwu='" & DataCombo1.Text & "'"

Set rs4 = data1(rs4, sql4)

sql5 = "insert into yuangon (id,xinming,nianling,xingbie,bumen,ziwu) values ('" & Text1.Text & "','" & Text2.Text & "'," & Text3.Text & ",'" & Combo1.Text & "','" & DataCombo2.Text & "','" & DataCombo1.Text & "')"

sql6 = "insert into jibengonzi (id,jibengonzi) values ('" & Text1.Text & "'," & rs4.Fields(0) & ")"

a = "信息增加"

b = " " & Text1.Text & " 信息增加"

Call data4(sql5, sql6, a, b)

Set rs5 = data1(rs5, sql0)

Set rs0 = rs5

Else

sql4 = "select jibengonzi from bumengz where bumen='" & DataCombo2.Text & "'and ziwu='" & DataCombo1.Text & "'"

Set rs4 = data1(rs4, sql4)

sql5 = "update yuangon set xinming='" & Text2.Text & "',nianling=" & Text3.Text & ",xingbie='" & Combo1.Text & "',bumen='" & DataCombo2.Text & "',ziwu='" & DataCombo1.Text & "' where id='" & Text1.Text & "'"

If c = True Or d = True Then

sql6 = "update jibengonzi set jibengonzi=" & rs4.Fields(0) & ""

Else

sql6 = ""

End If

a = "信息修改"

b = " " & Text1.Text & " 信息修改"

If sql6 "" Then

Call data4(sql5, sql6, a, b)

Else

Call data3(sql5, a, b)

End If

Set rs5 = data1(rs5, sql0)

Set rs0 = rs5

End If

Else

MsgBox "员工编号不能为空"

End If

c = False

d = False

Text1.Text = ""

Text2.Text = ""

Text3.Text = ""

Set DataGrid1.DataSource = rs0

DataGrid1.Refresh

Exit Sub

k2:

If Err.Number = 3021 And Text1.Text = "" Then MsgBox " 员工编号不能为空", vbOKOnly, " 错误"

If Err.Number = 3021 And DataCombo1.Text = "" Or DataCombo2.Text = "" Then MsgBox " 部门, 职位不能为空", vbOKOnly, "错误"

If Err.Number = -2147467259 Then MsgBox "年龄必须在16~60周岁", vbOKOnly, "错误"

If Err.Number = -2147217900 And Text1.Text "" Then MsgBox "员工编号重复!", vbOKOnly, "错误"

End Sub

Private Sub Command6_Click()

Timer2.Enabled = True

c = False

d = False

End Sub

Private Sub DataCombo1_Click(Area As Integer)

d = True

End Sub

Private Sub DataCombo2_Change()

Dim rs3 As New ADODB.Recordset

Dim sql3 As String

sql3 = "select ziwu from bumengz where bumen='" & DataCombo2.Text & "'" Set rs3 = data1(rs3, sql3)

Set DataCombo1.DataSource = rs3

Set DataCombo1.RowSource = rs3

c = True

End Sub

Private Sub DataCombo2_Click(Area As Integer)

Dim rs3 As New ADODB.Recordset

Dim sql3 As String

sql3 = "select ziwu from bumengz where bumen='" & DataCombo2.Text & "'" Set rs3 = data1(rs3, sql3)

Set DataCombo1.DataSource = rs3

Set DataCombo1.RowSource = rs3

c = True

End Sub

Private Sub DataCombo3_Click(Area As Integer)

Dim rs2 As New ADODB.Recordset

Dim sql2 As String

sql2 = "select * from yuangon where bumen='" & DataCombo3.Text & "'"

Set rs2 = data1(rs2, sql2)

If rs2.BOF Then

MsgBox "部门内无员工信息", vbOKOnly, "新部门"

Else

Set rs0 = rs2

End If

Set DataGrid1.DataSource = rs0

DataGrid1.Refresh

End Sub

Private Sub DataGrid1_DblClick()

On Error GoTo k1:

If Text1.Enabled = False Then

Text1.Text = rs0.Fields(0)

Text2.Text = rs0.Fields(1)

Text3.Text = rs0.Fields(2)

Combo1.Text = rs0.Fields(3)

DataCombo2.Text = rs0.Fields(4)

DataCombo1.Text = rs0.Fields(5)

End If

Exit Sub

k1:

If Err.Number = 3021 Then MsgBox "无记录, 无法修改", vbOKOnly, "

End Sub

Private Sub Form_Load()

Combo1.ListIndex = 0

Set rs0 = New ADODB.Recordset

sql0 = "select * from yuangon"

Set rs0 = data1(rs0, sql0)

Set DataGrid1.DataSource = rs0

DataGrid1.Refresh

Dim rs1 As New ADODB.Recordset

Dim sql1 As String

sql1 = "select * from bumen"

Set rs1 = data1(rs1, sql1)

Set DataCombo3.DataSource = rs1

Set DataCombo3.RowSource = rs1

Set DataCombo2.DataSource = rs1

Set DataCombo2.RowSource = rs1

c = False

d = False

End Sub

Private Sub Text3_KeyPress(KeyAscii As Integer)

If Not IsNumeric(Chr(KeyAscii)) And KeyAscii 8 Then

KeyAscii = 0

End If

End Sub

错误"

Private Sub Timer1_Timer()

If DataGrid1.Height > 2655 Then DataGrid1.Height = DataGrid1.Height - 16.8 If Frame1.Height

If Frame1.Top > 2880 Then Frame1.Top = Frame1.Top - 15.6

If DataGrid1.Height = 2655 Then Timer1.Enabled = False

End Sub

Private Sub Timer2_Timer()

Frame1.Visible = False

If DataGrid1.Height

Frame1.Top = 4440

Frame1.Height = 15

Frame1.Visible = True

Timer2.Enabled = False

End If

End Sub

基本工资管理界面:

基本工资管理界面可以对各部门的不同职务基本工资进行添加、修改和删除操作,其实现代码如下:

Main.frm

Private Sub Form_Load()

StatusBar1.Panels(1) = "现在时间:" & " " & Date & " " & Time

End Sub

Private Sub j1_Click()

fuligl.Show

End Sub

Private Sub j2_Click()

bumengl.Show

End Sub

Private Sub j3_Click()

ziwugl.Show

End Sub

Private Sub k_Click()

End Sub

Private Sub k1_Click()

gerengl.Show

End Sub

Private Sub k2_Click()

fuli.Show

End Sub

Private Sub k3_Click()

bmgzgl.Show

End Sub

Private Sub k4_Click()

gonzitz.Show

End Sub

Private Sub l1_Click()

gonzicx.Show

End Sub

Private Sub l2_Click()

gonzidel.Show

End Sub

Private Sub l3_Click()

gonzifafang.Show

End Sub

Private Sub q_Click()

rizicx.Show

End Sub

Private Sub Timer1_Timer()

StatusBar1.Panels(1) = "现在时间:" & " " & Date & " " & Time

End Sub

Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)

Select Case Button.Index

Case 1

gerengl.Show

Case 2

Case 3

laowugongzi.Show

Case 4

jiangjin.Show

Case 5

koukuan.Show

Case 6

gongzihuizong.Show

Case 7

End

End Select

Option Explicit

Dim rs1 As New ADODB.Recordset

Dim sql1 As String

Dim a As String

Dim b As String

Private Sub Command1_Click()

Dim rs4 As New ADODB.Recordset

Dim sql4 As String

Dim rs41 As New ADODB.Recordset

Dim sql41 As String

On Error GoTo Now1:

sql41 = "select * from bumengz where bumen='" & DataCombo1.Text & "'and ziwu='" & DataCombo2.Text & "'"

sql4 = "update bumengz set ziwu='" & DataCombo2.Text & "',jibengonzi=" & Text2.Text & " where bumen='" & rs1.Fields(0) & "' and ziwu='" & rs1.Fields(1) & "' " a = "信息修改"

b = "" & DataCombo1.Text & " " & DataCombo2.Text & "" & " 基本工资"

If DataCombo2.Text rs1.Fields(1) Then

Set rs41 = data1(rs41, sql41)

If rs41.BOF = True Then

Call data3(sql4, a, b)

Set rs4 = data1(rs4, sql1)

Set rs1 = rs4

Else

MsgBox "本部门内存在相同职务工资,无法修改", vbOKOnly, "错误"

End If

Call data3(sql4, a, b)

Set rs4 = data1(rs4, sql1)

Set rs1 = rs4

End If

Set DataGrid1.DataSource = rs1

DataGrid1.Refresh

Exit Sub

Now1:

Select Case Err.Number:

Case -2147217900

MsgBox "基本工资不能为空", vbOKOnly, "错误"

Case 3021

MsgBox "本部门内暂无职务工资信息", vbOKOnly, "错误"

End Select

End Sub

Private Sub Command2_Click()

End Sub

Private Sub Command3_Click()

Dim sr As New ADODB.Recordset

Dim sql As String

sql = "select * from bumengz"

Set sr = data1(sr, sql)

End Sub

Private Sub Command4_Click()

Unload Me

End Sub

Private Sub Command5_Click()

Dim rs3 As New ADODB.Recordset

Dim sql3 As String

sql3 = "insert into bumengz (bumen,ziwu,jibengonzi) values ( '" & DataCombo1.Text & "','" & DataCombo2.Text & "'," & Text2.Text & ")"

Dim rs31 As New ADODB.Recordset

Dim sql31 As String

sql31 = "select * from bumengz where bumen='" & DataCombo1.Text & "'and ziwu='"

a = "信息增加"

b = "" & DataCombo1.Text & "" & DataCombo2.Text & "" & "基本工资"

On Error GoTo Now1:

Set rs31 = data1(rs31, sql31)

If rs31.BOF Then

Call data3(sql3, a, b)

Set rs3 = data1(rs3, sql1)

Set rs1 = rs3

Set DataGrid1.DataSource = rs1

DataGrid1.Refresh

Else

MsgBox "本部门内存在相同职务工资,无法添加", vbOKOnly, "错误"

End If

Exit Sub

Now1:

Select Case Err.Number:

Case -2147217904

MsgBox "基本工资只能输入数字", vbOKOnly, "错误"

Case -2147217900

MsgBox "基本工资不能为空", vbOKOnly, "错误"

End Select

End Sub

Private Sub Command6_Click()

Dim rs4 As New ADODB.Recordset

Dim rs41 As New ADODB.Recordset

Dim sql4 As String

Dim sql41 As String

Dim choose

sql4 = "select * from yuangon where bumen='" & DataCombo1.Text & "'"

sql41 = "delete from bumengz where bumen='" & DataCombo1.Text & "'and ziwu='" & DataCombo2.Text & "'"

a = "信息删除"

b = "" & DataCombo1.Text & "" & DataCombo2.Text & "" & "基本工资"

If rs4.BOF Then

choose = MsgBox("确定要删除信息?", vbOKCancel + vbDefaultButton2 + vbQuestion, " 警告")

If choose = vbOK Then Call data3(sql41, a, b)

Else

MsgBox "对应部门职务存在,信息可能正被使用!删除失败", vbOKOnly, "错误" End If

Set rs41 = data1(rs41, sql1)

Set rs1 = rs41

Set DataGrid1.DataSource = rs1

DataGrid1.Refresh

End Sub

Public Sub DataCombo1_Click(Area As Integer)

Dim rs2 As New ADODB.Recordset

sql1 = "select bumen,ziwu,jibengonzi from bumengz where bumen='" & DataCombo1.Text & "'"

Set rs2 = data1(rs2, sql1)

Set rs1 = rs2

Set DataGrid1.DataSource = rs1

DataGrid1.Refresh

End Sub

Private Sub DataGrid1_DblClick()

If Not rs1.BOF Then

DataCombo2.Text = rs1.Fields(1)

Text2.Text = rs1.Fields(2)

Else

MsgBox "本部门内无信息", vbOKOnly, "错误"

End If

End Sub

Private Sub Form_Load()

Dim rs0 As New ADODB.Recordset

Dim sql0 As String

sql0 = "select * from bumen "

Set rs0 = data1(rs0, sql0)

Set DataCombo1.DataSource = rs0

Set DataCombo1.RowSource = rs0

DataCombo1.Refresh

Dim rs00 As New ADODB.Recordset

Dim sql00 As String

sql00 = "select * from ziwu "

Set rs00 = data1(rs00, sql00)

Set DataCombo2.DataSource = rs00

Set DataCombo2.RowSource = rs00

DataCombo2.Refresh

If rs0.BOF Or rs00.BOF Then

Else

Command1.Enabled = True

Command4.Enabled = True

Command5.Enabled = True

Command6.Enabled = True

End If

Set rs1 = New ADODB.Recordset

sql1 = "select bumen,ziwu,jibengonzi from bumengz"

Set rs1 = data1(rs1, sql1)

Set DataGrid1.DataSource = rs1

DataGrid1.Refresh

End Sub

Private Sub Text2_KeyPress(KeyAscii As Integer)

If Not IsNumeric(Chr(KeyAscii)) And KeyAscii 8 Then

KeyAscii = 0

End If

End Sub

3)系统使用说明书

本系统基本上可以满足工资管理的基本要求,系统中使用的各种表格,保存相关的工资信息以及工资结构等信息。使用本系统的查询的前提是要输入员工的的标号,之后可以查询出员工的基本信息或工资结构。本系统经过实际的需求分析,采用功能强大的VB 作为开发工具,Microsoft SQL Server 作为数据库开发出来的小型的工资管理系统。 系统可以达到如下功能:1、通过员工的编号,查询出员工的基本信息。

2、通过员工的编号,查询出员工的工资结构以及基本工资。

3、通过员工编号,查询出员工的工资账目。

(5)附录或参考资料:

[ 1]黄梯云著 管理信息系统(第四版) 高等教育出版社

[ 2]刘炳文、许蔓舒编著 Visual Basic 程序设计教程 清华大学出版社

[ 3]Evangelos编著 Visual Basic 6.0高级开发指南 电子工业出版社

[ 4]李东玉等编著 Visual Basic6.0控件大全 清华大学出版社

[ 5]龚沛曾等编著 Visual Basic程序设计教程 高等教育出版社

[ 6]Francesco Balena著 Visual Basic 6编程技术大全 机械工业出版社

[ 7]张宏林等编著 Visual Basic6 开发数据库 人民邮电出版社

[ 8]刘韬等编著 Visual Basic数据库系统开发实例导航 人民邮电出版社

[ 9]王文莲等编著 电算化会计原理软件开发与试验 立信会计出版社

工资管理系统课程设计小结

经过小组成员的共同努力,通过可行性分析、系统分析、系统设计,最终系统功能达到了设计的要求,实现了我们的设计计划。

在实现系统功能的过程中,我们小组成员在翻阅了大量VB 方面的书籍,重新温习VB 的基础知识,了解VB 的基本语法, 又看了一些经经典案例后,学会了一些高级控件的使用,并运用到了系统中。

工资管理信息系统的整个开发过程采用了结构化的设计方法,遵循先逻辑后物理、自顶而下等原则,实现系统各部分的模块化,各子系统之间独立性强,便于系统的运行维护和日后的扩充和完善,达到的功能的设计要求。

由于我们的知识和经验的限制,我们肯定在细节方面还有很多的不足,有些细致的地方欠缺考虑,无法在系统中体现出来,有些虽然我们考虑到了,由于知识的严重欠缺,无法达到设计的要求。这个软件还存在这样那样的无法避免的缺点,但是在专业知识方面,学到了在课堂中无法学到的知识。比如在可行性分析中,一定要考虑到公司管理的实际情况,人机界面的设计要方便使用等,这些知识对一个系统开发人员来说,虽然是最基本的要求,但是我们在课程设计中学到呢,对我们将来的工作不失为一个好的开始。

由于某些方面的不足,在系统实现过程中,有些功能不能很好的实现,有待进一步改进。设计过程中遇到的困难,在老师和同学的帮助下,最终我克服了难题,完成了我的工作管理系统的设计。

通过此次系统地编写工资管理信息系统,自己在编程能力方面有了显著的提高。对VB 和管理信息系统了更加深刻的了解,深化了所学的基本知识,由单纯的书本知识,应用到具体实践,增强知识转化为实际操作的能力。


相关文章

  • 0903043信息管理作业
  • <信息管理>作业 第二章第3题 1.答:简单地说,信息是经过加工的数据.或者说,信息是数据处理的结果.一般来说,原始数据在没有经过分析加工以前,其意义不容易看出与认识.为了得到有意义的.有用的信息,必须对其进行加工处理. 数据和 ...查看


  • 信息资源管理题库-附答案
  • 一.单项选择题 1.下面不是新的信息采集技术的是 ( ) A.全自动电话访谈 B.电脑柜调研 C.发调查表 D.网络调研系统 2.信息解锁照解锁对象分为三类,下列不属于的是 ( ) A.事实检索 B.文献解锁 C.密码解锁 D.数据解锁 3 ...查看


  • 信息管理论文
  • 目录 1 信息管理---------------------- 2 2 管理信息系统要求------------------4 2.1 信息管理系统对信息管理地的要求:---------4 2.2 信息管理系统对信息管理制度的要求:---- ...查看


  • 浅析信息系统审计在我国的发展现状
  • 浅析信息系统审计在我国的发展现状 摘要:随着计算机技术的不断发展,企业的经营发展对于计算机信息系统的依赖程度越来越强,在信息技术突飞猛进的网络时代,由于大型管理信息系统的普遍使用,对信息系统安全和稳定性的控制受到越来越多的重视,信息系统审计 ...查看


  • 管理信息系统的概念
  • 第二章 管理信息系统的概念 学习目的和要求: 通过本章节的学习,要求学生了解管理信息的含义及基本特性,理解系统的概念,并能够以系统的观点来分析企业的信息系统:理解管理信息系统的概念.发展和类型,掌握MIS 的各种结构形式,以及其在现代化管理 ...查看


  • 信息管理与信息系统专业毕业论文选题
  • 信息管理与信息系统专业毕业论文选题 一.管理信息系统设计与开发 1.IT 行业市场情报管理信息系统设计与开发 2.某工业企业生产业务处理信息系统设计与开发 3.某产品质量管理信息系统设计与开发 4.某工业企业设备管理信息系统设计与开发 5. ...查看


  • 空间信息与数字技术本科毕业论文选题
  • 毕业论文(设计) 题 目 学 院 学 院 专 业 学生姓名 学 号 年级 级 指导教师 毕业教务处制表 毕业 毕业二〇一五年 十二月一 日 毕业 空间信息与数字技术毕业论文选题(1006个) 一.论文说明 本写作团队致力于毕业论文写作与辅导 ...查看


  • 第一章 信息资源管理导论
  • 第一章 信息资源管理导论 1. 信息 事物存在的方式和运动状态的表现形式. 2. 社会信息 社会信息是指为了特定的目的产生.传递.交流并应用于人类社会实践活动,包括一切由人类创造的语言.符号和其他物质载体表达和记录的数据.消息.经验.知识. ...查看


  • 信息安全等级保护定级指南
  • 附件2 信息系统安全保护等级定级指南 (试用稿) 公 安 部 二〇〇五年十二月 目 次 1 2 范围 ..................................................................... ...查看


  • 信息管理学
  • 现代远程教育 <信息管理学> 课 程 学 习 指 导 书 作者:臧国全 第一章 信息管理基础知识 [一].本章内容简介 本章概论了信息.信息管理.信息资源.信息技术.信息计量等基本概念.理论及技术应用. 本章学习目标 掌握信息. ...查看


热门内容