目 录
第一章 旅游管理系统概述 ............................................................. 1
1.1社会背景 .................................................................... 1 1.2技术背景 .................................................................... 2
1.2.1数据库概述 ............................................................ 2 1.2.2 Visual Basic概述 ..................................................... 3 1.3 系统开发任务概述 ............................................................ 3 第二章 旅游管理系统可行性研究及需求分析 ............................................. 4
2.1项目概述 .................................................................... 4
2.1.1 系统目标.............................................................. 4 2.1.2 用户特点.............................................................. 4 2.1.3 运行环境.............................................................. 4 2.2可行性研究 .................................................................. 4 2.3数据流图 .................................................................... 5 2.4数据字典 .................................................................... 7 第三章 旅游管理系统总体设计 ......................................................... 9
3.1 数据库设计 .................................................................. 9
3.1.1 数据库设计概述 ........................................................ 9 3.1.2 数据库概念结构设计 .................................................... 9 3.1.3 数据库逻辑结构设计 ................................................... 10 3.1.4 数据库的物理结构设计 ................................................. 11 3.1.5 数据库安全性和完整性 ................................................. 13 3.2系统总体设计 ............................................................... 13
3.2.1系统功能模块设计 ..................................................... 14 3.2.2系统输入输出设计 ..................................................... 15
第四章 旅游管理系统详细设计与实现 .................................................. 16
4.1 功能模块流程图 ............................................................. 16 4.2 人机界面设计 ............................................................... 18
I
计算机学院软件工程课程设计
4.3 系统界面设计 ............................................................... 18
4.3.1 工程启动主界面设计 ................................................... 18 4.3.2 系统登录选择界面设计 ................................................. 19 4.3.3 系统登录界面设计 ..................................................... 19 4.3.4 管理员登录后界面设计 ................................................. 20 4.3.5 景点管理界面设计 ..................................................... 20 4.3.6 导游管理界面设计 ..................................................... 20 4.3.7 管理员查询界面 ....................................................... 21 4.3.8 管理员财务管理界面设计 ............................................... 21 4.3.9 管理员报表打印界面设计 ............................................... 22 4.3.10员工登录后界面设计 .................................................. 22 4.3.11 游客登录后界面 ...................................................... 23
第五章 旅游管理系统测试 ............................................................ 24
5.1 系统测试 ................................................................... 24 5.2 单元测试用例 ............................................................... 24 5.3 综合测试 ................................................................... 27 5.4 测试分析报告 ............................................................... 27 结束语 ............................................................................ 28 参考文献 .......................................................................... 29 附 录 ............................................................................. 30
程序核心源代码 ................................................................ 30
II
计算机学院软件工程课程设计
第一章 旅游管理系统概述
旅游业具有“无烟产业”和“永远的朝阳产业”的美称,它已经和石油业、汽车业并列为世界三大产业;根据WTTC的统计,它每年产出4.7万亿美金的收入,直接或间接地为2亿700万人提供了就业机会,并支持着数以万计的企业的发展。
改革开放以来,我国的旅游业有了非常迅速的发展,但是比较而言,我国国内旅游业发展的广度深度都远远不能适应经济发展和人民生活水平提高的需要。随着市场经济的发展和人民收入水平的进一步提高,人民对旅游消费的需求将进一步上升,国内旅游业在国民经济中的地位和作用越来越重要。
1.1社会背景
我国旅游产业仍然基础薄弱,管理手段滞后,信息化程度低,企业效益较差。旅游行政管理部门存在管理方式落后,缺乏信息化管理手段,信息沟通渠道不通畅等问题.,面对困难和挑战,我国旅游业必须转变观念,创新思维,以信息化建设为突破口和新手段,整合各种资源,从而实现整个行业的新跨越。加强旅游信息化建设,可以提高各级管理部门的工作效率和管理水平,精简办事程序,降低工作成本,加大宣传力度,加快信息传播速度,提高信息实效性;提升旅游产业整体信息化水平,优化产业结构和资源配置,完善产业链,进而带动众多相关产业发展,拉动内需,扩大就业,增加外汇收入,对经济发展起到积极的推动作用。
目前有许多中型的旅游管理部门仍依靠原始的人工方式采用电子文档、电子表格等来对旅游信息进行管理,大部分旅行社也无自己的旅游管理系统,随着业务的不断扩展,旅行社业务操作中涉及的各种收费情况、客户情况以及旅游线路情况越来越复杂,业务操作人员若仅靠手工方式处理处理大量资料,则遗漏信息的现象更容易发生,同时也可能带来出错率的增长以及大量资源的浪费和闲置等问题。因此,只有加强对旅游部门信息资源的整合、统一管理,才能使行业更加合理、高效地运转。现行的旅游信息管理模式的问题主要体现在如下几个方面:
1.各类旅游信息查询速度慢,工作强度大。旅游信息中牵涉到游客资料、费用、线路、景点等大量的资料,用人工方式进行整理汇总时,速度慢、工作繁琐、易出错。
2.各类资源之间调配难度大。由于信息面广,信息量大,因此要对其中某些资源进行统一管理、调配是需要花费大量的人工。
1
计算机学院软件工程课程设计
3.相当一部分资源缺少一定的保护,处于不安全的状态,许多信息容易泄露。 4.对于客户的服务要求反应慢。基于上面的原因,对于客户提出的服务要求,势必不能做出快捷的反应。
5.缺少服务质量反馈的统一管理。
1.2技术背景
1.2.1数据库概述
数据库是数据管理的最新技术,是计算机科学的重要分支。今天,信息资源已成为各个部门的重要财富和资源。建立一个满足各级部门信息处理要求的行之有效的信息系统也成为一个企业或组织生存和发展的重要条件。因此,作为信息系统核心和基础的数据库技术得到越来越广泛的应用,从小型单项事务处理系统到大型信息系统,从联机事务处理到联机分析处理,从一般企业管理到计算机辅助设计与制造(CAD/CAM)、计算机集成制造系统(CIMS)、办公信息系统(OIS)、地理信息系统(GIS)等,越来越多新的应用领域采用数据库存储和处理他们的信息资源。
数据库的研究范围是十分广泛的,概括地讲可以包括以下三个领域: 1.数据库管理系统软件的研制; 2.数据库设计;
3.数据库理论;数据库学;
计算机领域中其他新兴技术的发展对数据库技术产生了重大影响。数据库技术和其他计算机技术的互相结合,互相深透,使数据库中新的技术内容层出不穷。数据库的许多概念,技术内容,应用领域,甚至某些原理都有了重大的发展和变化。建立和实现了一系列新型数据库系统,如分布式数据库系统,并行数据库系统,知识库系统,多媒体数据库系统等。它们共同构成了数据库系统大家族,使数据库技术不断地涌现新的研究方向。
本系统选用ACCESS数据库,原因在于ACCESS是一种其体积小、速度较快、总体拥有成本低的数据库,另外,对于一般的个人使用者和中小型企业来说,ACCESS提供的功能已绰绰有余,而且由于因此可以大大降低总体拥有成本,能够满足专业开发人员的需要,而且对于新用户来说,还十分易于上手。
2
计算机学院软件工程课程设计
1.2.2 Visual Basic概述 Visual Basic编程语言
1991年,美国微软公司推出了Visual Basic(可简称VB),目前的最新版本是VB 2008 Beta2(VB9)中文版。
Visual Basic有学习版、专业版和企业版三种版本,以满足不同的开发需要。学习版适用于普通学习者及大多数使用Visual Basic开发一般Windows应用程序的人员,但是;专业版适用于计算机专业开发人员,包括了学习版的全部内容功能以及Internet控件开发工具之类的高级特性;企业版除包含专业版全部的内容外,还有自动化构件管理器等工具,使得专业编程人员能够开发功能强大的组骨子里分布式应用程序。 VB是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发Windows环境下的各类应用程序。它简单易学、效率高,且功能强大可以与Windowsr专业开发工具SDK相媲美。在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的广泛应用程序接口(API)函数,以用动态链接库(DLL)、对象的链接与世隔嵌入(OLE)、开放式数据连接(ODBC)等技术,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。随着版本的提高,Visual Basic的功能也越来越强。5.0版以后,Visual Basic推出了中文版,与前个版本相比,其功能有了很大提升。
1.3 系统开发任务概述
随着旅游行业的不断发展,旅游的相关信息量越来越大,业务操作中涉及的各种线路情况、客户情况以及景点信息的情况越来越复杂多变。本系统要根据旅游行业的这种现状,提出解决问题的一个可行性方法:采用VB技术建立系统框架,建立E-R关系模型,以和ACCESS为后台数据库实现了数据集成和信息集成,对旅游的各类信息、资源进行协同集中管理。实现旅游信息的增加、查询、删除、修改以及接受游客的查询等。
其中管理模块实现主要功能包括旅游信息的管理,景点管理,导游信息管理,游客信息管理;信息查询模块主要是方便用户对本站景点进行相关查询,并返回查询结果;财务管理模块管理员可以对所有游客的财务进行管理,包括游客所交费用,所花费用,以及所获利润等,同时还可以将所有的财务报表打印出来,包括旅客人员表,导游信息表,景点信息表,财务表等。
3
计算机学院软件工程课程设计
第二章 旅游管理系统可行性研究及需求分析
2.1项目概述
2.1.1 系统目标
该系统主要建立一个旅游管理系统,突出旅游信息的特点,有较美观的界面设计。主要功能:
1. 用户可以对各景点或导游信息进行查询、并可以对游客信息进行管理,对财务进行管理,报表的打印等。
2. 有一定数量旅游景点相关信息可供处理。方便游客了解景点各种相关信息,同时提高和改善管理水平,游客通过对系统的浏览,可以对景点有比较真实和丰富的了解,对景点本身做一个比较好的宣传和推广。
3.系统根据实际情况收集的资料为背景,系统中包括各个景点的基本情况介绍如:景点名称,景点所在地和景点详细介绍等,用户登录后,都可以浏览系统中的所有信息,同时可以通过系统来查询所需要的各种信息。
4.管理人员登录系统后,将各种烦琐的管理工作通过系统来管理,用最少的人力和物力提高管理水平,方便发布各种旅游信息,对各种旅游信息进行增删改查,以及对用户信息进行增删改查。
5.管理人员通过系统处理各个事务,使前台的用户操作方便简单,突出旅游特点,具有较美观的界面设计,保证系统安全稳定的运行。 2.1.2 用户特点
旅游管理系统主要是用于旅行社对旅游信息的管理及加强游客进行交流。本系统的用户十分广泛,对用户的技术要求是:熟悉计算机操作,熟悉VB相关操作。 2.1.3 运行环境
硬件最小需求:奔腾3以上CPU,256M以上内存,10G以上剩余硬盘空间 支持软件:操作系统:Windows 98 /2000/XP 数据库:ACCESS
2.2可行性研究
采用计算机信息系统,能够有效帮助旅游企业优化,使其在行业内处于优势地位,
4
计算机学院软件工程课程设计
并相对长期地保持这种战略优势。开发本系统的可行性研究如下:
1.技术可行性:技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软、硬件能否满足需要。本系统采用VB开发出友好美观的人机界面,便于用户理解、操作。数据库管理系统采用ACCESS,它快速、体积小,同时保持数据的完整性、安全性。因此本系统的开发平台已成熟可行。硬件方面,在科技飞速发展的今天,硬件更新速度越来越快,可靠性越来越高,价格越来越便宜,因此硬件平台也能够满足本系统所需。
2.经济可行性:通过对成本的估计和在成本/效益分析等方面的计算知道,该系统可以带来一定经济效益,提高旅游信息发布的效率。该系统在方便高效快捷的基础上,帮助管理人员实现旅游信息管理,具有一定的管理应用价值,有很好的实用和发展前景。
3.操作可行性:确定软件产品最终是否能被用户接受,用户是否能操作最终的产品。本系统在开发设计时尽可能做到界面友好以及操作的人性化,使得操作人员轻松上手。
4.结论:本系统开发目标明确,在技术和经济,操作三方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。
2.3数据流图
用户信息 用 户 旅游管 理系统 信息报表 用 户
图2.1系统顶层数据流图
顶层数据流图(图2.1)主要描述了整个旅游管理系统的数据流,表明用户通过身份验证直接进入旅游管理系统进行相关操作。
图2.2 旅游管理系统第一层数据流图
5
计算机学院软件工程课程设计
用户首先的登录系统,正确登录进入系统后用户可以进行如下操作: 1.查询旅游信息:主要查询景点、导游、线路、财务报表的信息。 2.导游预定:当用户查询到相关导游,并且可以能够申请相关导游预定。 3.财务报表输出:管理员可以对当前游客的财务情况进行管理,并能打印出来。 图2.3用户登录数据流图描述了用户进入系统的流程图,管理员,员工在登录系统时在身份验证中输入正确用户名和密码就可通过,游客不需要用户名和密码,直接点击登录将进入系统的成功登录主页。
图2.3 用户登录数据流图
图2.4用户查询数据流图描述了用户进行信息查询的流程图,用户进行信息查询时可选择景点输入的关键字进行查询,就会查询出景点库中所有包括你输入字段的信息,另外用户可以查看所有线路信息。
图2.4 用户查询数据流图
6
计算机学院软件工程课程设计
图2.5用户导游预定数据流图描述了用户查询导游的流程图,已经登录的用户浏览了相关线路资料后,可以选择线路及导游预定,而系统经过简单的逻辑判断信息是否有错后通过消息框的反馈,来确定预定是否成功。
预定信息 用户 登录 P2.2.1 导游查 询 选择 P2.2.2 选择导 游 P2.2.3 提交预定返回预定信息 用 户 导游信息表 图2.5游客导游预定数据流图
2.4数据字典
数据字典是在系统数据流程图的基础上。进一步定义和描述所有的数据流、数据项的详细逻辑内容与特征的工具。数据字典的任务是对于数据流程图中出现的元素的名字都有一个确切的解释。
本系统的数据字典(数据流定义,数据项定义)如表所示:
表2-1数据流定义表
数据流名 游客信息 组成 游客编号+身份证号+姓名+年龄+性别+职业+联系电话+旅游线路+团队开始时间+团队结束时间 景点编号+景点名称+景点所在地+景点特色 用户名+密码 用户名+密码 编号+名称+性别+年龄+特长+工作经验+景点编号+景点名称 导游编号+游客所交费+组团人数+利润+杂费
景点信息 员工信息 管理员信息 导游信息 财务管理 7
计算机学院软件工程课程设计
表2-2 数据项定义表
数据元素名 用户名 姓名 年龄 性别 职业 联系电话 身份证号 景点编号 景点名称 景点特色 编号 线路名称 线路详情 团队人数 费用 利润 类型/长度 Char/6 Char/10 Int Char/4 Char/30 Char/15 Char/18 Char/4 Char/30 Char/80 Char/6 Char/30 Char/80 Int Int Int
8
计算机学院软件工程课程设计
第三章 旅游管理系统总体设计
3.1 数据库设计
3.1.1 数据库设计概述
数据库设计是把现实世界的实体模型与需求转换成数据库的模型的过程,它是建立数据库应用系统的核心问题。数据库及其应用的性能都建立在良好的数据库设计的基础之上,数据库的数据是一切操作的基础,如果数据库设计不好,那么其它一切用于提高数据库性能的方法收效都是有限的。数据库设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。
在关系型数据库中,遵循的规则就是范式,范式是符合某一种级别的关系模式的集合。一般设计数据库遵循第三范式。即:数据库表中不包含已在其他表中包含的非主关键字信息。采用范式减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度。 3.1.2 数据库概念结构设计
概念结构设计是数据库设计的核心。概念结构独立于数据库的逻辑结构,也独立于所使用的具体的数据库管理系统。
E-R模型的组成元素有:实体、属性、联系。E-R模型用E-R图来表示。实体是用户工作环境中所涉及的事物,属性是对实体特征的描述。本系统主要E-R图如图3.1。
图3.1系统用户及管理员ER图
9
计算机学院软件工程课程设计
概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充。它从用户的观点出发对信息进行建模,主要用于数据库的概念设计。通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。换句话说,就是先将现实世界中的客观对象抽象为实体(Entity)和联系 (Relationship),它并不依赖于具体的计算机系统或某个DBMS系统,这种模型就是我们所说的CDM;然后再将CDM转换为计算机上某个 DBMS所支持的数据模型,这样的模型就是物理数据模型,即PDM。
CDM是一组严格定义的模型元素集合,这些模型元素精确地描述了系统的静态特性、动态特性以及完整性约束条件等,其中包括了数据结构、数据操作和完整性约束三部分。 (1)数据结构表达为实体和属性;
(2)数据操作表达为实体中的记录的插入、删除、修改、查询等操作;
(3)完整性约束表达为数据的自身完整性约束(如数据类型、检查、规则等)和数据间的参照完整性约束(如联系、继承联系等);由此可得本设计数据库设计CDM图如下图所示:
图3.2 数据库设计CDM图
3.1.3 数据库逻辑结构设计
本次设计系统所包括的信息有景点信息、导游信息、线路信息、管理员信息、财务信息等。可将这些信息抽象为下列系统所需要的数据项和数据结构: 1.景点信息表(景点编号,名称,所在地,特色)
2.导游信息表(导游编号,名称,性别,年龄,特长,工作经验)
3.游客信息表(游客编号,姓名,身份证号,性别,年龄,职业,联系电话) 4.管理员信息表(用户名, 密码)
10
计算机学院软件工程课程设计
5.财务管理表(编号,所交费用,杂费,组团人数,利润) 6.员工信息表(用户名, 密码) 注:带下划线表示主键 3.1.4 数据库的物理结构设计
物理数据模型(Physical Data Model):简称物理模型,是面向计算机物理表示的模型,描述了数据在储存介质上的组织结构,不但与具体的DBMS有关,而且还与操作系统和硬件有关。每一种逻辑数据模型在实现时都对应的物理数据模型。DBMS为了保证其独立性与可移植性,大部分物理数据模型实现工作由系统自动完成,而设计者只设计索引、聚集等特殊结构,由上面图3.2数据库设计CDM图可以得到PDM图如下:
图3.3 数据库设计PDM图
经过上述步骤的设计,可以得到如下数据库信息表:
表3-1游客信息表
字段名称 游客编号 姓名 性别 身份证号 年龄 职业 联系电话
数据类型 Char Char Char Char Int Char Char 长度 6 10 4 18 30 15 是否为空 否 否 否 否 否 否 说明 主键 11
计算机学院软件工程课程设计
表3-2管理员信息表
字段名称 用户名 密码 数据类型 Char Char 长度 6 20 是否为空 否 否 说明 主键 表 3-3导游信息表
字段名称 导游编号 导游名称 导游年龄 导游性别 特长 工作经验 数据类型 Char Char Char Char Char Char 长度 4 30 30 4 30 30 是否为空 否 否 否 否 说明 主键 表3-4景点信息表
字段名称 景点编号 景点名称 所在地 特色 数据类型 Char Char Char Char 长度 4 30 80 30 是否为空 否 否 否 否 说明 主键 表3-5员工信息表
字段名称 用户名 密码
数据类型 Char Char 长度 6 20 是否为空 否 否 说明 主键 12
计算机学院软件工程课程设计 表3-6财务报表信息表
字段名称 数据类型 Char Int Int Char Char 长度 4 30 30 30 30 是否为空 否 否 否 否 说明 主键 编号 所交费用 杂费 组团人数 利润 3.1.5 数据库安全性和完整性
数据库的完整性是指数据的正确性和相容性。数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件——完整性约束条件,数据的约束条件是语义的体现,将作为模式的一部分存入数据库中。本系统中定义了表与表之间的联系及表中各字段属性约束有助于实现有助于完整性。
数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。在数据库系统中,大量的数据集中存放,而且为许多用户直接共享,是宝贵的信息资源,系统的安全保护措施就显得更为重要,它可以保护数据库防止恶意的破坏和非法的存取。在系统中,用户通过运行进入系统首页后,必须经过登录,方可对本站景点进行浏览、查看、查询等操作。用户登录的用户名是唯一的,密码通过加密。在用户登录,必须输入用户名和密码,并通过数据库的验证,同时对用户的权限进行验证,防止非法用户和未授权用户对本系统进行非法访问和操作,保证本系统的安全。
3.2系统总体设计
系统总体设计阶段的基本目的是用比较抽象概括的方式确定系统如何完成预定的
任务,也就是说,应该确定系统的物理配置方案,并且进行确定组成系统的每个程序的结构。通过这个阶段的工作将划分出组成系统的物理元素——程序,数据库,文档等等。总体设计阶段的另一项重要任务是设计系统的结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。
绘制系统结构图的过程,实际上就是对系统功能模块进行分解设计的过程,即合理地将数据流程图转变为所需要的系统结构图。
13
计算机学院软件工程课程设计
3.2.1系统功能模块设计
根据需求分析的结果,按照“低耦合、高内聚”的原则,本系统将划分为以下主要功能模块:管理员登录模块;员工登录模块;游客登录模块,功能模块图如图3.4所示:
1.管理模块:实现主要功能包括旅游信息的管理,景点管理,导游信息管理,游客信息管理,以及管理员对自己相关信息进行管理。
(1) 旅游信息的管理。管理员可以对已经登记的游客的具体信息、旅游线路、所带导游,团队人数等进行管理。
(2) 景点管理。管理员可以对每个景点的信息,包括景点名称,所在地,特色等进行管理。
(3) 导游信息管理。管理员可以对所有导游的综合信息进行管理。 (4)游客信息管理。管理员对所有登记的游客信息进行管理。
图3.4 系统功能模块图
14
计算机学院软件工程课程设计
2. 信息查询模块,该模块主要是方便用户对本站景点进行相关查询,并返回查询结果。用户可根据自己不同的需要,系统根据用户选择不同关键字进行相关查询,得到用户查询的信息。
按选择的类型和输入的关键字进行查询,就会查询出景点库中与输入字段完全匹配的景点信息。
3. 财务管理,管理员可以对所有游客的财务进行管理,包括游客所交费用,所花费用,以及所获利润等,同时还可以将所有的财务报表打印出来,包括旅客人员表,导游信息表,景点信息表,财务表。 3.2.2系统输入输出设计
旅游管理系统的输入界面主要包括用户登录,信息查询,信息更新和游客登记等,输入设计的内容包括以下几点:
1.输入数据的内容设计,包括确定输入数据项名称、数据内容、精度、数值范围。例如,在用户登录中,用户输入的数据包括用户名,密码,不能为空。
2.确定数据输入方式,用户登录,信息查询,信息更新和在游客登记等输入操作,都是在运行界面上完成,并立即更新服务器端数据库。
3.输入数据的正确性校验,保证输入数据的正确性。例如在用户登录时,必须校验用户名和密码,只有在二都正确的情况下才能正确登录.
旅游管理系统系统的输出界面主要包括景点信息,查询结果,财务报表等,输出设计的内容包括以下几点:
1.确定输出的内容。用户是信息的主要使用者,在进行输出内容的设计时,首先要确定用户在使用信息方面的要求,根据用户的要求,设计输出信息的内容,输出的项目及数据结构、数据类型、位数及取值范围,数据生成途径,完整性及一致性的考虑。
2 .确定输出格式。输出格式设计要满足使用者的要求和习惯,达到格式清晰、美观、易于阅读和理解的要求。在本系统中,输出页面的设计,尽量满足用户的信息需要,并有相关的提示信息。
15
计算机学院软件工程课程设计
第四章 旅游管理系统详细设计与实现
详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统,关键任务是确定怎样具体地实现用户需要的系统,即设计出程序的“蓝图”。除了应该保证系统的可靠性之外,使将来编写出的程序可读性好,容易理解,容易测试,容易修改和维护是详细设计阶段最重要的目标。
4.1 功能模块流程图
1.登录模块流程图:用户在登录界面输入用户名和密码,二者都正确后进入功能主界面,如果不正确就要求重新输入登录,流程图如下所示:
图4.1 用户登录流程图
2.管理员管理流程图:管理员成功登陆后,可以对相关信息进行添加、删除、修改等操作,流程图如下图所示:
图4.2 管理员管理流程图
16
计算机学院软件工程课程设计
3.查询模块流程图:用户进入主界面后可以进行相关查询操作,输入查询条件,如果找到记录则显示出来,若没有找到记录则返回重新输入查询条件,流程图如下图所示:
图4.3 查询模块流程图
4.报表打印:登陆后可以对财务报表进行打印,如果所选择的选项有记录则将其显示出来打印,如果没有记录则返回去重新选择打印项,流程图如下图所示:
图4.4 报表打印流程图
17
计算机学院软件工程课程设计
4.2 人机界面设计
人机界面设计和数据设计、体系结构设计及过程设计一样重要。近年来,人机界面在系统中所占的比例越来越大。人机界面的设计质量,直接影响用户对软件产品的评价,从而影响软件产品的竞争力和寿命,因此,必须对人机界面设计给予足够的重视。
对于一个系统来讲,人机交互界面的好坏,直接影响到系统的性能咨询效果。该系统采用方便简单、形象直观的交互式界面和菜单。
用户登录系统的处理流程图如图4.5所示。
用户进行查询 任务触发 进行查询 查询信息确认 返回结果 界面显示 用 户 图4.5 系统处理流程图
4.3 系统界面设计
一套成功的系统不但是内容和功能的结合,同时在操作界面和表现形式上也是完美的,当用户选择时,特别看重系统的配置界面和系统形象等问题。界面设计不只是懂得高超的艺术设计就可以实现的,还必须有丰富的计算机知识、媒体表示知识和人体工程学知识等。当今系统开发领域中,对于开发人员来说,界面排版和代码编写同等重要
综上所述,软件界面设计愈来愈得到人们的重视,界面的好坏直接影响到系统的外观和易用性。
4.3.1 工程启动主界面设计
1. 执行【工程】【添加窗体】命令,给工程添加一个新窗体,将窗体保存为:启动.frm ,工程启动主界面采用阳光大气的图片作为界面,如下图所示:
18
计算机学院软件工程课程设计
图4.6 工程启动界面图
4.3.2 系统登录选择界面设计
1. 执行【工程】【添加窗体】命令,给工程添加一个新窗体,将窗体保存为:登录2.frm ,系统的登录选择界面用简洁风格的界面,可以清楚看到登录选项。
图4.7系统登录选择界面图
4.3.3 系统登录界面设计
执行【工程】【添加窗体】命令,给工程添加一个新窗体,将窗体保存为:登录.frm 。管理员的登录界面如下图所示:
图4.8管理员登录界面图
19
计算机学院软件工程课程设计
4.3.4 管理员登录后界面设计
执行【工程】【添加窗体】命令,给工程添加一个新窗体,将窗体保存为管理员总控.frm ,管理员管理功能界面分为三大块,分别为管理模块,查询模块,财务报表模块,如下图所示:
图4.9 管理员管理功能界面图
4.3.5 景点管理界面设计
执行【工程】【添加窗体】命令,给工程添加一个新窗体,将窗体保存为景点管理.frm ,用户可以通过点击景点管理来查询各个景点的信息,如下图所示:
图4.10景点信息管理页面图
4.3.6 导游管理界面设计
执行【工程】【添加窗体】命令,给工程添加一个新窗体,将窗体保存为:导游管理.frm ,管理员可以点击导游信息管理对导游的信息进行管理,如下图所示:
20
计算机学院软件工程课程设计
图4.11导游管理界面图
4.3.7 管理员查询界面
执行【工程】【添加窗体】命令,给工程添加一个新窗体,将窗体保存为:游客与景点.frm ,管理员登录后可以进行相关查询操作,如旅客与景点查询如下图所示:
图4.12 管理员登录游客与景点查询图
4.3.8 管理员财务管理界面设计
执行【工程】【添加窗体】命令,给工程添加一个新窗体,将窗体保存为财务管理.frm ,管理员登录后可以对相关的财务进行管理,界面如下图所示:
21
计算机学院软件工程课程设计
图4.13 管理员财务管理界面图
4.3.9 管理员报表打印界面设计
执行【工程】【添加窗体】命令,给工程添加一个新窗体,将窗体保存为:报表打印.frm ,管理员登录后可以对报表进行打印操作,界面如下图所示:
图 4.14 管理员报表打印界面图
4.3.10员工登录后界面设计
执行【工程】【添加窗体】命令,给工程添加一个新窗体,将窗体保存为:员工总控.frm ,员工登录时需输入用户名和密码,通过系统验证(包括用户名和密码的验证)成功后方可进行相关操作,然后进入到如下界面:
图4.15 员工登录后界面图
22
计算机学院软件工程课程设计
图4.16 员工景点与导游查询图
4.3.11 游客登录后界面
执行【工程】【添加窗体】命令,给工程添加一个新窗体,将窗体保存为:游客总控.frm ,游客登录时不需输入用户名和密码,点击登录就可进入到相关操作界面,界面如下图所示:
图4.17 游客登录后界面图
图4.18 游客查询导游与景点界面图
23
计算机学院软件工程课程设计
第五章 旅游管理系统测试
在开发软件系统的过程中,需要面对错综复杂的问题,因此,在软件生存周期的每个阶段都不可避免地会产生错误。测试目的在于:测试是指“用意在发现错误而执行一个程序的过程”;一个好的测试用例是指这个测试用例有很高的概率可以发现一个尚未发现的错误;一个成功的测试是指它成功地发现一个尚未发现的错误。
5.1 系统测试
本系统的测试和纠错信息流程如图5.1所示。
测试数据 期望结果 测试 程序 测试结果 评价 错误信息 纠错 改正信息
图5.1 测试和纠错信息流程图
本次测试采用黑盒测试的方法,黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试主要针对软件界面和软件功能进行测试。
黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的黑盒测试法注重于测试软件的功能需求,主要试图发现下列几类错误:功能不正确或遗漏;界面错误;数据库访问错误;性能错误初始化和终止错误等。
5.2 单元测试用例
1.“用户登录”测试
24
计算机学院软件工程课程设计
表5-1 用户登录测试表
测试要点 用户名、密码 用户名、密码 测试路径 测试结果 用户名为假、密码为假;输入提示“用户名或密码错误”用户名“hddh”;密码“123456” 并返回重新登录 用户名为真、密码为假;输入:提示“用户名或密码错误”用户名“123”; 密码“123456” 并返回重新登录 用户名为真、密码为真;输入:跳转到用管理员界面 用户名“123”;密码“123” 用户名、密码 测试界面入下图所示:
图5.2 登录测试用户名错误图
图5.3 登录测试密码错误图
25
计算机学院软件工程课程设计
图5.4 登录测试成功图
2.导游查询测试
表5-2 导游查询测试表
测试要点 编号 编号 编号 测试路径 关键字为空 测试结果 显示为所有的导游带领的游客信息。 关键字为假,输入“10” 返回查询结果:数据显示的是空。 关键字为真,输入“1” 返回的是1号导游所带领的游客信息。 测试界面如下图所示:
图5.5 导游查询测试输入为空图
图5.6输入编号为10时导游查询图
26
计算机学院软件工程课程设计
图5.7输入编号为1时导游查询图
以上测试结果基本上达到预期目标,只有在导游查询时,如果输入的导游编号为空,那么显示的应该是空信息,但是测试时显示的却是所有导游带领的游客信息,所以在这个查询时还是有待改正的。
5.3 综合测试
在以上测试的基础上,对系统功能进行了整体测试,依次检验系统功能是否符合系统开发的目标。经过使用大量的数据多次进行系统测试,发现系统存在的问题并及时改进,最终实现了系统的开发目标。
5.4 测试分析报告
测试结果与预期结果有一定的偏差。例如,在导游查询时,如果输入的导游编号为空,那么显示的应该是空信息,但是测试时显示的却是所有导游带领的游客信息,所以在这个查询时还是有待改正的。还有就是对系统的功能考虑的不是太完善,系统中对导游信息、景点信息、财务信息的管理还需要跳转到不同的页面去进行,不能很好的统一,没能形成一个整体。系统本身的设计也不够成熟,对于一些问题不能很好的解决,容易出现偶然错误。 局限性:
由于我们所具备的相关知识及技术的欠缺,使模块无法完全实现预期的功能。在测试过程中发现的系统错误必须及时改正,为了改正错误往往需要修正原来的设计,则必须通盘考虑统筹兼顾,以尽量避免在调试过程中引进新错误。
27
计算机学院软件工程课程设计
结束语
软件工程课程设计紧张而有序的结束了,有成果亦有失败。在此期间,我查阅了许多相关资料,浏览了许多相关报告,思索过,跟别人探讨过。一路走来,才真切的体会到知识的积累是在不断运用中提高的,所学的知识只有相辅相成,融会贯通才能发挥其最大作用。
本次课程设计是我大学生活中忙碌而又充实一段时光。这里有治学严谨而又亲切的老师,有互相帮助的同学,更有积极、向上、融洽的学习生活氛围。短短时间里,我学到了很多的东西。不仅学到就更多的理论知识,扩展了知识面,提高了自己的实际操作能力;而且学会了如何去学习新的知识,学会了面对困难和挑战,学会了团结合作,互助互利。在此,向给我帮助、关心、支持我的老师、朋友、同学,表达我最真诚的谢意。
旅游管理系统基本开发完成。功能基本达到要求。能够实现各类信息的查询、添加、删除以及财务报表的输出等操作。虽然系统已经可以运行,但由于能力有限,所以该系统还有许多不尽如人意之处,这些都有待本人能力的提高和对系统的改善。
总之,在以后的学习、工作、生活中我将更加努力,用自己的行动回报社会、学校、老师及同学。
28
计算机学院软件工程课程设计
参考文献
[1] 张海藩 软件工程导论. 北京:清华大学出版社. 2008年 [2] 萨师煊,王珊.数据库系统概论. 北京:高等教育出版社.2006年 [3] 戴斌.旅行社经营管理. 北京: 旅游教育出版社.2005年
[5]肖姨,张艳叉.中文Access2002数据库开发指南.北京:冶金工业出版社.2002年
29
计算机学院软件工程课程设计
附 录
程序核心源代码
1.数据库连接相关操作代码
Private Sub Connection1_InfoMessage(ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pConnection As ADODB.Connection) End Sub
Private Sub DataEnvironment_Initialize()
'根据目录所在的位置,改变ADO所使用的的连接字符串 Dim strConn As String
strConn = \"Provider=Microsoft.Jet.OLEDB.4.0;Password=;Data Source=\"
strConn = strConn & App.Path & \"\\旅游管理系统——数据库.mdb\" & \";Persist Security Info=false\" Connection1.ConnectionString = strConn End Sub
Private Sub rsCommand1_WillChangeField(ByVal cFields As Long, ByVal Fields As Variant, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) End Sub
Private Sub rsCommand2_WillChangeField(ByVal cFields As Long, ByVal Fields As Variant, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) End Sub
Private Sub rsCommand3_WillChangeField(ByVal cFields As Long, ByVal Fields As Variant, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) End Sub
Private Sub rsCommand4_WillChangeField(ByVal cFields As Long, ByVal Fields As Variant, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) End Sub
2.启动界面代码:
Private Sub Form_Load() Me.Height = 8910 Me.Width = 11100 Me.Left = 2115 Me.Top = 1380 End Sub
Private Sub Label1_Click() Unload Me 登录.Show End Sub
Private Sub Label2_Click() Unload Me 登录.Show End Sub
30
计算机学院软件工程课程设计
Private Sub Label2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Label1.Visible = True End Sub
Private Sub Label3_Click() Unload Me 登录.Show End Sub
Private Sub Label3_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Label2.Visible = True End Sub
3.登录界面代码:
Option Explicit
Public txtsql As String Public username As String Private Sub Form_Load() txtid.Text = \"\" txtpas.Text = \"\" End Sub '启动拖放
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) moveit = True cx = X: cy = Y End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If moveit = True Then
'调用函数获得鼠标位置,未知信息存放在变量zb中 GetCursorPos zb
Me.Move zb.X * 15 - cx - 65, zb.Y * 15 - cy - 350 End If End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) moveit = False End Sub
Private Sub Form_Unload(Cancel As Integer) Unload Me End Sub
Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) '启动拖放 moveit = True cx = X: cy = Y End Sub
31
计算机学院软件工程课程设计
Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If moveit = True Then
'调用函数获得鼠标位置,未知信息存放在变量zb中 GetCursorPos zb
Me.Move zb.X * 15 - cx - 65, zb.Y * 15 - cy - 350 End If End Sub
Private Sub Image1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) '停止拖放 moveit = False End Sub
Private Sub Image3_Click() txtid.Text = \"\" txtpas.Text = \"\" End Sub
Private Sub Image5_Click() End End Sub
Private Sub Label4_Click()
'查找数据库中是否有相同名称的用户
txtsql = \"select username from 用户权限表 where username='\" & Trim(txtid.Text) & \"'\" Adodc1.CommandType = adCmdText Adodc1.RecordSource = txtsql Adodc1.Refresh
If Adodc1.Recordset.EOF = True Then '如果当前记录位置位于Recordset对象的最后一个记录之后
MsgBox \" 用户名错误!\警告\" txtid.Text = \"\" txtid.SetFocus Else
'查找数据库中是否有相同密码的用户
txtsql = \"select username from 用户权限表 where password='\" & Trim(txtpas.Text) & \"'\" Adodc1.CommandType = adCmdText Adodc1.RecordSource = txtsql Adodc1.Refresh '记录是否为空
If Adodc1.Recordset.EOF = True Then '如果当前记录位置位于Recordset对象的最后一个记录之后
MsgBox \" 密码错误!\警告\" txtpas.Text = \"\" txtpas.SetFocus Else
管理员总控.Show
32
计算机学院软件工程课程设计
Unload Me End If End If End Sub
Private Sub Label5_Click() txtid.Text = \"\" txtpas.Text = \"\" End Sub
Private Sub Label6_Click() End End Sub
4.管理员功能界面代码:Private Sub Form_Load() Me.Height = 8910 Me.Width = 11100 Me.Left = 2115 Me.Top = 1380 End Sub
Private Sub Image10_Click() 游客与景点.Show End Sub
Private Sub Image11_Click() Me.Hide
财务管理.Show End Sub
Private Sub Image12_Click() 报表打印.Show End Sub
Private Sub Image13_Click() 登录.Show: Me.Hide End Sub
Private Sub Image2_Click() 旅游信息管理.Show End Sub
Private Sub Image3_Click() 景点管理.Show End Sub
Private Sub Image4_Click() 导游管理.Show End Sub
Private Sub Image5_Click()
33
计算机学院软件工程课程设计
游客管理.Show End Sub
Private Sub Image6_Click() 景点与导游.Show End Sub
Private Sub Image7_Click() 导游与景点.Show End Sub
Private Sub Image8_Click() 游客与导游.Show End Sub
Private Sub Image9_Click() 景点与游客.Show End Sub
Private Sub Label1_Click() 旅游信息管理.Show End Sub
Private Sub Label10_Click() Me.Hide
财务管理.Show End Sub
Private Sub Label11_Click() 报表打印.Show End Sub
Private Sub Label12_Click() 登录.Show: Me.Hide End Sub
Private Sub Label2_Click() 景点管理.Show End Sub
Private Sub Label3_Click() 导游管理.Show End Sub
Private Sub Label4_Click() 游客管理.Show End Sub
Private Sub Label5_Click() 景点与导游.Show End Sub
Private Sub Label6_Click() 导游与景点.Show End Sub
Private Sub Label7_Click()
34
计算机学院软件工程课程设计
游客与导游.Show End Sub
Private Sub Label8_Click() 景点与游客.Show End Sub
Private Sub Label9_Click() 游客与景点.Show End Sub
5.员工总控代码:
Private Sub Form_Load() Me.Height = 8910 Me.Width = 11100 Me.Left = 2115 Me.Top = 1380 End Sub
Private Sub Image1_Click() 景点与导游.Show End Sub
Private Sub Image10_Click() 登录.Show: Me.Hide End Sub
Private Sub Image4_Click() 导游与景点.Show End Sub
Private Sub Image5_Click() 游客与导游.Show End Sub
Private Sub Image6_Click() 景点与游客.Show End Sub
Private Sub Image7_Click() 游客与景点.Show End Sub
Private Sub Image8_Click() 导游管理.Show End Sub
Private Sub Label1_Click() 景点与导游.Show End Sub
Private Sub Label2_Click() 导游与景点.Show End Sub
35
计算机学院软件工程课程设计
Private Sub Label3_Click() 游客与导游.Show End Sub
Private Sub Label4_Click() 景点与游客.Show End Sub
Private Sub Label5_Click() 游客与景点.Show End Sub
Private Sub Label6_Click() 导游管理.Show End Sub
Private Sub Label7_Click() 登录.Show: Me.Hide End Sub
Private Sub Label8_Click() 游客管理.Show End Sub
6.游客总控代码:
Private Sub Form_Load() Me.Height = 8910 Me.Width = 11100 Me.Left = 2115 Me.Top = 1380 End Sub
Private Sub Image2_Click() 景点与导游.Show End Sub
Private Sub Image3_Click() 游客与景点.Show End Sub
Private Sub Image4_Click() 导游与景点.Show End Sub
Private Sub Image5_Click() 景点与游客.Show End Sub
Private Sub Image6_Click() 游客与导游.Show End Sub
Private Sub Image9_Click() 登录.Show: Me.Hide
36
计算机学院软件工程课程设计
End Sub
Private Sub Label1_Click() 景点与游客.Show End Sub
Private Sub Label2_Click() 游客与景点.Show End Sub
Private Sub Label3_Click() 导游与景点.Show End Sub
Private Sub Label4_Click() 游客与导游.Show End Sub
Private Sub Label5_Click() 景点与导游.Show End Sub
Private Sub Label6_Click() 登录.Show: Me.Hide End Sub
7.财务报表代码:
Option Explicit '强制定义变量 Dim strsql As String
Private Sub Combo1_Click() '根据个人费用查询相关记录
If Combo1.Text = \"2000元以下\" Then
strsql = \"select * from 报价表 where 人均费用 < 2000\"
Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh End If
If Combo1.Text = \"2000元—2999元\" Then
strsql = \"select * from 报价表 where 人均费用 between 2000 and 2999\" Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh End If
If Combo1.Text = \"3000元—3999元\" Then
strsql = \"select * from 报价表 where 人均费用 between 3000 and 3999\" Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh End If
37
计算机学院软件工程课程设计
If Combo1.Text = \"4000元—4999元\" Then
strsql = \"select * from 报价表 where 人均费用 between 4000 and 4999\" Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh End If
If Combo1.Text = \"5000元以上\" Then
strsql = \"select * from 报价表 where 人均费用 >= 5000\" Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh End If End Sub
Private Sub Combo2_Click() '根据所得利润查询相关记录
If Combo2.Text = \"5000元以下\" Then
strsql = \"select * from 财务表 where 利润 < 5000\"
Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh End If
If Combo2.Text = \"5000元—9999元\" Then
strsql = \"select * from 财务表 where 利润 between 5000 and 9999\" Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh End If
If Combo2.Text = \"10000元—14999元\" Then
strsql = \"select * from 财务表 where 利润 between 10000 and 14999\" Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh End If
If Combo2.Text = \"15000元—19999元\" Then
strsql = \"select * from 财务表 where 利润 between 15000 and 19999\" Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh End If
If Combo2.Text = \"20000元—24999元\" Then
strsql = \"select * from 财务表 where 利润 between 20000 and 24999\" Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql
38
计算机学院软件工程课程设计
Adodc1.Refresh End If
If Combo2.Text = \"25000元以上\" Then
strsql = \"select * from 财务表 where 利润 >= 25000\"
Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh End If End Sub
Private Sub Form_Load()
Combo1.AddItem \"2000元以下\
Combo1.AddItem \"2000元—2999元\Combo1.AddItem \"3000元—3999元\Combo1.AddItem \"4000元—4999元\Combo1.AddItem \"5000元以上\Combo2.AddItem \"5000元以下\
Combo2.AddItem \"5000元—9999元\Combo2.AddItem \"10000元—14999元\Combo2.AddItem \"15000元—19999元\Combo2.AddItem \"20000元—24999元\Combo2.AddItem \"25000元以上\'窗体加载时datagrid的属性 DataGrid1.AllowAddNew = False DataGrid1.AllowDelete = False DataGrid1.AllowUpdate = False '窗体加载时的位置 Me.Height = 8910 Me.Width = 11100 Me.Left = 2115 Me.Top = 1380 End Sub
Private Sub Image11_Click() '关闭当前窗体,显示新窗体 Me.Hide: 管理员总控.Show End Sub
Private Sub Image2_Click() '根据景点编号查询相关记录 If Text1.Text <> \"\" Then
strsql = \"select * from 报价表 where 景点编号='\" & Trim(Text1.Text) & \"'\" Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh
39
计算机学院软件工程课程设计
Text1.Text = \"\" Text1.SetFocus Else
MsgBox \" 请输入景点编号!\警告\" Text1.Text = \"\" End If End Sub
Private Sub Image3_Click() '根据导游编号查询相关记录 If Text2.Text <> \"\" Then
strsql = \"select * from 财务表 where 导游编号='\" & Trim(Text2.Text) & \"'\" Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh Text2.Text = \"\" Text2.SetFocus Else
MsgBox \" 请输入景点编号!\警告\" Text2.Text = \"\" End If End Sub
Private Sub Label2_Click() '添加记录
DataGrid1.AllowUpdate = True '允许更新 Adodc1.Recordset.AddNew '允许添加 End Sub
Private Sub Label3_Click() '删除记录
DataGrid1.AllowUpdate = True '允许更新 Adodc1.Recordset.Delete '允许删除 End Sub
Private Sub Label4_Click() '修改记录
DataGrid1.AllowUpdate = True '允许更新 End Sub
Private Sub Label5_Click() '确定后不允许更新记录
Adodc1.Recordset.Update '更新数据库
DataGrid1.AllowUpdate = False '不允许改变datagrid End Sub
Private Sub Label6_Click() '关闭当前窗体,显示新窗体 Me.Hide: 管理员总控.Show
40
计算机学院软件工程课程设计
End Sub
Private Sub opt1_Click() If opt1.Enabled = True Then Frame3.Enabled = True Frame4.Enabled = False opt3.Enabled = True opt4.Enabled = True opt5.Enabled = False opt6.Enabled = False End If
'指定datagrid显示的内容 strsql = \"select * from 报价表 \"
Adodc1.CommandType = adCmdText Adodc1.RecordSource = strsql Adodc1.Refresh End Sub
Private Sub opt2_Click() If opt2.Enabled = True Then Frame3.Enabled = False Frame4.Enabled = True opt5.Enabled = True opt6.Enabled = True opt3.Enabled = False opt4.Enabled = False End If
'指定datagrid显示的内容 strsql = \"select * from 财务表 \"
Adodc1.CommandType = adCmdText Adodc1.RecordSource = strsql Adodc1.Refresh End Sub
Private Sub opt3_Click() '指定datagrid显示的内容
strsql = \"select * from 报价表 \"
Adodc1.CommandType = adCmdText Adodc1.RecordSource = strsql Adodc1.Refresh
If opt3.Enabled = True Then l1.Enabled = True l2.Enabled = False Text1.Enabled = True Combo1.Enabled = False Image2.Enabled = True
'更新记录源 '更新记录源 '更新记录源 41
计算机学院软件工程课程设计
End If End Sub
Private Sub opt4_Click() '指定datagrid显示的内容
strsql = \"select * from 报价表 \"
Adodc1.CommandType = adCmdText '更新记录源 Adodc1.RecordSource = strsql Adodc1.Refresh
If opt4.Enabled = True Then l2.Enabled = True l1.Enabled = False Text1.Enabled = False Combo1.Enabled = True Image2.Enabled = False End If End Sub
Private Sub opt5_Click() If opt5.Enabled = True Then l3.Enabled = True l4.Enabled = False Text2.Enabled = True Combo2.Enabled = False Image3.Enabled = True End If End Sub
Private Sub opt6_Click() If opt6.Enabled = True Then l4.Enabled = True l3.Enabled = False Text2.Enabled = False Combo2.Enabled = True Image3.Enabled = False End If End Sub
8.报表打印代码:
Private Sub Form_Load() '窗体加载时的位置 Me.Height = 8910 Me.Width = 11100 Me.Left = 2115 Me.Top = 1380 End Sub
42
计算机学院软件工程课程设计
Private Sub Image2_Click() DataReport1.Show End Sub
Private Sub Image3_Click() DataReport3.Show End Sub
Private Sub Image4_Click() DataReport4.Show End Sub
Private Sub Image5_Click() DataReport2.Show End Sub
Private Sub Image6_Click() Unload Me End Sub
Private Sub Label1_Click() DataReport1.Show End Sub
Private Sub Label2_Click() DataReport2.Show End Sub
Private Sub Label3_Click() DataReport3.Show End Sub
Private Sub Label4_Click() DataReport4.Show End Sub
43
因篇幅问题不能全部显示,请点此查看更多更全内容