超市售货管理系统论文

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

摘要
本次毕业设计课题为“超市售货管理系统”,来实现超市管理的稳定性,易操作性,可维护性,安全性等,从而达到提高超市管理效率的目的。

毕业设计就以Visual FoxPro6.0作为开发工具,操作平台是Windows2000 Professional中文版。

Visual FoxPro6.0特点主要表现在,它在一系列丰富的命令和函数,采用命令窗口与平台结合的操作方式,而且采用了一种自然的语言,程序的可读性极强。

通过多个版本的升华,它在可视化开发程度上有了极大的提高,从而成为目前广泛采用的开发平台。

本论文中详细列出了该系统的设计开发过程包括可行性研究、需求分析、总体设计、详细设计、测试以及系统重点难点分析和关键技术分析等几个部分,并附有流程图、层次图和数据流图,数据库.
关键字: Visual FoxPro6.0、超市管理,数据库
Abstract
This graduate design is called “the management of supermarkets’vendition”.It can be expect to achi eve the stability、operation、maintainability、security and so on. The software can be improve the efficiency in the supermarkets’management. The design is empoldered by Visual FoxPro6.0 on Windows2000 Professional.
The characteristic of Visual FoxPro6.0 include: a series of commands and functions.It introduce the operation mode which conjoint the command window and flat and adopt a natural language, so the program can be read easily. After several editions,it become the most popular exploiture flat by improving a lot in videotext programme.
The design process contains feasibility study、demand analyse、collectivity design 、particular design 、testing and the emphasis and key part.It also include flow 、arrangement and data chart.
Key words:Visual FoxPro6.0、supermarket manage.data-base
目录
内容摘要 (1)
英文摘要 (2)
第一章绪论 (4)
1.1 市场目标分析 (4)
1.2 可行性研究 (5)
第二章总体设计 (8)
2.1 数据库设计 (8)
2.2 功能设计 (12)
第三章详细设计 (13)
3.1封面 (13)
3.2登陆界面 (13)
3.3 主界面 (15)
第四章系统测试以及系统重点难点分析 (19)
4.1系统测试 (19)
4.2 系统重点难点分析 (21)
总结 (23)
参考文献 (24)
第一章绪论
1.1 市场目标分析
随着现在超市的规模越来越庞大,我们用人的工作量是无法完成超市售货管理任务,本软件针对超市售货管理的业务,可以全面实现对超市的商品管理、进货管理、售货管理、报损管理,用户管理等业务的计算机管理,大大减轻了超市工作人员的工作量,全面提高了超市售货管理效率及服务质量,使超市收获管理水平和业务水平跃上一个新的台阶。

应用本系统可以在计算机上灵活、方便地管理商品销售从而大大的提高了处理效率,使管理更加现代化。

本系统是根据实际情况和具体内容,按一定的要求、科学、合理进行系统分析,设计,具体包括菜单设计、数据录入、统计、查询等各种设计。

从而使本系统完全能满足经济性、灵活性、系统性及可靠性的要求。

数据库需求分析是整个设计过程中的基础。

在分析阶段要和用户双方切合作,共同收集和分析数据管理的内容和用户对处理的要求。

针对超市售货管理系统,分别对采购,售货,库存进行详细的调研和分析。

系统流程图如下图1.1.1所示。

图1.1.1
数据流图如下图1.1.2
图1.1.2
逻辑模型如下图1.1.3
图1.1.3
1.2可行性研究
本系统的设计是使用了Visual FoxPro6.0来设计,Visual FoxPro6.0是一个具有Fox数据库系统的软件,Visual FoxPro数据库是一个提供了丰富的命令和函数。

多窗口的用户界面,录活实用的菜单生成语句,还具有开放结构SQL语言,多种开发工具和超加速查询以及与C语言接口等众多样性能,还利用了Rushmone 等技术,不但使它具有管理大型数据库的能力,更使得FoxPro开发的应用系统其界面美观大方,方便操作,数据共享度高,运行速度快且节省了内存空间等优点,Visual FoxPro与Visual Foxbase兼容性好,原来的Visual Foxbase及dbase 的程序完全可以在FoxPro中运行,且在原掌握前两种系统的用户只需学习新系统添加的内容即可以运用。

它的特点主要表现在,它在一系列丰富的命令和函数,采用命令窗口与平台结合的操作方式,而且采用了一种自然的语言,程序的可读性极强。

通过多个版本的升华,它在可视化开发程度上有了极大的提高,从而成为目前广泛采用的开发平台。

Visual FoxPro6.0的新功能如下:
1.Access和Assign方法程序
利用这两种用户自定义的方法程序可在查询或视图更改属性的值时执行所需的代码。

2.Active Document
Active Document 是一种基于Windows的,嵌入在中的非HTML应用程序,它提供了在界面中访问该应用程序功能的途径。

Visual FoxPro6.0的Active Document 应用程序与任何其他的Visual FoxPro6.0应用程序一样,都可以运行表单、报表和标签,将类实例化,运行代码及操作数据,而且Active Document 应用程序还具有自身的优势,即能包容在像Internet Explorer 这样的Active Document 容器中。

3.组件管理库
“组件管理库”是一个新工具,能帮助用户将类库、表单、按钮等对象进行分组并组成对象、项目、应用程序或其他分组。

4.代码范围分析器应用程序
代码范围应用程序可记录文件中的哪些代码行被执行了。

而分析应用程序则提供了那些行被真正执行,一行代码被执行的次数,所消耗的时间等信息。

Visual FoxPro6.0 的“代码范围分析器”提供了可以使用并进行定制的代码范围引擎,以及一个多窗口应用程序,用语分析程序和项目。

5.对GIF和JPEG图形的支持
经过改进的Visual FoxPro6.0支持GIF(GraphicsInterchange Format)和JPEG(Joint Photographic Electronic Group)图形文件格式,以进一步加强对Internet互操作性的支持。

6.HTML帮助
HTML Help是Microsoft所提供的用于创建适应Internet时代要求帮助文件的解决方案。

Visual Studio中带有的HTML Help Workshop,可用于为Visual FoxPro应用程序创建和发布 HTML Help 文件。

7.新的和改进的语言元素
Visual FoxPro 语言已经得到了改进,以简化编程工作。

而且,将Visual FoxPro 6.0 API库 Foxtools.fll中的许多有关文件名操作的函数也添加到了Visual FoxPro 中。

8.OLE施放
Visual FoxPro 6.0 现在支持OLE施放,这是一个强大而且有用的工具,允许在其他支持OLE施放的应用程序之间移动数据。

9.项目管理器挂接程序
在以前版本的Visual FoxPro 6.0中,访问项目的唯一途径是像处理.dbf文件一样,处理.pjx文件或以窗口标题为基础的“项目管理器”窗口。

为了能以编程方式访问“项目管理器”,采用了Project对象关联模型。

10.项目管理器挂接程序
在以前版本的Visual FoxPro 6.0中,访问项目的唯一途径是像处理.dbf文件一样,处理.pjx文件或以窗口标题为基础的“项目管理器”窗口。

为了能以编程方式访问“项目管理器”,采用了Project对象关联模型。

11.自动服务程序(Automation Server)的改进
Visual FoxPro6.0提供了经过改进而更可靠的自动服务程序。

12.新增和改进了的向导和生成器
除了对已有的几个向导进行了改进之外,Visual FoxPro 还带有新的向导和生成器,帮助你生成应用程序,创建数据库,在Web上发布数据,建立对象模型,以及创建你自己的向导。

13.对2000年日期的支持
Visual FoxPro6.0中的一些语言得到了改进,以在应用程序代码中支持2000年超市售货管理系统有这些特点
1) 超市售货管理中节省的人力,减轻了售货员的劳动强度。

2)降低了成本及其他费用。

3)改进薄弱环节,提高了工作效率。

4) 提高数据处理的及时性和准确性。

5) 其他各种有利方面
还有超市售货管理系统的硬软件要求都是能够达到的,最低配置要求如下表1.2
第二章总体设计
2.1. 数据库设计
2.1.1.数据库概念设计
根据以上需求分析和数据组织,开始设计数据结构,即根据需求分析勾画出实体/关系图(E/R)。

在概念上,(E/R)图2.1.1代表的是系统需要的数据
图2.1.1 E/R图
2.1.2.数据库规范化设计
实际工作中表格往往不适合直接输入到计算机中。

例如:商品信息,售货单,进货单,报损单等,无法在计算机中直接建立这样的表,因此需要对实际的表格或清单进行规范化设计。

1) 商品信息报表设计
商品关系(货号,品名,规格,产地。

简要说明)
实体关系图表示如下图1
图1
2)库存表设计
库存关系(货号,数量,入库时间,供货单位,经手人)
实际关系图如下图2
图2
3)进货表设计
进货关系(货号,品名,规格,进价,数量,供货单位,供货时间,供货人,经手人)
实际关系图如下图3
图3
4)售货表设计
售货关系(货号,品名,规格,售价,数量, 售货时间, 售货员, 产地, 产品说明)
实际关系图如下图 4
图4
5)报损申请表设计
报损申请关系(货号,品名,规格,单位,数量,报损原因,报损时间,申请人,审批人,经手人)
实际关系图如下图5
图5
根据上述设计的到超市售货管理系统关系结构数据模型如图所示:
售货关系
图 6
2.1.3 数据库逻辑设计
供货商信息表
将超市售货管理系统功能设计分为六大模块,其系统功能图如下图 2.2
图 2.2
第三章详细设计
3.1.封面:
点击进入直接调用登陆界面。

代码如下:
*设置文件目录为"c:\金孝镇\123456789\" set path to "c:\金孝镇\123456789\"
*调用用户登陆界面
do form 用户登陆界面
*释放开始界面
3.2.登陆界面
代码如下:
1.确定按钮
open database 管理数据库
use yh
go top
*先打开“管理数据库”文件,然后使用yh表,并定位到第一个记录user_n=thisform.text1.value
user_p=thisform.text2.value
is_user=.f.
*定义逻辑变量 is_user,用于判断是否为合法用户
do while .not.eof()
is_user=(user_n=er_name).and.(user_p=er_password) if is_user
exit
else
skip
endif
enddo
*编历yh中所有的记录,判断输入的用户名称和用户密码是否存在 if is_user
do form 主界面
*调用主界面
use
else
messagebox("用户名或用户密码不正确!",0+16,"提示")
c los all
endif
2.取消按钮:
use
close all
*关闭所有的表和数据库文件
thisform.release
*释放登陆界面
3.3主界面
窗口:、简洁、直观、容易操作,一看就懂。

按钮:各菜单连接着各个相映的窗口.
3.3.1 商品管理模块
(1).信息管理界面
在这里可以实现商品的查找,添加,编辑,打印,退出等功能。

查找:输入商品的货号就从库中查找并显示出对应的商品的基本信息。

添加:添加新商品基本信息。

每按一次“添加”按钮.
编辑:对库中的商品信息编辑.
退出:回到父菜单。

(2).商品查询界面
在这里可以做商品的基本信息查询操作
3.3.2. 进货管理模块
(1) 进货信息界面
在这里可以做商品的入库、移去、退出操作。

入库:添加新的商品信息.
移去:把进货里面的商品信息移到别处。

退出:回到父菜单。

(2) 进货统计界面
在这里可以做查看、打印、退出操作。

查看:根据入库时间统计进货信息打印:打印统计出来的商品信息。

退出:回到父菜单。

3.3.3 售货管理模块
(1) 售货商品界面
主要管理商品售货
(2) 售货统计界面
3.3.4 .报损申请模块
(1) 报损清单界面
(2) 报损统计界面
要根据时间来统计报损信息并打印.
3.3.5 .库存关系模块
这里可以做库存信息的查找、添加、删除、退出操作。

查找:查询库存情况。

添加:添加新商品信息。

每按一次“添加”按钮。

删除:从用户表搜索任一商品的信息,并删除该记录。

确定:把输入结果保存到“库存表”中。

退出:回到父菜单
3.3.6 用户管理模块
在这里可以做用户信息的浏览、添加、删除、退出操作。

浏览:浏览用户基本信息。

添加:添加新用户基本信息。

每按一次“添加”按钮。

删除:从用户表搜索任一用户的基本信息,并删除该记录。

确定:把输入结果保存到“用户信息表”中。

退出:回到父菜单。

3.3.7 .帮助模块
(1)关于软件界面
第四章系统测试以及系统重点难点分析
4.1系统测试
测试在开发软件过程中是一个不可缺少的部分。

因为在开发软件系统的漫长过程中,面对着极其错综复杂的问题,人的主观认识不可能完全符合客观现实,与工程密切相关的各类人员之间的通信和配合也不可能完美无缺,因此,在软件生命周期的各个阶段都不可避免地产生差错。

我们力求在每个阶段结束之前通过严格的技术审查,尽可能早地发现并纠正错误;但是,经验表明审查并不能发现所有的差错,此外在编码过程中还不可避免地会引入一些新的错误。

如果在软件生产性运行之前,没有发现并纠正软件中的大部分差错,则这些错误迟早在生产过程中暴露出来,那时不仅仅改正这些错误的代价更高,而且往往会造成很恶劣的后果。

测试的目的就是在软件投入生产运行之前,尽可能多地发现并纠正软件中的错误。

基于上述的原因,我在编码过程中进行了模块测试,编码结束进行了系统测试和验收测试。

下面将介绍测试方案,测试过程和测试结果。

4.1.1 模块测试
1) 测试方案
采用了白盒测试,即按照程序内部的逻辑结构,检验程序中的每条通路是否都按预定要求正常工作。

2)测试过程
检验模块之间的接口。

A 每个被调用模块是否正确接受参数。

B 每个调用模块是否能调用每个自己想要调用的模块。

(3) 测试结果
测试结果表明,每个模块之间的接口都吻合,即被调用模块都能正确接受参数,调用模块能调用自己想要调用的每个模块。

4.1.2功能测试
1)测试方法
采用了黑盒测试,即检查程序功能是否能按照规格说明书的规定正常使用,程序是否适当地接受数据产生正确的输出信息,并且保持外部信息的完整性。

2) 测试过程:主要检验是否能正确实现每个功能。

A 每个功能时候按照规格说明书的要求正常使用。

B 数据库里的记录是否符合要求。

C 用户界面是否友好
4.1.3 测试结果
结果表明,每个功能都能按照规格说明书里的要求正常使用且速度达到了预期的标准。

数据库里的记录符合要求,用户界面友好。

当然,整个系统在测试过程中仍发现了不少的错误,但在知道老师的指导下改正并完善了所发现的错误和不足之处,达到了测试要求
4.2 系统重点与难点的分析
4.2.1系统重点:
我设计的超市售货管理系统终于顺利完成了。

在设计过程中自认为比较重要的“重点问题”,现列举如下
1)数据库系统的概述
数据库系统为我们提供了一种把预我们的工作和生活紧密相关的信息集合在一起的方法,它还提供了在某个集中的地方存储和维护这些信息的方法。

数据库系统主要由三大部分组成:数据库管理系统(DBMS:它是专门负责组织和管理数据信息的程序)、数据库应用程序(它是我们能够获取、显示、和更新由DBMS 存储的数据)、数据库(按一定结构组织在一起的相关数据的集合)。

DBMS中存储了大量的数据信息,其目的是为用户提供数据信息服务,而数据库应用程序正是与DBMS通信,是DBMS对外提供数据信息服务的唯一途径。

2)Visual FoxPro 对数据库的支持
在Visual Foxpro 中,可以使用数据库组织和建立表和视图间的关系。

数据库不但提供了存储数据的结构,而且还有很多其他的好处。

在使用数据库时,可以在表一级进行功能扩展,例如创建字段级规则和记录级规则、设置默认字段值和触发器等,还可以创建存储过程和表之间的永久关系。

此外,使用数据库还能访问远程数据远源,并可创建本地表和远程表的视图。

3)如何访问数据库中数据
Visual FoxPro 是一种强有力的数据库应用程序开发工具,我在设计过程中直接凭借表单和报表中的控件与数据库的绑定或间接通过编程来访问数据库中的数据。

在Visual FoxPro 中访问数据库时是非常方便的,直接从数据环境设计器中保数据库中的数据表或视图拖到表单中,您就会发现表单中已经存在表中的所有信息,您若对表单的布局或内容等不太满意您完全可以自己在表单设计器中进行修改,这样会节省您的不少宝贵时间。

4)菜单的引用
在Visual FoxPro 中设计的菜单会以.mpr文件保存在磁盘上,应用时必须调用该文件,如在图书馆借阅管理体统中就使用 do mainmenu.mpr 命令来引用系统的主菜单。

并且菜单文件不能被单个表单调用,它可以直接显示在屏幕上:也可以被“表单集”调用。

可以用顶层表单调用。

4.2.2 系统难点:
因刚接触Visual FoxPro软件在设计过程中我觉得比较难的一部分是编码过程。

1)在运行表单时总出现“据库打不开”或“出现该文件不是目标文件:这样的问题。

在老师的指导下我明白了原因和解决方法。

2)没有理解数据环境的实际含义。

在Visual FoxPro 中,数据环境是一个很重要的概念。

数据环境是在打开或修改一个表单或报表时需要打开的全部表、视图和关系。

在Visual FoxPro 中有一个“数据环境设计器”,随表单或报
表一起保存的数据环境可以用“数据环境设计器”进行设计和修改。

在一个表单中,我并没有设置数据环境,所以总是出现“不识别别名xxx”字样,所有数据库中的表都无法应用,在老师的指导下我明白了那是数据环境出现问题了。

3)对控件的controlsource 属性理解不透。

在绑定表单中的combobox 控件时,总是想模仿书上的例题设置属性controlsource为该控件预显示的字段。

这样一来,一点击combobox控件,数据库中当前记录的对应字段的数据就自动的变为combobox控件的value值。

这个问题在老师的指导下才查到controlsource属性的值决定value属性的值,所以才会出现这样的结果。

4)pack命令操作的表必须以独占方式打开,以确保在运行期间反复读取文件中的数据时数据的完整性和一致性。

必须以独占方式打开的命令还有:index,alter,table,insert,modify structure,reindex
第五章总结
通过本次设计,学到了不少东西。

不但对Visual FoxPror6.0这一开发工具有所掌握,更重要的是对进行软件设计的整体设计流程及思维方法有了深刻的认识。

在期间,发现的许多问题都源于没有认真地按步骤进行设计,不重视需求分析,总体设计部分,对各个方面将会产生的问题考虑不周全。

鉴于此我觉得要学好一门语言,就要多查、多看、多练、多用。

取人之长,补已之短。

这样才能少走弯路。

另外,平时就养成良好的学习习惯也是非常重要的。

遇到什么自认为比较有价值的东西就应及时地记下来,以免以后遇到同样的问题难解。

在设计过程中,对于我来说,由于很多都是新知识,这就迫使我到处查阅相关资料,学习新知识,从而培养了独立思考解决问题的能力。

总之,在整个设计完善的过程中,我学到了在书本里根本学不到的许多知识,体会到Visual FoxPror6.0的强大功能,还有我的受益匪浅。

不论从理论上,技术上还是从经验方法上都是自己有了一定的升华,为我在今后的工作中无不是最宝贵的财富。

再一次感谢金哲学老师的细心指导。

参考文献
[1] 方可燕,Visual FoxPro 6.0 实战与精通,清华大学出版社
[2] 张婷,Visual FoxPro 6.0 课程设计案例精编,中国水利水电出版社
[3] 萨师煊\王珊,数据库系统概论,高等教育出版社
[4] 张海藩,软件工程导论(第四版),高等教育出版社
源代码
一封面
(1) Lable1的Timer1控件的Timer事件中添加如下代码:
if bel1.left=thisform.width
bel1.left=0
else
bel1.left=bel1.left+1
endif
i=int(rand()*255)
j=int(rand()*255)
k=int(rand()*255)
bel2.forecolor=rgb(i,j,k)
(2) Command1按钮控件的Click事件中添加如下代码:
*设置文件目录为"c:\金孝镇\123456789\"
set path to "c:\金孝镇\123456789\"
*调用用户登陆界面
do form 用户登陆界面
*释放开始界面
二登陆界面
(1) Command1按钮控件的Click事件中添加如下代码:
open database 管理数据库
use yh
go top
*先打开“管理数据库”文件,然后使用yh表,并定位到第一个记录user_n=thisform.text1.value
user_p=thisform.text2.value
is_user=.f.
*定义逻辑变量 is_user,用于判断是否为合法用户
do while .not.eof()
is_user=(user_n=er_name).and.(user_p=er_password) if is_user
exit
else
skip
endif
enddo
*编历yh中所有的记录,判断输入的用户名称和用户密码是否存在 if is_user
do form 主界面
*调用主界面
use
else
messagebox("用户名或用户密码不正确!",0+16,"提示")
clos all
endif
(2) Command2按钮控件的Click事件中添加如下代码:
use
close all
*关闭所有的表和数据库文件
thisform.release
*释放登陆界面
三主界面
主界面表单的init事件中添加如下代码:
thisform.edit1.width=thisform.width
thisform.edit1.height=thisform.height
*控制edit1控件随表单自动调整大小
do c:\金孝镇\123456789\主菜单.mpr with thisform,.t.
*加载主菜单
四商品管理界面
(一)商品信息
(1) Form1的Init事件中添加如下代码:
(2) Command1(第一个)按钮控件的Click事件中添加如下代码:go top
mand2.enabled=.f.
mand8.enabled=.t.
thisform.refresh()
*定位到第一个记录,同时刷新表单
(3) Command2(上一个)按钮控件的Click事件中添加如下代码:if !bof()
skip -1
else
go top
endif
mand8.endbled=.t.
thisform.refresh()
*刷新表单
(4) Command3(下一个)按钮控件的Click事件中添加如下代码:if !bof()
skip -1
else
go bottom
endif
mand2.endbled=.t.
thisform.refresh()
*刷新表单
(5) Command4(最后一个)按钮控件的Click事件中添加如下代码:go bottom
mand8.endbled=.f.
mand2.endbled=.t.
thisform.refresh()
(6) Command6(添加)按钮控件的Click事件中添加如下代码:appen blank
*给货物信息表添加空白记录
mand7.caption="保存"
thisform.refresh()
(7) Command9(退出)按钮控件的Click事件中添加如下代码:
do case
case mand9.caption="退出"
use
thisform.release
case mand6.caption="保存"
replace 库存表.货号 with thisform.text_货号.value
replace 库存表.name with thisform.text_name.value
replace 库存表.spec with thisform.text_spec.value
replace 库存表.preduced_area with thisform.text_area.value replace 库存表.description with thisform.text_descrip.value mand9.caption="退出"
endcase
(二)商品查询
form1的click事件中添加如下代码:
do top
locate for 库存表_name=alltrim(thisform.text1.value) thisform.release
五进货管理界面
(一)进货管理
(1) List1控件的Dbclick事件中添加如下代码:
货号_select=list1.value
*返回当前选择的货物的编号
locate for 库存表.货号=货号_select
*定位到与当前选择货号相同的记录
thisform.text1.value=库存表.货号
thisform.text2.value=库存表.name
thisform.text8-value=库存表.spec
*自动填写货物编号,名称,规格
(2) Command1按钮控件的Click事件中添加如下代码:
append blank
*在表尾添加空记录
replace 进货表.货号 wlth alltrim(thisform.text1.value) replace 进货表.unit wlth alltrim(thisform.text4.value) replace 进货表.saler wlth alltrim(thisform.text8.value) replace 进货表.keeper wlth alltrim(thisform.text6.value) replace 进货表.in_time wlth alltrim(thisform.text7.value) replace 进货表.in_com wlth alltrim(thisform.text8.value) replace 进货表.amount wlth thisform.spinner1.value
*填写进货信息到进货表中
thisform.list2.additem(thisform.text2.value)
*将选中的货物添加到进货信息列表框的列表中
(3) Command2按钮控件的Click事件中添加如下代码:
if thisform.list2.value=""
messGEBOX("请先选取要移去的货物编号!",0+64,"提示")
else
thisform.list2.removeitem
*将选中的进货从列表清单中删除
locate for 进货表.货号=alltrim(thisform.text1.value) delect
*删除当前选中的进货
endif
(4) Command3按钮控件的Click事件中添加如下代码:
pack
*清理纪录
release thisform
*释放菜单
(二)进货统计
(1) Command1按钮控件的Click事件中添加如下代码:
star_time=thisform.text1.value
end_time=thisform.text2.value
select 进货表.*,库存表.name;
from 管理数据库!进货表 inner join 管理数据库!库存表;
on 进货表.货号=库存表.货号;;
where 进货表.货号>=star_time;
and 进货表.货号<=end_time;
order by 进货表.货号
*查看介于符合条件的进货信息
(2) Command2按钮控件的Click事件中添加如下代码:
star_time=thisform.text1.value
end_time=thisform.text2.value
select 进货表.*,库存表.name;
from 管理数据库!进货表 inner join 管理数据库!库存表;
on 进货表.货号=库存表.货号;;
where 进货表.货号>=star_time;
and 进货表.货号<=end_time;
order by 进货表.货号;
into cursor 进货表_query1
report form 进货表.frx to printer
(3) Command3按钮控件的Click事件中添加如下代码:thisform.release
六售货管理界面
(一)售货管理
(1) Llist1控件的Dbclick事件中添加如下代码:
货号_select=list1.value
*返回当前选择的货物的编号
locate for 库存表.货号=货号_select
*定位到与当前选择货号相同的记录
thisform.text1.value=库存表.货号
thisform.text2.value=库存表.name
thisform.text8-value=库存表.spec
*自动填写货物编号,名称,规格
(2) Command1按钮控件的Click事件中添加如下代码:
append blank
*在表尾添加空记录
replace 售货表.货号 wlth alltrim(thisform.text1.value) replace 售货表.unit wlth alltrim(thisform.text4.value) replace 售货表.saler wlth alltrim(thisform.text8.value) replace 售货表.keeper wlth alltrim(thisform.text6.value) replace 售货表.in_time wlth alltrim(thisform.text7.value) replace 售货表.in_com wlth alltrim(thisform.text8.value) replace 售货表.amount wlth thisform.spinner1.value
*填写进货信息到售货表中
thisform.list2.additem(thisform.text2.value)
*将选中的货物添加到售货信息列表框的列表中
(3) Command2按钮控件的Click事件中添加如下代码:
(3)
if thisform.list2.value=""
messGEBOX("请先选取要移去的货物编号!",0+64,"提示")
else
thisform.list2.removeitem
*将选中的货物从列表清单中删除
locate for 进货表.货号=alltrim(thisform.text1.value)。

相关文档
最新文档