实用文档
江汉大学
二手车管理系统
详细设计报告
专业:信息管理与信息系统
参与人:**、***、***
学号:200901501104,200901501112、200901501113 实验时间:2012-05-06
标准
实用文档
一、引言 1.1. 编写目的
编写详细设计说明书是软件开发过程必不可少的部分,其目的是为了使开发 人员在完成概要设计说明书的基础上完成概要设计规定的各项模块的具体实现 的设计工作。
同时,详细说明书也是为了让使用者更好的了解该程序的各个模块功能。
1.2. 项目背景
软件系统名称:某品牌二手车管理系统 软件开发平台:Microsoft Acess 2003
本项目的提出是按照老师提出的要求,经过小组成员的讨论,结合我们所学的专业知识而最终决定的。该项目结合了计算机技术、数据库技术,采用了C/S 的客户机/服务器模式。二手车在日常生活中流通广泛,具有较好的市场前景与商业价值。 该软件运行于Windows系统平台。
1.3. 备 注
由于只有两天试验时间,本说明书中关于程序描述部分,不再对每一模 块进行详细的分类说明,只进行大概的功能说明、操作、输入输出、程序逻辑等 方面的说明。
收购部分详细设计
2.1需求概述
2.1.1收购模块:
本模块针对二手车交易过程中的收购环节设立,能够实现对预购入二手车的信息新增、修改和查询功能。 2.1.2软件结构
标准
实用文档
收购管理 收购新增 2.2.数据库设计
2.2.1数据概念结构设计
收购修改 收购查询 车辆二手车编码车型车目码(VIN)经销商车主姓名车显里程签约状态 收购二手车编码签约日期签约负责人车辆信息表Car
签约价格备注 2.2.2数据逻辑结构设计
列名 Num Tpye VIN Dealer Owner Mileage State 数据类型 Text Text Text Text Text Text Text 是否为空 NOT NULL NOT NULL NULL NULL NULL NULL NOT NULL
收购信息表Buy 列名 Num BuyDate 标准
说明 数据类型 Text Text 是否为空 NOT NULL NOT NULL 说明 系统生成 yyyymmdd 实用文档
PIC BuyPrice Remark Text Text Text NOT NULL NOT NULL NULL 2.3程序界面:
(1) 模块主界面:
(2)标准
收购新增界面:
实用文档
(3) 收购修改界面:
(4)收购查询界面:
标准
实用文档
2.3.2 功能说明:
程序启动后,在主界面点击“收购”后,首先会出现收购面板,上面有三个可选按钮:“收购新增”、“收购修改”、“收购查询”。
收购新增:在文本框中填入要输入的车辆收购信息,单击“添加”按钮,添加后出现消息框提示新信息已成功添加。若不想添加新信息了,则可单击“关闭”按钮退出该窗口。
收购修改:在“二手车编号”列项的组合框中选择或自行输入要修改的车辆编号,输入新的车辆收购信息,然后单击“保存”框,若所填写的“二手车编号”正确,则新输入的数据将会覆盖相应的原数据,并弹出消息框提示修改成功,否则修改失败。若不修改了或修改完毕,可单击“退出”按钮,退出窗口。
收购查询:查询单条数据,可在文本框中输入要查询的二手车的编码,单击“查询”按钮,在窗口下方的标签上,会出现要查询的讯息。若要查询所有的二手车情况,则可直接单击“查询所有”按钮,所有车辆信息将会以报表形式一次性呈现出来。单击“关闭”按钮将会退出本窗口。
2.4改进
1、在收购新增窗口中,输入“二手车编号”后,系统应当可以立即自动在表中查询,是否已存在相同编码的数据,以避免重复添加相同的数据。
2、查询窗口中,可以增加设置一次查询多项信息(非全部信息)的选项,则可更加方便客户的使用。
标准
实用文档
定价部分详细设计
3.1.需求概述
二手车定价系统主要依赖于定价新增/修改窗体,其次还有相关的表格和报表加以辅助说明,能够实现客户端的定价查询、定价新增和定价修改等功能。 序号 1 1.1 1.2 1.3
点击“定价新增”则新增数据,并可以返回列表查询到相应新增后的数据 功能名称 车辆定价 查询车辆定价信息列表 新增车辆定价信息 修改车辆定价信息 新增 点击“定价新增” 列表查询 点击“定价修改”则保存修改数据,并可以返回列表查询到相应修改后的数据
点击“定价修改” 修改 3.1.1软件结构
标准
实用文档
客户端界面:
定价系统模块 表 查询 窗体 报表 定价查询
3.2..数据库设计
3.2.1.数据库概念结构设计
定价新增 定价修改
定价系统定价查询定价新增定价修改
标准
实用文档
定价系统Num
TheLowestPriceTheHighestPriceCostPricePriceOnline3.2.2.数据库逻辑结构设计
Price 表
列名 NO Num State TheLowestPrice TheHighestPrice CostPrice PriceOnline 数据类型 是否为空 说明 int int text int int int int Not null 编号 Not null Not null Not null Not null Not null 二手车编码 定价状态 最低销售价格 最高销售价格 成本价 Not null 挂网价
3.3客户端模块 1.程序界面
标准
实用文档
主程序界面
窗体界面
标准
实用文档
报表界面
2.功能说明
关于二手车定价方面的各个功能的实现基本上都是在“定价”这个窗体里进行的。在这个窗体里面可以进行定价查询、定价新增和定价修改三个栏目的操作。通过输入二手车编码(Num),点击“定价查询”按钮,即可获得与其相关的最低销售价格、最高销售价格、成本价和挂网价等信息。
同时,如果所输入的二手车编码是Price表里面所没有的,
标准
实用文档
则可通过“定价新增”在窗体里输入信息,“定价新增成功”提示之后便可看到Price表里已成功增加了刚才所新增的内容:
标准
实用文档
如果需要对Price表里面的内容进行修改的话,则通过“定价修改”即可实现上述功能:
3.4.改进计划
3.4.1. 定价窗体中总共有3个按钮:“定价查询”、“定价新增”和“定价修改”,它们三个是同时处于可操作状态的。由于技术水平有限,做不到当其中一个按钮在进行操作时而另两个按钮处于灰度状态(即不可操作),所以跟专业的相比起来还是有很大差距的。
标准
实用文档
3.4.2. Car表中有所有二手车的信息,如果Price表里没有Car里所有的信息,则通过“定价新增”则可把相关的信息添加到Price表里面;但我所忽略的一个问题是:通过“定价新增”我甚至可以把Car里面所没有的信息添加到Price表里面。这个位置是相当需要完善的。
3.4.3 缺少一些“保存”或“退出”的按钮等,这使得操作相对来说不是很系统。 3.4.4 改进说明
其实,综合以上需要改进的地方,主要有两点:一是在进行系统开发的时候考虑不周,导致有很多细节方面都忽略了;二是技术水平问题,由于学艺不精,所以即使有自己想实现的功能也都无法实现。在这一点上,我觉得要听取老师的教诲:像我们信息管理与信息系统的学生,至少要掌握一门程序开发语言。之前是没真真正正地开发过什么东西或项目,而这次一上阵,就深感“书到用时方恨少”啊!
销售部分详细设计
4.1 总体设计
4.1.1.需求概述
二手车销售签约处理模块能够实现三大功能,主要是:查询销售签约信息列
表、新增销售签约信息、修改销售签约信息。
4.1.2.结构模型
标准
实用文档
4.2 .程序描述
4.2.1. 销售查询数据库设计
销售查询数据库二手车编号车主姓名车型车身号合同金额签约日期签约状态
数据库逻辑结构设计
栏位名称 列表项 二手车编号 车型 N N N N N Text Text Text 必输 可编辑 类型 可能的值 长度 格式要求 车身号(VIN码) N 标准
实用文档
车主姓名 合同金额 签约日期 签约状态 操作 按钮 新增 修改 N N N N N N N N N N Text Text Text Text Button N N N N Button Button 4.2.3. 销售新增数据库设计
销售新增数据库二手车编号买主姓名买主证件类型买主证件号交易价格交易责任人合同日期备注数据库逻辑结构设计
栏位名称 输入项 二手车编号 买主姓名 N Y N Y Y Y Text Text Text Text 系统分配 必输 可编辑 类 型 可能的值 长度 格式要求 买主证件类型 Y 买主证件号码 Y 标准
实用文档
车主姓名 签约责任人 签约日期 销售价格 签约备注 按钮 保存 返回 Y Y Y Y N Y Y Y Y Y Text Text Text Text Text yyyymmdd N N N N Button Button 4.3. 程序界面与功能说明
说明:在此界面用户可以通过点击“销售查询”“销售新增”“销售修改”来进入相关的功能界面。
标准
实用文档
说明:通过下拉框可以选择想要查询的车辆号,然后点击“查询”,窗口中会显示其相关信息。如果点击“查询所有”则出现的是全部销售信息的相关报表。
标准
实用文档
说明:将需要保存的信息录入,然后点击“保存”,若取消保存,则点击“取消”
标准
实用文档
在二手车编号下拉框中选择想要进行信息修改的编号,从而实现其信息的修改录入。点击“修改”后,会出现“修改成功”的对话框。
4.4.、改进计划
因为时间问题以及自身在VB与ACCESS使用时的不熟练,导致许多想法最终没有实现。因此具有界面不美观,亲和力较差,功能实现不方便,许多功能不能实现等缺点。在后继的学习中如果有机会,我们会进行深层次的完善。 4.4.1 界面设计。
摈弃单调的灰色界面,加入更加时尚美观的背景。 4.4.2 功能实现简洁
例如可以直接在用户进行信息查询时在每一条记录后面加入两个功能按钮,如“删除”、“更改”。这样便可实现操作的快
标准
实用文档
捷便利。
4.4.3 易于上手操作
实现当用户第一次使用这个界面是便可熟练上手。 附录:相关代码:
销售信息查询:
Private Sub Command22_Click() Dim strSQL As String Dim rst As Recordset Dim dbs As Database
Dim strPayAcct As String
strPayAcct = Combo19.Value Set dbs = CurrentDb
strSQL = \"SELECT * FROM Sale WHERE Sale.Num='\" & strPayAcct & \"'\" Set rst = dbs.OpenRecordset(strSQL) If rst.EOF Then
MsgBox \"您所要查询的车辆不存在!\vbDefaultButton1, \"出错\" Else
Label29.Caption = rst.Fields(\"Num\")
Label31.Caption = rst.Fields(\"BuyerName\") Label33.Caption = rst.Fields(\"BuyCardType\") Label35.Caption = rst.Fields(\"CardNum\") Label37.Caption = rst.Fields(\"PIC\")
Label39.Caption = rst.Fields(\"SalePrice\") Label41.Caption = rst.Fields(\"SaleDate\")
End If rst.Close End Sub
销售签约新增:
Private Sub cmdsubmit_Click()
On Error GoTo Err_cmdsubmit_Click
rc = MsgBox(\"新增信息成功!\
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Exit_cmdsubmit_Click: Exit Sub
标准
实用文档
Err_cmdsubmit_Click:
MsgBox Err.Description
Resume Exit_cmdsubmit_Click End Sub
销售信息修改:
On Error GoTo Err_Command14_Click
Dim strSQL As String Dim rst As Recordset Dim rst1 As Recordset Dim dbs As Database Dim strAcctID As String Dim stDocName As String Dim stLinkCriteria As String
Set dbs = CurrentDb
strAcctID = Combo9.Value
strSQL = \"SELECT * FROM Sale WHERE Num='\" & strAcctID & \"'\" Set rst = dbs.OpenRecordset(strSQL) rst.Edit
rst.Fields(\"BuyerName\") = 买主姓名.Value
rst.Fields(\"BuyCardType\") = 买主证件类型.Value rst.Fields(\"CardNum\") = 证件号码.Value rst.Fields(\"PIC\") = 交易责任人.Value
rst.Fields(\"SalePrice\") = 交易金额.Value rst.Fields(\"SaleDate\") = 交易时间.Value
rst.Update
rc = MsgBox(\"修改信息成功!\ rst.Close
Exit_btnSave_Click: Exit Sub
5.运行环境
服务器平台:Windows
标准
实用文档
运行平台:Microsoft Acess 2003
6.使用说明
直接打开.mdb文件就可以进行相关的操作了。其中主要的操作界面是在定价这个窗体里面,如果想查阅一下系统的信息,可以可打开相关的表或报表或查询等都可以获得想要的信息。
7.结束语
由于主观和客观等方面的原因,这次第一次尝试开发的项目并不是非常成功,目前为止仍有许多需要改进的地方。一方面是在开发的过程中遇到了很多问题,比如最初开始连Microsoft Acess 2003的操作界面都不熟,所以一开始就在边摸索边尝试中进行着,这不仅导致了大量时间的浪费,而且开发出的成果也不是很理想。还有就是由于SQL、VB等编程语言没学好,所以在功能实现模块碰了很多壁,绕了很多弯路,后来只好请教老师和同学,在他们的帮助下才使得程序有所完善。另一方面就是在开发的过程中有很多细节都忽略了。最明显的就是上述中的几个需要改进之处,只可惜心有余而力不足。由于一开始组内就没有统一规划好,所以到最后整合的时候就出了很多问题。这样一来又浪费了大量的时间和精力,自己解决不了的时候还麻烦了老师。所以最终把整合问题解决完后已经是再也无心继续奋战了,因而
标准
实用文档
还是留下了上述的几个有待解决的问题。
虽然一方面觉得这这次的实验是一次痛苦的经历,但另一方面也很感谢老师给我们提供了这次难得的机会:让我在实战中充分认识到了自身的不足和有待提高的地方。其实,老师的话也很有道理,如果我们信息管理与信息系统专业的学生连一门程序开发语言都能没能掌握,那以后毕业了万一从事跟专业相关的工作而在工作中连最起码的项目都开发不出来的话,那么,企业要你有何用?在这一点上我感触特别深。作为一个一年后即将面临毕业找工作压力的学生,如果不赶紧多学点,学会点,那么以后就很有可能在茫茫人海中被湮没了。所以,这次的实验对于我来说并不仅仅只是一次实验而已,由于过程相当痛苦,所以我们相信这次的经历会刻苦铭心的。同时,也希望自己铭记这次教训:一个人有没有真材实学,有没有能力,一动手,就可以判别出来了。
标准