搜索
您的当前位置:首页小型超市管理系统

小型超市管理系统

来源:飒榕旅游知识分享网


课 程 设 计

课程名称 题目名称 专业班级

数据库技术(Oracle) 小型超市管理系统

学生姓名 学 号 指导教师

二○一四年六月二十日

目 录

第一章 引言 ..................................................................................................................................... 2

1.1编写目的 ............................................................................................................................ 2 1.2背景 .................................................................................................................................... 2 1.2.1开发目标 .................................................................................................................. 2 1.2.2开发现状 .................................................................................................................. 2

1.2.3 运行环境 ................................................................................................................. 2 第二章 需求分析 ............................................................................................................................. 3

2.1功能需求 ............................................................................................................................ 3 2.2性能需求 ............................................................................................................................ 3 2.2.1易用性 ...................................................................................................................... 3 2.2.2安全性 ...................................................................................................................... 4 第三章 数据库设计 ..................................................................................................................... 5

3.1数据流图 ............................................................................................................................ 5 3.2数据字典 ............................................................................................................................ 5 3.3概念设计 .......................................................................................... 错误!未定义书签。 3.3.1实体集 .................................................................................... 错误!未定义书签。 3.3.2关系模型 ................................................................................ 错误!未定义书签。 3.3.3 E-R图 ...................................................................................................................... 9 3.4数据库实现 ........................................................................................................................ 9 第四章 总体设计 ........................................................................................................................... 12

4.1模块 .................................................................................................................................. 12 4.1.1 模块划分 ............................................................................................................. 12 4.1.2实现功能 .............................................................................................................. 12 4.2系统结构 .......................................................................................................................... 13 4.3出错信息处理 .................................................................................................................. 14 第五章 详细设计 ........................................................................................... 错误!未定义书签。

5.1系统用例图 ...................................................................................... 错误!未定义书签。 5.2子系统用例图 .................................................................................................................. 16 5.3商品销售时序图 .............................................................................................................. 17 第六章 软件测试 ........................................................................................................................... 18

6.1测试概要 .......................................................................................................................... 18 6.1.1子功能分解 .......................................................................................................... 18 6.1.2测试内容 .............................................................................................................. 18 6.2 测试用例 ......................................................................................................................... 19 6.3 系统实现 ......................................................................................................................... 19 第七章 使用说明 ........................................................................................................................... 23

7.1系统总结 .......................................................................................................................... 23 7.2操作说明 .......................................................................................................................... 23 心得体会 ......................................................................................................................................... 25 致 谢 ......................................................................................................................................... 26 参考文献 ......................................................................................................................................... 27 附 录 ......................................................................................................................................... 28

第一章 引言

1.1编写目的

本文档作为用户需求说明书,编写的目的是为了定义所要开发的小型超市管理系统开发项目(以下简称项目)的开发目标,包括对功能的规定和性能的要求,指出预期的系统用户、系统的运行环境以及对用户操作的约定,为软件设计和开发提供依据,作为软件功能追溯的基础和软件开发工作量确定的标本。

本文档可以作为本项目开发的软件项目管理者、软件设计和开发人员以及本软件使用人员参考之用。

1.2背景 1.2.1开发目标

软件名称:小型超市管理系统

为方便超市管理员对进货信息、销售信息、库存信息的管理以及方便快捷的查询相关信息,提高超市管理的效率。方便销售人员对所销售商品信息的记录、商品单价的查询和销售总额计算以及显示顾客购买商品的清单和统计销售总额以及自动显示需要找还顾客的零钱。

1.2.2开发现状

每种商品都有各自的条形编码和相应的生产序列号,可以通过条形编码的不同来区别各种商品以及显示其售价以便销售人员售货,从而提高超市营业人员的工作效率。

1.2.3 运行环境

界面制作主要用VB实现,后台数据处理采用SQL实现。

第二章 需求分析

2.1功能需求

通过与超市管理员及销售人员的交谈、团队的分析、市场需求调查等方式,获得了小型超市管理系统的功能需求如下:

·允许多个用户使用该系统,但为保证数据库的安全,对每个用户登录前都需通过身份认证(通过输入用户名和密码验证),验证通过后方能进入该系统。当用户输入的用户名和密码累计错误达到三次时,将自动退出登录界面,禁止其进入此系统,访问其数据库。

·一个超市有多种商品,且每种商品的价格不一定相同。

·每种商品由于进货时进价的不同,以致售价的相应改变,出售商品时以最新的售价为准。

·在销售过程中,可以随时改变售价及销售小计,收银时自动显示当前客户所购商品的清单、总计和找零。

·在添加进货信息时,自动更新相应的库存信息。 ·在销售商品时,自动保存销售信息并自动更新利润信息。 ·可以方便快捷的查询进货信息、库存信息、销售信息、用户信息。 ·可以方便的修改进货信息、库存信息、销售信息及用户信息。

·售货时,当输入相应的商品编号回车后,可自动显示相应的商品名、售价和销售时间;当输入销售数量回车后,自动计算并显示销售总额;当输入有误时,给出相应的错误信息。

·当操作成功时有操作成功的提示信息,当操作失败时有操作失败原因的提示信息。

·访问利润表时需要通过独立密码验证用户身份。 ·当商品库存量低于10件时,有相应的进货提示信息。 ·能实现对销售表销售额的统计和对销售表的清空。 ·当商品低于一定存储时,系统自动生成进货表单。

2.2性能需求 2.2.1易用性

系统设计应具有良好的易用性、操作简便,符合常规Windows操作环境下的用户使用习惯。同时,尽量减少用户的记忆工作量,如在信息录入时尽可能充分利用数据字典进行选择录入,以提高用户工作效率。

在系统查询功能设计时,应提供多种查询条件的复合查询,让用户可以快速、精确地得到相关信息。同时,系统设计应具有良好的健壮性,如对各种用户各种

错误输入应能及时识别并给出相应提示。

2.2.2安全性

系统中所有涉及敏感信息如登录口令、利润查询等均需进行加密处理,服务器端应设置严格安全访问控制策略。同时,系统应具有完整的日志管理功能,对用户的数据敏感操作应能够完全追踪,可以通过日志反查其操作时间、操作内容、操作人员帐号等相关信息,从而保证系统安全性和操作责任的可追溯性。

本系统提供两种登录身份,管理员身份和销售员身份。销售员身份登录本系统时,只能进行商品销售和收银操作。使用管理员身份登录时,除可以进行商品的销售外,还可以浏览、查询、修改、新增进货信息、销售信息、库存信息、用户信息以及通过口令浏览利润信息表。

第三章 数据库设计

3.1数据流图

图3.1 小型超市管理系统数据流图

3.2数据字典

表3.2.1小型超市管理系统表清单

表 名 进货表 库存表 销售表 利润表 进货单 临时表 用户表

作 用 用来记录每次进货的相关信息 用来记录每种商品的库存量及当前的售价 用来记录每件商品的销售信息 用来记录当前销售的商品的盈利信息 用用记录库存不足需要进货的商品信息 用来记录当前客户购买的商品信息 用来记录用户信息,以保证数据库的安全

表3.2.2进货信息表

进货表 是否主键 属性名 数据类型 长度 可 空 约 束 缺省值 是 是 是 商品编号 商品名 进货量 进货日期 进货时间 进 价 售 价 char char int char char float float 10 20 4 20 20 8 8

表3.2.3库存信息表

备 注 √ 库存表 是否主键 属性名 数据类型 长度 可 空 约 束 缺省值 是 商品编号 商品名 库存量 进 价 售 价 char char int float float 10 20 4 8 8

表3.2.4销售信息表

备 注 √ 销售表 是否主键 属性名 数据类型 长度 可 空 约 束 缺省值 是 是 是

备 注 商品编号 商品名 销售日期 销售时间 销售量 单 价 小 计 char char char char char float float 10 20 20 20 20 8 8 √

表3.2.5利润信息表

利润表 是否主键 属性名 数据类型 长度 可 空 约 束 缺省值 是 是 商品编号 商品名 销售数量 时 间 利 润 char char int char float 10 20 4 20 8 √ √ 备 注 表3.2.6临时信息表

临时表 是否主键 属性名 数据类型 长度 可 空 约 束 缺省值 是 商品编号 商品名 销售量 售 价 小 计 char char int float float 10 20 4 8 8 √ 备 注 表3.2.7用户信息表

用户表 是否主键 属性名 数据类型 长度 可 空 约 束 缺省值 是 用户编名 用户名 性 别 出生年月 联系方式 char char char char char 20 20 2 20 20 20 √ √ √ √ 备 注 密 码 char 表3.2.8 进货表单 进货单 是否主键 属性名 数据类型 长度 可 空 约 束 缺省值 是 商品编号 商品名 char char 10 20 √ 备 注

3.3概念设计 3.3.1实体型

本数据库E-R图设计中包含5个实体,其中4个实体都是强实体集。实体的具体属性可见下表。

表3.9 实体信息表

实体集 进货表 库存表 销售表 进货单 临时表 利润表 用户表 属性 商品编号、商品名、进货量、进货时间、进价、售价 商品编号、商品名、库存量、进价、售价 商品编号、商品名、销售量、销售时间、单价、合计 商品编号、商品名 商品编号、商品名、销售量、售价、小计 商品编号、商品名、销售量、时间、利润 用户编号、用户名、性别、出生年月、联系方式、密码 3.3.2关系模型

根据关系模式转换规则,关系模式如下所示(有实下划线的为主码): ·商品信息=(商品编号,商品名,进货日期,进货时间,进价,售价) ·库存信息=(商品编号,商品名,库存量,进价,售价)

·用户信息=(用户编号,用户名,性别,出生年月,联系方式,密码) ·销售信息=(商品编号,商品名,销售日期,销售时间,销售量,售价,小计)

·利润信息=(商品编号,商品名,销售日期,销售时间,销售量,利润) ·临时信息=(商品编号,商品名,销售量,售价,小计) ·进货单信息=(商品编号,商品名)

3.3.3 E-R图

图3.2 小型超市管理系统数据库E-R图

3.4数据库实现

1.进货信息表

CREATE TABLE 进货表 (

商品编号 CHAR(10), 商品名

CHAR(20),

进货量 INT(4) NOT NULL, 进货日期 CHAR(20), 进货时间 CHAR(20), 进价 售价 );

2.销售信息表

CREATE TABLE 销售表 (

FLOAT(8) NOT NULL, FLOAT(8) NOT NULL,

PRIMARY KEY(商品编号,进货日期,进货时间)

商品编号 CHAR(10), 商品名 CHAR(20),

销售量 INT(4) NOT NULL, 售价 FLOAT(8) NOT NULL, 销售日期 CHAR(20) , 销售时间 CHAR(20) ,

PRIMARY KEY(商品编号,销售日期,销售时间) );

3.用户信息表

CREATE TABLE 用户表 (

用户编号 CHAR(10) PRIMARY KEY , 用户名 CHAR(20), 性 别 CHAR(2), 出生年月 CHAR(20), 联系方式 CHAR(20), 密 码 CHAR(20) );

4.库存信息表

CREATE TABLE 库存表 (

商品编号 CHAR(10) PRIMARY KEY , 商品名 CHAR(20), 库存量 FLOAT(8), 进价 FLOAT(8), 售价 FLOAT(8) );

5.临时信息表

CREATE TABLE 临时表 (

商品编号 CHAR(10) PRIMARY KEY , 商品名 CHAR(20), 销售量 CHAR(2),

售价 CHAR(20), 小计 CHAR(20) );

6.进货单信息表 CREATE TABLE 进货单 (

商品编号 CHAR(10) PRIMARY KEY , 商品名 CHAR(20) );

7.利润信息表

CREATE TABLE 利润表 (

商品编号 CHAR(10), 商品名 CHAR(20), 销售日期 FLOAT(8), 销售时间 FLOAT(8), 销售量 FLOAT(8), 利润 FLOAT(8),

PRIMARY KEY(商品编号,销售日期,销售时间) );

第四章 总体设计

4.1 模块

4.1.1 模块划分

本系统划分为5个功能模块,分别为销售模块、查询信息模块、修改信息模块、新增信息模块和返回与退出模块。

销售模块:用于实现超市商店的销售,通过验证的超市销售人员和管理人员有此权限。

查询模块:通过验证的管理人员可通过该模块查询进货信息、销售信息、库存信息、用户信息和利润信息。

修改模块:通过验证的管理人员可通过该模块修改进货信息、销售信息、库存信息和用户信息。

新增信息模块:通过验证的管理人员可通过该模块新增进货信息、销售信息、用户信息。

返回和退出模块:用来实现返回上级界面或退出本系统。

4.1.2实现功能

销售功能:当销售人员输入所销售商品的编号后,系统将自动显示对应的商品名、零售价和销售日期,并且光标自动弹至销售数量信息输入栏。信息输入完成后回车,自动显示销售总额,并且光标自动弹至收款信息输入处。信息录入完毕后回车,自动清空界面信息,方便下次信息的录入,并自动完成相应库存信息的更改,即销售商品库存量的相应减少和销售信息的更新,即自动将销售信息添加到销售表中。当销售数量栏为空时,系统会自动给出“请输入销售数量”的提示信息,方便用户操作。

收银功能:当前所销售的商品信息全部输入完成后,点击界面上的结账按钮,系统自动显示当前出售的全部商品的信息,并自动计算所售商品的总额。当收银员输入收款金额后,自动显示需找还给客户的零钱。

信息查询功能:实现了查询指定日期的销售信息和进货信息以及进货信息。实现了查询指定用户编号的用户信息和查询指定商品编号的库存信息。

信息修改功能:实现了快速的批量修改进货信息、销售信息、库存信息和用户信息。

新增信息功能:实现了方便快捷的增加进货信息和用户信息。新增进货信息时,系统会自动更新所添加商品的库存信息,如:所进商品的库存量将自动增加相应的进货量以及对所引入的新商品信息自动添加到库存信息表中,以便于销售。

统计功能:实现了对销售表中销售金额的统计和对销售表信息的清空。 返回和退出功能:实现了返回上级页面或退出系统时,自动保存或清除有关

的界面信息,以保证数据库信息的安全。

4.2系统结构

系统总体结构

图4.1 小型超市管理系统总体结构

前台POS销售系统 后台管理系统 小型超市零售管理系统 销售商品录入收银业务进货管理销售管理库存管理人员管理

4.3 出错信息处理

表4.1 错误信息提示及处理 系统输出信息的形式 含义 所查询的进货信息表或销售信息表或用户信息表或库存信息表中没有您要查询的信息。 处理方法 核对输入信息是否正确,或进入SQL Server后台,查看相应的表信息。 启动SQL Server服务器,更改数据库连接时的服务器名。 没有您要查找的信息 数据库连接不上 SQL Server服务器没有启动,或者是安装是没有更改服务器名。 商品编号重复(插入信息失败) 主键不能重复,可能所插入的商品信息,数据库表中已经存在,只能对其修改。 更换商品编号或是选择添加进货信息。 用户编号重复 新增用户信息时,可能所增加的用户编号用户表中已经存在。 进入用户表,直接更改相应用户的信息或是为用户重新编号。 认清登录身份,核对用户名或密码 找回密码后重新登录 确定输入的信息是否符合定义的数据类型,是否溢出。 用户名或密码错误 输入的用户名或密码在用户表中找不到记录。 系统安全验证没有通过 不符合定义的输入或操作 您无权登录本系统 其他错误信息

第五章 详细设计

5.1系统用例图

图5.1 系统用例图

5.2子系统用例图

图 5.2 前台用例图

图 5.3 后台用例图

5.3商品销售时序图

图5.4 商品销售时序图

第六章 软件测试

6.1测试概要 6.1.1子功能分解

管理员权限:

表6.1 子功能分解表 信息浏览 进货表 库存表 销售表 用户表 利润表 进货单

信息查询 进货信息 库存信息 销售信息 用户信息 进货单 信息修改 进货信息 库存信息 销售信息 用户信息 进货单 信息新增 新品信息 进货信息 用户信息 统计 销售总额 销售员权限: 售货、收银。

6.1.2测试内容

功能测试:按照功能表对系统的信息修改、查询、浏览、新增功能进行一步一步地测试,测试的主要目的是发现实现和预期出现不符合的部分。在发现不符的情况下,按照序号记录发生的问题,问题的概要,发生的条件和推断导致问题的原因。最后,将子系统统和在一起进行测设,同样记录问题。在整合完毕后将所得的信息生成报告书,存留备份。

时间测试:测试每步操作及实现其功能所需要的时间。需要重复进行,确保由于时间延误导致的失败尽可能少。假如时间延误达到一定阀值,将其作为一个错误记录下来。

数据库安全测试:测试对数据库删除,写入,修改的操作,并根据客户对数据库权限的要求,测试操作人员的权限度,进一步测试系统安全性与稳定性。确保系统的安全机制不出现问题。

错误测试:由于错误输入发生的不可避免性质,需要特别强化错误信息的输入。在此,可以将两个子系统作为互相独立的部分来进行,具体测试举例在下文将会有所提及。

在此还要思考的问题是如果错误输入导致的破坏是不可避免的,应该如何去改进或者怎么去尽量提醒用户不要出现错误的输入。

6.2 测试用例

浏览功能测试:选择浏览库存信息(在表中信息所有商品库存信息)。 查询功能测试:输入正确的商品号1001(信息对应的商品信息)。 输入错误的商品编号:10100(对不起!没有您要查找的商

品编号)。

修改功能测试:在库存表中修改商品编号为1001的售价为12(下次销售此

商品时,显示的售价为12)。

新增功能测试:添加商品编号为10028的商品信息(库存表中能查到改商品

的信息)。

添加商品编号为1001的商品信息(对不起!该商品信息已经存在,无需再添加!)。

管理员身份: 输入正确的用户名和密码,如:用户名123,密码123(进入

系统主菜单界面)。

输入错误的用户名或密码,如:用户名1001,密码:123456

(用户名或密码输入错误)。

连续三次错误输入(对不起!您无权登录本系统!自动退出)。 输入正确的销售员的用户名和密码,如:用户名1001,密码

123123(用户名或密码错误)。

销售员身份:验证同上。

6.3 系统实现

1、系统登录界面

2、系统主菜单界面

3、商品信息销售界面

4、商品交易界面

5、新增商品信息界面

6、用户密码修改界面

7、销售表销售总额的统计

8、浏览进货单

第七章 使用说明

7.1系统总结

和传统管理模式相比较,使用本系统,毫无疑问会大大提高超市的运作效率,辅助提高超市的决策水平、管理水平,为降低经营成本,提高效益,减少差错,节省人力,减少顾客购物时间,增加客流量,提高顾客满意度,增强超市扩张能力, 提供有效的技术保障。由于开发者能力有限,本系统难免会出现一些不足之处,例如:本系统只适合小型超市使用,不能适合中大型超市使用;本系统不能生产统计报表,不支持条形编码扫描器,不能打印凭条。不能自动生产进货报表。对错误信息的检索不过全面。

7.2操作说明

本系统操作简单,使用方便。除选择操作外,均可按回车键来完成。系统管理员登录系统的初始编号为123,密码为123。销售员初始化编号为1001,密码为123123。初次使用本系统时,首先用鼠标选择登录身份(默认为管理员身份),输入编号后回车光标自动跳至密码输入框,密码输入完成后可直接回车进入系统,也可用鼠标点击“登录”按钮进入本系统。可在登录界面直接点击“修改密码”,进入用户密码修改界面修改用户密码。

如果以管理员身份登录,则可进入本系统的主菜单界面,实现对销售信息、商品库存信息、用户信息、进货信息以及进货单的浏览、修改、查询以及对销售信息表的销售金额的统计及对表的清空,还可实现对新品信息的录入和进货信息的录入,以及售货和收银,用鼠标选择相应的操作点击进入即可。如:

选择销售,则可实现对商品的销售过程,输入正在销售的商品编号回车,系统自动显示当前商品的商品名、售价、销售日期,光标自动跳至销售数量输入框,输入销售的数量后回车,系统自动显示销售总额,回车后系统自动清空,可继续输入下一件商品的信息。销售商品信息全部输入完毕后,点击“结账”按钮,系统自动合计销售商品的总额并显示所售商品的清单。输入收款回车,系统自动计算并显示应找给客户的零钱。

修改信息可实现批量修改,在表中直接修改需要修改的信息后,点击“更新”即可实现对所有修改的信息的更新,选择需要进行删除的信息后,点击“删除”按钮,可实现对表中信息的删除。点击“返回”则返回到主菜单,点击“退出”按钮,则可实现直接退出本系统。

查询信息实现了对销售信息、进货信息按日期的查询和库存信息按商品编号的查询。在“请输入您要查询的日期”后输入您要查找的信息的日期,如:2011-5-10或在“请输入您要查询的商品编号” 后输入您要查找的商品编号,

如:1001,回车或点击确认后,相应信息即可自动的在下面表中显示“点击“返回”则返回到主菜单,点击“退出”按钮,则可实现直接退出本系统。

新增信息实现了对新品信息的录入和对进货商品信息的录入以及新增用户信息的录入。选择新增新品信息,进入新品信息录入界面后,根据文本框前面相应的信息提示,正确的输入相关信息后回车或点击“确认”即可完成对新品信息的录入,库存表中会自动添加输入的新商品的商品编号、商品名、库存量、售价等信息。在选择新增进货信息,按提示完成输入回车,即可实现对进货信息的增加,库存表中相应商品的库存量也会自动增加该商品此次的进货量。

如果登录身份选择的是销售员,则只能实现对商品的销售管理以及收银操作,无法实现对各类信息的查询、浏览、修改和新增。销售管理及收银操作同管理员身份登录实现一样,只是此时返回(主菜单)操作不可用。

点击统计进入对销售表中销售金额的统计界面。点击界面上的“统计”按钮,这可快速实现对销售表中销售金额的统计,并在文本框中输入统计数。点击“清空”按钮,则可快速实现对销售表中信息的清空操作。

当输入的信息不合定义或溢出,没有相应的错误信息处理,而是系统崩溃是,只需关闭系统,重新启动即可。当输入编号或密码错误累计达到三次,系统自动退出后,如果用户找回了自己的密码或编号,只需重新启动改系统,输入正确的编号和密码则可进入该系统,访问其数据库信息。

心得体会

我觉得课程设计是最能体现大学所学知识的时候。我给我自己的评价是我并没有好好的把握在大学的时光,有好多知识我只是学了个一知半解,并没有深入地学,或许在学的时候也就是为了应付考试吧!于是到了需要用的时候,才知道自己学的不够彻底,要用自己的所学去完成自己的一个设计是有很大的困难的。如果在要用的时候你因为知识的不能应用而放弃了自己的计划,这就是你对学习这门知识的第二次失败,我想你是很难有第三次的勇气再去学习这门知识的。

我说这些也就是要告诉大家我在设计时所学到的吧。所谓“书到用时方恨少”,我很佩服我们的老祖宗很久以前就有了这样的结论。但“万事开头难”,只要你狠下一股劲,持之以恒,你就肯定能有很大的收获。虽然不能说“人有多大胆,地有多大产”,但是我相信只要我们能始终如一地朝着我们的目标前进,总有一天我们会实现我们的愿望!

通过这段时间的课程设计,学到了很多东西,不仅把以前所学的很多知识充分利用上了,还要我学会使用了两种数据库开发软件(Visual Basic和SQL SERVER),初步了解了Visual Basic强大的数据库开发能力,对Visual Basic开发语言上有了进一步的了解,我们体会到了软件开发不仅是编程,它需要方方面面的考虑,同时也必须具备比较全面的知识。就像我们生活中的第一件事都需要有始有终,认真对待。

我们在设计过程中也见到了许多困难,在指导老师和同学的帮助下,我们通过了自己的努力,完成了设计,不但培养了我们细心和耐性,树立了一种科学的态度。这对我们以后的工作和学习有了很大的帮助和指导。同时我们也认识到本身不存在很多不足的地方,还需要不断的努力 来充实自己完善自己,只有这样我们才能学无止境,以求得更大的发展。

致 谢

经过这段时间的学习、实践,我获得了许多课堂外的知识,并深刻的体会到实践是检验真理的唯一标准,只有理论与实践相结合,才能更好的掌握书本知识,学到更多更深的课外知识。感谢唐玄老师对我热心的指导和帮助,是他教会了我如何去寻找解决问题的方案,是他教导我设计时要有思维严密,是他传个了我一枚开启设计系统的钥匙。同时还要感谢同学们给予的帮助和启示,是你们给了我

灵感,是你们给你我希望。衷心的祝福你们,感谢你们的帮助,谢谢!

参考文献

[1] 易 钢,刘少华,邓艳松.新编Visual Basic程序设计教程.长沙:国防科

技大学出版社,2009年8月第一版.

[2] 王 珊,萨师煊.数据库系统概念.北京:高等教育出版社,2009年5月第

四版.

[3] 陶宏才编.数据库原理及设计.北京:清华大学出版社. [4] 范立南编.SQL Server 2000 实用教程.北京:清华大学出版社. [5] 李香敏编.SQL Server 2000 编程员指南.北京:希望电子出版社. [6] Watts S.Humphrey编.软件工程规范.北京:清华大学出版社. [7] Swapna Kishore编.软件需求分析.机械工业出版社.

附 录

登录实现代码:

Private Sub Command1_Click() If Combo1.Text = \"\" Then

MsgBox \"请选择登录身份!\ Combo1.SetFocus Exit Sub End If

If Combo1.Text = \"销售员\" Then Adodc1.Recordset.MoveFirst

Adodc1.Recordset.Find \"用户编号='\" & Text1.Text & \" '\" SQL = \"SELECT 用户编号 FROM 用户表 WHERE 用户编号 LIKE Text1.Text\"

Adodc1.RecordSource = SQL Static i As Integer

If Adodc1.Recordset.EOF And i < 3 Then

MsgBox \"用户编号错误,请重新输入!\提示信息\" i = i + 1 Text1.Text = \"\" Text1.SetFocus Exit Sub End If

Adodc1.Recordset.MoveFirst

Adodc1.Recordset.Find \"密码='\" & Text2.Text & \" '\"

SQL = \"SELECT 密码 FROM 用户表 WHERE 用户编号 LIKE Text1.Text\" Adodc1.RecordSource = SQL

If Adodc1.Recordset.EOF And i < 3 Then

MsgBox \"密码错误,请重新输入!\提示信息\" i = i + 1 Text2.Text = \"\" Text2.SetFocus Exit Sub End If If i = 3 Then

MsgBox \"请不起,您无权登录本系统!\提示信息\" End Exit Sub End If

Mycon.ConnectionString Mycon.Open Form7.Show

Form7.Text1.SetFocus

Form7.Command1.Enabled = False Form1.Hide Text1.Text = \"\" Text2.Text = \"\" Exit Sub End If

If Combo1.Text = \"管理员\" Then

If Text1.Text = \"123\" And Text2.Text = \"123\" Then Mycon.ConnectionString Mycon.Open Form2.Show Form1.Hide Text1.Text = \"\" Text2.Text = \"\" Exit Sub End If Else

MsgBox \"用户编号或密码错误,请重新输入!\提示信息\" i = i + 1 Text1.Text = \"\" Text2.Text = \"\" Text1.SetFocus If i = 3 Then

MsgBox \"请不起,您无权登录本系统!\提示信息\"

=

\"Driver={SQL

Server};Server=20100701-1006;Database=小型超市管理系统\"

=

\"Driver={SQL

Server};Server=20100701-1006;Database=小型超市管理系统\"

If KeyCode = 13 Then End End If End If End If End Sub

新增信息实现代码:

Private Sub Command2_Click() If Text1.Text = \"\" Then

MsgBox \"请输入商品编号!\ Text1.SetFocus Exit Sub End If

If Text5.Text = \"\" Then

MsgBox \"请输入进价!\ Text5.SetFocus Exit Sub End If

If Text6.Text = \"\" Then

MsgBox \"请输入售价!\ Text6.SetFocus Exit Sub End If

Adodc1.Recordset.MoveFirst

Adodc1.Recordset.Find \"商品编号='\" & Text1.Text & \" '\"

SQL = \"SELECT 商品编号 FROM 库存表 WHERE 商品编号 LIKE Text1.Text\" Adodc1.RecordSource = SQL If Adodc1.Recordset.EOF Then Adodc1.Recordset.AddNew

Adodc1.Recordset.Fields(0) = Trim$(Text1.Text) Adodc1.Recordset.Fields(1) = Trim$(Text2.Text) Adodc1.Recordset.Fields(2) = Trim$(Text3.Text) Adodc1.Recordset.Fields(3) = Trim$(Text5.Text) Adodc1.Recordset.Fields(4) = Trim$(Text6.Text)

Adodc1.Recordset.Update Exit Sub End If

Dim str As String

str = \"INSERT INTO 进货表 VALUES('\" & Text1.Text & \"','\" & Text2.Text & \"','\" & Text3.Text & \"','\" & Text4.Text & \"','\" & Text7.Text & \"','\" & Text5.Text & \"','\" & Text6.Text & \"' )\" On Error GoTo errhandle Mycon.BeginTrans Mycon.Execute (str) Mycon.CommitTrans

MsgBox \"进货信息添加成功!\ Exit Sub errhandle:

MsgBox \"进货信息添加失败!\ Mycon.RollbackTrans End Sub

商品销售实现代码:

Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer) If KeyCode = 13 Then

Adodc2.Recordset.MoveFirst

Adodc2.Recordset.Find \"商品编号='\" & Text1.Text & \" '\" SQL2 = \"SELECT 商品编号 FROM 库存表 WHERE 商品编号 LIKE Text1.Text\"

If Adodc2.Recordset.EOF Then

MsgBox \"请不起,暂时还没有您要查找的信息!\32, \"提示信息\" Exit Sub End If

Text2.Text = Adodc2.Recordset(\"商品名\") Text7.Text = Adodc2.Recordset(\"进价\") Text5.Text = Adodc2.Recordset(\"售价\") Text4.Text = DateTime.Date Text11.Text = DateTime.Time Text3.SetFocus

End If End Sub

Private Sub Text3_KeyUp(KeyCode As Integer, Shift As Integer) If KeyCode = 13 Then If Text3.Text = \"\" Then

MsgBox \"请输入销售数量!\ Text3.SetFocus Exit Sub End If

Text6.Text = Text3.Text * Text5.Text Text6.SetFocus End If End Sub

Private Sub Text6_KeyUp(KeyCode As Integer, Shift As Integer) If KeyCode = 13 Then

If Text1.Text = \"\" Then

MsgBox \"请输入商品编名!\ Text1.SetFocus Exit Sub End If

Text8.Text = Trim$(Text6.Text - (Text7.Text * Text3.Text)) Adodc1.Recordset.MoveFirst

Adodc1.Recordset.Find \"商品编号='\" & Text1.Text & \" '\" SQL = \"SELECT 商品编号 FROM 库存表 WHERE 商品编号 LIKE Text1.Text\"

Adodc1.RecordSource = SQL

Text9.Text = Adodc1.Recordset(\"库存量\")

If (Text9.Text - Text3.Text < 10) Then

MsgBox \"您好!本商品库存不足,请及时进货!\32, \"提示信息\" End If

Adodc1.Recordset(\"库存量\") = Trim$(Text9.Text - Text3.Text) Text13.Text = Val(Text13.Text) + Val(Text6.Text)

Adodc1.Recordset.Update Dim str As String

str = \"INSERT INTO 销售表 VALUES('\" & Text1.Text & \"','\" & Text2.Text & \"','\" & Text4.Text & \"','\" & Text11.Text & \"','\" & Text3.Text & \"','\" & Text5.Text & \"' ,'\" & Text6.Text & \"')\" On Error GoTo errhandle Mycon.BeginTrans Mycon.Execute (str) Mycon.CommitTrans Dim str1 As String

str1 = \"INSERT INTO 临时表 VALUES('\" & Text1.Text & \"','\" & Text2.Text & \"','\" & Text3.Text & \"','\" & Text5.Text & \"' ,'\" & Text6.Text & \"')\"

On Error GoTo errhandle Mycon.BeginTrans Mycon.Execute (str1) Mycon.CommitTrans

str = \"INSERT INTO 利润表 VALUES('\" & Text1.Text & \"','\" & Text2.Text & \"','\" & Text3.Text & \"','\" & Text4.Text & \"','\" & Text11.Text & \"','\" & Text8.Text & \"')\" Mycon.BeginTrans Mycon.Execute (str) Mycon.CommitTrans

MsgBox \"销售信息添加成功!\ Text1.SetFocus Exit Sub errhandle:

MsgBox \"销售信息添加失败!\ Mycon.RollbackTrans End If End Sub

因篇幅问题不能全部显示,请点此查看更多更全内容

Top