资源描述
摘要
本文主要介绍了面向商品批发、零售行业的商品库存管理系统的设计与开发过程,通过实地调研和数据分析,完成了系统需求分析和系统的总体与详细设计,并编码实现。完成入库,出库业务,且允许一张单据涉及多种商品,跟踪仓库中每种商品的库存数量,且可以对其进行盘点,提供过期商品查询,库存数量报警,可以满足多仓库需要,支持联想输入技术。
系统使用的开发工具是Microsoft Visual C++6.0,后台数据库是本地Sql Server 2000通过ADO与前台Visual C++6.0连接。采用基于客户/服务器(Client/Server)的开发模式。本系统提供的功能模块有:基础信息管理模块,其中包括供应商信息管理、客户信息管理、仓库信息管理、商品信息管理、地域信息管理、计量单位管理、上述模块都具备添加、修改、删除、浏览功能,地域信息管理以树形视图形式显示。日常业务管理模块,它包括入库管理、出库管理、调货管理、库存盘点,各模块允许一次对多种商品进行操作,并可自动核算合计数量及合计金额。查询统计管理中包括过期商品查询,实现自动筛选过期商品并删除之,还有库存数量报警,实现商品数量的控制。系统管理模块包括用户信息管理等模块。系统基本可以实现对日常商品的管理。
关键词:商品信息管理系统,C++,Sql Server 2000
ABSTRACT
This paper mainly introduces the goods for the wholesale, retail trade of goods, inventory management system design and development process, through field research and data analysis, completed a system requirements analysis and system overall and detailed design and coding to achieve. Complete Into the warehouse and out of the warehouse, and to allow a document involving some range of goods, tracking warehouse inventory in the number of each type of goods, and inventory can be carried out to provide expired merchandise inquiries, the number of inventory alarm, to meet the needs of multi-warehouse, Support imagine importation of technology.
System development tool is Microsoft Visual C + +6.0, the background database is a local Sql Server 2000 through ADO connections with Visual C + +6.0. Based on the Client and Server mode of development. The system function provided by modules are: the basis of information management modules, including providers of information management, customer information management, storage information management, product information management, geographical information management, management of measurement units, the modules have to add, modify, delete, browsing, geographical information management in order to form tree-like view. Day-to-day business management module, which includes storage management, a database management, and transfer cargo management, stock inventory, the module allows a wide range of goods to operate, and automatic accounting of the total number and total amount. Query statistics, including the management of expired goods, information, automatically filter and remove the expired goods, as well as the number of inventory report to the police, to achieve control of the number of goods. System Management Module, including user information management module. System can achieve the basic commodities of day-to-day management.
Keywords: Commodities, Commodities management system, Visual C++6.0 system development, Sql Server 2000
目录
摘要 II
ABSTRACT II
目录 III
第1章 引言 1
1.1 研究背景 1
1.2 研究内容 2
第2章 系统定义与开发工具 3
2.1系统定义 3
2.2 系统开发工具 3
2.2.1 Visual C++6.0 3
2.2.2 SQL Server 2000 4
2.2.3 PowerDesigner12.5 4
第3章 系统分析与设计 5
3.1 系统需求分析 5
3.2 用户需求数据流分析 6
3.3 系统功能结构设计 9
第4章 数据库分析与设计 10
4.1概念结构设计 10
4.2逻辑结构设计 12
第5章 商品信息管理系统详细设计及实现 16
5.1 系统登录及主界面设计 16
5.2各模块详细设计及实现 17
5.2.1商品信息管理模块 17
5.2.2商品信息查询模块 20
5.2.3商品信息管理模块功能 22
5.2.4商品入库模块 24
5.3系统维护 29
第6章 结束语 30
致谢 31
参考文献 32
第1章 引言
1.1 研究背景
信息全球化的今天,计算机作为当今重要的信息产品,成为大众必不可缺的工具。计算机技术广泛应用于日常办公,使我们可以进行文字处理、电子报表以及进行简单的人事管理、财务管理等,计算机的普及大大提高了我们的工作效率;代替人工进行许多繁杂的劳动;节省许多资源;使管理更具规范化,系统化,科学化[1]。
随着我国经济的飞速发展,各种类型规模的公司企业迅速崛起,许多从事生产和经营管理的企业都有自己生产和销售的产品,而这些产品都需要储存在仓库中,对于每个企业来说,随着企业规模的不断扩大,产品数量的急剧增加,所生产产品的种类也会不断地更新与发展,有关产品的各种信息量也会成倍增长[6]。面对庞大的产品信息量,如何有效地管理库存产品,对这些企业来说是非常重要的,库存管理涉及入库、出库的产品、经办人员及客户等方方面面的因素,如何管理这些信息数据,是一项复杂的系统工程,充分考验着仓库管理员的工作能力,工作量的繁重是可想而知的,所以这就需要由库存管理系统来提高库存管理工作的效率,这对信息的规范管理、科学统计和快速查询,减少管理方面的工作量,同时对于调动广大员工的工作积极性,提高企业的生产效率,都具有十分重要的现实意义[2]。对于企业的资源管理,信息的存储和处理也显得迫切需要,要适应市场竞争,就需要有高效的处理方式和管理方法,因此加快商品的信息化进程是必可少的[3]。
商品库存管理系统依靠现代化的计算机信息处理技术来管理商品,从而节省了大量的人力、物力,改善了员工的工作条件,减轻了劳动强度,并且能够快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快商品经营管理效率。
1.2 研究内容
本主要介绍专为商品批发、零售行业开发的专业管理系统的设计实现过程。系统完善解决了以下的问题:商品种类繁多、批号及有效期管理、经营业务量大、等批发零售行业现存问题。
管理信息系统的开发方法有生命周期法、原型法和面向对象的开发方法等。本商品库存管理系统利用软件工程化思想和方法,总体上是采用结构化生命法进行系统分析和设计的,而系统实现等步骤则采用了原型法和面对对象的方法[4]。
管理信息系统的开发是一个开发周期长、技术要求高、影响因素多的复杂系统工程,因此制定一个完善、可行、合理的开发计划,并运用简单的开发工具和数据库工具做到一定的开发效果,不仅使系统开发成功,而且提高效率、节省时间、降低成本。本系统设计包括前期的系统调研和系统分析,系统设计、系统程序设计,到后期的系统调试和系统试运行[5]。
本系统总体设计工作由上而下地进行。首先设计总体结构,然后逐层深入,直到进入每一个模块的设计。总体设计主要是指在系统分析的基础上,对整个系统的划分,软硬件配置,数据存储以及系统实现等方面的合理安排。
本系统的特点如下:
1.完成入库,出库业务,且允许一张单据涉及多种商品。
2.支持多条件查询。按商品名称,仓库名称、类别等进行查询。
3.跟踪各个仓库中每种商品的库存数量,仓库之间每种商品可以相互进行 调货,可以对其进行盘点。
4.提供过期商品查询,库存数量报警。
5.支持联想输入技术。方便输入,方便参考。
第2章 系统定义与开发工具
2.1系统定义
管理信息系统(简称MIS)是在管理科学、系统科学、计算机科学等的基础上发展起来的综合性边缘科学。在21世纪信息高速发展的时代中,管理信息系统具有很重要的作用,它的预测和辅助决策的功能,即利用现代管理的决策和支持[6]。
本系统结合管理信息系统的概念,是一个由人、机组成的能进行管理信息收集、传递、存储、加工、维护和使用的系统。它能观测库存中商品的具体信息,把现实世界中的商品数据化,体现一个数据化的仓库模型,方便人去管理和经营。
系统定义
项目:商品库存管理系统
项目目的:为了加强商品管理,以便更好地对商品进行零售批发、库存管理,减轻管理人员的工作量。
项目目标:建立一个能够实现商品管理者对商品的简单管理,初步实现对商品管理的智能化,提高商品管理效率,减轻管理人员的工作量,减少商品统计的失误。
2.2 系统开发工具
了解商品管理过程中的工作情况;通过对网上查询了解,从中收集到一些相关商品数据;了解了商品库存管理系统今后的市场和发展潜力。这些都为设计提供了帮助。
选择Visual C++6.0、Sql Server 2000、Powerdesigner12.5、Microsoft Visio如下的设计工具。
2.2.1 Visual C++6.0
系统开发语言:Visual C++6.0。Visual C++是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出Visual C++1.0后,随着其新版本的不断问世,Visual C++已成为专业程序员进行软件开发的首选工具。Visual C++6.0不仅是一个C++编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。Visual C++6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。 这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境[7]。
2.2.2 SQL Server 2000
数据库:SQL Server作为微软在Windows 系列平台上开发的数据库,一经推出就以其易用性得到了很多用户的青睐,相信大多数将自己的业务建立在Windows平台上的用户都会对它有相当的亲切感。大多数的中小企业日常的数据应用是建立在Windows平台上的。由于SQL Server与Windows界面风格完全一致,且有许多"向导(Wizard)"帮助,因此易于安装和学习[8]。由于今天Windows操作系统占领着主导地的位,选择SQL Server一定会在兼容性方面取得一些优势。另外,SQL Server 2000 除了具有扩展性,可靠性以外,还具有可以迅速开发新的因特网系统的功能。尤其是它可以直接存贮 XML 数据,可以将搜索结果以 XML格式输出等特点,有利于构建了异构系统的互操作性,奠定了面向互联网的企业应用和服务的基石。这些特点在.NET 战略中发挥着重要的作用[9]。
2.2.3 PowerDesigner12.5
数据流图,E-R图设计:PowerDesigner12.5。PowerDesigner是Sybase公司的CASE工具集,使用它可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程。利用PowerDesigner可以制作数据流程图、概念数据模型、物理数据模型,可以生成多种客户端开发工具的应用程序,还可为数据仓库制作结构模型,也能对团队设计模型进行控制[9]。PowerDesigner不仅加速了开发的过程,也向最终用户提供了管理和访问项目的信息的一个有效的结构,它是一个功能强大而使用简单工具集,提供了一个复杂的交互环境,支持开发生命周期的所有阶段,从处理流程建模到对象和组件的生成。PowerDesigner产生的模型和应用可以不断地增长,适应并随着你的组织的变化而变化。
第3章 系统分析与设计
3.1 系统需求分析
当今时代是飞速发展的信息时代,在各行各业中离不开信息处理,这正是计算机被广泛应用于信息处理系统的环境。计算机最大的好处在于利用它能够进行信息管理,使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提[9]。
仓库作为一总货品资源的集散地,货品的种类繁多,包含很多的信息数据的管理。据调查得知,以前仓库进行信息管理的方式主要是基于文本、表格等纸介质的手工处理,对于货品的出入库情况的统计和核实等往往采用对账本的人工检查,对管理者的管理权限等不受约束,任何人都可查看,这样容易引起资料外泄[6]。另外,数据信息处理工作量大,容易出错,由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统、规范的信息管理手段。而且,一般的存储情况是记录在账本上的,仓库的工作人员和管理员也只是当时记得比较清楚,时间一长,如果再要进行查询,就得在众多的资料中翻阅查找了,这样造成费时、费力,如要对很长时间以前的货品进行更改就更加困难了。因此,很有必要建立一个库存管理系统,使商品管理工作规范化,系统化,程序化。提高信息处理的速度和准确性[7]。
通过调查,熟悉该系统的业务描述,了解用户需求:
1.用户通过该系统来管理各种商品,对商品信息进行添加、修改和删除,通过
商品的各个属性来查询商品。对于客户和供应商也需要类似的需求。
2.用户通过该系统来对供应商提供的商品进行入库操作,形成入库单,入库单
要有入库单号,入库时间,商品详细信息,以及商品总的数量和总金额,入
库单号和时间可以方便以后查询,商品信息可以方便用户选择合适的商品。数量和金额方便用户与供应商交易。
3.用户可以通过该系统对库存商品进行出库操作,形成出库单,出库单同样要
有出库单号,出库时间,商品详细信息,以及商品总的数量和金额。
4.用户可以对商品产地和计量单位进行管理,同时管理多个仓库,对过期商品
进行查询并及时清理,防止不安全事故发生,对仓库中商品库存数量过多或过少报警,即时增加或减少商品数量,通过调货进行仓库之间商品的调货。
3.2 用户需求数据流分析
经过调查分析,了解用户需求之后,画出0层数据流图,主要描述用户,商品,客户,供应商之间的数据流向,以及相关数据的存储单,如图3-1所示:
图3-1 商品库存管理系统0层数据流图
第1层数据流图:
商品信息管理数据流图:主要描述用户通过供应商提供的商品信息对商品进行添加,修改,删除,查询等操作,并将商品信息流入商品信息表。用户通过商品名称,类别,编号等字段查询需要的商品,查到后,可以通过点击商品列表删除商品,修改该商品信息,或者添加新的商品。操作完成后,保存信息,将新商品信息录入商品信息表如图3-2所示:
图3-2 商品信息管理数据流图
商品入库管理数据流图:主要描述用户通过商品信息表提供的信息,选择入库商品,流出被选择商品信息列表,通过入库处理,将信息一部分流入入库信息表,一部分流入库存信息表。如图3-3所示:
图3-3 商品入库管理数据流图
商品出库管理数据流图:主要描述用户通过商品信息表提供的信息,选择出库商品,流出被选择商品信息列表,通过出库处理,将信息一部分流入出库信息表,一部分流入库存信息表。如图3-4所示:
图3-4 商品出库管理数据流图
数据处理:
处理名称:处理商品
流入:商品信息,用户录入信息
流出:待入库的商品信息
描述:根据供应商提供的信息和用户录入对应商品的信息得到商品详细信息
处理名称:处理客户和供应商
流入:供应商信息,客户信息,用户录入信息
流出:客户信息和供应商信息
描述:根据客户信息、供应商信息和用户录入信息分别得到客户详细信息和供应商详细信息
处理名称:商品入库
流入:商品信息,用户录入信息,仓库名称
流出:入库信息表,库存信息表
描述:根据商品信息表提供的商品信息和用户录入相关信息,形成入库信息表,并将商品存入库存信息表
处理名称:商品出库
流入:库存商品信息,客户信息,用户录入信息
流出:出库信息表
描述:根据库存商品信息,客户信息,用户编号,形成出库信息表。并对库存信息表进行数量调整。
3.3 系统功能结构设计
根据用户需求,由需求分析得出几个重要处理过程,方便用户操作和管理,初步设计功能结构如图3-5 系统功能结构图,并希望实现如下功能:
1.基础信息管理模块,其中包括供应商信息管理、客户信息管理、仓库信息管理、商品信息管理、地域信息管理、计量单位管理、上述模块都具备添加、修改、删除、浏览功能,地域信息管理以树形视图形式显示。
2.日常业务管理模块,它包括入库管理、出库管理、调货管理、库存盘点,各模块允许一次对多种商品进行操作,并可自动核算合计数量及合计金额。
3.查询统计管理中包括过期商品查询,实现自动筛选过期商品并删除之,还有库存数量报警,实现商品数量的控制。
4.系统管理模块包括用户信息管理等模块,主要管理用户信息。
图3-5系统功能结构图
第4章 数据库分析与设计
4.1概念结构设计
根据以上分析,画出库存管理系统E-R图,如图4-1:
图4-1 商品库存管理系统E-R图
实体描述:
用户信息
名字:用户
描述:每个用户的基本信息
定义:用户=编号+用户名+密码
说明:编号int (4),用户名char(4),密码char(3)
商品信息
名字:商品
描述:库存中商品的基本信息
定义:商品=商品代号+商品名称+简称+类别+产地+规格+计量单位+出产时间+保质期
说明:商品代号char(10),商品名称char(20),简称char(10),类别char(10),产地int(4),计量单位int(4),出厂日期datetime(8),保质期 datetime(8)
供应商信息
名字:供应商
描述:所有供应商的信息
定义:供应商信息=编号+名称+简称+地址+地区编号+电话+传真+联系人+联系电话+银行+帐户+纳税人+Email。说明:编号char(10),名称char(20),简称char(10),地址cha(30),地区编号 int(4),电话char(15),char(22),联系人char (8),联系电话 char(15),银行 char (22),帐户char (22),纳税人char(8),Email char(30)
客户信息
名字:客户
描述:所有客户的信息
定义:客户信息=编号+名称+简称+地址+地区编号+电话+传真+联系人+联系电话+银行+帐户+纳税人+Email。说明:编号char(10),名称char(20),简称char(10),地址cha(30),地区编号 int(4),电话char(15),char(22),联系人char (8),联系电话 char(15),银行 char (22),帐户char (22),纳税人char(8),Email char(30)
仓库信息
名字:仓库
描述:所有仓库的信息
定义:仓库信息=编号+名称+简称。说明:编号 int(4),名称 char (8),简称 char (4)
入库商品信息
名字:入库商品单
描述:入库商品信息
定义:入库商品信息=入库商品票号+入库商品合计数量+入库商品合计金额。说明:入库商品票号 int(4), 入库商品合计数量int(4), 入库商品合计金额 money (8)
待入库商品信息
名字:待入库商品
描述:待入库商品信息
定义:待入库商品信息=待入库商品编号+数量。说明:待入库商品编号 char (10),数量 int (4)
出库商品信息
名字:出库商品单
描述:出库商品信息
定义:出库商品信息=出库商品票号+出库商品合计数量+出库商品合计金额。说明:出库商品票号 int(4),出库商品合计数量int(4),出库商品合计金额 money (8)
待出库商品信息
名字:待出库商品
描述:待出库商品信息
定义:待出库商品信息=待出库商品编号+数量。说明:待出库商品编号 char (10),数量 int (4)
4.2逻辑结构设计
逻辑结构设计主要介绍实体信息,用表的形式介绍。
商品信息表主要描述供应商提供的商品信息,和用户登记商品时需要备注的信息。其中商品编号是主码,供应商编号是外码,详细字段属性如表4-1:
表4-1 商品信息表
字段名称
字段类型
主键
外键
是否允许空
商品编号
Char(10)
是
供应商编号
Char(10)
是
是
商品名称
Char (10)
是
类别
Char (10)
是
规格
Char (10)
是
简称
Char (10)
是
产地
Int (4)
是
供应商信息表主要描述供应商信息,如供应商编号,供应商名称,供应商简称。其中供应商编号为主码,供应商简称通过供应商名称自动取名称的首个大写字母,所以字段大小为名称的一半,供应商编号由系统按自动编号生成,编号前加“GY”表示这是供应商的编号,方便用户分类,例如“GY00000001”表示第一个供应商客户的编号,其他属性详细字段如表4-2:
表4-2 供应商信息表
字段名称
字段类型
主键
外键
是否允许空
供应商编号
Char(10)
是
供应商名称
Char (20)
是
供应商简称
Char(10)
是
供应商地址
Char(30)
是
地区编号
Int (4)
是
电话
Char(15)
是
传真
Char(22)
是
联系人
Char(8)
是
联系人电话
Char(15)
是
银行
Char(22)
是
帐户
Char(22)
是
客户信息表主要描述客户信息,如客户编号,客户名称,客户简称。其中客户编号为主码,客户简称通过客户名称自动取名称的首个大写字母,所以字段大小为名称的一半,客户编号由系统按自动编号生成,编号前加“KH”表示这是客户的编号,方便用户分类,例如“KH00000001”表示第一个客户的编号,其他的详细字段属性如表4-3:
表4-3 客户信息表
字段名称
字段类型
主键
外键
是否允许空
客户编号
Char(10)
是
客户名称
Char (20)
是
客户简称
Char(10)
是
客户地址
Char(30)
是
地区编号
Int (4)
是
电话
Char(15)
是
传真
Char(22)
是
用户信息表主要描述用户信息,如用户名,密码等。其中用户编号为主码,这里用户名和用户密码设置的长度过短,安全性方面确实不够,由于本人能力有限,在编码时遇到密码验证时用的是通过用户输入的密码和数据库中的密码相等来判断密码是否正确,但由于数据库中的字段长度如果过长,例如总长是6位的密码,设置的是4位,密码是1111,但存入数据库会是1111加两个空格,这个问题无法解决,所以干脆将字段长度缩短,勉强实现了功能,但安全性大大降低,详细字段属性如表4-4:
表4-4 用户信息表
字段名称
字段类型
主键
外键
是否允许空
用户编号
Int (4)
是
用户名
Char (4)
密码
Char (3)
仓库信息表主要描述仓库信息,如仓库名,仓库简称等。详细字段属性如表4-5:
表4-5 仓库信息表
字段名称
字段类型
主键
外键
是否允许空
仓库编号
Int (4)
是
仓库名称
Char (8)
仓库简称
Char (4)
待出库商品信息表主要描述待出库商品信息,如待出库商品编号,待出库商品票号等。标识码由待出库商品编号和待出库商品票号两个字段决定,详细字段属性如表4-6:
表4-6待出库商品信息表
字段名称
字段类型
主键
外键
是否允许空
待出库商品编号
Char (10)
待出库商品票号
Char (25)
数量
Int (4)
仓库编号
Int (4)
待入库商品信息表主要描述待入库商品信息,如待入库商品编号,待入库商品票号等。标识码由待入库商品编号和待入库商品票号两个字段决定,详细字段属性如表4-7:
表4-7 待入库商品信息表
字段名称
字段类型
主键
外键
是否允许空
待入库商品编号
Char (10)
待入库商品票号
Char (25)
数量
Int (4)
仓库编号
Int (4)
出库商品表主要描述一张出库商品单,其中包括出库商品票号,用户编号,客户编号出库商品合计数量,出库商品合计金额等。出库商品票号为主码,用户编号和客户编号为外码,详细字段属性如表4-8:
表4-8 出库商品表
字段名称
字段类型
主键
外键
是否允许空
出库商品票号
Char(25)
是
用户编号
Int(4)
是
客户编号
Char (10)
是
出库商品合计数量
Int (4)
出库商品合计金额
Money(8)
入库商品表主要描述一张入库商品单,其中包括入库商品票号,用户编号,入库商品合计数量,入库商品合计金额等。入库商品票号为主码,用户编号为外码,详细字段属性如表4-9:
表4-9 入库商品表
字段名称
字段类型
主键
外键
是否允许空
入库商品票号
Char (25)
是
用户编号
Int(4)
是
入库商品合计数量
Int (4)
是
入库商品合计金额
Money(8)
是
第5章 商品信息管理系统详细设计及实现
5.1 系统登录及主界面设计
登录模块:
登录窗口用户名采用组合框控件方便使用过本系统的用户选择自己对应的帐户。
不过同时也存在一个大的缺陷就是用户必须先在系统内注册用户信息,本系统不提供用户注册功能,如果用户懂数据库,可以在数据库中添加。登录框如图5-1,图5-2所示:
图5-1 登录框
登录窗口Login的操作方式:在用户账号栏中选择用户账号,在用户密码栏中输入密码后,再选择相应的用户类型栏中的选项,点击确定按钮,若信息验证合法,则进入系统主页面,否则弹出“您输入的密码不正确,请重新输入”,如果三次都不正确,则弹出“对不起,您无权登录”的消息框,点击确定后退出登录。如图5-2:
图5-2 无权登录
主页面菜单显示本系统的重要功能模块按钮,如基本信息管理,日常业务管理,查询统计管理,系统管理。其中基本信息管理包括商品信息管理,客户信息管理,供应商信息管理,地域信息管理,计量单位管理。日常业务管理包括入库管理,出库管理,调货管理,库存盘点。查询统计管理包括库存数量报警和过期商品清理功能。系统管理就是用户帐号的管理和关于本系统。主界面如图5-3所示:
图5-3 商品管理系统主界面
5.2各模块详细设计及实现
5.2.1商品信息管理模块
商品信息模块具体属性设置,通过控件按钮添加,修改,删除,保存,撤消,退出来控制商品信息, 如表5-1所示:
表5-1 商品信息控件属性设置
资源类型
资源ID
标题
按钮
IDC_BUTAdd
添加
按钮
IDC_BUTChange
修改
按钮
IDC_BUTDele
删除
按钮
IDC_BUTSave
保存
按钮
IDC_BUTUndo
撤消
按钮
IDC_BUTExit
退出
为上述控件添加成员变量,如表5-2所示:
表5-2商品信息控件成员变量
资源ID
类型
成员变量
IDC_BUTAdd
CButton
m_ButAdd
IDC_BUTChange
CButton
m_ButChange
IDC_BUTDele
CButton
m_ButDele
IDC_BUTSave
CButton
m_ButSave
IDC_BUTUndo
CButton
m_ButUndo
IDC_BUTExit
CButton
m_ButExit
添加成员函数,通过消息,将控件与函数连接,当按下这个控件按钮时,执行这个函数内部的代码。商品信息管理模块具体的成员函数如表5-3所示:
表5-3 商品信息各个按钮及其他的成员函数
资源ID
消息
成员函数
IDC_BUTAdd
BN_CLICKED
OnBUTAdd
IDC_BUTChange
BN_CLICKED
OnBUTChange
IDC_BUTDele
BN_CLICKED
OnBUTDele
IDC_BUTExit
BN_CLICKED
OnBUTExit
IDC_BUTSave
BN_CLICKED
OnBUTSave
IDC_EdtName2
EN_CHANGE
OnChangeEdtName
CDWare_Edit
ON_WM_INITDALOG
OnInitDialog
IDC_COMCity
CBN_KILLFOCUS
OnKillfocusCOMCity
IDC_COMProvince
CBN_KILLFOCUS
OnKillfocusCOMProvince
IDC_DATKeepTime
NM_KILLFOCUS
OnKillfocusDATKeepTime
部分代码实现:
BOOL CDWare_Edit::OnInitDialog() //这是商品信息管理的初始化代码。
{
CString sSQL;
CDialog::OnInitDialog(); //初始化对话框。
rst.CreateInstance(__uuidof(Recordset)); //创建记录集实例
//通过SQL语句从地域信息表中选择上级编号等于0的记录,将SQL语句存入sSQL字符串。
sSQL.Format("SELECT* From 地域信息表 WHERE 上级编号=0");
//通过Connection对象cnn打开与数据源的连接,并执行SQL语句,将获得的记录集由记录集指针rst表示地址。
rst=cnn->Execute((_bstr_t)sSQL,NULL,adCmdText);
this->m_ComProvince.SetRecordset(rst,"名称");
rst->Close(); //关闭指针。
sSQL.Format("SELECT* From 地域信息表 WHERE 上级编号=1");
rst=cnn->Execute((_bstr_t)sSQL,NULL,adCmdText);
//添加m_ComCity成员变量对应的组合框的字段名,字段从rst指针对应的记录集中读出。
this->m_ComCity.SetRecordset(rst,"名称");
rst->Close();
sSQL.Format("SELECT* From 地域信息表 WHERE 上级编号=2");
rst=cnn->Execute((_bstr_t)sSQL,NULL,adCmdText);
this->m_ComTown.SetRecordset(rst,"名称");
rst->Close();
rst=cnn->Execute(L"计量单位表",NULL,adCmdTable);
this->m_ComUnit.SetRecordset(rst,"名称");
rst->Close();
this->Display(this->DisplayNumber);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
商品信息管理模块功能实现界面,按下添加按钮后,会自动生成下一个编号“SP00000004”,其他属性可以根据需要填写,其中出厂日期必须小于保质期,具体操作界面,如图5-4:
图5-4 商品信息管理实现界面
5.2.2商品信息查询模块
商品信息查询模块主要用来对商品进行查询,用户可以根据不同的字段查询商品,例如商品编号,商品
展开阅读全文