1超市管理系统设计者:指导老师:21、绪论1.1超市销售系统概述超市销售系统是针对超级市场的销售而开发的。超市销售系统的使用,能转变超市的工作方式,有效提高销售速度和服务水平,提高客户对超市的信任度和满意度,改善客户关系。运用超市销售系统,在销售商品时实行出口一次性付款,做到快速准确。运用超市销售系统,超市内部实现现代化管理,能够准确把握每一种商品的销售动态,可以防止商品断档或过量储备,商品开发方向、进货的适时化都可通过超市销售系统来完成。超市销售系统将手工已编制好的销售账目或根据原始超市销售直接在系统内制作超市销售信息,同时可对输入的超市销售信息进行修改、查询等操作,这种集约化的销售管理模式便于超市销售信息的收集、整理和加工,又便于操作员的需求信息在最短的时间内得到反馈,同时超市销售系统可自动分析各种商品销售变化规律,商品销售结构、居民消费变化等,从而为合理进货、经营、加工、库存、销售等提供科学决策的依据。1.2应用背景最初的超市资料管理,都是靠人力来完成的。但近几年我国超市经营规模日趋扩大,销售额和门店数量大幅度增加,而且许多超市正在突破以食品为主的传统格局,向品种多样化发展。小型超市在业务上需要处理大量的库存信息,还要时刻更新产品的销售信息,不断添加商品信息,并对商品各种信息进行统计分析。因此,在超市管理中引进现代化的办公软件,实现超市庞大商品的控制和传输,从而方便销售行业的管理和决策,为超市和超市管理人员解除后顾之忧。1.3设计目标超市销售系统主要实现以下目标:1、信息管理功能:能够即时浏览、添加、删除、修改和查询员工、商品及供货商相关信息。2、日常工作管理:对超市的进货进行管理与登记。3、销售管理:包括客户结账、营业利润分析、销售查询和销售商品单,对整个超市的销售过程进行有效的分析与管理。4、更新信息:由于商品信息的即时性很强,要求所有商品可以随时被更新、3添加或删除等。5、提高服务满意度。1.4系统技术分析超市销售系统主要采用了Delphi技术和SQLServer2000数据库,分别从Delphi技术的特点、应用范围,以及SQLServer2000数据库的发展、特点和应用等方面进行简述,以明确开发系统所使用的技术有足够的可行性和明显的针对性,并能满足系统移植性能的要求。1.4.1Delphi技术简介Delphi7是著名的Borland(现Inprise)公司开发的快速、可视化程序开发工具。“真正的程序员用C++,聪明的程序员用Delphi”,这句话是对Delphi最经典、最实在的描述。Delphi被称为第四代编程语言,它具有简单、高效、功能强大的特点。和VC相比,Delphi更简单、更易于掌握,但是在功能上却丝毫不逊色;和VB相比,Delphi则功能更强大、更实用。可以说Delphi同时兼备了VC功能强大和VB简单易学的特点,它一直是程序员至爱的编程工具。Delphi具有以下几个特性:基于窗体和面向对象的方法、高速的编译器、强大的数据库支持、与Windows编程紧密结合、强大而成熟的组件技术。但最重要的还是ObjectPascal语言,它才是一切的根本。ObjectPascal语言是在Pascal语言的基础上发展起来的,简单易学[2]。1.4.2SQLServer2000技术简介超市销售系统的开发选择了MicrosoftSQLServer2000数据库。SQL适用于中小型事物处理及客户端/服务端结构的应用系统,它功能强大操作简便,日益为广大数据库用户所喜爱,越来越多的开发工具提供了与SQLServer的接口。SQLServer最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本,在WindowsNT推出后,Microsoft与Sybase在SQLServer的开发上就分道扬镳了,Microsoft将SQLServer移植到WindowsNT系统上,专注于开发、推广SQLServer的WindowsNT版本[3]。SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统的最新版本,是一个分布式的关系型数据库管理系统,具有客户机/服务器体系结构,采用了Transact-sql的sql语言在客户机与服务器间传递客户机的请求与服务器的处理结果。SQLServer2000能够满足今天的商业环境要求不同类型的4数据库解决方案,它是一种应用广泛的数据库管理系统,具有许多显著的优点:易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等[4]。性能、可伸缩性及可靠性是基本要求,而进入市场时间也非常关键,除这些核心企业品质外,SQLServer2000还为您的数据管理与分析带来了灵活性,允许单位在快速变化的环境中从容响应,从而获得竞争优势。该版本继承了SQLServer7.0版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好与相关软件集成程度高等优点。可跨越从运行MicrosoftWindows98的膝上型电脑到运行MicrosoftWindows2000的大型多处理器的服务器等多种平台使用。MSSQLServer不但可以应用于大中型数据库管理中,建立分布式关系数据库,并且也可以开发桌面数据库。事实上,SQLServer数据库处理的基本结构,采取关系型数据库模式,尽管如此,相信大家都可以轻易的发现,在SQLServer的数据库处理方式,则是使用面向对象的操作方式与精神,也就是说,SQLServer的所有功能,都可以基于系统已经建立好的一些对象来达成,是相当OO(面向对象)的一个系统结构。SQLServer企业管理器是SQLServer的主要管理工具,它提供了一个遵从MMC标准的用户界面,使用户得以:1、定义SQLServer实例组。2、将个别服务器注册到组中。3、为每个已注册的服务器配置所有SQLServer选项。4、在每个已注册的服务器中创建并管理所有SQLServer数据库、对象、登录、用户和权限。5、在每个已注册的服务器上定义并执行所有SQLServer管理任务。6、通过唤醒调用SQL查询分析器,交互地设计并测试SQL语句、批处理和脚本。它支持中小型数据库、多用户的高性能和事物处理,支持分布式数据库和分布处理,能够实现安全性和完整性控制,具有可移植性、可兼容性和可联结性,它具有良好的数据管理能力和良好的开发性[5]。2、总体方案设计2.1设计原理1、模块化5模块是构成程序的基本构件,模块化就是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户需求。采用模块化原理可以使软件结构清晰,不仅容易设计也容易阅读和理解。该系统正是采用模块化的原理,将整个系统分成四个主要模块,每个模块都有它独立的功能,整个超市销售系统结构清晰,用户容易理解和操作。2、抽象当考虑对任何问题的模块化解法时,可以提出许多抽象的层次,系统设计过程的每一步都是对软件解法的抽象层次的一次精化,在可行性研究阶段,是对整个超市销售系统的抽象,在需求分析阶段,是对超市销售系统功能的抽象。3、逐步求精逐步求精是对整个设计过程的细化,由可行性研究到需求分析,再到总体设计和详细设计,每一步都对超市销售系统进行了细化,这样使超市销售系统的结构越来越清晰,功能越来越完善。4、信息隐藏和局部化在超市销售系统的设计过程中,涉及到许多数据信息,有的信息对于不需要它的模块来说是不能访问的,需要隐藏起来,而局部化有助于实现信息隐藏,该系统正是运用了这一原理来进行设计的。5、模块独立该系统的各个模块之间没有过多的相互作用,每个模块的功能都比较独立,这样的软件容易开发出来。系统的各模块都相对独立,修改设计和程序需要的工作量比较小,错误传播范围小,需要扩充功能时能够插入模块,这样系统比较容易测试和维护。2.2功能模块设计模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块都按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。根据前面在可行性分析时对系统提出的要求以及在需求分析阶段提出的系统功能需求,将系统结构分成四个模块:基本信息管理模块、日常工作管理模块、销售管理模块、统计报表模块,每个模块的具体功能如下:1、信息管理模块:实现对员工、商品、供货商、会员等基本信息管理的功能,让管理层对整个超市的人事及商品有详细的了解,这个模块包括“员工管理”、“商品管理”、“供货商管理”三个功能模块。6(1)员工信息管理,这个模块对超市的所有员工的信息进行登记管理,包括添加、修改、删除、查询操作。(2)商品信息管理和供货商信息管理,这两个模块功能同员工信息管理模块。2、日常工作管理:实现对整个超市的日常工作管理的功能,使整个超市的工作井然有序,这个模块包括“进货管理”一个功能模块。(1)进货管理,这个模块对超市所购进的商品进行登记。3、销售管理模块:是系统最主要的模块,对商品的销售进行一条龙管理,能够对每日商品销售信息进行输入、查询、统计等操作。这个模块包括“营业利润分析”、“客户结账”、“销售查询”三个模块。(1)营业利润分析,这个模块通过对商品销售的分析,得出各种商品的所得利润及整个超市公司的收益。同时帮助超市经营者掌握和分析营销情况,及时做出正确决策。(2)客户结账,超市在销售商品时,对客户所购买商品的信息进行登记,并结算客户销售金额。(3)销售查询,这个模块实现对销售商品、销售金额等的查询功能。功能模块如图4.1所示。图4.1超市销售系统功能模块图2.3数据库设计数据库是信息管理的基础,其结构直接关系到各种功能的实现和程序运行的效率,进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)[11]。根据上一章的需求分析,建立了一个数据库名为:超市管理系统的数据库,其中有六个数据表。员工信息表:此表中记录了员工的所有信息,管理员通过此表对员工进行添加、删除、修改管理,也可通过此表查询某个员工的信息,此表的主键为“员工超市销售系统基本信息管理日常工作管理销售管理密码管理员工信息管理商品信息管理供货商信息管理进货管理客户结账销售查询营业利润分析密码信息修改密码7编号”。其结构如表4.1所示。表4.1员工信息表的结构字段名数值类型(长度)是否允许为空员工编号Char(10)否员工姓名char(10)否性别char(2)否身份证号Char(18)否家庭住址Varchar(30)否联系电话char(20)否职务Varchar(10)否商品信息表:此表记录了超市的所有商品信息,管理人员可以通过此表对商品进行添加、删除、修改等操作,在进货管理、客户结账过程中,都涉及到对此表的操作,此表的主键是商品编号。其结构如表4.2所示。表4.2商品信息表的结构入库信息表:此表主要记录进货商品的相关信息,以方便以后管理员查看进货信息,此表的主键是RK_ID。其结构如表4.4所示。表4.4入库信息表的结构字段名数值类型(长度)是否允许为空进货单号Char(20)否商品编号Char(20)否供货商名称Char(30)否进货数量Char(10)否进价Char(10)否进货时间Char(20)否经手人Char(10)否字段名数值类型(长度)是否允许为空商品编号Char(20)否商品名称Char(20)否商品类型Char(10)否供货商编号Char(20)否进价Char(10)否售价Char(10)否备注Char(16)是8销售信息表:此表记录了超市所有商品销售记录,营业利润分析通过此表进行分析统计,销售详细单也是通过此表打印的。其结构如表4.5所示。表4.5销售信息表的结构字段名数值类型(长度)是否允许为空流水账号Char(20)否商品编号Char(20)否商品名称Char(30)否单价Char(10)否数量Char(10)否总价Char(19)否销售日期Char(10)否收银员Char(10)否供货商