毕业设计论文超市信息管理系统设计与实现.doc

上传人:sccc 文档编号:4881431 上传时间:2023-05-21 格式:DOC 页数:49 大小:1.18MB
返回 下载 相关 举报
毕业设计论文超市信息管理系统设计与实现.doc_第1页
第1页 / 共49页
毕业设计论文超市信息管理系统设计与实现.doc_第2页
第2页 / 共49页
毕业设计论文超市信息管理系统设计与实现.doc_第3页
第3页 / 共49页
毕业设计论文超市信息管理系统设计与实现.doc_第4页
第4页 / 共49页
毕业设计论文超市信息管理系统设计与实现.doc_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《毕业设计论文超市信息管理系统设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计论文超市信息管理系统设计与实现.doc(49页珍藏版)》请在三一办公上搜索。

1、XXXX大学毕业论文毕业设计(论文)题目 超市信息管理系统设计与实现学员姓名 学号 专 业 系别 指导教员 大学 年 月 日46毕业设计任务书任务来源:自选 任务要求:1)分析和总结各种管理信息系统及格式,为设计与实现基于超市信息管理系统提供技术基础;2)探讨一种快捷方便的管理信息系统以支持超市信息管理的方法;3)提出收集、验证超市信息管理系统的解决方案;4)为超市信息管理系统设计与实现的深入研究提出自己的看法;参考文献:1 何旭洪,余建英:Power Builder 8.0 数据库系统开发实例导航. 北京:人民邮电出版社, 2002.2 崔杜武,姚全珠,范艳华:Power Builder 8

2、.0 从基础到应用. 北京:人民邮电出版社 2003.4 56789任务起止日期: 年 月 日至 年 月 日目 录毕业设计任务书目 录摘 要Abstract第1章 绪论11.1 PowerBuilder8.0的功能和特点21.1.1 专业的客户/服务器开发工具21.1.2 面向对象的编程31.1.3 支持多种关系数据库管理系统3第2章 需求分析和结构实现52.1 系统设计5 2.1.1 系统客户要求5 2.1.2 系统开发目标 62.1.3 开发思想 72.1.4 系统的功能分析72.1.5 系统功能模块设计82.2 数据库设计8 2.2.1 数据库需求分析9 2.2.2 数据库概念结构设计1

3、1 2.2.3 数据库逻辑结构设计12第3章 系统功能143.1 登录窗口设计15 3.1.1建立应用程序主窗口183.2 菜单模块设计183.3 数据窗口对象创建203.4 前台POS模块设计213.5 销售日结模块设计293.6 维护管理模块设计303.7 报表管理模块设计333.8 查询管理模块设计40结束语43致谢44参考文献45摘 要随着计算机在企业管理中应用的普及,利用计算机实现商品交易管理系统势在必行。超市管理系统在百货超市中是一种广泛需要的系统。因此,开发了超市管理系统。本人是根据超市具体管理业务而进行设计的。本系统的目的是实现超市管理业务的计算机化管理,由计算机处理代替人工处

4、理,使管理趋于规范化、标准化。本系统的开发采用了结构化的分析方法。程序开发采用了客户/服务器体系结构,使用Power Builder8.0作为前台开发工具,ASA7.0 anywhere为后台工具。本系统包括销售管理、库存管理、人事管理、权限管理、报表管理、系统功能等六个功能模块。具有数据输入、查询、增加、删除、打印等功能。涵盖了超市管理的基本业务,本系统的设计从用户的角度出发,系统操作简单、界面友好、切实可用。【关键词】:PowerBuilder8.0、ASA7.0数据库、数据窗口、收银管理、权限维护。 Abstract With the popular using of computers

5、 in the enterprises management, made use of computers in commodity trade management must be carried out . Supermarket management system is a wide needed one in department supermarkets. So develop supermarket management system. It designed for the Supermarket management of Hymall. Its purpose is usin

6、g computer instead of the personal process and make the Supermarket management to become more standard and further normalized.第1章 绪论21世纪,随着全球经济的蓬勃发展,管理信息系统越来越普及到人们的社会生活中,社会的各行各业,人们都逐步采用电脑来代替人力来管理、处理事务、交易、办公等。随着计算机技术的进步和人们对系统的要求进一步提高,更侧重于企业外部信息的收集、综合数据库、模型库、方法库和其他人工智能工具能否直接面向决策者。我们知道, 在现代社会中,商品交易是一种经

7、常性的活动,商品交易管理系统在百货超市、杂货店管理中是一种广泛需要的系统,因此学习和掌握商品交易系统的制作有非常重要的意义。超市管理系统是现代商品交易管理工作不可缺少的一部分,是适应现代市场的要求、推动超市管理走向科学化、现代化的必要条件。由于考虑开发了本系统。本系统是以Powerbuilder8.0面向对象开发发作为前端开发工具以ASA7.0作为后台数据库,通过ODBC的方法同数据库接口相连,同时采用了把数据库和程序设计连接的重要工具数据窗口(DATAWINDOW)通过在程序中添加控件,使数据库和程序建立了联系。通过数据绑定控件,可以自由地显示,编辑和更新各类已有的数据库中的信息。数据窗口对

8、象是两类信息的组合:数据源的信息和数据显示风格的信息。数据源是数据窗口对象同数据库之间的纽带,数据窗口可以从不同的数据源中获得数据后显示。数据显示风格确定了数据窗口对象同用户交互的方式。此外,数据对象具有高度的智能,可能自动地检测每一个输入的数据,查看其数据类型是否正确,数据窗口执行数据排序、过滤、屏蔽重复值等操作,而使用其他开发工具往往需要编程完成这些工作。本系统界面友好、易于使用,具有设计者的风格。 11 PowerBuilder8.0简介PowerBuilder8.0是Sybase Inc.的了公司PowerSoft 推出的新一代数据库应用开发工具,它除了够设计传统的高性能、基于客户/服

9、务器(Client/Server)体系结构的应用系统外,也能够用于开发基于Internet的应用系统。PowerBuilder8.0支持调用系统同时访问多种数据库,这既包括诸如Oracle、Sybase之类的支持ODBC接口的小型数据库。另外,PowerBuilder8.0开发环境随身携带的Sybase SQL Anywhere本身就是个功能强大的DBMS,对小型应用来说,直接使用这个数据库就是个质优价廉选择。为方便用户界面的开发,PowerBuilder 8.0提供了大量控件,这既丰富了应用程序的表达能力,也加快了项目的开发进度。PowerBuiledr8.0还支持分布式应用系统的开发,形成

10、多层应用系统结构,也就是说,用PowerBuild8.0不仅能够开发客户端应用程序,而且还可以轻而易举地构造应用服务器,从而形成分布式应用。PowerBuilder8.0支持多种平台,并能生成机器代码的可执行文件。下面介绍一下PowerBuilder8.0功能和特点.1.1.1 专业的客户/服务器开发工具客户/服务器是一种将任务进行分解,然后协同解决的计算模式。客户端的应用程序负责提出需求,服务器端的应用程序则为客户提供服务,例如数据查询、打印等。用不PowerBuilder8.0开发出的应用程序能够与数据库服务器完美地协同工作,构成客户/服务器计算模式。1.1.2 面向对象的编程在Power

11、Builder8.0中创建的窗口、菜单、数据窗口等都是对象。除了使用系统预先定义的对象外,开发人员可以自行构造新的对象(称作用户对象),扩展系统的预定义对象,将各种对象有机地组合起来就构成了PowerBuilder8.0应用程序。1.1.3 支持多种关系数据库管理系统 用PowerBuilder8.0开发的应用程序可以同时访问多个数据库系统。比如说,可以从Oracle中查询数据,然后将结果放入到Foxpro中。PowerBuilder8.0支持多种关系数据库管理系统(RDBMS),既包括诸如Oracle、Sybase、Microsoft SQL Server、IBM DB2、Imformix等

12、大型数据库,也包括Xbase、Foxpro、Paradox等个人数据库。对大型数据库来说,PowerBuilder提供了旨在充分发挥其性能的专用接口,而小型数据库则可通过ODBC接口灵活地访问。而且,PowerBuilder8.0本身带有一个功能不凡的数据库Sybase SQL Anywhere,利用它可以脱离网络环境单要运行应用程序。PowerBuilder8.0的应用程序与数据库管理系统之间关系如图1-1所示。其它各种持ODBC接口的数据库PowerBuilder8.0应用ODBC接口Oracle接口Sybase接口Informi接口其它接口Oracle数据库FoxPro数据库SQLAny

13、where数据库Sybase数据库Informix数据库其它大型数据库图1-1 PowerBuilder8.0的应用程序与数据库管理系统之间关系第2章 需求分析和结构设计随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现超市系统管理的势在必行。当前超市信息管理系统正在从C/S结构向B/S转移,但是由于安全性等方面的因素,C/S结构的管理信息系统仍然占据企业管理信息系统的主流。超市管理系统是现代社会商品交易工作不可缺少的一部分,是适应现代社会交易要求、推动超市管理系统走向科学化、规范化的必要条件。超市管理系统可以用于支持超市公司完成各种管理工作,有如下3个方面的目标:1).支

14、持公司实现规范化的管理。2).支持公司高效率完成人事管理、销售管理、库存管理等日常业务。包括职工信息的建立、商品的出入库操作、商品的销售操作等。3).支持公司进行商品交易及相关方面的科学决策。如公司工作人员根据现有的商品数量决定商品入库的操作等。2.1 系 统 设 计2.1.1系统客户要求系统开发的目标是实现超市进销存管理的系统化、规范化和自动化。这是在用户要求的基础上提出来的,用户要求如下。 产销衔接。利用进销存管理系统后,要求能够对整个商品销售过程进行实时的监控。对于即将销售完的商品,能够提前将信息传递到仓库部门,这样仓库部门可以根据商品的要求,提前做好进货的准备;对于不能按期销售完的商品

15、,系统自动发出警报,以便及时采取措施。 产品库存.通过本系统,能够清楚地看到企业库存中的商品数量、存放地点等信息.使得销售部门能够库存信息做出决策。 客户管理.能够对公司的顾客有一个清楚地了解,通过客户管理部分保持和客户良好的关系。及时得到客户反馈的意见,上交有关部门及时处理。 出库计划。根据商品销售数量和公司现有的库存,制订商品出库数量、出库顺序等计划。2.1.2 系统开发目标在上面用户要求的基础上,得到下面的系统目标。 产销衔接。能够对整个进销过程进行实时地监控,特别是一些半商品和热销商品的库存量。加强公司仓库部门和销售部门之间的联系和沟通。 库存管理。能够清楚地看到公司库存中的商品数量、

16、存放地点等信息。对于库存过多和过少的商品进行报警。 客户管理。能够对公司的供应商有一个清楚地了解,通过客户管理部分保持和客户良好的关系。能够根据客户查询商品进货情况。 出库计划。根据商品销售的数量和公司现有的库存,制订出库数量、出库顺序等,形成货物销售单。 入库计划。能够根据公司现有的库存商品数量和销售数量统计,及时制订入库商品的计划。2.1.3 开发设计思想 尽量采用公司现有软硬件环境,及先进的管理系统开发方案,从而达到充分利用公司现有资源,提高系统开发水平和应用效果的目的。 系统应符合生产、销售、库存的规定,满足公司日常工作需要,并达到操作过程中的直观、方便、实用、安全等要求。 系统采用先

17、进的体系结构,Client(客房端)负责提供表达逻辑,显示用户界面信息、基本操作;Server(服务器端)负责实现数据服务。 系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于参与开发的技术维护人员补充、维护。 系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改等操作。能够对数据库表格进行备份。2.1.4 系统功能分析系统功能分析是在系统开发的总体任务的基础上完成。本例子中的进销存管理系统需要完成产销衔接、商品库存管理、供应商管理、出库管理、会员管理、职工信息管理等多个功能,满足公司高效率管理的要求。2.1.5系统功能模块设计在系统功能分析的基础上,考虑Pow

18、erbulider8.0程序编制的特点,得到如图2-1所示的系统功能模块图。 前台pos商品管理库存管理管理信息报表管理查询管理系统功能收银打印出库报表销售日结入库报表权限维护入库查询出库查询超市管理系统 2-1超市管理系统前台POS管理与其他功能模块图2.2 数据库设计超市管理系统是一个数据库应用系统,所有商品信息都保存在数据库中。在数据库应用系统开发过程中,数据库的结构设计是一个非常重要的问题。我们这里所说的数据库结构设计是指数据库中各个表结构的设计,包括信息保存存在哪些表格中、各个表的结构如何以及时各个表之间的关系。 数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响,好的

19、数据库结构设计会养活数据库的存储量,数据的完整性和一致性比较高,系统具有较快的响应速度,简化基于此数据库的应用程序的实现等等。由于数据库设计的重要性,人们提出了许多数据库结构设计的技术。但这些设计方法和设计者的工作经验有很大关系。因此要从根本上解决所有数据库结构设计的问题,就需要从实践,在实践中积累经验和教训,最终成为数据库结构设计的专家。2.2.1 数据库需求分析数据库结构设计的第一个阶段,也是非常重要的一个阶段是数据库需求分析。在这个阶段主要是收集基本数据以及数据处理的流程,为以后进一步设计打下基础。需求分析主要解决两个问题: 内容要求。调查应用系统用户所需要操作的数据,决定在数据库中存储

20、什么数据。 处理要求。调查应用系统用户要求对数据进行什 么样的处理,理清数据库中各种数据之间的关系。 解决这两个问题的时候,我们做了详细的调查,保护信息收集的完整性。以免在后面的工作出现问题。 在数据库需求分析后,得到一个数据字典文档,包括3方面内容。 数据项。包括名称、含义、类型、取值范围、长度以及和其它数据项之间的逻辑关系。 数据结构。若干个数据项的有意义集合,包括名称、含义以及组成数据结构的数据项。 数据流。指数据库中数据的处理过程,包括输入、处理和输出。这个数据字典在程序的开发过程中会不断发生变化。对于一个大型的软件开发过程,一般都需要一份详尽的数据字典。针对本实例,通过对公司商品内容

21、和过程分析,设计的数据项和数据结构如下: 前台POS信息:包括的数据项有商品编号、商品名称、商品单价、销售数量、商品小计、商品总计、现金、找零、收银台号、销售日期等。 商品入库信息:包括数据项有入库号、商品编号、商品名称、入库时间、供应商电话、供应商名称、入库数量、入库价格、采购员等。 商品出库信息:包括的数据项有商品编号、商品名称、出货日期、出库数量、出库号、领取人、经手人等。 权限维护信息:包括的数据项有用户名、用户密码等。有了上面的数据结构、数据项和数据流程,就能进行下面的数据库设计。本系统由三个人共同开发研制的,我主要负责前台POS,实现商品的销售、以及对商品的销售进行统计、打印和商品

22、统计报表等功能。所销售的商品信息来自商品入库信息,商品统计报表也是针对各种商品的入库和出库信息进行操作的。有了上面的数据结构、数据项和数据流程,就能进行下面的数据库设计。2.2.2数据库概念结构设计这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实休,以及它们之间的关系,为后面逻辑结构设计打下基础。本实例根据上面的设计规划出的实体有前台POS实体、库存实体、入库实体、发货实体、权限维护实体。各个实体的E-R图及其关系描述如下。图2-2为前台POS实体E-R图前台POS条形码数量名称单价小计日期2-2前台POS信息实体E-R图图2-3为入库信息实体E-R图入库信息入库产品入库数量入

23、库时间采购员2-3入库实体E-R图图2-4为权限维护信息实体E-R图权限维护用户名用户密码2-4权限维护实体E-R图图2-5为出库信息实体E-R图出库信息商品编号出库数量出库日期出库价格2-5出库信息实体E-R图图26为供应商信息实体ER图供应商信息编号、名称地址信息信誉度联系人2-6供应商信息实体E-R图2.2.3 数据库逻辑结构设计在上面的实体以及实体之间关系的基础上,形成数据库中的表格以及各个表格之间的关系。超市管理系统数据库中各个表格的设计结果如下面的几个表格所示。每个表格表示在数据库中的一个表。表2-7前台POS表格列 名数据类型可否为空说 明BarcodeVarchar(6)NOT

24、 NULL条 形 码NameVarchar(20)NULL商品名称CountNumber(5)NULL数 量PriceNumber(6)NULL单 价cashNumber(6)NULL现 金 表2-8入库信息表列 名数据类型可否为空说 明IdVarchar(4)NOTNULL入 库 号BarcodeVarchar(6)NOTNULL商品编号NameVarchar(20)NULL商品名称In_numberNumber(5)NULL入库数量In_dateDateNULL入库日期In_personVarchar(8)NULL经 手 人表2-9权限维护表列 名数据类型可否为空说 明NameVachar

25、(8)Null用户名PasswordVachar(4)NOTNULL 用户密码第3章 系统功能及实现数据库结构创建好后,数据库中的各个表格都是空的。也就是说需要向数据库的各个表格输入具体的信息。数据的输入可以通过Power Builder下编制完毕程序后在进行信息的输入。创建应用程序对象超市管理系统应用程序对象的创建步骤如下。(1)单击菜单File|New,选择应用程序对象模板画板,点击OK按钮,出现如图所示的Specfy New Application and Library对话框。在该对话框中完成应用程序对象名、库文件名设置。应用程序对象名、库文件名的设置(2)单击Finish按钮,进入应

26、用程序对象设计画面。在应用程序对象的Open事件中输入如下的程序代码: /Profile oracle805SQLCA.DBMS=O84 ORACLE8.04SQLA.AutoCommit=FalseSQLA,DBParm=/open the login windowopen(win_logon)应用程序运行后第一个出现的窗口是上面语句打开找开的win_logon窗口。在登录窗口中用户输入连接数据库的用户名和口令。连接数据库成功,则出现程序主窗口。3.1 登录窗口的设计在应用程序对象Open事件的程序代码中有下面一条语句:open(win_logon)。该语句就是打开登录窗口的语句。登录窗口如

27、图所示。登录窗口该窗口中放置了2个静态文本框Static Text 控件,分别显示用户名和用户密码。放置了2个单行编辑框String line Edit控件,一个供用户输入登录的用户名(sle_user),另一个供用户输入密码。这4个控件放置在一个GroupBox控件上。另外在窗口的下方放置2个按钮控件,分别是确认和取消。win_logon窗口的Open事件中输入如下的程序代码:Environment l_envint l_ScrWidth,l_ScrHeightsetRedraw(false)GetEnvironment(l_env)l_ScrWidth=PixelsToUnits(l_en

28、v.ScreenWidth,XpixelsToUnits!)l_ScrHeight=PixelsToUnits(l_env.ScreenHeight,YpixelsToUnits!)Move(l_scrwidth - this.width)/2,(l_scrheight - this.height)/2)setredraw(true)dw_1.settransobject(sqlca)dw_1.retrieve()这样在该窗口被打开后,将显示在屏幕的中央。在cb_ok控件的Click事件输入如下的程序代码:int g_input_timestring g_xxl_userstring g_xx

29、l_pswdstring correct_pswdg_input_time=g_input_time+1g_xxl_user=sle_1.textg_xxl_pswd=sle_2.text/取出数据库用户表中对应用户的口令select psaaword into:correct_pswd from user where user=:g_xxl_user;if sle_1.text= or sle_2.text= thenmessagebox(注意,请输入用户名或密码!)elseif g_xxl_pswd=correct_pswd then/输入正确,打开主窗口open(in_window)cl

30、ose(win_logon)else/不正确,在3次以内可重新输入,超过3次结束程序if g_input_time3 thenmessagebox(警告,输入口令的次数太多)close(win_logon)elsemessagebox(警告,输入的口令有错误,请重新输入)end ifend if该事件以用户输入的用户名和口令来连接数据库,连接成功后,出现应用程序主窗口,并关闭登录窗口。在cb_cancel控件的Click事件中输入如下的程序代码:halt;用于结束应用程序的运行。3.1.1 建立应用程序主窗口系统应用程序的主要功能都是在主窗口in_window及在其下打开的众多窗口中完成。主窗

31、口界面如下图所示, 3.2 菜单设计 在菜单画面中设计应用程序主窗口菜单m_in.该菜单的结构如图所示。在这里设置8个主菜单,21个子菜单项目。对于经常使用的菜单功能,在工具栏中设置相应的快捷图标实现。该菜单的结构如下图所示。各个菜单中的程序代码如下:(1)“前台POS”菜单下“收银管理”子菜单的Click事件程序代码:opensheet(s_window,in_window,1,original!)其功能是在主窗口in_windowh 以窗口s_window的原来的大小(original!参数指定)打开“收银管理”窗口,并指定在第1个菜单(“窗口”,菜单)标题下(1参数指定)增加一个以s_w

32、indow命名的菜单。(2)“系统”菜单下“退出”子菜单的Click事件程序代码:close(in_window)其功能是关闭窗口in_window(3)“窗口”菜单下“层叠”子菜单的Click事件程序代码:Win_MAIN.ArrangeSheets(CASCADE!)(4)“窗口”菜单下“平铺”子菜单的Click事件程序代码:Win_MAIN,ArrangeSheets(LAYER!)(5)其他菜单下子菜单的Click事件程序代码:opensheet(wd_.,in_window,n,original!)其功能是在主窗口in_windowh 以窗口wd_jr的原来的大小(original!

33、参数指定)打开“销售日结”窗口,并指定在第n个菜单(“窗口”,菜单)标题下(n参数指定)增加一个以wd_.命名的菜单。3.3 数据窗口对象的创建数据窗口对象是PowerBuilder8.0编程的精华所在,建立数据窗口对象是程序设计中极为重要的一个部分。针对不同的情况选择不同类型的数据窗口对象,会使程序的使用性和直观性大为增强。在本应用程序中,根据需要为各个数据库的表格分别创建两种类型的数据窗口对象。这两种类型的数据窗口对象各有各的优势。Dw_grid数据窗口的创建如下。(1)单击“新建”打开New对话框,然后在“datawindow”标签面选择数据窗口对象的显示风格,在这里选择Grid。(2)

34、单击“OK”按钮启动数据窗口对象的向导。选择Quick Select数据源的最简单方法,然后单击“Next”按钮,出现对话框。在左上主的表格中双击连接的表格devices。选中该表格后,在右上方的列表框中列出了选中表devices的各个列。单击“Add All”按钮,则在该窗口下面显示该表格所有的列。1) 单元击“OK”,出现“Select Color and Border Settings”对话框,选择数据窗口的背景颜色,文字颜色和边框外观为Lowered。2) 单击“Next”按钮,再现“Ready to create Grid Data window”对话框。在其中显示当前数据窗口对象的

35、属性。单击其上的“Finish”按钮显示数据窗口对象画笔。3) 另外,为了能够在该数据窗口对象中修改所显示的记录,需要在其中设置Allow Updates属性。单击“Rows”攻菜单下的“Update Porperts”子菜单。先选择此属性,再选择所要修改的表格。在左下方的Updateable Columns中选中所有的列,使得所有的列都可以修改。在Where Clause for Update/Delete中选择Key and Updateable Coloumns。单击“OK”按钮确认所作的修改。通过以上的操作步骤,一个完整Grid风格的数据窗口对象就创建完成。应用程序中窗口中的数据控件就

36、可以连接和使用这个创建好的数据窗口对象了。3.4前台POS模块的设计前台POS程序由2个输入窗口组成,分别由主程序窗口的“前台POS”菜单下的子菜单“收银管理”、“打印”调用,以便数据输入到数据库的表格中。现以收银管理信息窗口为例来进行说明。首先通过结算权限认证可以进入到收银管理窗口。结算权限认证窗口如下图所示。经过合格认证后,进入如下所示的收银管理信息的窗口。在收银管理窗口最上方放置一个静态文本框控件,显示窗口的用途“购买收银条”。在窗口的中间放置两个数据窗口控件dw_1和dw_2,该控件连接的数据窗口对象是dw_grid、dw_hh。在窗口的最下面放置3个静态文本框3个单行文编辑器和2个按

37、钮控件,其Text分别为“条形码”、“数量”、“现金”、“打印”、“ESC取消”,在其按钮的Click事件分别用来实现数据的打印,与清除数据窗口内容。(1)在窗口的open事件中输入如下的程序代码:sle_1.setfocus()dw_1.settransobject(sqlca)dw_2.settransobject(sqlca)dw_2.retrieve()connect;long liselect count(*) into:li from commodity;if li0 thendelete all from commodity;end if(2)在本窗口还自定义一个key事件上,用

38、于响应键盘回车,在key事件输入如下代码, if key=keyenter! thendw_1.setitem(dw_1.ROWCOUNT(),5,long(sle_2.text)sle_1.text= sle_2.text=sle_1.setfocus()end if(3)在条形码的单行文本编辑控件(sle_1)中输入如下程序代码:用于查找输入商品信息。string lname,lbarcodelong price if len(sle_1.text)=6 thendw_1.insertrow(0)lbarcode=sle_1.textSELECT 出库表.name, 出库表.out_pri

39、ce INTO :lname, :price FROM 出库表 WHERE 出库表.BARCODE=:LBARCODE ;i=dw_1.rowcount() DW_1.ACCEPTTEXT()dw_1.setitem(dw_1.ROWCOUNT(),4,price)dw_1.setitem(dw_1.ROWCOUNT(),3,lname)dw_1.setitem(dw_1.ROWCOUNT(),2,sle_1.text)sle_2.setfocus()end if(4)在数量的单行文本编辑控件(sle_2)输入如下代码,用于修改库存的数量long adouble b,e,numberstrin

40、g ca=DW_1.GETROW()b=integer(sle_2.text)c=dw_1.getitemstring(a,barcode) UPDATE 出库表 SET out_number = out_number-:b where 出库表.barcode=:c;SELECT 出库表.out_number INTO :e FROM 出库表 where 出库表.barcode=:c ; if e=0 thenUPDATE 出库表 SET out_number = out_number+50 where 出库表.barcode=:c; UPDATE devices SET now_number

41、 = now_number-50 where devices.barcode=:c;else messagebox(提示,数据更新成功)end if(5) “打印”按钮控件的Click事件用于打印数据,其程序代码为:if update(dw_1,true,false)=1 then commit;/messagebox(s,保存成功!)elserollback;messagebox(错误!,数据保存失败)end if该窗口是通过调用数据窗口对象(aa)来实现的。Aa窗口如下图所示。该窗口是利用(Composite)风格的数据窗口制作的复合型报表。首先在如下图所示的窗口中选择已经创建好的数据窗口

42、dw_grid和hh。进入数据窗口画板。如下图所示为报表数据窗口的设计图:在Header栏中为报表加一个标题“购物收银条”。还增加7个Text,其标题分别为“店号:21/沈阳店”、“Tel:8008908862”、“*谢谢光临*”、“15天内商品保持原样凭收银条换货”、“7天内商品保持原样凭收银条退货”、“无收银条,恕不受理”。这些标题是一个Text Object对象,该对象可以输入文字,并且设置显示背景和显示字体的颜色。Composite数据窗口创建完毕后,保存该数据窗口aa后退出。(6)“取消”按钮的Click事件中输入的程序代码:dw_1.reset()(7)在数据窗口dw_grid中,

43、采用的是Grid风格,在数据窗口中放置了3个计算列“compue1”、“compue3”、“compue2”和一个文本框“t_4”,分别用于求商品的“小计”、“找零”、 “总计”和“系统时间”,其表达式分别为:compue1(小计)=price*count,compue2(总计)=sum(compue1 for all),compue3(找零)=(cash-compue2)。T_4(时间)=today()。如图所示:在增加的文本“小计”上选择计算按钮控件,然后再对话框中输入要进行计算的字段,选择”ok”,就可以完成操作。其内容如下图所示。其它也是如同。至此,收银管理的窗口程序就编写完毕。实现自

44、动计算的功能。3.5销售日结管理模块的设计销售日结是根据收银管理模块来实现的。主要用于实现对于当天所销售商品的合计。该窗口通过调用收银窗口来实现的。其窗口布局如下图所示。在该窗口中放置了一个数据窗口控件dw_1,连接的数据窗口对象为dw_rj,主要用于对当日所销售商品的销售数量合计。 在该窗口是通过Group 风格来实现的,Group主要用来可以按不同类别进行汇总,以便数据重复显示。在表格中放置两个StaticText,其文本标题分别为“销售数量”、“销售合计”,“销售数量”的表达式为:sum(count for group1),还有一个计算列(compue_1),用来实现销售合计的计算,该Compue_1的表达式为:sum(price*count for group)。至此,该窗口编写完毕。3.6维护管理模块的设计维护程序由一个用户权限维护窗口组成,通过调用权限维护窗口,使用户用于维护数据库中相应表。下面以权限维护窗口为例来进行阐述。在权

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号