毕业实习设计汽车销售管理系统.docx
- 文档编号:4957519
- 上传时间:2022-12-12
- 格式:DOCX
- 页数:16
- 大小:492.27KB
毕业实习设计汽车销售管理系统.docx
《毕业实习设计汽车销售管理系统.docx》由会员分享,可在线阅读,更多相关《毕业实习设计汽车销售管理系统.docx(16页珍藏版)》请在冰豆网上搜索。
毕业实习设计汽车销售管理系统
xxxx大学本科学年实习报告
题目:
名汽越宇汽车销售管理系统的分析与设计
学号:
学生姓名:
院部:
统计与信息学院
专业:
信息管理与信息系统
年级:
指导教师
及其职称:
完成日期:
2011年07月05日
名汽越宇汽车销售管理系统的分析与设计
一、系统分析
(一)概述
本系统销售系统设计是建立在当前汽车公司的销售模式还比较传统,还没有完全适应信息时代的要求,很大程度上公司的管理处于信息不对称状态。
这种不对称表现在两个方面:
一个是卖家知道的信息比买家得多,另一个是公司内部由于存在多层管理,信息流通需要时间,所以高层管理人员知道的信息较低层人员多些。
在汽车销售管理业务的流程中,若公司的销售人员不能及时掌握公司里待售汽车的质量、性能等细节信息,这就使销售人员同客户处于信息不对称紧缺的一方,将直接影响销售的业绩;同样,对于公司的中高层管理人若不能及时了解企业的汽车销售情况,不知道哪款车卖得好,不知道客户最满意的性价比是多少,就不能制作出有效的销售策略以适应瞬息万变的市场变化,如此会导致科研部不知道正确的研究方向,生产部不能生产出受顾客欢迎的产品····企业很容易就陷入了恶性循环。
针对撒谎能够面的问题所在,我确定了设计的整体思路着力解决车辆的库存、购车、退车及相关查询,已在科学管理销售数据,实现相互局的快速、方便流动。
销售人员通过车库管理采集的详细的汽车型号信息,可以实施监控车库的库存信息,销售人员也可以根据掌握的信息,为客户提供更加优质的服务。
通过本系统实现相应的查询可以减少因信息不对称造成的影响,从而给公司汽车销售更好的盈利创造造条件。
(二)需求分析
本设计所讲述的汽车销售管理系统,首先进行系统的需求分析,提出系统任务和系统业务流程的分析。
其次,用MicrosoftofficeAccess2007建立系统运行所要的后台数据库。
在数据库设计中,本设计又先对数据库进行需求分析和概念设计结构的列出,这样得到了较合理的逻辑数据结构,利用此数据的结构才能支持系统的各模块的实现。
然后通过MicrosoftVisualStudio.NET2003进行各个系统功能模块的创建和系统的实现。
在创建过程中,本设计先从系统主模块着手,再实现各个小的模块功能,而在实施的过程中则从细节入手,制作出各小模块,最后在系统实现的过程中将数据库连接起来,实现整个系统的正常运行。
一个正常进行的汽车销售需要管理所拥有的汽车信息的设置、用户人员即销售人员的信息和客户的信息等,更重要的还要提供汽车信息管理。
面对各种不同种类的信息,需要合理的数据库结构来保存数据信息以及有效的程序结构支持各种数据操作的执行。
(三)业务流程图
数据库需求分析是数据库设计的第一个阶段,是非常重要的一个阶段,在这个阶段主要是收集基本数据、数据结构以及数据处理的流程,组成一份一份详细的数据字典,供后续使用。
首先对公司的业务流程进行调查分析,了解其中数据的产生、流动方向和系统的关系情况。
下图即为名汽越宇汽车销售的简单流程:
退车单
图1名汽越宇汽车销售流程图
(四)数据流程图
根据对汽车销售的业务的流程分析,可以得到系统之间各模块的关系,可以画出各个层次的数据流程图。
数据流程图(简称DFD)用到四个基本符号:
外部实体、数据流、数据存储和处理过程。
本系统中,外部实体以一个小圆表示(外部实体最好用一个小方块并外加一个立体轮廓线表示在小方块注明外部实体的编码属性和名称),在小圆内注明外部实体的编码属性和名称;同带箭头的直线段表示对应数据流向;用矩形便是数据处理过程同时用数据库(一般用右边不封
口的长方形来表示)来进行数据的存储。
下图描述了本汽车销售管理系统的数据
流程过程:
图2名汽越宇销售管理系统
二、系统设计
(一)汽车销售管理系统功能介绍
系统用户首先进入到的是登录页面,输入用户名和密码后,系统连接服务器验证用户名和密码是否匹配。
如果不匹配,就显示警告出错信息,如果匹配,就进入欢迎界面,即主菜单,显示出:
“名汽越宇欢迎您!
———爱车~爱名汽!
“的广告词。
系统用户登陆主页面后,可以进行系统的所有操作。
在用户信息栏,可以实现登录密码的修改重新登录和退出系统;在查询信息栏,可以实现客户信息和车辆信息的查询,随时掌握客户信息车辆信息,不但可以知道个编号车龄的库存情况及各车编号车辆的销售情况,而且还可以查询到某固定用户的购车情况,若系统够大就可以推算出各车辆的消费对象主要是什么;在汽车信息栏,可以实现车辆购买、车辆添加及退车查询,同时可以实现汽车入库量的增加。
三个模块联合可以实现按身份证标号和车编号增、删、改、查的系统功能的实现。
名汽越宇汽车销售管理系统
用户信息
汽车信息
查询信息
数据库连接
登录系统验证
汽车查询
客户查询
退出系统
密码修改
汽车添加
退车
汽车购买
图3名汽越宇汽车销售管理系统的结构框架图
(二)概念模型
根据上面对业务流程和数据流程的分析,可以设计出系统数据库的各个数据项与数据结构。
建立起系统所需的数据表,所有的表格都有一个主码,以下是各数据表的主要数据元素条目:
(1)系统用户:
包括的数据项有用户名、密码
(2)汽车信息:
汽车名、汽车编码、汽车价格、车数
(3)客户信息:
客户名、身份证号、付款额、所购车号
由前面的需求分析,可以得到各实体的E-R图如下:
系统用户
密码
用户名
图4系统用户实体E-R图
汽车信息
车价
车数
车名
车编码
图5汽车信息实体E-R图
客户
付款额
客户名
身份证号
所购车号
图6客户实体E-R图
购买
客户
入库
仓库
汽车
m1
1
1
图7汽越宇汽车销售管理系统的E-R图
上图可以看出多一种汽车只能一次进入一个仓库,而一个仓库可以以此存放多种汽车,所以汽车和仓库是一对多的关系;一名客户一次购买一辆汽车,所以客户和汽车之间是一对一的关系;一名销售管理员服务多名客户,儿一名客户再一次购买活动中仅由一名销售管理人员服务,所以管理销售人和客户之间是一对多的关系;因销售需要一名销售管理员可以提多种汽车,同时同一类型的车可以由不同的销售管理员提取,所以下手管理员和仓库之间的关系是多对多。
(三)逻辑模型
将上面的数据库的概念模型转化为数据库系统所支持的实际数据模型,就变成了数据库的逻辑结构。
在上面的实体与实体之间关系的基础上,形成了数据库中的表及各表格之间的关系。
下面将列出该名汽销售管理系统的几个重要的关系表:
表1系统用户表(yhinfo)
列名
说明
数据类型
可否为空
Yhm
用户名
字符型
Notnull
Mm
密码
整型
Notnull
客户信息表(cus)
列名
说明
数据类型
可否为空
Khm
客户名
字符型
Notnull
Sf
身份证号
字符型
Notnull
Fk
付款额
货币型
Notnull
cid
所购车号
字符型
Notnull
汽车信息表(car)
列名
说明
数据类型
可否为空
cID
车编号
字符型
Notnull
Cs
车数
数字型
Notnull
Cm
车名
字符型
Notnull
Cj
车价
货币型
Notnull
三系统实现
做好前期所有的准备工作就可以把该系统在PowerBulider9.0中进行实现,以下为系统运行时实现过程中的界面极其代码:
(一)首页登陆
图8进入程序页面
在W_login的登录按钮下写代码:
integermm
stringyhm
yhm=trim(sle_1.text)
select"yhinfo"."mm"
into:
mm
from"yhinfo"
where"yhinfo"."yhm"=:
yhm;
ifsqlca.sqlcode=100then
messagebox("提示","用户名不存在!
")
elseifsqlca.sqlcode=0then
ifmm=integer(trim(sle_2.text))then
open(w_hy)
else
messagebox("提示","您输入的密码有误!
!
!
")
endif
endif
在退出按钮写代码:
close(parent)就可以退出页面。
以上程序可以实现当用户名为mq且用户输入正确的密码时才可以进入系统。
当用户输入的用户名不是mq时,不论密码是否正确时都会弹出“用户名不存在”的窗口提示,当用户名正确而密码不对时会弹出“您输入的密码有误”的窗口提示。
通过该过程可以增加系统的安全性。
在前一页面里点击登陆就会进入系统--欢迎页面,如图:
图9欢迎页面
在欢迎界面,有三个菜单栏:
用户信息、查询信息、汽车信息,各菜单下的子菜单信息分别为:
密码修改退出系统、汽车查询客户查询、购买汽车添加车辆退车如图:
图10欢迎页面选择菜单显示页面
(二)密码修改:
图11密码修改页面
在修改页面填写相应信息,点击确认修改既可以完成密码的修改,保证了系统的安全性其实现代码是在确认修改按钮下写:
SQLCA.DBMS="ODBC"
SQLCA.AutoCommit=False
SQLCA.DBParm="ConnectString='DSN=MSAccessDatabase;UID=;PWD=',ConnectOption='SQL_OPT_TRACEFILE,E:
\书屋\名汽越宇\名汽.accdb'"
connect;
updateyhinfosetmm=:
sle_3.textwhereyhm=:
sle_1.text;
MESSAGEBOX("提示","恭喜你密码修改成功!
")
close(w_mmupdate)
在退出按钮写代码:
close(w_mmupdate)就可以退出页面。
(三)汽车查询
点击第二栏的菜单项,选择汽车查询:
图12查询进入页面
输入所要查询的汽车编号,就可以显示所查询的汽车的详细信息,页面如下:
图13汽车查询页面
实现主要代码为:
在查询按钮下写代码:
dw_1.setfilter("cid="+sle_1.text)
dw_1.filter()
在退出按钮写代码:
close(W_cc)就可以退出页面。
(四)客户查询:
图14客户查询界面
点击第二栏的菜单项,选择客户查询,填写信息,点击查询,就可以查询指定用户对指定车编号汽车的购买情况。
其实现代码为:
在查询按钮写:
dw_1.retrieve()
dw_1.setfilter("cus_sf='"+sle_1.text+"'andcar_cid="+sle_2.text)
dw_1.filter()
在退出按钮写代码:
close(W_khchaxun)就可以退出页面。
(五)购买汽车:
点击第三栏的菜单项,选择购买汽车,再出现的页面中书写相应的信息,点击确认购买就会弹出相应客户及所购汽车的详细信息窗口如下页面:
图15购买汽车页面
其实现的代码为:
在确认购买按钮下写代码:
stringcm,sf,khm,cid,cj,fk
cm=string(sle_1.text)
khm=string(sle_4.text)
sf=string(sle_5.text)
cid=string(sle_2.text)
cj=string(sle_3.text)
fk=string(sle_6.text)
integercs
SELECT"car"."cs"
INTO:
cs
FROM"car"
WHERE"car"."cID"=:
cID;
ifsqlca.sqlcode=100then
messagebox("提示","连接失败!
")
elseifsqlca.sqlcode=0then
UPDATE"car"
SET"cs"=cs-1
WHERE"car"."cid"=:
cid;
ifsqlca.sqlcode=0then
stringstr
str="您要买的车是+~n"+&
"车名"+cm+"车编号"+cid+"车价"+cj+"~n"+&
"客户名是"+khm+"身份证号为"+sf+"付款额"+fk
messagebox("提示",str)
else
messagebox("错误","更新错误"+SQLCA.Sqlerrtext)
endif
endif
通过上面程序可以清晰的显示出某用户的购车情况,并且该程序同数据库连接可以实现客户购买某编号车辆,若对该车辆进行查询就会发现该车的库存减一(本系统考虑的是一个用户一次购买一辆车的普遍情况,没有考虑同一顾客一次购买多辆车的情形)
在退出按钮下写代码:
close(W_gouche)就可以退出页面。
(六)汽车添加:
实现页面如下:
图16汽车添加页面
点击第三栏的菜单项,选择添加车辆,点击相应按钮进行操作,添加记录或删除记录后一定要进行保存,才可以。
其功能实现的代码为:
车辆添加按钮下写:
integerc_row
c_row=dw_1.insertrow(0)
dw_1.scrolltorow(c_row)
页面实现
图17确认添加页面
其实现代码为:
保存按钮下写代码:
ifdw_1.update()=1then
commitusingsqlca;
messagebox("提示","数据已保存成功!
")
else
rollbackusingsqlca;
messagebox("提示","数据没保存成功!
")
endif
通过以上程序可以实现车辆的添加,有以上程序可以避免某种车量的及时补给、新型车辆的供应。
退出按钮下写代码:
close(parent)就可以退出页面。
(七)退车:
点击第三栏的菜单项,选择退车,填写页面相应信息,点击确认退车就出现下面页面:
图18退车页面
其实现代码为:
在确认退车的按钮下写代码:
stringcm,sf,khm,cid,cj,fk
cm=string(sle_1.text)
khm=string(sle_4.text)
sf=string(sle_5.text)
cid=string(sle_2.text)
cj=string(sle_3.text)
fk=string(sle_6.text)
integercs
SELECT"car"."cs"
INTO:
cs
FROM"car"
WHERE"car"."cID"=:
cID;
ifsqlca.sqlcode=100then
messagebox("提示","连接失败!
")
elseifsqlca.sqlcode=0then
UPDATE"car"
SET"cs"=cs-1
WHERE"car"."cid"=:
cid;
ifsqlca.sqlcode=0then
stringstr
str="您要买的车是+~n"+&
"车名"+cm+"车编号"+cid+"车价"+cj+"~n"+&
"客户名是"+khm+"身份证号为"+sf+"付款额"+fk
messagebox("提示",str)
else
messagebox("错误","更新错误"+SQLCA.Sqlerrtext)
endif
endif
通过上面程序可以清晰的显示出某用户退车情况,并且该程序同数据库连接可以实现客户确认退还某编号车辆,若对该车辆进行查询就会发现该车的库存加一(本系统考虑的是一个用户一次退还一辆车的普遍情况,没有考虑同一顾客一次退还多辆车的情形)
在取消按钮下写代码:
close(w_tuiche)就可以退出页面。
四.总结
在短暂的两周实习的中,从选定课题、对题目进行分析、对设计进行需求分析、对所需要的软件进行学习、制定初步的设计方案、编程设计、调整程序以正常运行都是在不断探索、尝试、查找资料、学习和老师的帮助下完成的。
通过这次实习系统设计,我系统的理解了现实意义上信息系统生成的过程,明白了按照软件工程要求的思想进行系统开发,对于系统的设计、生成和后期维护是多么重要。
在系统设计是应当遵守从整体到部分设计,实施时则是先部分后总体。
如此不但可以整体把握系统功能方向,还可以方便分块纠错,减轻工作量。
否则就会出现漏洞重重,对后期的维护和更改带来很多意想不到的麻烦。
在前期系统制作中,没有领略到系统的主要思想,只顾将数据录入数据库中,忽视了功能模块间数据共享问题到后期才发现数据相连问题,就不得不对数据库进行修改,花费了很多时间和精力。
好在这是一个小系统,若是数量很大的系统,那么犯此错误所付的代价更是不可估量。
这次实习系统还让我认识到,系统的内容是本系统的安全是根,如果系统中的数据资料被泄露或恶意删除及更改,就会对相关企业造成严重的威胁。
所以,一个交互的系统其安全性是不可忽视的,所以本系统制作了密码修改以保障数据的安全性。
其实汽车销售是一个很大的进销存系统,这次实习设计的系统只是一个基本原形,只是制作了销售这一小模块,还有很多地方需要完善和改进才可以应用于企业的管理之中。
通过这次实习做系统,我学到了很多东西,了解了如何将课本的知识应用于实践,同时,我还感觉到自己不会的东西还很多,所以将来的学习中还需要还要更加努力。
本次系统设计不仅是我大学前三年结晶的知识体现,更是我进一步认识自己的平台的宝贵经验,通过它我看到自己学习习惯上的弱点和缺点,可以作为我未来学习的警示。
最后,我从选题到构思,直到最后完成毕业论文设计我遇到诸多问题,有老师同学的帮助我才得以克服。
在此我特别感谢张老师的悉心指导和耐心帮助及帮助我的各位同学。
你们所传授的有益经验,你们所给的无私帮助,我会永记心中。
谢谢你们~!
!
参考文献
1.沈良忠,2008年:
《PowerBuilder数据库开发教程》,电子工业出版社。
2.黄梯云,2009年:
《管理信息系统》,高等教育出版社
3.王珊萨师煊,2005年:
《数据库系统概论》,高等教育出版社
4.汉龙,2004年:
《PowerBuilder9.0项目开发实例导航》,上海科学普及出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业 实习 设计 汽车 销售 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)