版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
(服装销售管理)网上服装销售系统课程设计目录前言1第一章绪论1.1系统的开发背景21.2目前发展现状21.3本系统的特点21.4数据库的选择3第二章需求分析2.1输入数据分析42.2输出数据分析52.3系统的数据流图6第三章概要设计3.1系统设计原则83.2系统功能模块图(部分)83.3系统功能模块的分析9第四章数据结构设计4.1数据库需求分析(部分)114.2数据总体模型分析124.3关系数据模型图134.4主表的结构设计14第五章系统总体设计5.1服装进销存系统数据流图215.2系统部分功能实现介绍215.2.1主界面设计215.2.2进货查询225.2.3数据库备份与恢复275.2.4打印报表305.2.5帮助文件355.2.6辅助工具37第六章软件调试39总结41参考文献42致谢43前言管理工作的成败,取决于能否作出有效的决策,而决策的正确与否则在很大程度上取决于信息的质量。随着人类进入信息时代,信息管理的水平越来越成为衡量国家综合实力的重要标志。随着经济的高速发展,企业信息化工作也在如火如荼的进行。进销存管理是贸易型企业经营管理中的核心环节,也是该企业能否取得效益的关键。如果能够做到合理进货,及时销售,使库存量保持最小,那么该企业就能获得最大的经济效益。所以,采购、销售和库存必须有机的结合起来利用计算机技术和网络技术,加强各个部门之间的沟通。进销存管理系统属于管理信息的系统,也就是常说的MIS(ManagementInformationSystem)。在强调科学的管理、强调迅速掌握信息的现代社会中,MIS面非常广泛,跨越多个领域,比如管理科学、系统科学、运筹学、统计学以及计算,形成信息收集和加工的方法,从而形成一个纵横交织的系统。在积极建立现代商业管理机制的今天,对于商品销售部门而言,面对大量的信息,仅仅依靠原始的手工记录和管理或简单的汇总统计,是无法有效的将其中的重要部分提取出来并且做出相应的判断和处理的。而公司管理者的决策只能依据报表数据,浪费了大量人力,物力却无法做到实时监控,难以保证数据的准确性和及时性,先进的管理思想在商业中实现就成为一个可望而不可及的目标。企业急需一套既有先进管理思想又适合国内中小企业使用的进销存信息管理系统,作为实现目标和提高现有效率的一种重要手段。进销存管理系统作为服装企业及其重要的组成部分,对于公司的决策者和管理者来说都具有重要的意义。随着科学技术的不断提高,计算机科学技术的日渐成熟,其强大的功能已为人们所深刻认识,正发挥着不可替代的作用.第一章绪论1.1系统的开发背景如服装分类不明确、库存信息混乱、信息上报更新不及时、决策欠依据、经营不规范等,而这些问题往往是一个企业成功管理的关键。因此,在总结了一些对服装销售行业的理解、借鉴了一些优秀的管理经验的基础上,设计了服装进销存管理系统。1.2目前发展现状随着现代经济持续快速的发展,特别是我国加入WTO以后,人民生活水平的不断提高,成衣市场的竞争也日趋激烈。服装批发商和零售商为了节约成本、满足扩大企业规模的需求,更加注意了服务网络的建设。通过连锁经营,在全面开放的市场上与其他同行的竞争中赢得筹码。服装连锁企业的特点是各经营网点分布在同一个城市的不同区域或不同的城市,为了充分利用原有的信息和资源的基础上处理好许多中间环节,减少员工的工作量;保证企业进销存的循环链状良好;提高管理效率的目的,结合现代网络技术、计算机技术和多媒体技术的服装企业进销存管理系统是目前的主流设计思想,而一个这样的系统基本都具备以下特征:1.以极简单的进、销、存流程囊括所有服装进销存业务活动,以业务点的形式囊括所有仓库、商店甚至车间。2.用尽可能少数的界面,以极灵活的多条件组合来提供无穷无尽的角度分析数据。3.打印全面灵活:所有单据的打印格式,根据操作表格的列宽调整配合打印设置选项,即可适应所有规格的纸张。4.条码辅助管理:最大程度地帮助减少人为窜号误差。5.自定义的横排尺码表:完全的自定义多尺寸系列,符合服装业数据特点。6.无数种查询报表均能立即打印,当然也可导入到电子表格中。7.数据维护简单安全:备份、恢复、整理均一步操作,快速简便。1.3本系统的特点本系统是适合中小型服装批发、零售企业使用的小型管理系统。它除了拥有一般进销存系统的基本信息管理、进货管理、销售管理等功能以外,同时还具有以下特点:1.系统小巧,安装方便,占用内存小。2.典型Windows界面,无需培训,任何人均能很快上手。3.查询方便,统计精确,实现实时打印,随心所欲。1.4数据库的选择目前市面上比较流行的数据库有很多种,比如中小型数据库Access数据库、Visualfoxpro数据库、SQLServer2000数据库、Oracle数据库、DB2数据库、Sybase数据库。Access数据库是是微软公司开发的一套桌面数据库,如果采用VisualBasic6.0来开发数据库软件,采用Access数据库是非常方便的。因为VB访问Access数据库是非常便利的。但是它的缺点是无法支持较大的数据量,而将要开发的软件是需要进行大量的数据存储和操作的。因此,选用目前比较流行的SQLServer2000数据库比较合适。它是面向企业用户的大型数据库系统,并提供了完整的数据高级特性。且具有良好的使用界面及很快的速度。第二章需求分析2.1输入数据分析该系统的输入数据可以分为两种类型,一种是用户建立业务所需的基本资料信息,例如用户资料、商品属性资料、供应商基本资料、客户基本资料等。这一部分主要由具有管理员权限的用户进行输入。在设计时,考虑到这部分信息相对较少,所以直接将表调出,连接到界面上的Datagrid控件上。这样,表里所有信息可以一目了然的看到,并且用户可以直接对这些信息进行添加、删除、修改等操作,无须对该部分内容进行关键字查询。下面引用该部分表如图2.1所示:图2.1商品资料录入界面而另一种类型是进货、销售、入库和出库的单据的输入。该部分录入的数据是系统的主要操作对象。这些数据记录一个企业所有业务过程。无论是多小规模的企业,这部分数据必定非常多。将这些数据向上面提到的那样直接调到界面上显示,显然很难满足现实需求。所以在设计时,先设计了单据录入界面,然后单2.2所示,是销售单的输入界面。图2.2销售单录入界面2.2输出数据分析做为该系统的输出信息,按功能大致可以分为三种:查询结果、打印报表以及统计结果。报表打印则不是,考虑到数据库信息有一些细节信息对公司打印报表的目的——制定下一阶段业务的凭据,是可有可无的。因此,在报表设计中只是安排了一些必要信息的字段,这样不仅能使报表所传达的信息更加明确,而且让报表看起来更加美观。数据统计是对每一款商品的数量、总价等信息进行汇总,让用户可以在当日、当月和该年对数据进行统计。如图2.3所示的是以进货报表为例说明系统输出数据的其中一种方式。图2.3进货信息报表设计界面2.3系统的数据流图如图2.4所示的是该系统的数据流图。由该图可知,该系统是以商品流为基础,单据流为主线实现数据传递的。除用户登录信息和基本信息输入以外,其他所有的业务都是以单据为凭证。其中业务过程中产生的单据有进货单据、销售单据、提货单据三种。它们每天由经办的业务员输入到数据库中去,从而堆叠成各表单的记录。然后这些记录可供任何权限的业务员进行查询、统计、打印等操作。入库单据是在每天营业完毕后,由清点商品的业务员统计各个单据的数据,按照如下公式(1):入库量=进货量+出库量-销售量(1)(当日的同一款同一颜色的商品,若某一项当日没有单据,就计为0)填写入库单。该入库单信息将存储到库存表(kucun)里。图2.4数据流图第三章概要设计3.1系统设计原则该系统在实施后,应能集中处理服装的进、销、存业务和基本资料管理。本软件通过对服装生产经销商日常业务的研究,分析得出本系统具有以下功能:①由于操作人员的计算机知识普遍不高,因此要求系统具有友好的人机界面。②方便的数据查询功能,支持多条件查询。③数据备份和恢复功能;应付由于用户操作不当,导致系统数据库破坏的情况。④方便实用的计算器和记事本,便于用户处理数据和记录日常业务。⑤限制权限,设置修改,删除数据的权利范围;数据操作方便简单,稳定性强。⑥出货统计和库存查询功能,保证数据可靠性和准确性。⑦强大的报表打印功能,为公司制定下一阶段的计划提供依据;数据导出功能,方便将数据转为HTML格式,上传网络。3.2系统功能模块图(部分)经过分析,得到系统的功能模块图如图3.1图3.1系统功能模块图3.3系统功能模块的分析服装进销存管理系统包括系统维护、基本信息录入、进货信息管理、销售信息管理,库存信息管理、报表打印、辅助工具和帮助文件等八个基本功能模块。以下是对各个模块的功能分析:1.系统维护系统维护在整个软件中起到“护航的作用,它维护系统的正常运行,管理用户的使用权限,保护信息的安全性。所以在系统维护模块中,应该至少拥有用户登录管理、用户权限管理、数据库备份和数据库恢复等功能。2.基本信息录入该模块设置是为数据库的各个基本信息表单进行录入。该部分主要是由管理员操作的。它包括商品资料的录入、客户资料的录入、业务员资料录入、供应商资料的录入。这些资料被直接调用到界面上,用户可以直接在表格上添加、修改、删除。3.进货信息管理进货信息管理模块是用户对公司业务中的进货部分进行管理的。该部分主要是由采购部负责。因此在功能上至少设置有进货单录入、进货信息统计和进货信息查该年。而进货信息查询是按照业务员,仓库,供应商和进货时间等方式查询,并且可以打印查询结果。4.销售信息管理销售信息管理是用户对商品的销售情况进行监控的一个有效手段。该部分主要由营业部进行操作,同时呈报公司上层领导查阅。因此销售信息查询至少应该包括销售单录入、销售信息统计和销售信息查询。其中销售信息统计部分也是按照时间统计的,其可选时间有三种:按当日统计、按当月统计、按该年统计。而销售信息查询是按照业务员、仓库、客户和销售时间等方式查询,并且可以即时打印查询结果。5.库存信息管理库存信息管理,顾名思义就是用户对仓库存货的管理。该部分主要由仓库管理员负责数据操作。仓管员通过对对库存信息进行查询,得到商品的库存量,然后通知公司采购部门哪些商品已经库存不足了;哪些商品积压太多,这样有利于及时入库单的登记、出库单的登记、库存统计、出库查询和商品盘点。其中库存统计的功能是按照时间进行查询的。可取时间为当日统计、当月统计、该年统计。出库查询的设置是考虑到仓库到门面店之间的关系。假如商品已经提出仓库,摆在门面店却还未销售出去的情况下,是必须单独列出来查询的。然后在统计时可以归到未销售的商品中(即库存商品中去)。而商品盘点则按照商品、仓库和提货时间等方式查询,并且可以打印查询结果。6.报表打印它是为企业对相关数据进行存档、打印成纸张供开会讨论或者发布网络上之便利销售信息,库存信息的月、季、年进行统计而得到月报表、季报表和年报表的打印。同时用户可以将这些报表导出成其他格式,例如:HTML格式、WORD格式等。7.帮助文件制作一个操作简单,使用方便的帮助文件可以让用户更快、更全面的了解系统的使用方法。因此,本系统采用了目前制作帮助文件的主流产品QUICK—CHM软件来制作系统的帮助文件,帮助文件里介绍了整个系统的使用步骤和注意细节,让用户在操作本系统遇到困难时轻松得到解决。8.附加功能:该系统还提供计算器和记事本等功能,便于繁杂数据的核算和日常业务的记录。第四章数据结构设计4.1数据库需求分析(部分)针对服装行业进销存管理系统,分别对进货部门、销售部门、和仓库管理部门的任务和功能进行分析,总结如下的需求信息:1.商品按类别管理。2.同一个大的类别还可以细分,例如:大类别为衣服,还可以分为大衣、内衣、衬衣、T—SHITE等。3.需要记录供应商和客户的详细信息。4.在涉及商品数量的地方,要给出相应的单位。5.在进货信息中要包括商品供应商等信息。6.商品销售信息单中要登记商品销售数量、单价、折扣比例等信息。7.每一条进货、销售、库存等信息都对应一张单据,因此这三张表的字段必须明细。8.当进行了进货和销售操作后能即使更新相应的库存数量。经过上述分析,考虑到将来功能上的扩展,设计如下数据项:●供应商资料:供应商编号、供应商名称、地址、邮编、账号、开户银行、联系人、备注信息等。●客户资料:客户编号、客户名称、地址、邮编、账号、开户银行、联系人、备注等。●商品资料:商品编号、商品名称、颜色、类别、入库价格、分销价格、零售价格、生产厂家、更新日期等。●业务员资料:业务员编号、姓名、性别、联系电话、地址、身份证号码、备注信息等。●仓库资料:仓库编号、仓库名称、备注信息等。●用户信息:用户名、密码、用户权限等。数量、单价、折扣比例、总金额、是否即时付款、是否记账、预付比例、备注信息等。●销售信息:销售日期、销售单号、业务员、客户编号、商品编号、商品颜色、数量、单价、折扣比例、总金额、备注信息等。●出货单信息:提货日期、提货单号、业务员、客户编号、商品编号、商品颜色、数量、单价、折扣比例、总金额、是否即时付款、是否记账、预付比例、备注信息等。●库存信息:更新日期、入库单号、仓库编号、商品编号、商品颜色、数量、单价、总金额、备注信息等。4.2数据总体模型分析根据以上数据项的分析,结合各个数据项的关系,得到数据总体关系模型如图4.1所示:图4.1服装进销存系统总体关系E-R模型首先,进行信息实体分析,绘制实体联系图(E-R可以将进销存系统分成三个实体,分别是进货明细、销售明细、库存量,分别组成以下关系:dm-gf()dm-kh(客户编号、客户名称、地址、邮编、账号、开户银行、联系人、备注)dm-wz(商品编号、商品名称、颜色、类别、入库价格、分销价格、零售价格、生产厂家、更新日期)Inh(进货日期、进货单号、业务员、供应商编号、商品编号、商品颜色、数量、Outh(销售日期、销售单号、业务员、客户编号、商品编号、商品颜色、数量、单价、折扣比例、总金额、备注信息)Kucun(更新日期、入库编号、仓库编号、商品编号、商品颜色、数量、单价、总金额、备注信息等)Xsdh(提货日期、提货单号、业务员、客户编号、商品编号、商品颜色、数量、)(带有下划线的是该表的主键和外键)4.3关系数据模型图根据关系模型,在SQL数据库中建立数据表和数据表之间的关系如图4.2~图4.5。图4.2进货信息表实体E-R图图4.3销售信息表实体E-R图图4.4出库信息表实体E-R图图4.5库存信息表实体E-R图4.4主表的结构设计对于进销存管理系统而言,最主要的表无疑是进货信息表、销售信息表、出库信息表和库存信息表。这几张表是系统最主要访问和操作对象。除此之外,还有基本信息录入所需要的各种表单。以下表4.1~表4.10是该系统主要使用到的几张表。(1)商品信息表dm_wz,保存商品信息,结构如表4.1所示。表4.1商品信息表的结构列名数据类型长度允许空说明商品编号char10Notnull主键商品名称char40Notnull颜色char10Null类别char30Notnull入库价格numeric9Notnull分销价格numeric9Notnull零售价格numeric9Notnull生产厂家char20Notnull更新日期datetime8Notnull备注char255Null(2)供应商信息表dm_gf,保存供应商的信息,结构如表4.2所示。表4.2供应商信息表的结构列名数据类型长度允许空说明供应商编号char8Notnull主键供应商名称char40Notnull地址char40Null邮编char6Null电话char40Null电子邮件char50Null帐号char20Notnull开户银行char30Notnull联系人char8Notnull备注char255Null(3)客户信息表dm_kh,保存客户的信息,结构如表4.3所示。表4.3客户信息表的结构列名数据类型长度允许空说明客户编号char8Notnull主键客户名称char40Notnull地址char40Null邮编char6Null电话char40Null联系人char40Notnull电子邮件char50Null帐号char30Notnull银行char30Notnull备注char255Null(4)业务员信息表dm_ywy,保存业务员的信息,结构如表4.4所示。表4.4业务员信息表的结构列名数据类型长度允许空说明业务员编号char6Notnull主键姓名char20Notnull性别char4Notnull电话char40Null地址char40Null身份证号码char18Notnull备注char255Null(5)用户信息表,保存系统用户的信息,结构如表4.5所示。表4.5用户信息表的结构列名数据类型长度允许空说明用户名char10Notnull主键密码char10Notnull权限tinyint1Notnull(6)仓库信息表dm_ck,保存仓库的信息,结构如表4.6所示。表4.6仓库信息表的结构列名数据类型长度允许空说明仓库编号char6Notnull主键仓库名称char40Notnull备注char255Null(7)进货单信息表inh,保存进货的信息,结构如表4.7所示。表4.7进货单信息表的结构列名数据类型长度允许空说明进货日期Datetime8Notnull业务员char20Notnull进货单号char8Notnull主键供应商编号char8Notnull外键仓库编号char6Notnull外键商品编号numeric9Notnull外键颜色char10Null数量numeric9Notnull单价numeric9Notnull折扣numeric5Notnull总金额numeric9Notnull即时付款Char2Null是否记帐Char2Null备注char100Null(8)销售单信息表outh,保存销售的信息,结构如表4.8所示。表4.8销售单信息表的结构列名数据类型长度允许空说明销售日期Datetime8Notnull业务员char20Notnull销售单号char8Notnull主键客户编号char8Notnull外键仓库编号char6Notnull外键商品编号numeric9Notnull外键颜色char10Null数量numeric9Notnull单价numeric9Notnull折扣numeric5Notnull总金额numeric9Notnull即时付款Char2Null是否记帐Char2Null备注char100Null(9)库存单信息表kucun,保存库存的信息,结构如表4.9所示。表4.9库存信息表的结构列名数据类型长度允许空说明更新日期Datetime8Notnull业务员Char20Notnull入库单号Char8Notnull主键供应商编号Char8Notnull外键仓库编号Char6Notnull外键商品编号Numeric9Notnull外键颜色Char10Null数量Numeric9Notnull单价Numeric9Notnull折扣Numeric5Notnull总金额Numeric9Notnull备注Char100Null(10)出库单信息表xsdh,保存出库单的信息,结构如表4.10所示。表4.10出库单信息表的结构列名数据类型长度允许空说明提货日期Datetime8Notnull业务员Char20Notnull提货单号Char8Notnull主键客户编号Char8Notnull外键仓库编号Char10Notnull外键商品编号Char30Notnull外键颜色Char10Null数量Numeric9Notnull单价Numeric9Notnull折扣Numeric5Notnull总金额Numeric9Notnull备注Char100Null4.5各个表之间的视图联系本系统制作的三张报表都是涉及到多表的连接,因此在制作报表前先将多表连接,制作成视图,以方便在数据环境设计器中调用。1.库存视图库存视图所使用的SQL语句:SELECT_ck.名称ASck_mc,_wz.名称ASwz_mc,.日期,.入库单编号,.颜色,.数量,.总金额FROMINNERJOIN_ckON.仓库名称=_ck.名称INNERJOIN_wzON.商品名称=_wz.名称生成的视图如图4.6所示:图4.6库存视图2.进货视图进货视图说使用的SQL语句:SELECT_gf.名称,_ck.名称ASck_mc,.进货日期,.业务员,.进货单编号,.颜色,.数量,.单价,_wz.名称ASwz_mcFROMINNERJOIN_ckON.=_ck.名称INNERJOIN_gfON.=_gf.名称INNERJOIN_wzON.商品名称=_wz.名称生成的视图如图4.7所示:图4.7进货视图3.销售视图销售视图所使用的SQL语句:SELECT_wz.名称,.销售日期,.业务员,.销售单编号,.客户名称,.仓库名称,.商品名称,.颜色,.数量,.单价,.折扣,.总金额,.是否记帐,.是否即时付款,.预付比例,.备注FROM_wzINNERJOINON_wz.名称=.商品名称生成的视图如图4.8所示:图4.8销售视图第五章系统总体设计5.1服装进销存系统数据流图经过上述分析,绘制出系统业务流程图,如图5.1图5.1服装进销存系统业务流程图5.2系统部分功能实现介绍5.2.1主界面设计主界面是系统的主要操作平台,因此,系统的所有功能基本上都能从这个界面上点开。由于在设计时考虑到界面的美观与风格的统一,将其他界面都设置成在该平台下打开。具体操作非常简单,只需要在除主界面以外的其他所有form的属性下设置MDIChild为true即可。主界面的设计是否友好关系到该系统的第一印象和实用价值的最初体现。因此本系统采用了完全Windows风格的界面设计方法,即在主菜单下设有便捷的工具条,把用户经常操作的菜单项在工具条上体现,这样用户就可以快捷的找到所要操作的按钮。同时还在界面下方设置了状态栏,状态栏显示了系统时间和当前状态。如图5.2所示为本系统的主界面。图5.2服装进销存主界面5.2.2进货信息查询本系统设置了四个查询项目,分别是进货信息查询、销售信息查询、库存信息查询和出库信息查询。这些查询的设计风格和代码设计比较相似,所以就以进货信息查询的按业务员查询方法为例来说明本系统查询模块的设计。进货信息查询的程序流程图如图5.3所示。进货信息查询主要连接的表单是inh后这些信息可供业务员或公司管理人员对全程的进货情况进行查询,同时也可以选择该公司某一个时间段的进货信息进行查询。只须选择了“按时间查询的复选框后,在年、月、日的选项框中选择用户所要查询的起始时间和终止时间,点击确定按钮后,即可在另一个窗体下得到查询结果。系统在设计时设定可供选择的时间都是进货表单上记载的时间。也就是说,用户决不可能查询到没有进货的年份或还未发生的年份的进货记录。同时,本系统采用了三种查询索引,即:按供应商查询、按物资、仓库查询和按(经办的)业务员姓名查询。业务员点开如图5.4所示的进货菜单界面。图5.3进货信息查询程序流程图图5.4进货菜单界面选择“按业务员查询”选项,查业务员名称为“罗安,会得到如图5.5所示的界面;图5.5进货信息查询设置界面查询业务员名为罗安的记录所使用的SQL语句是:txtsql="selectdistinct业务员名称frominhinnerjoindm_ywyoninh.业务员编号=dm_ywy.业务员编号"Setmrc=ExecuteSQL(txtsql,MsgText)同时也可以在查询业务员名为罗安的记录总设置中限制查询的时间段,所使用的查询语句是:sQSql="selectinh.进货日期,inh.业务员,inh.进货单编号,dm_gf.编号,dm_gf.名称,dm_ck.编号,dm_ck.名称,dm_wz.编号,dm_wz.名称,inh.颜色,inh.数量,inh.单价,inh.折扣,inh.总金额,inh.是否即时付款,inh.是否记帐,inh.预付比例,inh.备注frominhinnerjoindm_gfoninh.供应商名称=dm_gf.名称innerjoindm_ckoninh.仓库名称=dm_ck.名称innerjoindm_wzoninh.商品名称=dm_wz.名称whereinh.业务员='"&Trim(Combo1(0))&"'"If=vbCheckedThendBeginDate=Format(CDate(cboYear(0)&"-"&cboMonth(0)&"-"&cboDay(0)),"yyyy-mm-dd")dEndDate=Format(CDate(cboYear(1)&"-"&cboMonth(1)&"-"&cboDay(1)),"yyyy-mm-dd")sQSql=sQSql&"andinh.进货日期>='"&dBeginDate&"'"sQSql=sQSql&"andinh.进货日期<='"&dEndDate&"'"EndIfIfTrim(sQSql)=""ThenMsgBox"请设置查询条件!",vbOKOnly+vbExclamation,"警告"ExitSubElse=sQSql0EndIf点击“确定”后,在另一个界面将出现查询结果。MSFlexGrid是一个功能非常强大的控件。虽然,在VB中可以做为表格使用的控件有很多种,例如:DataGridDBGridMSFlexGrid和更加高级的MSHFlexGrid单地说,MSFlexGrid和MSHFlexGrid之间的区别,主要是后者支持ADO层次的显示。因为在该系统中并未使用ADO,所以只需选择使用MSFlexGrid即可。)MSFlexGrid与DataGrid、DBGrid相比,具有更齐全的功能。其中,较突出的表现是它不仅可以加载文本数据,还可以加载图片等多媒体数据。文本和图片可以同时或者单独放在MSFlexGrid的任何一个单元格中。首先要在VB中加载MicrosoftFlexGrid,然后钩选“MicrosoftFlexgridControl6.0”,则在工具条上就会出现该控件。MSFlexGrid控件不仅可以显示网格数据,也可以对其进行操作。它提供了高度灵活的网格排序、合并和格式设置功能。如果将它绑定到一个Data控件上,那么MSFlexGridRow和Col属性指定了当前的MSFlexGrid单元格。可以在代码中改变当前单元格,用户可以在运行时使用鼠标或者箭头键改变Text属性提供了当前单元格内容的信息。如果单元格中的文本过长,无法全部显示在单元格的一行中,而且WordWrap属性被设置为True,那么文本将回绕到同一单元格的下一行。如果需要显示被回绕的文本,需要增加单元的列宽(ColWidth属性)或行高(RowHeight属性)。使用Col和Row属性可以分别确定MSFlexGridMSFlexGrid通常还要对它的行列宽度进行设置。但是,MSFlexGrid对其进行编程处理。不过正因为这样,越是自定义的东西,开发出来的东西越灵DimcnnAsSetcnn=NewConnectString="Provider=SQLOLEDB.1;PersistSecurityInfo=False;UserID=sa;InitialCatalog=My_clothe;DataSource=e41"‘数据库连接语句,可在连ConnectString‘接数据库时生成在设计表时,由于编程引用的方便,时常对表的字段名进行简写,或者使用不太容易理解的文字,甚至使用英文缩写,这样在调用该表显示时,就会出现许多麻烦。例如:导致该软件的可读性很差,除了编程人员,其他人很难看懂该表格,这样开发出来的软件根本就不能用。因此,通常的做法是将MSFlexGrid的第一行隐藏,然后自定义第一行内容,调用表时从第二行开始显示。隐藏的办法很简单,只需要设定某行的行高为0就可以了。运行查询结果如图5.6所示:图5.6查询结果运行界面如果要想将该查询结果打印出来,只需按界面上的“打印按钮即可了。打印结果如图5.7所示:图5.7查询打印运行界面其余的查询由于本着系统设计风格统一的原则,基本的设计步骤与以上所述相类似,这里就不再重复说明。5.2.3数据库备份与恢复数据库备份和恢复有两种方法:1.使用backupdatabaseto(路径)将数据库文件备份出去;使用restoredatabasefrom(路径)来恢复数据库。2.利用filecopy命令直接拷贝数据库文件mdf和日志文件ldf这样对于大型的数据库来说是非常耗时的,所以该方法主要运用于备份中小型数据库。例如:Access数据库等。2*.ldf*.mdf,打开企业管理器,在实例上右击所有任务--附加数据库,然后选择那个*.mdf文件,就可以了。考虑到系统所使用的是比较大型的数据库—SQLServer2000,所以采用了该数据库自身带有的备份与恢复功能来制作备份与恢复的模块,该模块的界面如图5.8所示:图5.8数据库备份界面”下找到备份菜单;另一种方法是在快捷的工具条下,也能找到备份选项。这样设计不仅方便用户操作,同时把“数据备份放在主界面的醒目位置上,也可以提醒用户要经常备份数据库,避免在系统崩溃或者数据库出错后,找不到可以恢复的数据库备份。在数据库备份的界面上,采用了一个对话框(CommonDialog)的控件来作为用户选择数据库备份存放路径的方法。对话框的使用方法有“打开文件对话框、“另存为对话框等。在备份界面设计中用到的是“另存为的方法,在恢复数据库的界面中也要用到对话框控件,但是它所使用的方法是“打开文件。在该系统中对该控件的编程也是采用经典编程语句。以下就是VB中对对话框的典型编程方法。对话框典型的编程如下:CommonDialog1.Filter="备份文件(*.bak)|*.bak|文本文件(*.txt)|*.txt|ALLFile(*.*)|*.*"CommonDialog1.ShowSave‘Filter是对话框的过滤器属性Text1.Text=CommonDialog1.FileName使用该控件,让用户的备份操作更加简单、方便。用户只须打开这个按钮,系统就会弹出一个如图5.9所示的对话框:图5.9备份路径对话框然后用户只须选择存放数据库备份文件的路径即可。该段设计也是参照Windows风格而做的。运行结果如图5.10所示。图5.10备份运行结果用户可以在自己设定的备份路径下找到当时的备份文件。由于备份一个大型数据库的耗时较长,在制作该模块时添加一个可以反映备份进度的控件——进度条(ProgressBar)既美观又实用。ProgressBar控件通过从左到右用一些方块填充矩形来表示一个较长操作的进度。因而可以监视操作完成的进度。ProgressBar控件位于MicrosoftWindowsCommonControl6.0ProgressBar控件有一个行程和一个当前位置。行程代表操作的整个持续时间,当前位置则代表应用程序在完成该操作过程时的进度。ProgressBar控件的重要属性包括MaxMin属性和ValueMax和Min属性设置了行程的界限;Value属性则指明了在行程范围内的当前位置。由于使用方块来填充控件,因此所填充的数量只能是接近于Value属性的当前设置值。本系统中所使用的ProgressBar控件就是用来监视备份完成的进度。对ProgressBar控件编程如下:DimconnterAsIntegerDimsql,workarea(15)AsString‘workarea(15):工作进度设置ProgressBar1.Visible=TrueProgressBar1.Max=UBound(workarea)‘设置进度条的最大值ProgressBar1.Value=ProgressBar1.Min‘设置进度条的当前值Forconnter=LBound(workarea)ToUBound(workarea)workarea(connter)="initialvalue"&connter‘令工作进度等于初‘值加当前记数ProgressBar1.Value=connter‘设置进度条当前值"Provider=SQLOLEDB.1;PersistSecurityInfo=False;UserID=sa;InitialCatalog=My_clothe;DataSource=e41"sql="backupDATABASEmy_clotheTOdisk='"&Text1.Text&"'"(sql)‘执行SQL语句NextconnterProgressBar1.Value=ProgressBar1.MinMsgBox"数据库备份成功!!",64,"服装进销存管理系统数据库恢复在界面设计和编程上都与数据库备份非常相似,其操作也基本一致。只是在打开对话框时,用户不是选择保存路径,而是打开所要恢复的数据库备份。这点在打开对话框按钮上方用Label控件有详细说明。因此,在设计对话框(CommonDialog)控件时,对其编程就不能使用另存为的方法而是选择打开文件的方法。具体编程为:PrivateSubCmd_select_Click()CommonDialog1.Filter="备份文件(*.bak)|*.bak|文本文件(*.txt)|*.txt|ALLFile(*.*)|*.*"CommonDialog1.ShowOpenTxt_=CommonDialog1.FileNameEndSub而在设计上的另一点不同是恢复所使用的方法引用了SQL的RESTORE语句。其SQL语句如下:"Provider=SQLOLEDB.1;PersistSecurityInfo=False;UserID=sa;InitialCatalog=My_clothe;DataSource=e41"sql="usemasterRESTOREDATABASEmy_clothefromdisk='"&Txt_&"'"(sql)'执行SQL语句其余设计和数据库备份是一样的,这里就不再重复阐述了。5.2.4打印报表在VisualBasic开发的数据库系统中,报表打印是其中最重要也是最常用的功能之一。VB提供了两组报表打印的控件:一组是由Seagate公司的产品CrystalReport、还有一组是VB6.0自带的报表打印空间——DataReport。DataReport报表模块就是采用这种打印方案。下面简单介绍一下DataReport的使用。DataReport力为主要特色。它与数据源(通常都是选择数据环境设计器DataEnvironmentdesigner作为数据源)一起使用,可以从几个不同的相关表开始创建报表。除可创建打印报表外,它也可以将报表导出到HTML或者文本文件中。在调用数据库的数据到报表上显示之前,必须建好视图,该视图在上一章节已经介绍过了,这里就不再重复。视图建好以后,就可以开始制作报表了。以下以销售报表为例,来说明报表的制作过程。1“添加DataEnvironment”2.在数据环境设计器右键单击“Connection1”,选择重命名,将连接名改成数据库的名字——my_clothe,“MicrosoftOLEDBProviderforSQLServer”如图5.11所示。3.然后点击“下一步,连接数据库,设置见图5.12。加”菜单项,添加一个新命令。将命名改为“output”。在“output”上单击右键,在弹出菜单中选择“属性,然后按图5.13对该属性进行设置。单击确定,退出后,重新点击右键,选择“展开所有,得到所有将要使用的字段名,如图5.14所示:4.然后回到集成,在工程菜单中选择“添加DataReport”,添加DataReport报表编辑器DataReport1,设置其DataResource为DataEnvironment1,设置其DataMember为my_clothe。5.设计DataReport:从数据环境设计器中把展开的字段一一拖到报表的细节部分。6.在报表的报表表头(Section4)添加4个rptLabel,调整好位置,设置字体大小,并且设置四个控件的名称。在报表的注脚处添加7个rptLabel控件,设置好位置和名称,具体见表5.1图5.11数据链接属性设置图5.12数据库连接图5.13命令属性的设置图5.14命令下视图的扩展表5.1报表要素控件设置表对象名称CAPTION说明rptLabel1ttitlettitle报表的标题rptLabel2默认填报单位:rptLabel3danweidanwei显示填报单位rptLabel4Label4%d显示打印日期rptLabel5pizhunrenpizhunren显示批准人rptLabel6tianbaorentianbaoren显示填报人rptLabel7shenherenshenheren显示审核人rptLabel8Label8%p显示当前页码在安排好报表的结构后,就可以对报表进行连接数据库和报表初始化的编程了,连接数据库在前面已经说明过了,所以这里只引用报表初始化的编程来说明如何从打印报表界面中传递报表要素,显示在报表上。首先要在公共模块中定义一些必要的变量PublicreportdaysAsIntegerPublicretitleAsStringPublicredanweiAsStringPublicpizhunAsStringPublictianbaoAsStringPublicshenheAsString然后在报表的代码窗中键入如下代码:PrivateSubdatareport_initialize()DataReport1.Sections("section4").Controls("ttitle").Caption=retitleDataReport1.Sections("section4").Controls("danwei").Caption=redanweiDataReport1.Sections("section3").Controls("pizhunren").Caption=pizhunDataReport1.Sections("section3").Controls("tianbaoren").Caption=tianbaoDataReport1.Sections("section3").Controls("shenheren").Caption=shenhehowreport(reportdays)EndSub7.因为考虑到用户的实际情况,即打印报表的标头、填报单位、填报人、批准人和审核人是不固定的,做为实用的应用程序,要把报表的这些要素作为一个可5.15所示,在该界面上,用户可以选择要打印的报表类型,还可以选择报表打印的时间单位。在下拉菜单中可供选择的有月报表、季报表和年报表。同时由于报表要素在数据库中建立了一张表来存放,所以在再次打开该界面时,填报单位等项上会保留上一次填写的信息。这样设计是为了方便用户在必要时可以少填写一些相同的信息,节约用户的操作时间。图5.15打印设置运行图点击打印按钮后,打印效果见图5.16所示:图5.16报表打印结果5.2.5帮助文件一个好的应用程序不仅要有高效率的程序代码,方便快捷的帮助文件更是不可缺少的一部分。CHM文件格式是微软1998年推出的基于HTML文件特性的帮助文件系统,以替代早先的WINHELP帮助系统,它也是一种超文本标识语言,在Windows98中把CHM类型文件称为“已编译的HTML帮助文件”。被IE浏览器支持的Javascript、VBscript、ActiveX、JavaApplet、Flash、常见图形文件(GIFJPEGPNG)(MIDWAVAVI)CHM通过URL与Internet联系在一起。在本次制作中采用了方便实用的制作工具QuickChm来制作帮助文件。首先,利用DreamWeaver或者FrontPage软件制作各个标题的HTML文件。然后打开已安装的QuickChm软件,如图5.17所示:图5.17quick—chm运行界面点击添加目录标题按钮,在对话框中添加目录标题,并且对该标题和对应的HTML录标题都已连接上。然后点击索引按钮,转换到编辑索引的界面。点击添加索引按钮,在弹出的对话框中输入索引标题,然后对该索引与对应的HTML文件进行链接。然后依次重复以上步骤,直到所有的索引标题都已经编辑完成。然后启动编译按钮,该软件就将文件编译成CHM格式的帮助文件了,本系统的帮助文件制作结果如图5.18所示:图5.18帮助文件运行结果然后,在制作的进销存系统的主窗体下添加一个帮助菜单项,将制作好的帮助文件在该菜单项下调用,所使用到的调用语句如下:PrivateSubhelp_Click()ShellExecute0,"Open","f:\许静1\静的帮助文件\服装进销存系统帮助文件.chm","","",vbNormalFocusEndSub这样在运行系统时,就可使用该帮助文件了。5.2.6辅助工具Shell函数的作用就是在VB里调用一个可执行文件,返回一个Variant(Double),ID功,则返回值为0。Shell函数的格式:Shell(pathname[,windowstyle])Shell函数的语法含有下面这些命名参数的解释见表5.2表5.2Shell函数的参数描述参数名描述pathname必要参数。Variant(String),要执行的程序名,以及任何必器。Windowstyle可选参数。Variant(Integer)如果windowstyle执行的。在该系统中考虑到实际操作的需要,添加了一个实用工具菜单,取名为“辅助工
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024届高考语文一轮复习第1章信息类文本阅读4第三节概念理解和要点概括题-找准命题角度定位细微差别课件
- 工程全过程审计实施要点及案例分析
- 2024年低压电工试题及答案
- 古诗词诵读《虞美人(春花秋月何时了)》课件 2024-2025学年统编版高中语文必修上册
- 甘肃省天水市兰州市2025届高三一诊考试数学试卷含解析
- 江苏省镇江一中等2025届高考语文押题试卷含解析
- 广东省十校2025届高考临考冲刺语文试卷含解析
- 2025届福建省上杭县一中高考冲刺英语模拟试题含解析
- 湖南省“五市十校”2025届高考数学五模试卷含解析
- 10.1《劝学》课件 2024-2025学年统编版高中语文必修上册-2
- 《婴幼儿活动设计与指导》 课件-13-18月儿童亲子活动指导
- 2024-2025学年七年级上学期历史观点及论述题总结(统编版)
- 2024年秋儿童发展问题的咨询与辅导终考期末大作业案例分析1-5答案
- 部编版五年级语文上册快乐读书吧测试题及答案
- 电力工程起重吊装施工方案
- 高等传热学全册课件
- 环境化学智慧树知到期末考试答案章节答案2024年南开大学
- 人工智能原理与方法智慧树知到期末考试答案章节答案2024年哈尔滨工程大学
- 《看图写话》第七单元小老鼠玩电脑语文二年级上册课件部编版
- 2020智慧树,知到《翻译入门(吉林联盟)》章节测试[完整答案]
- (2021年整理)waters 2695 高效液相色谱仪操作规程
评论
0/150
提交评论