信息管理系统设计文档1.docx
《信息管理系统设计文档1.docx》由会员分享,可在线阅读,更多相关《信息管理系统设计文档1.docx(43页珍藏版)》请在冰点文库上搜索。
信息管理系统设计文档1
超市营销管理系统的计划和开发
摘要:
随着我国成功加入WTO及信息化浪潮的日益临近,超市经营管理机制正在发生着根本性的变化,商场要想在激烈的市场竞争环境下求得生存,就必须有效地利用人才、时间、信息结合的优势,进行有效的超市内部改革和加强收银管理。
借助现代信息技术和管理理论,建立超市收银管理信息系统势在必行。
本系统针对商品管理的业务范围及工作特点,设计了收银登记、收银管理、业务管理、会员管理、统计分析等几个部分,这几个部分可以全面实现对商品的进货、付款、销货、收款和库存等业务的计算机管理,大大减轻了超市工作人员的工作量,全面提高了超市收银管理的管理效率以及服务质量,使管理水平和业务水平跃上了一个新的台阶。
本系统是根据现代超市收银管理的需要而开发的,操作方便及美观的界面给用户节省了不少宝贵的时间,全面实现了对商品的进货、付款、销售、收款和库存统计等业务的计算机管理,大大减轻了商店工作人员的工作量,全面提高了商店的管理效率及服务质量。
系统采用MicrosoftOffice中的Access2003来设计数据库,并使用VB6.0为开发工具。
我们主要介绍了本课题的开发背景,所要完成的功能和开发的过程。
在系统分析的前提下,本文重点说明了总体设计,数据库的设计以及系统详细的设计和实现过程。
关键词:
超市管理系统,数据,信息,系统开发
1.2管理信息系统的重要性3
2超市管理系统软件介绍4
2.1本系统研究方案的确定与说明4
2.2开发工具与环境5
3超市管理系统软件模块规划7
5程序的调试
6系统开发过程中的心得体会
1.研究背景
1.1手工记账的弊端
在这个系统开发之前,我对一些采用手工记账方式的企业进行了一段时间的调查研究,了解和熟悉了销售和采购部分的整个流程:
首先向指定的供应商询问商品的进货价格,确定进货的数量,进行采购,当采购的商品到货后,负责采购的人员首先填写入库单,然后与仓管人员对商品的质量及数量进行核查,检查商品的质量及外表是否合格,核对这些待入库的商品实物数量是否与入库单上的数量相符,核查合格后方可入库,并更新商品入库流水账。
对于新进货商品,在库存台账中建立该商品的账目,在该商品的账目中填写该商品的商品编号、商品名称、购入单价等。
对于不合格的商品或者不合格的入库单则拒绝入库,交由采购人员处理。
从以上手工操作方式看,其主要存在以下问题:
(1)手工模式下的信息收集不够及时、准确和完整,重复性信息多,工作劳动强度高、效率低、错误多、可靠性较低,处理速度慢,不适应企业发展的需要。
(2)在具体工作中,存在着大量的数据的保存、汇总、查询等工作,手工模式速度慢而且不利于数据的分析,已不适应现代管理模式。
(3)各业务部门联系不密切,信息不能共享,相互沟通渠道不畅通。
经调查,前些年企业进货主要都是采用手工管理,这两年,随着我国社会主义市场经济体制的确立和发展,商业流通领域进入了一个空前的发展阶段,面临商界的激烈竞争,企业规模的扩大,经营项目的增加,手工管理已不能满足企业发展的需要。
由于每天的销售量的增加,导致进货频繁。
进货次数的增加,难免在业务上、财务上出现问题,进而造成库存数目的混乱,最终导致恶性循环。
为规范企业内部管理,提高企业业务管理水平,更好地服务于顾客,于是人们开始想用计算机代替手工操作。
1.2管理信息系统的重要性
管理是超市的重要环节,对外直接关系到为顾客服务的水平、企业的合作关系、企业的整体形象,对内影响到企业的经营成果、职员的切身利益。
采购管理系统对于提高工作效率、优化业务管理、降低经营成本、减少商品丢失都有明显的作用。
更重要的是通过系统的应用,管理者能更迅速准确地对市场变化做出商业的应变策略,理顺企业的信息流程和流向,提高领导决策的水平。
21世纪是知识经济时代,管理者必须运用科学的管理手段进行企业经营,运用信息化管理手段进行科学管理,方能在激烈的竞争中获胜。
于是,客观上就要求企业加强内部管理,提高运营效率。
如何采用先进的管理模式,很大程度上都必须借助管理信息系统来完成。
随着计算机技术的发展,其操作及管理日趋简化,管理信息系统大量开发,企业采用管理信息系统管理业务、财务、生产流程等诸多环节已成为各个企业提高管理水平和竞争能力的必然趋势。
要想在激烈的市场竞争中谋求发展,争得一席之地,实行数据规范化、自动化的计算机管理已经刻不容缓。
那么,何为管理信息系统呢?
管理信息系统(MIS----ManagementInformationSystem)是一个由人和计算机等组成的能够提供信息以支持一个组织机构内部的作业、管理、分析和决策职能的系统。
管理信息系统利用计算机的硬件和软件,手工规程、分析、计划、控制和决策用的模型,以及数据库对信息进行收集、传输、加工、保存、维护和使用。
因此,管理信息系统是一个信息处理系统。
管理信息系统的主要特征是:
(1)管理信息系统是以计算机为基础的以人作为系统组成部分的人-机系统;
(2)管理信息系统是组织内部各种信息处理系统按照总体规划而建立起来的集成化系统;(3)管理信息系统具备以数学方法为基础,以数据处理为基本功能的预测和控制能力。
管理信息系统具有以下基本功能:
(1)数据处理功能;管理信息系统能够对各种形式的数据进行收集、录入、存储、传输、处理、检索、查询和管理,从而为管理人员提供准确的信息。
(2)计划功能;管理信息系统能够对管理和生产合理地安排计划,提高生产和管理工作效率,例如生产作业计划、销售计划等。
(3)控制功能;管理信息系统能对企业生产和经营的各个部门和环节的运行情况加以监测、控制,发现问题及时纠正,以保证系统的正常运行。
(4)预测和辅助决策功能;管理信息系统运用各种数学方法、预测模型和优化方法,利用历史数据和经验,对未来可能发生的结果进行预测,并为企业决策者提供辅助决策方案。
开发这次的营销管理系统,主要有以下作用:
(1)整合企业资源,实现信息共享;企业在经营活动中每日都要将发生的基础信息(如商品的信息、供应商信息、采购信息、库存信息等),由营销管理系统进行收集、整理及汇总,并以各种报表形式体现出来;用户可根据需要,随时查询商品流转中的各种信息和变化趋势,为管理者的决策活动提供数据依据。
(2)具有高度的信息综合利用效能,可以对企业的经营管理活动进行分析、预测、决策,进而达到对企业经营活动过程的全程监督和控制的目的。
(3)规范业务流程,减少人工费用。
采购管理系统用电子单据代替以往用人工来传递各种单据的工作,管理人员通过本地的计算机就能够对这些单据进行查询、审核、记账等操作。
本采购管理系统的使用,使企业组织机构得以简化,传统企业中的物价、核算等部门及人员的工作已经完全被计算机所代替,从而节约了这些部门的各种设备和人工费用的支出。
使企业获得更大的经济效益。
2.超市管理系统软件介绍
2.1本系统研究方案的确定与说明
这次的系统开发采用的是C/S结构,运用VisualBasic作为开发工具,Access作为数据库。
客户机/服务器C/S(Client/Server)是近年来在计算机网络技术和分布式计算的基础上发展起来的一种新的计算模式,它的出现为信息处理提供了一个高效、经济而又应用灵活的体系结构。
客户机/服务器模式的主要优点是:
(1)模块化与应用的分布特性。
(2)充分利用资源,提高网络的效率。
(3)便于系统的维护,可扩充性强。
(4)并发特性。
服务器并发处理多个客户机之间的并行操作,使数据的完整性和一致性得到保证。
2.2开发工具与环境
2.2.1VisualBasic6.0的概述
VisualBasic6.0是Windows环境下应用程序的可视化快速开发工具,它具备下述特点:
(1)面向对象的编程。
在VisualBasic6.0中,开发人员使用的众多编程部件都是对象,例如,窗体、菜单、按钮等。
编程人员无须关心这些对象的内部实现,而只需按这些对象提供的使用方法运用它们也就可以了。
面向对象编程提供了代码的可重用手段,提高了应用程序的可维护性,加快了应用程序的开发工作。
(2)可视化的变成方法。
使用VisualBasic6.0设计应用程序时,程序的用户界面通过鼠标操作绘制出来,所见即所得,极大地简化了应用程序的开发工作量,让开发人员将精力集中在解决应用需求的具体需求上。
(3)丰富的数据访问特性。
编程人员既可以使用VisualBasic6.0访问诸如MicrosoftAccess等数据库中的数据,并且访问数据的方法简单直观、易学易用。
(4)进一步简化应用程序开发工作的众多向导。
VisualBasic6.0提供了许多向导,帮助开发人员快速构造应用程序的框架。
它易懂、易学,不仅是初学者的理想入门语言,而且也是专业人员开发各类应用程序的理想工具。
2.2.2Access2003简介
Access是Office软件包的成员之一,Access擅长对数据进行处理,例如建立、排序、分类及汇总数据等操作。
除此之外,美化数据输入界面的窗体、数据访问页,强调所见即所得的报表,再加上Access所擅长的宏与模块功能,奠定了Access在小型数据库系统的领先地位。
Access2003是功能强大的关系型数据库管理系统。
不仅可以管理公司客户定单数据,个人通信录,还可以记录,存储和处理大量科研统计数据等。
2.2.3Access的主要特点
Access最重要的特征是不必编写程序。
对于大多数关系型数据库管理系统,如Paradox,FoxPro等而言,其管理者需要具有程序设计能力,才能建立和管理一个有效的应用程序,而Access数据库系统把数据库应用程序的建立移进用户环境中,除非要执行复杂的操作,数据库的管理者不再必须具有程序设计能力。
利用系统提供的向导或生成器,再利用几个简单的宏或VBA语句,就可以迅速建立简单的应用程序。
Access中数据库文件不是简单的存储数据的表,这是Access与其他桌面数据库的一个重要区别。
Access数据库文件不仅包含传统意义上的表,还包括操作或控制数据的其他对象(如查询、窗体和报表等)。
2.2.4Access和VisualBasic结合的优点
除了Access和VisualBasic各自的特点之外,将两者结合起来使用,最主要的优点就是两者使用相同的数据库引擎,即MicrosoftJet。
MicrosoftJet是MicrosoftAccess数据库系统的数据库引擎组件。
在1992年Access1.0发布的时候,Jet首次问世。
当1993年VisualBasic3.0发布的时候,Jet1.1内置于其中。
此后,只要发布新版本的Access,就会有相应版本的Jet数据库问世。
当一个新版本VisualBasic准备发布的时候,它一定会内置进行了一些修改的最新版本Jet数据库。
由于Access和VisualBasic使用的相同数据库引擎,因此可以建立既包括Access组件又包括VisualBasic组件的应用程序,这样就提高了程序的稳定性,充分发挥了两者各自的优点。
2.2.5ADO访问数据库的原理
ADO控件(也称为ADOData控件)与VB固有的Data控件相似。
使用ADOData控件,可以利用MicrosoftActiveXDataObjects(ADO)快速建立数据库绑定控件和数据提供者之间的连接。
ADOData控件可以实现以下功能:
连接一个本地数据库或远程数据库。
打开一个指定的数据库表,或定义一个基于结构化查询语言(SQL)的查询、存储过程或该数据库中的表的视图的记录集合。
将数据字段的数值传递给数据绑定控件,可以在这些控件中显示或更改这些数值。
添加新的记录,或根据更改显示在绑定的控件中的数据来更新一个数据库。
数据库的连接可通过ADO控件实现,为此,必须在工程部件中选择MicrosoftADODataControl6.0(OLEDB),然后在窗体中添加ADO控件。
利用ADO连接数据库有方法,具体是:
在ADODC属性页中选择生成按钮,进入数据链接属性对话框;然后选择该对话框中的连接属性页,选择或输入服务器名称和数据库等重要信息;最后测试连接,连接成功后,按确定按钮,返回到属性页对话框,可获得连接字符串。
2.3数据库设计
数据库是存储在计算机内有组织的大量共享数据的集合,可以供用户共享,具有尽可能小的冗余度和较高的数据独立性,并且具有完善的自我保护能力和数据恢复能力。
数据库设计(DatabaseDesign,简记为DBD)是针对给定的软、硬件环境,根据现实问题要求,设计一个合理的数据模型,建立DB结构和DB应用系统。
数据库设计的一般步骤包括需求分析、概念设计、逻辑设计、物理实现四个基本过程。
需求分析:
需求分析是数据库设计的起点。
这部分的工作概括地说是在充分调查分析的基础上,把握现行数据处理的方式及特点,把握好用户的技术平台及人员结构,确定用户对目标系统的需求,在此基础上撰写出需求分析报告并得到用户确认,使用户和开发者对目标系统有一个共同的理解,从而为后续设计工作建立一个基线。
概念设计概念结构设计是把用户的信息要求统一到一个整体逻辑结构中,此结构能够表达用户的要求,是一个独立于任何DBMS软件和硬件的概念模型。
逻辑设计逻辑结构设计是将上一步所得到的概念模型转换为某个DBMS所支持的数据模型,并对其优化。
物理实现物理设计是为逻辑数据建立一个完整的能实现的数据库结构,包括存储结构和存取方法。
在此基础上,根据选定的软硬件平台,加以实现。
3.超市管理系统软件模块规划
会员管理
3.1模板结构功能及软件数据流程图
3.2模块页面功能描述:
各模块的设计功能说明
本系统分为两大模块,分别是员工登陆和会员登陆。
1、管理员登陆包括7个版块,分别是销售管理、商品/仓库管理、会员管理、员工管理、营业信息管理、系统管理、更改密码。
销售管理包括两个子模块:
(1)销售前台:
(2)积分商品赠送:
商品管理包括12个子模块:
(1)出货记录:
出货单用来已出库的存货。
出货登记中包括出货商品编号、出货商品名称、规格、出货数量、出货单价、出货年、出货月、出货日、出货总金额、买家、经手人。
(2)订货记录:
订货单用来未出库的已售商品。
订货登记中包括订货商品编号、订货商品名称、规格、订货数量、订货单价、订货年、订货月、订货日、订货总金额、买家、经手人。
(3)商品入库:
日常业务中需要频繁使用的功能,主要对每笔采购人库业务进行记录,自动生成对应的采购凭证。
进货登记中包括进货商品编号、进货商品名称、产地、规格、进货数量、进价、进货年、进货月、进货日、进货总金额、供应商、经手人。
(4)供货商查询:
此功能模块是设置有关供应商的档案信息,以便对供应商进行管理。
(5)退货记录:
退货单用来退已入库的存货。
退货登记中包括退货商品编号、退货商品名称、规格、退货数量、退货单价、退货年、退货月、退货日、退货总金额、供应商、经手人。
(6)商品查询:
此功能模块是设置某一商品的信息,包括商品编号、商品名称、产地、规格、库存数量等信息。
同样,商品编号也是最重要的,也不允许重复。
(7)库存警报:
通过生成一张当前库存的报表,可以使用户清楚地了解即时库存的信息。
(8)退货记录查询。
(9)出货记录查询。
(10)订货记录查询。
(11)入库记录查询。
(12)商品类别查询:
查询商品不同的类别。
会员管理包括了六个子模块:
(1)会员储值
(2)会员卡挂失(3)会员密码找回(4)会员信息查询(5)积分商品查询(6)新增积分商品
员工管理包括了四个子模块:
(1)部门修改
(2)职位修改(3)添加新员工(4)员工查询
营业信息管理包括了六个子模块:
(1)零售汇总查询
(2)批发汇总查询
(3)商品销售统计
(4)销售利润查询
(5)销售利润统计图
(6)积分储值兑换率
系统管理包括了四个子模块:
(1)系统初始化
(2)管理员信息
(3)数据清理
更改密码:
保护密码的安全性,如用户发现密码有可能已被别人窃取或者其他原因想修改密码时,通过这个模块就可立刻实现。
2、会员登陆包括了六个版块:
积分管理、积分商品查询、会员卡挂失、一般商品查询、会员信息更改、更改密码
更改密码:
保护密码的安全性,如用户发现密码有可能已被别人窃取或者其他原因想修改密码时,通过这个模块就可立刻实现。
4.代码设计(以下仅为几个重要窗体中的核心代码)
(1)登陆页
Dimls
PrivateSubCombo1_Click()'选择登陆类型
IfCombo1.ListIndex=1Then
ls=1
bh.Caption="会员编号:
"
Text2=""
Text1=""
Text2.Enabled=True
ElseIfCombo1.ListIndex=0Then
ls=2
bh.Caption="工号:
"
Text2=""
Text1=""
Text2.Enabled=True
Else
ls=3
bh.Caption="管理员:
"
Text2="管理员"
Text1=""
Text2.Enabled=False
EndIf
EndSub
PrivateSubCommand1_Click()
Ifls=1Then
dlyh="select*from会员信息where会员编号='"&Trim$(Text2.Text)&"'"
ElseIfls=2Then
dlyh="select*from员工信息where工号='"&Trim$(Text2.Text)&"'"
ElseIfls=3Then
dlyh="select*from管理员信息"
EndIf
IfText2=""OrText1=""Then
MsgBox"编号和密码不能为空!
",vbOKOnly,"提示"'检查账号,密码是否为空
Text2.SetFocus
Else
Setyhjl=reset(dlyh)
Ifyhjl.RecordCount=0Then
MsgBox"输入的编号不存在!
",vbOKOnly,"提示"'检查账号是否存在
Text1=""
Text2=""
Text2.SetFocus
Else
'检验登陆密码
c=Trim$(yhjl.Fields("登陆密码"))
Ifc=Trim$(Text1.Text)Then
'记录登陆信息
Ifls=1Then
yhxm=yhjl.Fields("会员")
main会员.Show
ElseIfls=2Then
yhxm=yhjl.Fields("员工姓名")
yhqx=Val(yhjl.Fields("权限"))
main员工.Show
ElseIfls=3Then
yhxm=yhjl.Fields("管理员")
yhqx=Val(yhjl.Fields("权限"))
main员工.Show
EndIf
UnloadMe
Else
'错误提示
MsgBox"密码错误!
",vbCritical
Text1=""
EndIf
EndIf
EndIf
EndSub
(2)商品入库
Dimlsa'记录是否为新品
Dimstbh
PrivateSubCommand1_Click()
lsa=1'记录按钮信息
'控件初始化
Command1.Enabled=False
Command2.Enabled=False
Command5.Enabled=False
Fori=2To10
Text1(i).Enabled=True
Nexti
Text1(8).Enabled=False
DataCombo1.Enabled=True
Command3.Enabled=True
Command4.Enabled=True
Frame1.Enabled=True
'获得商品编号
a="select商品编号from商品信息"
Setrs=reset(a)
Ifrs.RecordCount=0Then
b=Format(1,"00000")
Else
rs.MoveLast
b=Val(rs.Fields("商品编号"))+1
b=Format(b,"00000")
EndIf
Text1
(1)=b
'获得入库单编号
a="select编号from入库记录"
Setrs=reset(a)
Ifrs.RecordCount=0Then
b=1
Else
rs.MoveLast
b=Val(rs.Fields("编号"))+1
EndIf
Text3=b
EndSub
PrivateSubCommand2_Click()
Text1
(1).Enabled=True
lsa=2'记录按钮信息
'控件初始化
Command1.Enabled=False
Command2.Enabled=False
Command5.Enabled=False
Command3.Enabled=True
Command4.Enabled=True
DataCombo1.Visible=False
Text4.Visible=True
Text4.Enabled=False
a="select编号from入库记录"
Setrs=reset(a)
Ifrs.RecordCount=0Then
b=1
Else
rs.MoveLast
b=Val(rs.Fields("编号"))+1
EndIf
Text3=b
EndSub
PrivateSubCommand3_Click()
a="select*from商品信息"
b="select*from入库记录"
'计算总价
Fori=6To7
IfText1(i)=""Then
MsgBox"可输入项目都不能为空!
",vbOKOnly,"提示"
GoToaa
EndIf
Nexti
Text1(8)=Val(Text1(6))*Val(Text1(7))
Iflsa=1Then'记录新品信息
'检查有无项目为空
IfDataCombo1.Text=""Then
MsgBox"可输入项目都不能为空!
",vbOKOnly,"提示"
GoToaa
EndIf
Fori=2To14
IfText1(i)=""Then
MsgBox"可输入项目都不能为空!
",vbOKOnly,"提示"
GoToaa
EndIf
Nexti
IfMsgBox("本记录一旦输入,便不能修改,真的要输入吗?
",vbYesNo,"输入确认")=vbYesThen
Setrsa=reset(a)
rsa.AddNew
rsa.Fields("商品编号")=Trim(Text1
(1))