MIS实验报告1.docx
- 文档编号:10466319
- 上传时间:2023-05-26
- 格式:DOCX
- 页数:31
- 大小:43.70KB
MIS实验报告1.docx
《MIS实验报告1.docx》由会员分享,可在线阅读,更多相关《MIS实验报告1.docx(31页珍藏版)》请在冰点文库上搜索。
MIS实验报告1
经济管理学院电子商务专业_____班________组、学号______
姓名______________协作者______________教师评定_________________
实验一实验题目仓库进销存数据库建立
实验报告(综合性实验)
一、实验目的与要求
目的:
通过本实验掌握仓库进销存系统的数据库及相关数据表的建立与必要的测试初始数据的录入与测试。
要求:
按教材p261图117之示例设计p256-257图11.14之10个数据库表结构,建立“仓库进销存数据库”,然后建立这10个数据库表结构;按p261图11.18建立它们之间的永久关联,再定义完整性约束。
按p262-263图11.19-20,把订货、进货、提货、盘存相关的8个临时文件作为自由表建立其结构,并对应其数据关联。
编写至少包括供应部、销售部、仓储部、仓库1、仓库2、仓库3组成的部门表、每个部门不少于3个员工所组成的员工表,作为测试数据,并输入测试。
记录遇到的问题、解决方法及收获体会。
二、实验方案(主要框图及源代码或操作步骤)
部门表
1.仓库进销存数据库表框架
字段名
部门号
部门名
部门类
部门位置
电话
主管工号
任职日期
外码
外码
主码
主码
类型
C
C
C
C
C
C
D
长度
6
12
6
6
11
8
小数位
列约束
非空
非空
行约束
表约束
参照约束
插入为”忽略”,删除为”限制”,更新为”级联”
说明
由人事部提供,在初始化时用带校验的输入表单输入
员工表
字段名
员工号
姓名
性别
生日
职务
住址
电话
所属部门号
聘用日期
外码
外码
主码
主码
类型
C
C
C
D
C
C
C
C
D
长度
8
8
2
10
24
11
6
小数位
列约束
非空
非空
①
行约束
表约束
参照约束
插入、删除为”限制”,更新为”级联”
说明
1性别=”男”or性别=”女”,出错信息:
”性别只能是男或女”
2由人事部提供,在初始化时用带校验的输入表单输入
客户表
字段名
客户号
户名
地址
信誉度
联系人
邮编
电话
外码
主码
主码
类型
C
C
C
C
C
C
C
长度
10
32
40
4
8
6
11
小数位
列约束
非空
非空
①
行约束
表约束
参照约束
说明
①信誉度in(”AAA”,”AA”,”A”,”B”,”C”),出错信息:
’库存类只能是”AAA”,”AA””A”,”B”,”C”’
②记录在进货、提货业务处理中由相关临时表中转入或修改
货物表
字段名
货号
货名
型号
规格
计量单位
库号
库存类
库存价
期初存量
现存量
最低存量
最高存量
采购批量
外码
外码
主码
主码
类型
C
C
C
C
C
C
C
N
N
N
N
N
N
长度
12
16
8
12
4
6
2
9
5
5
5
5
5
小数位
2
列约束
非空
非空
①
行约束
最低存量<最高存量,采购批量<=(最高存量-最低存量)
表约束
参照约束
插入为忽略、删除为限制,更新为级联
说明
①库存类in(”A”,”B”,”C”),出错信息:
’库存类只能是”A”,”B”,”C”’
②库号=子部门号
③每次进出货后修改:
现存量=现存量+Σ进货明细表.进货量—Σ订货明细表.提货量
④记录在进货、提货、盘存业务处理中由相关临时表中转入或修改
字段名
订单号
所订货号
售价
订货量
提货日期
库管工号
外码
外码
外码
外码
主码
复合主码
类型
C
C
N
N
D
C
长度
8
12
9
5
8
小数位
2
列约束
非空
非空
行约束
表约束
参照约束
插入、删除为限制,更新为级联
说明
记录在出库登记时由临时表转入
字段名
订单号
订货日期
订户号
销售工号
外码
外码
主码
主码
类型
C
D
C
C
长度
8
10
8
小数位
列约束
非空
行约束
表约束
参照约束
插入、删除为限制,更新为级联
说明
记录在出库登记时由临时表转入
进单明细表
进单头表
字段名
进单号
进货日期
供应商号
采购工号
外码
外码
外码
主码
主码
类型
C
D
C
C
长度
8
10
8
小数位
列约束
非空
行约束
表约束
参照约束
插入、删除为限制,更新为级联
说明
记录在入库登记时由临时表转入
字段名
进单号
所进货号
进价
进货数量
入库日期
库管工号
外码
外码
外码
外码
主码
复合主码
类型
C
C
N
N
D
C
长度
8
12
9
5
8
小数位
2
列约束
非空
非空
行约束
表约束
参照约束
插入、删除为限制,更新为级联
说明
记录在入库登记时由临时表转入
盘单头表
字段名
盘单号
日期
所盘库号
清点工号
对帳工号
审查工号
外码
外码
外码
外码
外码
主码
主码
类型
C
D
C
C
C
C
长度
8
6
8
8
8
小数位
列约束
非空
非空
行约束
表约束
参照约束
插入、删除为限制,更新为级联
说明
记录在盘存登记时由临时表转入
盘单明细表
字段名
盘单号
所盘货号
实存量
盘盈量
处理意见
外码
外码
外码
主码
复合主码
类型
C
C
N
N
M
长度
8
12
5
5
小数位
列约束
非空
非空
①
行约束
表约束
参照约束
插入、删除为限制,更新为级联
说明
①每次盘存计算:
盘盈量=实存量—货物表.现存量
(+盘盈,—盘亏)
②记录在盘存登记时由临时表转入
2.仓库进销存临时数据表框架(VFP中作为自由表,不能直接定义完整性约束,必须在应用程序中控制)
进单头临.DBF
字段名
进单号
进货日期
供应商号
供应商名
地址
邮编
电话
信誉度
联系人
新客户
合计金额
采购工号
外码
外码
外码
主码
主码
类型
C
D
C
C
C
C
C
C
C
L
N
C
长度
8
10
32
40
6
11
4
8
15
8
小数位
2
索引
候选
普通
普通
列约束
非空
①
②
行约束
表约束
临时关联
说明
1信誉度in(”AAA”,”AA”,”A”,”B”,”C”),出错信息:
’库存类只能是”AAA”,”AA””A”,”B”,”C”’
2合计金额=∑进单明细临.金额(进单明细临.进单号=进单号)
3非新客户要按供应商号从客户表中中取出相应的客户记录填入本表的相应字段然后人工修改,新客户要按规则编填客户号和补充相关资料,并转入客户表。
进单明细临.DBF
字段名
进单号
所进货号
货名
型号
规格
计量单位
新货
进价
进货量
金额
实到货量
少到货量
入库日期
库管工号
外码
外码
外码
外码
主码
复合主码
类型
C
C
C
C
C
C
L
N
N
N
N
N
D
C
长度
8
12
16
8
12
4
9
5
13
5
5
8
小数位
2
2
索引
普通
普通
普通
候选
列约束
行约束
少到货量=进货量—实到货量,非正值表示没有少到货;金额=进价*进货量
表约束
临时关联
进单号=进单头临.进单号
说明
非新货要按所进货号从货物表中从货物表中取出相应的货物记录填入本表的相应字段然后人工修改,新货要按规则编填客户号和补充相关资料,并转入货物表。
每张进单入库后,自动复查处理缺货的订单明细记录一次
订单头临.DBF
字段名
订单号
订货日期
订户号
订户名
地址
邮编
电话
信誉度
联系人
新客户
合计金额
销售工号
外码
外码
外码
主码
主码
类型
C
D
C
C
C
C
C
C
C
L
N
C
长度
8
10
32
40
6
11
4
8
15
8
小数位
2
索引
候选
普通
普通
列约束
非空
①
②
行约束
表约束
临时关联
说明
4信誉度in(”AAA”,”AA”,”A”,”B”,”C”),出错信息:
’库存类只能是”AAA”,”AA””A”,”B”,”C”’
5合计金额=∑订单明细临.金额(订单明细临.订单号=订单号)
6非新客户要按订户号从客户表中从货物表中取出相应的客户记录填入本表的相应字段然后人工修改,新客户要按规则编填客户号和补充相关资料,并转入客户表
订单明细临.DBF
字段名
订单号
所订货号
货名
型号
规格
计量单位
新货
售价
订货量
金额
缺货量
提货日期
库管工号
外码
外码
外码
外码
主码
复合主码
类型
C
C
C
C
C
C
L
N
N
N
N
D
C
长度
8
12
16
8
12
4
9
5
13
5
8
小数位
2
2
索引
普通
普通
普通
候选
列约束
行约束
缺货量=订货量—货物表.现存量,非正值表示不缺货;金额=售价*订货量
表约束
临时关联
订单号=订单头临.订单号
说明
非新货要按所订货号从货物表中从货物表中取出相应的货物记录填入本表的相应字段然后人工修改,新货要按规则编填客户号和补充相关资料,并转入货物表
每张进单入库后,自动复查处理缺货的订单明细记录一次
盘单头临.DBF
字段名
盘单号
日期
所盘库号
清点人工号
清点人姓名
对帐人工号
对帐人姓名
审查人工号
审查人姓名
盘盈金额合计
外码
外码
外码
外码
外码
外码
主码
主码
类型
C
D
C
C
C
C
C
C
C
N
长度
8
2
18
8
18
8
18
8
13
小数位
2
索引
候选
普通
普通
普通
普通
列约束
①
行约束
表约束
临时关联
说明
①盘盈金额合计=∑盘单明细临.盘盈金额(盘单明细临.盘单号=盘单号)
盘单明细临.DBF
字段名
盘单号
所盘货号
货名
型号
规格
计量单位
库存价
现存量
实存量
盘盈量
盘盈金额
外码
外码
外码
主码
复合主码
类型
C
C
C
C
C
C
N
N
N
N
N
长度
8
12
16
8
12
4
9
5
5
4
12
小数位
2
2
索引
普通
普通
候选
列约束
非空
非空
行约束
盘盈量=实存量—现存量,盘盈金额=库存价*盘盈量
表约束
临时关联
盘单号=盘单头临.盘单号
说明
按每张盘单的所盘库号从货物表中取出相应的货物记录填入本表的相应字段,人工盘货后再填入实存量、盘盈量、盘盈金额
进货要求临.DBF
字段名
要货单号
所要货号
所要货名
型号
规格
计量单位
库存类
最低存量
最高存量
采购批量
提出日期
库存价
现存量
缺货量
库管工号
外码
外码
外码
外码
主码
主码
类型
C
C
C
C
C
C
C
N
N
N
D
N
N
N
C
长度
8
12
16
8
12
4
2
5
5
5
9
5
5
8
小数位
2
列约束
非空
非空
行约束
最低存量<最高存量,采购批量<=(最高存量-最低存量)
表约束
临时关联
说明
1每个营业日结束时,查订单明细,对订单明细临中缺货量>0的货物从货物表取相应字段值,用∑订货量(订单明细临中缺货量>0的同一货号所有记录)-货物表.现存量作为缺货量,当前日期作为提出日期,按编码规则编制一个要货单号,作为本表记录
2每次盘存完成登记后,查货物表,对现存量<最低存量的货物从货物表取相应字段值,当前日期作为提出日期,按编码规则编制一个要货单号,作为本表记录
3每个营业日结束时,查货物表,对(现存量<最低存量)且不在①中出现的货物从货物表取相应字段值,当前日期作为提出日期,按编码规则编制一个要货单号,作为本表记录
3.源模式的源代码
1)创建项目管理器
Setdefatof:
\jiaoxue\mis\shiyan&&设置默认子文件夹
createproject仓库进销存系统&&创建项目管理器,以后用modifyproject命令打开
2)建立仓库进销存数据库
Createdatabase仓库进销存&&创建数据库,以后用Opendatabase仓库进销存命令打开
3)建立10个数据库表结构
(0)打开仓库进销存数据库
Opendatabase仓库进销存
(1)建立部门表
Createtable部门(部门号c(6)notnullprimarykey,部门名c(12)notnull,;
部门类c(6),部门位置c(10),电话c(11),;
主管工号c(8)references员工tag工号,任职日期d)
(2)建立员工表
Createtable员工(工号c(8)notnullprimarykey,姓名c(8)notnull,;
性别c
(2)check性别=”男”or性别=”女”error”性别只能是男或女”,;
生日d,职务c(10),电话c(11),;
所属部号c(6)references部门tag部门号,聘用日期d)
(3)建立客户表
Createtable客户(客户号c(10)notnullprimarykey,客户名c(32)notnull,;
地址c(40),信誉度c(4)check信誉度in(”AAA”,”AA”,”A”,”B”,”C”)error’信誉度只能是”AAA”,”AA””A”,”B”,”C”’,联系人c(8)),邮编c(6),电话c(11))
(4)建立货物表
Createtable货物(货号c(12)notnullprimarykey,货名c(16)notnull,型号c(8),;
规格c(12),计量单位c(4),存放库号notnullc(6)references部门tag部门号,;
库存类c
(2),库存价n(9,2),期初存量n(5),现存量n(5),最低存量n(5),;
最高存量n(5),采购批量n(5)),check最低存量<最高存量;
error‘最低存量不能大于最高存量‘,check采购批量<=(最高存量-最低存量);
error‘采购批量不能大于(最高存量-最低存量)‘
(5)建立订单头表
Createtable订单头(订单号c(8)notnullprimarykey,订货日期d,;
订户号c(10)references客户tag客户号,销售工号c(8)references员工tag工号)
(6)建立订单明细表
Createtable订单明细(订单号c(8)notnullreferences订单头tag订单号,;
所订货号c(12)notnullreferences货物tag货号,售价n(9,2),;
订货量n(5),提货日期d,库管工号c(8)references员工tag工号,;
primarykey订单明细.订单号+所订货号tag订单货号)
(7)建立进单头表
Createtable进单头(进单号c(8)notnullprimarykey,进货日期d,;
供应商号c(10)references客户tag客户号,采购工号c(8)references员工tag工号,)
(8)建立进单明细表
Createtable进单明细(进单号c(8)notnullreferences进单头tag进单号,;
所进货号c(12)notnullreferences货物tag货号,进价n(9,2),;
进货量n(5),入库日期d,库管工号c(8)references员工tag工号,;
primarykey进单明细.进单号+所进货号tag进单货号)
(9)建立盘单头表
Createtable盘单头(盘单号c(8)notnullprimarykey,日期d,;
盘库号c(6)references部门tag部号,;
清点工号c(8)references员工tag工号,;
对帐工号c(8)references员工tag工号,;
审查工号c(8)references员工tag工号)
(8)建立盘存明细表
Createtable盘存明细(盘单号c(8)notnullreferences盘单头tag盘单号,;
所盘货号c(12)notnullreferences货物tag货号,实存量n(5),盈余量n(5),;
处理意见m,primarykey属盘单号+盘货号tag盘单货号)
4)建立数据库表间的永久关联,定义参照完整性
(1)数据库表间的永久关联在建表语句中已通过外码定义来建立
(2)打开数据库设计器,在其永久关联中选择参照完整性来建立参照完整性。
在“数据库”菜单下选择清理数据库;
双击在数据库设计器显示出的表间永久关联线,在显示出的完整性定义表格中把所有更新定义为级联,删除和插入(除插入的员工工号对部门主管工号定义为忽略外)定义为限制。
5)作为自由表建立7个临时文件结构
(1)建立订单头临自由表及其候选码索引、两个外码普通索引,定义它对员工表、客户表的多一关联
Createtable订单头临free(订单号c(8)notnullunique,订货日期d,;
订户号c(10),订户名c(32),地址c(40),邮编c(6),电话c(11),;
信誉度c(4),联系人c(8),新客户l,合计金额n(15,2),销售工号c(8))
Indexon订户号tag订户号
Indexon销售工号tag销售工号
select0
use员工
setorderto工号
Sele订单头临
Setrelation
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MIS 实验 报告