课 程 设 计 任 务 书
设计题目:小型超市管理系统 设计要求:
1. 按照数据库系统开发的方法步骤开发给定题目对应的数据库系统,并编写相应文档;
2. 使用VFP6.0设计数据库和数据库表,注意把握数据库的设计原则; 3. 要求设计的应用程序界面友好,操作方便,但界面和风格没有具体的要求,各人按照自己的思路去做,发挥自己的创造能力;
4. 将以上设计整理编写出《课程设计说明书》,字数不少于8000字,页数不少于25页。
5. 按期完成课程设计任务,时间为2周。
班级:电子商务1203
姓名:宋建辉 指导教师:李伟
2013年5月22日
目录
论文摘要 „„„„„„„„„„„„„„„„„„„„„„„„„„„„1 一、系统调查
1.1社会背景„„„„„„„„„„„„„„„„„„„„„„„„„„„2 1.2公司背景„„„„„„„„„„„„„„„„„„„„„„„„„„„3 二、可行性研究
2.1问题定义„„„„„„„„„„„„„„„„„„„„„„„„„„„4 2.2技术可行性研究„„„„„„„„„„„„„„„„„„„„„„„„4 2.3经济可行性研究„„„„„„„„„„„„„„„„„„„„„„„„5 2.4操作可行性研究„„„„„„„„„„„„„„„„„„„„„„„„5 2.5系统的需求分析„„„„„„„„„„„„„„„„„„„„„„„„5 三、 需求分析
3.1设计思想„„„„„„„„„„„„„„„„„„„„„„„„„„„6 3.2设计原则„„„„„„„„„„„„„„„„„„„„„„„„„„„6 四、实训内容 4.1小型超市系统的基本资料
4.1.1 背景 „„„„„„„„„„„„„„„„„„„„„„„„„„„7 4.1.2基本需要分析„„„„„„„„„„„„„„„„„„„„„„„„7 4.2小型超市系统的分析与设计
4.2.1功能模块„„„„„„„„„„„„„„„„„„„„„„„„„„8 4.2.2数据库设计 „„„„„„„„„„„„„„„„„„„„„„„„8 4.2.3数据流„„„„„„„„„„„„„„„„„„„„„„„„„„„9 4.2.4编码规则„„„„„„„„„„„„„„„„„„„„„„„„„„9 4.2.5用户界面设计„„„„„„„„„„„„„„„„„„„„„„„„9 4.3 小型超市管理系统的实现
4.3.1有关功能模块的设计„„„„„„„„„„„„„„„„„„„„„10 4.3.2系统菜单及软件主界面设计„„„„„„„„„„„„„„„„„„18 4.3.3系统运行环境与组装„„„„„„„„„„„„„„„„„„„„„22 4.3.4连编程序„„„„„„„„„„„„„„„„„„„„„„„„„„22 第五章.系统调试
5.1 模块测试„„„„„„„„„„„„„„„„„„„„„„„„„„25 5.2 整体测试„„„„„„„„„„„„„„„„„„„„„„„„„„25
实训体会„„„„„„„„„„„„„„„„„„„„„„„„„„„„26
参考文献„„„„„„„„„„„„„„„„„„„„„„„„„„„„27
摘 要
本文主要是介绍超市进销存管理信息系统的环境、功能作用、所用到的语言、设计的方案等各方面的内容。主要是让使用者了解此系统,使他们能更好的运用本系统,使此系统发挥出应有的作用。本系统运用计算机管理信息技术,建立数据库,对超市的进销存过程进行详细的分析,实现了对超市的进货、销售和库存的科学管理。
本系统主要包括以下几大模块:
输入单据:出库 入库 产成品清单 查询: 出库查询 入库查询 产成品查询 销售: 销售费用 销售退款 进/退货
打印报表:入库报表 出库报表 产成品清单报表 销售退款单报表 进/退货报表
本文共分为五大部分,第一部分简要叙述了计算机科学及IT产业的发展状况和本系统基本概况。第二,三部分分别按照软件工程的要求出发,首先进行问题定义,解决目标问题,其次进行可行性研究,分别从技术可行性,经济可行性和操作可行性进行分析,然后进行的总体设计和详细设计阐述了如何实现具体功能。第四部分为系统调试其中包括子模块测试和总体测试。第五部分为帮助文件和参考文献。
关键字 销售 数据库 管理信息系统
第 1 页
第一章 系统调查
1.1社会背景:
随着现代科学技术的迅猛发展,计算机技术已渗透到各个领域,成为各行业必不可少的工具,特别是Internet技术的推广和信息高速公路的建立,使IT产业在市场竞争中越发显示出其独特的优势,步入数字化时代,有巨大的数据信息等待着加工处理和传输,这使得对数据库的进一步开发和利用显得尤为迫切。 作为国内市场的一些中小超市,他们在信息化过程中的步伐要落后大中型超市,而对于这些企业的资源管理,信息的存储和处理也显的迫切需要,要适应市场竞争,就需要有高效的处理方式和管理方法,因此加快超市的电算化进程是必不可少的。
在会计业务中,产成品的完成,发出和结存关系到超市销计划的完成和流动资金占用情况,而销售核算子系统是电算化会计系统中一个关键且比较复杂的子系统。通过这个子系统提供的信息可以了解企业的经营成果,通过产品销售收入用来补偿已消耗的生产资料,支付工资和其他费用,缴纳税金并实现利润。 实习期间,我们通过对市场的调查,针对现在各中小超市对销售业务的实际需要,开发了这套商品销售系统。在开发过程中,我们针对当前各超市管理特点和技术人员的实际水平,采用Window基于图形界面这一易学易用的操作系统环境,在系统设计过程中,我们尽量采用一些易懂易读的接口界面,使用户可以在短期内完全掌握。在功能方面,我们借鉴现在市场上流行的财务软件的特点,抛去泛泛不实用的缺点,使我们设计的系统在功能上极贴近中小超市的使用要求。在设计过程中,我们始终把系统的正确性放在首位,力求数据的完整,处理的正确性。在此基础上优化程序代码,加速系统运行和减少对系统资源的占用。作为一家中小型超市 ,他们的主要业务是销售产品,目前系统运做中存在很多题,所有的进货单,出货单都是人工填写,耗时而且易出现错误;库存也是人工记帐,无法随时掌握最准确的存货情况;对于销售数据,往往要花好多时间和精力去计算每个业 务员的销售业绩,每项商品的销售状况,为了解决上述问题,提高经济效益,准备导入进销存系统进行销售,采购,库存等的计算机化管理。
经过三个月的设计开发,现在已完全达到预期效果,实现了最初设定的目标。
1.2公司背景:
超市形式在我国于20世纪90年代初期起步,现已成为我国零售业的一种重要形态。随着超市的高速发展,其经营管理也变的愈加复杂,早期的售货员站柜台的形式早已不能满足现有销售业的的发展这样就迫切地需要引入新的思想技术和管理技术进入到超市管理之中。 超市形态具有种种优点,但在目前状况下,它仍存在零售业商业企业所共有的落后的一面,如:不能有效的管理每一种商品,收款结算速度慢,容易出现营业差错,不宜进行商品调价,盘点效率底等,而且在超市日常管理中,商品进、销、存决策以经验为主,缺乏实时分析功能,管理人员对及时传递资料的要求始终得不到满足,随着超市形态的高速发展,其经营管理也变的愈加复杂,日常所需处理的数据量也逐渐增大,商业运转的中间环节也越来越多,原始的人工管理
第 2 页
已无法应对这复杂的市场。为此,我在本次设计之中选择了超市信息管理系统设计,依靠现代化的计算机信息处理技术来管理超市,从而节省了大量的人力、物力、改善了员工的工作条件,减轻了劳动强度,并且能够快速反映出商品的进销存状况和各种反馈信息分析,使管理人员快速对市场的变化作出相应决策,加快超市的系统建立的技术基础:
数据库应用系统是以数据库为基础的信息管理系统,它一般包含两个方面内容,一个数据库设计,二是程序设计。
数据库应用系统的开发是一个软件工程,应按照软件工程的开发方法进行分析,设计,编程和调试。再建立数据库应用系统之前,一般应先进行系统的需求分析,了解拥护对系统的要求,然后进行系统的总体设计,最后编写程序代码和调试程序。
第 3 页
第二章 总体设计
总体设计是在需求分析的基础上进行的,根据逻辑模型建立相对应的物理模型。总体设计的任务是确定“怎么做”的问题,即确定和建立解决问题的总体方案。具体来说,总体设计要去确定构成系统的每个物理单元,说明每个物理单元之间的相互关系(即系统结构)。 一般地说,其过程如下:
a.设计方案:①设想选择方案;②选取合理方案;③选区最佳方案; b.功能分解:将系统按功能的要求,划分功能模块
c.设计软件结构:确定由模块确定的层次结构,可利用层次图描绘。 d.设计数据库:确立要设计的数据库,具体实现它。 e.制定测试计划:初步的测试计划 f.书写文档:系统说明
g.复核和审查:从技术的角度审查,从管理的角度审查。 2.1问题定义 :
商品按类管理:所以需要有一商品类型信息 商品必须属于一个商品类型
如果一个商品类型存在商品或存在下级商品类型则该类型不该删除 需要记录供应商信息
在涉及商品数量的地方,要给出相应的单位 在进货信息中要包含供应商等信息
商品销售信息单中要包含登记商品,销售数量单价等信息, 商品报损要有报损原因
进货,销售,报损操作要有相应操作员信息 只有管理员登陆之后才可以使用系统 默认的管理员不可以删除
进货,销售,库存,报损信息都要可以添加,修改,删除,分类,查找。
2.2技术可行性研究:
在IT行业中从业的工作人员一般都要求懂计算机,具有一定软硬件基础,会使用各种管理软件,熟悉IT产品。因为,超市中的对员工素质要求比较高,从管理层到下面的营销人员,都要求具有一定的IT背景,所以在新系统投入使用时,只要对员工进行少量的培训,系统的功能和使用方法就基本上能够使系统顺利的运行了。
2.3经济可行性研究:
因为通过网络传递销售信息,可以不受距离的,因此可以节约许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高企业的销售效率,即提高了企业的经济效益,所以从经济上是完全可行的。 ⑴ 企业有能力承担研发开支
开发新系统的工作是一项艰巨复杂的工作,它的投资主要是人力和物力的投资。
第 4 页
对于本系统的开发来说,其主要投资还是在人力和物力两个方面。如果是企业自己安排人手开发系统的话,其主要的投资还是在人力资源上,从系统的业务需求调查到系统的分析编码制作都是需要巨大的人力投入的。超市作为一个尖端的高科技产业,其员工要求都比一般企业的要求要高,而且对系统开发及软件产业了解比较多,所以在自我开发管理系统的过程中,企业自己比较容易安排人手,这样就可以为企业节约大部分的额外开支。同时超市就其他产品还说,属于高端行业,无论是产品的价格还是质量都比较高,而经营产品的经销商或者是商家都要求有雄厚的资金的作支持。所以,在系统的开发过程中,企业完全有能力承担开发费用。
⑵ 新系统将为企业带来经济效益 管理系统是一个信息化、智能化和先进管理理念的集合体。而管理是一个动态过程,在其运行过程中要采取多项措施。所以在管理中获得经济效益是一个综合效益,要对他进行直接定量的分析是比较困难的。一般新系统带来的经济效益是间接的,其最主要的表现就是减少了企业的管理费用和人力开支。而其他一些烦琐的事物都通过新系统来加以分析解决,不仅节省了大量的时间,还为企业的各项决策提供了宝贵的资料,为企业带来巨大的经济效益。
2.4操作可行性研究:
本系统采用Windows图形界面,是大家熟悉的操作系统,对于用户只需要具有一般的计算机知识的人员都可以轻松上手。而且整个销售系统采用最友好的交互界面,简洁明了,不需要对数据库非常了解。 由此,该系统的操作是可行的,有必要推广该系统! 综合以上三方面,该系统具有很高的开发可行性,无论是从技术上经济上还是操作上。故此,可以设计该系统流程图,建立数据字典。
2.5系统的需求分析: ⑴ 用户工作流程
进货或销售商品时,用户要对进货单或销售单进行核对审查,并进行登记;用户要获得进货、销售、库存信息时,要对进货情况、销售情况、库存情况进行查询并打印。
⑵ 用户业务需求
该管理软件将对库存产品进行资料管理和统计,对产品的进货单和产品的销售单进行录入管理和统计;
该管理软件将根据用户的需要对进货、销售、库存情况进行查询,并能打印详细信息;
该管理软件将为用户提供帐号管理工具,以便用户对帐号进行管理,具体为添加用户、删除用户、修改用户密码; 该管理软件提供企业人员管理,能够企业员工的分类管理,新员工的加入以及员工删除,修改基本信息等功能。
第 5 页
第三章 详细设计
3.1设计思想:
(1).系统分成几个相对的模块,但这些模块都进行集中式管理。
(2).分层的模块化程序设计思想,整个系统采用模块化机构设计。作为应用程序有较强的可操作性和扩展性。
(3).合理的数据流设计,在应用系统设计中,相对的模块间以数据流相互连接,使各模块间的耦合性较低,方便系统运行,提高系统安全性。
3.2.设计原则:
为了使本系统功能齐全完备,操作简便,最大限度的提高软件的质量,从而满足用户的实际需要,在设计开发过程中遵循了,如下原则:
1) 合法性原则:依据产品核算系统的工作规定以及要求,参照核算实际的工作情况, 进行诸如产品经货、销售等工作。
2) 实用性原则:适合产品信息管理工作的实际需求,并能够处理一些特殊情况的要求,此外,尽可能预留空间,以便扩充功能。
3) 准确性原则:对输入的相关资料建立检错机制,及时报错,使用户能够及时准确的输入合法资料(如类型匹配,长度不超限等)。
4) 易操作原则:要求设计的系统功能齐全,接口友好,操作方便,必要的地方进行提示。
5) 源程序可读性原则:为了便于其它设计,维护人员读懂代码或以后的代码修改,软件升级维护,既可能做好代码注释工作。
6) 优化原则:为了达到优化的目的,合理的运用窗口,菜单,对象等的继承,自定义用户对象,事件,函数,减少不必要的重复性代码,使程序简洁明了,也方便了将来的维护。
7) 安全性原则:该系统的管理员具有可设置登陆密码,修改密码的权限。经过前面的设计,我们对整个系统有了一个初步的认识,并对各个模块进行了功能分化。
第 6 页
第四章 实训内容---小型超市管理系统
4.1小型超市系统的基本资料 4.1.1背景
某小型超市主要经营电器、服装、食品、家庭日用品等上百个大类的商品,每大类商品中又有几十个品种的小类商品。每天入库单据100多张,销售单据700多张,营业额由几万元到十几万元不等。为了适应业务的发展,改善管理,提高经济效益,超市经理决定开发一套计算机辅助管理系统,主要用于进货、库存、销售等日常管理,并重点提出以下几个问题:
1)每个收银员在下岗之前要进行结账对账,即现金与销售账进行对账; 2)对一些有时限的商品要能够及时预警,以便进行及时促售处理; 3)能够查询每天、每月商品销售情况,能对商品销售数量进行汇总查询,能够查询商品库存情况。系统通过提供这些信息,为经营管理者的经营决策提供依据。
4.1.2 基本需要分析
1)系统运行环境
硬件:PC兼容机,128MB以上内存,彩显;
软件:Windows 98 以上,Visual FoxPro 6.0以上。 2)软件主要功能
(1)用户界面友好,操作简单;
(2)使用对象:系统管理员(admin)可以设置商品基本信息,可以增加、删除使用该系统的用户,但不可买卖商品;一般操作员只能对商品进行进货、销售、查询处理,不可修改商品信息;(3)对录入数据具备初级的逻辑审查能力;
(4)对进货单和销售单具备增、删、改功能; (5)可查询日销售、月销售情况;
第 7 页
(6)能对员工的工资进行计算;
(7)能够实现背景资料中用户提出的基本要求。 4.2 小型超市系统的分析和设计 4.2.1 功能模块
系统管理——商品编码、用户管理、更改口令、更换操作员; 入库管理——入库单的管理(增删改)及到期商品查询; 销售管理——商品销售、结账,查询日销售、月销售情况; 工资管理——工资数据维护、工资数据计算,税率表维护。
4.2.2 数据库设计
根据分析,本系统设计一个名为DB的数据库,共有以下9个数据表,表的结构详见教材第4章中的实训内容。
用户管理表 user 商品基本表 spjbb 商品入库单头表 sprkdtb 商品入库明细表 sprkmxb 日销售单头表 rxsdtb 日销售明细表 rxsmxb 月销售明细表 yxsmxb 工资表 gzb 税率表 slb
入库单头表与入库明细表是一对多关系,并建立了有关删除、插入、更新的参照完整性;销售单头表与销售明细表是一对多关系,并建立了有关删除、插入、更新的参照完整性;商品基本表与商品入库明细表、日销售明细表、月销售明细
第 8 页
功能模块 工资管理 入库管理 销售管理 系统管理
表均建立了关联。
另外,为便于对数据进行处理,建立了以下视图 销售用明细视图 xsmxb 查询及结账用日销售明细视图 rmxcx 日销售明细汇总查询视图 rmxhzcx 月销售明细按编号汇总查询视图 ymxbhhzcx 月销售明细按日期汇总查询视图 ymxrqhzcx 月销售明细查询视图 ymxcx 4.2.3 数据流
1)录入入库单时,在入库单头表中增加一新记录,然后在入库明细表中添加若干条新记录(一种商品一条记录),同时在商品基本表中修改相应商品的库存量。
2)录入销售单时,在销售单头表中增加一新记录,然后在销售明细表中添加若干条新记录(一种商品一条记录),同时在商品基本表中修改相应商品的库存量。
3)在入库单头表中删除一条记录时,同时自动删除入库明细表中相同入库单号的若干条记录,并修改商品基本表中的有关数据。
4)销售不提供删除及修改数据的功能,但可以输入负数量进行冲账。 4.2.4 编码规则
1)商品编号:类别代码+品种代码
例:电器类 001 ×××电风扇 00101 洗涤类 002 ×××洗衣粉 00201 钢笔类 003 ×××钢笔 00301 食品类 004 ×××饼干 00401
2)入库单号:入库日期+顺序号 例:20060512001 20060513002 ... 3)销售单号:顺序号 例:1 2 3 ... 4.2.5 用户界面(表单)设计
本系统共设计了22个表单用来完成系统的功能。 1)用户登录表单(loginform)
第 9 页
2)应用程序主表单(mainform) 3)用户更新密码表单(updateform) 4)更换操作员表单(loginform1) 5)用户管理主表单(userform)
6)新增及修改用户表单(useraddeditform) 7)商品基本情况管理主表单(spjbbform)
8)新增加及修改商品基本情况表单(spjbbaddeditform) 9)入库单头主表单(rkdtform)
10)新增及修改入库单头表单(rkdtaddform) 11)入库明细管理主表单(rkmxform) 12)新增及修改入库明细表单(rkmxaddform) 13)商品预警日期查询表单(spyjrqcxform) 14)商品销售表单(spxsform) 15)商品销售结账表单 (spxsjzform) 16)查询日销售信息表单(cxrmxform) 17)日销售数据结账表单(rjzform) 18)查询月销售信息表单(cxymxform) 19)工资管理主表单 (gzform)
20)新增及修改工资数据表单(gzaddeditform) 21)工资计算表单(gzjsform) 22)税率表维护表单(slbglform) 4.3 小型超市管理系统的实现 4.3.1 有关功能模块的设计
1、销售管理模块的设计
销售管理模块共包括商品销售、日销售结账、查询日销售信息、查询月销售信息等4个子模块。
1)商品销售子模块
该子模块主要功能是:在销售柜台销售商品的同时,完成收银记账工作。因收银工作的特殊性,软件界面要设计的简单易操作,数据输入要有一定的检错功能。该模块由2个界面所组成,一个是商品销售窗口,一个是收银计算辅助窗口。考虑到一天开工时,可能昨天没有及时结账,或是更换操作员后没有及时结账,系统提供了自动检测的功能,能提醒操作员及时进行结账处理。为方便收银员对
第 10 页
账结账,系统提供一天可以多次进行结账的功能。商品销售模块从单击菜单【日销售记录】开始,如是正常的销售过程,则不需结账,系统自动产生新销售单据,并调用商品销售窗口。
(1)商品销售窗口的设计
表单文件名为:spxsform。该子模块是商品销售的主界面,考虑到大部分商品销售时的数量为1,系统对每一个商品销售时自动设置为1,可以提高操作速度。对于输入错误的商品编号,系统能够自动检测并提示;如果商品编号正确,系统能自动显示商品的有关信息供顾客和操作员查看。
系统在生成销售单据时采取如下方法:
先自动生成一个空的单头记录(写入rxsdtb表中),当有明细数据时,数据写入rxsmxb表中。如果没有明细数据,或不进行结算,则自动删除。表单中的表格用于显示商品销售明细情况,其数据源是xsmxb视图。
(2)收银计算辅助窗口的设计
表单文件名为:spxsjzform。该子模块的主要功能是:显示一张单据的应收款合计,并在输入实收现金后,系统自动计算出相应的找零数。
第 11 页
2)日销售结账子模块
表单文件名为:rjzform。该子模块可以查询商品销售情况,可以用于收银员换岗或当天收工前的现金与商品销售金额对账。表单中表格的数据源是rmxcx视图。当确定结账时,系统将rxsmxb表中的数据写入yxsmxb表中,并自动删除rxsdtb表及rxsmxb表中的所有数据。
商品销售日结账窗口的界面如下图所示。
3)查询日销售信息子模块
表单文件名为:cxrmxform。该模块主要用于查询日销售商品明细信息,以及按商品编号进行汇总的商品数量和金额信息,也可以查询指定单据的信息。 查询商品日销售明细窗口界面如下图所示。
第 12 页
4)查询月销售信息子模块
表单文件名为:cxymxform。该模块主要用于查询商品月销售的有关信息,包括商品销售明细数据,按销售日期汇总的商品销售数量及金额,按商品编号汇总的商品销售数量及金额。通过查询有关数据,可以使管理人员了解哪些商品销量最大或最小,从而调整商品进货,或采取措施促销商品。 查询商品月销售明细窗口界面如下图所示。
2、系统管理模块的设计
系统管理模块共包括商品基本情况管理、用户管理、修改用户密码、更换操作员等4个子模块。
1)商品基本情况管理子模块
第 13 页
该子模块包括2个操作界面,一个是主界面,用于查看商品的整体信息,一商品基本情况进行管理,包括新增,修改,删除商品基本信息。考虑到数据库数据的完整性,在数据库设计时,建立了商品基本表(spjbb)与入库明细表(sprkmxb)以及日销售明细表(rxsmxb)的关于spbh的参照完整性。具体是:删除规则和插入规则为“”,更新规则为“级联”。这样,商品在入库及销售前,首先要新增商品基本数据,否则无法入库或销售。在商品基本表中修改商品编号时,入库明细及销售明细中的数据将自动更新商品编号。如果要在商品基本表中删除某一记录,而此时,如果已有该商品的入库数据,或已有该商品的销售记录,则系统不许删除。这些功能的实现,不是通过程序代码实现的,而是在数据库设计时,通过设置数据库数据的参照完整性来实现的,有关此方面的知识请参见第4章的实训。
(1)商品基本情况管理主程序的设计 表单文件名为:spjbbform。
商品基本情况管理主界面如下图所示。
(2)商品基本情况管理-用于新增及修改数据的程序设计 表单文件名为:spjbbaddeditform 新增及修改数据界面如下图所示。
第 14 页
2)用户管理子模块
该子模块主要完成的功能有:新增和删除用户。其中admin是系统管理员,程序不能删除此用户。该模块包括2个操作界面,一个是主界面,用于全面查看用户信息,一个是用于新增用户的操作界面。
(1)用户管理主程序的设计 表单文件名为:userform。
用户管理运行时的界面如下图所示。
(2)新增用户的程序设计
表单文件名为:useraddeditform。 新增用户的程序界面如下图所示。
第 15 页
3)更换操作员子模块
该模块实际上是用户重新登陆,但与第一次登陆时有所不同。第一、登陆成功后不需调用软件主界面(mainform),第二、按【取消】按钮时不是退出整个应用程序,而是释放表单,第三、表单的ShowWindow属性应设置为“1-在顶层表单中”,第四、表单的WindowType应设置为“1-模式”。因此,该表单的设计可以先复制登陆窗口表单,然后进行属性修改和代码修改。
4)修改用户密码子模块
表单文件名为:updateform。该子模块用于修改用户的密码。修改用户密码的程序界面如下图所示。
3、入库管理模块的设计
入库管理模块共包括商品入库单头管理、商品入库明细管理、商品预警查询等3个子模块。
1)商品入库单头管理子模块
为减少数据冗余,入库单据分成2个部分,一个是单据的单头数据,一个是
第 16 页
单据的明细数据。入库单头管理子模块只对单据的单头数据进行管理,主要功能是有:新建一张单据;修改单据的单头信息;删除整张单据。新建单据时,系统自动产生一个单据号,单据号由操作日期加顺序号组成,单据号在单据数据修改时是不允许修改的。删除单头数据分2种情况,一种情况是,此张单据没有明细数据;另一种情况是,此张单据有明细数据。如果此张单据有明细数据,在删除时,系统会自动更新商品基本表中的库存数据。在数据库设计时,可以对入库单头表(sprkdtb)及入库单头明细表(sprkmxb)设置删除参照完整性,一个是设置删除,一个是设置删除级联,本系统设置的是删除级联。商品入库单头管理的有关表单设计略。
2)商品入库明细管理子模块
该模块主要功能有:完成入库商品的明细数据输入,修改,删除。没有单头数据,系统不允许增加明细数据;修改及删除明细数据时系统能及时更新商品基本表中的库存数据。商品入库明细管理的有关表单设计略。
3)商品预警查询子模块
该子模块的主要功能有:提供对商品基本信息的查询;提供对商品预警信息的查询。
商品预警信息查询的界面如下图所示(表单文件名为:spyjrqcxform)
4、工资管理模块的设计
工资管理模块共包括工资基本数据维护管理、工资数据计算及打印、税率表维护管理等3个子模块。工资管理模块的有关表单设计略。
1) 工资基本数据维护管理子模块
该模块主要完成对员工工资数据的输入、修改、删除等功能。
第 17 页
2) 工资数据计算及打印子模块
该模块主要完成对员工工资的计算和打印等功能。 3) 税率表维护管理子模块
该模块主要完成对税率表数据的输入、修改、删除等功能 4.3.2 系统菜单及软件主界面设计
1、系统菜单的总体规划
依据需求分析给出的结果,小型超市管理系统将整个系统划分为工资管理、入库管理、销售管理以及系统管理等4个模块,每个模块又进行了细分。相应地,在菜单设计时,依据系统模块的划分,并考虑到菜单设计的一些基本原则,共设计了4个一级菜单,即,工资管理、入库管理、销售管理、系统管理,每个一级菜单又包含了若干子菜单(下拉菜单)。另外,根据需求分析的要求,系统管理员admin不能进行具体的业务操作,只能对商品基本情况和用户数据进行管理;一般用户除商品基本数据管理和用户管理不能操作外,其他业务都能操作。
2、菜单设计
在菜单设计时,根据当前操作员的不同,对菜单进行了有效控制。一级菜单设计时的界面如图11.16所示,其中选项按钮均写入了对菜单的控制代码。在打开的选项对话框中,工资管理、入库管理、销售管理菜单均写入了如图11.17所示的代码。
1)一级菜单的设计界面
图11.16一级菜单的设计界面
图11.17选项按钮的设计界面
如果当前操作员为系统管理员admin,则菜单运行时的界面如下图所示。
第 18 页
2) 工资管理菜单的设计
工资管理菜单设计时的界面如下图所示。
3) 入库管理菜单的设计
入库管理菜单设计时的界面如下图所示。
4) 销售管理菜单的设计
销售管理菜单设计时的界面如下图所示。
第 19 页
5) 系统管理菜单的设计
系统管理菜单设计时的界面如下图所示。
在商品编码、用户管理菜单的选项按钮中均写入了如下图所示的代码,其目的是控制非admin操作员不能对此模块进行操作。
如果当前操作员不是系统管理员(admin),则菜单运行时的界面如下图所示。
第 20 页
6)将菜单设定为顶级菜单
顶级菜单可以在顶级表单中显示。确认要输入的菜单已经完成,通过菜单【显示】|【常规选项】命令激活如图1.17所示的【常规选项】对话框,在该对话框中选中【顶层表单】复选钮后单击【确定】按钮完成设定。
7)生成菜单的可执行文件
先将设计好的菜单取名为“main”,保存到“小型超市管理系统”文件夹中 3、软件主界面设计
(1)新建一个新表单,取名为mainform,并保存到“小型超市管理系统”文件夹中
(2)表单mainform的属性设置见下表所示。Name属性不用设置,用系统默认的值。 对 象 属 性 Form1 Name Caption 属性值 Form1 对 象 属 性 Image1 Name Picture 属性值 Image1 Image\\mainpic.bmp 小型超市管理系统 WindowState 2-最大化 BackStyle 0-透明 Stretch 2-变比填充 ShowWindow 2-作为项层表单 BackColor 0,128,128(或自己 喜欢的一种颜色) (3)在表单mainform中放入一个图像(Image)对象,其属性设置如上表所示。Name属性不用设置,用系统默认的值。
(4)事件代码编写
【对象(B)】为“Form1”,【过程(R)】为“Activate”的代码: *将图象居中
thisform.image1.left=(thisform.width-thisform.image1.width)/2 thisform.image1.top=(thisform.height-thisform.image1.height)/2 【对象(B)】为“Form1”,【过程(R)】为“Resize” 的代码: *将图象居中
thisform.image1.left=(thisform.width-thisform.image1.width)/2 thisform.image1.top=(thisform.height-thisform.image1.height)/2 【对象(B)】为“Form1”,【过程(R)】为“Init” 的代码: Do main.mpr with this,.t.
第 21 页
4.3.3 系统运行环境与组装
1、系统运行环境
系统运行环境是指保证系统能正常运行的硬件及软件环境。在这里主要指小型超市管理系统运行时对Visual FoxPro6.0的有关设置,以及在模块测试时小型超市管理系统本身需要设置的一些环境。
1)模块测试时的有关环境
为保证各个模块在单独测试时能顺利进行,一般在表单的 init事件中写入以下代码:
publi rec1,rec,flag,user user=\"aaa\" set delete on
这样做的目的是设置模块运行时需要的一些全局变量及环境,保证模块测试的顺利进行。
2)系统运行环境的设置及主程序的编写
(1)在小型超市管理系统的主程序mainprg.prg中,设置系统运行时需要的一些环境,有关这方面的知识请参考教材第7章正文及实训的有关内容;
(2)在测试模块及联调程序时,请注意设置小型超市管理系统所在的目录为默认目录;
(3)在程序编写过程中,有关程序调用、打开文件、装载图片等描述时,文件名要用相对路径。
2、系统组装与联调
在系统各功能模块设计及测试完成之后,要进行整体联调。根据菜单与各功能模块的关系,在菜单中写入调用对应功能模块的代码,或写入实现有关功能的程序,这些工作是在程序联调前必须做的工作之一。另外,在程序运行过程中,可能会发生一些错误,有的错误在我们的意料之中,如操作时违反了数据库的参照完整性;有的错误可能是我们没有意料到的。为了使程序在运行时,当发生错误了,用户能够明确知道问题出在哪里,系统一般还要编写有关的错误处理程序。 4.3.4 连编程序
在系统联调时,如果没有发现错误,则可以将整个小型超市管理系统连编成一个应用程序(.app)或可执行程序(.exe),下面讨论连编成可执行程序(.exe)的操作过程。
1、设置主文件
第 22 页
在项目管理器中设置一个程序或一个表单作为应用程序的启动文件,这样在连编成执行程序(.exe)后,系统将从主文件开始运行。在小型超市管理系统中,我们将程序mainprg.prg设置成主文件。
2、连编可执行程序(.exe)
在项目管理器单击【连编(D)„】按钮,系统弹出如下图所示的连编选项对话框,选中“连编可执行文件(E)”单选钮后单击【确定】按钮。
在保存对话框中输入连编后的应用程序名,如“小型超市管理系统”。界面如下图所示。
第 23 页
注意:程序保存的位置要正确。可执行程序要与存放数据库及表的文件夹(database),与存放图片文件的文件夹(image)在同一个文件夹中。以后要移动可执行程序必须与其他2个文件夹一起移动,并保持这种相对位置的关系,否则程序运行会出现错误。
3、运行可执行程序(.exe)
连编后的应用程序可以和其他应用程序一样在Windows环境下运行。但要注要,在运行应用程序的机器上必须安装Vissual Foxpro 6.0。
第 24 页
第五章 系统调试
完成对流程的编码后最重要的事情就是对系统的测试工作了,测试在系统设计阶段有两个时期,通常在编写每个模块后做单元测试,另一个时期是对系统的综合测试。
5.1模块测试
在模块测试时我们主要从以下几个方面考虑: 1. 模块接口
2. 局部数据结构 3. 重要执行通道 4. 出错处理通道
5. 影响上述方面的边界条件
测试时进行代码审查,从数据类型,变量声明,数据结构进行审查,然后进行功能测试,从输入一些简单的数据开始执行一遍,观测运行期间变量的变化,运行中值的变化范围。改变测试方案来变换另一个角度进行测试,发现错误并记录,修改代码,测试条件使程序通过多层分支,判别运行结果从而完成模块测试。 5.2整体测试
总体测试是组装软件的系统技术,本系统测试采用渐增集成测试,即测试单一模块,将测试完的模块加入系统中,进行一次系统测试,依次类推将所有模块加入系统中,在具体测试时,采用自顶向下的结合方式,从主控模块开始,沿各控制层向下移动,渐把所有模块结合了。
在测试过程中使用到调试技术
1. 采用debug调试语句,跟踪数据 2. 嵌入打印语句,输出中间结果
3. 利用VF6.0中调试工具,从立即窗口观测变量的变化 4. 设置断点,观察程序在断点附近的状况 评估运行的可靠性问题 1. 结果正确 2. 运行速度 3. 空间利用率 4. 算法的可行性
第 25 页
实训体会
两个星期的时间非常快就过去了,这两个星期不敢说自己有多大的进步,获得了多少知识,但起码是了解了项目开发的部分过程。虽说上过数据库上过管理信息系统等相关的课程,但是没有亲身经历过相关的设计工作细节。这次实习证实提供了一个很好的机会。 通过这次课程设计发现这其中需要的很多知识我们没有接触过,去图书馆查资料的时候发现我们前边所学到的仅仅是皮毛,还有很多需要我们掌握的东西我们根本不知道。同时也发现有很多已经学过的东西我们没有理解到位,不能灵活运用于实际,不能很好的用来解决问题,这就需要我们不断的大量的实践,通过不断的自学,不断地发现问题,思考问题,进而解决问题。在这个过程中我们将深刻理解所学知识,同时也可以学到不少很实用的东西。 从各种文档的阅读到开始的需求分析、概念结构设计、逻辑结构设计、物理结构设计。亲身体验了一回系统的设计开发过程。很多东西书上写的很清楚,貌似看着也很简单,思路非常清晰。但真正需要自己想办法去设计一个系统的时候才发现其中的难度。经常做到后面突然就发现自己一开始的设计有问题,然后又回去翻工,在各种反复中不断完善自己的想法。 我想有这样的问题不止我一个,事后想想是一开始着手做的时候下手过于轻快,或者说是根本不了解自己要做的这个系统是给谁用的。因为没有事先做过仔细的用户调查,不知道整个业务的流程,也不知道用户需要什么功能就忙着开发,这是作为设计开发人员需要特别警惕避免的,不然会给后来的工作带来很大的麻烦,甚至可能会需要全盘推倒重来。所以以后的课程设计要特别注意这一块的设计。
不管做什么,我们都要相信自己,不能畏惧,不能怕遇到困难,什么都需要去尝试,有些你开始认为很难的事在你尝试之后你可能会发现原来她并没有你以前觉得的那样,自己也是可以的。如果没有自信,没有目标,没有信心就不可能把事情做好,当其他人都在迷茫的时候,自己一定要坚信目标,大学毕业出去即面临找工作,从学习这个专业,到以后从事这方面的工作都需要不断地去学习去实践,这次实践可以给我们敲一个警钟,我们面临毕业,面临择业,需要这些实践经验,在困难面前要勇于尝试,这是这次课程设计给我的最大感想! 以上基本是这次实习的体会了,设计进行的非常艰难,编码非常不容易,才发现做一个项目最重要的不在于如何实现,而是实现之前的需求分析和模块设计。创新很难,有些流行的系统其实现并不难,难的在于对市场的分析和准确定位。设计,是一个任重道远!
第 26 页
参考文献
1. 萨师煊、王珊.数据库系统概论.北京:高校教育出版社,1985.60-65
2.王勇领.计算机数据处理系统分析与设计.北京:清华大学出版社,1986.125-130 3.张基温.信息系统开发案例.北京;清华大学出版社,1999.50-60 4.党建武.管理信息系统,兰州大学出版社,2001.70-80
5.毕庶伟.管理信息系统分析与设计.北京:机械工业出版社,1992.90-100 6.黄梯云.企业管理模型及微型机应用程序,石家庄:河北人民出版社,1985.101-120
7.黄梯云.管理信息系统导论,北京:机械工业出版社,1986.1-206
第 27 页
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务
