主页
软件技术
返回
仓储物流管理系统(下)

        5.2 设备入库模块的设计

        在设备入库模块中将实现设备数据的添加和入库等功能。本模块设计采用先用向导生成表单,然后修改的方法实现。 首先在项目管理器的文档视图下单击“新建”按钮,

        

        图5-3 项目管理器

        

        图5-4

        

        图5-5

        在接下来的向导中,“数据库和表”选择“仓储管理”以及“设备入库表”,这是前面定义好的数据库和表。

        由于设备入库需要显示所有的字段,因此我们将可用字段全部移至选定字段,如图所示,单击“下一步”按钮,

        

        图5-6

        在表单样式中,选择“阴影式”以及“图片按钮”,如图所示。左上角的窗口提供了表单样式的预览功能,图片按钮和文本按钮的区别在于显示的时候是以图片来表达功能还是文字来表达,实现功能的函数没有区别。选择“上一步”按钮可以跳回上一个界面对表单中显示的字段进行修改。

        

        图5-7

        单击“下一步”按钮后,向导进行到“步骤3-排序次序”,如图所示,选择“设备号”为索引,并选择升序排列。最后预览表单,核对每项的设置,完成表单向导,如图所示。

        

        图5-8

        

        图5-9

        值得注意的是,在结束表单向导前,可选择“保存表单以备将来使用”,“保存并运行表单”,或者“保存表单并用表单设计器修改表单”。由于Visual FoxPro6.0向导生成的表单只具有普遍性,对于当前设计的仓储管理系统还需要一定的改变,因此以我们选择“保存表单并用表设计器修改表单”。

        单击“完成”按钮系统提示保存表单,将表单保存为“设备入库表.scx”,存于c:仓储管理目录下。然后打开表单修改器生成的表单,如图所示。

        在修改BUTTONSET时,可以通过属性窗口的下拉列表选定单个按钮,调整其位置和其它属性。如图所示。

        

        图 5-10

        25

        

        图 5-11

        根据功能需求,把“cmdprint”、“”cmdexit、“cmdDelete”和“cmdedit”的Visible

        属性都设为“.F.-假”。添加2个命令按钮,Caption属性分别设为“修改库存”和“回主界面”。

        ※ 在“回主界面”命令按钮的click事件中添加代码如下:

        thisform.release

        do form 仓储管理

        ※ 在修改库存命令按钮的click事件中添加代码如下:

        select 现有库存表

        getid=thisform.设备号1.text1.value

        set order to 设备号

        seek getid

        if found()

        getnum=thisform.入库数量1.text1.value

        update 现有库存表 set 现有库存=(现有库存+getnum) where (设备号=getid)

        else

        insert into 现有库存表 (设备号,现有库存,最大库存,最小库存);

        value (thisform.设备号1.text1.value,thisform.入库数量1.text1.value,1000,10)

        endif

        insert into 操作日志表(操作员,操作内容,操作时间);

        values (thisform.采购员1.text1.value,'设备入库',date())

        保存后运行表单,界面如图所示:

        

        图 5-12

        

        图5-13

        5.3 设备出库模块的设计:

        在设备出库模块中将实现设备出库数据的添加和修改库存等功能。该模块的功能和设备入库的功能相似。具体操作可以参考设备入库模块的设计,设计最终的界面如图所示。

        

        5-14 图

        在表单的左上角加上了显示当前时间的功能,添加标签label2的caption属性设为“当前时间”;添加label3的caption属性设为空;为当前表单的label3init事件添加如下代码: this.caption=dtoc(date())

        该模块具体实现过程不再一一详细说明。下面列出了表单中所用到控件的属性值。

        (1) Form1控件的主要属性: 表5-1 属性名称 属性值

        Caption 设备出库表

        Autocenter .T.-真

        BackColor 255.255.255

        (2) ButtonSet1控件的主要属性: 表5-2 控件名 属性名称 属性值

        cmdExit Visible .F.-假

        cmdDelete Visible .F.-假

        cmdPrint Visible .F.-假

        cmdEdit Visible .F.-假

        Command1 Caption 修改库存

        Command2 Caption 回主界面

        下面是设备出库表单中“修改库存”命令按钮的click事件的代码:

        select 现有库存表

        *先在该表单的数据环境中添加现有库存表

        getid=thisform.设备号1.text1.value set order to 设备号

        seek getid

        *在现有库存表中查找设备号等于getid的纪录

        if found()

        getnum=thisform.出库数量1.text1.value

        update 现有库存表;

        set 现有库存=(现有库存-getnum) where (设备号=getid)

        *如果库存表中有该项设备,则更新库存表

        insert into 操作日志表(操作员,操作内容,操作时间);

        values (thisform.领取人1.text1.value,'设备出库',date()) else

        messagebox("出错",1,"错误的设备号")

        endif

        5.4 设备还库模块的设计

        在设备还库模块中将实现设备还库数据的添加和修改库存等功能,按照前面介绍的步骤设计设备还库表。

        设备还库表所可能用到的控件的属性如表所示:

        (1)Form1控件的主要属性: 表5-3

        属性名称 属性值

        Caption 设备还库表

        Autocenter .T.-真

        BackColor 255.255.255

        (2)ButtonSet1控件的主要属性: 表5-4

        控件名 属性名称 属性值

        cmdExit Visible .F.-假

        cmdDelete Visible .F.-假

        cmdPrint Visible .F.-假

        cmdEdit Visible .F.-假

        Command1 Caption 修改库存

        Command2 Caption 回主界面

        下面是设备还库表中“修改库存”命令按钮的click事件的代码: select 现有库存表

        *先在该表单的数据环境中添加现有库存表

        getid=thisform.设备号1.text1.value set order to 设备号

        seek getid

        在现有库存表中查找设备号等于getid的纪录 *

        if found()

        getnum=thisform.归还数量1.text1.value

        update 现有库存表;

        set 现有库存=(现有库存-getnum) where (设备号=getid)

        insert into 操作日志表(操作员,操作内容,操作时间);

        values (thisform.归还人1.text1.value,'设备还库',date())

        *如果库存表中有该项设备,则更新库存表,同时更新操作日志 else

        messagebox("出错",1,"错误的设备号")

        *如果没有该设备号则报告出错信息 endif

        保存后运行表单,可得到如图所示的设备还库表。

        

        图 5-15

        5.5 设备需求模块的设计

        在设备需求模块中将实现设备需求数据的添加和保存日志等功能。首先通过Visual Foxpro的表单向导生成所需的设备需求表单,选择部门需求表的所有可用字段,然后为保持程序风格的一致,继续采用表单的阴影式和图片按钮的风格。在“步骤3-排序次序”时。选择设备号的升序排列。最后单击“完成”按钮,把表单保存在“c:仓储管理”目录下,名为“设备需求.scx”。

        通过表单向导生成的表单如图所示,我们可以调节控件的位置,修改表单中控件的属性,最后结果所下图所示:

        

        图5-16

        相关的属性设置如下图所示:

        (1)Form1控件的主要属性: 表5-5 属性名称 属性值

        Caption 部门需求表

        Autocenter .T.-真

        BackColor 255.255.255

        (2)ButtonSet1控件的主要属性: 表5-6 控件名 属性名称 属性值

        cmdExit Visible .F.-假

        cmdDelete Visible .F.-假

        cmdPrint Visible .F.-假

        cmdEdit Visible .F.-假

        Command1 Caption 保存日志

        Command2 Caption 回主界面

        在表单设计器中,双击“保存日志”命令按钮。添加click事件代码如下:

        insert into 操作日志表 (操作员,操作内容,操作时间) values (username,'设备需求',date()) 双击回主界面命令按钮,添加click事件代码如下:

        thisform.release

        do form 仓储管理

        保存对表单所作的修改。

        5.6 设备采购模块的设计

        在设备采购模块中将实现设备采购数据的添加和保存日志等功能。 (1)由数据表生成表单通过Visual Foxpro的表单向导,生成设备采购计划表单。在选择数据库和表时,选择仓储管理数据库和设备采购计划表。在选择字段时,选择所有可用字段,选择阴影式和图片按钮作为设备采购计划表的样式。选择计划采购时间的升序排列作为设备采购计划表的索引。

        (2)为窗体修改和添加命令按钮

        添加2个命令按钮“保存日志”和“回主界面”。设置表单中控件的属性。下面的表列出了需要修改的控件的名称以及属性值。

        (1)Form1控件的主要属性: 表5-7 属性名称 属性值

        Caption 设备采购表

        Autocenter .T.-真

        BackColor 255.255.255

        (2)ButtonSet1控件的主要属性: 表5-8 控件名 属性名称 属性值 cmdExit Visible .F.-假 cmdDelete Visible .F.-假 cmdPrint Visible .F.-假 cmdEdit Visible .F.-假 Command1 Caption 保存日志 Command2 Caption 回主界面 (3)为按钮添加click事件代码:

        在表单设计器中,双击保存日志命令按钮。添加click事件代码如下: insert into 操作日志表 (操作员,操作内容,操作时间) values (username,"设备需求",date())

        *把设备需求写入操作日志表中

        双击回主界面按钮,添加click事件代码如下:

        thisform.release

        *释放本表单

        do form 仓储管理

        *运行仓储管理界面

        保存对表单所作的修改,表单运行效果如图所示:

        

        图 5-17

        5.7 显示报表模块的设计

        在该模块中,一共要显示3个报表,分别提供库存不足,库存过多和操作日志等信息。

        1( 设计显示报表表单

        在项目管理器的文档视图下选择“新建”,然后选择新建表单,如图所示。

        

        图5-18

        

        -19 图5

        在如图所示的空白表单中添加一个页框控件,并按照下表设置页框的属性,同时在数据环境里添加现有库存表和操作日志表

        。 表5-9 控件名 属性名称 属性值 Form1 Caption 显示报表 Pageframe1 Caption 3

        Pageframe1.Page1 Caption 库存不足表 Pageframe1.Page2 Caption 库存过多表 Pageframe1.Page3 Caption 操作日志

        分别为每个page添加一个表格grid1,如图所示:

        

        图 5-20 库存过多表

        

        图5-21 库存不足表

        

        图5-22 操作日志表

        设置表格控件的属性,如表所示:

        grid1控件的主要属性表:

        表5-10

        控件名 属性名称 属性值 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事件

        运行“显示报表”表单,界面所图所示:

        local Custs1

        select 设备号,最大库存,现有库存 from 现有库存表 where (现有库存>最大库存)

        into cursor Custs1

        thisform.页框.库存过多.库存过多表.recordsource="Custs1" 定义Pageframe1.Page2.grid1的init事件

        local Custs2

        select 设备号,最小库存,现有库存 from 现有库存表 where (现有库存<最小库存)

        into cursor Custs2

        thisform.页框.库存不足.库存不足表.recordsource="Custs2" 定义Pageframe1.Page3.grid1的init事件

        local Custs3

        select * from 操作日志表 into cursor Custs3 thisform.页框.操作日志.操作日志表1.recordsource="Custs3" 运行“显示报表”表单,界面如图所示。

        

        图5-23

        5.8 开发中的难点和解决技巧

        Visual FoxPro6.0中的向导包括表向导、数据库向导、表单向导、查询向导、报表向导、标签向导、邮件合并向导、数据透视表向导、导入向导、文档向导、安装向导、升迁向导、应用程序向导、WEB发表向导等、我们合理应用向导可以在编程中提高效率。

        为了快速开发高效的软件,本设计中的多数表单的设计采用利用表单设计向导生成,然后在生成的表单的基础上修改。

        数据库软件用来管理数据的优势在于可以迅速从成千上万的数据中找到我们需要的数据,而查询功能的设计也是数据库应用软件设计过程中的重点也是难点。本设计过程中利用表单向导强大的功能,轻松完成了数据的查询功能。而且表单向导生成的查询功能非常强大,完全可以满足数据库应用软件的需要。

        第六章 性能测试与分析

        软件开发过程是一个自顶向下,逐步细化的过程,首先在软件计划阶段定义了软件的作用域,然后进行软件需求分析,建立软件的数据域、功能和性能需求、约束和一些有效性准则。接着进入软件开发,首先是软件设计,然后在把设计用某种程序设计语言转换成程序代码。而测试过程则是依向反的顺序安排的自顶向上,逐步集成的过程。低一级测试为上一级测试准备条件。

        任何工程产品都可以使用以下两种方法之一进行测试(黑盒、白盒): 1(已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。 2(已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否已通过检查。

        程序经连编项目和连编可执性文件,系统未发生报错信息,系统工作正常。运行本仓储管理系统的各个功能摸块,各模块的编、查、删、改功能都具备,界面显示正常。输入一组数据在入库模块,出库模块,还库模块,需求模块,采购模块。检查各个模块间的关联状况,看是否在相应模块的数据表中有所体现。

        由于在编写程序时,或者在数据库的逐步更新扩大中,难免会有一些手误,这都在以后的系统运行中才能体现出来。所以在后期的系统测试中才能不断的发现问题所在,而且要不断的测试,才能发现该系统是否稳定可靠,而且在今后的运行中逐步的进行系统的维护以及测试,才能不断的发现隐藏的新问题,才能将使这个仓储管理系统成功。


信息化项目风险管理:沟通保障 源头抓起
乐山市2015年注册造价工程师报名时间为5月26日至6月26日
2007年监理工程师执业资格考试《案例分析》真题及答案
2015年安全工程师考试《安全生产法及相关》练习题(38)
中山市2008年度造价工程师执业资格考试4月28日-5月23日报名
南京市某隧道施工组织设计
09年招标师《项目管理与招标采购》考试大纲
IT信息化项目的沟通管理
信息发布:名易软件http://www.myidp.net