VFP超市商品管理系统Word格式文档下载.docx
- 文档编号:22351434
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:27
- 大小:458.66KB
VFP超市商品管理系统Word格式文档下载.docx
《VFP超市商品管理系统Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《VFP超市商品管理系统Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。
(2)需要输入的进货信息
包括商品编号、进货数量、进货单价、经手人、供货单位、说明等内容。
(3)需要输入的出货信息
包括商品编号、出货数量、出货单价、经手人、接收人、说明等内容。
(4)需要输入的进货记录信息
包括商品编号、商品名称、商品类别、经手人、供货单位等内容。
(5)需要输入的出货记录信息
包括商品编号、商品名称、商品类别、经手人、接收人等内容。
(6)需要输入的库存记录信息
包括商品编号、商品名称、商品类别等内容。
2、具有信息存储功能[2]
能够存储商品信息、进货记录信息、出货记录信息、库存记录信息等数据。
3、具有浏览功能
用户可以浏览商品信息、出货记录、进货记录、库存记录信息等。
4、具有查询功能
查询功能包括两种查询。
(1)在商品信息管理表中的查询,用户可以按商品编号、商品名称、商品产地、商品类别等查询商品。
(2)在进货、库存、出货记录表中的查询,用户可以按商品编号、名称、类别等多种方法查询。
5、具有报表打印功能[2]
用户可以根据需要打印有关数据。
6、具有数据维护功能
对已输入的各项数据(如:
“商品信息”、“进货信息”、“库存信息”等数据)可由用户添加、删除、修改等操作。
2.2可行性分析
任何事物都有它的美妙之处,换句话说,任何事物都会展现其它事物所没有的一面。
同样,商品也不例外,随着生活水平的不断提高,人们对商品的质量越来越重视。
商品行业作为一个特殊的行业,它的好坏直接对人民生活和社会稳定起着重要的作用,传统的经营方式和管理模式已经越来越不适应现代商品企业管理的需要。
现代商品经营企业要想对外获取竞争信息,对内掌握营销情况、控制经营成本,离不开有效的管理信息系统。
在这里,我所设计的超市商品管理系统的特点如下:
1、实用性
系统的设计将确实体现出现代商品的特点和业务需求,本软件提供完整的进货、销售、库存等功能。
同时,也有利于客户方便查看、分析。
2、可靠性
可靠性是一个完整系统所必备的条件之一。
一个没有可靠性的软件是没有任何实用价值的。
本系统从以下几点考虑系统的可靠性:
(1)完善的测试机制。
(2)编程完全按软件开发规范的要求进行。
(3)完备的系统安全设计。
3、可节约性
利用本系统可以更方便地查看日前的销售情况。
这样便于分析下一步客户所要做的事。
既少花时间、又少花钱,采用分步实施、分阶段投入的方法,追求尽可能高的性能价格比。
2.3目标分析
面对超市商品行业的高速发展和商品企业信息化发展过程中出现的各种情况,商
品企业管理系统实施后,应能够达到以下目标:
(1)业务管理信息化,可随时掌握商品的购销情况。
(2)提高快速准确的处理商品进、销、存等多种业务模式。
(3)系统界面友好美观,操作简单易行,查询灵活方便,数据存储安全可靠。
(4)通过系统的实施,可逐步提高企业管理水平、提升员工的素质,系统维护方便、可靠,有较高的安全性,满足实用性、先进性的要求。
2.4数据流程图
数据流程图是逻辑系统的图形表示,能够使非计算机专业人员也非常容易理解,它是一种极好的系统构造的表示方法,本系统的数据流程图如图2.4所示,它基本上反映出了整个系统的逻辑功能[3]。
图2.4商品管理系统的数据流程图
3系统设计
3.1系统功能设计
本实例中创建“超市商品管理系统”的主要目的是实现对商品信息的管理[4],所以必然会涉及到商品的进货、出货等操作,因此在系统中需要添加以下四大功能。
其中各个功能如下:
1、信息管理
商品信息管理:
用来管理系统中要用来进行进货、出货操作的商品信息,包括添加、修改、删除和查询信息等功能。
2、日常操作
商品进货操作:
用来完成商品的进货操作。
商品出货操作:
用来完成商品的出货操作。
3、信息查询[5]
库存信息查询:
用来查询库存商品的信息,可以按照商品编号、商品名称和商品类别来查询,还可以将查询结果打印输出。
进货信息查询:
用来查询商品的进货记录,可以按照商品编号、商品名称、商品类别、经手人和进货日期查询,还可以将查询结果打印输出。
出货信息查询:
用来查询商品的出货记录,可以按照商品编号、商品名称、商品类别、经手人和出货日期查询,还可以将查询结果打印输出。
4、系统管理[6]
系统登录:
用来验证登录的系统用户的合法性,只有合法的系统用户才能登录系统并且使用系统功能。
修改密码:
用来修改登录系统用户的密码,长时间的使用一个密码可能会使密码不安全,导致整个系统的不安全,因此有必要定期更新密码。
关于系统:
用来显示程序的名称、版本、版权,操作系统的登录用户名及系统的可用资源等信息。
具体的功能模块如图3.1所示:
图3.1系统功能模块图
3.2系统数据库设计
数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率及其实现的效果产生影响[7]。
合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。
设计数据库系统应该先充分了解用户各个方面的需求,包括现有的及将来可能增加的需求。
数据库设计一般包括如下几个步骤。
1、数据库需求分析
用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。
收集基本数据、数据结构及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。
通过上述系统功能设计,针对一般客户管理信息系统的需求,总结出如下的需求信息:
(1)进货信息中要包含商品信息。
(2)出货信息中要包含商品信息。
(3)库存信息中要包含商品信息。
(4)商品信息中要包含唯一值的字段。
经过上述系统功能设计和需求总结,考虑到将来功能上的扩展,设计如下所示的数据项和数据结构:
(1)商品信息:
包含商品编号、商品名称、商品单位、商品单价、类别、产地及说明等。
(2)进货信息:
包含进货编号、商品编号、进货单价、进货数量、进货时间、经手人、供货单位等。
(3)出货信息:
包含出货编号、商品编号、出货单价、出货数量、出货编号、经手人、接手人及说明等。
(4)库存信息:
包含商品编号、库存量和说明等。
(5)系统设置:
包含商品类别等。
(6)用户信息:
包含用户名、密码等。
在上面的需求分析、数据结构设计的基础上,下面可以开始数据库概念结构设计了。
2、数据库概念结构设计
得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。
这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。
(1)超市商品管理的数据库的创建
“超市商品管理系统”数据库“商品数据库”包含:
“用户信息”表、“进货信息”表、“出货信息”表、“库存信息”表、“商品信息”表、“系统设置”表六个表,其中,“进货信息”,“出货信息”,“库存信息”,“商品信息”这四个表是一对一的关系。
具体对应关系如图3.2(a)所示:
图3.2(a)数据库内表关系图
(3)超市商品管理的总E-R图如图3.2(b)所示:
图3.2(b)总实体E-R图
3、数据库逻辑结构设计
数据库的概念结构设计完毕以后,现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。
使用VisualFoxPro6.0开发时可以直接使用VisualFoxPro6.0自带的数据库,本系统中使用的各个数据表的字段设置如下:
“商品信息”表的字段设置如表3-1所示:
表3-1“商品信息”表
字段名
类型
宽度
可否为空
默认值
说明
商品编号
字符型
6
否
主索引字段
条形码
14
可
商品名称
40
商品单位
商品单价
浮动型
1位小数
产地
类别
20
说明
备注型
4
“进货信息”表的字段设置如表3-2所示:
表3-2“进货信息”表
进货编号
10
普通索引字段
进货数量
8
进货单价
进货时间
日期时间型
供货单位
经手人
“用户信息”表的字段设置如表3-3所示:
表3-3“用户信息”表
用户名
密码
“系统设置”表的字段设置如表3-4所示:
表3-4“系统设置”表
商品类别
“出货信息”表的字段设置如表3-5所示:
表3-5“出货信息”表
出货编号
出货数量
出货单价
出货时间
接手人
“库存信息”表的字段设置如表3-6所示:
表3-6“库存信息”表
库存数量
4系统实现
4.1软件开发工具与运行环境
本系统是采用VisualFoxPro6.0制作的,是当今比较流行的可视化工具,它不像VisualBasic6.0一样需要借助其它的数据库来完成某个软件开发。
它有自带的数据库,不仅可以简化数据库管理,而且能使应用程序的开发流程更为合理。
VisualFoxPro6.0使组织数据、定义数据库规则和建立应用程序等工作变得简单易行。
利用可视化的设计工具和向导,用户可以快速创建表单和打印报表等。
VisualFoxPro6.0还提供了一个集成化的系统开发环境。
它不仅支持过程式编程技术,而且在语言方面作了强大的扩充,支持面向对象可视化编程技术,并拥有功能强大的可视化程序设计工具。
目前,VisualFoxPro6.0是用户收集信息、查询数据、创建集成数据库系统,进行实用系统开发较为理想的工具软件[8]。
此系统运行范围非常广泛,对于一般的操作系统它都可以运行,比如:
Windows98、Windows2000、WindowsXP等操作系统。
4.2系统功能模块的实现
1、系统首页功能的实现
系统主页表单用来显示本系统的设计者,主要功能就是调用本系统的登录表单,它由主程序启动,当用户单击“进入”按钮后,将打开系统登录表单,当用户单击“取消”按钮时,系统就会退出VisualFoxpro6.0表单。
运行结果如图4.1所示:
图4.1系统首页表单
在运行时我们可以看见一些特殊的效果,如:
“欢迎使用”可以向右慢慢移动。
我们只要在表单中加一时钟,并在时钟的timer事件中编如下代码:
ifthisform.label4.left=thisform.width
thisform.label4.left=0
else
thisform.label4.left=thisform.label4.left+1
endif
我们还可以看见大标题“超市商品管理系统”在不断的闪不同的颜色,这只要在时钟的timer事件中编如下代码:
i=int(rand()*255)
j=int(rand()*255)
k=int(rand()*255)
thisform.label1.forecolor=rgb(i,j,k)
如点击“进入”则只需在表单的“进入”按钮的“click”事件中编如下代码:
doformlogon
2、系统登录功能的实现
每个系统都有自己的用户名和密码,以防他人偷窥。
同样本系统主要是为用户的方便管理,如查看月收入、月支出等。
所以本系统也有它的专用密码。
只有拥有此密码的用户才有权去观赏此系统。
此登录表单的运行结果如图4.2所示:
图4.2系统登录界面
3、系统主界面功能的实现
主表单的作用如下:
(1)作为程序主窗口。
(2)装载主菜单。
(3)装载状态栏。
具体窗口运行结果如图4.3所示:
图4.3系统主界面
在这里,每个功能模块上的图片都能不断变化,因为它们都是用flash制作的。
只要当用户输入正确的户名和密码时,点击“确定”按钮就会调用此表单。
语句为:
doform主程序.scx
4、商品信息管理功能的实现
商品信息管理功能主要实现商品编辑、查询等功能。
运行结果如图4.4所示:
图4.4商品信息管理表单
在此表单中,使用了2个自定义表单属性“oldrecord”和“formmode”:
(1)“oldrecord”属性:
初始值为0,用来保存表单状态改变之前,“商品信息”表
中的记录指针的位置。
(2)“formmode”属性:
初始值为.F.,用来标记表单中记录的修改情况。
另外还自定义2个表单方法“checkempty”和“setmode”:
(1)“checkempty”方法:
用来检测“商品信息”表是否为空,以及该表中的记录指
针的位置,并根据情况对表单的控件属性做出相应的操作。
(2)“setmode”方法:
根据自定义属性“formmode”的值来设置表单中控件的属性。
调用此表单的语句当然也不例外:
doformproadmin
5、商品信息查询功能的实现
从商品信息管理表单中看出我们可以对商品进行浏览、查询、修改等,当我们点击“查询”按钮时,弹出一对话框,在这里我们可以按多种字段进行查询商品。
具体运行结果如图4.5所示:
图4.5商品信息查询表单
6、商品进货功能的实现
“超市商品管理系统”中的日常操作模块包括“商品进货操作”和“商品出货操作”功能,分别由“商品进货操作”“商品出货操作”表单来完成。
但进货操作和出货操作过程基本相同,在这里我们只介绍“商品进货操作”过程。
“商品进货操作”表单主要用来进行商品进货操作,其具体的运行结果如图4.6所示:
图4.6商品进货操作表单
在这里,我们需要创建autoadd函数,因为“超市商品管理系统”的“进货信息”表中的“进货编号”定为一个10位的编号,其中前6位由当前系统日期的“年”“月”“日”各2位数字组成,后4位从“0001”开始递增。
“autoadd”函数的作用是将类似于“00000XX”形式的字符串递增。
实现此过程的具体代码如下:
*---作用:
使“00000XX”形式的编号自动加1
FUNCTIONAUTOADD(NCODE)
*---获取字符串长度
nlen=nlen(ncode)
*---将字符型转换为数值型,即获取非0部分的数值
ncode=val(ncode)
*---非0部分数字加1
ncode=ncode+1
*---转换为字符型
ncode=alltrim(str(ncode))
*---获取转换后的字符串的长度
nlength=len(ncode)
*---在数字之前加上前置“0”
nzero=“0000000000”
ncode=substr(nzero,1,nlen-nlength)+ncode
returnncode
endfunc
7、进货信息查询功能的实现
“超市商品管理系统”中的信息查询模块由“进货信息查询”、“出货信息查询”、“库存信息查询”3个功能组成,分别由“进货记录查询”、“出货记录查询”、“库存记录查询”3个表单完成。
因为它们3个的过程基本相同,所以我们这里只介绍“进货信息查询”表的实现过程。
“进货信息查询”表单用来在“进货信息”表中查询进货记录,由于在“进货信息”表中所含的信息太少,所以使用“进货信息”和“商品信息”表创建了“inview”视图作为查询对象。
具体运行结果如图4.7所示:
图4.7进货信息查询
在这里要注意的是“进货信息查询”表单在初始化时设定声明一个全局变量来保存查询条件,并且将该全局变量赋初值,然后选择“inview”视图所在的工作区,清除其中可能存在的过滤条件,最后刷新表单。
即此表单的“init”事件代码如下:
*——声明全局变量保存查询条件
PUBLICSearchFilter
*——初始值为“.T.”
SearchFilter=“.T.”
*——清除“InView”视图中可能存在的过滤条件
SELECTInView
SETFILTERTO
THISFORM.Refresh
4.3“About”窗口功能的实现
以上所说的窗口都是用控件创建的,而这里,我们用函数来创建的窗口如图4.8所示[9]:
图4.8“关于“窗口
具体代码如下:
*——声明本地变量
LOCALhwnd,szApp,szOtherStuff,hIcon,lpsz
*——定义常量
#DEFINEIMAGE_ICON1
#DEFINELR_LOADFROMFILE0x0010
*——声明API函数
DECLARELongGetActiveWindowINWin32API
DECLAREIntegerShellAboutINShell32;
Integerhwnd,;
StringszApp,;
StringszOtherStuff,;
IntegerhIcon
*——声明常量
DECLARELongLoadImageINUser32;
LonghInst,;
Stringlpsz,;
Longun1,;
Longn1,;
Longn2,;
Longun2
*——获取当前窗口句柄
hwnd=GetActiveWindow()
*——定义要载入的图标
lpsz=“icon.ico”
*——载入图标
hIcon=LoadImage(0,lpsz,IMAGE_ICON,0,0,LR_LOADFROMFILE)
IFhIcon=0
=MESSAGEBOX(“LoadImage函数执行错误!
”)
RETURN
ENDIF
*——定义程序名称
szApp=“关于#超市商品管理系统”
szOtherStuff=“系统版本:
1.0”+CHR(13)+“版权所有:
李丽”
*——显示“关于”对话框
nResult=ShellAbout(hwnd,szApp,szOtherStuff,hIcon)
IFnResult=0
=MESSAGEBOX(“无法打开关于对话框”)
4.4系统主程序设置
系统主程序是数据库应用系统的总控部分,是系统首先要执行的程序。
它是最高一级的程序,具体用来设计全局变量,系统标题,系统目标,调用“系统主页”表单。
具体在“超市商品管理系统”中使用.prg程序作为系统的主程序,其主要功能包括:
(1)系统环境设置
(2)声明全局变量
(3)调用主页表单
(4)进入事物处理
本实例的主程序代码如下:
*----设置系统环境
clear
clearall
setcentury
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VFP 超市 商品 管理 系统