资源描述
库存管理系统的开发前言库存管理系统是一个企业单位不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要,所以库存管理系统应该能够为用户提供充足的信息和快捷的数据处理手段。但一直以来人们使用传统人工的方式进行库存管理,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对库存信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、易修改、可靠性高、存储量大、数据处理快捷、保密性好、寿命长、成本低、便于打印等。这些优点能够极大地提高库存管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中将以开发一套小型库存管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。第一章 管理信息系统综述2.1 概述 管理信息系统(Management Information System,简称MIS)是一个由管理人员和计算机组成的用以进行信息的收集、传输、加工、存储、维护和使用的系统。它是一门综合了管理科学,系统理论,计算机科学的系统性边缘科学。 管理信息系统的物理组成:(1)计算机硬件系统:包括主机、外部存储器、输入输出设备等。(2)计算机软件系统:包括系统软件和应用软件两大部分。(3)通信系统:包括线路等通信设施和与计算机网络、数据通信有关的软件等。(4) 工作人员:包括系统分析员、程序设计员、维护人员、管理员、操作人员等。2.2 管理信息系统的发展 管理信息系统通过对企业当前运行的数据进行处理来获得有关信息,以控制企业的行为;利用过去和现在的数据及相应的模型,对未来的发展进行预测;能从全局目标出发,对企业的管理决策活动予以辅助。从工业发达国家来看,管理信息系统的发展经历了以下几个阶段。 第一阶段:(1953年至1965年)单项数据处理阶段,也称电子数据处理(EDP)阶段。这是电子计算机在管理领域应用的起步阶段。这一阶段,由于当时计算机硬、软件的限制,数据处理的性质只是使用计算机代替人的手工劳动,进行简单的单项数据处理工作,如计算库存、数据统计、报表登记、编制计划等。这个阶段的处理方式主要是集中式的批处理。 第二阶段:(1965年至1970年)综合数据处理阶段,也称事务处理系统(TPS)阶段。这个阶段计算机硬、软件有了很大的发展,出现了多用户的分时系统,计算机开始应用于对某一个管理子系统的控制,并具有一定的反馈功能。如库存管理系统、生产调度系统、库存管理系统等。这个阶段的处理方式已发展为面向终端的联机实时处理。 第三阶段:(1970年至今)管理信息系统(MIS)阶段。这个阶段是在企业中全面的使用计算机把各种管理子系统的功能集中起来,构成了计算机化的全方位的信息系统,即现代管理信息系统。这个阶段的处理方式是在数据库和网络基础上组成分布式处理系统。它的特点是使用数据库和分时处理的计算机网络,并充分利用运筹学等数学方法,实现了硬件、软件和数据资源的共享。第二章 系统需求分析1. 1现行业务描述#库存简介库存管理的对象是很多的,广而言之,它可以包括:商业、企业库存的商品,图书馆库存的图书,博物馆库存的展品等等。在这里本文仅涉及工业企业的产品库存。它主要包括下列三部分:l 没有经过企业加工,而为企业生产或其他各方面所需要的原材料、燃料、半成品、部件等,如钢材、轴承、发动机、电动机等。l 已经过企业加工,但尚未加工完毕的在制品。l 企业已加工完毕,储而待销的成品与备件等。#库存作用库存的作用最基本的一个方面就是保证工业企业的生产、销售能够正常地、连续地、均衡地进行。具体说来,其作用可分述如下:l 适应原材料供应的季节性l 适应产品销售的季节性l 适应运输上的合理性和经济性l 造应生产上的合理安排l 适应批发量的大小#库存管理的目标:l 保证企业按科学的计划实现均衡生产,不要因缺少原材料或其他物资而停工停产。l 使库存管理的总费用达到最低。#库存管理的ABC分析法:ABC分析法就是按各种存货台套或存货单元的年度需用价值,将它们分为A、B、C三类。A类只占全部库存数量的10%,而它们却占全部库存年度需用价值的70%,对A类库存应细致地加强管理;B类占总库存数量的30%,它们的年度需用价值占总库存的20%;C类占总库存数量的60%,但它们的年度需用价值却只占全部库存的10%。对C类其所占的价值量较小,库存数量却较多,因此在管理上可适当粗略些,只要做到不缺货,不影响生产,不锈蚀变质,不造成经济损失即可。#入库供货单位发货-运输-货物到达后测试检验-送货单-库管人员查收入库-入库单#出库库存统计表-各使用单位-领料单-库管人员出库-出库单#订货库存管理部门向采购部门发出采购单-采购部门向供应单位传递订货单-供应单位组织发货-运输-货物到达后测试检验-入库1.2现行系统存在问题的分析1、国内外现状研究:计算机在管理中的应用开始于1954年,当时美国首先用计算机处理工资单。40多年来,计算机在处理管理信息方面发展迅速。例如,60年代美国计算机在管理中应用项目不到300项,到了1975年达到2670项。而现在,美国在财务会计上90%的工作由计算机完成;物资管理中80100%的信息处理由计算机完成;计划管理中是8090%。据计算机应用方面发展较快的国家统计,计算机用于经济管理的约占80%;用于科技运算的占8%;用于生产过程控制的占12%。因此,经济管理是计算机应用的主要领域。当然,由于库存管理在经济管理中占重要地位,其计算机化在发达国家中也已经达到了相当高的水平。我国在全国范围内推广计算机在管理中的应用,是在70年代末开始的,虽然起步较晚,近几年发展却较快,特别是微型计算机的出现和普及为信息处理提供了物美价廉的手段,对于推动我国管理信息处理的现代化起了重要的作用。2、目前存在的问题:库存管理对企业来说是一项繁琐复杂的工作,每天要处理大量的单据数据。为及时结清每笔业务,盘点库存和货物流动情况,保证企业生产用料以及货物安全,库管人员要花费大量人力物力和时间来作数据记录统计工作。 在世界发达国家,库存管理的计算机化水平已经很高了,尽管我国的生产企业在这方面也有了很强的意识和长足的进步,但仍存在这样、那样的一些问题。表现之一:有的企业单位的库存管理部分目前仍为手工、半手工操作。从供应单位办理入库登记开始,到使用单位输领料出库手续为止,所有操作基本上都是由仓库管理人员笔写,手理,加上算盘、计算器来完成。这不仅繁锁,效率低,而且缺乏库存管理的一些基本手段,如库存状况统计,查询经济订货量计算等,这给企业在一定程度上造成了管理上的落后,及经济利益上的损失。表现之二为:有的单位的库存管理部已上了微机,但对微机的利用效率极低,有的在用它打游戏,有的仅把它当计算器或打字机来用。表现之三为:有的企业单位既有了微机同时也有了库存管理软件,但硬件上去了,软件上不去。因为他们用的库存管理软件,大多为自己的工作人员及其他一些非专业人员所开发的简单的管理程序,很难称得上是“库存管理信息系统软件”这些程序的弱点多表现为:1)系统开发时无科学的理论支持。2)开发过程中调研不全面。3)软件编写时模型不清晰完整。4)所用开发工具落后(如Foxbase等)。1.3解决方案根据我国国内库存管理信息系统在企业中应用普及时出现的各种问题,利用当前管理信息系统科学的、实用的理论,开发一套库存管理系统,以求能提高我国库存管理现代化水平。#理论支持(1) 当前计算机管理界所流行且实用的系统建设三原则:整体性原则、分作协调原则、目标优化原则。(2) 系统开发的结构化生命周期法。其基本思想是把整个系统开发过程分成若干个阶段,每个阶段进行若干活动,每项活动应用一系列标准、规范、方法和技术,完成一个或多个任务,形成符合给定规范的产品。 采用结构化生命周期法开发管理信息系统时,应遵循的主要原则: (一)用户参与的原则 (二)“先逻辑后物理”的原则 (三)“自顶向下”的原则 (四)工作成果描述(主要指文档)标准化的原则 其具体开发步骤可分为以下四步: (一)系统规划 (二)系统开发 1、系统分析 2、系统设计 3、系统实施 (三)系统的运行及维护 (四)系统评价 (3) 原型法。 其基本思想是在系统开发的初期,尽快构造出系统的原型,使用户能及早地运行这个系统原型,通过使用它、熟悉它,受到启发并取得经验,然后对系统的目标和功能提出更精确、具体的要求,研制人员据此逐渐修改和完善原型,使它满足用户的需求,最后完成系统的开发。该方法大大提高了系统开发效率,弥补了结构化生命周期法开发时间长的缺陷。 通常采用原型法需以下四个阶段: (一)明确用户的基本要求 (二)研制系统的原型 (三)使用、评价系统原型 (四)修改和完善原型#系统设计系统设计阶段的主要目的是将系统分析阶段所提出的反映了用户信息需求的系统逻辑方案转换成可以实施的基于计算机与通信系统的物理(技术)方案。包括总体结构设计、总体功能设计、总体物理结构设计、系统详细设计、数据库设计(概念结构设计、逻辑结构设计、物理结构设计)、代码设计、输入输出设计等。1.4可行性分析可行性分析能使新系统达到以最小的开发成本取得最佳的经济效益。可行性分析的目的,是根据开发管理信息系统的请求,通过初步调查,对要开发的管理信息系统从技术上、经济上、资源上和管理上进行是否可行的研究分析。这是一项保证资源合理使用、避免失误和浪费的重要工作。 1、经济上的可行性。对组织的经济状况和投资能力进行分析,对系统开发、运行、维护费用进行估算,对系统建成后可能取得的社会效益和经济效益进行估计。主要分析成本与收益、投资效果等。 2、技术上的可行性。对现有技术进行评价,分析系统是否可以用现有的技术来实施。主要分析技术力量、计算机性能、通讯网络和系统条件等。 3、资源上的可行性。主要指设备、经费等能否得到保证。 4、管理上的可行性。如计量管理水平、各种数据收集的可能性和领导对开发系统的态度。 可行性分析要写成可行性报告。可行性报告需报请领导讨论、专家审议,通过后,才可进入详细调查阶段第三章 系统分析与设计系统分析就是明确系统开发的目标和用户的信息需求,提出系统的逻辑方案。系统分析在整个系统开发过程中,是要解决“做什么”的问题,把要解决哪些问题、要满足用户哪些具体的信息需求调查、分析清楚,从逻辑上或从功能需求上提出系统的方案。3.1新系统的目标系统开发的总体任务是实现企业库存管理的系统化、规范化和自动化,从而达到提高企业物资库存管理效率的目的。3.2 应用需求分析作为一个库存管理系统,我最先想到的是系统的操作要求简单,功能要求完善,性能要求良好。很容易就可以达到库存管理的目的。一、通过对系统的调查和可行性分析,画出系统的实际操作业务流程图:供货单位管理使用单位管理材料登记基本信息录入基本信息管理 材料调配出库管理入库管理库存盘点当然各个环节操作仍需进一步细化以来满足用户对管理进行全面操作的要求。二、数据流程图 (DFD图)操作员0层:0物资余额汇总报表库存管理系统操作员 项目管理信息物资入库信息操作员查询条件物资出库信息查询结果数据字典: 1. 项目管理信息包括员工管理、供应管理、客户管理、材料管理、材料分类 其中:员工管理包括姓名、职务、电话、密码 供应管理包括名称、级别、地址、联系人、电话、备注 客户管理包括名称、地址、联系人、电话、产品、数量、备注 材料分类包括编号、分类名称 材料管理包括名称、分类、单位、备注 2.物资入库信息包括分类、名称、数量、单价、供应商、经手人3.物资出库信息包括分类、名称、数量、服务客户、经手人 4. 物资余额汇总报表包括ID、名称、单价、数量、金额、供应商、日期、时间、经手人.其中金额=单价*数量 4. 查许条件可以根据根据入库物资或出库物资的物资名称、ID、入(出)时间进行查询,还可以综合查询 如物资名称+经手人等等.来查物资情况信息. 5.查询结果就是根据查询条件得到一条完整的记录: 各种物资入库情况以及物资出库情况信息 加工说明0: 输入:项目管理信息, 入库物资信息,出库物资信息,查询条件处理:(1)根据输入的各种物资单价和数量,计算出金额总数 (2)对出库物资的数量进行控制,要求出库物资数量<库存物资余额 (3) 库存物资余额计算:同一仓库同一物资的入库汇总数量-同一仓库同一物资的出库汇总数量 (4)计算物资金额 物资金额=单价*数量 (5) 根据查询条件进行查询 (6)根据需要打印 输出:物资入库信息报表,物资出库信息报表,物资余额信息报表,查询结果D21层DFD图 出库表操作员0.30.1材料基本处 理操作员出库信息出库信息处 理材料基本信息 入0.4库 操作员查询打印D0 信查询条件息库存材料表查询结果打印报表0.2 入库信息处理D1 入库表加工说明:0.1材料基本处理 输入: 材料编号,材料名称,分类,单位,数量,备注 输出: 库存材料表 处理: 根据输入的材料基本信息进行材料记录的增加,修改和删除 0.2 入库信息处理 输入:编号,名称,供应商,单位,数量,单价,经办人,日期,时间 输出:入库表 处理: 根据输入的入库材料信息进行材料记录的增加,修改和删除 0.3 出库物资处理: 输入:编号,名称,数量, ,经办人,用途, 日期,时间 输出:出库表 处理: (1) 对出库材料的数量进行控制,要求出库材料数量<库存材料余额. (2) 根据输入的出库材料信息进行材料记录的增加,修改和删除 0.4 查询 输入:查询条件 输出:查询结果打印报表 处理 根据查询条件对记录进行分类,输出查询结果或打印报表三、数据字典(DD) 数据字典(Data Dictionary),是数据流图(DFD)上所有成分的定义和解释的文字集合。它是系统分析阶段的重要文档,它的作用是将数据流图中全部数据流及其组成部分的数据元素、数据存储、数据加工外部项等,通过数据字典描述清楚,以便于以后系统设计时使用。 1、数据流的DD表举例如下: 数 据 流系统名:库存管理 编号:条目名:物资入库报表 别名:来源:仓库 去处:单位领导数据流结构:入库表=ID、名称、单价、数量、金额、供应商、日期、时间、经手人简要说明:物资入库报表每月统计一次交单位领导修改记录: 编写 日期 审核 日期 2、数据元素的DD表举例如下:数 据 元 素系统名:库存管理 编号 条目名:ID 别名 属于数据流:物资入库报表 存储处:入库表 出库表数据元素值:代码类型:字符宽 度:6取值范围及含义: 简要说明:每一种物资都有一个唯一的编号修改记录: 编写 日期 审核 日期 3、数据存储的DD表举例如下:数 据 存 储系统名:库存管理 编号:条目名:入库表存 别名: 存储组织: 记录数:约3000 主关键字:ID 数据量:约500KB 辅关键字:按物资编号主索引 记录组成:字段名称:ID 名称 类别 数量 . 宽度: 6 32 10 . 10 简要说明:修改记录: 编写: 日期: 审核: 日期: 4、数据加工的DD表举例如下: 数 据 加 工系统名:库存管理 编号:条目名:入库添加 别名: 输 入:名称 输出:入库物资表基本属性情况处理逻辑:入库物资信息存储在入库表中简要说明:输入某种物资的入库情况记录修改记录: 编写: 日期: 审核: 日期: 3.3 系统数据库设计数据库设计是要在一个给定的应用环境(DBMS)中,通过合理的逻辑设计和有效的物理设计,构造较优的数据库模式、子模式,建立数据库和设计应用程序,满足用户的各种信息需求。l概念结构设计在数据库设计中,先要对系统分析所得的数据字典中的数据存储进行分析,然后得出系统的关系模式,可以采用实体联系图(简称ER图)的方法进行数据结构的描述。ER图由实体、属性、联系三部分组成。ER图的有关符号说明如下: 实体 属性根据数据字典的内容,得到本系统的实体联系图如下: 材料管理实体 名称 . 分类 单位 备注. 库存管理系统的E-R图 入库信息实体分类 名称 入库日期 . 经办人 . . 库存管理系统的E-R图(二) 出库信息实体分类 名称 出库日期 . 经办人 . . 库存管理系统的E-R图(三)入库信息材料材料登记材料调配材料信息材料信息实体之间关系的E-R图l逻辑结构设计实体联系图向关系模型的转换结果如下所示:员工管理(姓名、职务、电话、密码)供应管理(名称、级别、地址、联系人、电话、备注)客户管理(名称、地址、联系人、电话、产品、数量、备注)材料分类(编号、分类名称)材料管理(名称、分类、单位、备注)物资入库信息(分类、名称、数量、单价、供应商、经手人)物资出库信息(分类、名称、数量、服务客户、经手人)物资余额汇总(ID、名称、单价、数量、金额、供应商、日期、时间、经手人).l物理结构设计物理结构设计的原则如下:(1)尽可能的减少数据冗余和重复。(2)结构设计与操作设计相结合。(3)数据结构具有相对的稳定性。基于以上设计原则,本系统中相关数据库表结构设计举例如下:员工表字段名 标题 类型 宽度 小数ID 编号 Long 6姓名 姓名 TEXT 10职务 职务 TEXT 10电话 电话 TEXT 50密码 密码 TEXT 10库存材料表字段名 标题 类型 宽度 小数ID 编号 LONG 4名称 名称 TEXT 50分类 分类 TEXT 50单位 单位 TEXT 50数量 数量 INTEGER 2 0 备注 备注 TEXT 50客户表字段名 标题 类型 宽度 小数ID 编号 LONG 4名称 名称 TEXT 50地址 地址 TEXT 50电话 电话 TEXT 50联系人 联系人 TEXT 50产品 产品 TEXT 50数量 数量 LONG 4单价 单价 CURRENCY 8备注 备注 TEXT 50供应商表字段名 标题 类型 宽度 小数ID 编号 LONG 4名称 名称 TEXT 50地址 地址 TEXT 50电话 电话 TEXT 50联系人 联系人 TEXT 50级别 级别 INTEGER 2备注 备注 TEXT 50材料分类表字段名 标题 类型 宽度 小数ID 编号 LONG 4分类 分类 TEXT 50入库表字段名 标题 类型 宽度 小数ID 编号 LONG 4名称 名称 TEXT 50供应商 供应商 TEXT 50数量 数量 LONG 4单价 单价 CURRENCY 8经手 经手人 TEXT 10日期 入库日期 DATE/TIME 8时间 时间 DATE/TIME 8出库表字段名 标题 类型 宽度 小数ID 编号 LONG 4名称 名称 TEXT 50供应商 供应商 TEXT 50数量 数量 LONG 4用途 用途 TEXT 50经手 经手人 TEXT 10日期 入库日期 DATE/TIME 8时间 时间 DATE/TIME 8l数据库的安全性、完整性、并发控制和恢复 信息数据是企业中非常重要的资源,因此保证数据库的安全可靠、正确有效是非常重要的问题。一般的数据库管理系统(DBMS)都有提供了一定的数据保护功能。数据库保护也称为数据控制,主要包括数据的安全性、完整性、并发控制和数据库的恢复等。(1)数据库的安全性 数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。由于数据库系统中存放着大量的数据,且为许多用户所共享,因此安全性问题是必须首先要解决的。一般计算机系统中的安全措施是按照“用户标识和鉴别”、“DBMS存取控制”、“OS级安全控制”、“DB密码存储”来一级一级设置的。在现在流行的数据库系统中一般都提供以下两种控制:用户标识和鉴别、数据存取控制。 (2)数据完整性为了保证数据库数据的正确性和相容性,数据库管理系统(DBMS)都提供了一种机制来检查数据库中的数据,看它是否满足语义的规定条件,DBMS称这种机制为“数据完整性检查”。一般的DBMS中是通过完整性约束和数据库触发器来实现这一机制的。(3)并发控制在多用户数据库环境中,多个用户程序可并行存取数据库中的数据,为了以正确的方式调度该并发操作,避免造成“丢失修改”、“不能重读”、“读脏数据”等不一致的情况,DBMS引入了“并发控制”这一机制。并发控制的主要方法是采用封锁机制,一般采用两种封锁机制:共享机制和排它机制来实现。(4)数据库后备与恢复主要使用转储、日志等方法进行数据库的恢复。第四章为什么要开发一个库存管理系统?4.1计算机库存管理的意义 计算机已经成为我们学习和工作的得力助手:今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:首先,计算机可以代替人工进行许多繁杂的劳动;其次,计算机可以节省许多资源;第三,计算机可以大大的提高人们的工作效率;第四,计算机可以使敏感文档更加安全,等等。 在中小型生产企业中开发计算机库存管理系统的意义现在我国的企事业特别是中小型生产企业的库存管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。而购买大型通用库存管理系统,对中小型企业来说,又需要付出昂贵的代价,而且库存管理项目不一定完全符合企业库存管理的要求。因此根据企业目前实际的库存管理情况开发一套库存管理系统是十分必要的。 归纳起来,好处大约有以下几点:1 可以存储各类信息档案包括物资、产品基本信息、供货单位信息、使用单位信息等。2 可以方便快捷的进行物资入库管理物资出库管理等等,安全、高效;3 通过查询库存,及时了解库存余额信息,便于订货下单,以免由于缺货,影响生产。另外,还提供经济订货量计算功能和打印订货采购单功能。4 支持库存盘点功能6 只需一到二名仓库管理员或仓库保管人员即可操作系统,节省大量人力;7 可及时打印库存余额,方便领导决策或安排及时定货.另外,库存系统能为用户带来的效益: 1、工作变得轻松,注意力向更高层次转移由于库存系统的使用,当用户输入入库单等票据后,可以打印出相应的单据,并自动生成相应的记账凭证;而且像结转成本之类需要大计算量的工作,用人工需要几天才能解决,而用计算机在短时间内即可完成。2、信息准确,责任明晰,加强内部管理库存系统中的每张单据都会对操作人员、操作时间、授权人员进行详细、准确的记录,一旦发生问题,系统可明确的显示出责任所在,以往企业内部的互相推诿、职责不清的情况将被系统终结,企业的内部管理将大大加强。3、信息共享,快速响应市场要求库存系统最大的效益就是企业内部的信息在各个部门之间的共享,帮助企业快速的响应市场的要求。可以直接查到库存余额,再根据客户的信用额度,采购(销售)人员可以马上确定采购(销售)数量,既能及时把握生产进度,又能对客户进行有效监控;采购部门根据信息,严格执行采购计划,确保生产工作的进行,而过去存在的盲目采购等混乱局面也将不复存在。4.2 为将来企业上网做好准备第五章 怎样开发一个通用库存管理系统?51 开发工具的选择1、 开发平台考虑到本系统的性能要求,和现有的条件,我们选择了WINDOWS98中文版作为开发、测试和运行的平台。因为WINDOWS操作系统是目前应用最广的操作系统,它以全新的图形界面,简单快捷的操作方式,支持多媒体功能等特点而成为软件发展的流行趋势,选用它作为开发平台,易于功能的扩展和软件升级。2、 开发工具针对目前世界上流行的大量软件和开发工具,经过认真分析其优缺点,结合库存管理系统的需要和目前的硬件环境,我们选用微软WINDOWS平台下的Visual Basic作为软件开发工具。微软公司的Visual Basic 6.0是Windows应用程序开发工具,是目前最为广泛的、易学易用的面向对象的开发工具。它既是一种编程语言,同时也是一个强大的集成开发环境。作为语言,它的语法简单、容易入门,作为开发环境,功能强大,操作便捷、自然;其面向对象的开发模型和思路能够充分解放程序员的想象力。我之所以选择设计这样一个系统,并选择VB作为编程的环境,首先是因为我觉得VB是一种很好的可视化开发工具,正是它成功的对象编程,才有人这样讲: “一旦了解Visual Basic的基础,就要准备迎接新的更大的挑战。那么,到底能用Visual Basic干什么呢?也许应该问不能用它干什么更恰当一些。答案是:没有什么不能干的!从设计新型的用户界面到利用其它应用程序的对象,从处理文字图象到使用数据库,VB都提供了完成这些工作的所有工具。”Visual Basic 是一种用对象的属性、事件和方法进行编程、具有可视化特点、极易学习和掌握的程序设计语言。使用它,可以轻松快捷地设计、开发出Windows 风格的应用程序。应用程序的开发,从大的方面说可以分成界面设计与代码编写两大任务。Visual Basic 以交互和可视的方式,通过窗体以及往其上安放控件(对象)来进行界面设计。Visual Basic 采用面向对象技术,以事件驱动方式来激活应用程序的代码执行。因此,使用者只需把精力放在事件过程代码的编写上,而无需去思考“应用程序执行顺序”这个全局性的问题。往往这个问题在传统或“过程化”的程序设计中却要牵扯人们的精力。由于Visual Basic 6.0是一种可视化的、面向对象的、采用事件驱动方式的结构化高级程序设计语言,它将应用程序的设计、编辑、编译和调试等不同环节封闭在一起,形成一个功能完备的、可灵活搭建的集成开发环境,所以它是创建具有Windows 风格应用程序的最为简捷、便利的工具之一。VB提供了很多向导,它们极大的提高了编程的效率。VB的一个强大体现是它支持大量的控件,所以大量的第三方控件,从数据库支持、图形处理、到I/O接口处理、加密解密处理等几乎无所不包。通常,VB程序员通过精心的选择控件,或采用VB6的新特性:设计控件,并将其在窗体上合适的布局,来表达自己的审美趣味和界面设计的能力。Visual Basic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。故而,实现本系统VB6是一个相对较好的选择。运行环境选择现在使用最为广泛的windos98;windows2000。52关系型数据库的实现Access2000 就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。Access 的优点在于它能使用数据表示信息或自定义窗体收集信息。数据表提供了一种类似于 Excel 的电子表格,可以使数据库一目了然。另外,Access 允许创建自定义报表用于打印或输出数据库中的信息。Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。Access 是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。如上所述,Access 作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。53二者的结合(DBA)微软的JET数据库引擎提供了与数据库打交道的途径,我们是通过它以及Visual Basic 来访问数据库并对其进行各种操作。Visual Basic、Access以及其他微软的软件产品都是通过共用JET数据库引擎,从而给用户提供了丰富的数据类型。DATA 控件在数据库中的信息与将信息显示给用户看的Visual Basic程序之间架起了一座桥梁。我们可以设置DATA控件的各个属性,告诉它要调用那个数据库的哪个部分。缺省情况下,DATA控件根据数据库中的一个或多个数据表建立一个dynaset-type(动态集合)类型的记录集合。一个记录集合是动态的也就意味着,当原来的数据表中的容改变了以后,该记录集合中的记录也会随之改变。DATA控件还提供了用来浏览不同记录的各种跳转按钮。将DATA控件放置在窗体中之后,我们还必须在该控件与要处理的数据库之间建立联系。54库存管理系统的设计:管理信息系统设计阶段的主要目的是将系统分析阶段所提出的反映了用户信息需求的系统逻辑方案转换成可以实施的基于计算机与通信系统的物理(技术)方案。根据实际情况,我们使用原型法(Rapid Prototyping)即以少量代价快速地构造一个可执行的软件系统模型。使用户和开发人员可以较快地确定需求,然后采用循环进化的开发方式,对系统模型作连续的精化,将系统需具备的性质逐渐增加上去,直到所有的性质全部满足。此时模块也发展成为最终产品了。541 系统设计的依据 1、系统分析的成果 2、现行技术 3、现行信息管理和信息技术的标准、规范和有关法律制度 4、用户需求 5、系统运行环境542 系统总体结构设计 绘制出系统的功能模块图,即HIPO图。库存管理系统的HIPO图如下: 库存管理系统 用户登录帮助关于系统维护 项目管理出库管理报表打印入库管理 添加新用户材料分类、管理供应商管理客户管理员工管理入库信息添加修改出库信息添加修改出库报表入库报表出库信息查询入库信息查询 543 代码设计代码,就是用来表征客观事物的实体类别,以及属性的一个或一组易于计算机识别和处理的特定符号或记号。它的作用是描述对象状态,便于统计和检索对象。代码设计的原则:适应计算机处理、简单明了、具有可扩充性、系统性、便于识别和记忆等。本系统对所有数据库表中的主码和外来码均采用“汉字名称”作为代码。5.4.4 用户界面设计用户界面是指软件系统与用户之间交互的接口,通常包括输出,输入,人机对话的界面与方式等。由于本系统的最终用户是那些对计算机技术并不算很精通的管理人员,因此本系统采用了基于菜单选择,填写表格和简单的问答选择等友好的用户界面交互方式。l系统安全性验证用户界面设计用户登录窗口界面是用户看到的第一幅画面,也是进入系统之前必须经过的一道“关口”。因此,简洁、实用、友好、安全是设计时应当考虑到的风格。用户登录本系统,登录画面为:l系统主画面屏幕区域设计进行系统的主画面屏幕区域设计时,是将整个屏幕划分为二个区域,如下图所示:主 菜 单 区工 作 区在屏幕的最上方是主菜单区,显示本系统的功能主菜单。用户可以有鼠标左键来选择相应的菜单,也可以用快捷键进行操作,然后用同样的方法在相应菜单下拉出该项的二级菜单(如果有的话),如果还有三级菜单,用户可在二级菜单选择相应的功能项,系统会自动弹出三级菜单。当通过菜单选择了所要进行的工作以后,系统进入相应的业务处理功能,这时业务处理活动在屏幕中间区域即工作区进行。在整个业务处理过程中,主菜单区始终存在以使用户明确当前正在进行的处理,当用户为业务处理完毕后,系统返回主菜单。5.4.5处理过程设计处理过程设计要根据模块划分以及结构化设计的基本原则,对每一程序处理模块中的详细处理过程进行设计。常用的设计工具包括程序流程图、过程化设计语言、判定表、判定树等。第六章 系统的实现 第七章 开发总结与对管理信息系统的展望7.1 开发总结 经过近半年的努力,在老师的悉心帮助下,我终于完成了该论文。在此,我要深深感谢我的指导老师和所有帮助、支持过我的老师、同事们。 通过此管理信息系统的开发,做到了理论联系实际,将书本上学到的知识与具体实践充分结合起来,既解决了工作中的一些问题,又进一步明确了开发管理信息系统的方法和思想;既加深了对管理信息系统的认识,又进一步巩固了以前所学的计算机软件开发方面的知识,提高了软件开发的水平,从而为今后在实际工作中更好的应用计算机进行信息管理打下了坚实的基础。7.2 对管理信息系统的展望 管理信息系统从60年代开始,已经经历了电子数据处理阶段(EDP),事务处理阶段,管理信息系统阶段(MIS),随着计算机技术,数据处理技术及相关学科的迅猛发展,现在管理信息系统正朝着自适应、自学习的更高阶段进军。1、专家系统(ES)。 是通过对专家的知识的认识,模拟专家的思维、技巧、和直觉,从而处理与解决问题的信息系统。2、计算机集成制造系统(CIMS)。 是利用计算机将互相独立发展起来的计算机辅助设计系统(CAD)、计算机辅助制造系统(CAM)与管理信息系统(MIS)综合为一个有机整体,从而达到设计、制造和管理过程自动化的系统。3、战略信息系统(SIS)。 是一种把信息技术作为实现企业战略目标和竞争武器的信息系统。4、执行信息系统(EIS)。 是专供高层决策者使用的系统。它综合了信息报告系统(IRS)和决策支持系统(DSS)的许多特征的一种信息系统。参考资料:管理信息系统导论 黄梯云 机械工业出版社 管理信息系统 黄梯云 经济科学出版社计算机应用基础教程 周澄华、杨洪 中国经济出版社信息系统开发 甘仞初 经济科学出版社 数据组织与结构 王珊 经济科学出版社软件开发工具 方美琪 经济科学出版社运筹学基础库存管理,张学群、楼克明,经济出版社Visual VB6.0中文程序员指南 北京希望电脑公司附录/ Machine generated IDispatch wrapper class(es) created by Microsoft Visual C+/ NOTE: Do not modify the contents of this file. If this class is regenerated by/ Microsoft Visual C+, your modifications will be overwritten.#include "stdafx.h"#include "_recordset.h"/ Dispatch interfaces referenced by this interface#include "properties.h"#include "fields.h"/ C_Recordset properties/ C_Recordset operationsCProperties C_Recordset:GetProperties()LPDISPATCH pDispatch;InvokeHelper(0x1f4, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&pDispatch, NULL);return CProperties(pDispatch);long C_Recordset:GetAbsolutePosition()long result;InvokeHelper(0x3e8, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL);return result;void C_Recordset:SetAbsolutePosition(long nNewValue)static BYTE parms =VTS_I4;InvokeHelper(0x3e8, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, nNewValue);void C_Recordset:SetRefActiveConnection(LPDISPATCH newValue)static BYTE parms =VTS_DISPATCH;InvokeHelper(0x3e9, DISPATCH_PROPERTYPUTREF, VT_EMPTY, NULL, parms, newValue);void C_Recordset:SetActiveConnection(const VARIANT& newValue)static BYTE parms =VTS_VARIANT;InvokeHelper(0x3e9, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, &newValue);VARIANT C_Recordset:GetActiveConnection()VARIANT result;InvokeHelper(0x3e9, DISPATCH_PROPERTYGET, VT_VARIANT, (void*)&result, NULL);return result;BOOL C_Recordset:GetBof()BOOL result;InvokeHelper(0x3ea, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, NULL);return result;VARIANT C_Recordset:GetBookmark()VARIANT result;InvokeHelper(0x3eb, DISPATCH_PROPERTYGET, VT_VARIANT, (void*)&result, NULL);return result;void C_Recordset:SetBookmark(const VARIANT& newValue)static BYTE parms =VTS_VARIANT;InvokeHelper(0x3eb, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, &newValue);long C_Recordset:GetCacheSize()long result;
展开阅读全文