本站所列毕业设计(论文)资料均属于原创者所有,初衷是为大家在毕业设计(论文)过程中参考和学习交流之用。

毕业设计我帮你

仓库即时查询系统设计

仓库即时查询系统设计

为了适应信息时代发展,提高企业工作效率和运作水平,实现现代化企业的运行机制和高水平的管理,体现IT业高新技术企业自己的特色,使信息化企业建设成为一流企业建设的重要组成部分。用“企业信息化”的整体概念来统一规划、组织和建设企业的办公自动化系统。

如需购买请QQ扫描右边二维码或者加QQ 3449649974 咨询 毕业设计(论文)代做请加QQ 3139476774


  • 详细描述

    仓库即时查询系统
    目录
     
    目录 1
    一、引言 2
    二、系统分析 4
    三、软件开发平台 6
    四、数据分析 6
    五、软件基本功能 7
    六、数据库设计 7
    七、系统总体功能模块 9
    八、程序设计 10
    九、程序设计思想 11
    十、数据库连接技术 12
    十一、源码文件列表 12
    十二、程序详细说明 13
    十三、软件测试 14
    十四、代码设计 15
    十五、结束语 42
    一、引言
     
    a、项目开发背景:
    长沙某大型电脑公司,其主要经营网络产品(交换机、路由器等);在公司经营的产品中,物品型号和规格不一,且价格不一,公司正常营业过程中,公司需要提前制作好每天的即时价格表和库存情况表,供业务员每天上班前领取,以方便公司每天正常的业务开展;在如今经济高速发展,竞争激烈的状况下,每时每刻都在发生着变化,这对公司及时了解最新价格和公司库存信息提出了更高的要求。

    Active Server Pages 独具以下特点:
      1. 使用 VBScript 、 JScript 等简单易懂的脚本语言,结合 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、可行性分析:
    可行性分析也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。
    (1) 经济可行性:主要是对项目的经济效益进行评价,本系统开发经费对于本单位在经济上是可以接受的,并且本系统实施后可以显著提高工作效率,有助于学院完全实现信息化管理。所以本系统在经济上是可行的。
    (2) 技术上的可行性:技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。该管理系统采用了当前新兴的Browser/Server模式进行开发。三层的Browser/Server体系结构具有许多传统Client/Server体系结构不具备的优点,而且又紧密的结合了Internet/Intranet技术,是技术发展的大势所趋,它把应用系统带入了一个崭新的发展时代。数据库服务器选用MICROSOFT的ACCESS数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。
    (3) 时机可行性:目前,企业内部局域网络早已经假设好,从而满足企业内各职能部门,各直属职员连网需求。企业良好的网络设施为本系统开发企业信息化的系统提供了坚实的基础。
    (4) 管理上的可行性:主要是管理人员是否支持,现有的管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等。规章制度和管理方法为系统的建设提供了制度保障。
    综上所述,此系统开发目标已明确,在技术和经济等方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。
     
    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、数据库的引入:
    数据库技术从60年代中期至今只有不到40年的历史,但其发展速度之快是其它技术所不及的。它已由第一代的层次型、网状型数据库,第二代的关系型数据库发展到今天以面向对象为主要模型的数据库,即第三代数据库。数据库技术和网络通信技术、面向对象编程技术、并行计算机技术、人工智能技术相互融合、相互渗透,促进了数据库技术的广泛应用。
    数据库(Database),是按照数据结构来组织、存储和管理数据的仓库,是用于查询的大量数据的存储区域。使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节省了数据的存储空间,实现数据资源的充分共享等等。此外,数据库技术还为用户提供了非常简便的使用手段,使用户易于编写有关数据库应用程序。特别是近年来推出的计算机关系数据库管理系统,操作直观,使用灵活,编程方便,功能强大,环境适应广泛,数据处理能力极强。
    数据库的设计是指对一个给定的应用环境,构造数据库模式,建立数据库及其应用系统,满足各种用户需求。作为信息资源开发、管理和服务的一种有效的手段,数据库技术的应用已越来越广泛,从小型的单项事务处理系统到大型的信息系统大都用先进的数据库技术来保持系统数据的安全性、完整性和共享性。对一个实际的系统来说,数据库表的设计在遵循数据库理论的同时,必须能用开发工具来实现用户在各方面提出的功能要求。
    一个真正的、完整的站点是离不开数据库的,因为少量的数据,如网页访问人数等完全可以存储在文本文件中,但实际应用中,需要保存的数据远不止这一点点,而且这些数据之间往往还有关联,利用数据库来管理这些数据,可以很方便的查询和更新。可以说一个动态网站的建设是离不开一个设计最优的数据库的。我们现在可以使用的数据库有很多种,如:Fox数据库(.dbf)、Access数据库(.mdb)、DB2、Informix、Oracle和SQL Server等等,在本次设计中,选择了MICROSOFT的ACCESS作为后台数据库工具。
     
    b、数据库的物理结构:
     
    表名:ck
    字段名 数据类型 备注
    Id 自动编号 主键
    Prod_name 文本 产品名称
    Prod_num 数字 产品数量
    Prod_price 数字 产品单价
    Prod_com 文本 供货厂家
    Add_date 日期/时间 入库日期
    Update_time 日期/时间 最后更新日期
     
    表名:user_info
    字段名 数据类型 备注
    Id 自动编号 主键
    Username 文本 用户名
    Password 文本 密码
    Department 文本 部门
    Job 文本 岗位
    Level 数字 权限级别
    date 日期/时间 创建日期
     
    c、数据库的完整性
    数据库的完整性是指数据的正确性和相容性。数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件——完整性约束条件,数据的约束条件是语义的体现,将作为模式的一部分存入数据库中。
    本系统中定义了表与表之间的联系有助于实现完整性规则,一般在程序中实现具体的完整性控制。
     
    d、数据库的安全性:
    数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。在数据库系统中,大量的数据集中存放,而且为许多用户直接共享,是宝贵的信息资源,系统的安全保护措施就显得更为重要,它保护数据库防止恶意的破坏和非法的存取。
    本系统包括数据库的安全和服务器的安全。采用管理员表示和鉴定的方法实现数据库的安全,此安全管理措施并不在前台开发工具中实现,而是在后台数据库中实现。在登录数据库时,系统让管理员户表示自己的身份,不同的管理员权限不同,系统进行核实,鉴别此管理员是否为合法用户,若是,系统进一步核实用户,通常要求用户输入口令,系统和对用户口令以鉴别用户身份。服务器的安全也是通过用户在登录服务器时输入合法的用户名和密码来实现的。这是一种简单可行的方法,实现起来比较方便。没有采用更加复杂的系统安全管理措施是因为本管理系统是应用在企业内部网中,采用安全管理措施主要是为了防止没有修改权限的用户无意间修改了数据,因此采用用户标识和鉴定的安全管理措施就能够保障数据库的安全性。
     七、系统总体功能模块
    以下是系统功能模块图:
     
    a、用户登录模块
    由于不同的登录用户有不同的权限,所以用户在进行登录操作时,系统会自动根据用户成功登录的用户信息验证该用户的相应权限,并进入相应权限页面,开放相应权限菜单功能项。登录时用的用户名和密码是按管理员的不同权限事先分配好的,登录后即可进行相应操作。
    b、产品价格信息和库存信息
    用户登录后,均可看到每页十个产品的信息,点击“上一页”和“下一页”可浏览所有产品信息。
    c、产品快速查询
    当然,有些时候用户想在上千或上万的产品资料中,迅速找到某一产品信息,所以我提供了产品搜索功能,以方便用户快速浏览到自己要查询的产品信息。
    d、产品价格修改和库存信息修改
    当某产品的价格或库存量发生变化时,公司需要通知各部门的业务员,在实际操作中,需要浪费大量的时间和人力物力,并且还有通知不及时的情况。通过这个功能修改价格和库存信息后,无需一个一个去通知,业务员可在第一时间收到这一信息的改变,大大提高工作效率。
    e、密码修改
    为了方便系统的安全性,也同样方便用户能够用自己易记的密码登录系统,特设计此功能。
    f、退出系统
    当用户在公共场所或其它人的电脑上登录过系统后,往往直接关闭浏览器便离开计算机,这样留下了严重的安全隐患;因为用户登录的COOKIES没有清除,这时其它用户可以无需密码登录,即可进入系统,形成非法登录。
     八、程序设计
    现在将讨论怎样具体的实现系统中每个模块的功能,也就是系统的详细设计过程。详细设计的根本目标是确定应该怎样具体的实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。
    详细设计阶段的任务在于要设计出程序的“蓝图”,因此,详细设计的结果基本上决定了最终的程序代码的质量。详细设计的目标不仅仅是逻辑上正确地实现每个模块的功能,更重要的是设计出的处理过程应该尽可能简明易懂。结构程序设计技术是实现上述目标的关键技术,因此是详细设计的逻辑基础。
     九、程序设计思想
    常见的设计思想有两种:结构化和面向对象化,本系统采用的是面向对象的设计思想,下面简单介绍一下两者的不同以及面向对象程序设计的优点。
    传统的结构化开发过程包括软件目标的功能分解,以及使用正确的参数和返回值来创建函数。首先分析需求,确定功能,然后以函数的形式进行建模。在一个Web应用中很可能有上千个函数,这些函数能够不受限制的互相调用,因此在访问某个变量时,很难保证它不是正在被其他的函数访问或者修改。用ASP脚本来开发Web应用时就是上面所说的情况。只使用ASP而不使用任何自定义标记,在Web应用的规模比较小时还不会出现太多的问题,但是在Web应用的规模增大时就肯定会出现问题。这些代码也许能够满足功能上的需要,却不能达到非功能性的要求。
    在结构化开发方法面临问题的时候,使用面向对象的方法进行分析、设计和开发就可以解决一部分问题。面向对象的分析和设计方法源于现实生活中的模块化的思想。对象是提供一组相关功能的实体,对象之间互相作用从而完成一定的任务。面向对象开发方法包括对目标的模块化,以及用类的形式对数据和函数进行封装。面向对象方法主要有以下四个特征:
    (1) 抽象性
    抽象是对象建模参数的选择,这是进行分析后得到的结果。这意味着是由分析人员来选择一定的参数,以表示对象,这是对象模型化的第一步。
    (2) 封装性
    由于某些原因,类中的数据和方法不需要对其他的对象公开,我们可以将其隐藏在类的内部,这是对象模块化过程中很重要的一步。这个步骤将确保对象的行为以简单的借口出现,而复杂的执行过程都被隐藏了。比如,ASP就可以为Web网页开发人员提供一个简单的接口。
    (3) 继承性
    在一个现存对象的基础上创建一个新的对象,这个过程称为继承。这样我们可以不必重写所有的代码,只需在新对象中编写需要更新的代码就可以了。
    (4) 模块化
    为了减少独立工作小组之间的依赖性,软件系统中必须使用模块。
     十、数据库连接技术
    本系统在数据库连接方面,使用了数据库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信息
     十二、程序详细说明
    Db.mdb:
    创建两个表,两个表的相关字段如下:
    表名:ck
    字段名 数据类型 备注
    Id 自动编号 主键
    Prod_name 文本 产品名称
    Prod_num 数字 产品数量
    Prod_price 数字 产品单价
    Prod_com 文本 供货厂家
    Add_date 日期/时间 入库日期
    Update_time 日期/时间 最后更新日期
     
    表名:user_info
    字段名 数据类型 备注
    Id 自动编号 主键
    Username 文本 用户名
    Password 文本 密码
    Department 文本 部门
    Job 文本 岗位
    Level 数字 权限级别
    date 日期/时间 创建日期
     
     
     
    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信息。

    结束语
    从本系统开始设计到现在,共用时间一个月。到目前为止基本功能已经实现。
    仓库即时查询系统之企业化校园体验子系统是在对相关人员进行详细调研后,确定了系统涉及的领域,包括数据库设计、界面设计、Web应用层设计等,是一个具有实际应用意义的典型管理系统。
    本系统具有如下特点:
    (1)采用Browser/Server三层体系结构,使系统具有很好的可维护性和可重用性。
    (2)在本系统的开发过程中采用的是IIS+ASP+ACCESS模式,此模式将明显的把显示和逻辑分离,使代码容易管理,适合于大型项目的开发。
    (3) 中间层使用数据库连接池技术加快与数据库服务器之间的数据处理速度,也加快对客户机层的响应速度。
    (4)Web服务器采用的是微软公司的IIS应用服务器,它是一个比较完善的、开放的Web应用服务器。它严格地遵循普遍流行的开放标准,在大型开发过程中较为适用。 
    (5)后台数据库采用的ACCESS,它功能比较强大,支持在线分析处理、多媒体支持和各种并行处理能力。
    但因为本人在项目开始的时候,对ASP和Web应用程序设计方面不太熟悉,再加上毕业设计的时间仓促,许多方面在下一步的工作中还需要进一步改进和完善。主要针对以下几方面:
    (1) 尽量采用满足MVC模式框架开发,分离表示层和事物层,使系统具有高的可重用性和适应性以及良好的可维护性。
    (2) 系统的某些设计的可扩展性并不十分理想,在以后的系统维护过程中,使用重构方法对系统进行重构,使系统的设计日益趋于更强的可扩展性。
    (3)本人感觉遗憾之处就是希望能够在该系统中加入仓库管理员开入库单功能,业务员开出库单功能,业务总监审核销售出库单,并且在月底出每个业务员的销售报表和公司盈利报表,使其实现进销存的基本功能。
    http://www.bysj580.com/
    收缩