VFP仓库管理系统课程设计详细报告.docx
- 文档编号:26928427
- 上传时间:2023-06-24
- 格式:DOCX
- 页数:38
- 大小:306.28KB
VFP仓库管理系统课程设计详细报告.docx
《VFP仓库管理系统课程设计详细报告.docx》由会员分享,可在线阅读,更多相关《VFP仓库管理系统课程设计详细报告.docx(38页珍藏版)》请在冰豆网上搜索。
VFP仓库管理系统课程设计详细报告
合肥师范学院
(专科)
课程设计
题目
姓名
学号
专业班级
指导教师
完成日期
仓库管理系统
摘要:
“仓库管理系统”是采用VISAULFOXPRO开发的一个数据库管理系统。
开发本系统的步骤:
系统分析、系统设计、系统实现、系统维护。
在系统分析中先后用数据流图、系统的功能结构图分析了系统所需的各种数据.
关键词:
仓库管理仓库管理系统VISAULFOXPRO面向对象
第1章引言
企业的物资供应管理往往是很复杂的,烦琐的.由于所掌握的物资种类众多,订货,管理,发放的渠道各有差异,各个企业之间的管理体制不尽相同,各类统计计划报表繁多,因此物资管理必须实现计算机化,而且必须根据企业的具体情况制定相应的方案.仓库管理部门是企业中的一个重要部门,每天都有大量的业务在这里产生。
对于一个现代化的企业来说,如何把仓库部门每天发生的业务如实的记录下来,保证仓库有条理地进行,同时确保相关数据的安全,信息处理的高效,并保证系统的实用性强,这是要本系统设计实现的基本要求,并要求在每一步骤的设计过程中都能生动清晰地有所体现。
第2章需求分析
2.1系统概述
管理信息系统是一个利用计算机软硬件资源,手工作业,分析、计划、控制和决策模型以及数据库的人-机系统。
它能提供信息支持企业或组织的运行、管理和决策功能。
2.2运行环境
处理器:
IntelPentium166mx或更高
内存:
32MB以上
硬盘空间:
1GB以上
显卡:
SVGA显示适配器
2。
3功能需求描述
●仓库管理各种信息的输入,包括入库、出库、还库、需求信息的输入等.
●仓库管理各种信息的查询、修改和维护。
●设备采购报表的生成。
●在库存管理中加入最高储备和最低储备字段,对仓库中的物资设备实现监控和报警.
●企业各个部门的物资需求的管理。
●操作日志的管理。
●仓库管理的使用帮助。
第3章总体设计
3。
1系统设计
1。
系统目标设计
系统开发的总体任务是实现企业物资设备管理的系统化,规范化和自动化,从而达到提高企业物资管理的效率的目的。
2。
开发设计思想
仓库管理的特点是信息处理量比较大。
所管理的物资设备种类繁多,而且由于入库单,出库单,需求单等单据发生量特别大,关联信息多,查询和统计的方式各不相同。
因此在管理上实现起来有一定的困难。
在管理的过程中经常会出现信息的重复传递,单据,报表种类繁多,各个部门管理规格不统一等问题.
在本系统的设计过程中,为了克服以上困难,满足计算机管理的需要,我们采取了下面的一些原则:
●统一各种原始的单据的格式,统一帐目和报表的格式。
●删除不必要的管理冗余,实现管理规范化、科学化.
●程序代码标准化,软件统一化,确认软件的可维护行和实用性。
●界面尽量简单化,做到实用、方便,尽量满足企业中不同层次员工的需要.
●建立操作日志,系统自动记录所进行的各种操作.
3.2系统模块结构图
3。
3模块设计
按照前面的分析,我们将管理系统的逻辑模块统一到6个实际功能模块中,如图所示.切换面板用于切换不同的操作,每项具体操作结束后,都会返回到切换面板.
下面对各模块的作用进行说明:
1.设备入库模块:
添加设备到库存中。
2.设备出库模块:
将设备从库存取出并记录.
3.设备还库模块:
将归并到库存的设备保存到数据库。
4.设备需求模块:
记录各部门的设备需求。
5.设备采购模块:
记录要采购的设备.
6.切换面板:
用于切换到不同的操作,如设备入库、设备出库等。
7.显示报表:
显示库存过多、库存不足等信息。
3。
4数据库设计
在仔细调查企业仓库物资设备管理过程的基础上,得到本系统所处理的时间流程如图所示:
数据流程图
在本设计中,通过对企业仓库管理的内容和数据流程分析,设计的数据项和数据结构如下:
1.设备代码信息。
包括的数据项有设备号、设备名称。
2.现有库存信息。
包括的数据项有现有设备、现有数目、总数目、最大库存、最小库存等。
3.设备使用信息。
包括的数据项有使用的设备、使用部门、数目、使用时间、出库时状态。
4.设备采购信息.包括的数据项有采购的设备、采购员、供应商、采购数目、采购时间等.
5.设备归还信息.包括的数据项有归还设备、归还部门、归还数目、归还时间、经手人等。
6.设备需求信息。
包括的数据项有需求的部门、需求设备、需求数目、需求时间等.
有了上面的数据结构、数据项和数据流程,就能进行下面的数据库设计。
3.4数据库概念结构设计
这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础.
本设计根据上面的设计规划出的实体有库存实体、入库实体、出库实体、采购实体、还库实体、需求实体.仓库管理系统数据库中的各个表格的设计结果如下面的几个表格所示。
每个表格表示在数据库中的一个表.
1.设备代码表:
列名
数据类型
可否为空
设备号(主键)
数值型(20)
不能为空
设备名称
字符型(50)
可为空
2.设备入库表:
列名
数据类型
可否为空
设备号
数值型(20)
不能为空
入库时间(主键)
日期型(8)
可为空
供应商
字符型(50)
可为空
供应商电话
字符型(15)
可为空
入库数量
数值型(20)
可为空
价格
字符型(10)
可为空
采购员
字符型(20)
可为空
3.设备出库表:
列名
数据类型
可否为空
设备号
数值型(20)
不能为空
出库时间(主键)
日期型(8)
可为空
使用部门
字符型(50)
可为空
出库状况
数值型(20)
可为空
经手人
字符型(20)
可为空
出库数量
数值型(10)
不能为空
领取人
字符型(50)
可为空
用途
字符型(50)
可为空
4.现有库存表:
列名
数据类型
可否为空
设备号(主键)
数值型(20)
不能为空
现有库存
数值型(20)
可为空
最大库存
数值型(20)
可为空
最小库存
数值型(20)
可为空
总数
数值型(20)
可为空
5.部门需求表:
列名
数据类型
可否为空
设备号(主键)
数值型(20)
不能为空
部门名称
字符型(20)
不能为空
需要数量
数值型(20)
可为空
需求开始时间
日期型(8)
可为空
需求结束时间
日期型(8)
可为空
6.设备还库表:
列名
数据类型
可否为空
设备号(主键)
数值型(20)
不能为空
还库时间
日期型(8)
不能为空
仓库管理员
数值型(20)
可为空
归还数量
数值型(20)
可为空
归还人
字符型(10)
可为空
7.操作日志表:
列名
数据类型
可否为空
操作员
字符型(50)
不能为空
操作内容
字符型(50)
不能为空
操作时间
日期型(8)
可为空
8.设备采购计划表:
列名
数据类型
可否为空
设备号
数值型(20)
不能为空
现有库存
数值型(20)
可为空
总库存
数值型(20)
可为空
最大库存
数值型(20)
可为空
购买数量
数值型(20)
可为空
供应商
字符型(20)
不能为空
价格
字符型(10)
可为空
计划采购时间(主键)
日期型(8)
可为空
第4章详细设计
4.1功能选择界面的设计
这一模块的主要功能是作为系统主界面为进入本系统不同功能界面选择提供一个接口,使用一个窗口来实现这一功能。
首先建立一个表单,设取“caption”属性为“仓库管理”。
在该表单上添加6个“按钮”控件,它们的“caption"属性分别为“设备入库”,“设备出库",“设备还库”,“部门需求”,“设备采购”,“显示报表”。
然后在表单上添加“图象控件",并设其“stretch"属性为“2-strech(扩展)",“pictrue”属性为图片所在的位置,本例中为“c:
\仓库管理\001.jpg"。
1.在“comm。
and1"(“caption"属性为“设备入库”)控件的“click”事件中添加如下代码:
doform设备入库表
thisform。
release
2.在“comm。
and2”(“caption”属性为“设备出库”)控件的“click"事件中添加如下代码:
doform设备出库表
thisform.release
3.在“comm.and3”(“caption"属性为“设备还库”)控件的“click"事件中添加如下代码:
doform设备还库表
thisform.release
4.在“comm.and4”(“caption”属性为“部门需求”)控件的“click”事件中添加如下代码:
doform部门需求表
thisform.release
5.在“comm。
and5"(“caption"属性为“设备采购”)控件的“click”事件中添加如下代码:
doform设备采购表
thisform.release
6.在“comm。
and6"(“caption"属性为“显示报表”)控件的“click"事件中添加如下代码:
doform显示报表
thisform。
release
7.在“form1"的属性里选择“autocenter”设置为“.T。
-真”,同时将“backcolor"设置为“255,255,255”,“windowstate"设置为“0-普通”.
8.添加“form1”的“init”事件的代码如下:
setdirectorytoc:
\仓库管理\*将程序的默认的路径指向资源所在的文件夹
4。
2设备入库模块的设计
在设备入库模块中将实现设备数据的添加和入库等功能。
本模块设计采用先用向导生成表单,然后用修改的方法实现。
首先在项目管理器的文档视图下单击“新建”按钮,在接下来的向导中,“数据库和表”选择“仓库管理”以及“设备入库表”.
值得注意的是,在结束表单向导前,可选择“保存表单以备将来使用”,“保存并运行表单”,或者“保存表单并用表单设计器修改表单”。
由于VisualFoxPro6.0向导生成的表单只具有普遍性,对于当前设计的仓库管理系统还需要一定的改变,因此以我们选择“保存表单并用表设计器修改表单"。
单击“完成"按钮系统提示保存表单,将表单保存为“设备入库表.scx”,存于c:
\仓库管理目录下。
根据功能需求,把“cmdprint”、“"cmdexit、“cmdDelete"和“cmdedit”的Visible属性都设为“。
F。
—假”。
添加2个命令按钮,Caption属性分别设为“修改库存”和“回主界面"。
在“回主界面”命令按钮的click事件中添加代码如下:
thisform.release
doform仓库管理
在修改库存命令按钮的click事件中添加代码如下:
select现有库存表
getid=thisform。
设备号1。
text1.value
setorderto设备号
seekgetid
iffound()
getnum=thisform。
入库数量1.text1。
value
update现有库存表set现有库存=(现有库存+getnum)where(设备号=getid)
else
insertinto现有库存表(设备号,现有库存,最大库存,最小库存);
value(thisform。
设备号1。
text1。
value,
thisform。
入库数量1。
text1。
value,1000,10)
endif
insertinto操作日志表(操作员,操作内容,操作时间);
values(thisform。
采购员1。
text1。
value,’设备入库’,date())
保存后运行表单.
4。
3设备出库模块的设计
在设备出库模块中将实现设备出库数据的添加和修改库存等功能.该模块的功能和设备入库的功能相似。
在表单的左上角加上了显示当前时间的功能,添加标签label2的caption属性设为“当前时间”;添加label3的caption属性设为空;为当前表单的label3init事件添加如下代码:
this。
caption=dtoc(date())
该模块具体实现过程不再一一详细说明。
下面列出了表单中所用到控件的属性值.
1.Form1控件的主要属性:
属性名称
属性值
Caption
设备出库表
Autocenter
.T.—真
BackColor
255。
255。
255
2.ButtonSet1控件的主要属性:
控件名
属性名称
属性值
cmdExit
Visible
.F。
—假
cmdDelete
Visible
。
F.—假
cmdPrint
Visible
。
F。
—假
cmdEdit
Visible
.F.—假
Command1
Caption
修改库存
Command2
Caption
回主界面
下面时设备出库表单中“修改库存”命令按钮的click事件的代码:
select现有库存表
*先在该表单的数据环境中添加现有库存表
getid=thisform.设备号1。
text1。
value
setorderto设备号
seekgetid
*在现有库存表中查找设备号等于getid的纪录
iffound()
getnum=thisform。
出库数量1。
text1。
value
update现有库存表set现有库存=(现有库存—getnum)where(设备号=getid)
*如果库存表中有该项设备,则更新库存表
insertinto操作日志表(操作员,操作内容,操作时间);
values(thisform。
领取人1。
text1。
value,’设备出库’,date())
else
messagebox("出错",1,”错误的设备号”)
endif
4。
4设备还库模块的设计
在设备还库模块中将实现设备还库数据的添加和修改库存等功能,按照前面介绍的步骤设计设备还库表.
设备还库表所可能用到的控件的属性如表所示:
1.Form1控件的主要属性:
属性名称
属性值
Caption
设备还库表
Autocenter
.T.-真
BackColor
255.255。
255
2.ButtonSet1控件的主要属性:
控件名
属性名称
属性值
cmdExit
Visible
.F.—假
cmdDelete
Visible
。
F。
—假
cmdPrint
Visible
。
F.—假
cmdEdit
Visible
。
F。
—假
Command1
Caption
修改库存
Command2
Caption
回主界面
下面是设备还库表中“修改库存”命令按钮的click事件的代码:
select现有库存表
*先在该表单的数据环境中添加现有库存表
getid=thisform。
设备号1.text1.value
setorderto设备号
seekgetid
*在现有库存表中查找设备号等于getid的纪录
iffound()
getnum=thisform。
归还数量1.text1。
value
update现有库存表set现有库存=(现有库存-getnum)where(设备号=getid)
insertinto操作日志表(操作员,操作内容,操作时间);
values(thisform.归还人1。
text1。
value,’设备还库',date())
*如果库存表中有该项设备,则更新库存表,同时更新操作日志
else
messagebox("出错",1,”错误的设备号”)
*如果没有该设备号则报告出错信息
endif
保存后运行表单。
4。
5设备需求模块的设计
在设备需求模块中将实现设备需求数据的添加和保存日志等功能。
首先通过VisualFoxpro的表单向导生成所需的设备需求表单,选择部门需求表的所有可用字段,然后为保持程序风格的一致,继续采用表单的阴影式和图片按钮的风格。
在“步骤3-排序次序"时。
选择设备号的升序排列。
最后单击“完成”按钮,把表单保存在“c:
\仓库管理\”目录下,名为“设备需求.scx”。
1.Form1控件的主要属性:
属性名称
属性值
Caption
部门需求表
Autocenter
.T。
—真
BackColor
255.255。
255
2.ButtonSet1控件的主要属性:
控件名
属性名称
属性值
cmdExit
Visible
.F.—假
cmdDelete
Visible
。
F。
—假
cmdPrint
Visible
.F.-假
cmdEdit
Visible
.F.—假
Command1
Caption
保存日志
Command2
Caption
回主界面
在表单设计器中,双击“保存日志”命令按钮。
添加click事件代码如下:
insertinto操作日志表(操作员,操作内容,操作时间)values(username,’设备需求’,date())
双击回主界面命令按钮,添加click事件代码如下:
thisform。
release
doform仓库管理
保存对表单所作的修改。
4。
6设备采购模块的设计
在设备采购模块中将实现设备采购数据的添加和保存日志等功能。
1.由数据表生成表单
通过VisualFoxpro的表单向导,生成设备采购计划表单。
在选择数据库和表时,选择仓库管理数据库和设备采购计划表.在选择字段时,选择所有可用字段,选择阴影式和图片按钮作为设备采购计划表的样式.选择计划采购时间的升序排列作为设备采购计划表的索引。
2.为窗体修改和添加命令按钮
添加2个命令按钮“保存日志”和“回主界面”。
设置表单中控件的属性。
下面的表列出了需要修改的控件的名称以及属性值。
1)Form1控件的主要属性:
属性名称
属性值
Caption
设备采购表
Autocenter
。
T。
-真
BackColor
255。
255。
255
2)ButtonSet1控件的主要属性:
控件名
属性名称
属性值
cmdExit
Visible
.F。
—假
cmdDelete
Visible
。
F。
—假
cmdPrint
Visible
.F。
-假
cmdEdit
Visible
。
F。
—假
Command1
Caption
保存日志
Command2
Caption
回主界面
3)为按钮添加click事件代码:
在表单设计器中,双击保存日志命令按钮。
添加click事件代码如下:
insertinto操作日志表(操作员,操作内容,操作时间);
values(username,"设备需求",date())
*把设备需求写入操作日志表中
双击回主界面按钮,添加click事件代码如下:
thisform.release
*释放本表单
doform仓库管理
*运行仓库管理界面
4.7显示报表模块的设计
在该模块中,一共要显示3个报表,分别提供库存不足,库存过多和操作日志等信息.
1.设计显示报表表单
在空白表单中添加一个页框控件,并按照下表设置页框的属性,同时在数据环境里添加现有库存表和操作日志表。
控件名
属性名称
属性值
Form1
Caption
显示报表
Pageframe1
Caption
3
Pageframe1。
Page1
Caption
库存不足表
Pageframe1。
Page2
Caption
库存过多表
Pageframe1。
Page3
Caption
操作日志
分别为每个page添加一个表格grid1。
设置表格控件的属性,如表所示:
grid1控件的主要属性表:
控件名
属性名称
属性值
Pageframe1。
Page1.grid1
ReadOnly
。
T。
—真
Pageframe1.Page1。
grid1
RecordSourceType
1-别名
Pageframe1。
Page1。
grid1
ColumnCount
—1
Pageframe1.Page2.grid1
ReadOnly
.T.—真
Pageframe1。
Page2。
grid1
RecordSourceType
1—别名
Pageframe1。
Page2.grid1
ColumnCount
—1
Pageframe1。
Page3.grid1
ReadOnly
。
T.-真
Pageframe1。
Page3.grid1
RecordSourceType
1—别名
Pageframe1.Page3.grid1
ColumnCount
—1
2.代码设计
定义Pageframe1。
Page1.grid1的init事件
运行“显示报表”表单,界面所图所示:
localCusts1
select设备号,最大库存,现有库存from现有库存表where(现有库存>最大库存)intocursorCusts1
thisform。
页框。
库存过多。
库存过多表。
recordsource=”Custs1"
定义Pageframe1.Page2。
grid1的init事件
localCusts2
select设备号,最小库存,现有库存from现有库存表where(现有库存〈最小库存)intocursorCusts2
thisform。
页框。
库存不足.库存不足表。
recordsource=”Custs2”
定义Pageframe1.Page3。
grid1的init事件
localCusts3
select*from操作日志表intocursorCusts3
thisform。
页框。
操作日志.操作日志表1.recordsource=”Custs3”
运行“显示报表”表单。
第5章系统的编译和发行
5。
1设置主文件
用主图标标记的文件是用户在启动。
app或者。
exe时被调用的文件。
它可以是一个表单、菜单或者程序,建议使用程序作为主文件。
5。
2构造主文件
如果主文件是一个程序,它将调用应用程序框架中的各个功能组件,然后由这些组件调用应用程序的其余部分。
如果要建立一个简单的主程序,可以按下列步骤进行。
1.现设置应用环境界面.
2.建立初始用户界面.
3.建立事件循环.
4.恢复环境,退出应用程序。
5.3在.app和。
exe文件中包含和排除文件
如果在发布的应用程序中不想再更改这些文件,可把它们放在项目中并设置为“包含”.那么这些文件变成只读的,不能修改.如果想修改这些文件,把它们放在项目中并设置为“排除”,然后作为独立文件随着应用程序一起发布.
在默认情况下,Vi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VFP 仓库 管理 系统 课程设计 详细 报告