课程设计原料仓库管理系统.docx
- 文档编号:10276908
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:14
- 大小:191.45KB
课程设计原料仓库管理系统.docx
《课程设计原料仓库管理系统.docx》由会员分享,可在线阅读,更多相关《课程设计原料仓库管理系统.docx(14页珍藏版)》请在冰豆网上搜索。
课程设计原料仓库管理系统
《数据库系统》
课程设计说明书
班级:
姓名:
学号:
设计题目:
原料仓库管理系统
设计时间:
2012.12.24至2013.1.4
指导教师:
_________________________________
评语:
_________________________________
_________________________________________
_________________________________________
_________________________________________
_________________________________________
目 录
1引言1
1.1课程设计选题1
1.2课程设计的目的1
1.3本选题的设计背景1
2系统分析与设计2
2.1功能及性能分析2
2.2系统的开发运行环境2
2.3系统总体设计3
3数据库设计〔本设计重点〕3
3.1数据库概念结构3
3.2数据库逻辑结构4
3.2.1关系模型4
3.2.3视图的设计5
3.3数据库的实现5
3.3.1表5
3.3.2安全性设计5
3.3.5触发器的设计6
4详细设计与实现8
4.1登录模块8
4.2管理员模块8
4.3材料员模块9
4.4财务模块9
4.5人员模块10
结 论10
参考文献11
1引言
1.1课程设计选题
《原料仓库管理系统》
1.2课程设计的目的
通过数据库系统课程设计,熟悉了SQLSERVER数据库管理系统的结构与组成;掌握了SQLSERVER数据库管理系统的应用技术和的使用;应用VisualBasic6.0开发工具实践了《仓库管理系统》的数据库应用系统的设计方法、开发过程和SQLSERVER数据库的管理与维护。
最终达到掌握数据库管理系统的使用和开发,提高分析问题、解决问题和实践应用能力。
1.3本选题的设计背景
仓储在企业的整个供应链中起着至关重要的作用,如果不能保证正确的进货和库存控制及发货,将会导致管理费用的增加,服务质量难以得到保证,从而影响企业的竞争力。
传统简单、静态的仓储管理已无法保证企业各种资源的高效利用。
如今的仓库作业和库存控制作业已十分复杂化多样化,仅靠人工记忆和手工录入,不但费时费力,而且容易出错,给企业带来巨大损失。
仓库管理系统是通过入库业务、出库业务、仓库调拨、库存调拨和虚仓管理等功能,综合批次管理、物料对应、库存盘点、质检管理、虚仓管理和即时库存管理等功能综合运用的管理系统,有效控制并跟踪仓库业务的物流和成本管理全过程,实现完善的企业仓储信息管理。
该系统可以独立执行库存操作,与其他系统的单据和凭证等结合使用,可提供更为完整全面的企业业务流程和财务管理信息。
仓库管理系统的开发,能够给企业带来经济上的长远利益。
首先,仓库管理系统的开发及使用,给企业节约了人力、财力、物力,有效的控制了企业仓库的运转,加速了资金的周转。
其次,仓库管理系统的开发有力的推动了企业的现代化进程,提高了企业的管理水平和现代化水平。
使企业在经济蓬勃发展的今天更能灵活的应付各种生产任务和信息资源的开发。
对企业利用信息进行生产活动、经营活动提供了有效的帮助。
是企业实现现代化的必经之路,是企业实现发展目标的重要手段。
最后,仓库管理系统能够灵活的与外界进行交流,加速了企业的交流进程,扩展了企业的交流对象,使企业得到进一步的发展成为可能。
本系统的开发完成能灵活的运用于各种企业的仓库管理业务。
能够有力的推动各个企业的现代化管理进程,从而实现对整个行业乃至其他相关部门和单位的现代化进程的推动作用。
使计算机为核心的自动化管理系统得以普及和大范围的应用。
2系统分析与设计
2.1系统的需求分析
仓库管理系统是通过入库业务、出库业务、仓库调拨、库存调拨和虚仓管理等功能,综合批次管理、物料对应、库存盘点、质检管理、虚仓管理和即时库存管理等功能综合运用的管理系统,有效控制并跟踪仓库业务的物流和成本管理全过程,实现完善的企业仓储信息管理。
该系统可以独立执行库存操作,与其他系统的单据和凭证等结合使用,可提供更为完整全面的企业业务流程和财务管理信息。
仓库管理系统是通过入库业务、出库业务、仓库调拨、库存调拨和虚仓管理等功能,综合批次管理、物料对应、库存盘点、质检管理、虚仓管理和即时库存管理等功能综合运用的管理系统,有效控制并跟踪仓库业务的物流和成本管理全过程,实现完善的企业仓储信息管理。
该系统可以独立执行库存操作,与其他系统的单据和凭证等结合使用,可提供更为完整全面的企业业务流程和财务管理信息。
2.2系统的开发运行环境
本系统开发平台:
VisualBasic6.0+sqlserver2008
本系统采用架构:
C/S
本系统运行环境:
windows7旗舰版servicepack1
2.3系统总体设计
登陆之后检测登陆权限,根据不同的权限连接不同模块。
管理员可以使用管理员权限模块以及其他两种权限的模块,拥有全部的权限。
材料员则可以使用材料员模块,拥有对入库、出库添加的模块以及对于库存的查询。
财务模块能够查询三个视图。
3数据库设计
3.1数据库概念结构
实体
库存(原料号储量储存上限报警下限)
货物(原料号原料名称单价计量单位)
人员权限相关(员工号姓名性别年龄职位)
进货单(进货编号原料号入库数量入库时间)
出货单(出货编号原料号出库数量出库时间)
3.2数据库逻辑结构
3.2.1关系模型
关系
储存(原料号原料名称库存数量单价计量单位储存上限报警下限)
入库(进货编号原料号入库数量入库时间员工号)
出库(出货编号原料号出库数量出库时间员工号)
3.2.3视图的设计
共三种视图,分别对储存表、入库表和出库表创建视图。
用以增强数据库的安全性,并且减少前台的代码量和操作量以提升性能。
3.3数据库的实现
3.3.1表
createtable储存
(
原料号varchar(20)primarykey,
原料名称varchar(20)notnull,
库存数量realnotnull,
单价smallmoney,
计量单位char(6),
储存上限real,
储存下限real
)
createtable人员
(
员工号varchar(20)primarykey,
姓名varchar(20)notnull,
性别char
(2)check(性别='男'or性别='女'),
年龄tinyintcheck(年龄>=15and年龄<=65),
职位varchar(10)notnull,
密码varchar(20)notnull
)
createtable入库
(
进货编号varchar(10)primarykey,
原料号varchar(20)constrainta0foreignkeyreferences储存(原料号),
入库数量realnotnull,
入库时间smalldatetime,
员工号varchar(20)
)
createtable出库
(
出货编号varchar(10)primarykey,
原料号varchar(20)constrainta1foreignkeyreferences储存(原料号),
出库数量realnotnull,
出库时间smalldatetime,
员工号varchar(20)
)
3.3.2视图
每种原料库存总价值
createview原料总价值(原料号,总价)
as
select原料号,库存数量*单价
from储存
财务用以查询的入库细则
createview入库单(入库编号,原料号,入库数量,入库时间,入库总价)
as
select进货编号,入库.原料号,入库数量,入库时间,(入库数量*单价)
from入库,储存
where入库.原料号=储存.原料号
财务用以查询的出库细则
createview出库单(出库编号,原料号,出库数量,出库时间,出库总价)
as
select出货编号,出库.原料号,出库数量,出库时间,(出库数量*单价)
from出库,储存
where出库.原料号=储存.原料号
3.3.3安全性设计
在人员表中添加密码属性,在登录时进行密码比对,根据人员表中的职务给予使用者不同的使用权限,连接不同的模块。
3.3.4触发器
创建了三个触发器,分别于入库添加、出库添加以及储存更新是触发。
入库时进行入库后库存量是否超过储存上限的判定
createtrigger入库添加
on入库
forinsert
as
if(select入库数量frominserted)+(select库存数量from储存,insertedwhereinserted.原料号=储存.原料号)>(select储存.储存上限from储存,insertedwhereinserted.原料号=储存.原料号)
print'超出仓库容量'
rollback
出库时进行对于出货量是否大于库存量的判断
createtrigger出库添加
on出库
forinsert
as
if(select出库数量frominserted)>(select库存数量from储存,insertedwhereinserted.原料号=储存.原料号)
print'原料不足'
rollback
if(select出库数量frominserted)<=(select库存数量from储存,insertedwhereinserted.原料号=储存.原料号)
update库存
set库存数量=(select库存数量from储存)-(select出库数量frominserted)
当库存表进行更新操作时进行对于库存是否达到或低于储存下限的判定
createtrigger出库判定提醒
on储存
forupdate
as
if(select库存数量frominserted)<=(select储存.储存下限from储存,insertedwhereinserted.原料号=储存.原料号)
print'原料量过少,请及时进货'
4主要模块的详细设计与实现
4.1登录模块
1.
2.程序以管理员登陆sql,点击确定之后在人员表中搜索用户名,如果搜索到,对比密码是否一致,当无法搜索到用户名或者密码不一致,返回登陆失败。
如果登陆成功,则根据用户的职位调用不同的模块。
4.2管理员模块
管理员拥有全部功能,可以选择管理员独有的功能或者使用其他两种权限的功能模块。
并且此窗口不会hide,使管理员使用别的功能后依然能够正常使用管理员功能。
4.3材料员模块
材料员模块可以调出入库、出库添加和库存查询窗口,并且在使用任一功能后依然能够返回此窗口,从而达到使用其他功能的目的。
4.4财务模块
财务功能模块同材料员模块可以返回。
财务模块调用的功能均是在sql中创建的视图,虽然不够灵活,但视图中包含了部分计算结果和很多细则,方便财务人员进行账目处理。
4.5人员模块
人员模块是仅有管理员能够使用的模块,此模块调用之时自动查询所有人员表中的信息,同时可以单条添加人员信息,每次点击确认添加都会清空文本框中的字符,同时再次查询新的人员表,同样可以返回上一级。
结 论
此次试验使用sql+vb6.0进行,因为对于vb语言不很熟悉,没有完成前台的编程。
这次试验的完成度不高,后台数据库部分设计完毕,前台的基本窗体设计完成,但与数据库的链接部分没有完成,使得程序无法运行。
在这次试验中充分体会到了编程的乐趣同时也感受到了编程的困难。
试验之初,想要以delphi语言来完成前台的制作,但进行到一半是由于不熟悉delphi语言有很难找到中文版的参考书只能中途更换前台所用语言,将之换成相对熟悉并且也相对简单的vb语言,但这时时间已经不是很足。
不过此次尝试使用delphi语言也让我了解到更多的语言和一些相关知识,同时体验到了英语对于编程的作用相当重要。
这次课程设计中稍感时间有所不足,如果能延长1~2周我想我可以完成前台的工作,并且进一步丰满数据库的构思,优化其中的设计,构建更多的功能。
参考文献
[1]陈志泊,王春玲.数据库原理及应用教程人民邮电出版社,2008.
[2]杨章伟.visualbasic完全自学宝典清华大学出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 原料 仓库 管理 系统