ASP+SQL课程设计报告之仓库管理系统.docx

上传人:b****8 文档编号:9485379 上传时间:2023-02-04 格式:DOCX 页数:19 大小:135.94KB
下载 相关 举报
ASP+SQL课程设计报告之仓库管理系统.docx_第1页
第1页 / 共19页
ASP+SQL课程设计报告之仓库管理系统.docx_第2页
第2页 / 共19页
ASP+SQL课程设计报告之仓库管理系统.docx_第3页
第3页 / 共19页
ASP+SQL课程设计报告之仓库管理系统.docx_第4页
第4页 / 共19页
ASP+SQL课程设计报告之仓库管理系统.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

ASP+SQL课程设计报告之仓库管理系统.docx

《ASP+SQL课程设计报告之仓库管理系统.docx》由会员分享,可在线阅读,更多相关《ASP+SQL课程设计报告之仓库管理系统.docx(19页珍藏版)》请在冰豆网上搜索。

ASP+SQL课程设计报告之仓库管理系统.docx

ASP+SQL课程设计报告之仓库管理系统

 

09信管班asp课程设计实验报告

系别:

数学与计算机科学系

专业:

信息管理与信息系统

班级:

2009级信管班

指导教师:

孟卫东房娟艳

课程名称:

仓库管理系统

学号:

0906121029

姓名:

盛文强

二○一一年十二月

指导教师对课程设计(论文)的评语(工作态度、任务完成情况、能力水平、设计说明书(论文)的撰写和图纸质量等):

 

成绩

指导教师签字年月

一、开发背景及设计思想

1.开发背景

90年代中期,由于Internet的迅速普及,使Intranet成为Internet技术在企业管理信息系统中的应用和延伸,形成了集计算机,计算机网络、数据库、分布式计算等于一体的信息技术综合体,它打破了时间和地域的界限,使信息交流变得快捷、准确,为建立现代企业管理信息系统提供了充足的条件。

由于计算机应用的日益普及,仓库设备管理的自动化是提高工作效率的有效途径,随着企业对仓库设备实行计算机管理,实现仓库设备管理系统势在必行。

系统开发的总统任务是实现企业物资设备管理的系统化、规范化和自动化,从而达到仓库管理效率的目的。

2.开发设计思想

在本系统的设计过程中,为了克服仓库管理信息处理量大的困难,满足计算机管理的需要,采取了下面的一些原则:

1、统一各种原始单据的格式,统一帐目和报表的格式。

2、删除不必要的管理冗余,实现管理规范化、科学化。

3、程序代码标准化,软件统一化,确保软件的可维护性和实用性。

4、界面尽量简单化,做到实用、方便,尽量满足企业不同层次员工的需要。

5、建立操作日志,系统自动记录所进行的各种操作。

二.功能描述

1、系统功能分析

本例中的仓库管理系统需要完成的功能主要有以下几点:

1.新的设备信息的录入;

2.借出、归还、维修时对设备信息的修改;

3.对报废设备信息的删除;

4.按照一定的条件查询、统计符合条件的设备信息;查询功能至少应该包括设备基本信息的查询、按时间段(如在2004年1月1日到2004年10月10日购买、借出、维修的设备等)查询、按时间点(借入时间,借出时间,归还时间)查询等,统计功能至少包括按时间段(如在2004年1月1日到2004年10月10日购买、借出、维修的设备等)统计、按设备基本信息的统计等;

5.对查询、统计的结果打印输出。

2、系统功能模块设计

在系统功能分析的基础上,结合ASP程序编制的特点,得到如图所示的系统功能模块图。

三.数据库需求分析

在仔细调查企业仓库物资设备管理过程的基础上,得到本系统所处理的数据流程如图

本实例设计的数据项和数据结构如下:

1、设备代码信息,包括的数据项有设备号、设备名称。

2、 现有库存信息,包括的数据项有设备、现有数目、总数目、最大库存和最小库存。

3、设备使用信息,包括的数据项有使用的设备、使用部门、数目、使用时间和出库时状态等。

4、 设备采购信息,包括的数据项有采购的设备、采购员、供应商、采购数目和采购时间等。

5、设备归还信息,包括的数据项有归还设备、归还部门、归还数目、归还时间和经手人等。

四、数据库概念结构设计

本实例根据上面的设计规划出的实体有库存实体、入库实体、出库实体、采购实体、还库实体和需求实体,各实体的E-R图及其关系描述如下:

库存实体E-R图

入库实体E-R图

 

出库实体E-R图

企业部门需求实体E-R图

 

还库实体E-R图

 

计划采购实体E-R图

 

实体和实体之间的关系E-R图

五、数据库逻辑结构设计及优化

在上面的实体以及实体之间的关系的基础上,形成数据库中的表格和各个表格之间的关系。

仓库管理系统数据库中各个表格的设计结果如下面的几个表格所示。

每个表格表示在数据库中的一个表。

表1-1设备基本信息代码表device_code

列名

数据类型

可否为空

说明

code

VARCHAR2(6)

NOTNULL

设备号(主键)

name

VARCHAR2(20)

NULL

设备名称

表1-2企业部门基本信息表class_node

列名

数据类型

可否为空

说明

node

VARCHAR2(6)

NOTNULL

部门编号(主键)

department

VARCHAR2(20)

NOTNULL

部门名称

表1-3供应商设备信息表provider_node

列名

数据类型

可否为空

说明

node

VARCHAR2(6)

NOTNULL

供应商编号(主键)

provider

VARCHAR2(20)

NOTNULL

供应商名称

telenode

VARCHAR2(10)

NULL

供应商电话

name

VARCHAR2(20)

NULL

设备名称

表1-4设备入库表device_in

列名

数据类型

可否为空

说明

code

VARCHAR2(6)

NOTNULL

设备号

in_date

DATE

NOTNULL

入库时间(主键)

provider

VARCHAR2(20)

NULL

供应商

in_number

NUMBER(6)

NULL

入库数量

price

NUMBER(6)

NULL

价格

buyer

VARCHAR2(10)

NULL

采购员

表1-5设备出库表device_out

列名

数据类型

可否为空

说明

code

VARCHAR2(6)

NOTNULL

设备号

department

VARCHAR2(20)

NULL

使用部门

out_date

DATE

NULL

出库时间(主键)

out_state

NUMBER

(1)

NULL

出库状态

out_person

VARCHAR2(10)

NULL

经手人

out_number

NUMBER(6)

NOTNULL

出库数量

taker

VARCHAR2(10)

NULL

领取人

usage

VARCHAR2(20)

NULL

用途

表1-6现有库存表device

列名

数据类型

可否为空

说明

code

VARCHAR2(6)

NOTNULL

设备号(主键)

now_number

NUMBER(6)

NULL

现有库存

high_number

NUMBER(6)

NULL

最大库存

low_number

NUMBER(6)

NULL

最少库存

total_number

NUMBER(6)

NULL

总数

表1-7部门需求表device_need

列名

数据类型

可否为空

说明

code

VARCHAR2(6)

NOTNULL

设备号

department

VARCHAR2(20)

NOTNULL

部门名称

need_number

NUMBER(6)

NULL

需求数量

begin_date

DATE

NULL

需求开始时间

end_date

DATE

NULL

需求结束时间

表1-8设备还库表device_return

列名

数据类型

可否为空

说明

code

VARCHAR2(6)

NOTNULL

设备号

return_date

DATE

NULL

还库时间(主键)

keeper

VARCHAR2(20)

NULL

仓库管理员

return_number

NUMBER(6)

NULL

归还数量

return_date

VARCHAR2(10)

NULL

归还人

表1-9操作日志表howdo

列名

数据类型

可否为空

说明

do_user

VARCHAR2(10)

NOTNULL

操作员

do_what

VARCHAR2(40)

NOTNULL

操作内容

do_date

DATE

NOTNULL

操作时间

六、数据库的物理设计和实施

得到系统逻辑模型后,就该进行数据库的物理设计和实施数据库了,物理设计主要是要确定数据库的存储路径、存储结构以及如何建立索引等,可以采用系统的默认设置。

1.数据库设计

(1).创建设备基本信息代码device_code

CREATETABLE“DMS”.device_code

(codeVARCHAR2(6)NOTNULL,

nameVARCHAR2(20)NOTNULL,

CONSTRANTcode_code_pkPRIMARYKEY(code)

TABLESPACE”USER_DATA”;

(2).创建企业部门基本信息代码class_node

CREATETABLE“DMS”.class_node

(nodeVARCHAR2(6)NOTNULL,

DepartmentVARCHAR2(20)NOTNULL,

CONSTRANTnode_node_pkPRIMARYKEY(node)

TABLESPACE”USER_DATA”;

(3).创建供应商设备信息代码provider_node

CREATETABLE“DMS”.provider_node

(nodeVARCHAR2(6)NOTNULL,

providerVARCHAR2(20)NOTNULL,

telenoVARCHAR2(10)NULL,

CodeVARCHAR2(6)NOTNULL,

CONSTRANTnode_node_pkPRIMARYKEY(node)

TABLESPACE”USER_DATA”;

(4).创建设备入库表device_in

CREATETABLE“DMS”.device_in

codeVARCHAR2(6)NOTNULL,

in_dateDATENOTNULL,

providerVARCHAR2(20)NULL,

in_numberNUMBER(6)NULL,

priceNUMBER(6)NULL,

buyerVARCHAR2(10)NULL,

CONSTRAINTin_date_pkPRIMARYKEY(in_date)

TABLESPACE“USER_DATA”;

(5).创建设备出库表device_out

CREATETABLE“DMS”.device_out

codeVARCHAR2(6)NOTNULL,

departmentVARCHAR2(20)NULL,

out_dateDATENULL,

out_stateNUMBER

(1)NULL,

out_pensonVARCHAR2(20)NULL,

out_numberNUMBER(6)NOTNULL,

takerVARCHAR2(10)NULL,

usageVARCHAR2(20)NULL,

CONSTRAINTout_date_pkPRIMARYKEY(out_date)

TABLESPACE”USER_DATA”;

(6).创建现有库存表device

CREATETABLE”DMS”.device

codeVARCHAR2(6)NULL,

now_numberNUMBER(6)NULL,

high_numberNUMBER(6)NULL,

low_numberNUMBER(6)NULL,

total_numberNUMBER(6)NULL,

CONSTRAINTdevice_code_pkPRIMARYKEY(code)

TABLESPACE”USER_DATA”;

(7).创建部门需求表device_need

CREATETABLE“DMS”,device_need

codeVARCHAR2(10)NOTNULL,

departmentVARCHAR2(10)NOTNULL,

need_numberNUMBER(6)NULL,

begin_dateDATENULL,

end_dateDATENULL,

TABLESPACE”USER_DATA”;

(8).创建设备还库表device_return

CREATETABLE“DMS”,device_return

codeVARHAR2(6)NOTNULL,

departmentVARCHAR2(20)NULL,

return_dateDATENULL,

keeperVARCHAR2(10)NULL,

return_numberNUMBER(6)NULL,

return_personVARCHAR2(10)NULL,

CONSTRAINTreturn_date_pkPRIMARYKEY(return_date)

TABLESPACE”USER_DATA”;

(9).创建操作日志表howdo

CREATETABLE“DMS”,howdo

do_userVARCHAR2(10)NOTNULL,

do_whatVARCHAR2(40)NOTNULL,

do_dateDATENOTNULL,

TABLESPACE“USER_DATA”;

2、系统实现

1)登录

   登录模块在文件default.asp中,即仓库的首页中,在登录时需要填写“用户名、密码、选择仓库”三项,如果没有输入(或选择),则先会以对话框的形式提示用户输入需要输入(或选择)的数据,当全部输入(或选择)后,则以一个loginchk.asp文件来进行检测用户登录的用户名和密码的正确性,如果不正确会在error.asp错误处理模块中给出提示,如果用户名和密码有至少一个不正确时,就提示“用户名或密码错误”,如果都正确后就得到该用户的所属仓库编号。

在这里,如果该用户的所属仓库编号为数字0,则表示该用户可以进入任何仓库进行管理,那么只要选择了仓库就可以正确进入。

而当该用户的所属仓库为一存在的仓库编号(一定是要大于0的整数),那么还要判断是否与该用户所选择的仓库相匹配,如果匹配则进入该仓库,如果不匹配,则提示“您无权进入该仓库”的错误提示。

同时还要检测该用户是否具有查看其他仓库的权限,如果有,进入主界面后,有个查看全部仓库的链接,就可以进入查看所有仓库的库存情况,如果没有,那么则无法进入查看全部仓库的界面,会提示你想非法侵入的警告,要你重新登录。

登录成功后,会修改user表中的isonline、login_time、ip三个字段的值,表示该用户已经在线,且给出登录的时间及登录的IP地址。

2)分类查看库存-type.asp

  分类查看库存是管理库存的一种途径,适合于物品繁多,分类种类多的情况。

因为该界面使用一种目录树的结构概念,进入时显示总分类的类别,总分类下也可直接创建物品,但一般都不会有。

通过这种界面,可以很直观的进行物品分类,及迅速的找到自己想要的物品,每一个分类名后面跟两个括号,前者为该类别下所包含的物品数量,后者为该类别下所包含的子类别数量,当字类别数量为0时则不显示。

如果分类很深,上面会显示您的位置,呈现一个类别链,从最高层到当前层,这里采用的是典型的数型结构,只是外观体现没有象树这么直观。

3)浏览库存(管理库存)-brow.asp

  浏览库存是早期时的做法,后来才升级至树型概念的。

在这里原先考虑的是一级类别的分类方案,所以这样就具有局限性,对于真正仓库来讲,就无能为力了,所以被树型结构取代了,只是这种结构在查看时还是有他的优越性,他适合于规模小,分类简单的仓库,而且在上面将该仓库的所有分类名称列出来,可以很方便的选择哪个分类来查看该类别下的所有库存,而且该界面具有查找功能,只要输入名称,即可以找出相符合的记录来。

4)今日库存报表-report.asp

  一般仓库都不会做日报表,主要是因为从我单位的具体情况出发,仓库还没有使用电脑,所以没有考虑月报表,目前只需要日报表,其实也差不多嘛。

日报表是将今日所有仓库中的物品根据出、入库情况进行填充报表表格,他可以自动计算某样物品今日的所有出库数量、出库金额、入库数量、入库金额、当前库存数、当前库存金额,然后在报表预览(preview.asp)中将同样的数据以打印方式来显示并打印出来,就是今日发生的库存情况,然后要完成报表的工作,就是将昨日库存数以今日库存数进行替换即可。

  如果考虑月报表只要计算一个月时间的所有出库数量、出库金额、入库数量、入库金额、当前库存数、当前库存金额,其他一些计算都很类似的。

5)查看全部库存-all.asp

  只有在这里才可以一览全部仓库的情况,可以很方便的选择某个仓库再选择其下的某个类别进行查看,或查找时,是针对全部仓库来找的,要进入此页面,必须该用户具有可以查看其他仓库的权限。

6)修改密码-chkpass.asp

  修改密码是让用户在线时的进行修改自己的密码,要先以自己的用户名和密码登录进去,然后输入原密码、新密码和校验密码,只有当原密码正确,新密码和校验密码一致时才可以正确修改密码,密码修改完后重新登录时就起用新密码了。

7)查看在线人数online.asp

   可以查看当前在线的人数,以及他们的用户名,登录时间和其IP地址。

8)新增用户-newuser.asp

  在线式的进行增加用户名,这种方式具有权限继承性,即只有可以管理全部仓库的才可以分配给新用户这种权限,只有可以查看全部仓库的才可以分配给新用户这种权限,没有这样的权限是不能给新用户高于当前用户更高的权限的。

9)新增分类

   typemanage.asp只是新增总分类下的类别。

   Newtype.asp是在树型结构中进行的动态分类,是增加当前类别下的新类别。

10)新增仓库-storagemanage.asp

  对表storage进行增加仓库名称,该程序一个很大的优点就在于此,只要新加入一个仓库,这个仓库在使用时与其他仓库的使用没有任何关系,只是他们可以放在一起进行查看,是他们唯一的联系。

也许以后会考虑从一个仓库调拨到另一个仓库时,进行数据的自动更新,期待吧!

11)新增供应商-providermanage.asp

  对每一个进库的物品,都需要指明供应商是谁,不然不就搞出了三无产品嘛?

对供应商的管理还有待完善。

12)新增用处-usesmanage.asp

  用处是相对供应商的,既然货有源,那么使用也得有个对象,要从这里反应出,某物品从哪里来,又走象哪里了呢?

13)新增品名-newname.asp

   对当前仓库当前类别下新增物品,用来描述物品信息。

当新增某物品时还需对他进行入库、出库等操作,该物品才算有意思。

14)入库操作-in.asp

   即收入,对仓库的一个进的过程,需要输入物品的数量、单价、摘要、供应商等信息。

保存数据时以save_in.asp文件来进行检测数据的完整性。

当数据全正确确定可以保存时,程序先将全部的已有库存记录逐个重新誊写一遍至当前日,然后再新增一个记录表示现在入库的数据,并重新统计现在的库存数量,并写到stock中表示现有的库存情况,并且重新改写“记帐记录标志jz_log”,用来标记最后一个操作,置全部记录为0,并将刚誊写的及新增的记录为1,只在list.asp显示明细中用颜色块显示时使用,清楚的表示当前的库存情况。

15)出库操作-out.asp

   出库与入库相反,在出库时先将出库请求的数量与现有库存数量比较,如果小于等于库存数,则可以出库,如果大于库存了,则提示不能出库,以save_out.asp来检测数据。

当可以出库也是将全部已有库存记录逐个重新誊写一遍至当前日,产生新的数据,然后根据具体出库的数量根据“先入先出”原则从最早一批开始出库,如果第一批数量不足,再继续出第二批,第二批不足,再继续出第三批,依次类推,直到全部达到出库请求的数量。

16)修改操作-edit.asp

   修改是针对添加时输入的数据进行再次的编辑,一般来讲,这种操作应该不会太多。

17)查看明细-list.asp

   是以标准仓库帐本的形式来显示某物品的全部出、入库等的操作记录,顺序是从下往上。

即最近的一次记录在最上面,并以黄颜色标出。

18)退出-logout.asp

   在使用完后,一定要使用退出来结束工作,一来是注册表user使自己的名称已经下线,并记录下线时间,二来为了安全起见,当退出后,就不能打开任何的连接了,都会提示你需要重新登录,不然如果不使用退出,而直接使用关闭窗口来关闭,一是没有标记退出的时间,二是还可以不用登录就可以再进入管理页面进行操作,显得很不安全。

七、课程设计心得体会

1问题和解决方案

问题1:

再装好运行软件后,没有装该代码的数据库,出现了未指定错误的问题。

解决方案:

上网搜寻资料后,才发现原来该代码要连接相应的数据库后才可运行。

打开控制面板——管理工具——数据源——添加,则添加相应的数据库文件。

再次运行程序后,就没有出现该现象。

问题2:

运行时未有程序编写错误,但运行到某个程序却突然报错。

解决方案:

通过单步运行程序查到出错地方,发现Query1的SQL语句写错。

修改后运行正常。

2系统改进方面

通过调仓库管理系统,它的基本功能基本实现,但是还是有一些地方需要改进。

首先,功能不是很强大,有些基本功能不可以实现,再增加了一些模块后,一般仓库所需的功能基本上能实现。

其次,在仓库管理员登录时,开始没有设置验证信息,这对仓库设备的安全性有很大的隐患,所以又增添了登录信息验证界面。

最后,该仓库管理系统在实际运用过程中还会遇到一些实际的问题,可根据具体实际情况进行改进。

3.实习心得与体会

经过一个星期的设计和开发,我们的仓库管理系统基本开发完毕。

其功能基本符合任务要求,能够完成仓库的基本入库出库还库等,很好的实现仓库管理系统的功能。

通过这次课程设计,它不仅检验了我所学的知识,也培养了我如何去把握一件事,如何去做一件事,又如何完成一件事情。

在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。

学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。

课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。

通过这次windows课程设计,我在多方面都有所提高。

通过这次课程设计,综合运用本专业所学课程的理论和实际具体应用,从而培养和提高学生独立工作能力,巩固与扩充了wingdows系统编程与计算机语言与相关知识等课程所学的内容,掌握仓库管理设计的方法

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

当前位置:首页 > 考试认证 > 交规考试

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

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