基于asp+access的仓库即时查询系统设计与实现(毕业论文+程序源码)
大家好,今天给大家介绍基于asp+access的仓库即时查询系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦
文章目录:
1、项目简介
- 为了适应信息时代发展,提高企业工作效率和运作水平,实现现代化企业的运行机制和高水平的管理,体现IT业高新技术企业自己的特色,使信息化企业建设成为一流企业建设的重要组成部分。用“企业信息化”的整体概念来统一规划、组织和建设企业的办公自动化系统。在这个概念下,统一设计和建设网络拓扑架构、网络安全系统、数据库基础结构、信息共享与管理、信息的发布与管理等。
- 开发后的信息化仓库即时查询系统包括用户部分、用户权限、产品快速查询、产品即时价格、产品即时库存、修改产品即时价格、修改产品即时库存、修改用户密码、安全退出系统几个部分。
2、资源详情
项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:15387个字42页
包含内容:整套源码+完整毕业论文
3、关键词:
仓库即时查询系统 asp BS4、毕设简介
提示:以下为毕业论文的简略介绍,项目源码及完整毕业论文下载地址见文末。
一、引言
a、项目开发背景:
省略
b、项目开发的目的:
为了适应信息时代发展,提高企业工作效率和运作水平,实现现代化企业的运行机制和高水平的管理,体现IT业高新技术企业自己的特色,使信息化企业建设成为一流企业建设的重要组成部分。用“企业信息化”的整体概念来统一规划、组织和建设企业的办公自动化系统。在这个概念下,统一设计和建设网络拓扑架构、网络安全系统、数据库基础结构、信息共享与管理、信息的发布与管理等。
开发后的信息化仓库即时查询系统包括用户部分、用户权限、产品快速查询、产品即时价格、产品即时库存、修改产品即时价格、修改产品即时库存、修改用户密码、安全退出系统几个部分。
c、项目开发的目标:
(1) 升级、改造企业现有的办公自动化程度,完善企业信息化建设,实现办公自动化结构的网络化,进一步提高企业的办公效率、工作水平,朝着信息化、网络化、现代化目标迈进。
(2) 建立企业信息化系统,进一步提高运作效益和现代化运作水平。
(3) 建立企业信息化仓库即时查询管理系统,为公司内部职员提供方便、快捷的资料信息获取渠道和手段。
(4) 仓库即时查询系统,使企业实现信息化、自动化、网络化,提高企业竞争力。
(5) 建立Intranet系统,方便企业内部的信息发布、信息交流和信息共享。
d、项目提出的意义:
省略
e、系统的开发方法:
在本系统的开发过程中采用的是当今最流行的IIS+ASP模式,在该模式中,结合了微软的IIS和ASP技术,充分利用了IIS和ASP两种技术原有的优点。
Microsoft Active Server Pages 即我们所称的 ASP ,其实是一套微软开发的服务器端脚本环境, ASP 内含于 IIS 之中 , 通过 ASP 我们可以结合 HTML 网页、 ASP 指令和 ActiveX 元件建立动态、交互且高效的 WEB 服务器应用程序。
Active Server Pages 独具以下特点:
1. 使用 VBScript 、 JScrit 等简单易懂的脚本语言,结合 HTML 代码,即可快速地完成网站的应用程序。
2. 无须 compile 编译,容易编写,可在服务器端直接执行。
3. 使用普通的文本编辑器,如 Windows 的记事本,即可进行编辑设计。
4. 与浏览器无关 (Browser Independence), 用户端只要使用可执行 HTML 码的浏览器,即可浏览 Active Server Pages 所设计的网页内容。 Active Server Pages 所使用的脚本语言 (VBScript 、 Jscript) 均在 WEB 服务器端执行,用户端的浏览器不需要能够执行这些脚本语言。
5.Active Server Pages 能与任何 ActiveX scripting 语言相容。除了可使用 VBScript 或 JScript 语言来设计外,还通过 plug-in 的方式,使用由第三方所提供的其他脚本语言,譬如 REXX 、 Perl 、 Tcl 等。脚本引擎是处理脚本程序的 COM(Component Object Model) 物件。
6.Active Server Pages 的源程序,不会被传到客户浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。
7. 可使用服务器端的脚本来产生客户端的脚本。
8. 物件导向( Object-oriented )。
9.ActiveX Server Components(ActiveX 服务器元件 ) 具有无限可扩充性。可以使用 Visual Basic 、 Java 、 Visual C++ 、 COBOL 等编程语言来编写你所需要的 ActiveX Server Component 。
二、系统分析
a、系统设计的思想
仓库即时查询信息系统的基本设计思想是把企业业务信息即时供内部员工了解,利用ASP+ACCESS进行编程。此子系统的系统结构如图所示。
b、可行性分析:
省略
c、需求分析:
在可行性分析阶段已经粗略的研究了该项目的需求,并分析了开发平台及软件的可行性,但为了准确的确定目标系统必须做什么,了解用户的明确需求,在企业相关部门进行了详细的调研, 进一步明确了实现系统的功能。
d、系统的主要技术分析:
本系统采用了当前最流行的B/S结构(即Browser/Server结构),Browser/Server的系统中,用户可以通过浏览器向分布在网络上的许多服务器发出请求。Browser/Server结构极大的简化了客户机的工作,客户机上只需安装、配置少量的客户端软件即可,服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。
在Browser/Server三层体系结构下,表示层(Presentation)、功能层(Business Logic)、数据层(Data Service)被分割成三个相对独立的单元:
第一层–表示层:Web浏览器
在表示层中包含系统的显示逻辑,位于客户端。它的任务是由Web浏览器向网络上的某一Web服务器提出服务请求,Web服务器对用户身份进行验证后用HTTP协议把所需的主页传送给客户端,客户机接受传来的主页文件,并把它显示在Web浏览器上。
第二层–功能层:具有应用程序扩展功能的Web服务器
在功能层中包含系统的事务处理逻辑,位于Web服务器端。它的任务是接受用户的请求,首先需要执行相应的扩展应用程序与数据库进行连接,通过SQL等方式向数据库服务器提出数据处理申请,而后等数据库服务器将数据处理的结果提交给Web服务器,再由Web服务器传送回客户端。
第三层–数据层:数据库服务器
在数据层中包含系统的数据处理逻辑,位于数据库服务器端。它的任务是接受Web服务器对数据库操纵的请求,实现对数据库查询、修改、更新等功能,把运行结果提交给Web服务器。
从上面的分析中可以看出,三层的Browser/Server体系结构是把二层Client/Server结构的事务处理逻辑模块从客户机的任务中分离出来,由单独组成的一层来负担其任务,这样客户机的压力大大减轻了,把负荷均衡地分配给了Web服务器,于是由原来的两层的Client/server结构转变成三层的Browser/Server结构。
三、软件开发平台
软件平台:IIS+ASP+ACCESS
开发语言:ASP
数 据 库:ACCESS
服 务 器:WINDOWS 2000 SERVER或更高版本
网络结构:
公司提供一台服务器并接入公司局域网,用以放置ASP系统代码和ACCESS数据库,专人负责维护,以保证数据的有效性,公司所有业务员每人分发一个用户名和密码,并通过IE浏览器登录查询系统。
安全保障:
用户权限分四个级别,分别为:系统管理员、业务总监、仓库管理员、普通员工;系统管理员拥有所有权限;业务总监和仓库管理员可以入库和修改库存情况;普通员工可以查询每天的产品价格和库存情况。
四、数据分析
在仓库即时查询系统中,主要是产品价格、产品库存查询输入的数据信息,并且以适当的方式输出给用户。数据类型决定了处理的方式也就是算法,因此,数据是系统实现分析的起点。在本文中使用数据流图来分析数据的流动和处理。
因为对每一种对象的管理都比较类似,在此仅以产品查询为例,来分析一下本系统中的数据流向。
首先,对普通职员来说,本系统接受职业的查询请求,经过对查询请求的分析得到用户的需要。然后把该需要转化为结构化查询语言SQL语句,送入数据库系统中。数据库根据SQL语句,查询出结果,送回本系统。系统接收到数据库返回的查询结果集,经过一定的分析处理,转化为ASP页面,返回给客户端浏览器。
其次,对管理员用户来说,本系统除了完成普通职员的查询请求之外,还接收管理员用户的数据修改请求。经过对数据修改请求的检查,确定该请求是获得权限的管理员用户发出,即为有效请求之后。对该请求进行分析,得到请求的具体内容。然后转化为结构化查询语言SQL语句,送入数据库系统,更新数据库信息。
五、软件基本功能
1、系统登录
2、产品价格及库存信息表
3、产品查询
4、修改用户登录密码
5、添加产品
6、修改产品库存信息及价格
7、删除产品
8、退出系统
六、数据库设计
a、数据库的引入:
在本次设计中,选择了MICROSOFT的ACCESS作为后台数据库工具。
省略
b、数据库的物理结构:
c、数据库的完整性
数据库的完整性是指数据的正确性和相容性。数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件——完整性约束条件,数据的约束条件是语义的体现,将作为模式的一部分存入数据库中。
本系统中定义了表与表之间的联系有助于实现完整性规则,一般在程序中实现具体的完整性控制。
d、数据库的安全性:
省略
七、系统总体功能模块
以下是系统功能模块图:
a、用户登录模块
由于不同的登录用户有不同的权限,所以用户在进行登录操作时,系统会自动根据用户成功登录的用户信息验证该用户的相应权限,并进入相应权限页面,开放相应权限菜单功能项。登录时用的用户名和密码是按管理员的不同权限事先分配好的,登录后即可进行相应操作。
b、产品价格信息和库存信息
用户登录后,均可看到每页十个产品的信息,点击“上一页”和“下一页”可浏览所有产品信息。
c、产品快速查询
当然,有些时候用户想在上千或上万的产品资料中,迅速找到某一产品信息,所以我提供了产品搜索功能,以方便用户快速浏览到自己要查询的产品信息。
d、产品价格修改和库存信息修改
当某产品的价格或库存量发生变化时,公司需要通知各部门的业务员,在实际操作中,需要浪费大量的时间和人力物力,并且还有通知不及时的情况。通过这个功能修改价格和库存信息后,无需一个一个去通知,业务员可在第一时间收到这一信息的改变,大大提高工作效率。
e、密码修改
为了方便系统的安全性,也同样方便用户能够用自己易记的密码登录系统,特设计此功能。
f、退出系统
当用户在公共场所或其它人的电脑上登录过系统后,往往直接关闭浏览器便离开计算机,这样留下了严重的安全隐患;因为用户登录的COOKIES没有清除,这时其它用户可以无需密码登录,即可进入系统,形成非法登录。
八、程序设计
现在将讨论怎样具体的实现系统中每个模块的功能,也就是系统的详细设计过程。详细设计的根本目标是确定应该怎样具体的实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。
详细设计阶段的任务在于要设计出程序的“蓝图”,因此,详细设计的结果基本上决定了最终的程序代码的质量。详细设计的目标不仅仅是逻辑上正确地实现每个模块的功能,更重要的是设计出的处理过程应该尽可能简明易懂。结构程序设计技术是实现上述目标的关键技术,因此是详细设计的逻辑基础。
九、程序设计思想
省略
十、数据库连接技术
本系统在数据库连接方面,使用了数据库ADO技术。首先,在程序中建立一个CONN.INC的文件,里面用来放置数据库连接代码,在代码中先定义conn和connstr变量,conn用来创建数据连接对象,connstr用来存放连接字符串,使用ado中connection对象的open方法就可以连接ACCESS数据库了。具体在程序中引用需要以下代码:
dim conn,connstr
set conn=server.createobject("adodb.connection")'创建连接对象
connstr="Provider=Microsoft.jet.oledb.4.0;Data source="&server.mappath("data/db.asp")
conn.open connstr'开始连接
这样,在数据库连接的方面,运用数据库ADO连接技术能获取比较大的效率。
十一、源码文件列表
DATA文件夹:
用于存放数据库文件
IMAGE文件夹:
用于存放设计时用到的图片
index.asp:
用户登录页面
Ck_sys.asp:
普通用户登录后进入的页面
Ck_sys_admin.asp:
管理级用户登录后进入的页面
Conn.inc:
数据库连接代码页,方便代码重复使用
Edit_password.asp:
用户密码修改页面
Search.asp:
普通用户查询页面,对查询结果不可编辑
Search_admin.asp:
管理级用户查询页面,对查询结果可编辑
Logout.asp:
安全退出页面,清除用户COOKIES信息
十二、程序详细说明
Index.asp:
用户登录页面,供用户登录使用;当用户输入正确的用户名和密码后,系统将自动识别其权限级别,并进入到相应的页面。
操作说明:
在用户名后的文本框中输入您的用户名,在密码后的文本框中输入您正确的密码,然后点击“登录系统”按钮(或输入完后,直接回车)。
Conn.inc:
为系统创建数据库连接的代码页面,因为系统要频繁地连接数据库,为了方便特写成一个包含文件,供程序调用。
操作说明:
在需要使用的页面中使用代码:
<!--#include file="conn.inc"-->
Ck_sys.asp:
普通用户登录后,可看到的系统页面;该页面提供了公司所有产品的即时价格和库存数量;上方有产品搜索栏,可供用户快速查询到相应的产品信息。
操作说明:
主要分三个部分,即登录信息、产品搜索、产品信息;
产品搜索操作:在“请输入产品关键字”后的文本框中输入您要查询的产品型号,再点击“搜索”按钮即可。
Ck_sys_admin.asp:
管理用户登录后,可看到的系统页面;该页面提供了除普通用户拥有的功能外,还可供修改即时的产品价格和库存,为普通用户提供即时而准确的信息资料。
操作说明:
主要分四个部分,即登录信息、库存信息管理、产品搜索、产品信息;
添加库存信息:点击“添加库存信息”,页面中会出现供用户“添加库存信息”的表单,输入相应信息后,点击添加按钮。
产品搜索操作:在“请输入产品关键字”后的文本框中输入您要查询的产品型号,再点击“搜索”按钮即可;
如果是管理级别登录,则可以对搜索结果中的产品进行修改和删除;方法是:在搜索结果中,点击相应产品信息后面的“编辑”图标,则会在页面中出现“编辑库存信息”的表单,更改后,点击“修改”按钮;如果想删除该产品的记录,或某产品在库存中已无存货,则直接点击相应产品后的“删除”图标,即可。
Edit_password.asp:
供系统中所有用户更改其密码的页面。
操作说明:
点击“修改登录密码”,将弹出“更改用户密码”页面,在页面对话框中输入两遍一样的密码,再点击“更改密码按钮”,如果修改成功,系统会给出“密码修改成功!”的提示,此时用户如果退出系统,即可用新的密码登录,旧密码将不能登录。
Search.asp:
普通用户查询页面,对查询结果不可编辑
操作说明:
查询结果显示页面,仅供查看。
Search_admin.asp:
管理级用户查询页面,对查询结果可编辑
操作说明:
查询结果显示页面,仅供查看。(相关其它操作参照Ck_sys_admin.asp中的“产品搜索操作”)
Logout.asp:
安全退出页面,清除用户COOKIES信息
操作说明:
点击“退出系统”,即清除当前用户登录时的COOKIES信息。
十三、软件测试
在开发大型软件系统的过程中,需要面对错综复杂的问题,因此,在软件生存周期的每个阶段都不可避免地会产生错误。我们力求在每个阶段结束之前通过严格的技术审查,尽可能早的发现并纠正错误。测试的目的就是在软件投入生产性运行之前,尽可能多地发现软件中的错误。目前软件测试仍然是保证软件质量的关键步骤,它是对软件规格说明、设计和编码的最后复审。
尽管面向对象技术的基本思想保证了软件应该有更高的质量,但无论采用什么样的编程技术,编程人员的错误都是不可避免的,而且由于面向对象技术开发的软件代码重用率高,更需要严格测试,避免错误的繁衍。因此,软件测试在面向对象编程里更具有它的重要性。
与开发过程类似,测试过程也必须分步骤进行,每个步骤在逻辑上是前一个步骤地继续。大型软件系统通常由若干个子系统组成,每个子系统又由许多模块组成。因此,大型软件系统的测试的基本层次如图所示。
(1) 单元测试 单元测试的用例从单元详细设计中导出。在单元测试中可以采用功能性测试和结构性测试两种。
(2) 集成测试 在这个测试步骤中所发现的往往是概要设计的错误。
(3) 系统测试 在这个测试步骤中所发现的往往是需求规格说明的错误。一般来说,系统测试是功能性测试,不是结构性测试。
十四、代码设计
部分功能函数说明:
a、验证用户登录代码说明
<%
sub chk_sub '定义验证过程
if trim(request.form("username"))="" then '判断是否输入了空的用户名%>
<p class="button">
<script>
alert("请输入用户名!");
</script>
<%elseif trim(request.form("password"))="" then '判断是否输入了空的密码%>
<script>
alert("请输入密码!");
</script>
<%else
dim rs,sql '定义记录集对象和SQL语句字符串
set rs=server.createobject("adodb.recordset")
sql="select * from user_info where username='"&trim(request.form("username"))&"' and password='"&request.form("password")&"'"
rs.open sql,conn,1,1 '打开记录集
if rs.eof and rs.bof then%>
<script>
alert("用户名或密码不正确!");
</script>
<%
elseif not rs.eof and not rs.bof then
if rs("level")="1" or rs("level")="2" or rs("level")="3" then '判断登录用户的级别
response.cookies("admin")=trim(request.form("username")) '创建用户COOKIES信息
response.cookies("userid")=rs("id")
response.redirect("ck_sys_admin.asp") '登录成功,转入管理用户页面
else
response.cookies("user")=trim(request.form("username")) '创建用户COOKIES信息
response.cookies("userid")=rs("id")
response.redirect("ck_sys.asp") '登录成功,转入普通用户页面
end if
end if
end if
end sub
%>
b、分页代码说明
<%dim rs,sql
set rs=server.createobject("adodb.recordset")'创建记录集对象
sql="select * from table"'选取仓库表中的所有记录,按降序排序
rs.open sql,conn,1,1
'分页代码部分
dim total_record,currentpage
const MaxPerpage=10 '每页显示最大记录条数
total_record=rs.recordcount '将总记录条数赋给变量total_record
currentpage=request("page") '获取当前页面的页码
if currentpage<1 then
currentpage=1
end if
if currentpage=1 then '如果当前是第一页 则显示前面的记录
show_content '调用过程,以显示表单
show_page total_record,Maxperpage '调用过程,以显示翻页菜单
else
rs.move (currentpage-1)*Maxperpage '把记录集移动到每页的开始
dim bookmark
bookmark=rs.bookmark '获取当前记录读取位置
show_content
show_page total_record,Maxperpage '调用过程,以显示翻页菜单
end if
%>
<%sub show_content '定义显示产品信息的表格框过程
dim I '定义记数器变量i
i=0 '初始化记数器
do while not rs.eof '如果不是最后一条记录 则继续
''''''''''''''''''''''要显示的内容
i=i+1 '记数器和显示记录条数同步
if i>=Maxperpage then exit do '如果超出每页最大显示条数 则退出SUB
rs.movenext '移动到下一条记录
loop '循环
%>
<%end sub%>
<%sub show_page(total_record,Maxperpage) '翻页菜单过程定义
dim file_url '本页文件名
file_url="ck_sys.asp" '方便后面使用
dim total_page '定义总页数变量
if total_record mod Maxperpage=0 then '计算总共的页数
total_page=total_record \ Maxperpage
else
total_page=total_record \ Maxperpage+1
end if
%>
<p></p>
<table width="439" height="36" border="0" align="center" class="12">
<tr>
<td width="141"><table width="141" border="0" cellspacing="1" class="12">
<tr>
<td class="12">
<%if currentpage<2 then%>
第一页
<%else%>
<a href='<%=file_url%>?id=<%=id%>&page=1' class="link"><font color="#FF0000">第一页</font></a>
<%end if%>
</td>
<td>
<%if currentpage<2 then%>
<span class="12">上一页
<%else%>
<a href='<%=file_url%>?id=<%=id%>&page=<%=currentpage-1%>'><font color="#FF0000">上一页</font></a></span></td>
<%end if%>
</tr>
</table></td>
<td width="125"><div align="justify"><font color="#FF0000"> <span class="12">共</span></font><span class="12"><%=total_record%><font color="#FF0000">条</font>
<font color="#FF0000">共分</font><%=total_page%><font color="#FF0000">页</font> </span></div></td>
<td width="159"><table width="159" border="0" cellpadding="0" cellspacing="1" class="12">
<tr>
<td width="73">
<%if total_page-currentpage<1 then%>
<span class="12">下一页
<%else%>
<a href='<%=file_url%>?id=<%=id%>&page=<%=currentpage+1%>' class="12"><font color="#FF0000">下一页</font></a>
<%end if%>
</span></td>
<td width="59">
<%if total_page-currentpage<1 then%>
<span class="12"> 最后一页
<%else%>
<a href='<%=file_url%>?id=<%=id%>&page=<%=total_page%>' class="12"><font color="#FF0000">最后一页</font></a>
<%end if%>
</span></td>
</tr>
</table></td>
</tr>
</table>
<%end sub%>
省略
十五、结束语
从本系统开始设计到现在,共用时间一个月。到目前为止基本功能已经实现。
仓库即时查询系统之企业化校园体验子系统是在对相关人员进行详细调研后,确定了系统涉及的领域,包括数据库设计、界面设计、Web应用层设计等,是一个具有实际应用意义的典型管理系统。
本系统具有如下特点:
(1)采用Browser/Server三层体系结构,使系统具有很好的可维护性和可重用性。
(2)在本系统的开发过程中采用的是IIS+ASP+ACCESS模式,此模式将明显的把显示和逻辑分离,使代码容易管理,适合于大型项目的开发。
(3) 中间层使用数据库连接池技术加快与数据库服务器之间的数据处理速度,也加快对客户机层的响应速度。
(4)Web服务器采用的是微软公司的IIS应用服务器,它是一个比较完善的、开放的Web应用服务器。它严格地遵循普遍流行的开放标准,在大型开发过程中较为适用。
(5)后台数据库采用的ACCESS,它功能比较强大,支持在线分析处理、多媒体支持和各种并行处理能力。
5、资源下载
本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。
序号 | 毕业设计全套资源(点击下载) |
---|---|
本项目源码 | 基于asp+access的仓库即时查询系统设计与实现(源码+文档)_asp_BS架构_仓库即时查询系统.zip |