代理商销售采购及财务信息管理子系统
—数据库设计文档
班级 :软件学院 2007 级
姓名:丁鼎、孔祥楠
学号:1291407016、1291407034、1291407048
代理商销售采购及财务信息管理子系统
— — 数据库设计报告
一、 需求分析
(一) 项目背景
随着经济的飞速发展 ,人们生活水平的不断提高,对物质的需求不断提高。
那么代理商是否可以高效地管理供应链销售链,从而满足客户多变的需求和
庞大的信息量。变成为了是否能在市场竞争中取得优势的一个非常重要的因
素,信息在社会和经济的发展中所起的作用越来越为人们所重视。
而现在,信息资源的开发利用水平成为衡量一个国家综合国力的重要标
志之一。计算机作为信息处理的工具,为适应数据处理需求的迅速提高,满
足各类信息系统对数据管理的要求,在文件系统的基础上发展基础数据库系
统,数据库方法针对事物处理中大量数据管理需求。我国自从 80 年代上半期,
国家计委统计局计算中心在第一次全国人口普查、工业普查中使用了数据库
管理技术以来,随着微机管理系统的推广,数据库应用逐渐普及。一个公司
的信息化平台的建设,可以使企业的经营准确高效地运作。
本子功能系统为代理商各部门的数据流动,对信息的管理,对业务的经
营如销售,采购等提供了良好的信息平台,为各部门的信息决策提供了较充
分的依据。从而得以建立更稳定,更可靠的公司运作机制。
(二)系统流程图
: 管理员登陆
登陆成功
否
是
销
售
管
理
采
购
管
理
财
务
管
理
计
划
任
务
管
理
员
工
信
息
管
理
查
看
客
户
订
单
管
理
暂
存
订
单
管
理
发
货
单
管
理
采
购
订
单
管
理
库
存
记
录
查
看
暂
订
订
单
添
加
删
除
修
改
核
对
修
改
明
细
编
制
报
表
应
收
款
明
细
应
付
款
明
细
正确
存档
是
否
参
照
计
划
任
务
添
加
修
改
删
除
主
管
部
员
工
销
售
部
员
工
财
务
部
员
工
采
购
部
员
工
代理商销售采购及财务信息管理子系统主要有销售,采购,财务,计划
任务等几大模块。
销售管理主要是接收客户的订单,并对订单做处理,如检索修改库存,
开发货单等等。
采购管理主要是在检索库存后得知货源不足情况下向供应商采购商品,
另外,在主管部门计划任务的分配下,采购部也会定期购货。
财务管理主要是对明细账进行管理,以及产生报表以供主管部门参考。
计划任务管理主要是根据报表,分析业务情况,编制计划,并引导采购
部购货。
(三)系统功能图
(四)数据流图
代理商销售采购及财务信息管理子系统
销
售
管
理
采
购
管
理
财
务
管
理
计
划
任
务
管
理
处
理
客
户
订
单
接
受
订
单
管
理
采
购
单
到
货
处
理
处
理
暂
订
订
单
核
对
明
细
账
编
制
报
表
管
理
计
划
任
务
1.根据代理商销售采购及财务信息管理子系统,数据流图如下所示:
a. 处理订单
客户
填 写
订单
销售订单
接收
销售部
处 理 订
单
发货单
仓库库存记录
满
足
需
求
不满足需求
暂订订单
接收
采购部
开 采
购 单
接收发
货单
供应商
到货处
理
财务部
应付款明细账
编 制
报表
主管部
应收款明细账
核 对
报表
管 理 计
划 任 务
计划任务
缺 货
信息
财
务
业
绩
信
息
商 品
信息
订单信息
报 表 数
据
报表信息
商 品
数据
任务信息
订单
计划任务
反 馈 的
结果
订 单 数
据
暂 订
单
采购单信息
商品
根 据 选 择 的
商品
b.到货处理
检索库
存 记
录
审核订
单
开发货
单 销售部
核对入
库
修改库
存
暂定订单 采购部
发货单
库存记录
取 消 暂
定订单
库存记录
结果 库存的数据
订单数据
满足
暂订订单
开 暂
订 订
单
不满足
记录收
款细则
收款细则
应收款明细
到货,暂订取消
商品数据
汇总记
录 应付款明细
支付信息
验货
商品
实物信息
c.核对
e.计划任务
核 对
应付款明细
采购
信息
应收款明细
销 售
信息
记录
结果
记 录
信息
财务部
d.开采购单
采购部
统 计 订
购信息
暂订订单
开 采 购
单
发送采
购 单
供应商
根 据
信息
2.数据字典
数据字典
发货单数据流图,该数据流图包括对客户订单、应收款明细帐目等数据流,同时涉及对
这些数据的选定、修改、添加、删除和查询等数据处理过程。
① 数据项的描述
数据项名称:发货单编号
含义说明:唯一标识每份发货单
类型:string
长度:13
取值范围:000001010001~9912319999
取值含义:前 4 位标识年份,5、6 位标识月份,7、8 位标识日期,9、10、11、12、13
位顺序编码
① 数据流的描述
数据流名称:发货单
说明:销售部全部发货单
数据流来源:客户订单信息
数据流去向:应收款明细帐目显示
组成:发货单编号, 订单编号,销售部员工编号,发货日期,交货地点,客户编号,备
注
① 数据存储的描述
数据存储名:应收款
说明:保存每一份发货单公司获得的收入的描述
主管部门
分 析 财
务报表
编 制 计
划任务
接受
采购部
业 绩
信息
计划任务
输入的数据流:新增发货单
输出的数据流:应收款明细帐目
组成:应收款明细账编号, 销售部员工编号,客户编号,商品编号,公司账号,收款金
额,发票号码
① 处理过程的描述
处理过程名:制定发货单内容
说明:对一份发货单,根据客户所需求确定发货单的内容,及仓库有没有足够库存或能
否及时从供应商提货以满足客户需求。再根据公司要求,制定发货单内容。
输入:订单编号,销售部员工编号,发货日期,交货地点,客户编号,备注
输出:发货单
处理:
a. 判断是否能在规定时间准备客户需求商品数量
b. 判断交易收入是否合理
c. 若 a,b 都满足,则在出版社的发货单中添加一条发货记录
d. 处理完全部客户提出发货单后,形成应收款明细帐目
二、概念结构设计
(一) 代理商销售采购及财务信息管理子系统的细节 E-R 图
(二) 代理商销售采购及财务信息管理子系统全局 E-R 图
合并局部 E-R 图,形成全局 E-R 图,如下图所示 :
三、 逻辑结构设计
根据实体到关系模式以及联系到关系模式,可以得到以下一组关系模式:
代理商销售采购信息管理子系统关系模式:
商品(商品编号,商品名称,单价,生产日期,有效日期,规格,供应商编号,仓库库存
记录编号,采购部员工编号,描述)
PK=商品编号,FK=供应商编号,仓库库存记录编号,采购部员工编号
客户(客户编号,客户姓名,联系地址,联系方式,注册日期,客户银行帐号,订单编
号)
PK=客户编号,FK=订单编号
供应商(供应商编号,供应商简称,供应商全名,法定代表姓名,联系地址,联系方式,
供应商银行账号,注册日期,执照号码,商品编号)
PK=供应商编号,FK=商品编号
客户订单(订单编号,日期,客户编号,商品编号,状态,数量,交货日期,交货地点,
备注)
PK=订单编号,FK=客户编号,商品编号
发货单(发货单编号, 订单编号,销售部员工编号,发货日期,交货地点,客户编号,
备注)
PK=发货单编号,FK=订单编号,销售部员工编号,客户编号
暂订订单(暂定订单编号,订单编号,,销售部员工编号,备注)
PK=暂定订单编号,FK=订单编号,,销售部员工编号
财务报表(报表编号, 财务部员工编号,日期,付款全额,收款全额,收支总额,资金
流动情况,备注)
PK=报表编号,FK=财务部员工编号
应付款明细账(应付款明细账编号,采购部员工编号,商品编号,供应商编号, 公司账号,
付款金额,发票号码,来源单据)
PK=应付款明细账编号,FK=采购部员工编号,商品编号,供应商编号
应收款明细账(应收款明细账编号, 销售部员工编号,客户编号,商品编号,公司账号,
收款金额,发票号码)
PK=发货单编号,FK=客户编号,销售部员工编号,客户编号,商品编号
仓库库存记录(仓库库存记录编号,商品编号,采购部员工编号,入库时间,库存地点,
数量)
PK=仓库库存记录编号,FK=商品编号,采购部员工编号
计划任务(计划任务编号,主管部员工编号,主题,创建时间,内容,附件,备注)
PK=计划任务编号,FK=主管部员工编号
主管部(主管部员工编号,计划任务编号,员工姓名,职能,联系方式)
PK=主管部员工编号 ,FK=计划任务编号
财务部(财务部员工编号,报表编号,员工姓名,职能,联系方式)
PK=财务部员工编号,FK=报表编号
采购部(采购部员工编号,商品编号,应付款明细账编号,员工姓名,职能,联系方式)
PK=采购部员工编号,FK=商品编号,应付款明细账编号
销售部(销售部员工编号,发货单编号,应收款明细账编号,员工姓名,职能,联系方
式)
PK=销售部员工编号,FK=发货单编号,应收款明细账编号
选择(商品编号,客户订单编号,数量)
PK=商品编号,FK=客户订单编号
四、 物理结构设计
1.确定数据库的存储结构
本部分主要是确定数据库物理结构,即确定数据的存放位置和存储结构,包括确定
关系、索引、聚簇、日志、备份等的存储安排和存储结构,确定系统配置等。
在综合考虑存取时间、存储空间利用率和维护代价三方面的因素下,经过权衡,确
定下数据的存放位置和存储结构。
1. 确定数据的存放位置
为了提高系统的性能,根据应用情况将数据的易变部分与稳定部分、经常存取部分
与存取效率较低部分分开存放。
考虑到目前许多计算机都有多个磁盘,因此将表(如消费单表)和索引放在不同的
磁盘上,在查询时,两个磁盘驱动器并行工作,可以大大提高 I/O 读写的效率;而对于
较大的表(如消费单的表)则分放在两个磁盘上,这样可以加快存取速度,在多用户环
境下的作用更有效;为了改进系统的性能,将日志文件与数据库对象(表、索引等)放
在了不同的盘上。
2、确定系统配置
在数据库设计初始阶段,为了对以后的数据库进行物理优化,提供了一些系统配置
变量、存储分配系数,并对这些变量赋予了合理的缺省值。但是这些值不一定适合每一
种应用环境,在进行物理设计时,对这些变量重新赋值,以改善系统的性能。
对系统配置的变量,例如:同时使用数据库的用户数,同时打开的数据库对象数,
内存分配参数,缓冲区分配参数(使用的缓冲区长度、个数),存储分配参数,物理块
的大小,物理块装填因子,时间片大小,数据库的大小,锁的数目等。这些参数值直接
影响存取时间和存储空间的分配,在物理设计时应根据应用环境确定这些参数值,以使
系统性能最佳。
将以上的数据库概念模型转化为数据库的逻辑结构,数据库由以下几个表
格组成,各个表格的设计结果如下面表格所示。每个表格表示在数据库中的
一个表。
表一:商品信息表
字段名 类型 长度 允许空 索引 说明
商品编号 String 8 Not Null 使用 前 6 位年月
日,后 2 位序
号
商品名称 Char 255 Not Null 不使用
单价 Float 7 Not Null 不使用 精确到分
生产日期 Date 8 Not Null 不使用 ****年**月
**日
有效日期 Date 8 Null 不使用 ****年**月
**日
规格 Char 255 Null 不使用
供应商编号 String 8 Not Null 使用 前 2 位注册
年份,后 6 位
序号
采购部员工编
号
String 8 Not Null 使用 前 2 位注册
年份,后 6 位
序号
描述 VarChar 1023 Null 不使用
表二:客户信息表
字段名 类型 长度 允许空 索引 说明
客户编号 String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
客户姓名 Char 255 Not Null 不使用
联系地址 Char 255 Not Null 不使用
联系方式 String 13 Not Null 不使用
注册日期 Date 8 Not Null 不使用 ****年**月**
日
客户银行帐
号
String 19 Not Null 不使用
订单编号 String 13 Not Null 使用 前 8 位年月日,
后 5 位序号
表三:供应商信息表
字段名 类型 长度 允许空 索引 说明
供应商编号 String 8 Not Null 使用 前 2 位注册
年份,后 6 位
序号
供应商全称 Char 255 Not Null 不使用
供应商简称 Char 255 Not Null 不使用
法定代表姓名 Char 255 Not Null 不使用
联系地址 Char 255 Not Null 不使用
联系方式 String 13 Not Null 不使用
供应商银行帐
号
String 19 Not Null 不使用
注册日期 Date 8 Not Null 不使用 ****年**月
**日
执照号码 String 15 Not Null 不使用
商品编号 String 8 Not Null 使用 前 6 位年月
日,后 2 位序
号
表四:客户订单信息表
字段名 类型 长度 允许空 索引 说明
订单编号 String 13 Not Null 使用 前 8 位年月日,
后 5 位序号
日期 Date 8 Not Null 不使用 ****年**月**
日
客户编号 String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
商品编号 String 8 Not Null 使用 前 6 位年月日,
后 2 位序号
状态 Char 255 Not Null 不使用
数量 Int 4 Not Null 使用
交货日期 Date 8 Not Null 不使用 ****年**月**
日
交货地点 Char 255 Not Null 不使用
备注 VarChar 4095 Null 不使用
表五:发货单信息表
字段名 类型 长度 允许空 索引 说明
发货单编号 String 13 Not Null 使用 前 8 位年月日,
后 5 位序号
订单编号 String 13 Not Null 使用 前 8 位年月日,
后 5 位序号
销售部员工
编号
String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
发货日期 Date 8 Not Null 不使用 ****年**月**
日
交货地点 Char 255 Not Null 不使用
客户编号 String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
备注 VarChar 4095 Null 不使用
表六:暂订订单信息表
字段名 类型 长度 允许空 索引 说明
暂订订单编
号
String 13 Not Null 使用 前 8 位年月日,
后 5 位序号
订单编号 String 13 Not Null 使用 前 8 位年月日,
后 5 位序号
销售部员工
编号
String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
备注 VarChar 4095 Null 不使用
表七:财务报表信息表
字段名 类型 长度 允许空 索引 说明
报表编号 String 12 Not Null 使用 前 8 位年月日,
后 4 位序号
财务部员工
编号
String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
日期 Date 8 Not Null 不使用 ****年**月**
日
付款全额 Float 9 Not Null 不使用 精确到分
收款全额 Float 9 Not Null 不使用 精确到分
收支总额 Float 9 Not Null 不使用 精确到分
资金流动情
况
Char 255 Not Null 不使用
备注 VarChar 4095 Not Null 不使用
表八:应付款明细账信息表
字段名 类型 长度 允许空 索引 说明
应付款明细
账编号
String 12 Not Null 使用 前 8 位年月日,
后 4 位序号
采购部员工
编号
String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
商品编号 String 8 Not Null 使用 前 6 位年月日,
后 2 位序号
供应商编号 String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
公司账号 String 19 Not Null 不使用
付款金额 Float 9 Not Null 不使用 精确到分
发票号码 String 8 Not Null 不使用
来源单据 Char 255 Not Null 不使用
表九:应收款明细账信息表
字段名 类型 长度 允许空 索引 说明
应收款明细
账编号
String 12 Not Null 使用 前 8 位年月日,
后 4 位序号
销售部员工
编号
String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
客户编号 String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
商品编号 String 8 Not Null 使用 前 6 位年月日,
后 2 位序号
公司账号 String 19 Not Null 不使用
收款金额 Float 9 Not Null 不使用 精确到分
发票号码 String 8 Not Null 不使用
表十:仓库库存记录信息表
字段名 类型 长度 允许空 索引 说明
仓库库存记
录编号
String 12 Not Null 使用 前 8 位年月日,
后 4 位序号
商品编号 String 8 Not Null 使用 前 6 位年月日,
后 2 位序号
采购部员工
编号
String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
入库时间 Date 8 Not Null 不使用 ****年**月**
日
库存地点 Char 255 Not Null 不使用
数量 Int 4 Not Null 不使用
表十一:计划任务信息表
字段名 类型 长度 允许空 索引 说明
计划任务编 String 12 Not Null 使用 前 8 位年月日,
号 后 4 位序号
主管部员工
编号
String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
主题 Char 255 Not Null 不使用
创建时间 Date 8 Not Null 不使用 ****年**月**
日
内容 Char 255 Not Null 不使用
附件 Char 255 Null 不使用
备注 VarChar 4095 Null 不使用
表十二:主管部信息表
字段名 类型 长度 允许空 索引 说明
主管部员工编
号
String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
计划任务编号 String 12 Not Null 使用 前 8 位年月日,
后 4 位序号
员工姓名 Char 255 Not Null 不使用
职能 Char 255 Null 不使用
联系方式 Char 13 Not Null 不使用
表十三:财务部信息表
字段名 类型 长度 允许空 索引 说明
财务部员工编
号
String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
报表编号 String 12 Not Null 使用 前 8 位年月日,
后 4 位序号
员工姓名 Char 255 Not Null 不使用
职能 Char 255 Null 不使用
联系方式 Char 13 Not Null 不使用
表十四:采购部信息表
字段名 类型 长度 允许空 索引 说明
采购部员工编
号
String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
商品编号 String 8 Not Null 使用 前 6 位年月日,
后 2 位序号
应付款明细账
编号
String 12 Not Null 使用 前 8 位年月日,
后 4 位序号
员工姓名 Char 255 Not Null 不使用
职能 Char 255 Null 不使用
联系方式 Char 13 Not Null 不使用
表十五:销售部信息表
字段名 类型 长度 允许空 索引 说明
销售部员工编
号
String 8 Not Null 使用 前 2 位注册年
份,后 6 位序
号
发货单编号 String 8 Not Null 使用
应收款明细账
编号
String 12 Not Null 使用 前 8 位年月日,
后 4 位序号
员工姓名 Char 255 Not Null 不使用
职能 Char 255 Null 不使用
联系方式 Char 13 Not Null 不使用
表十六:客户选择信息表
字段名 类型 长度 允许空 索引 说明
商品编号 String 8 Not Null 使用 前 6 位年月日,
后 2 位序号
客户订单编
号
String 13 Not Null 使用 前 8 位年月日,
后 5 位序号
数量 Int 4 Not Null 不使用