基于PB和C/S的超市管理系统的设计实现
2019-05-22范晓云
范晓云
摘 要:文章基于对多家中小型超市的考察、调研和经营管理状态的分析,针对现今中小超市的管理模式和所处管理阶段,采用第4代开发工具PowerBuilder、高性能的SQL Server和C/S 3层结构,开发了适合中小超市管理现状和未来发展的界面友好、简单易用、安全可靠、功能易扩展的超市管理系统,实现了系统管理、商品进销存管理、客户管理、定单管理、商品报表、统计、查询等功能,经测试及实际使用验证了系统的功效。
关键词:中小超市;管理系统;商品管理;PowerBuilder;SQL Server
“互联网+”时代,运用计算机及网络技术参与超市管理是提升管理效率、实现管理现代化的最佳途径。目前,国内外知名大超市均建立了管理系统。但国外系统由于文字和管理模式不同,不适合国内超市。国内成熟的管理系统也并不适用于所有超市,特别对处于管理现代化初、中级阶段的中小超市,功能过于全面不但针对性差且不实用。另外,从技术上看,有些超市管理系统采用的是早期第3代编程语言如Pascal、C语言等。数据库采用的是过时的主机或文件服务器应用模式,数据处理慢、更新准确性差。有些系统使用费用高,功能扩展不便捷。根据以上情况,基于对多家中小型超市的考察、调研和经营管理状态的分析,针对现今中小超市的管理模式和所处管理阶段,采用功能强大的第4代开发工具PB、高性能的SQL Server和C/S 3层结构,开发了适合中小超市管理现状和未来发展的超市管理系统。
1 系统功能结构
本超市管理系统实现了中小超市的系统管理、商品进销存管理、定单管理、客户管理、商品报表、统计、查询等功能。通过系统能快速、准确、直观地处理和了解商品库存、销售、客户、定单等信息,快速查询、统计信息、生成和打印相关的报表和统计图表,系统的功能结构如图1所示。
2 系统实现
系统采用功能强大的第4代开发工具PB 12[1]、高性能数据库管理系统SQL Server 2014[2]和C/S 3层结构[3]开发。实际应用时,服务器上安装Windows 2016 Server和SQL Server 2014(企业版),客户端上安装Windows XP及以上操作系统和本超市管理系统。
2.1 使用技术
(1)快速开发工具(Power Builder,PB)是面向对象、可视化的数据库应用系统开发工具和集成环境,是第4代开发工具。可开发C/S、.NET 、Internet(Web Services)应用系统,开发出的界面类似Windows界面,最大优势是支持交叉平台开发和不用SQL代码就能操作不同数据库且独立于数据库。如在Windows下开发的PB程序可发布到UNIX平台运行,反之也可以运行。能连接SY base、SQL Server、Oracle等大型数据库,也支持其他数据源如Excel等。
(2)SQL SERVER是基于Windows、满足C/S的可扩充、高性能、先进的数据库管理系统。存储安全可靠、与软件集成度高,可应用于膝上电脑到大型多處理器服务器等多平台,满足数据爆炸和下一代数据驱动应用程序的需求。
(3)C/S(客户/服务器)3层结构,即客户端只有一个简单exe程序,服务器端是一个应用服务器,后台是数据库,功能主要在服务器上实现。此结构有良好的稳定性、跨平台性和严密的数据安全性,是当前和今后管理软件的主流结构。3者结合既能开发出优秀的适合中小超市管理现状的管理系统,还为中小超市今后扩大规模和连锁经营提供基础。
2.2 开发策略
PB开发是以对象为核心、以事件为驱动,所以用PB进行应用程序开发的策略是:系统设计→建立PB应用→建立窗口对象并定义其属性、事件、程序→在窗口上建立控件对象并定义其属性、事件、程序→调试→运行→测试。
2.3 系统主窗口
设计的系统主窗口如图2所示,界面与Windows类似,操作方法也一样,中间灰色区是数据操作区。
主菜单及所有菜单项如图3所示,是按图1系统功能结构设计的。第3行有快捷工具栏,指向某按钮均有中文提示。
2.4 主要模块设计举例
系统功能较多,仅以“商品管理”中“商品出库”子模块为例说明设计实现方法。
2.4.1 “商品出库”设计实现
(1)功能。凡商品从库房提出,库管员要在“商品出库登记窗口(见图5)”登记,由程序自动更新“商品出库表”和“商品库存信息表”,并在“操作日志表”留下操作记录。
(2)流程如图4所示。
(3)数据窗口、按钮。“商品出库”有两个数据窗口:“现有商品库存信息”窗口(见图5)、“商品出库登记窗口”(见图5),还有“出库登记”等3个按钮。
(4)代码举例。其中,单击“出库登记”按钮实现的功能是:在左侧“商品出库登记窗口”出现商品编码、商品名称、出库日期等几行文本框,接受用户输入登记出库商品信息。
**“出库登记”按钮---单击事件代码**
//插入一行
G_RowNumber=dw_2.InsertRow(0)
dw_2.SetFocus()
//到当前行
dw_2.ScrollToRow(G_RowNumber)
// 自动设置入库时间为当前系统时间
date t_d
time t_t
t_d = today()
t_t = now()
dw_2.SetItem(G_RowNumber,"out_date",datetime(t_d,t_t))
//设置焦点到第3列
dw_2.SetColumn(1)
2.4.2 “相关统计”子模块简介
该模块功能是根据商品库存信息生成统计图表,便于用户直观了解、掌握商品的现有库存情况,为商品的进货和销售决策提供依据,还可以转换成Excel文件,便于打印和进行更多数据处理。数据窗口(见图6)是选取表1的商品编号、名称、现有数量字段创建。窗口设置了柱状图、饼状图等供用户选择。
3 系统测试
测试贯穿于系统开发整个阶段。首先,按照系统的功能、性能设计要求,开发过程中不断测试功能实现性、结构合理性、逻辑正确性,并始终站在用户角度测试是否具有易操作性,对用户容易出现问题和不知如何操作的地方均给出提示,对各种运行结果全部编写了反馈信息。其次,开发完成后采用黑盒测试[4]全面测试了系统的功能、性能,并进行实际使用的验收测试。经几家中小超市的使用,效果良好,且用户无须经过复杂培训仅凭开发人员简单讲解或阅读本系统的联机帮助就能轻松掌握。经测试,本系统实现了设计功能且界面友好、简单易用、安全可靠、功能易扩展。由于使用了可运行多平台、操作多个数据库的PB和高性能的SQL Server、主流C/S 3层结构,还为中小超市今后扩大规模和连锁经营在技术上做好了准备,因此,本系统是既适合中小超市管理现状也适合其未来发展的优秀管理系统。
4 结语
本系统是针对中小超市管理现状及未来发展开发的管理系统,由于选用先进而恰当的实现技术,除了能满足中小超市当前的管理需求,还为中小超市未来扩大经营和连锁经营预留了扩展空间。本系统的应用可以对中小超市实现规范化、现代化、网络化管理发挥积极作用。
[参考文献]
[1]郑阿奇,殷红先,张为民.PowerBuilder实用教程[M].北京:电子工业出版社,2013.
[2]陈承欢.SQL Server 2014数据库应用、管理与设计[M].北京:电子工业出版社,2016.
[3]籍慧文.B\S和C\S的架构分析[J].电子技术与软件工程,2017(3):202-203.
[4]易禹,廖年冬.软件测试简明教程[M].武汉:武汉大学出版社,2012.