优质汽车销售管理系统的设计与实现.docx

上传人:b****6 文档编号:8545559 上传时间:2023-01-31 格式:DOCX 页数:29 大小:91.97KB
下载 相关 举报
优质汽车销售管理系统的设计与实现.docx_第1页
第1页 / 共29页
优质汽车销售管理系统的设计与实现.docx_第2页
第2页 / 共29页
优质汽车销售管理系统的设计与实现.docx_第3页
第3页 / 共29页
优质汽车销售管理系统的设计与实现.docx_第4页
第4页 / 共29页
优质汽车销售管理系统的设计与实现.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

优质汽车销售管理系统的设计与实现.docx

《优质汽车销售管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《优质汽车销售管理系统的设计与实现.docx(29页珍藏版)》请在冰豆网上搜索。

优质汽车销售管理系统的设计与实现.docx

优质汽车销售管理系统的设计与实现

一、引言

1.1、编写目的……………………………………………1

1.2、 定义………………………………………………2.

1.3、数据库设计步骤……………………………………3

二、需求分析

2.1、功能分析……………………………………………3

2.2、业务活动……………………………………………5

2.3、数据字典……………………………………………7

2.4、数据流图……………………………………………11

三、结构设计

3.1、概念设计……………………………………………11

3.2、总体 E-R 图设计……………………………………12

3.3、逻辑设计……………………………………………14

3.4、物理设计……………………………………………14

四、运用设计

4.1、程序源码与用户界面………………………………17

4.3、系统运行与维护……………………………………19

五、参考文献

5.1、参考文献……………………………………………20

 

1 引言

1.1 编写目的

目前大多数厂商忽略了汽车销售管理系统的重要性,而本系统专为具有

一定规模和经济条件的大型汽车厂设计。

从进货管理:

车辆采购、车辆入库,

销售管理到车辆销售、收益统计等,为每个环节明确分工,并通过可视化的软

件支持,有效减小了人为差错的概率,代之以高效、便捷、准确的数字化服务

系统,使汽车销售管理更加规范化。

根据所学的数据库原理与程序设计的知识,能够针对一个小型的数据库管

理系统进行系统的需求分析,系统设计,数据库设计,编码,测试等,完成题

目要求的功能,加深对数据库系统、软件工程、程序设计语言的理论知识的理

解和应用水平,通过设计实际的数据库系统应用课题,进一步熟悉数据库管理系

统的操作技术,提高动手能力,提高分析问题和解决问题的能力。

从而达到掌

握开发一个小型数据库的目的。

1.2 定义

1、系统名称:

汽车销售管理系统

2、数据库管理软件:

Microsoft SQL Server

3、数据库设计人员:

洪保江

4、使用本数据库的程序:

5、数据库设计采用软件:

Microsoft Office Visio 2003

6、系统采用 C/S 体系结构:

Client(客户端)负责提供表达逻辑、显示用户

界面信息、访问数据库服务器;Server (服务器)端用于提供数据服务。

7、运行平台:

windows 2000/xp/linux

1.3、数据库设计步骤

 

数据

处理,应

用需求

转换规

则,DBMS

功能,优

化方法

 

应用需

求,DBMS

详细特征

 

需求收集和分析

 

设计概念结构

 

设计逻辑结构

 

数据模型优化

 

设计物理结构

 

需求分析阶段

 

概念设计阶段

 

逻辑设计阶段

 

不满意

物理设计阶段

评价设计,性能预测

 

不满意

 

物理实现

 

试验性运行

 

使用,维护数据库

 

数据库实施阶段

 

数据库运行和维护阶段

 

2、需求分析

 

2.1 功能分析

进行需求分析首先是调查清楚用户的实际要求,与用户达成共识,然后分析

与表达这些需求。

调查厂商与各部门需求的具体步骤如下:

(1).调查厂商组织情况。

包括了解各组织的部门组成情况,各部门的职责

等,为分析信息流程做准备。

(2).调查各部门的业务活动情况。

包括了解各个部门和使用什么数据,如

何加工处理这些数据,输出什么信息,输出到什么部门,输出结果的格式是什么,

这些是调查的重点。

(3).在熟悉了业务活动的基础上,协助用户明确对新系统的各种要求,包

括信息要求,处理要求,安全性与完整性要求,这是调查的又一重点。

(4).确定新系统的边界。

对前面调查的结果进行初步分析,确定哪些功能

由计算机完成或将来准备让计算机完成,哪些活动由人工完成。

调查本地从事汽车销售的企业,根据企业汽车销售的情况,设计用于汽车销

售的管理系统,主要功能有:

①基础信息管理:

厂商信息、车型信息和客户信息;

②进货管理:

车辆采购、车辆入库;

③销售管理:

车辆销售(处理车辆销售单)、销售代办(处理销售代办单)、

 

车辆查询、销售日记录、销售月记录;

④仓库管理:

库存车辆、仓库明细、进销存统计;

⑤系统维护:

如数据安全管理(含备份与恢复)、操作员管理、权限设置等;

2.2 业务活动

一、市场工作

1、 获取订单(有能力可做)

A、联络经销商仓管员,了解经销商库存;

B、联络经销商采购购─报价;

C、结合经销商库存情况,主动争取订单;

D、寻找经销商的配货意向进行展异议处理;

E、获得订单,并交由分公司助理安排送货;

F、跟踪送货员贷物交接情况及协助送贷员解决收款中遇到的困难。

二、 客户拜访及市场工作

第一步 准备工作:

数据项名称

说        明      部      分

数据项名

说        明      部      分

1

客户姓名

文本类型           长度为 20 字

2

工作单位

文本类型           长度为 20 字

3

性别

字符串类型        男、女

4

年龄

整数类型        18-100

5

客户号

字符串类型    有唯一性

6

联系电话

整数类型

7

车型号

字符串类型    有唯一性

8

价格

浮点型

9

车辆状态

枚举类型        被订、未订

10

厂商名

文本类型        有唯一性

11

厂商号

字符串类型    有唯一性

12

地址

文本类型           长度为 30 字

13

生产车辆总数

整数类型

14

厂商状态

枚举类型        忙、闲

15

订单号

整数类型         订单所属的类

16

订货日期

时间类型        **/**

17

交货日期

时间类型        **/**

18

仓库号

字符串类型    有唯一性

19

进货车辆数

整数类型

20

出货车辆数

整数类型

21

库存车辆总数

整数类型

22

出售车辆数

整数类型

23

车辆总成本

整数类型

24

获取总金额

整数类型

25

利润

整数类型

26

买车时间

时间类型

27

保修期限

时间类型

28

备注

文本类型

19

车辆名称

字符串类型 长度为 20 字符

编号

数据结构名

属          性

1

客户

客户姓名、性别、年龄、客户号、工作单位、联系电话

2

车辆

车型号、车辆名称、厂商名、价格、车辆状态

1、数据项

2、数据结构

A、检查每周工作记事表,确定当日拜记路线;

B、 准备当日需解决的问题,预约当日需拜访客户;

第二步销售拜访

A、接触:

问候或自我介绍通过改变交谈环境、车轮话术等方法,确定良好的沟通

氛围;

B、收集市场资讯及客户销售资料及填报表;

C、了解竞争对手及品牌机型的市场动向;

D、进行异议处理、协助客户在销售中存在的问题。

第三步 总结与调整

A、回顾当日工作进展状况,填写每日《工作日记》;

B、总结当时工作中遇到的问题,失误与成就,并及时做出调整;

C、根据当时进展状况,对《每周工作记事》表做出调整。

 

2.3 数据字典

 

 

编号

数      据      流      名

输      入

输          出

1

变更客户

变更信息

客户信息

2

查询客户

客户号

客户信息

3

变更厂商

变更信息

厂商信息

4

查询厂商

厂商号

厂商信息

5

变更车辆

变更信息

车辆信息

6

查询车辆

车型号

车辆信息

7

变更订单

变更信息

订单信息

8

查询订单

订单号

订单信息

9

变更仓库

变更信息

仓库信息

10

仓库

仓库号

地址

11

变更车辆销售

变更信息

车辆销售信息

12

查询车辆销售

车辆销售数

利润

13

查询空闲厂商

厂商状态限制条件

空闲厂商信息

14

结账

车型号

购买信息

15

提交订货请求

客户号、车型号、价格、

厂商号

车辆信息

16

获得订货请求

订货信息

车型号、厂商号、客户号

17

提交订单信息

车型号、厂商号

订单信息

18

变更厂商分工信息

厂商号、车型号

厂商分工信息

19

预定车辆

车型号

车辆信息

20

付款

车型号

车辆信息、厂商信息

数据存储名

输入数据流

输出数据流

说 明 部 分

客户信息

变更客户

查询客户

提交订货请求

车辆信息

变更车辆

查询车辆

获得订货请求

厂商信息

变更厂商

查询房间

提交订货请求

查询空闲厂商

车辆销售信息

变更车辆销售

查询厂商

提交点货请求

查询空闲厂商

提交订货信息

提交订单信息

3

厂商

厂商名、厂商号、地址、生产车辆总数、厂商状态、备注

4

订单

订单号、客户号、订货日期、交货日期、地址、是否存有、是否

已订

5

仓库

仓库号、地址、进货车辆数、出货车辆数、库存车辆总数、

6

车辆销售

车型号、厂商号、出售车辆数、车辆总成本、获取总金额、利润

7

订货

客户、厂商、车辆、买车时间、保修期限

3、数据流

4、数据存储

 

处理过程名

输入数据流

输出数据流

说 明 部 分

客户登记

终端

变更车辆

变更厂商

订货

终端

提交订货请求

获得订货请求

订货

获得订货请求

提交订货信息

订单

提交订货信息

提交订单信息

客户结账

结账

订单信息

变更订单

结账

提交订货请求

订货信息

提交订货请求

提交订单信息

结账

获得订货请求

厂商分工信息

变更厂商分工信息

 

 

5、处理过程

2.4 数据流图

1、顶层进程――销售管理子系统第一层数据流图

数据结算

财务费用变动

支付清

客户

包装通知单

 

产品描

批准/不批准订单数据

 

本应收金额

订单细节

客户账目状况

发票

送进订

已批准订单

处理订

开发

 

部门批准与否

CHECK订单数据

提供

应收

提供发货细节

账款

厂商主管

部门

厂商生产

部门

 

2、第二层

(1)进程 1――接受订单

车辆当前价位

不同车辆

特性

客户帐目细节

应收金额

 

客户

CHEC

车辆订单数量           已核对价格订单

CHEC

K帐目

账目状况已核对的订单

 

批准/不批准

订单批

已下车辆订单数量

 

主管部门批准与否

CHECK订单数据

 

厂商主管部门

(2) 进程 2――处理订单

订单细节内容

记事本

 

已下的车辆订单

订单

登记

 

已登记订单

车辆型

号与描

 

车辆标号订单

 

准备发

 

生产通知单

 

发货卡

 

待完成的

订货清单

待完成订单

 

准备待完

成订单报

 

待完成订单报表

生产部门

 

准备发货细节

 

(3) 进程 3――开发票

客户

包装通知单  发票

应收金额

 

开发

 

发票

 

发票

发票主清

 

记录本

 

(4) 进程 4――结帐系统

客户

处理结

结算                   信贷

批准信

支付已批准的信贷

记入贷

方余额记入贷

方余额

调整调整

 

应收金额

 

发票

 

3、结构设计

 

3.1 概念结构设计

在概念设计中,通常用四种方法:

(1). 自顶向下,首先定义全局概念结构的框架,然后逐步细化.

(2).自底向上,首先定义各局部应用的概念结构,然后将他们集成起来,得到全

局概念结构.

(3). 逐步扩张. 首先定义最核心的概念结构,然后向外扩充,,直至总体概念结构.

(4). 混合策略. 即自顶向下和自底向上相结合,用自顶向下策略设计一个全局

概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构.

我在此设计中采用自底向上的方法,逐步实现数据库的设计,得到全局概念.

3.2、总体 E-R 图设计

厂商号

 

地址

厂商名

车辆生产

 

生产车辆总

所需时间

销售部门

 

1

供应

 

m

 

参加

属于

部门经理

m

n

供应量

职工号

零件

车辆成品

职工

车型号

1

姓名

负责

名称

年龄

接受订单

职称

库存量

库存

价格

 

仓库

订单细节

1              1

折扣与否

 

仓库号地址

组成

订货日期

订单号

完整订单

交货日期

客户姓名

地址

 

客户

订货

1         1             n

金额

厂商

车辆买车时间

属性中文名称

属性名

类型

长度

说明

客户号

C_NO

CHAR

20

主码:

公司统一编号,具有唯

一性

客户姓名

User_NAME

CHAR

20

客户名称

服务员性别

User_SEX

CHAR

4

客户性别

服务员年龄

User_AGE

INT

18~100

联系电话

User_tel

INT

工作单位

unit

CHAR

20

客户所在工作场所

属性中文名称

属性名

类型

长度

说明

车型号

CAR_NO

CHAR

10

主码:

厂商统一编号,具有唯一

车辆名称

CAR_NAME

CHAR

20

车辆名称

厂商名

INDUSTTY_NAME

CHAR

文本类型        有唯一性

价格

PRICE

FLOAT

车辆状态

STATUS

BOOLEAN

枚举类型        被订、未订

属性中文名称

属性名

类型

长度

说明

厂商号

INDUSTTY_NO

CHAR

10

主码:

厂商统一编号,具有唯一

厂商名

INDUSTTY_NAME

CHAR

文本类型        有唯一性

地址

address

CHAR

10

厂商状态

STATUS

BOOLEAN

忙:

1;空闲:

0

生产车辆总数

CAR_amount

INT

属性中文名称

属性名

类型

长度

说明

仓库号

BOX_NO

CHAR

10

主码:

厂商统一编号,具有唯一

地址

address

CHAR

10

进货车辆数

IN_AMOUNT

INT

仓库开始进车辆的数量

出货车辆数

OU_AMOUNT

INT

仓库已卖出的车辆数量

库存车辆总数

REMAIN_AMOUNT

INT

仓库现存有的车辆数量

属性中文名称

属性名

类型

长度

说明

车型号

CAR_NO

CHAR

10

外码:

参照车辆表的车型号

厂商号

INDUSTTY_NO

CHAR

10

外码:

依照厂商表的厂商号

出售车辆数

Sale_amount

INT

1、客户基本表

2、车辆基本表

3、厂商基本表

4、仓库表

5、车辆销售基本表

3.3 逻辑结构设计

3.3.1 基本表

 

属性中文名称

属性名

类型

长度

说明

订单号

order_NO

INT

10

订单所属的类别

客户号

C_NO

CHAR

20

外码:

参照客户表的客户号

订货日期

order_data

data

订货时间

交货日期

Hand_data

data

交货期限

厂商号

INDUSTTY_NO

CHAR

10

外码:

依据厂商表中的厂商号

是否存有

MADE

BOOLEAN

默认:

false(没有)

是否已订

orders

BOOLEAN

默认:

false (未订)

车辆总成本

CAR_MONEY

FLOAT

车辆进货的成本

获取总金额

MONEY

FLOAT

利润

benift

FLOAT

盈:

1          亏:

0

6、订单表

3.3.2 视图

1、空闲厂商(厂商号,厂商名)

从厂商基本表导出

2、进销存统计(仓库号,进货车辆数,出货车辆数)

从仓库基本表导出

3、所有车辆销售信息(车型号,厂商号,车辆状态)

从车辆和厂商基本表导出

4、付款(车型号,厂商号,车辆名,价格)

从车辆表、厂商表导出

5、订单生成视图

订单(订单号,客户号,订货日期,交货日期,地址,是否存有,是否已订)

从订单表、客户表导出

6、收益统计信息

(车型号,出售车辆数,车辆总成本,获取总金额,利润)

从车辆表、车辆销售表导出

 

3.4 物理结构设计

在物理结构设计阶段首先分两步走:

(1)确定数据库的物理结构,在关系数据库中主要是指存取方法和存储结构。

(2)对物理结构的评价是时间和空间效率。

选取正确的关系模式存取方法,常用的有:

(1)存取索引方法。

(2)聚簇存取。

(3)HASH 存取方法等。

4运用设计

 

4.1、程序源码与用户界面

 

#include

#include

#include

#include

#include

#include

#define CAR-NO-LEN 50

#define USE-AGE-SEX 5

#define CAR-NAME-LEN 50

#define DEPART-LEN 100

#define CAR-PRICE-LEN 30

#define  STATUS_LEN  100

int main()

{

/* Step 1 定义句柄和变量 */

//以king开头的表示的是连接KingbaseES的变量

//以server开头的表示的是连接SQLSERVER的变量

SQLHENVkinghenv,serverhenv;//环境句柄

SQLHDBCkinghdbc,serverhdbc;//连接句柄

SQLHSTMTkinghstmt,serverhstmt;//语句句柄

SQLRETURNret;

SQLCHARcName[NAME-LEN],Depart[DEPART-LEN],cNO[NO-LEN],

cPrice[PRICE-LEN],Status[STATUS-LEN];

SQLINTEGER  sSta,sSage;

SQLINTEGER  cbAge=0,cbSta=0,cbCno=SQL-NTS,cbPrice=SQL-NTS,

cbName=SQL-NTS,cbDeopart=SQL-NTS;

/*Step 2 初始化环境 */

ret=SQLAllocHandle(SQL-HANDLE-ENV,SQL-NULL-HANDLE,&kinghenv);

ret=SQLAllocHandle(SQL-HANDLE-ENV,SQL-NULL-HANDLE,&serverhenv);

ret=SQLSetEnvAttr(Kinghenv,SQL-ATTR-ODBC-VERSION,(void*)SQL-OV-ODBC3,0);

ret=SQLSetEnvAttr(serverhenv,SQL-ATTR-ODBC-VERSION,(void*)SQL-OV-ODBC3,0);

/*Step 3:

建立连接 */

ret=SQLAllocHandle(SQL-HANDLE-DBC,kinghenv,&kinghdbc);

ret=SQLAlloocHandle(SQL-HANDLE-DBC,serverhenv,&serverhdbc);

ret=SQLConnect(kinghdbc,"KingbaseES ODBC",SQL-NTS,"SYSTEM",SQL-

NTS,"MANAGER",SQL-NTS);

if(!

 SQL-SUCCEEDED(ret)) return -1;//连接失败时返回错误值

ret=SQLConnect(serverhdbc,"SQLServer",SQL-NTS,"sa",SQL-NTS,"sa",SQL-NTS);

if(!

 SQL-SUCCEEDED(ret) return -1;  //连接失败时返回错误值

/* Step 4:

 初始化语句句柄 */

ret=SQLAllocHandle(SQL-HANDLE-STMT,kinghdbc,&kingstmt);

ret=SQLSetStmtAttr(kingstmt,SQL-ATTR-ROW-BIND-BYTE, (SQLPOINTER)SQL-BIND-BY-

COLUMN,SQL-IS-INTEGER);

ret=SQLAllocHandle(SQL-HANDLE-STMT,serverhdbc,&serverhstmt);

/* Step 5:

两种方式执行语句 */

/* 预编译带有参数的语句 */

ret=SQLPREPARE(serverhstmt,"INSERT INTO STUDENT (CAR_NO,CAR_NAME

DEPARTMENT_NAME,PRICE,STATUS)

VALUES (?

?

?

?

)",SQL_NTS);

if (ret==SQL_SUCCESS ‖ ret==SQL_SUCCESS_WITH_INFO)

{

ret===SQLBindParameter(serverhstmt,1,SQL_PARAM_INPUT,SQL_C_CHAR,

SQL-CHAR,CAR_NO_LEN,0,Car_NO,0,&cbCar_NO);

ret===SQLBindParameter(serverhstmt,2,SQL_PARAM_INPUT,SQL_C_CHAR,

SQL-CHAR,CAR_NAME_LEN,0,CAR_name,0,&cbCAR_name);

ret===SQLBindParameter(serverhstmt,3,SQL_PARAM_INPUT,SQL_C_CHAR,

SQL-CHAR,2,0,DEPARTMENT_name,0,&cbDEPARTMENT_name);

ret===SQLBindPar

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 财务管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1