软工课程设计报告汽车销售管理系统参考模板.docx
《软工课程设计报告汽车销售管理系统参考模板.docx》由会员分享,可在线阅读,更多相关《软工课程设计报告汽车销售管理系统参考模板.docx(25页珍藏版)》请在冰点文库上搜索。
软工课程设计报告汽车销售管理系统参考模板
长治学院
课程设计报告
课程名称:
软件工程课程设计
设计题目:
汽车销售管理系统(用户及系统管理)
系别:
计算机系
专业:
科学与技术
组别:
第X组(韩伟伟,石永祥,李璞,张乔胜)
学生姓名:
韩伟伟学号:
08407106
起止日期:
年月日~年月日
指导教师:
郭咏梅
第一章汽车销售管理系统可行性研究
1.1系统定义
1.系统名称:
汽车销售管理系统
2.数据库管理软件:
MicrosoftSQLSever
3.数据库设计采用软件:
PowerBuilder9.0
4.运行平台:
windows2000,windowsXP,windows7
1.2系统背景分析
汽车制造业在中国发展的根本瓶颈已经从产品质量、市场规模转化为销售体系的效率。
制造厂商之间的竞争日趋白热化,并正在演变成为供应链与供应链之间的竞争,简单的价格战和促销推广活动已很难满足日益成熟的消费者的需求,这一趋势促使企业必须认真考虑。
如何利用信息技术及时获取市场信息、挖掘潜在客户、并增强锁定目标客户的能力?
如何通过流程优化,将供应链上下游合作伙伴特别是处在市场最前沿的广大经销商更紧密地结合在一起,提高市场响应速度,降低订单周转时间?
如何通过高度的系统集成,实现真正意义上的供应链协同、订单驱动生产、和财务利润最大化?
为了解决上述问题,企业需要一套成熟的经销商信息管理系统,它所承载的是先进的销售服务管理理念,是由优化的业务流程所贯穿的,由具备高度扩展能力的软硬件及系统架构所支撑的,真正符合中国市场需要的管理体系。
1.3可行性分析
汽车产业被各国视为支柱产业,在经济发展过程中起着举足轻重的作用,如今经济全球化的背景下,竞争更加激烈,汽车销售业的竞争已经有单纯的产品竞争演变为整个销售前后的全方位的竞争,消费者对于服务的要求也越来越高,因此要求汽车销售上必须提高服务质量,让整个销售过程简化,方便顾客。
原有的简单的对于销售的管理软件已经不能符合现实的需求。
面对新的形式和环境,销售商迫切需要对原有的系统进行更新换代,完善和扩充原有系统,提高使用效率,实现信息采集、集成、共享的信息管理体制。
经过前期的管理业务调查,了解到销售商对现有的业务基本上人处于手工管理阶段,这种传统的工作模式和手工管理手段,与日益增多的业务量越来越不相适应,并导致了管理上的诸多弊端,主要表现在以下几个方面:
1)基础数据不完善,不规范,不齐全。
2)手工操作,容易出错,工作效率低。
3)经费问题,工作岗位多,不利于节约成本。
4)数据共享,通用的商品化数据库管理软件底层一般是不公布的,数据共享性比较差。
5)安全问题,公司没有建立自己的核心数据库。
第二章汽车销售管理系统需求分析
2.1功能分析
1.基础信息管理:
1)厂商信息管理:
查询、增、删、改
2)车型信息管理:
查询、增、删、改
3)客户信息管理:
查询、增、删、改
2.进货管理:
1)车辆采购信息管理:
查询、增、删、改
2)车辆入库信息管理:
查询、增、删、改
3.销售管理:
1)车辆预售:
客户可以根据自己的需求,预订不同型号的车
2)车辆销售:
客户可以根据自己的需求,选择不同型号的车型
3)收益统计:
厂商按照所出售的车辆数量及价格进行统计
4.仓库管理:
1)库存车辆:
仓库管理员对已有车辆进行详细管理
2)仓库明细帐:
库存各种类型车辆的详细信息
3)进销存统计:
仓库管理员对车辆的出售与进货进行统计
5.收款管理:
1)收用户款:
列出应收取各个用户的金额
2)付厂商款:
列出应付各个厂商的金额
3)应收款统计:
统计应收的款项
4)应付款统计:
统计应付的款项
6.系统管理:
1)操作员管理:
管理各个操作员的账号
2)权限管理:
系统管理员为其他用户设置权限
2.2概念模型设计
2.2.1各个实体E-R图
(厂商E-R图)
(客户E-R图)
(车辆E-R图)
(采购单E-R图)
(入库单E-R图)
(销售单E-R图)
2.2.2整体E-R图
mnp1
r
s
2.3数据流图设计
2.3.1系统顶层数据流图
(系统顶层数据流图)
2.3.2厂商信息管理模块数据流图
(厂商信息管理模块数据流图)
第三章汽车销售管理系统概要设计
3.1系统层次结构图
3.1.1系统顶层结构图
汽车销售管理系统是以汽车进销存以及统计盘账为主的软件,软件内部有基本信息管理、进货管理、销售管理、库存管理、收款管理、系统管理,汽车销售管理系统的系统顶层结构图如下:
(系统顶层结构框图)
3.1.2系统分层结构图(基本信息管理以及系统管理)
基本信息管理包括:
厂商信息管理,客户信息管理,车型信息管理。
其结构框图如下:
(基本信息管理模块结构图)
系统管理包括:
操作员管理,权限设置。
其结构框图如下:
(系统管理模块结构图)
第四章汽车销售管理系统详细设计
4.1数据库设计
1.厂商信息表
字段代表名称
字段类型
允许空
说明
厂商编号
nvarchar(50)
否
主键列,唯一标识
厂商名称
nvarchar(50)
是
厂商名称
应付款金额
real
是
预付款金额
real
是
实际欠款
real
是
联系人
nvarchar(50)
是
联系电话
nvarchar(50)
是
邮政编码
nvarchar(50)
是
通信地址
nvarchar(50)
是
入档日期
datetime
是
2.客户信息表
字段代表名称
字段类型
允许空
说明
客户编号
nvarchar(50)
否
主键列,唯一标识
客户名称
nvarchar(50)
是
客户名称
应付款金额
real
是
预付款金额
real
是
实际欠款
real
是
组织机构代码或身份证号码
nvarchar(50)
是
公司性质
nvarchar(50)
是
公司行业
nvarchar(50)
是
联系人
nvarchar(50)
是
联系电话
nvarchar(50)
是
邮政编码
nvarchar(50)
是
通信地址
nvarchar(50)
是
入档日期
datetime
是
3.车型信息表
字段代表名称
字段类型
允许空
说明
车型代码
nvarchar(50)
否
主键列,唯一标识
厂牌型号
nvarchar(50)
是
车辆类型
nvarchar(50)
是
产地
nvarchar(50)
是
进货指导价
real
是
备注
nvarchar(50)
是
4.采购表
字段代表名称
字段类型
允许空
说明
采购订单号
nvarchar(50)
否
主键列,唯一标识
厂商编号
nvarchar(50)
否
外键
厂商名称
nvarchar(50)
是
联系人
nvarchar(50)
是
联系电话
real
是
邮政编码
nvarchar(50)
是
通信地址
nvarchar(50)
是
车型代码
nvarchar(50)
是
车辆类型
nvarchar(50)
是
产地
nvarchar(50)
是
厂牌型号
nvarchar(50)
是
采购单价
real
是
业务员
nvarchar(50)
是
制单员
nvarchar(50)
是
采购日期
datetime
是
5.库存表
字段代表名称
字段类型
允许空
说明
入库单号
nvarchar(50)
否
主键列,唯一标识
厂商编号
nvarchar(50)
否
外键
厂商名称
nvarchar(50)
是
车型代码
nvarchar(50)
是
车辆类型
nvarchar(50)
是
厂牌型号
nvarchar(50)
是
产地
nvarchar(50)
是
出厂日期
datetime
是
进价
real
是
制单员
nvarchar(50)
是
入库日期
datetime
是
车身颜色
nvarchar(50)
是
底盘号
nvarchar(50)
是
发动机号
nvarchar(50)
是
合格证号
nvarchar(50)
是
商检单号
nvarchar(50)
是
订单号
nvarchar(50)
否
外键
6.销售表
字段代表名称
字段类型
允许空
说明
销售单号
nvarchar(50)
否
主键列,唯一标识
客户编号
nvarchar(50)
否
外键
客户名称
nvarchar(50)
是
车型代码
nvarchar(50)
是
车辆类型
nvarchar(50)
是
厂牌型号
nvarchar(50)
是
产地
nvarchar(50)
是
销售日期
datetime
是
车价
real
是
成交价
real
是
制单员
nvarchar(50)
是
入库日期
datetime
是
车身颜色
nvarchar(50)
是
底盘号
nvarchar(50)
是
发动机号
nvarchar(50)
是
合格证号
nvarchar(50)
是
商检单号
nvarchar(50)
是
订单号
nvarchar(50)
否
外键
7.预定表
字段代表名称
字段类型
允许空
说明
预订单号
nvarchar(50)
否
主键列,唯一标识
客户编号
nvarchar(50)
否
外键
客户名称
nvarchar(50)
是
车型代码
nvarchar(50)
是
车辆类型
nvarchar(50)
是
厂牌型号
nvarchar(50)
是
产地
nvarchar(50)
是
预订日期
datetime
是
预订价
real
是
业务员
nvarchar(50)
是
制单员
nvarchar(50)
是
联系人
nvarchar(50)
是
联系电话
nvarchar(50)
是
邮政编码
nvarchar(50)
是
通信地址
nvarchar(50)
是
8.操作员表
字段代表名称
字段类型
允许空
说明
操作员编号
nvarchar(50)
否
主键列,唯一标识
操作员姓名
nvarchar(50)
是
操作员密码
nvarchar(50)
是
操作员级别
nvarchar(50)
是
4.2流程图设计
4.2.1系统整体流程图
4.2.2系统基本信息管理模块流程图(厂商信息,客户信息,车型信息)
第五章汽车销售管理系统主要源代码
5.1登录界面设计
登录界面部分源代码:
stringczy99,pwd99,czy100,pwd100,pwd200
czy99=trim(ddlb_1.text)
pwd99=trim(sle_1.text)
ifczy99=""then
messagebox("","请选择操作员!
")
else
ifpwd99=""then
messagebox("","请输入密码!
")
sle_1.setfocus()
else
select操作员密码into:
pwd100from操作员管理where操作员姓名=:
czy99;
pwd200=trim(pwd100)
ifpwd200=pwd99then
czyvar=trim(czy99)
open(main_win)
close(parent)
else
messagebox("","密码有误!
")
sle_1.text=""
sle_1.setfocus()
endif
endif
endif
5.2系统主界面设计
主界面部分代码:
stringczy,czyjb
select操作员姓名,操作员级别into:
czy,:
czyjbfrom操作员管理where操作员姓名=:
czyvar;
//如果您不是系统管理员,那么您不能对本系统进行操作!
iftrim(czyjb)<>string
(1)then
m_menu.m_进货管理.m_车辆采购.enabled=false
m_menu.m_进货管理.m_车辆入库.enabled=false
m_menu.m_销售管理.m_车辆预售.enabled=false
m_menu.m_销售管理.m_车辆销售.enabled=false
m_menu.m_收款管理.m_收用户款.enabled=false
m_menu.m_收款管理.m_付厂商款.enabled=false
m_menu.m_收款管理.m_应收款统计.enabled=false
m_menu.m_收款管理.m_应付款统计.enabled=false
endif
p_1.pictureNAME="qcxsglxt.bmp"
5.3厂商信息管理界面设计
5.3.1厂商信息添加模块设计
厂商信息添加窗口中保存按钮的代码:
stringcsbh,csmc,lxr,lxdh,yzbm,txdz,csbh1
realyfkje,yufkje,sjje
datetimerdrq
yfkje=0
yufkje=0
sjje=0
csbh=trim(sle_1.text)
csmc=trim(sle_2.text)
lxr=trim(sle_3.text)
lxdh=trim(em_1.text)
yzbm=trim(em_2.text)
txdz=trim(sle_4.text)
rdrq=datetime(daTE(trim(em_3.text)))
//检索满足条件的记录
select厂商编号into:
csbh1from厂商信息where厂商编号=:
csbhor厂商名称=:
csmc;
ifcsbh1=""then
ifcsbh=""orcsmc=""orlxr=""orlxdh=""then
messagebox("","红色标记是必须输入的!
")
else
//保存数据
insertinto厂商信息(厂商编号,厂商名称,应付款金额,预付款金额,实际欠款,联系人,联系电话,邮政编码,通信地址,入档日期)
values(:
csbh,:
csmc,:
yfkje,:
yufkje,:
sjje,:
lxr,:
lxdh,:
yzbm,:
txdz,:
rdrq);
stringstr
ifsqlca.sqlcode<>0then
messagebox('',sqlca.sqlerrtext)//显示错误信息
rollback;//回滚事务
return
else
commit;//提交事务
endif
endif
else
messagebox("","库中已有该厂商信息!
")
endif
5.3.2厂商信息修改模块设计
厂商信息修改模块的保存按钮代码:
stringcsbh,csmc,lxr,lxdh,yzbm,txdz,rdrq,csbh1
csbh=trim(sle_1.text)
csmc=trim(sle_2.text)
lxr=trim(sle_3.text)
lxdh=trim(em_1.text)
yzbm=trim(em_2.text)
txdz=trim(sle_4.text)
rdrq=trim(em_3.text)
//修改厂商信息表中满足条件的信息
update厂商信息set厂商编号=:
csbh,厂商名称=:
csmc,联系人=:
lxr,联系电话=:
lxdh,邮政编码=:
yzbm,通信地址=:
txdz,入档日期=:
rdrqwhere厂商编号=:
csbh0;
messagebox("","修改成功!
")
5.3.3厂商信息查询模块设计
厂商信息查询模块查询按钮代码:
cbx_1.checked=false
stringzd,nr,sql
zd=trim(ddlb_1.text)
nr=trim(ddlb_2.text)
ifzd="厂商编号"then
dw_1.settransobject(sqlca)
sql="select厂商编号,厂商名称,应付款金额,预付款金额,实际欠款,联系人,联系电话,邮政编码,通信地址,入档日期from厂商信息where厂商编号='"+nr+"'"dw_1.modify('datawindow.table.select="'+sql+'"')
dw_1.retrieve()
dw_1.setrowfocusindicator(hand!
)
elseifzd="厂商名称"then
dw_1.settransobject(sqlca)
sql="select厂商编号,厂商名称,应付款金额,预付款金额,实际欠款,联系人,联系电话,邮政编码,通信地址,入档日期from厂商信息where厂商名称='"+nr+"'"
dw_1.modify('datawindow.table.select="'+sql+'"')
dw_1.retrieve()
dw_1.setrowfocusindicator(hand!
)
elseifzd="入档日期"then
dw_1.settransobject(sqlca)
sql="select厂商编号,厂商名称,应付款金额,预付款金额,实际欠款,联系人,联系电话,邮政编码,通信地址,入档日期from厂商信息where入档日期='"+nr+"'"
dw_1.modify('datawindow.table.select="'+sql+'"')
dw_1.retrieve()
dw_1.setrowfocusindicator(hand!
)
endif
第六章汽车销售管理系统模块测试
6.1用户登录界面测试
测试结果:
能够正确的判断用户是否合法
6.2厂商信息添加界面测试
测试结果:
能够正确添加记录1007到数据库,而且编号唯一。
6.3厂商信息修改界面测试
测试结果:
能够正确修改各个字段的值,并正确写入数据库。
6.4厂商信息查询界面测试
测试结果:
能够正确找到按输入条件检索的记录并显示。
第六章总结
通过本次课程设计,我了解到了我们平时的实验根本和做一个项目差的实在太远,我们平时的实验固然很重要,这是我们对基本知识点的一次次的巩固,这是为我们做一次项目的基础工作,是必不可少的一个环节。
但是真正要体验一下做项目的快感,课程设计是个不错的选择。
我们往往所认为的编代码在课程设计里面所占的比例其实很小,真正要做的东西其实远远不止敲代码。
这也是我们的专业所要做的,这如我们的老师所说,敲代码的学生不仅仅是计算机专业的,我们计算机专业的会的不仅仅是敲代码,我们做的是设计,不是打字员。
此外我认为在做项目是要充分利用各种资源,要会运用各种知识,要灵活掌握所学知识,还有就是团队的重要性,这真的很重要。
参考文献
[1]张海藩,《软件工程》(第五版),北京:
清华大学出版社,2008
[2]郑阿奇,《PowerBuilder》(第三版),北京:
电子工业出版社,2008
指导教师评语:
指导教师签名:
年月日
成绩评定
项目
权重
成绩
1、设计过程中出勤、学习态度等方面
0.1
2、设计技术水平
0.4
3、编程风格
0.2
4、设计报告书写及图纸规范程度
0.3
总成绩
友情提示:
范文可能无法思考和涵盖全面,供参考!
最好找专业人士起草或审核后使用,感谢您的下载!