




已阅读5页,还剩52页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
航空公司管理信息系统 一个正常营运的航空公司需要管理所拥有的飞机、航线的设置、客户的信息等,更重要的还要提供票务管理。面对各种不同种类的信息,需要合理的数据库结构来保存数据信息以及有效的程序结构支持各种数据操作的执行。 本设计讲述如何建立一个航空公司管理信息系统。一般而言,航空公司的管理信息系统应该包括人事、工资管理模块 。 1 系统设计 统功能分析 系统开发的总体任务是实现各种信息的系统化、规范化和自动化。 系统功能分析是在系统开发的总体任务的基础上完成。本例子中的航空公司管理信息系统需要完成功 能主要有: 舱位信息的输入和修改,包括舱位等级编号、舱位等级名称、提供的各种服务类别,以及备注信息等。 客机信息的输入、修改和查询,包括客机编号、客机型号、购买时间、服役时间、经济舱座位数量、公务舱座位数量、头等舱座位数量以及备注信息等。 航线信息的输入、修改和查询,包括航线编号、出发城市、到达城市、航班日期、出发时间、到达时间、客机编号、经济舱价格、公务舱价格、头等舱价格和备注信息等。 客户等级信息的输入、修改,包括客户等级编号、客户等级名称、折扣比例和备注信息等。 客户信息的输入、修改和查询,包括客户编 号、客户姓名、客户性别、身份证号码、联系电话、客户类型和备注信息等。 订票信息的输入、查询和修改,包括订票编号、客户编号、客户姓名、客户类型、折扣比例、航线编号、出发城市、到达城市、出发时间、舱位类型、票价、结算金额和备注信息等。 统功能模块设计 对上述各项功能进行集中、分块,按照结构化程序设计的要求,得到如图 9示的系统功能模块图。 图 9统功能模块图 2 数据库设计 数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合 理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。 设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。数据库设计一般包括如下几个步骤: 数据库需要分析。 数据库概念结构设计。 数据库逻辑结构设计。 据库需求分析 用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详 尽的数据字典,为后面的具体设计打下基础。 仔细分析调查有关航空公司管理信息需求的基础 上,将得到如图 9示的本系统所处理的数据流程。 ,计算机范文网 9空公司管理信息系统数据流程图 针对一般航空公司管理信息系统的需求,通过对航空公司管理工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构: 舱位等级信息,包括的数据项有:舱位等级编号、舱位等级名称、是否有礼品、是否有报纸、是否有饮料、是否有午餐、是否有电影、是否可以改签、是否可以退票、是否可以打折、备注信息等。 客机信息,包括的数据项有:客机编号、客机型号、购买时间、服役时间、经济舱座位 数量、公务舱座位数量、头等舱座位数量、备注信息等。 航线信息,包括的数据项有:航线编号、出发城市、到达城市、航班日期、出发时间、到达时间、客机编号、经济舱价格、公务舱价格、头等舱价格、备注信息等。 客户类型信息,包括的数据项有:客户类型编号、客户类型名称、折扣比例、备注信息等。 客户信息,包括的数据项有:客户编号、客户姓名、客户性别、身份证号码、联系电话、客户类型、备注信息等。 订票信息,包括的数据项有:订票编号、顾客编号、顾客姓名、顾客类型、折扣比例、航线编号、出发城市、到达城市、舱位类型、机票价格、结算 金额、备注信息 等。 有了上面的数据结构、数据项和数据流程,我们就能进行下面的数据库设计。 据库概念结构设计 得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。 本实例根据上面的设计规划出的实体有:舱位等级信息实体、客机信息实体、航线信息实体、客户类型信息实体、客户信息实体、订票信息实体。各个实体具体的描述 如下。 舱位等级信息实体 如图 9示。 图 9位等级信息实体 客机信息实体 如图 9示。 图 9机信息实体 航线信息实体 如图 9示。 图 9线信息实体 客户类型信息实体 如图 9示。 图 9户类型信息实体 客户信息实体 如图 9示。 图 9户信息实体 订票信息实体 如图 9示。 图 9票信息实体 实体之间关系的 如图 9示。 图 9体之间关系的 据库逻辑结 构设计 现在需要将上面的数据库概念结构转化为 000 数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。 航空公司管理信息系统数据库中各个表格的设计结果如下面表格所示。每个表格表示在数据库中的一个表。表 9供应商信息表。 表 9 位等级信息表 列 名 数据类型 可否为空 说 明 位等级编号 位等 级名称 否有礼物 否有报纸 否有饮料 否有午餐 否有电影 否可以改签 否可以退票 否可以打折 注信息 表 9顾客 信息表格。 表 9 机信息表格 列 名 数据类型 可否为空 说 明 机编号 机型号 买日期 役日期 济舱座位数量 务舱座位数量 等舱座位数量 注信息 表 9 表 9 列 名 数据类型 可否为空 说 明 线编号 发城市 达城市 班日期 发时间 达时间 机编号 济舱价格 务舱价格 等舱价格 注信息 表 9客户类型信息表格。 表 9 户 类型信息表 列 名 数据类型 可否为空 说 明 户类型编号 户类型名称 扣比例 续表 列 名 数据类型 可否为空 说 明 注 表 9客户信息表格。 表 9 户信息表 列 名 数据类型 可否为空 说 明 户编号 户姓名 户性别 份证号码 户联系电话 户类型 注 表 9订票信息表格。 表 9 票信息表 列 名 数据类型 可否为空 说 明 票编号 户编号 户姓名 户类型 扣比例 线编号 发城市 达城市 发日期 位类型 票价格 算金额 注 3 数据库结构的实现 经过前面的需求分析和概念结构设计以后,得到数据库的逻辑结构。现在就可以在 000 数据库系统中实现该逻辑结构。这是利用 000 数据库系统中的 询分析器实现的。下面给出创建这些 表格的 句。 建系统用户表 ( (10) (10) (10) ) 建舱位等级信息 表 ( (4) (20) (2) (2) (2) (2) (2) (2) (2) (2) ) 建客机信息表 ( (18) (20) (20) (20) (20) ) 建航线信息表 ( (14) (50) (50) (10) (10) (10) (18) 18, 2) 18, 2) 18, 2) ) 建客户类型信息表 ( (14) (20) 2, 0) ) 建客户信息表 ( (14) (50) (2) (18) (20) (14) ) 建订票信息表 ( (14) (14) (50) (14) 18, 0) (14) (50) (50) (20) 18, 2) 18, 2) ) 4 航空公司管理信息系统主窗体的创建 上面的 句在 000 中查询分析器的执行,将自动产生需要的所有表格。有关数据库结构的所有后台工作已经完成。现在将通过航空公司管理信息系统中各个功能模块的实现,讲解如何使用 编写数据库系统的客户端程序。 建工程项目 动 ,单击 单,在工程模板中选择 自动产生一个 体,属性都是 缺省设置。这里我们删除这个窗体,单击 单,将这个工程项目命名为 建航空公司管理信息系统的主窗体 这个项目我们使用多文档界面,单击工具栏中的 钮,产生一个窗体。在这个窗体上添加所需的控件,窗体和控件的属性设置见表 9建好的窗体如图 9示。 表 9 主窗体及其控件属性设置 控 件 属 性 属性取值 唐航空公司信息管理系统 ) ) ) 9空公司管理信息系统主窗体 在主窗体中加入状态栏控件,可以实时反映系统中的各个状态的变化。状态栏控件需要在通常 的属性窗口中设置一般属性,还需要在其特有的弹出式菜单中进行设置。选中状态栏控件,单击鼠标右键,选中 单,然后设置属性。面板 1 用来显示各种文本信息,面板 2 用来显示当前日期,面板 3 用来显示当前时间。 建主窗体的菜单 在如图 9示的主窗体中,单击鼠标右键,选择弹出式菜单中的 建如图 9示的菜单结构: 图 9窗体中的菜单结构 建公用模块 在 可以用公用模块来存放整个工程项目公用的函数、过程和全局变量等。这样可 以极大地提高代码的效率。在项目资源管理器中为项目添加一个 面就可以开始添加需要的代码了。 由于系统中各个功能模块都将频繁使用数据库中的各种数据,因此需要一个公共的数据操作函数,用以执行各种 句。添加函数 码如下: s _ 执行 句,并返回记录集 对象 声明一个连接 s 声明一个数据集对象 s im 异常处理 用 数产生一个包含各个子串的数组 创建一个连接 打开连接 f _ ) 执行查询语句 ) & _ et _ _ 返回记录集对象 查询到 & _ 条记录 f et 查询错误 : & _ 数中使用了 数,这个函数用来连接数据库,代码如下: _ 返回一个数据库连接 ID= 录入有关信息时,需要回车来进入下一个文本框,这样对软件使用者非常方便。在所有的功能模块都需要这个函数,所以将它放在公用模块中,代码如下: s 判断是否为回车键 13 转换成 f 来保存当前按键, 数用来指定的按键。一旦按下回车键,将返回,下一个控件自动获得输入焦点。 添加全局变量,用来记录各个功能模块的读写状态,代码如下: s 记载舱位等级功能模块的读写状态 s 记载客机信息模块的读写状态 s 记载航线信息模块的读写状态 s 记载客户类型模块的读写状态 s 记载客户信息模块的读写状态 s 记载订票信息模块的读写状态 这些全局变量用来记录是添加状态还是修改状态,赋值 1 为添加,赋值 2 为修改。 由于航空公司管理信息管理系统启动后,需要对用户进行判断。如果登录者是授权用户,将进入系统,否则将停止程序的执行。这个判断需要在系统运行的最初进行,因此将代码放在公用模块中。 5 系统用户管理模块的创建 用户管理模块主要实现: 用户登录。 添加用户。 修改用户密码。 6 舱位信息管理模块的创建 舱位信息管理模块主要实现如下功能: 添加舱位信息。 修改舱位信息。 删除舱位信息。 示舱位信息窗体的创建 选择“航线信息管理 |舱位信息”菜单,将出现如图 9示的窗体。 图 9位等级信息窗体 这个窗体用来显示舱位等级信息,并且可以对各条记录进行操作。在载入窗体时,程序将自动载入所有记录,代码如下: ub 体的 法后面加上 0 或者 1,可以得到不同的窗体显示方式。参数为 0 时,显示的窗体为无模式形式,窗体切换时不需要进行其他操作;参数为 1 时,显示的窗体为有模式形式,窗体切换时必须进行相关操作。 载入窗体时将自动显示各条记录,代码如下: 数 来显示表头,代码如下: i 12 , 1) = 等级编号 , 2) = 机舱等级 , 3) = 是否有礼品 , 4) = 是否有报纸 , 5) = 是否有饮料 , 6) = 是否有午餐 , 7) = 是否提供电影 , 8) = 是否可以改签 , 9) = 是否可以退票 , 10) = 是否可以打折 , 11) = 备注信息 固定表头 1 设置各列的对齐方式 i = 0 1 i) = 0 i 表头项居中 0 0 1 1 4 设置单元大小 ) = 1000 ) = 1000 ) = 2000 ) = 1000 ) = 1000 ) = 1000 ) = 1000 ) = 1000 ) = 1000 ) = 1000 0) = 1000 1) = 1000 1 函数 各条记录加到表格中,并显示出来,代码如下: j im i s 获得数据集 1 判断是否为空 ot 移动到下一行 1 循环 i = 1 To 判断是否为空 i - 1) 根据数据类型显示 i - 1) 1, i) = i - 1) & , 1, i) = i - 1) & f 移动到下一条记录 关闭数据集对象 窗体显示时,可以控制窗体中各个控件按照要求的位置显示。可以在窗体的 件中加入代码,代码如下: 判断当前窗体所处的状态,当前窗体不处于最小化状态并且主窗体不处于最小化状态时进行后面的操作 边界处理 & ) & & ) & If 已经存在相同机舱等级的记录! , 警告 )f 先删除已有记录 & ) & 再加入新记录 or 0 = or 0 2) = 0) = ) 更新数据集内容 关闭数据集内容 f 1 添加记录成功! , 添加记录 0 = or 0 0 ) = 2 e f 改舱位等级信息 在舱位等级信息列表中选择需要修改的记录,然后单击“修改”按钮,将出现如图 9择记录的内容将显示在窗体中,可以进行修改,最后保存修改后的记录。代码如下: ub s 断列表中是否有记录 If 1 改变状态变量 2 记录 选择记录位置 f 0 & 1) & 警 告 , 请首先选择需要修改的记录! f f 除舱位等级信息 在舱位等级信息列表中选择需要删除的记录,然后单击“删除”按钮,将删除当前记录,代码如下: ub s im s im s s 判断信息列表中内容是否为空 If 1 提示信息 真的要删除机舱等级为 & 2) & 的记录吗? , 警告 ) = 记录选择记录位置 删除重复记录 & 1) & 卸载窗体 重新载入记录并显示 f f 客机信息管理模块的创建 客机信息管理模块主要实现如下功能: 添加客机信息。 修改客机信息。 删除客机信息。 查询客机信息。 示客机信息窗体的创建 选择“航线信息管理 |客机信息”菜单,将出现如图 9示的窗体。所有客机信息都将显示出 来。窗体的 件调用 数,将所有记录显示出来。 图 9示客机信息列表窗体 加客机信息窗体的创建 单击客机信息列表中的“添加”按钮,将出现如图 9示的窗体。 图 9加客机信息列表 输入内容完毕,单击“保存”按钮,将首先判断输入内容是否满足要求,然后将记录添加到数据库中,代码如下: ub s im s s 判断输入内容是否为空 0 & ) = 客机编号 客机型号 购买时间 服役时间 经济舱座位数量 公务舱座位数量 头等舱座位数量 不能为空! 警告 f 判断输入内容为数字 4 ) 座位数量 请输入数字!
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论