销售管理系统数据库设计说明书.docx
- 文档编号:3514250
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:32
- 大小:74.86KB
销售管理系统数据库设计说明书.docx
《销售管理系统数据库设计说明书.docx》由会员分享,可在线阅读,更多相关《销售管理系统数据库设计说明书.docx(32页珍藏版)》请在冰豆网上搜索。
销售管理系统数据库设计说明书
销售管理系统数据库设计说明书
一、概述
(一)、数据库设计文档概述
本文档为北大青鸟ACCP软件工程师培训无锡培训中心SI50B班学员,第一学期毕业设计项目(《销售管理系统》)的数据库设计说明书,具体描述《销售管理系统》的数据库的设计,用于指导该系统在数据库存储各方面的内容,作为系统代码设计的基准文档。
(二)、项目简要介绍
项目目标软件系统名称:
销售管理系统
项目提出:
自命题
项目目标:
利用计算机技术和信息技术实现销售管理的信息化,达到客户管理、合同管理、业务管理的规范有序、信息查阅快速准确、事务处理方便高效的要求,及时跟踪企业营销目标并适时进行结构化分析,为营销策略的修正以及新的营销策略的制定提供依据,通过对提高营销效率与降低营销成本的有效支持,从而改善企业宏观运营,提高企业的经济效益。
系统模式:
采用客户端/服务器模式
系统开发环境:
VisualBasic6.0
数据库管理系统:
MicrosoftSQLServer2000
软件开发者:
北大青鸟无锡培训中心SI50B班学员王章圣
软件应用范围:
中小型企业(生产类)
(三)、参考资料:
A、北大青鸟第一学期教材;
B、《基于软件开发项目的毕业设计》;
(C、《销售管理系统》需求说明书)
D、项目指导教师提供的毕业设计案例
二、数据库外部设计
(一)本数据库的应用软件及其与数据库的接口
数据库软件:
MicrosoftSQLServer2000
系统要求建立的数据库名称:
Sales
使用该数据库的应用软件:
销售管理系统
该应用软件在VisualBasic6.0编程环境下设计,采用VisualBasic6.0基于ActiveDataObjects的数据库访问接口技术,建立与数据库的通讯连接、执行T-SQL。
应用程序对数据库的操作,在通过执行T-SQL查询语句生成的结果集上执行。
(二)数据库管理系统
Microsoft®SQLServer?
2000扩展了MicrosoftSQLServer7.0版的性能、可靠性、质量和易用性。
MicrosoftSQLServer2000增加了几种新的功能,由此成为大规模联机事务处理(OLTP)、数据仓库和电子商务应用程序的优秀数据库平台。
本数据库采取SQLServer2000作为系统平台。
以下是需要使用到SQLServer2000的几个组件,包括:
A、企业管理器:
提供了数据管理和数据库操作的集成平台;
B、查询分析器:
T-SQL调试、优化、性能检测的工具;
C、事件探查器:
提供了对SQLServer执行操作的检测,并以T-SQL的形式记录;
D、服务管理器:
提供SQLServer停止、启动的控制工具;
此外,还包括可能会使用到的数据导入和导出工具,为数据库提供数据的输入。
三、数据库结构设计
(一)表结构设计
本数据库包括五类二十三张数据表,清单如下:
类别
表索引
表名
说明
产品类
表一
Product
存储公司所有产品目录
表二
product_type
产品类类别:
对表一的产品进行分类,并以其进行约束(字典库)
表三
Store
产品出/入库:
指检验合同的成品/退货产品,生产过程中的待检品、半成品以及材料等不纳入本系统
表四
store_reason
出/入库理由:
字典库
表五
product_qulity
产品质量:
字典库
表六
product_Periods
产品生产周期:
主要用于合同评审(字典库)
表七
product_profit
产品利润:
通过表九与表一跟踪签约产品的利润实现情况
客户类
表八
client
客户表:
一般指企业(即法人)
合 同
-
订单类
表九
Orders
订单:
即将合同细化的产品订单
表十
Contract
合同:
即以合同为单位的订单,也可称之为销售记录
表十一
contract_mode
履行方式:
字典库
表十二
contract_cancel
已废止/取消的合同:
在本库中起字典库作用
表十三
contract_talk
合同评估:
字典库
表十四
Suddenness
合同意外处置:
当不能完全按照合同的约定履行时,需在此登记,以便对合同与客户进行有效的管理
表十五
deal_mode
意外处置方式:
字典库
表十六
contract_profit
合同利润:
以合同为统计单位,并扣除各种折扣
表十七
contract_verify
合同评审记录:
主体部分
表十八
contract_perverify
合同评审记录:
产品细分清单
营销目标与
营销人员
表十九
Target
销售目标:
企业整体的营销目标,并按产品分解
表二十
Seller
销售员:
字典库
表二一
Seller_target
个人目标分解:
按产品将企业营销目标分解到业务员,以便跟踪个人业绩
系统
用户
表二二
userlist
用户表:
用于数据库的操作人员,业务员、客户可通过其口令登录查询
表二三
Operate_recorders
用户操作记录表:
写入操作员针对数据库的任何更改,建立责任制,同时也可以用作对操作员考核的原始依据
以下是各数据表的具体结构及约束等说明:
表一:
Product(产品)
字段
类型(长度)
约束
说明
产品编号
product_id
Char(10)
主键
产品名称
product_name
Char(20)
非空
产品大类
product_type
tinyint
外键
引用表二:
type_id
单位成本
product_cost
smallmoney
无
根据用户类型决定可否查看
备 注
product_menu
text
无
相关表:
订单、库存(出/入库)、销售计划、销售记录、产品利润、产品生产周期(编号)
说 明:
所有字段均由用户输入(选择产品大类,用户输入不存在的类别时提示添加。
)
(严格地讲,单位成本是变动的,最好单独成表并标注日期,以保存不同时期的“版本”,同时,还需建立报价表,此二表可考虑合并,为减轻项目负担,没有分开。
)
表二:
product_type(产品大类)
字段
类型(长度)
约束
说明
序号
type_id
tinyint
标识列,主键
产品大类
type_name
Char(20)
非空
将数据写入产品输入界面的组合框
相关表:
产品(对其实施约束)
说 明:
type_name由用户输入(一般通过修改产品时提示添加)
表三:
Store(产品出/入库)
字段
类型(长度)
约束
说明
序 号
store_id
int
标识列,主键
产品编号
product_id
char(10)
外键
引用表一:
product_id
产品批号
product_code
char(10)
非空
登记方式
enter_statu
bit
非空
“1”为入存,“0”为出库
登记数量
chang_number
int
非空/正数
可与前项合并,以正负区别,但考虑到统计需要,分开。
质量等级
store_qulity
tinyint
外键
引用表四:
qulity_type
出/入库日期
store_date
datetime
非空
来源/去向
store_frorto
char(20)
非空
出/入库理由
store_reason
char(20)
非空
参引表:
reason_type
库存数量
store_number
int
非空/非负
相关表:
产品(产品编号)、产品质量
说 明:
除“序号”、“库存状态”、“库存数量”外均由用户输入(选择日期、理由、质量等级);reason_id不作为本表的外键,从而允许用户输入其他原因,并提示用户规范该字典库(“库存数量”在用户登记时由系统计算并自动填写)。
表四:
product_qulity(产品质量)
字段
类型(长度)
约束
说明
序号
qulity_id
tinyint
标识列,主键
有关属性与产品类别表相似。
质量等级
qulity_type
Char(6)
非空
相关表:
产品出/入库、定单
表五:
store_reason(出/入库理由)
字段
类型(长度)
约束
说明
序号
reason_id
tinyint
标识列,主键
相关表:
产品出/入库
有关属性与产品类别表相似。
理由描述
reason_type
Char(20)
非空
表六:
product_Periods(产品生产周期)
字段
类型(长度)
约束
说明
序 号
periods_id
Tinyint
标识列,主键
产品 编号
product_id
Char(10)
外键
数 量
product_number
Int
非空/正数
一般生产周期
periods
smallint
非空/正数
以天计
相关表:
产品(编号)
说 明:
均由用户输入,所有在产品都必须在此登记,并作为在产的标志。
表七:
product_profit(产品利润)
字段
类型(长度)
约束
说明
产品编号
product_id
Char(10)
外键
主键
合同编号
contract_id
Char(10)
外键
利润额
profit
Money
无
利润率
profit_margin
decimal
无
相关表:
产品(产品编号)、合同(合同编号)
说 明:
根据订单表作相应更新,由系统建立,便于统计。
表八:
client(客户)
字段
类型(长度)
约束
说明
客户编号
client_id
Char(8)
主键
客户名
client_name
Char(30)
非空
联系人
client_person
Char(10)
非空
或称代表人
联系方式
client_tel
Char(15)
非空
住址
client_ad
Varchar(50)
非空
相关表:
合同(客户编号)(通过合同表与产品表建立间接联系,查看客户感兴趣的产品)
说 明:
全部由用户输入(客户编号可考虑由系统建立)
表九:
Orders(订单)
字段
类型(长度)
约束
说明
合同编号
product_id
Char(10)
外键
主键
产品编号
contract_id
Char(10)
外键
数 量
sells_number
int
非空/正数
质 量
contract_qulity
tinyint
外键
引用表四:
qulity_type
单 价
per_price
smallmoney
非空/正数
相关表:
产品(产品编号)、合同(合同编号)、产品质量
说 明:
均由用户输入(多数情况下,与合同表一同更新)
表十:
Contract(合同)
字段
类型(长度)
约束
说明
合同编号
contract_id
Char(10)
主键
客户编号
client_id
Char(8)
外键
标的额
sells_totall
Money
非空
>0
签约折扣
sign_discount
Money
非空
非负/默认为“0”
销售人员编号
seller_id
Char(8)
非空
订立日期
sign_date
datetime
非空
履行日期
carry_date
datetime
非空
履行方式
carry_mode
Char(20)
非空
参引表:
carry_type
履行状态
contract_statu
Bit
非空
“1”为履行完毕,“0”为未完毕(默认)
履约评估
contract_talk
Char(30)
无
参引表:
talk_type
相关表:
订单(合同编号)、客户(客户编号)、个人销售记录(销售人员编号)、合同意外处理(合同编号)、履行方式、履约评估
说 明:
合同编号及标的额在订单的输入由系统生成,履行方式可作为本表的一个小备注,如具体时间、地点、提货或是送货等;销售人员项由程序提供名单,供用户选择,用户亦可输入,但不能是数据库之外的——可以以公司名义而不划入任何个人,故此处不将其作为外键,仅查询出来供用户选择;不再履行的合同也视为已经履行(即不再将此合同列入待履行之列)。
表十一:
contract_mode(履行方式)
字段
类型(长度)
约束
说明
序号
carry_id
tinyint
标识列,主键
相关表:
合同
有关属性与产品类别表相似。
理由描述
carry_type
Char(20)
非空
表十二:
contract_talk(合同评估)
字段
类型(长度)
约束
说明
序号
talk_id
tinyint
标识列,主键
相关表:
合同
有关属性与产品类别表相似。
具体描述
talk_type
Char(20)
非空
表十三:
contract_cancel(已废止/取消的合同)
字段
类型(长度)
约束
说明
合同编号
contractl_id
Char(10)
外键/主键
相关表:
合同
有关属性与产品类别表相似。
废止理由
cancel_type
Char(20)
非空
废止日期
cancel_date
datetime
非空
表十四:
Suddenness(合同意外处置)
字段
类型(长度)
约束
说明
合同编号
contract_id
Char(10)
外键
未使用主键
日 期
treatdate
datetime
非空
处置方式
treatment
Varchar(50)
非空/参引十五:
deal_mode
相关表:
合同(合同编号)
说 明:
均由用户输入(处置方式如提前、推迟、取消等,通过程序修改合同及相关表格)
表十五:
deal_mode(意外处置方式)
字段
类型(长度)
约束
说明
序号
deal_id
tinyint
标识列,主键
相关表:
合同
有关属性与产品类别表相似。
处置方式
deal_mode
Char(30)
非空
表十六:
contract_profit(合同利润)
字段
类型(长度)
约束
说明
合同编号
contract_id
Char(10)
外键,主键
在“折扣”项中,如用户以比例形式提交,则在程序中先行计算
标的总成本
totall_cost
money
非空
折 扣
discount
money
非空
利润额
contract_profit
money
无
利润率
profit_margin
decimal
无
相关表:
合同(合同编号)
说 明:
折扣由用户输入,其余由系统建立。
表十七:
contract_verify(合同评审记录/主体评审)
字段
类型(长度)
约束
说明
评审号
verify_id
Char(10)
主 键
由系统建立
评审日期
verify_date
datetime
非空
有关评审人员
verify_persons
varchar(50)
非空
客户编号
client_id
Char(8)
非空/外键
业务员编号
seller_id
Char(8)
非空
最低利润率需求
verify_forprofit
decimal
非空/非负
拟履行日期
verify_carry
datetime
非空
标的总额
verify_allprice
money
非空/“0”
由系统建立
可能的折扣
verify_allowdis
money
非空/“0”
可实现的利润总额
verify_profit
money
非空/“0”
可实现的利润率
verify_margin
decimal
非空/“0”
生产能力评估
verify_capacity
varchar(50)
无
系统建议结论
verify_sysadvice
varchar(50)
无
评审结论
verify_conclusion
varchar(50)
无
可先登记,再评审
相关表:
产品细分评审(评审号)
说 明:
由于评审并不是一次完成,故允许有关的判断项暂允许为空。
表十八:
contract_perverify(合同评审记录/产品细分评审)
字段
类型(长度)
约束
说明
评审号
verify_id
Char(10)
外键
主键
产品编号
product_id
Char(10)
外键
数 量
verify_number
int
非空/正数
单 价
perverify_price
smallmoney
非空/正数
最低利润率需求
perverify_forprofit
decimal
非空/非负
可启动日期
perverify_ondate
datetime
非空
可实现利润
perverify_profit
money
非空/非负
由系统建立
可实现利润率
perverify_margin
decimal
非空/非负
生产能力评估
perverify_capacity
varchar(30)
非空
系统建议结论
perverify_syadice
varchar(30)
非空
评审意见
perverify_conclusion
varchar(30)
无
可先登记,再评审
相关表:
产品(产品编号)、主体评审(评审号)
说 明:
暂不考虑产品质量;新时期产品的数据输入需一次完成,故除“评审意见”外,均不允许为空;
表十九:
Target(销售目标)
字段
类型(长度)
约束
说明
产品编号
product_id
Char(10)
外键,主键
本年度销售目标
target
money
非空/正数
相关表:
产品(产品编号)
说 明:
产品编号可选择,也可直接输入;工作界面增加产品大类,以方便用户。
表二十:
Seller(销售员)
字段
类型(长度)
约束
说明
销售人员编号
seller_id
Char(4)
主键
新注册时由系统给出提示,超级用户可修改之。
姓 名
seller_name
Char(15)
非空
登录口令
seller_pwd
Char(6)
非空
状 态
seller_statu
bit
非空
“1”为有效(默认),“0”为失效
相关表:
个人目标分解表(编号)
说 明:
均由用户输入,口令为标准的六位,不足由系统补足(用户表同)。
表二一:
Seller_target(个人目标分解表)
字段
类型(长度)
约束
说明
销售人员编号
seller_id,
Char(4)
外键,主键
产品编号
product_id
Char(10)
外键
个人目标
per_target
money
非空/正数
相关表:
销售员(编号)、产品(产品编号)
说 明:
工作界面可增加产品大类,以方便用户
表二二:
userlist(用户表)
字段
类型(长度)
约束
说明
用户编号
user_id
Char(4)
主键
在申请用户时,程序中要求提交用于申请用户的密码,代替管理员的确认(销售人员表同)
用户名
user_name
Char(15)
非空
密 码
user_pwd
Char(6)
非空
状 态
user_statu
bit
非空
“1”为有效(默认),“0”为失效
相关表:
用户操作(编号)
说 明:
均由用户输入(可以考虑增加一张表,对业务员及用户状态中的“失效”作出说明,但这应该属于人力资源管理的范畴,放在此处可能不太合适!
)。
表二三:
Operate_recorders(用户操作记录表)
字段
类型(长度)
约束
说明
操作序号
operate_id
int
标识列,主键
用户编号
user_id
Char(4)
外键
记录日期
operate_date
datetime
非空
操作记录
operate_text
Char(20)
非空
相关表:
用户表(编号)
说 明:
均由系统(以模块函数方式)建立,以实际变更数据库中的值为标准(即单纯的查看不计)。
(二)、视图对象设计
为方便查询与维护,本数据库设计了十六个视图,具体描述如下:
视图一:
produce_view(在产品目录)
字段名
来源字段
来源表
连接关系及条件、聚合等
产品编号
productid
product_id
Product
product_type.type_id=Product.product_type
Product.product_statu=1
产品名称
productname
product_name
Product
产品大类
typename
type_name
product_type
单位成本
productcost
product_cost
Product
备 注
productmenu
product_menu
Product
说 明:
以“产品”表为基础,为查询提供方便;对于成本的查看同样需要权限。
视图二:
contract_view(合同)
字段名
来源字段
来源表
连接关系及条件、聚合等
合同编号
contractid
contract_id
Contract
Client.client_id=Contract.client_id
Seller.seller_id=Contract.seller_id
Suddenness.contract_id=Contract.contract_id
客户编号
clientid
contract_id
Contract
客户名称
clientname
client_name
client
标的额
sellstotall
sells_t
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 销售 管理 系统 数据库 设计 说明书
![提示](https://static.bdocx.com/images/bang_tan.gif)