汽车销售管理系统的设计实现与汽车4S店销售管理软件的应用(15页).doc

上传人:1595****071 文档编号:38433871 上传时间:2022-09-03 格式:DOC 页数:15 大小:193.50KB
返回 下载 相关 举报
汽车销售管理系统的设计实现与汽车4S店销售管理软件的应用(15页).doc_第1页
第1页 / 共15页
汽车销售管理系统的设计实现与汽车4S店销售管理软件的应用(15页).doc_第2页
第2页 / 共15页
点击查看更多>>
资源描述

《汽车销售管理系统的设计实现与汽车4S店销售管理软件的应用(15页).doc》由会员分享,可在线阅读,更多相关《汽车销售管理系统的设计实现与汽车4S店销售管理软件的应用(15页).doc(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、-汽车销售管理系统的设计实现与汽车4S店销售管理软件的应用-第 15 页 汽车销售管理系统的设计实现与汽车4S店管理系统应用一、绪论摘要:本系统是为解决汽车销售公司的管理问题而设计。随着经济的发展和国内汽车市场的不断扩大,某汽车销售公司定单成倍增加,各项业务更加细化,各部门分工更加明确。而目前的人工管理方式显然已是不符合现代企业的管理要求。基于整体考虑,本次课程设计任务就是设计一个管理系统,利用计算机来代替人工操作。减轻了员工的劳动强度,提高了劳动质量和效率,减少了错误的发生。本次设计,从需求分析,概念设计,逻辑设计,物理设计,到数据库的建立、运行,再到数据库的安全维护等各个方面进行了详细的分

2、析设计。并且值得一提的是,我认真分析了企业的业务需求,公司的主要职责和主要结构等信息,从而保证了设计出比较符合公司需要的管理系统。1.1 系统简介智百盛汽车销售管理系统是针对汽车销售行业的业务特点,专为汽车销售的公司设计制作。我们依据现代科学管理理念,集国内外先进管理思想,并结合自身多年积累的开发经验和大量的市场调研,在高度集成、操作简单、方便管理、使用灵活等原则的指导下精心研发的一款软件。该软件主要包括客户关系管理、进车管理、库存管理、售车管理、代办管理、财务管理、报表分析、系统管理等模块。软件价格低廉,功能强大,维护简单,无论中、小型企业,花费很少投资,可以迅速得到企业全面信息化管理应用。

3、l 智百盛汽车销售管理系统7.5紧密结合当今汽销模式,为汽销企业提供了全面的信息管理功能。是广大汽车经销商、汽车特许专营店等用户优秀的计算机管理方案。满足各级部门对工作的需求,如总经理、销售经理、销售人员、会计、出纳、计划员、库管员等,是汽车销售企业最佳管理利器。集汽销企业的进、销、存、财管理于一体。所有单据和报表均支持底盘号、发动机号、合格证号等显示、查询和打印。先进的万能查询功能。支持用户自定义报表。所有单据和表格可以导出至Excel、Word、HTML、TXT格式文件。严谨的权限设置,不仅可以定义菜单权限,还可以定义具体操作权限。实用的多帐套管理。操作简单、极易上手,无须专业培训,会用键

4、盘鼠标即会使用。 智百盛汽车销售管理系统采用了大量的最新技术,进一步完善了业务管理功能,整个产品在管理功能、易用性、数据容量、数据安全性等方面都有了很大的提高。 二、系统需求分析 本系统的设计模拟一般医院的汽车销售管理系统内容,经过充分的系统分析和调研,本系统主要包括的信息有3类:汽车商品信息、汽车进货信息以及汽车销售信息。 在传统的销售管理工作中,往往是用人工清点的方式来掌握仓库中的汽车商品、使用手工记账的方式来掌握商品的进货和销售情况。这种方式在数量较少、库存变换少的情况下,不失为一种好的方法。但是,随着每天所发生的进货和销售情况纷繁复杂,如果借助人工来记录和管理,将会耗费大量的时间,而且

5、容易出现错误,造成管理上的混乱。 具体而言,汽车销售管理系统需要实现一下的需求:(1) 能够对医院过拥有的各种汽车的基础信息进行维护和管理。汽车的基础信息包括:汽车的顺序号、汽车名称、汽车规格、计量单位、备注信息、库存数量等。系统需要能够对汽车信息进行添加、修改和删除,也可以以图形的方式显示出现汽车的库存数量的比较。(2) 跟踪各种汽车的的进货信息。汽车的进货信息包括顺序号、汽车名称、进货数量、进货价格、进货日期、备注等。系统还需要能够对进货信息进行添加、修改和删除,也可以按照一定的条件来进行查询。(3) 跟踪各种汽车的销售信息。汽车的销售信息包括顺序号、汽车名称、顾客名称、购买数量、售出价格

6、、销售日期、备注等。系统需要能够对销售信息进行添加、修改和删除,也可以按照一定的条件来进行查询。三、 界面设计设计主界面美观,方便实用:四、概念结构设计本阶段的主要任务是将需求分析得到的用户需求抽象为信息结构结构(即概念模型)设计概念结构通常有四类方法:自顶向下、自底向上、逐步扩张和混合策略。我在这里采用自底向上方法。概念设计结果如下:(某公司轿车销售管理系统的基本ER图)五、逻辑结构设计 逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与sql所支持的数据模型相符合的逻辑结构。1E-R图向关系模型转换由概念设计的E-R图可得一般关系模型如下厂商(厂商号,厂商名,地址,电话,

7、信用度)客户(客户号,客户名,地址,电话,信用度)发货单(货单号,细节号,产品号,客户号,数量,日期,金额,折扣)收款单(客户号,定单号,收据号,收款金额,收款日期)定单(定单号,细节号,产品号,厂商号,数量,日期,金额)付款(厂商号,定单号,发票号,支付金额,支付日期)用户(用户ID,用户名,密码,用户类型,权限)员工(员工号,姓名,性别,部门,职务,电话)产品(产品号,产品名,厂商号,单价,库存量) 2数据模型的优化数据库逻辑设计的结果不是唯一的.为进一步提高数据库应用系统的性能,我们还应该根据应用需要适当的修改,调整数据模型的结构,这就是数据模型的优化。(1) 数据依赖举例R厂商厂商号-

8、厂商名,厂商号-地址,厂商号-电话R用户用户ID用户名,用户ID密码,用户ID用户类型,用户ID权限,用户类型权限(2) 对数据依赖进行极小化处理,消除冗余联系举例 上述关系中,发货单中存在冗余联系(具体是细节号、折扣等),因此我们可以增加一个发货细节单和折扣规则单。(3) 按照数据依赖的理论对关系模式逐一进行分析,考察是否存在部分函数依赖,传递函数依赖,多值依赖等,确定各关系分别属于第几范式举例上述关系中,用户表存在非主属性传递依赖,因此用户表属于2NF。我们可以增加一个用户权限表来消除该表中非主属性传递依赖。3. 逻辑设计最终结果如下:(UserType表)(Users表)(Staff表)

9、(共13个表,其他截图略)六、系统结构设计1在关系模式存取方法选择之前,我们首先要对要运行的事务进行详细分析,获得选择物理数据库设计所需要的参数。同时,还要知道每个事务在各关系上运行的频率和性能要求。(1) 对于数据库查询事务,我们需要得到如下信息:查询的关系、查询条件/连接条件涉及的属性、查询的投影属性A、查询发货厂商名、产品、发货数量(100)和日期事务、查询的关系:厂商表、发货单表、产品表、查询条件所涉及的属性:厂商号、发货数量、产品号 III、连接条件所涉及的属性:厂商号、产品号 IV、查询的投影属性:厂商名、产品名、发货数量、发货日期(2) 对于数据更新事务,我们需要得到如下信息:被

10、更新的关系、每个关系上的更新操作条件涉及的属性、修改操作要改变的属性值B、对发货事务、被更新的关系:发货表、每个关系上的更新操作条件所涉及的属性:无III、需要改的属性值:货单号、产品号、发货数量、发货日期2. 关系模式存取方法选择(即建立哪些存储路径)C、对carsale建立索引对厂商表上的厂商号、发货表的产品号、产品表的产品号等建立索引,因为他们经常在查询条件和连接条件中出现根据事务查询中的厂商表建立索引如下:CREATE UNIQUE INDEX FaPa_no ON Factory(Fa_no);D、对carsale建立聚簇索引 对产品表的厂商号、付款表的厂商号、收款表的客户号等建立聚

11、簇索引,因为他们在其关系表中的值重复率很高 对产品表的产品号、发货表的产品号、订单表的产品号等建立聚簇索引,因为他们经常出现在相等比较条件中 根据事务查询中产品表建立聚簇索引如下 CREATE CLUSTER INDEX ProFa_no ON Product(Fa_no);E、对carsale确定数据的存放位置 为提高系统性能,我们根据应用情况将数据的易变部分和稳定部分、经常存取部分和存取频率较低部分分开存放。即我们把表和索引放在不同的磁盘上。F、对carsale确定系统配置使用数据库的用户数(我们只要设置比较少的用户数);同时打开的数据库对象数(用户同时操作对象不超过3个);内存分配参数(

12、运行exe文件需要5M内存);缓冲区分配参数(略);数据库的大小(预留500M数据存储空间)等。G、对carsale物理结构的评价 数据库物理设计过程中需要对时间效率、空间效率、维护代价和各种用户要求进行权衡,其结果产生多种方案。经过我们的细致评价,得出上述系统配置作为carsale的数据库物理结构。七、详细设计数据的载入和应用程序的调试(1)由于该系统尚未投入使用,我们仅象征性地载入少量数据(轿车信息表导入实验数据) (客户信息表导入实验数据)(订单表导入实验数据)(生产商表导入实验数据)【应用程序的调试】数据库应用程序的设计应该与数据库设计同时进行,鉴于VB简单易用,我们选择VB作为应用程

13、序的设计语言。因此在组织数据入库的同时还要调试应用部分代码:部分代码 A 进货信息列表窗体代码 Private Sub cmdAdd_Click()frmStock.mbAddMode = TruefrmStock.Show vbModalEnd SubPrivate Sub cmdDelete_Click()On Error GoTo errHandlerDim l As Longl = grdList.TextMatrix(grdList.Row, 1)gConn.Execute delete from stock where 顺序号= & lUnload MeLoad MeMe.SQL

14、= select * from stockMe.ShowExit SuberrHandler: MsgBox Err.Description, vbCritical, 错误End SubPrivate Sub cmdEdit_Click()frmStock.mnSerial = CLng(grdList.TextMatrix(grdList.Row, 1)frmStock.mbAddMode = TruefrmStock.Show vbModalEnd SubPrivate Sub cmdFind_Click()frmFind.SQL = mRs.SourcefrmFind.Show vbMo

15、dalUnload MeLoad MeIf Trim(frmFind.msResultSQL) Then Me.SQL = select * from stock where & frmFind.msResultSQLEnd IfMe.ShowUnload frmFindEnd SubPrivate Sub cmdShowAll_Click()Unload MeLoad MeMe.SQL = select * from stockMe.ShowEnd SubPrivate Sub Form_Load()Dim i As IntegerWith grdList .Cols = 8 .TextMa

16、trix(0, 1) = .TextMatrix(0, 2) = 汽车名称 .TextMatrix(0, 3) = 供应商名称 .TextMatrix(0, 4) = 进货数量 .TextMatrix(0, 5) = 商品单价 .TextMatrix(0, 6) = 进货日期 .TextMatrix(0, 7) = 备注 .FixedRows = 1 For i = 0 To .Cols - 1 .ColAlignment(i) = 0 Next i .FillStyle = flexFillRepeat .Col = 0 .Row = 0 .RowSel = 1 .ColSel = .Col

17、s - 1 .CellAlignment = 4 .ColWidth(0) = 100 .ColWidth(1) = 0 .ColWidth(2) = 1000 .ColWidth(3) = 1000 .ColWidth(4) = 1000 .ColWidth(5) = 1000 .ColWidth(6) = 1000 .ColWidth(7) = 1000 .Row = 1End WithSet mRs = New ADODB.RecordsetEnd SubPrivate Sub Form_Resize()fraManage.Left = (Me.ScaleWidth - fraManag

18、e.Width) / 2fraManage.Top = Me.ScaleHeight - 200 - fraManage.HeightgrdList.Top = 200grdList.Width = Me.ScaleWidth - 200grdList.Left = Me.ScaleLeft + 100grdList.Height = Me.ScaleHeight - fraManage.Height - grdList.Top - 200End SubPrivate Sub Form_Unload(Cancel As Integer)If mRs.State adStateClosed Th

19、en mRs.CloseEnd Sub B 进货信息编辑窗体代码 Private Sub cmdCancel_Click()If mbChange Then If MsgBox(保存当前记录的变化吗?, vbOKCancel + vbExclamation, 警告) = vbOK Then Call cmdOK_Click End IfEnd IfUnload MeUnload frmStockListLoad frmStockListfrmStockList.SQL = select * from stockfrmStockList.ShowEnd SubPrivate Sub cmdOK_

20、Click()On Error GoTo errHandlerIf txtIntem(3).Text = Then MsgBox 字段不能为空,而且只能输入数字, vbCritical, 错误End IfIf txtIntem(4).Text = Then MsgBox 字段不能为空,而且只能输入数字, vbCritical, 错误End IfIf Trim(cboItem) = Then MsgBox 必须选择汽车名称, vbCritical, 错误 cboItem.SetFocus Exit SubEnd IfIf Not IsDate(Trim(txtIntem(5) Then MsgB

21、ox 请输入正确的日期格式!, vbOKOnly + vbExclamation, 警告 txtIntem(5).SetFocus Exit SubEnd IfIf Not mbAddMode Then gConn.Execute delete from stock where 顺序号= & mnSerial & End IfDim rs As New ADODB.Recordsetrs.Open select * from stock, gConn, adOpenDynamic, adLockOptimisticrs.AddNewrs(汽车名称) = cboItem.TextDim i As

22、 IntegerFor i = txtIntem.LBound To txtIntem.UBound rs.Fields(i).Value = txtIntem(i)Next irs.Updaters.ClosemnQuantity = CInt(txtIntem(3) - mnQuantitygConn.Execute update products set 库存数量=库存数量+ & mnQuantity & where 汽车名称= & cboItem.Text & If mbAddMode Then mbChange = True MsgBox 添加进货信息成功!继续添加下一条进货信息,

23、vbOKOnly + vbExclamation, 添加进货信息 Unload Me Me.Show vbModalElse Unload Me frmStockList.SQL = select * from stock frmStockList.ShowEnd IfExit SuberrHandler: MsgBox Err.Description, vbCritical, 错误End SubPrivate Sub Form_Load()On Error GoTo errHandlerDim rs As New ADODB.Recordsetrs.Open select distinct

24、汽车名称 from products, gConn, adOpenKeysetIf Not rs.EOF Then cboItem.Clear Do While Not rs.EOF cboItem.AddItem rs(汽车名称) rs.MoveNext LoopElse MsgBox 当前数据库不包含任何的汽车信息。请先设置汽车信息!, vbOKOnly + vbExclamation, 警告 Exit SubEnd Ifrs.CloseIf mbAddMode Then Me.Caption = Me.Caption & 添加 txtIntem(5) = Format(Date, yyy

25、y-mm-dd) txtIntem(3) = 0 txtIntem(4) = 10 mnQuantity = 0Else Me.Caption = Me.Caption & 修改 rs.Open select * from stock where 顺序号= & mnSerial If Not rs.EOF Then cboItem.Text = rs(汽车名称) Dim i As Integer For i = txtIntem.LBound To txtIntem.UBound txtIntem(i) = rs.Fields(i).Value Next i End If mnQuantity

26、 = rs(进货数量) rs.CloseEnd IfmbChange = FalseExit SuberrHandler: MsgBox Err.Description, vbCritical, 错误End SubPrivate Sub txtIntem_Change(Index As Integer)mbChange = TrueEnd SubPrivate Sub txtIntem_GotFocus(Index As Integer)txtIntem(Index).SelStart = 0txtIntem(Index).SelLength = Len(txtIntem(Index)End Sub

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁