




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第1章系统概述1.1 背景在现代社会中管理的作用越来越显得重要和突出。一般来讲,管理通过计划、组织、指导与领导、控制等手段,为组织制定目标,应用组织的各种要素,以实现组织的目标。对企业来说,人们按照一定的营销计划、人力、物力资源,对人员、物质、资金等加以计划和协调,以达到预期的目的,即称为企业管理。传统的企业管理活动中,把人、才、物作为企业的主要资源。但是随着社会化大生产的不断扩大和社会对产品多样化的需求,人们越来越重视信息在生产经营及企业管理中的作用,并把它当作企业的一种极其重要的资源,人们称之为“信息资源”,信息资源的处理已经成为当今世界上一项主要的社会活动。社会的信息化,亦既是信息社会。
2、信息化是人类社会进步发展到一定阶段所产生的一个新阶段。信息化是在计算机技术、数字化技术和生物工程技术等先进技术基础上产生的。信息化使人类以更快更便捷的方式获得并传递人类创造的一切文明成果,它将提供给人类非常有效的交往手段,促进全球各国人们之间的密切交往和对话,增进相互理解,有利于人类的共同繁荣。信息化是人类社会从工业化阶段发展到一个以信息为标志的新阶段。信息化是一场革命,信息化开启了一个新的时代。在这种背景下,企业再用原来的手工方式处理各种信息己不能适应时代的发展,必将被历史淘汰。在计算机技术飞速发展的今天,将计算机这一信息处理利器应用于日常进销存管理己是势必所然,而且这也将为企业管理带来前所
3、未有的改变,它可以带来意想不到的效益,同时也会为企业的飞速发展提供无限潜力。采用计算机管理信息系统已成为企业管理科学化和现代化的重要标志。1.2 目的传统的进销存管理中,企业领导者往往由于收集不到底层的数据而不能进行科学决策,盲目的销售网络,导致企业资源的浪费,造成企业的运营成本居高不下。面对现代的市场环境,要求建立企业与进销存网络的快速互动响应机制。加强对异地业务信息流、物流、资金流进行有效的管理。企业必须借助新型技术解决传统销售管理中可能出现的问题。企业除了提升管理水平和加强对销售管理的力度之外,还要充分利用网络技术。互联网为网络化、统一化的管理带来可能。网络给企业带来的是新一轮的竞争模式
4、,网络化为企业销售管理带来了前所未有的技术和手段,企业需要随时随地、无所不及,高效运营、节约成本的销售管理。从用户利益之上的角度出发,帮助用户分析现有的进销存体系和进销存业务流程,实现业务流程重组并以此为基础建立符合企业特定管理需要的进销存管理系统,并为用户提供长期、持续的系统售后服务。在商品销售企业中,对商品销售信息的有效管理是提高企业效益的一个重要途径。商品进销存管理是商品流通领域一个重要的基础性工作。在管理中计算机和进销存管理信息系统的引入已经得到各商业业主的认识,并将逐渐成为一种管理手段。改善管理手段,提高管理效率,是提高企业效率的主要任务。它使各级管理人员在面对日益繁多、日益复杂的问
5、题和业务时,能够充分认识问题,及时准确地把握、分析问题,进行有效地组织和管理,以达到最高的经济效益。对我国的珠宝市场来说,它正经历着一个从传统的规模效益型向品牌效益型的转变。要使自己的商品拥有一定的市场占有率,实现珠宝行业的个性化、高品位化,要求珠宝经营需由传统的经营管理方式进入到网络营销及信息管理的时代。珠宝信息管理系统的开发应用,不仅有利于珠宝企业对物流、信息流、资金流的集中高效管理,提高供应链效率,而且为企业实行连锁经营、品牌战略和网络化营销奠定了坚实的信息基础。精选范本,供参考!第2章系统需求分析2.1 需求分析与国外企业相比,国内进销存财务管理起步较晚。采购管理方面,目前我国企业在这
6、方面尚未引起足够的重视。在与供应商打交道的过程中,不少企业缺乏严格的比价系统,也没有进行招标,采购过程存在很大的随意性。更有甚者,某些主管采购的人员在采购的过程中有严重的吃回扣等现象。如此的采购过程最终导致企业的成本增加。销售管理方面,我国企业的营销管理大多还停留在“推销管理”的观念上,重视产品的销售,而忽视销售业务数据的实时收集和分析,竞争对手情况的跟踪分析,忽视市场的预测和分析、客户的管理以及销售战略的动态调整。除此之外,信息化程度低也是进销存管理中存在的一个突出问题。进销存管理的信息系统功能不完善,远程通信能力差,甚至出现数据失真的现象,系统无法履行必要的决策功能。加之,采购、销售、库存
7、管理三者之间缺乏信息联系和数据集成,无法实现信息共享,造成企业内部的进、销、存信息脱节,企业最高决策者难以及时准确全面了解掌握经营全过程的有关信息。因此,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。软件作为一项有力的工具,只能当此种工具,与我们的实践相结合起来的时候,才具有重大的社会价值及使用价值。因此根据企业目前实际的进销存管理情况开发一套电脑进销存管理系统是十分必要的。2.2 系统可行性研究系统的可行性分析包括两个详细的部分:分析开发新的系统的必要性和可行性。必要性在前面系统初步调查中已经作了详细的分析,在这里就不再赘述;可行性主要包括经济可行性、技术可行性和运行可行性
8、三个方面。经济可行性研究是对组织的经济现状和投资能力进行分析,对系统建设运行和维护费用进行估算,对系统建成后可能取得的社会和经济效益进行估计。由于公司进销存管理系统是作为毕业设计由我们学生自己开发的,在经济上的投入甚微,系统建成之后将为今后实现公司进销存、财务管理提供很大的方便,因此在经济上是可行的。技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。公司进销存管理系统用的是开发语言,调试相对简单,当前的计算机硬件配置也完全能满足开发的需求,因此在技术上是绝对可行的。软件方面:由于目前网络模式相对发展成熟,故软件的开发平台成熟可行,它们速度快、容量大、可靠性
9、能高,完全能满足系统的需求。第3章总体设计3.1系统目标(1)、在财务方面,实现财务管理规范化、改善应收账款和资金管理;(2)、在销售方面,加强和改善营销管理,减少财务坏帐、呆帐金额等;(3)、在库存管理方面,随时掌握存货信息,降低库存量,提高资金利用率和控制经营风险;3.2 系统设计思想我们认为,要让用户用好我们的软件,第一重要的是让用户了解设计者在设计软件时候的想法,了解这个软件是怎么考虑设计的,从软件的最本质最基础的地方入手才能真正用好一个软件。我们把进销存简化为进”和包”业务,也就是说,任何的进销存(仓库管理、销售、采购、领料等等、调拨)业务都可以看成是货品(数量或金额”)的进“和出”
10、。采购可以看做进”,销售可以看成出",调拨其实是先出后进”,也就是说站在某个仓库的仓管”的角度来看,他看到的就是货品的进出”。只要能把握住所有的进出”,很自然就能准确掌握库存情况,而反映这些进出”的证据”就是业务单据:如销售单、采购单等等。管理好了这些业务单据就管理好了进销存。这是进销存最简单最核心的本质”,然而市面上大家看到的用过的进销存软件(包括绝大部分ERP软件)都没有从这个本质”来考虑软件的设计,他们虽然也重视业务单据,但是他们更多的是考虑所谓的业务流程,他们强调,业务流程非常重要,其结果是:他们试图是迎合企业的业务流程,但是软件是死”的,最终反过来要求企业迎合他们所谓的先进
11、”流程。可想而知,这样的合作是多么难,也为软件应用失败埋下伏笔。我们设计这个进销存软件的时候花了很长一段时间来设计业务单据,最终使得用户可以分解他们的业务,再通过定义我们的进销存里面的业务单据来实现复杂的业务逻辑。因此本使用帮助的核心也是讲解如何按需定义自己的业务单据。通过自定义单据,企业可以按需设计流程”(其实,在我们看来,流程是不存在的)通过自定义单据,企业可以准确实时对货品库存进行掌控。通过对单据输入的汇总,企业就可以获得任何格式的报表:单据-报表进销存就是这么简单!当然,我们的进销存里面的报表可能有很多需要补充的,企业可以按自己的需要进行二次开发,也可以把报表需求告知我们,我们也会随时
12、按需增加各种报表。3.3 系统功能本系统分为9大部分,41个完整的功能模块。系统结构图如图2.1所示。基础信息商品信息管理供应商信息管理客户信息管理员工信息管理银行帐户管理商品销售查询商品入库查询商品退货查询商品报损报溢查询数据恢复数据备份系统初始化初期建帐通用进销存管理系统系统管理销售管理库存管理入库管入库退货库存查库存盘点商品有效期查询库存上下商品报损报溢管理理询限管理销售退货管理销售管理订货管理退出更改密码操作员管理权限设置系统设置库存商品往来帐目-1单商品销售报表一X月销售报表,周销售报表_L日销售L客户应收应付款结转供应商应收应付款结转进销存结转超期应收应付款管理客户帐目管理供应商帐
13、目管理图2.1进销存管理系统结构图3.4 数据库设计3.4.1 数据库介绍数据库是指自描述的完整记录的集合川。数据库是自描述的:它除了包含用户的源数据外,还包含关于它本身结构的描述。数据库的自描述特点,它提高了程序/数据独立性,它使得检查数据库本身就确定数据库的结构和内容成为可能。数据库包含用户数据文件和其他内容,数据库在元数据中包含关于自身的描述。另外,数据库还包含用来表示数据之间的关系和提高数据库应用的性能的索引。最后,数据库还包含关于使用数据库的应用程序的数据。数据库基本的功能,主要有三个方面:(l)信息浏览和查询;(2)信息的修改、添加和删除;(3)信息的统计、汇总等。设计一个数据库需
14、要我们耐心收集和分析数据,仔细理清数据间的关系,消除对数据库应用不利的隐患等等。在整个设计过程中,我们必须按步骤认真完成。一个数据库的设计好坏将直接影响将来基于该数据库的应用。另外,数据库也不是独立存在的,它总是与具体的应用相关的,为具体的应用而建立的。因此在设计数据库之前我们必须明确应用的目的,在设计数据库的时候也应时刻考虑用户需求,数据库与具体应用之间是相辅相成的关系。数据库的设计过程一般包括以下几个步骤:(1)确定建立数据库的目的和收集数据数据库设计过程的第一个阶段是确定建立数据库的目的和收集数据。通常,我们也把确定建立数据库的目的称为需求分析。需求分析的任务就是通过详细调查要处理的对象
15、来明确用户的各种需求。并且通过调查、收集和分析信息,以了解在数据库中需要存储哪些数据,要完成什么样的数据处理功能。这一过程是数据库设计的起点,它将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。确定目的之后就需要根据目的收集有用的数据。在着手收集数据之前最重要的就是要调查用户的实际需求,然后分析与表达这些需求。调查用户需求的方法有很多,如查阅记录、访谈、开调查会、设计调查表请用户填写或回答相关问题等。其中比较有效的方法是访谈,我们可以借助一些设计合理的调查表来与用户直接交流。通过充分交流,可以了解他们平时是如何使用数据库的,以及对当前信息的要求,进而设计满足用户需求的字段,并根据
16、设计的字段收集数据。(2)建立概念模型确定建立数据库的目的以及完成数据收集后,就进入数据库设计过程的第二阶段一建立概念模型。概念模型,也称信息模型,它是按用户的观点来对数据和信息建模,主要用于数据库设计。这一阶段是整个数据库设计的关键。设计时,一般先根据应用的需求,画出能反映每个应用需求的ER图,其中包括确定实体、属性和联系的类型。然后优化初始的E-R图,消除冗余和可能存在的矛盾。概念模型是对用户需求的客观反映,并不涉及具体的计算机软、硬件环境。因此,在这一阶段中我们必须将注意力集中在怎样表达出用户对信息的需求,而不考虑具体实现问题。(3)建立数据模型完成上一阶段后,我们得到了一个与具体计算机
17、软、硬件无关的概念模型。接着我们就可以着手建立数据库模型了,这是数据库设计过程的第三个阶段。在这一阶段中我们要将概念模型中得到的ER图转换成具体的数据模型。数据模型是表示实体与实体间的联系的模型。数据模型一般分为层次、网状、关系和面向对象模型等,主要是用于DBMS的实现。目前比较常用的是关系数据模型,我们通常将ER图转换成关系数据模型,实际上就是要将实体、实体的属性和实体之间的联系转换为关系模式。相比于层次、网状模式和面向对象模型,关系模式具有更为显著的优点:坚实的理论基础,是唯一可数学化的模型;(b)二维表能更方便的表示实体间的关系;二维表的数据表示方法统一、简单,便于在计算机中实现。(d)
18、数据独立性高,建立、扩充、调整都易实现。鉴于提高本系统的使用查询效率考虑,本系统采用关系模型。(4)实施与维护数据库最后一个阶段是实施与维护数据库。完成数据模型的建立后,我们就必须对字段进行命名,确定字段的类型和宽度,并利用数据库管理系统或数据库语言创建数据库结构、输入数据和运行等,因此数据库的实施是数据库设计过程的“最终实现”。如果数据库运行很成功,则表明数据库设计任务基本结束,以后的重点就是数据库的维护工作,包括做好备份工作、数据库的安全性和完整性调整、改善数据库性能等。数据库的设计在数据库应用系统的开发中占有很重要的地位。只有设计出合理的数据库,才能为建立在数据库上的应用提供方便。不过数
19、据库的设计过程从来都不会有真正的结束,因为随着用户需求和具体应用的变化和扩大,数据库的结构也可能会随之变化。3.4.2 据库逻辑结构表数据库是某个企业、组织或部门所涉及的数据的综合,它不但反映数据本身的内容,而且反映数据之间的联系。在数据库中,是用数据模型来抽象、表示、处理现实世界中的数据和信息的。根据模型应用的不同目的,通常将数据模型分成两个层次:概念模型和关系数据模型。概念模型是用户和数据库设计人员之间进行交流的工具,关系数据库模型是由概念模型转化而来的,是按照计算机系统的观点来对数据建模。从关系模型产生的数据库设计即为逻辑设计。通过上面的ER图以及实体联系图,确定了实体与实体之间的关系后
20、,就可以建立数据库的逻辑结构,以下这些表格表示了本系统数据库中的各个表,体现了数据库的逻辑结构关系。(1)操作员信息表操作员信息表用来保存操作员的基本信息,其表结构如表3.1所示。表3.1操作员信息表字段名数据类型字段大小索引编号字符型7升序用户名字符型20密码字符型12头像整型4员工编号字符型7备注备注型4(2)供应商信息表供应商信息表用来保存供应商的基本信息,其表的结构如表3.2所示表3.2供应商信息表字段名数据类型字段大小升序编号字符型7全称字符型30简称字符型15地址字符型40所属地区字符型20邮编字符型7电话字符型13字符型13联系人字符型8联系人电话字符型13开户银行字符型20银行
21、账户字符型20纳税人字符型8电子邮箱字符型30备注备注型4(3)客户信息表客户信息表用来保存客户有关详细信息,其表的结构如表3.3所示。表3.3客户信息表字段名数据类型字段大小升序编号字符型7全称字符型30简称字符型15地址字符型40所属地区字符型20邮编字符型7电话字符型13字符型13联系人字符型8联系人电话字符型13开户银行字符型20银行账户字符型20纳税人字符型8电子邮箱字符型30备注备注型4(4)库存信息表库存信息表用来保存存储商品库存数量及相关信息,其表的结构如表3.4所示。表3.4库存信息表字段名数据类型字段大小索引商口口编p字符型7升序库存数量数值型15库存上限数值型12库存卜限
22、数值型12备注逻辑型1(5)入库信息表入库信息表用来记录商品入库的相关信息,其表的结构如表3.5所示表3.5入库信息表字段名数据类型字段大小索引编号字符型7升序入库时间日期时间型8供应商编P字符型7结款方式字符型4合计总类整型4合计金额数值型12操作员字符型10预付金额数值型12未付金额数值型12实付金额数值型12(6)商品信息表商品信息表用来记录商品的基本信息,其表的结构如表3.6所示。表3.6商品信息表字段名数据类型字段大小索引编号字符型7升序名称字符型30简称字符型15规格字符型10字符型40的单位字符型8出厂日期日期型8保质期日期型8进价数值型12批发价数值型12零售价数值型12供应商
23、编P字符型7备注备注型4(7)销售信息表销售信息表用来记录每位客户购买商品的信息,具表的结构如表3.7所示。表3.7销售信息表字段名数据类型字段大小索引编号字符型7升序时间日期时间型8销售类型字符型4订单号字符型7合计品种整型4合计金额数值型12付款方式字符型4折扣数值型3应付金额数值型12实付金额数值型12未付金额数值型12操作员字符型10(8)员工信息表员工信息表用来记录每位员工的基本信息,具表结构如表3.8所示。表3.8员工信息表字段名数据类型字段大小索引编号字符型7升序姓名字符型10性别字符型2出生日期日期型8文化程度字符型10所属部门字符型10职务字符型10身份证号字符型18电话字符
24、型13地址字符型40邮编字符型7聘用日期日期型8薪金数值型10备注备注型4第4章详细设计本章将展示各种界面,比如:登录表单、主程序、浏览、维护、查询、排序、打印、系统简介、版权、留言等。由于文件太多,所以每种文件都找具有代表性的展示。4.1 程序主页面设计程序主界面的设计的好坏往往影响到软件的整体形象,因此首先要处理好程序主界面的设计问题。同时,程序主界面的设计也是程序控制的核心,操作权限、程序功能调用等都要通过主程序调用实现。珠宝进销存管理系统程序主界面设计的运行结果如图3.1所示。a遇吊区,他裁皿tZD*rS动7原6,*««.««;!疝&驾*
25、|P7-冉/的时柱修院珠宝进销存管理系统工看虹大学施XI乾茅榨利哂3可唱M*1H图3.1珠宝进销存管理系统主界面4.2 商品信息管理模块商品信息管理模块主要用于进行商品基础信息的管理,通过此模块可以对商品进行添加、修改、删除、保存等相关功能的操作。商品信息模块运行结果如图3.3所示。图3.3商品信息管理模块设计图4.3 库存盘点模块库存盘点模块主要用于对库存信息进行盘点,并且同时也可以通过选择查询字段进行库存信息进行盘点。库存盘点模块运行结果。如图3.4所示。图3.4库存盘点模块设计图4.4 利润分析模块利润分析功能模块主要功能是通过对商品销售信息的统计,计算出每种商品在某一段时间的利润情况。
26、“利润分析”模块运行结果如图3.5所示。图3.5利润分析模块设计图第5章系统主要功能模块设计3.3.1程序主界面的设计程序主界面的设计的好坏往往影响到软件的整体形象,因此首先要处理好程序主界面的设计问题。同时,程序主界面的设计也是程序控制的核心,操作权限、程序功能调用等都要通过主程序调用实现。珠宝进销存管理系统程序主界面设计的运行结果如图3.1所小。睹理好g.姬。|百及0*第亚*存菁0忒地信感/斑帝报表神3B决玳桐也琥步甘M鼻视的。修脚塔|:制UH唳应灯技强盛珠宝进销存管理系统制作成员;张川、彭飞、魏颉联系电话商施工殍面用过学判完可10年5月弥日一11&:+1
27、:41M?熊Jii"图3.1珠宝进销存管理系统主界面1 .创建程序主界面(1)新建一个项目,命名为“通用进销存管理系统”,在该项目中添加一个新表单,命名为“frmmain”,并设置表单的Caption属性为“通用进销存管理系统v2.0版”,设置Icon属性为“sys(5)+sys(2003)+'graphicsproICO.ico,设置KeyPreview属性为.T.,作用是截获表单内控件的KeyPress事件;设置ShowWindow属性为“2-作为顶层表单”;设置WindowState属性为“2-最大化”。(2)在表单的Unload事件下添加如下代码:_screen.vi
28、sible=.t.&&恢复VisualFoxPro主窗体的位置,退出VisualFoxPro_screen.top=0QUIT在表单的QueryUnload事件下添加如下代码:this.Lockdatebase1.lock(sys(5)+sys(2003)+"dataDataBase.dbc",;”正在加密,请稍后")&&数据库加密IFfile(sys(5)+sys(2003)+'Setup.tmp')=.t.DELEFILEsys(5)+sys(2003)+'Setup.tmp'ENDIF2 .创建
29、程序菜单“通用进销存管理系统”的菜单是通过10个快捷菜单拼成的,并且具有彩色背景、动态增减菜单项的功能。(1)在表单中增加ToolBar控件,命名为“ToolBarMenu",ImageList控件,命名为“ImageMenu”,将制作完成的图片添加到ImageMenu中。(2)更改ToolBarMenu控件的属性,如表3.9所示。表3.9ToolBarMenu控件属性对象属性值ToolBarMenuAppearance0-FlatToolBarMenuBorderStyle0-NoneToolBarMenuStyle0-standard(3)将ToolBarMenu控件与Image
30、Menu控件联系起来,在ToolBarMenu控件中添加10个按钮,并将ImageMenu控件中的图片与按钮相对应。在ToolBarMenu控件的Init事件下添加如下代码:this.imagelist=thisform.imagemenuthis.disabledimagelist=thisform.imagemenuthis.hotimagelist=thisform.imagemenuFORm=1TO10mnuname="mnu"+alltrim(str(m)this.buttons.add(,mnuname,”,0,m)ENDFOR维护管理.mprENDCASE3
31、.创建工具栏本程序的工具栏中共有12个按钮,分别是订单管理、销售管理、配送申请、配送开票、配送结款、入库管理、库存查询、商品信息管理、商品销售查询、商品销售排行、日销售报表、数据备份。创建工具栏的方法与创建程序菜单类似,也是通过ToolBar控件与ImageList控件来完成的(1)在表单中添加一个ToolBar控件,更改其重要属性如表3.10所示。表3.10ToolBar控件属性对象属性值ToolBarAppearance0-FlatToolBarBorderStyle0-NoneToolBarStyle0-standard(2)将ToolBar控件与ImageList控件联系起来,在Too
32、lBar控件中添加12个按钮,并将ImageMenu控件中的图片与按钮相对应。代码如下:*增加快捷工具栏按钮thisform.toolbar.imagelist=thisform.imagelistthisform.toolbar.disabledimagelist=thisform.imagelistthisform.toolbar.buttons.add(,'barT,'',3,0)thisform.toolbar.buttons.add(,'DD','',1)thisform.toolbar.buttons.add(,'xs
33、','',2)thisform.toolbarbuttons.add(,'bf7',12)thisform.toolbar.buttons.add(,'bar7','',3,0)thisform.toolbar.buttons(2).tooltiptext="订单管理thisform.toolbar.buttons(3).tooltiptext="销售管理thisform.toolbar.buttons(16).tooltiptext="日销售报表"thisform.toolbar.
34、buttons(18).tooltiptext="数据备份"FORm=1TO18IFempty(thisform.toolbar.buttons(m).tooltiptext)=.f.blName=thisform.rainfunction1.htop(;alltrim(thisform.toolbar.buttons(m).tooltiptext)IF&blname.=.f.thisform.toolbar.buttons(m).enabled=.f.ENDIFENDIFENDFOR(3)调整ToolBar控件的位置,在ToolBar控件下方添加一张图片,作为工具
35、按钮的显示区域。(4)添加一个Container控件,作为设置“超期应收应付款预警功能”的复选按钮区域。在此容器控件中添加一个Shape控件,更改其属性,如表3.11所示。表3.11Shape控件属性对象属性值Container.Shape1BorderStyle10-透明Container.Shape1Curvature90(5)在Container容器中添加一个Label控件和一个Check控件,将Check控件的Caption属性更改为“超期应收应付款预警”。(6)在ToolBar控件的ButtonClick事件下添加如下代码:*ActiveX控件事件*LPARAMETERSbutton
36、DOCASECASEbutton.index=2DOFROMformsfrm订单CASEbutton.index=3DOFROMformsfrm销售管理CASEbutton.index=16DOFROMformsfrm日报表CASEbutton.index=18DOFROMformsfrm数据备份ENDCASE4.创建状态栏(1)在表单中添加一个StatusBar控件,并在该控件上单击鼠标右键,在弹出的快捷菜单中选择SBarCtrlproperties”菜单项,将打开SBarCtrl属性”对话框。(2)选择PanelS'页,单击"InsertPanel'按钮,向Sta
37、tusBar控件中添力口一个Panels对象,设置此Panels对象的宽度为“180”,如图3.2所示。(3)按照上面的方法,再为StatusBar控件添加4个Panels对象,它们的宽度分别为320、100、100、100。图3.2SBarCtrl属性对话框3.3.2 商品信息管理模块商品信息管理模块主要用于进行商品基础信息的管理,通过此模块可以对商品进行添加、修改、删除、保存等相关功能的操作。商品信息模块运行结果如图3.3所示。图3.3商品信息管理模块设计图(1)在“通用进销存管理系统”项目文件中添加一个表单,命名为Frm商品信息。(2)向表单内添加自制类控件Back、Line控件、Lab
38、el控件、Picture控件、Container控件、Combo控件、OptionGroup控件、Text控件、Spinner控件、LocateButton控件、Grid控件和OftenButton类控件。(3)重要控件的属性设置如表3.12所示。表3.12重要控件及属性对象属性值Form1AutoCenter.T.Form1ShowWindows2-作为顶层表单OftenButtons1RecordSource商品信息表LocateButtons1RecordSource商品信息表Grid1RecordSource商品信息表Spinner1SpecialEffect1-平而OptionGro
39、up1.Option1Style1-图形Form1AutoCenter.T.2.代码设计在表单的Resee方法程序下添加如下代码:SELE商品信息表bo1.displayvalue=thisform.rainfunction1.;numbertonameC供应商信息表","全称",商品信息表.供应商编号,1)&&取出供应商名称SELE商品信息表thisform.label24.caption=padl(alltrim(str(reccount(),5,"0")thisform.spinner1.Spinnerhighvalue=
40、reccount()thisform.spinner1.value=recno()SELE商品信息表在表单的Init事件中添加如下代码:SETDELEONthisform.resee在表单的Unload事件中添加如下代码:CLOSEALLdatabase商品信息表EXCLPACKUSE库存信息表EXCLPACKUSE在“名称”文本框的InterActiveChange事件下添加如下代码:thisform.text3.value=lower(thisform.rainfunction1.htop(this.value)在“名称”文本框的Click事件下添加如下代码:thisform.text3.
41、value=thisform.rainfunction1.htop(this.value)在Locatebuttons1控件的_FirstButtonClick方法程序下添加如下代码:SELE商品信息表thisform.resee在Locatebuttons1控件的_LastButtonClick方法程序下添加如下代码:SELE商品信息表thisform.resee在Locatebuttonsl控件的_NextButtonClick方法程序下添加如下代码:SELE商品信息表thisform.resee在Locatebuttonsl控件的_PreviousButtonClick方法程序下添加如下
42、代码:SELE商品信息表thisform.resee在Oftenbuttons1控件的_SaveButtonClick方法程序下添加如下代码:DIMEtxt(13),get(9)*存入信息SELE商品信息表thisrecno=recno()FORm=1TO6txtname="text"+alltrim(str(m)txt(m)=alltrim(thisform.&txtname.value)&&将字符型数据存入数组ENDFORFORm=7TO11txtname="text"+alltrim(str(m)txt(m)=thisfor
43、m.&txtname.value&&将数值及日期型数据存入数组ENDFORtxt(12)=alltrim(thisform.text12.value)txt(13)=thisform.rainfunction1.numbertoname("供应商信息表","全称":thisform.grid1.readonly=.t.thisform.grid1.enabled=.t.thisform.locatebuttons1.enabled=.t.在Oftenbuttons1控件的_DeleteButtonClick方法程序下添加如下代码:
44、DELETEFROM库%信息表WHERE商品编号"alltrim(thisform.text1.value)SELE库存信息表USEUSE库存信息表EXCL&&以独占方式打开库存信息表PACKUSEUSE库存信息表thisform.grid1.initmand2.clickthisform.resee在Oftenbuttons1控件的_UndoButtonClick方法程序下添加如下代码:SELE商品信息表FORm=2TO12&&使文本框失效thisform.grid1.enabled=.t.thisform.locatebuttons1.enable
45、d=.t.在Oftenbuttonsl控件的_AddButtonClick方法程序下添加如下代码:PRIVATEbhFORm=1TO6&&清空文本框textname="text"+alltrim(str(m)thisform.&textname.value=""ENDFORthisform.text7.value=。SELECTmax(编号)AS编号FROM商品信息表INTOCURSORls1SELEls1IFreccount()=0bh='SP00001'ELSEibh=val(right(ls1.编号,len(
46、ls1.编号)-2)&&取出编号bh="SP"+padl(alltrim(str(ibh+1),5,"0")ENDIFthisform.text1.value=bhFORm=2TO12textname="text"+alltrim(str(m)thisform.&textname.enabled=.t.ENDFORbo1.enabled=.t.thisform.text2.setfocusmand1.enabled=.f.thisform.grid1.enabled=.f.thisform.locatebutt
47、ons1.enabled=.f.在Oftenbuttons1控件的_ChangeButtonClick事件下添加如下代码:FORm=4TO12textname="text"+alltrim(str(m)thisform.&textname.enabled=.t.ENDFORbo1.enabled=.t.thisform.locatebuttons1.enabled=.f.在Oftenbuttonsl控件的AreyouOK方法程序下添加如下代码:a=messagebox(确定要保存吗?",32+4,"系统提示")IFa=6DOCASECA
48、SEempty(thisform.text2.value)=.t.messagebox("青添加商品名称!",16,"系统提示")this.sure=.f.thisform.text2.setfocusENDIF在表格控件Grid1的AfterRowColChange事件下添加如下代码:thisform.resee在Grid1控件的Init事件下添加如下代码:SELE商品信息表this.setall("DynamicBackColor","iif(recno()%2=0,rgb(188,240,209),rgb(255,25
49、5,255)","Column")在“查询字段”组合框的Init事件下添加如下代码:PUBLICmygg,jlhmygg=.f.jlh=1this.additem("产地")在“查询字段”组合框的mygg=.f.在“查询条件”文本框的mygg=.f.在“查询”按钮的 Clickthis.additem("编号")InterActiveChange事件下添加如下代码:InterActivechange事件下添加如下代码:事件下添加如下代码:SELECT*FROM商品信息表WHERE&zd.&fhtjINTOCU
50、RSORlssxb&&根据条件建立查询SELE商品信息表IFmygg=.f.&&记录是否更改查询条件或字段的变量LOCAFOR编号=lssxb.编号&&没有更改,重新查找ELSE&&如果并没有更改也就是说是继续查找SELElssxb3.3.3 库存盘点模块设计库存盘点模块主要用于对库存信息进行盘点,并且同时也可以通过选择查询字段进行库存信息进行盘点。库存盘点模块运行结果。如图3.4所示。图3.4库存盘点模块设计图1 .表单设计(1)在“珠宝进销存管理系统”项目文件中添加一个表单,命名为“Frm库存盘点”。(2)向表单内添加自制类控
51、件Back、Label控件、Text控件、Combo控件、MSHFlexGrid控件、Command控件、Cotainer控件、添加Image控件、RainFunction类控件和FormIn类控件、(3)重要控件的属性设置如表3.13所示。表3.13重要控件属性对象属性值Form1AutoCenter.T.Form1ShowWindows2-作为顶层表单2 .主要代码在表单的Unload事件下添加如下代码:closealldatabasedelefilelsb.*在表单的Init事件下添加如下代码:Publicbh在表单控件的KeyPress事件下添加如下代码:LPARAMETERSnKey
52、Code,nShiftAltCtrlIFNKEYCODE=13ANDTHIS.displayvalue="全部"mand1.clickendif在表格控件的RowClochange事件下添加如下代码:*ActiveX控件事件*form=0tothisform.msgrid.rows-1thisform.msgrid.TextMatrix(m,0)=""endforMYCOL=thisform.msgrid.colthisform.text2.value=val(thisform.msgrid.textmatrix(this.Row,7)thisform.
53、text5.value=val(thisform.msgrid.textmatrix(this.RoW,8)thisform.text4.enabled=.t.selectsum(损溢数量)as损溢数量from报损报溢表where商品编号=alltrim(this.textmatrix(this.row,1)and盘点否=.ocursorLSSYBthisform.text3.value=LSSYB.损溢数量在表格控件的Init事件下添加如下代码:thisform.msgrid.colwidth(3)=2200thisform.msgrid.colwidth(4)=2200thisf
54、orm.msgrid.TextMatrix(0,1)="编号thisform.msgrid.TextMatrix(0,2)="名称在“查询字段”组合框的KeyPress事件下添加如下代码:LPARAMETERSnKeyCode,nShiftAltCtrlIFNKEYCODE=13ANDTHIS.displayvalue="全部"mandl.clickendif在“查询字段”组合框的InterActiveChange事件下添加如下代码:ifthis.value<>"全部"thisform.text1.enabled=.t.e
55、lsethisform.text1.enabled=.f.sele商品信息表gotopthisform.msgrid.rows=2ifreccount()<>0form=1toreccount()sele商品信息表gotomthisform.msgrid.additem("")thisform.msgrid.TextMatrix(m,1)=商品信息表.编号thisform.msgrid.TextMatrix(m,2)=商品信息表.名称thisform.msgrid.TextMatrix(m,3)=商品信息表.计量单位ifempty(商品信息表.出厂日期尸.f.andempty的品信息表.保质期尸.f.thisform.msgrid.TextMatrix(m,4)=商品信息表.出厂日期thisform.msgrid.Tex
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 检测仪器设备校准与维护服务补充协议
- 互联网企业SPV股权并购协议书
- 培训课程创新研发补充协议
- 《医药论坛杂志》投稿须知官方认证
- 2025年四年级英语教师教学总结模版
- 译林版必修三英语《Unit 3 The world online》Grammar and usage课课件
- 江西理工大学《文艺演出策划》2023-2024学年第二学期期末试卷
- 2025年档案管理个人工作总结模版
- 泉州师范学院《果树育种技术》2023-2024学年第一学期期末试卷
- 新媒体运营与推广协议
- 2025至2030中国电化学储能行业发展现状及趋势前景预判研究报告
- 2025年公共卫生与预防医学知识考试试题及答案
- 离婚协议书原版
- 2025年高考地理复习 大单元八 人口、城镇与大都市辐射 题库
- 新人教版数学五年级下册3.3 练习五课件
- 中央2025年陆军面向社会公开招考专业技能类文职人员笔试历年参考题库附带答案详解
- 2025年天津市滨海新区中考数学一模试卷
- 2025年杭州市高三语文二模作文题目“科技与相互理解”写作指导
- 小学生摄影课件
- 2025(标准)承包清工劳务合同协议书范本
- 合伙入股协议合同范本
评论
0/150
提交评论