进销存管理系统设计报告_第1页
进销存管理系统设计报告_第2页
进销存管理系统设计报告_第3页
进销存管理系统设计报告_第4页
进销存管理系统设计报告_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

西安财经学院信息系统分析与设计课程设计报告题目 进销存管理系统 姓名 专业 信息管理与信息系统 班级 XXXX 学号 XXXXXXXX 一、系统概述1(一)序言1(二)系统任务1(三)系统目标2(四)人员分工2二、系统需求分析2(一)、需求分析2(二)、可行性分析31、技术方面的可行性32、经济可行性研究33、操作可行性研究4三、系统分析4(一)业务流程分析(销售部分)4业务流程图图例说明:4(二)数据流程分析5(三)数据字典7四、系统设计11(一)系统总体设计111、系统总体结构12(二)系统的详细设计151、代码设计152.输入输出设计15(三)数据库设计171、概念结构设计172、逻辑结构设计183、物理结构设计19五、系统实施20(一)开发工具的选择201、 SQL介绍202、Visual basic编程语言简介213、SQL Server 数据库简介21(二)源程序清单211、VB源代码222. 数据库源代码31供应商资料表31(三)、数据库中部分表的关系及约束33(四)运行界面34连接数据库界面:34(五)、系统调试、测试401、 测试的意义402、 测试原则403、 系统测试的方法414、测试用例41课程设计总结42致谢43参考文献44一、系统概述(一)序言社会在不断进步,科学技术和管理也在迅速发展,这使得每个企业得到了前所未有的发展机遇,但同时也必须面临市场竞争的严重挑战,在日趋激烈的竞争环境下,企业要求生存、发展,就必须对企业进行科学的管理。而用计算机来处理企业内部信息间的流通和使用,既可以实现数据信息的共享,控制好数据的冗余度,并使企业有统一的管理,提高信息的利用率;又可以实现整体数据的结构化,这样就可以大大的提高企业决策的效率。中小企业在我国经济发展中具有重要地位,目前我国的中小企业数量多,地区分布广泛,行业分布跨度大。随着全球经济一体化的发展和电子商务的兴起,中小企业之间的竞争将越来越激烈。网络及电子商务的迅猛发展突破了时间、空间的局限性,给中小企业带来了更多的发展机会,同时也增大了企业之间的竞争强度。这就要求中小企业必须改变企业的经营管理模式,提高企业的运营效率。目前,我国中小企业的信息化水平还很低,相比国外企业,还只处于刚开始始用的阶段。随着技术发展,电脑操作及管理日趋简化,电脑知识日趋普及,同时市场经济快速多变,竞争激烈,企业采用电脑管理进货、库存、销售等诸多环节也已成为趋势及必然。物资、人才、资金并称为企业的三大资源,控制物流是每个企业都需要做好的事情。本次设计即是针对企业在进、销、存管理方面所做的分析,进销存管理就是要权衡库存费用(包括商品价值,订货费用,短缺等),使总费用最低。进销存管理系统的职能大体上包括采购管理、销售管理和库存管理。本软件是一款通用性极强企业进销存管理系统,软件囊括了企业进、销、存管理的全过程。(二)系统任务 进销存管理系统是一个将资料管理、采购管理、销售管理和库存管理等业务融为一体的系统。一个完善的进销存管理系统的任务主要包括以下几项: 1、资料管理,主要负责管理供应商资料、商品资料以及客户资料。 2、采购管理,主要负责采购管理,包括采购单、采购入库和采购查询 3、销售管理,主要负责进行销售管理,包括销售单、销售出库和销售查询 4、库存管理,主要负责进行库存管理,包括库存维护、价格管理和库存盘点 5、统计分析,主要负责统计企业的出入库情况以及成本收益。 6、系统管理,主要负责管理用户信息和用户登录,以及初期建账。(三)系统目标 进销存管理系统是一个现代化软件系统,通过集中式的信息数据库,将进、销、存等经营业务有机地结合起来,达到共享数据、降低成本、提高效率和改进服务等目的。一般而言,通过使用进销存管理系统,可以在以下几方面提高企业的管理水平:1、 更好地了解供应商和客户信息,加强对商品资料的管理。2、 降低采购成本,及时了解采购情况。3、 准确了解销售动态,及时调整营销策略。4、 了解库存情况,及时进行价格管理以及库存数量维护。5、 减少储备资金占用,加速资金周转,提高资金利用率。6、 提供商业数据智能分析,了解商业动态,为管理者提供决策依据。(四)人员分工 本次系统开发由XX、XXX、XX三人一起完成。XX主要负责采购方面,XX负责销售方面,XX负责库存方面。后台数据库共同完成。二、系统需求分析(一)、需求分析通过调查,要求系统需要具有以下功能:.由于操作人员的计算机知识普遍较差,要求有良好的人机界面。.由于该系统的使用对象多,要求有较好的权限管理。.方便的数据查询,支持多条件查询。.基础信息管理与查询(包括商品信息、客户信息、供应商信息)。.通过计算机,能够直接“透视”仓库存储情况。.完善的商品采购信息、商品销售信息进行管理。.方便、健全的结账功能。.当外界环境(停电、网络病毒)干扰本系统时,系统可以自动保护原始数据的安全。.数据计算自动完成,尽量减少人工干预。.系统退出。(二)、可行性分析 1、技术方面的可行性 将开发是进销存管理系统编程已经具备了完备、成熟的理论和体系结构,Visual Basic编程与数据库相结合进行开发的技术日趋成熟。 与工程产品相关的关键技术概念 本系统的关键技术在于Visual Basic编程的程序设计与数据库的结合,将所有的数据信息都放入数据库中进行存储,而这些数据信息的调用则完全由程序来完成,即“程序设计数据化,数据管理程序化”思想。关键技术的理论基础 依据“程序设计数据化,数据管理程序化”的设计思想,将数据库文件与程序设计紧密地集合在一起。技术可行性结论 本系统产品采用Visual Basic编程与数据库相结合的方法进行开发,而现存的进销存管理系统理论和技术有待进一步完善,因此进销存管理系统应用软件的开发手段是完全可行的。 2、经济可行性研究 全面企业的经营管理模式,能为企业带来更多的客户资源,提高企业的经济效益,方便管理者对企业进行管理,也方便客户对企业的了解,能及时的让企业管理者与客户进行沟通,以便满足客户的需要。进销存管理系统的开发不需要增加额外的费用,并且对员工进行培训的费用不多。在程序运行方面,由于系统比较小,没有必要进行太多的维护,而且进销存管理系统的投入,能够提高工作效率,减少工作人员,进而减少劳动资源的投入,也可以方便工作人员对货物的查询与管理,使企业的管理向高质量、现代化的方向发展。进销存管理系统是一个信息化、智能化和先进管理理念的集合体。而管理是一个动态过程,在其运行过程中要采取多项措施。所以在管理中获得经济效益是一个综合效益,要对它进行直接定量的分析是比较困难的。一般新系统带来的经济效益是可观的,其最主要的表现就是减少了企业管理费用和人力开支。而其它一些繁琐的事物都通过新系统来加以分析解决,不仅节省了大量的时间,还为企业的各项决策提供了宝贵的资料,为企业带来巨大的经济效益。3、操作可行性研究本系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。而整个进销存管理系统采用最友好的交互 介面,简介明了,不需要对数据库进行深入的了解。综合以上三方面,该系统具有很高的开发可行性,无论是从技术上或者经济上还是操作上。因此,可以设计该系统的业务流程图,数据流程图,并建立数据字典。三、系统分析 (一)业务流程分析(销售部分) 销售人员根据销售计划和销售情况生成取货单向库存管人员取货,库管员将生成的出货单给销售人员,销售人员根据销售情况生成销售报表进行存储,同时向客户开销售单。业务流程图图例说明: 业务处理单位 业务流 单据、文档 存储 处理过程 (二)数据流程分析数据流程图图例说明: 数据流 外部实体处理 存储 顶层数据流分析:基于本系统为单机开发,数据由用户录入采购信息、销售信息、库存信息等到进销存管理系统中,系统将反馈出用户所需的统计信息,库存信息等。 顶层数据流程图 第一层数据流分析:采购部门将采购的数据传递给库存部门和财务部门,销售部同理。库存部则只需通过库存管理来生成库存表。 第一层数据流程图 销售管理数据流分析:销售人员根据销售计划或销售情况开销售单给客户同时增加销售明细给财务,销售人员根据已确定的销售数据填写取货单,向库存部取货。 销售管理业务流程图数据元素条目编号:E1名称:供应商编号说明:企业供应商的编码数据值类型:离散类型:字符型长度:4有关数据结构:供应商资料,采购资料(三)数据字典数据元素条目编号:E2名称:商品编号说明:企业销售的商品的编号数据值类型:离散类型:字符型长度:6有关数据结构:商品资料,采购资料,销售资料,库存资料数据元素条目编号:E3名称:客户编号说明:企业销售客户的编码数据值类型:离散类型:字符型长度:4有关数据结构:客户资料,销售资料数据元素条目编号:E4名称:销售单号说明:销售人员编辑销售单时的代码数据值类型:离散类型:字符型长度:6有关数据结构:销售资料数据结构条目编号:F1名称:供货商资料说明:采购时收集的供应商信息结构:供应商编号供应商名称地址电话传真信誉等级提供商品数据结构条目编号:F2名称:采购资料说明:收集有关采购的信息结构:采购单号供应商编号采购日期采购员商品编号采购数量采购单价是否核销数据结构条目编号:F3名称:销售资料说明:销售时收集的客户信息、商品信息结构:销售单号客户编号销售日期商品编号销售数量销售员是否核销数据结构条目编号:F4名称:库存资料说明:收集有关库存的信息结构:商品编号商品状态库存数量最低储备正常储备最高储备数据结构条目编号:F5名称:客户资料说明:收集有关客户的信息结构:库户编号客户名称地址电话传真信誉等级所需资料数据结构条目编号:F6名称:商品资料说明:有关商品的信息结构:商品编号商品名称条形码计量单位供应商编号供应商地址商品说明数据流条目编号:G1名称:销售单说明:销售商品时,销售人员填写简单的销售信息数据来源:销售员数据流向:P3.1、P3.2包含的数据结构:客户编号销售员总共金额是否核销不含税价税额数据流条目编号:G2名称:销售明细说明:销售商品时,销售人员填写的具体的销售信息数据来源:销售员数据流向:D3包含的数据结构:商品编号销售数量成本单价销售单价总共金额是否核销不含税价税额数据存储条目编号:D2名称:销售单表说明:销售商品一定时期时销售人员填写的汇总的销售信息有关的数据流: P3.1 D2 D2 P3.2结构:客户编号销售员总共金额是否核销不含税价税额数据存储条目编号:D3名称:销售单明细表说明:销售商品一定时期时销售人员填写的汇总的销售明细信息有关的数据流: P3.2 D3 结构:商品编号销售数量成本单价销售单价总共金额是否核销不含税价税额处理功能条目编号:P3.2名称:添加销售明细表说明:填写具体的销售单价、成本等信息输入:D2 P3.2输出:P3.2 D3处理:销售人员根据具体的销售情况,登记销售明细,一定时间内进行销售明细整理,生成销售明细报表处理功能条目编号:P3.1名称:添加销售单表说明:填写一些供客户查看的销售基本信息输入:销售员 P3.1输出:P3.1 D2处理:销售人员根据供客户的销售情况,登记销售明细,一定时间内进行销售明细整理,生成销售明细报表处理功能条目编号:P3.3名称:销售出库说明:将取货单递给有关库存人员,以便库存管理输入:D2 P3.3输出:P3.3 D4处理:将客户已买下的商品进行出库处理,为库存提供取货单外部实体条目编号:1名称:销售员说明:销售部门工作人员输入数据流:输出数据流:销售员P3.1、销售员P3.2、销售员P3.3个数:(根据企业情况而定)外部实体条目编号:2名称:客户说明:企业的销售对象输入数据流:P3.1 客户输出数据流:个数:(根据企业情况而定)外部实体条目编号:3名称:库存管理员说明:企业库存的管理人员输入数据流:P3.3 库存管理员输出数据流:个数:(根据企业情况而定)四、系统设计(一)系统总体设计1、系统总体结构(1)结构设计系统采用了3层结构设计。首先是界面层,包括用户操作,如资料管理、采购管理、销售管理、系统管理等。其次业务逻辑层,包括系统基础类、商品信息类等等,提供界面层调用的方法和类。最后是数据库,为整个系统提供数据服务。系统采用的层次结构关系如图:(2)系统功能模块图根据系统所要实现的功能,按照结构化程序设计的原则,可以将整个系统划分为若干个功能模块。根据以上对进销存管理系统的任务和目标的分析,一个标准的进销存管理系统应该包含如图所示的一些功能。每个功能模块又包含一系列的子模块。功能模块细分:资料管理 “资料管理”模块用来管理供应商资料、商品资料以及客户资料,其功能模块如图所示。 “供应商资料”模块 “供应商资料”模块负责维护供应商的基本信息。供应商资料对于采购而言非常重要,是进销存管理系统的重要资料。供应商资料主要包括供应商编号、供应商名称、地址、电话、传真、信誉等级、提供商品和简介等。良好的供应商资料管理有助于企业对采购进行管理和控制,从而降低企业的采购成本。“商品资料”模块 “商品资料”模块负责维护商品的基本信息,基本信息一般变动较小。商品资料主要包括商品编号、商品名称、条形码、计量单位、供应商编号、供应商地址和商品说明等。不同的行业、不同的企业所需的商品资料差别较大。“客户资料”模块“客户资料”模块负责维护企业客户的基本信息。客户是企业生存的根本,可以是个人或者企业。客户信息是企业需要重点维护的资料。客户资料主要包括客户编号、客户名称、地址、电话、传真、信誉等级、所需商品和简介等。客户资料变动较大,开发系统时应该注意系统的可扩展性和可维护性。(2)销售管理“销售管理”模块主要负责进行销售管理,包括销售单、销售出库和销售查询。销售管理是企业的重要活动,直接面向客户和市场。其功能模块如图所示。“销售单”模块“销售单”模块负责录入销售单和销售明细单。销售单主要包括销售单号、客户编号、销售日期、销售员、是否核销、操作人员、总共金额、不含税价和税额等项。销售单明细主要包括编号ID、销售单号、商品编号、销售数量、成本单价、销售单价、总共金额、不含税价和税额等项。“销售出库”模块“销售出库”模块负责管理商品的销售出库情况。销售出库时需要将商品库存数量减去销售单明细中的销售数量。最后,销售单的“是否核销”标志变为“已核销”“销售查询”模块 “销售查询”模块负责查询销售单信息以及销售单核销情况。具体模块说明: 本次系统的实践中,我主要负责资料管理模块和销售模块,每个模块中设计有3个窗体。下面我说一下具体每个窗体可以实现的功能:(1)供应商资料 可根据已存在系统中的供应商的资料进行供应商编号或供应商名称来进行显示查询 添加新的供应商资料 修改已存在的供应商的资料 删除供应商资料 (2)商品资料(具体功能同供应商资料)(3)客户资料(具体功能同供应商资料)(4)销售单 销售单中包含了两个窗体,一个是粗略的销售单,另一个是销售明细单。两个界面的具体功能基本一样。 根据销售单号或客户编号来查询销售信息 在窗体中以表的形式显示出销售信息 添加销售单 修改销售单 (5)销售出库 根据销售单号或客户编号来查询销售信息 在窗体中以表的形式显示出销售信息 将将要出库的销售信息进行出库处理 (6)销售查询 根据销售单号或客户编号来查询销售信息 自定义一段想要查的时间段可以在窗体中显示出该段时间段内的销售信息(二)系统的详细设计1、代码设计代码是以适当的符号来表达客观实体的属性及特征。有标识、分类统计检索、排序、对象描述的作用,一般根据唯一性原则、合理性原则、适用性原则、规范性原则、可扩充性原则和简明性原则来进行设计,本系统中该系统采用层次代码设计方法。编码名称前2、3位后2、3位长度供应商编号GY(汉字拼音缩写)自由数字4客户编号KH(汉字拼音缩写)自由数字4商品编号SP(汉字拼音缩写)自由数字6销售单号XS(汉字拼音缩写)自由数字62.输入输出设计 输入设计:输入界面的设计我们不仅考虑到数据输入窗口的屏幕格式,而且考虑到如何使输入数据的错误率尽可能的减小。输入的数据量越小,出错的几率越小,所以,在保证输入数据完整的同时,我们尽量把界面设置的简单大方。 输出设计:在输出设计上,主要采用日常通用格式输出,这样方便管理,查阅。输出设计的内容:a确定输出内容;b选择输出设备与介质;c确定输出格式。 输出界面设计如图: 例:供应商资料管理(三)数据库设计1、概念结构设计概念结构设计就是整个数据库设计的关键,它是将分析得到的用户需求抽象为信息结构即概念模型的过程。我们采用了自底向上的策略进行了概念结构的设计,即先定义各局部应用的概念模型,然后把它们集合起来,形成全局的概念结构。E-R图 实体及其属性图实体及其联系图 完整的实体联系图2、逻辑结构设计所谓的逻辑结构设计就是把概念结构设计阶段设计好的基本ER图转换为与信息系统所支持的数据模型相符合的逻辑结构。而ER图向关系模型的转化要解决的问题是如何将实体和实体间的联系转换为关系模式,如何确定这些关系模式的属性和码。一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的联系则分不同的情况讨论:若实体间联系为1:1,可转换为一个独立的关系模式,也可与任意一端对应的关系模式合并。若实体间联系为1:n,则在n端实体转换成的关系中加入1端实体转换成的关系码。若实体间联系为n:m,则将联系转换为关系,关系的属性为诸个实体的码加上联系具有的属性,而关系的码则为诸实体的码的组合。基于以上原则,可将上图转换为关系模型。每个关系的码用下划线表示。供应商资料表(供应商编号,供应商名称,地址,电话,传真,信誉等级,提供商品);商品资料表(商品编号,条形码,商品名称,计量单位,供应商编号,供应商地址,商品说明);客户资料表(客户编号,客户名称,地址,电话,传真,信誉等级,所需商品,简介);销售单表(销售单号,客户编号,销售日期,销售员,是否核销,操作人员,总共金额,不含税价,税额);销售明细表(编号ID,销售单号,商品编号,销售数量,成本单价,销售单价,总共金额,不含税价,税额);3、物理结构设计 (1)设计原则如下:a进行规范化设计,尽可能地减少数据冗余和重复。b结构设计与操作设计相结合。c数据结构具有相对的稳定性。 基于以上三条设计原则,本系统中关于数据库表结构设计如下:供应商资料表字段名称数据类型可否为空说明供应商编号Char(4)主键供应商编号为4位,以GY开头供应商名称Nvarchar(50)Not null供应商名称地址Nvarchar(50)Null供应商地址电话Nvarchar(50)Null供应商电话传真Nvarchar(50)Null供应商传真信誉等级Char(2)Null信誉等级:优、良、差提供商品Text(16)Null供应商提供的商品简介Text(16)Null供应商简介商品资料表字段名称数据类型可否为空说明商品编号Char(6)主键商品编号为6位,以SP开头商品名称Nvarchar(50)Not null商品名称条形码Char(10)Null商品条形码为10位计量单位Char(10)Not Null计量商品的单位供应商编号Char(4)外键父表为供应商资料表供应商地址Nvarchar(50)Null供应商地址商品说明Text(16)Null商品说明客户资料表字段名称数据类型可否为空说明客户编号Char(4)主键客户编号为4位,以KH开头客户名称Nvarchar(50)Not null客户名称地址Nvarchar(50)Null客户地址电话Nvarchar(50)Null客户电话传真Nvarchar(50)Null客户传真信誉等级CharNull信誉等级:优、良、差所需商品Text(16)Null客户要求的商品简介Text(16)Null客户简介销售单表字段名称数据类型可否为空说明销售单号Char(6)主键销售单号为6,以XS开头客户编号Char(4)外键父表为客户资料表销售日期Datetime(8)Null销售日期销售员Nvarchar(50)Null销售员是否核销Char(6)Not Null是否核销:未核销、已核销操作人员Char(4)Not Null操作人员总共金额Float(8)Null销售单的总金额不含税价Float(8)Null不含税价税价Float(8)Null税额销售单明细表字段名称数据类型可否为空说明编号IDNumeric主键标识种子1、自增1销售编号Char(6)外键父表为销售单表商品编号Char(6)外键父表为商品资料表销售数量Float(8)Not Null商品的销售数量成本单价Float(8)Not Null商品的成本单价销售单价Float(8)Not Null商品的销售单价总共金额Float(8)Not Null销售单明细的总金额不含税价Float(8)Not Null不含税价=总共金额-税额税额Float(8)Not Null税额=总共金额*税率五、系统实施(一)开发工具的选择1、 SQL介绍 SQL全称是“结构化查询语言(Structured Query Language)”,最早的是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEM R开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言,得到了广泛的应用。如今无论是像Oracle、Sybase、Informix、SQL server这些大型的数据库管理系统,还是像Visual Foxporo、PowerBuilder这些微机上常用的数据库开发系统,都支持SQL语言作为查询语言。2、Visual basic编程语言简介Visual Basic 简称VB,是微软公司推出的一种可视化编程工具,是当今世界上应用最广泛的编程语言之一,它也被公认为是编程效率最高的一种编程方法。它开发速度快捷,具有语法简单易学的开发环境,是初学者的首选。VB提供可视化的开发环境,使用者可以像搭积木一样构建出程序的界面,而且它提供丰富的控件组,省去了自己编写代码的实现这些效果的麻烦,这样就可以把更多的精力放在程序功能方面的实现上。本系统中使用的是Microsoft Visual Basic 6.0 中文企业版。3、SQL Server 数据库简介 Microsoft SQL Server 2000是新一代大型电子商务、数据仓库和数据库解决方案。SQL Server 2000在分析服务、数据转换服务、数据仓库等方面引入了大量新特性。它为Web标准提供了强劲的支持,并为系统管理和调整提供了许多有力的工具。SQL Server 2000在SQL Server 7.0基础上对以下两个方面进行了极大的增强: (1)数据仓库l 分析服务。使用联机分析处理和数据开采工具满足了用户所有的商业分析需求。l 索引化视图。通过把查询结果存储在数据库中,以减少查询响应时间,大大改善了系统的性能。 (2)电子商务l 对XML支持的增强。使用XML简化了对后端系统和数据转换的整合。l Web数据访问。通过使用Web,而不需要额外的编程工作就可以建立SQL Server 2000数据库和OLAP立方体的连接。l 分布式分区视图。将用户的数据存储在多个服务器上,从而增大了数据库的规模。l 安全性。SQL Server 2000为你的应用提供了更高的安全策略。l 简化数据库管理。SQL Server 2000提供了大量的监视和管理工具,从而大大减少了管理员的工作量。l 数据库复制。使用SQL Server 2000可以在不同的系统之间进行合并、事务和快照复制。(二)源程序清单1、VB源代码供应商资料模块:Option ExplicitDim rs As ADODB.RecordsetDim SQL As StringDim msg As StringDim Index As IntegerDim flag As String 判断是新增记录还是修改记录Private Sub Command1_Click() Call LoadData 装载数据 Call ShowDataEnd SubPrivate Sub Form_Load() 初始化查询条件ComboBox cboquery.AddItem (供应商编号) cboquery.AddItem (供应商名称) cboquery.ListIndex = 0 默认查询条件为供应商编号 初始化信誉等级ComboBox cboxy.AddItem (优) cboxy.AddItem (良) cboxy.AddItem (差) cboxy.ListIndex = 0 默认信誉等级为优 Call LoadData 装载数据 Call ShowData 显示数据End SubPrivate Sub LoadData()装载数据 Dim colName As String 保存所选择的查询条件 Dim colValue As String 保存所要查询具体的值 Dim strWhere As String 得到查询条件 colName = cboquery.Text 取出条件的值 colValue = txtquery.Text 取出所要查询的值 构建条件 strWhere = where & colName & like % & colValue & % Set rs = Nothing 查询供应商资料 SQL = SELECT * FROM 供应商资料表 & strWhere & ORDER BY 供应商编号 Set rs = SelectSQL(SQL, msg) Set Me.DataGrid1.DataSource = rs DataGrid1.Refresh If rs.RecordCount = 0 Then 如果不存在记录 编辑控件可用性 cmdadd.Enabled = True: cmdmodify.Enabled = False: cmddelete.Enabled = False cmdcancel.Enabled = False: cmdsave.Enabled = False 移动控件不可用 For Index = 0 To 3 cmdmove(Index).Enabled = False Next Index Else 编辑控件可用性 cmdadd.Enabled = True: cmdmodify.Enabled = True: cmddelete.Enabled = True cmdcancel.Enabled = False: cmdsave.Enabled = False 移动控件可用 For Index = 0 To 3 cmdmove(Index).Enabled = True Next Index End If 设置控件Enable值 Call ControlEnable(False)End SubPrivate Sub ControlEnable(flag As Boolean)设置控件的Enable值 For Index = 0 To 6 Me.txt(Index).Enabled = flag Next Index Me.cboxy.Enabled = flagEnd SubPrivate Sub ShowData()在控件中显示数据 If rs.RecordCount 0 Then 如果存在记录 为控件赋值 For Index = 0 To 4 Me.txt(Index) = rs.Fields(Index) Next Index Me.cboxy.Text = rs.Fields(信誉等级) Me.txt(5).Text = rs.Fields(提供商品) Me.txt(6).Text = rs.Fields(简介) End IfEnd SubPrivate Sub CmdMove_Click(Index As Integer)移动记录操作 Select Case Index Case Is = 0 移到第一条记录 If Not rs.BOF Then rs.MoveFirst Case Is = 1 移到上一条记录 If rs.RecordCount 0 Then If rs.BOF = False Then rs.MovePrevious If rs.BOF = True Then rs.MoveFirst End If Case Is = 2 移到下一条记录 If rs.RecordCount 0 Then If rs.EOF = False Then rs.MoveNext If rs.EOF = True Then rs.MoveLast End If Case Is = 3 移到最后一条记录 If rs.RecordCount 0 Then If Not rs.EOF = True Then rs.MoveLast End If End Select Call ShowDataEnd SubPrivate Sub CmdAdd_Click()添加操作 所有控件重置 Call ControlClear 设置控件Enable值为可用 Call ControlEnable(True) 设置标志flag,表示所进行的操作为添加 flag = Add 所有移动按钮不可用 For Index = 0 To 3 cmdmove(Index).Enabled = False Next Index 添加、修改、删除按钮不可用,取消、保存按钮可用 cmdadd.Enabled = False: cmdmodify.Enabled = False: cmddelete.Enabled = False cmdcancel.Enabled = True: cmdsave.Enabled = TrueEnd SubPrivate Sub ControlClear()重置控件 For Index = 0 To 6 Me.txt(Index).Text = Next Index Me.cboxy.ListIndex = 0End SubPrivate Sub CmdModify_Click()修改操作 If rs.RecordCount 0 Then 如果存在记录 供应商编号不可以修改,其他控件可用 txt(0).Enabled = False 设置控件Enable值 Call ControlEnable(True) 设置标志flag,表示所进行的操作为修改 flag = Modify 移动控件不可用 For Index = 0 To 3 cmdmove(Index).Enabled = False Next Index 添加、修改、删除按钮不可用,取消、保存按钮可用 cmdadd.Enabled = False: cmdmodify.Enabled = False: cmddelete.Enabled = False cmdcancel.Enabled = True: cmdsave.Enabled = True Else MsgBox (没有可以修改的数据!) End IfEnd SubPrivate Sub CmdDelete_Click()删除操作 On Error GoTo ErrMsg 错误处理 If rs.RecordCount 0 Then msg = MsgBox(删除该条记录吗?, vbYesNo) If msg = vbYes Then rs.Delete 删除数据 Call LoadData 重新装载数据 清空控件 Call ControlClear 设置控件Enable值为不可用 Call ControlEnable(False) If rs.RecordCount = 0 Then 所有移动控件不可用 For Index = 0 To 3 cmdmove(Index).Enabled = False Next Index End If 添加、删除按钮可用,修改、取消、保存按钮不可用 cmdadd.Enabled = True: cmdmodify.Enabled = False: cmddelete.Enabled = True cmdsave.Enabled = False: cmdcancel.Ena

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论