版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、仅供个人参考Forpersonaluseonlyinstudyandresearch;notforcommercialuse超市管理系统设计者:指导老师:1、绪论1.1 超市销售系统概述超市销售系统是针对超级市场的销售而开发的。超市销售系统的使用,能转变超市的工作方式,有效提高销售速度和服务水平,提高客户对超市的信任度和满意度,改善客户关系。运用超市销售系统,在销售商品时实行出口一次性付款,做到快速准确。运用超市销售系统,超市内部实现现代化管理,能够准确把握每一种商品的销售动态,可以防止商品断档或过量储备,商品开发方向、进货的适时化都可通过超市销售系统来完成。超市销售系统将手工已编制好的销售账
2、目或根据原始超市销售直接在系统内制作超市销售信息,同时可对输入的超市销售信息进行修改、查询等操作,这种集约化的销售管理模式便于超市销售信息的收集、整理和加工,又便于操作员的需求信息在最短的时间内得到反馈,同时超市销售系统可自动分析各种商品销售变化规律,商品销售结构、居民消费变化等,从而为合理进货、经营、加工、库存、销售等提供科学决策的依据。1.2 应用背景最初的超市资料管理,都是靠人力来完成的。但近几年我国超市经营规模日趋扩大,销售额和门店数量大幅度增加,而且许多超市正在突破以食品为主的传统格局,向品种多样化发展。小型超市在业务上需要处理大量的库存信息,还要时刻更新产品的销售信息,不断添加商品
3、信息,并对商品各种信息进行统计分析。因此,在超市管理中引进现代化的办公软件,实现超市庞大商品的控制和传输,从而方便销售行业的管理和决策,为超市和超市管理人员解除后顾之忧。1.3 设计目标超市销售系统主要实现以下目标:1、信息管理功能:能够即时浏览、添加、删除、修改和查询员工、商品及供货商相关信息。2、日常工作管理:对超市的进货进行管理与登记。3、销售管理:包括客户结账、营业利润分析、销售查询和销售商品单,对整个超市的销售过程进行有效的分析与管理。4、 更新信息:由于商品信息的即时性很强,要求所有商品可以随时被更新、添加或删除等。5、提高服务满意度。1.4 系统技术分析超市销售系统主要采用了De
4、lphi技术和SQLServer2000数据库,分别从Delphi技术的特点、应用范围,以及SQLServer2000数据库的发展、特点和应用等方面进行简述,以明确开发系统所使用的技术有足够的可行性和明显的针对性,并能满足系统移植性能的要求。1.4.1 Delphi技术简介Delphi7是着名的Borland(现Inprise)公司开发的快速、可视化程序开发工具。“真正的程序员用C+,聪明的程序员用Delphi",这句话是对Delphi最经典、最实在的描述。Delphi被称为第四代编程语言,它具有简单、高效、功能强大的特点。和VC相比,Delphi更简单、更易于掌握,但是在功能上却丝
5、毫不逊色;和VB相比,Delphi则功能更强大、更实用。可以说Delphi同时兼备了VC功能强大和VB简单易学的特点,它一直是程序员至爱的编程工具。Delphi具有以下几个特性:基于窗体和面向对象的方法、高速的编译器、强大的数据库支持、与Window斓程紧密结合、强大而成熟的组件技术。但最重要的还是ObjectPascal语言,它才是一切的根本。ObjectPascal语言是在Pascal语言的基础上发展起来的,简单易学2。1.4.2 SQLServer2000技术简介超市销售系统的开发选择了MicrosoftSQLServer2000数据库。SQL适用于中小型事物处理及客户端/服务端结构的应
6、用系统,它功能强大操作简便,日益为广大数据库用户所喜爱,越来越多的开发工具提供了与SQLServer的接口。SQLServer最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本,在WindowsNT推出后,Microsoft与Sybase在SQLServer的开发上就分道扬镳了,Microsoft将SQLServer移植到WindowsNT系统上,专注于开发、推广SQLServer的WindowsNT版本3。SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统的最新版本,是一个分布式的关系
7、型数据库管理系统,具有客户机/服务器体系结构,采用了Transact-sql的sql语言在客户机与服务器间传递客户机的请求与服务器的处理结果。SQLServer2000能够满足今天的商业环境要求不同类型的数据库解决方案,它是一种应用广泛的数据库管理系统,具有许多显着的优点:易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等4。性能、可伸缩性及可靠性是基本要求,而进入市场时间也非常关键,除这些核心企业品质外,SQLServer2000还为您的数据管理与分析带来了灵活性,允许单位在快速变化的环境中从容响应,从而获得竞争优势。该版本继承
8、了SQLServer7.0版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好与相关软件集成程度高等优点。可跨越从运行MicrosoftWindows98的膝上型电脑到运行MicrosoftWindows2000的大型多处理器的服务器等多种平台使用。MSSQLServer不但可以应用于大中型数据库管理中,建立分布式关系数据库,并且也可以开发桌面数据库。事实上,SQLServer数据库处理的基本结构,采取关系型数据库模式,尽管如此,相信大家都可以轻易的发现,在SQLServer的数据库处理方式,则是使用面向对象的操作方式与精神,也就是说,SQLServer的所有功能,都可以基于
9、系统已经建立好的一些对象来达成,是相当OO(面向对象)的一个系统结构。SQLServer企业管理器是SQLServer的主要管理工具,它提供了一个遵从MMCB准的用户界面,使用户得以:1、定义SQLServer实例组。2、将个别服务器注册到组中。3、为每个已注册的服务器配置所有SQLServer选项。4、在每个已注册的服务器中创建并管理所有SQLServer数据库、对象、登录、用户和权限。5、在每个已注册的服务器上定义并执行所有SQLServer管理任务。6、通过唤醒调用SQL查询分析器,交互地设计并测试SQL语句、批处理和脚本。它支持中小型数据库、多用户的高性能和事物处理,支持分布式数据库和
10、分布处理,能够实现安全性和完整性控制,具有可移植性、可兼容性和可联结性,它具有良好的数据管理能力和良好的开发性5。2、总体方案设计2.1设计原理1、模块化模块是构成程序的基本构件,模块化就是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户需求。采用模块化原理可以使软件结构清晰,不仅容易设计也容易阅读和理解。该系统正是采用模块化的原理,将整个系统分成四个主要模块,每个模块都有它独立的功能,整个超市销售系统结构清晰,用户容易理解和操作。2、抽象当考虑对任何问题的模块化解法时,可以提出许多抽象的层次,系统设计过程的每一步都是对
11、软件解法的抽象层次的一次精化,在可行性研究阶段,是对整个超市销售系统的抽象,在需求分析阶段,是对超市销售系统功能的抽象。3、逐步求精逐步求精是对整个设计过程的细化,由可行性研究到需求分析,再到总体设计和详细设计,每一步都对超市销售系统进行了细化,这样使超市销售系统的结构越来越清晰,功能越来越完善。4、信息隐藏和局部化在超市销售系统的设计过程中,涉及到许多数据信息,有的信息对于不需要它的模块来说是不能访问的,需要隐藏起来,而局部化有助于实现信息隐藏,该系统正是运用了这一原理来进行设计的。5、模块独立该系统的各个模块之间没有过多的相互作用,每个模块的功能都比较独立,这样的软件容易开发出来。系统的各
12、模块都相对独立,修改设计和程序需要的工作量比较小,错误传播范围小,需要扩充功能时能够插入模块,这样系统比较容易测试和维护。2.2功能模块设计模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块都按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。根据前面在可行性分析时对系统提出的要求以及在需求分析阶段提出的系统功能需求,将系统结构分成四个模块:基本信息管理模块、日常工作管理模块、销售管理模块、统计报表模块,每个模块的具体功能如下:1、信息管理模块:实现对员工、商品、供货商、会员等基本信息管理的功能,让管理层对整个超市的人事及商
13、品有详细的了解,这个模块包括“员工管理”、“商品管理”、“供货商管理”三个功能模块。(1) 员工信息管理,这个模块对超市的所有员工的信息进行登记管理,包括添加、修改、删除、查询操作。(2) 商品信息管理和供货商信息管理,这两个模块功能同员工信息管理模块。2、日常工作管理:实现对整个超市的日常工作管理的功能,使整个超市的工作井然有序,这个模块包括“进货管理”一个功能模块。(1)进货管理,这个模块对超市所购进的商品进行登记。3、销售管理模块:是系统最主要的模块,对商品的销售进行一条龙管理,能够对每日商品销售信息进行输入、查询、统计等操作。这个模块包括“营业利润分析”、“客户结账”、“销售查询”三个
14、模块。(1) 营业利润分析,这个模块通过对商品销售的分析,得出各种商品的所得利润及整个超市公司的收益。同时帮助超市经营者掌握和分析营销情况,及时做出正确决策。(2) 客户结账,超市在销售商品时,对客户所购买商品的信息进行登记,并结算客户销售金额。(3) 销售查询,这个模块实现对销售商品、销售金额等的查询功能。功能模块如图4.1所示。图4.1超市销售系统功能模块图2.3 数据库设计数据库是信息管理的基础,其结构直接关系到各种功能的实现和程序运行的效率,进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)11。根据上一章的需求分析,建立了一个数据库名为:超市管理系统的数据库,其中有六个数
15、据表。不得用于商业用途仅供个人参考员工信息表:此表中记录了员工的所有信息,管理员通过此表对员工进行添加、删除、修改管理,也可通过此表查询某个员工的信息,此表的主键为“员工编号”。其结构如表4.1所示。表4.1员工信息表的结构字段名数值类型(长度)是否允许为空员工编号Char(10)否员工姓名char(10)否性别char(2)否身份证号Char(18)否家庭住址Varchar(30)否联系电话char(20)否职务Varchar(10)否商品信息表:此表记录了超市的所有商品信息,管理人员可以通过此表对商品进行添加、删除、修改等操作,在进货管理、客户结账过程中,都涉及到对此表的操作,此表的主键是
16、商品编号。其结构如表4.2所示。表4.2商品信息表的结构字段名数值类型(长度)是否允许为空商口口编pChar(20)否商品名称Char(20)否商品类型Char(10)否供货商编号Char(20)否进价Char(10)否售价Char(10)否备注Char(16)是入库信息表:此表主要记录进货商品的相关信息,以方便以后管理员查看进货信息,此表的主键是RK_IQ其结才如表4.4所示。表4.4入库信息表的结构字段名数值类型(长度)是否允许为空进货单号Char(20)否商口口编pChar(20)否供货商名称Char(30)否进货数量Char(10)否进价Char(10)否进货时间Char(20)否经手
17、人Char(10)否销售信息表:此表记录了超市所有商品销售记录,营业利润分析通过此表进行分析统计,销售详细单也是通过此表打印的。具结构如表4.5所示。表4.5销售信息表的结构字段名数值类型(长度)是否允许为空流水账号Char(20)否商口口编pChar(20)否商品名称Char(30)否单价Char(10)否数量Char(10)否总价Char(19)否销售日期Char(10)否收银员Char(10)否供货商信息表:此表记录了所有供货商的基本信息,其结构如表4.6所示表4.6供货商信息表的结构字段名数值类型(长度)是否允许为空供货商编号Char(10)否供货商名称Char(30)否联系人Char
18、(10)否联系电话Char(20)否联系地址Char(30)否备注Char(250)是用户登录表:此表主要记录了员工的密码信息,可进行相关查询,修改。此表的主键是用户编号。其结构如表4.8所示。表4.8会员充值记录表的结构字段名数值类型(长度)是否允许为空员工编号Char(20)否密码Char(10)是职务Varchar(10)是2.4 小结这一部分主要是对超市销售系统进行总体设计,得出设计此系统的原理以及功能模块,设计出此系统的数据库,为下面进行系统详细设计奠定基础。3、系统详细设计与实现通过前部分的分析与设计,接下来进行系统的详细设计,详细设计的根本目标是确定应该怎样具体地实现所要求的系统
19、,主要任务是设计出程序的“蓝图”,再根据这个蓝图写出实际的程序代码。3.1系统窗口的设计与实现进入系统,首先会出现系统窗口,分别有“系统介绍”,“用户登录”,“关于我们”,“退出系统”的功能键指导用户使用本系统。窗体上的组件位置如图3.1 所示。图3.1系统窗体设计界面3.2 登录窗体的设计与实现为了提高系统的安全性,在超市销售系统的登录界面设置用户以及密码。用户登录窗体很简单,首先在用户输入框输入用户身份,再输入用户名,然后对应输入口令,程序将与用户数据库连接,确认用户是其中一员,并输入了正确的口令,然后进入主界面,否则警告出错,让用户重新输入。窗体上的组件位置如图3.2所示不得用于商业用途
20、仅供个人参考图3.2登录窗体设计界面登录的关键代码如下::='select*from用户登录表where员工编号='+QuotedStr(Edit1.Text);(Trim(ADOQuery1.FieldByName('职务').AsVariant尸'老板')Trim(ADOQuery1.FieldByName('用户名').AsVariant尸Trim(edit2.Text)Trim(ADOQuery1.FieldByName(职务).AsVariant)=Trim(edit3.Text)3.3 主窗体模块的设计与实现主窗体模块
21、主要是完成系统功能模块的划分。超市销售系统主窗体包括四个下拉菜单:基本信息管理菜单、日常工作管理菜单、销售管理菜单、统计表菜单,考虑到有些功能是经常使用的,另外在窗体上设置了快捷按钮,以便操作更快捷。在设置该窗体时主要是设置MainMeun组件的属性。双击MainMeunS件,建立如下的下拉选单:基本信息管理日常工作管理销售管理密码管理基本信息管理模块实现了对员工、供货商、商品信息的添加、修改、删除、查询等功能该模块窗体上的组件位置如图3.4所示仅供个人参考3.4基本信息窗体设计界面设置PageControl组件的属性:右击此组件,在弹出的菜单中选择NewPag,e将其Caption属性设置成
22、“员工信息”,相同的方法添加“商品信息”、“供货商信息”、“商品信息”三个页面;设置DataSource组件的属性:DataSourcel设置DataSet=ADOQuery1DataSource2设置DataSet=ADOQueryl,DataSource3设置DataSet=ADOQuery1;设置DBGrid组件的属性:DBGridl设置DataSource=DataSourcel,DBGrid2设置DataSource=DataSource2,DBGrid3设置DataSource=DataSource3其中员工管理的主要代码如下:1、查询按钮的主要代码如下:ADOQuery1.Clo
23、se;*from员工信息表where'+SQL;ADOQuery1.Open;2 、添加的主要代码如下:ADOQuery1.Close;into员工信息表');,姓名,性别,身份证号,家庭住址,联系电话,职务)');,'+QuotedStr(Edit2.Text)+','+QuotedStr(ComboBox1.Text)+','+QuotedStr(Edit3.Text)+','+QuotedStr(Edit4.Text)+','+QuotedStr(Edit5.Text)+','
24、+QuotedStr(Edit6.Text)+')');ADOQuery1.ExecSQL;3 .添加的主要代码如下:ADOQuery1.Close;from员工信息表where'+SQL;ADOQuery1.ExecSQL;ADOQueryl.Close;3.5 日常工作管理模块的设计与实现进货管理的功能主要是将购进的商品进行入库。在入库时由工作人员将商品信息输入到入库信息表中,然后系统将入库的商品的名称与库存里的商品信息比较,如果能找到相同的名称,则说明库存里有这种商品,只要相应增加这种商品的库存量,如果找不到,则说明原来库存里没有这种商品,则要增加这种商品的一系列
25、信息。进货的信息会显示在窗体上的数据表中。进货窗体如图3.5所示。图5.3进货管理窗体主要代码如下:* 1)、进货主要代码ADOQuery2.Close;;into进货信息表');,商品编号,商品名称,供货商名称,进货数量,进彳,进货时间,经手人);,'+QuotedStr(Edit1.Text)+','+QuotedStr(Edit2.Text)+','+QuotedStr(Edit3.Text)+','+QuotedStr(Edit4.Text)+','+QuotedStr(Edit5.Text)+',
26、:Time,'+QuotedStr(ComboBox1.Text)+');,Date)+formatdatetime('hhmmss',now();,now);ADOQuery2.ExecSQL;ADOQuery2.Close;* from进货信息表');ADOQuery2.Open;showmessage(入库成功!,);ADOQuery2.Close;* from进货信息表where'+SQL;ADOQuery2.Open;(2)、向combobox组件中自动添加表中内容的代码如下(以向combobox4中添加自动添加商品的名称为例):ADO
27、Query1.Close;* from员工信息表where职务=''进货员''');ADOQuery1.Open;ComboBox1.Clear;fori:=0toADOQuery1.RecordCount-1dobegin;ADOQuery1.Next;end;3.6 销售管理模块的设计与实现销售管理模块是超市销售系统的最主要也是最重要的模块,所有与销售有关的功能都在此模块当中,此模块所产生的数据也是数据库中数量最大的最重要的数据。此模块主要包括四个子模块:客户结账模块、利润分析模块、销售查询模块。3.6.1 客户结账模块的设计与实现客户结账模块是顾客
28、在购买商品时,由收银员将顾客购买的商品名称输入到销售窗口中,系统自动根据商品名称把这种商品的相应商品价格和应付金额反馈到数据窗口中,客户交钱后自动计算找零金额。其窗体如图3.6所示I.X.图3.6客户结账窗体其中关键代码如下:Pay_M:=0;fori:=0tojdobeginPay_M:=Pay_M+Alli;end;Edit3.Text:=Floattostr(Pay_M);change:=strtofloat(Edit4.Text)-Pay_M;Edit5.Text:=Floattostr(change);2、往销售表中添加客户此次销售的信息的关键代码:ADOQuery2.Close;i
29、nto销售信息表');,商品编号,商品名称,单价,数量,总计,时间,收银员)');,'+QuotedStr(Edit1.Text)+',:C_Name,:S_P,'+QuotedStr(Edit2.Text)+',:Total,:Time,'+QuotedStr(ComboBox1.Text)+')');,now);ADOQuery2.ExecSQL;3.6.2 利润分析的设计与实现利润分析模块主要是对超市的收入进行统计与分析,根据四个不同的分析条件,得出相应条件下销售商品的数量、销售商品的总成本、销售商品的总收入和利润收
30、入。其中销售商品的数量则是将不同条件下的每次销售商品的数量相加,总成本是不同条件下的每次销售商品的进价总和,总收入是不同条件下的每次销售商品的售价总和,利润则是将不同条件下的总收入减去总成本。利润分析窗体如图3.7所示。1、按日统计的关键代码:SQL:=ComboBox1.Text+'-'+ComboBox2.Text+'-'+ComboBox3.Text;SQL:='时间='+Quotedstr(SQL);2、按月统计的关键代码:SQL:=ComboBox4.Text+'-'+ComboBox5.Text+'-'
31、+'%'SQL:='时间like'+Quotedstr(SQL);图3.7营业利润分析窗体3、按季度统计的关键代码:beginifTrim(ComboBox7.Text尸第一季度'thenbeginSQLk'时间like'+Quotedstr(ComboBox6.Text+'-'+'1'+'-'+'%');SQLkSQL+'or'+'时间like'+Quotedstr(ComboBox6.Text+'-'+2+'%
32、9;);SQLkSQL+'or'+'时间like'+Quotedstr(ComboBox6.Text+'-'+'3'+'%');end;ifTrim(ComboBox7.Text尸第二季度'thenbeginSQLk'时间like'+Quotedstr(ComboBox6.Text+'-'+'4'+'%');SQLkSQL+'or'+'时间like'+Quotedstr(ComboBox6.Text+'-
33、'+5+'%');SQLkSQL+'or'+'时间like'+Quotedstr(ComboBox6.Text+'-'+'6'+'%');end;ifTrim(ComboBox7.Text尸第三季度'thenbeginSQLk'时间like'+Quotedstr(ComboBox6.Text+'-'+7+'%');SQLkSQL+'or'+'时间like'+Quotedstr(ComboBox6.Text
34、+'-'+'8'+'%');SQLkSQL+'or'+'时间like'+Quotedstr(ComboBox6.Text+'-'+'9'+'%');不得用于商业用途仅供个人参考end;ifTrim(ComboBox7.Text尸第四季度'thenbeginSQLk'时间like'+Quotedstr(ComboBox6.Text+'-'+'10'+'%');SQLkSQL+'or'
35、+'时间like'+Quotedstr(ComboBox6.Text+'-'+'11'+'%');SQLkSQL+'or'+'时间like'+Quotedstr(ComboBox6.Text+'-'+'12'+'%');end;4、按指定日期区间统计的关键代码:beginTime1:=ComboBox8.Text+'-'+ComboBox9.Text+'-'+ComboBox10.Text;Time2:=ComboBox11.Text+'-'+ComboBox12.Text+'-'+ComboBox13.Text;SQL:='时间between'+Quotedstr(Time1)+'and'+Quotedstr(Time2);end;3.6.3 销售查询的设计与实现销售查询模块是实现管理对超市所销售出去的商品的查询功能,根据
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年版坚定初心专题教育培训协议版B版
- 2024年环保项目质押担保及反担保合同范本解析3篇
- 2024年环保项目抵押融资担保合同示范文本3篇
- 房屋租赁合同模板锦集九篇
- 小学二年级教学工作计划
- 无人货架项目效益分析报告
- 中国移动CAD行业市场运行现状及投资战略研究报告
- 谁的尾巴中班教案
- 石油化工非标设备项目可行性研究报告
- 2025-2031年中国海南省生态旅游行业发展前景预测及投资方向研究报告
- 财富管理课程设计
- 燃烧仿真.燃烧仿真软件:OpenFOAM:湍流燃烧仿真原理
- 2024-2025学年七年级语文上册第一学期 期末综合模拟测试卷(人教版)
- 浙江省台金七校2023-2024学年高一下学期4月期中考试英语试题
- 蓝色卡通风胃肠减压护理
- 小学单位换算-体积
- 叉车自行检查记录表
- 2024新安全生产法知识考试题库及答案大全
- 专题5 书面表达-2023-2024学年译林版五年级上册英语期末专题复习
- 2024年中国科学技术大学创新班物理试题答案详解
- 《调水工程设计导则SL-T430-20XX-条文说明》
评论
0/150
提交评论