航空公司管理信息系统_第1页
航空公司管理信息系统_第2页
航空公司管理信息系统_第3页
航空公司管理信息系统_第4页
航空公司管理信息系统_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

航空公司管理信息系统一个正常营运的航空公司需要管理所拥有的飞机、航线的设置、客户的信息等,更重要的还要提供票务管理。面对各种不同种类的信息,需要合理的数据库结构来保存数据信息以及有效的程序结构支持各种数据操作的执行。本设计讲述如何建立一个航空公司管理信息系统。一般而言,航空公司的管理信息系统应该包括人事、工资管理模块。1系统设计1.1系统功能分析系统开发的总体任务是实现各种信息的系统化、规范化和自动化。系统功能分析是在系统开发的总体任务的基础上完成。本例子中的航空公司管理信息系统需要完成功能主要有:舱位信息的输入和修改,包括舱位等级编号、舱位等级名称、提供的各种服务类别,以及备注信息等。客机信息的输入、修改和查询,包括客机编号、客机型号、购买时间、服役时间、经济舱座位数量、公务舱座位数量、头等舱座位数量以及备注信息等。航线信息的输入、修改和查询,包括航线编号、出发城市、到达城市、航班日期、出发时间、到达时间、客机编号、经济舱价格、公务舱价格、头等舱价格和备注信息等。客户等级信息的输入、修改,包括客户等级编号、客户等级名称、折扣比例和备注信息等。客户信息的输入、修改和查询,包括客户编号、客户姓名、客户性别、身份证号码、联系电话、客户类型和备注信息等。订票信息的输入、查询和修改,包括订票编号、客户编号、客户姓名、客户类型、折扣比例、航线编号、出发城市、到达城市、出发时间、舱位类型、票价、结算金额和备注信息等。1.2系统功能模块设计对上述各项功能进行集中、分块,按照结构化程序设计的要求,得到如图9-1所示的系统功能模块图。

订荐息管理..llrT..'...—:'r客户信思管理航统信息管理J-.lr-7;L订荐息管理..llrT..'...—:'r客户信思管理航统信息管理J-.lr-7;L.;._:,.T:客粗信息霸加仔白管J52数据库设计数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。数据库设计一般包括如下几个步骤:数据库需要分析。数据库概念结构设计。数据库逻辑结构设计。2.1数据库需求分析用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。

仔细分析调查有关航空公司管理信息需求的基础上,将得到如图9-2所示的本系统所处理的数据流程。图9-2航空公司管理信息系统数据流程图针对一般航空公司管理信息系统的需求,通过对航空公司管理工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:舱位等级信息,包括的数据项有:舱位等级编号、舱位等级名称、是否有礼品、是否有报纸、是否有饮料、是否有午餐、是否有电影、是否可以改签、是否可以退票、是否可以打折、备注信息等。客机信息,包括的数据项有:客机编号、客机型号、购买时间、服役时间、经济舱座位数量、公务舱座位数量、头等舱座位数量、备注信息等。航线信息,包括的数据项有:航线编号、出发城市、到达城市、航班日期、出发时间、到达时间、客机编号、经济舱价格、公务舱价格、头等舱价格、备注信息等。客户类型信息,包括的数据项有:客户类型编号、客户类型名称、折扣比例、备注信息等。客户信息,包括的数据项有:客户编号、客户姓名、客户性别、身份证号码、联系电话、客户类型、备注信息等。订票信息,包括的数据项有:订票编号、顾客编号、顾客姓名、顾客类型、折扣比例、航线编号、出发城市、到达城市、舱位类型、机票价格、结算金额、备注信息有了上面的数据结构、数据项和数据流程,我们就能进行下面的数据库设计。2.2数据库概念结构设计得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。本实例根据上面的设计规划出的实体有:舱位等级信息实体、客机信息实体、航线信息实体、客户类型信息实体、客户信息实体、订票信息实体。各个实体具体的描述E-R图如下。舱位等级信息实体E-R图如图9-3所示。

图9-6客户类型信息实体E-R图客户信息实体E-R图如图9-7所示。图9-7客户信息实体E-R图订票信息实体E-R图如图9-8所示。

图9-8订票信息实体E-R图实体之间关系的E-R图如图9-9所示。图9-9实体之间关系的E-R图2.3数据库逻辑结构设计现在需要将上面的数据库概念结构转化为SQLServer2000数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。航空公司管理信息系统数据库中各个表格的设计结果如下面表格所示。每个表格表示在数据库中的一个表。表9-1为供应商信息表。

列名数据类型可否为空说明serviceNOcharNOTNULL舱位等级编号serviceNamenvarcharNULL舱位等级名称noPresentcharNULL是否有礼物noNewsPapercharNULL是否有报纸noDrinkcharNULL是否有饮料noFoodcharNULL是否有午餐noMoviecharNULL是否有电影canChangecharNULL是否可以改签canCancelcharNULL是否可以退票canDiscountcharNULL是否可以打折serviceMemotextNULL备注信息表9-2为顾客信息表格。表9-2planeinfo客机信息表格歹1]名数据类型可否为空说明planeNOcharNOTNULL客机编号planeTvpecharNULL客机型号buvDatedatetimeNULL购买日期serveDatedatetimeNULL服役日期isCommonnvarcharNULL经济舱犀位数量isCommercialnvarcharNULL公务舱座位数量isFirstnvarcharNULL头等舱座位数量planeMemotextNULL备注信息表9-3为航线信息表。表9-3airlineinfo航线信息表列名数据类型可否为空说明airlineNOcharNOTNULL航线编号departCitvnvarcharNULL出发城市arrivalCitvnvarcharNULL到达城市departDatecharNULL航班日期departTimecharNULL出发时间arrivalTimecharNULL到达时间planeNOcharNULL客机编号commonPricenumericNULL经济舱价格commercialPricenumericNULL公务舱价格firstPricenumericNULL头等舱价格airlineMemotextNULL备注信息表9-4为客户类型信息表格。表9-4customerTvpe客户类型信息表列名数据类型可否为空说明ctvpeNOcharNOTNULL客户类型编号ctvpeNamecharNULL客户类型名称discountnumericNULL折扣比例表9-1serviceinfo舱位等级信息表

续表列名数据类型可否为空说明ctypeMemotextNULL备注表9-5为客户信息表格。表9-5customerInfo客户信息表列名数据类型可否为空说明customerNOcharNOTNULL客户编号customerNamecharNULL客户姓名customerSexcharNULL客户性别customerIDcharNULL身份证号码customerTelecharNULL客户联系电话customerTypecharNULL客户类型customerMemotextNULL备注表9-6为订票信息表格。表9-6ticketInfo订票信息表列名数据类型可否为空说明ticketNOcharNOTNULL订票编号customerNOcharNULL客户编号customerNamecharNULL客户姓名customerTvpecharNULL客户类型discountnumericNULL折扣比例airlineNOcharNULL航线编号departCitvnvarcharNULL出发城市arrivalCitvnvarcharNULL到达城市ticketDatedatetimeNULL出发日期serviceTvpecharNULL舱位类型ticketPricenumericNULL机票价格ticketSumnumericNULL结算金额customerMemotextNULL备注3数据库结构的实现经过前面的需求分析和概念结构设计以后,得到数据库的逻辑结构。现在就可以在SQLServer2000数据库系统中实现该逻辑结构。这是利用SQLServer2000数据库系统中的SQL查询分析器实现的。下面给出创建这些表格的SQL语句。3.1创建系统用户表CREATETABLE[dbo].[user_Info1]([user_ID][char](10)COLLATEChinese_PRC_CI_ASNOTNULL,[user_PWD][char](10)COLLATEChinese_PRC_CI_ASNULL,[user_Des][char](10)COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]3.2创建舱位等级信息表CREATETABLE[dbo].[serviceInfo]([serviceNO][char](4)COLLATEChinese_PRC_CI_ASNOTNULL,[serviceName][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,[noPresent][char](2)COLLATEChinese_PRC_CI_ASNULL,[noNewsPaper][char](2)COLLATEChinese_PRC_CI_ASNULL,[noDrink][char](2)COLLATEChinese_PRC_CI_ASNULL,[noFood][char](2)COLLATEChinese_PRC_CI_ASNULL,[noMovie][char](2)COLLATEChinese_PRC_CI_ASNULL,[canChange][char](2)COLLATEChinese_PRC_CI_ASNULL,[canCancel][char](2)COLLATEChinese_PRC_CI_ASNULL,[canDiscount][char](2)COLLATEChinese_PRC_CI_ASNULL,[serviceMemo][text]COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]TEXTIMAGE_ON[PRIMARY]3.3创建客机信息表CREATETABLE[dbo].[planeInfo]([planeNO][char](18)COLLATEChinese_PRC_CI_ASNOTNULL,[planeType][char](20)COLLATEChinese_PRC_CI_ASNULL,[buyDate][datetime]NULL,[serveDate][datetime]NULL,[isCommon][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,[isCommercial][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,[isFirst][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,[planeMemo][text]COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]TEXTIMAGE_ON[PRIMARY]3.4创建航线信息表CREATETABLE[dbo].[airlineInfo]([airlineNO][char](14)COLLATEChinese_PRC_CI_ASNOTNULL,[departCity][nvarchar](50)COLLATEChinese_PRC_CI_ASNULL,[arrivalCity][nvarchar](50)COLLATEChinese_PRC_CI_ASNULL,[departDate][char](10)COLLATEChinese_PRC_CI_ASNULL,[departTime][char](10)COLLATEChinese_PRC_CI_ASNULL,[arrivalTime][char](10)COLLATEChinese_PRC_CI_ASNULL,[planeNO][char](18)COLLATEChinese_PRC_CI_ASNULL,[commonPrice][numeric](18,2)NULL,[commercialPrice][numeric](18,2)NULL,[firstPrice][numeric](18,2)NULL,[airlineMemo][text]COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]TEXTIMAGE_ON[PRIMARY]3.5创建客户类型信息表CREATETABLE[dbo].[customerType]([ctypeNO][char](14)COLLATEChinese_PRC_CI_ASNOTNULL,[ctypeName][char](20)COLLATEChinese_PRC_CI_ASNULL,[discount][numeric](2,0)NULL,[ctypeMemo][text]COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]TEXTIMAGE_ON[PRIMARY]3.6创建客户信息表CREATETABLE[dbo].[customerInfo]([customerNO][char](14)COLLATEChinese_PRC_CI_ASNOTNULL,[customerName][char](50)COLLATEChinese_PRC_CI_ASNULL,[customerSex][char](2)COLLATEChinese_PRC_CI_ASNULL,[customerID][char](18)COLLATEChinese_PRC_CI_ASNULL,[customerTele][char](20)COLLATEChinese_PRC_CI_ASNULL,[customerType][char](14)COLLATEChinese_PRC_CI_ASNULL,[customerMemo][text]COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]TEXTIMAGE_ON[PRIMARY]3.7创建订票信息表CREATETABLE[dbo].[ticketInfo]([ticketNO][char](14)COLLATEChinese_PRC_CI_ASNOTNULL,[customerNO][char](14)COLLATEChinese_PRC_CI_ASNULL,[customerName][char](50)COLLATEChinese_PRC_CI_ASNULL,[customerType][char](14)COLLATEChinese_PRC_CI_ASNULL,[discount][numeric](18,0)NULL,[airlineNO][char](14)COLLATEChinese_PRC_CI_ASNULL,[departCity][nvarchar](50)COLLATEChinese_PRC_CI_ASNULL,[arrivalCity][nvarchar](50)COLLATEChinese_PRC_CI_ASNULL,[ticketDate][datetime]NULL,[serviceType][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,[ticketPrice][numeric](18,2)NULL,[ticketSum][numeric](18,2)NULL,[ticketMemo][text]COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]TEXTIMAGE_ON[PRIMARY]4航空公司管理信息系统主窗体的创建上面的SQL语句在SQLServer2000中查询分析器的执行,将自动产生需要的所有表格。433/56有关数据库结构的所有后台工作已经完成。现在将通过航空公司管理信息系统中各个功能模块的实现,讲解如何使用VisualBasic来编写数据库系统的客户端程序。4.1创建工程项目——MIS_Ticket启动VisualBasic后,单击Project菜单,在工程模板中选择StandardEXE,VisualBasic将自动产生一个Form窗体,属性都是缺省设置。这里我们删除这个窗体,单击Project菜单,将这个工程项目命名为MIS_Ticket。4.2创建航空公司管理信息系统的主窗体这个项目我们使用多文档界面,单击工具栏中的ADDMDIForm按钮,产生一个窗体。在这个窗体上添加所需的控件,窗体和控件的属性设置见表9-7。创建好的窗体如图9-10所示。表9-7主窗体及其控件属性设置控件属性属性取值frmMain(Form)NameFrmMainCaption大唐航空公司信息管理系统StartUpPositonCenterScreenWindowStateMaximizedSbStatusBar(StatusBar)NameSbStatusBarPanels(1)StyleSbrTextPanels(2)StyleSbrDatePanels(3)yStyleSbrTime图9-10航空公司管理信息系统主窗体在主窗体中加入状态栏控件,可以实时反映系统中的各个状态的变化。状态栏控件需要在通常的属性窗口中设置一般属性,还需要在其特有的弹出式菜单中进行设置。选中状态栏控件,单击鼠标右键,选中Property菜单,然后设置属性。面板1用来显示各种文本信息,面板2用来显示当前日期,面板3用来显示当前时间。4.3创建主窗体的菜单在如图9-10所示的主窗体中,单击鼠标右键,选择弹出式菜单中的MenuEditor,创建如图9-11所示的菜单结构:图9-11主窗体中的菜单结构4.4创建公用模块在VisualBasic中可以用公用模块来存放整个工程项目公用的函数、过程和全局变量等。这样可以极大地提高代码的效率。在项目资源管理器中为项目添加一个Module,保存为Module1.bas。下面就可以开始添加需要的代码了。由于系统中各个功能模块都将频繁使用数据库中的各种数据,因此需要一个公共的数据操作函数,用以执行各种SQL语句。添加函数ExecuteSQL,代码如下:PublicFunctionExecuteSQL(ByValSQL_AsString,MsgStringAsString)_AsADODB.Recordset'执行SQL语句,并返回记录集对象‘声明一个连接DimcnnAsADODB.Connection‘声明一个数据集对象DimrstAsADODB.RecordsetDimsTokens()AsString'异常处理OnErrorGoToExecuteSQL_Error'用Split函数产生一个包含各个子串的数组sTokens=Split(SQL)‘创建一个连接Setcnn=NewADODB.Connection'打开连接cnn.OpenConnectStringIfInStr("INSERT,DELETE,UPDATE”,_UCase$(sTokens(0)))Then‘执行查询语句cnn.ExecuteSQLMsgString=sTokens(0)&_"querysuccessful"ElseSetrst=NewADODB.Recordsetrst.OpenTrim$(SQL),cnn,_adOpenKeyset,_adLockOptimistic'rst.MoveLast'getRecordCount'返回记录集对象SetExecuteSQL=rstMsgString="查询到"&rst.RecordCount&_”条记录”EndIfExecuteSQL_Exit:Setrst=NothingSetcnn=NothingExitFunctionExecuteSQL_Error:MsgString=”查询错误:"&_Err.DescriptionResumeExecuteSQL_ExitEndFunction在ExecuteSQL函数中使用了ConnectString函数,这个函数用来连接数据库,代码如下:PublicFunctionConnectString()_AsString'返回一个数据库连接ConnectString="ticket.dsn;UID=sa;PWD="EndFunction在录入有关信息时,需要回车来进入下一个文本框,这样对软件使用者非常方便。在所有的功能模块都需要这个函数,所以将它放在公用模块中,代码如下:PublicSubEnterToTab(KeyascAsInteger)'判断是否为回车键IfKeyasc=13Then'转换成Tab键SendKeys”{TAB}"EndIfEndSubKeyasc用来保存当前按键,SendKeys函数用来指定的按键。一旦按下回车键,将返回Tab键,下一个控件自动获得输入焦点。添加全局变量,用来记录各个功能模块的读写状态,代码如下:PublicgintSmodeAsInteger'记载舱位等级功能模块的读写状态PublicgintPmodeAsInteger'记载客机信息模块的读写状态PublicgintAmodeAsInteger'记载航线信息模块的读写状态PublicgintTmodeAsInteger'记载客户类型模块的读写状态PublicgintCmodeAsInteger'记载客户信息模块的读写状态PublicgintKmodeAsInteger'记载订票信息模块的读写状态这些全局变量用来记录是添加状态还是修改状态,赋值1为添加,赋值2为修改。由于航空公司管理信息管理系统启动后,需要对用户进行判断。如果登录者是授权用户,将进入系统,否则将停止程序的执行。这个判断需要在系统运行的最初进行,因此将代码放在公用模块中。5系统用户管理模块的创建用户管理模块主要实现:用户登录。添加用户。修改用户密码。6舱位信息管理模块的创建舱位信息管理模块主要实现如下功能:添加舱位信息。修改舱位信息。删除舱位信息。6.1显示舱位信息窗体的创建选择“航线信息管理|舱位信息”菜单,将出现如图9-12所示的窗体。图9-12舱位等级信息窗体这个窗体用来显示舱位等级信息,并且可以对各条记录进行操作。在载入窗体时,程序将自动载入所有记录,代码如下:PrivateSubmenuCarbin_Click()frmService.txtSQL="select*fromserviceInfo"frmService.Show0EndSub窗体的Show方法后面加上0或者1,可以得到不同的窗体显示方式。参数为0时,显示的窗体为无模式形式,窗体切换时不需要进行其他操作;参数为1时,显示的窗体为有模式形式,窗体切换时必须进行相关操作。载入窗体时将自动显示各条记录,代码如下:PrivateSubForm_Load()ShowTitleShowDataEndSub函数ShowTitle用来显示表头,代码如下:PrivateSubShowTitle()DimiAsIntegerWithmsgList,Cols=12.TextMatrix(0,1)="等级编号”,TextMatrix(0,2)="机舱等级”,TextMatrix(0,3)=”是否有礼品”,TextMatrix(0,4)=”是否有报纸”.TextMatrix(0,5)=”是否有饮料”.TextMatrix(0,6)=”是否有午餐”.TextMatrix(0,7)="是否提供电影”.TextMatrix(0,8)=”是否可以改签”.TextMatrix(0,9)=”是否可以退票”.TextMatrix(0,10)=”是否可以打折”.TextMatrix(0,11)="备注信息”'固定表头.FixedRows=1'设置各列的对齐方式Fori=0To11.ColAlignment(i)=0Nexti'表头项居中.FillStyle=flexFillRepeat.Col=0.Row=0.RowSel=1.ColSel=.Cols-1.CellAlignment=4'设置单元大小.ColWidth(0)=1000.ColWidth(1)=1000.ColWidth(2)=2000.ColWidth(3)=1000.ColWidth(4)=1000.ColWidth(5)=1000.ColWidth(6)=1000.ColWidth(7)=1000.ColWidth(8)=1000.ColWidth(9)=1000.ColWidth(10)=1000.ColWidth(11)=1000.Row=1EndWithEndSub函数ShowData把各条记录加到表格中,并显示出来,代码如下:PrivateSubShowData()DimjAsIntegerDimiAsIntegerDimMsgTextAsString‘获得数据集Setmrc=ExecuteSQL(txtSQL,MsgText)WithmsgList.Rows=1‘判断是否为空DoWhileNotmrc.EOF‘移动到下一行.Rows=.Rows+1‘循环Fori=1Tomrc.Fields.Count‘判断是否为空IfNotIsNull(Trim(mrc.Fields(i-1)))Then‘根据数据类型显示SelectCasemrc.Fields(i-1).TypeCaseadDBDate.TextMatrix(.Rows-1,i)=Format(mrc.Fields(i-1)&"","yyyy-mm-dd")CaseElse.TextMatrix(.Rows-1,i)=mrc.Fields(i-1)&""EndSelectEndIfNextI‘移动到下一条记录mrc.MoveNextLoopEndWith‘关闭数据集对象mrc.CloseEndSub在窗体显示时,可以控制窗体中各个控件按照要求的位置显示。可以在窗体的Resize事件中加入代码,代码如下:PrivateSubForm_Resize()‘判断当前窗体所处的状态,当前窗体不处于最小化状态并且主窗体不处于最小化状态时进行后面的操作IfMe.WindowState<>vbMinimizedAndfMainForm.WindowState<>vbMinimizedThen'边界处理IfMe.ScaleHeight<10*lblTitle.HeightThenExitSubEndIfIfMe.ScaleWidth<IblTitle.Width+IblTitle.Width/2ThenExitSubEndIf'控制控件的位置lblTitle.Top=lblTitle.HeightlblTitle.Left=(Me.Width-lblTitle.Width)/2‘控制表格控件的位置msgList.Top=lblTitle.Top+lblTitle.Height+lblTitle.Height/2msgList.Width=Me.ScaleWidth-200msgList.Left=Me.ScaleLeft+100msgList.Height=Me.ScaleHeight-msgList.Top-1500‘控制按钮位置Frame2.Top=msgList.Top+msgList.Height+50Frame2.Left=Me.ScaleWidth/2-3000EndIfEndSub6.2添加舱位信息窗体的创建在舱位信息显示窗体中单击“添加”按钮,将出现如图9-13所示的窗体。图9-13添加舱位等级信息窗体载入窗体时,首先根据标志变量判断状态,然后决定是添加还是修改,代码如下:PrivateSubForm_Load()DimintCountAsIntegerDimMsgTextAsStringDimiAsInteger‘判断是否为添加IfgintSmode=1ThenMe.Caption=Me.Caption&”添加Fori=0To7Combo1(i).AddItem”否”Combo1(i).AddItem”是”Combo1(i).ListIndex=0NextI‘载入当前选择记录内容ElseIfgintSmode=2ThenSetmrc=ExecuteSQL(txtSQL,MsgText)‘判断记录是否为空Ifmrc.EOF=FalseThenWithmrcForintCount=0To1txtItem(intCount)=.Fields(intCount)NextintCounttxtItem(2)=.Fields(10)Fori=0To7Combo1(i).AddItem”否”Combo1(i).AddItem”是”Combo1(i).ListIndex=0NextiEndWithtxtItem(0).Enabled=FalseEndIfMe.Caption=Me.Caption&"修改”EndIfmblChange=FalseEndSub输入内容完毕,单击“保存”按钮,将首先判断输入内容是否满足要求,然后添加到数据库中。代码如下:PrivateSubcmdSave_Click()DimintCountAsIntegerDimsMegAsStringDimMsgTextAsString‘判断输入内容是否为空ForintCount=0To1IfTrim(txtItem(intCount)&"")=""ThenSelectCaseintCountCase0sMeg="机舱等级编号”Case1sMeg="机舱等级名称"EndSelectsMeg=sMeg&”不能为空!”MsgBoxsMeg,vbOKOnly+vbExclamation,”警告”txtItem(intCount).SetFocusExitSubEndIfNextintCount判断输入内容是否为数字IfNotIsNumeric(Trim(txtItem(0)))ThensMeg="机舱等级编号”sMeg=sMeg&”请输入数字!”MsgBoxsMeg,vbOKOnly+vbExclamation,”警告”txtItem(0).SetFocusEndIf'添加判断是否有相同的ID记录IfgintSmode=1ThentxtSQL="select*fromserviceInfowhereserviceNO='"&Trim(txtItem(0))&"'"Setmrc=ExecuteSQL(txtSQL,MsgText)Ifmrc.EOF=FalseThenMsgBox”巳经存在此编号的记录!”,vbOKOnly+vbExclamation,”警告”txtItem(0).SetFocusExitSubEndIfmrc.CloseEndIf'判断是否有相同内容的记录txtSQL="select*fromserviceInfowhereserviceNO<>'"&Trim(txtItem(0))&"'andserviceName='&Trim(txtItem(1))&"'"Setmrc=ExecuteSQL(txtSQL,MsgText)Ifmrc.EOF=FalseThenMsgBox”巳经存在相同机舱等级的记录!”,vbOKOnly+vbExclamation,”警告”txtItem(1).SetFocusExitSubEndIf'先删除巳有记录txtSQL="deletefromserviceInfowhereserviceNO='"&Trim(txtItem(0))&"'"Setmrc=ExecuteSQL(txtSQL,MsgText)'再加入新记录txtSQL="select*fromserviceinfo"Setmrc=ExecuteSQL(txtSQL,MsgText)mrc.AddNewForintCount=0To1mrc.Fields(intCount)=Trim(txtitem(intCount))NextintCountForintCount=0To7mrc.Fields(intCount+2)=Trim(Combo1(intCount))NextintCountmrc.Fields(10)=Trim(txtitem(2))‘更新数据集内容mrc.Update‘关闭数据集内容mrc.CloseifgintSmode=1ThenMsgBox”添加记录成功!”,vbOKOnly+vbExclamation,"添加记录”ForintCount=0To1txtitem(intCount)=""NextintCountForintCount=0To3Combo1(intCount).Listindex=0NextintCounttxtitem(2)=""mblChange=FalseUnloadfrmServicefrmService.txtSQL="select*fromserviceinfo"frmService.ShowElseifgintSmode=2ThenUnloadMeUnloadfrmServicefrmService.txtSQL="select*fromserviceinfo"frmService.ShowEndifEndSub6.3修改舱位等级信息在舱位等级信息列表中选择需要修改的记录,然后单击“修改”按钮,将出现如图9-13所示的窗体。选择记录的内容将显示在窗体中,可以进行修改,最后保存修改后的记录。代码如下:PrivateSubcmdModify_Click()DimintCountAsInteger判断列表中是否有记录IffrmService.msgList.Rows>1Then‘改变状态变量gintSmode=2‘记录选择记录位置intCount=msgList.RowIfintCount>0ThenfrmServicel.txtSQL="select*fromserviceinfowhereserviceNO='"&Trim(msgList.TextMatrix(intCount,1))&"'"frmService1.Show1ElseMsgBox”警告”,vbOKOnly+vbExclamation,”请首先选择需要修改的记录!”EndIfEndIfEndSub6.4删除舱位等级信息在舱位等级信息列表中选择需要删除的记录,然后单击“删除”按钮,将删除当前记录,代码如下:PrivateSubcmdDelete_Click()DimtxtSQLAsStringDimintCountAsIntegerDimmrcAsADODB.RecordsetDimMsgTextAsString‘判断信息列表中内容是否为空IfmsgList.Rows>1Then‘提示信息IfMsgBox("真的要删除机舱等级为"&Trim(msgList.TextMatrix(msgList.Row,2))&"的记录吗?",vbOKCancel+vbExclamation,"警告”)=vbOKThen‘记录选择记录位置intCount=msgList.Row‘删除重复记录txtSQL="deletefromserviceInfowhereserviceNO='"&Trim(msgList.TextMatrix(intCount,1))&"'"Setmrc=ExecuteSQL(txtSQL,MsgText)‘卸载窗体UnloadfrmService‘重新载入记录并显示frmService.txtSQL="select*fromserviceinfo"frmService.ShowEndIfEndIfEndSub7客机信息管理模块的创建客机信息管理模块主要实现如下功能:添加客机信息。修改客机信息。删除客机信息。查询客机信息。7.1显示客机信息窗体的创建选择“航线信息管理I客机信息”菜单,将出现如图9-14所示的窗体。所有客机信息都将显示出来。窗体的Load事件调用ShowTitle、ShowData函数,将所有记录显示出来。图9-14显示客机信息列表窗体7.2添加客机信息窗体的创建单击客机信息列表中的“添加,,按钮,将出现如图9-15所示的窗体。图9-15添加客机信息列表输入内容完毕,单击“保存”按钮,将首先判断输入内容是否满足要求,然后将记录添加到数据库中,代码如下:PrivateSubcmdSave_Click()DimintCountAsIntegerDimsMegAsStringDimMsgTextAsString判断输入内容是否为空ForintCount=0To6IfTrim(txtItem(intCount)&"")=""ThenSelectCaseintCountCase0sMeg="客机编号”Case1sMeg="客机型号”Case2sMeg="购买时间”Case3sMeg="服役时间”Case4sMeg=”经济舱座位数量”Case5sMeg="公务舱座位数量”Case6sMeg="头等舱座位数量”EndSelectsMeg=sMeg&”不能为空!”MsgBoxsMeg,vbOKOnly+vbExclamation,”警告”txtItem(intCount).SetFocusExitSubEndIfNextintCount‘判断输入内容为数字ForintCount=4To6IfNotIsNumeric(Trim(txtItem(intCount)))ThensMeg="座位数量”sMeg=sMeg&”请输入数字!”MsgBoxsMeg,vbOKOnly+vbExclamation,”警告”txtItem(intCount).SetFocusEndIfNextintCount‘判断输入内容是否为日期ForintCount=2To3IfIsDate(txtItem(intCount))ThentxtItem(intCount)=Format(txtItem(intCount),"yyyy-mm-dd")ElseMsgBox”时间应输入日期(yyyy-mm-dd)!",vbOKOnly+vbExclamation,”警告txtItem(intCount).SetFocusExitSubEndIfNextintCount'添加判断是否有相同的ID记录IfgintPmode=1ThentxtSQL="select*fromplaneInfowhereplaneNO='"&Trim(txtItem(0))&"'"Setmrc=ExecuteSQL(txtSQL,MsgText)Ifmrc.EOF=FalseThenMsgBox”巳经存在此编号的记录!”,vbOKOnly+vbExclamation,”警告”txtItem(0).SetFocusExitSubEndIfmrc.CloseEndIf'先删除巳有记录txtSQL="deletefromplaneInfowhereplaneNO='"&Trim(txtItem(0))&"'"Setmrc=ExecuteSQL(txtSQL,MsgText)'再加入新记录txtSQL="select*fromplaneInfo"Setmrc=ExecuteSQL(txtSQL,MsgText)mrc.AddNewForintCount=0To7mrc.Fields(intCount)=Trim(txtItem(intCount))NextintCount‘更新数据集mrc.Update‘关闭数据集对象mrc.CloseIfgintPmode=1ThenMsgBox”添加记录成功!”,vbOKOnly+vbExclamation,"添加记录”ForintCount=0To7txtItem(intCount)=""NextintCountmblChange=FalseUnloadfrmPlanefrmPlane.txtSQL="select*fromplaneInfo"frmPlane.ShowElseIfgintPmode=2ThenUnloadMeUnloadfrmPlanefrmPlane.txtSQL="select*fromplaneInfo"frmPlane.ShowEndIfEndSub7.3修改客机信息在客机信息列表中选择记录,然后单击“修改”按钮。当前记录将显示在如图)-15所示的窗体中,可以进行修改。代码如下:PrivateSubcmdModify_Click()DimintCountAsInteger‘判断列表内容是否为空IffrmPlane.msgList.Rows>1ThengintPmode=2‘记载选择记录的位置intCount=msgList.RowIfintCount>0ThenfrmPlanel.txtSQL="select*fromplaneInfowhereplaneNO='"&Trim(msgList.TextMatrix(intCount,1))&"'"frmPlane1.Show1ElseMsgBox”警告”,vbOKOnly+vbExclamation,”请首先选择需要修改的记录!”EndIfEndIfEndSub7.4删除客机信息在客机信息列表中选择记录,然后单击“删除”按钮,当前记录将被删除。代码如下:PrivateSubcmdDelete_Click()DimtxtSQLAsStringDimintCountAsIntegerDimmrcAsADODB.RecordsetDimMsgTextAsString‘判断列表内容是否为空IfmsgList.Rows>1ThenIfMsgBox("真的要删除客机编号为"&Trim(msgList.TextMatrix(msgList.Row,1))&”的型号为"&Trim(msgList.TextMatrix(msgList.Row,2))&”的客机记录吗?”,vbOKCancel+vbExclamation,"警告”)=vbOKThen‘记载选择记录的位置intCount=msgList.RowtxtSQL="deletefromplaneInfowhereplaneNO='"&Trim(msgList.TextMatrix(intCount,1))&”'”Setmrc=ExecuteSQL(txtSQL,MsgText)UnloadfrmPlane‘重新载入所有记录,并显示出来frmPlane.txtSQL="select*fromplaneInfo"frmPlane.ShowEndIfEndIfEndSub7.5查询客机信息在客机信息列表中单击“查询”按钮,将出现如图9-16所示的窗体。图9-16查询客机信息的窗体载入窗体时,将自动加入所有客机编号和客机型号的信息,代码如下:PrivateSubForm_Load()DimiAsIntegerDimsSqlAsStringDimtxtSQLAsStringDimMsgTextAsStringDimmrcAsADODB.Recordset‘清楚各个列表框中的内容Fori=0To1Combo1(i).ClearNexti‘选择数据库中所有客机编号的内容txtSQL="selectDISTINCTplaneNOfromplaneInfo"Setmrc=ExecuteSQL(txtSQL,MsgText)‘判断数据库是否为空IfNotmrc.EOFThenDoWhileNotmrc.EOFCombo1(0).AddItemTrim(mrc.Fields(0))mrc.MoveNextLoopElseMsgBox”请先进行客机信息设置!”,vbOKOnly+vbExclamation,”警告”ExitSubEndIfmrc.Close‘选择所有数据库中有关飞机型号的内容txtSQL="selectDISTINCTplaneTypefromplaneInfo"Setmrc=ExecuteSQL(txtSQL,MsgText)‘判断数据集对象是否为空IfNotmrc.EOFThenDoWhileNotmrc.EOFCombo1(1).AddItemTrim(mrc.Fields(0))mrc.MoveNextLoopElseMsgBox"请先进行客机信息设置!",vbOKOnly+vbExclamation,"警告"ExitSubEndIf‘关闭数据集对象mrc.CloseEndSub设置完查询内容和方式后,单击cmdOK按钮将进行查询。所有满足条件的记录将显示在如图9-14所示的窗体中,代码如下:PrivateSubcmdOK_Click()DimsQSqlAsString‘判断是否按照客机编号查询IfchkItem(0).Value=vbCheckedThensQSql="planeNO='"&Trim(Combo1(0)&"")&"'”EndIf‘判断是否按照客机型号查询IfchkItem(1).Value=vbCheckedThenIfTrim(sQSql&"")=""ThensQSql="planeType='"&Trim(Combo1(1)&"")&"'”ElsesQSql=sQSql&"andplaneType='"&Trim(Combo1(1)&"")&"'”EndIfEndIf‘判断查询内容是否为空IfTrim(sQSql)=""ThenMsgBox”请设置查询条件!”,vbOKOnly+vbExclamation,”警告”Me.HideExitSubElse‘显示所有满足查询条件的内容frmPlane.txtSQL="select*fromplaneInfowhere"&sQSqlMe.HideUnloadfrmPlanefrmPlane.ShowEndIfEndSub8航线信息管理模块的创建航线信息管理模块主要实现如下功能:添加航线信息。修改航线信息。删除航线信息。查询航线信息。8.1显示航线信息窗体的创建选择“航线信息管理I航线信息”菜单,将出现如图9-17所示的窗体。所有航线信息都将显示出来。窗体的Load事件调用ShowTitle、ShowData函数,将所有记录显示出来。

图9-17显示客机信息窗体8.2添加航线信息窗体的创建选择“航线信息管理I航线信息”菜单,将出现如图9-18所示的窗体,用来添加航线信息。图9-18添加航线窗体输入完航线信息后,单击“保存”按钮:程序首先检查输入内容是否符合要求,然后检查是否有重复记录,最后添加到数据库中。8.3修改航线信息在航线信息列表中选择记录,然后单击“修改”按钮。当前记录将显示在如图)-18所示的窗体中,可以进行修改。代码如下:PrivateSubcmdModify_Click()DimintCountAsInteger‘判断列表内容是否为空IffrmAirline.msgList.Rows>1ThengintAmode=2‘记载选择记录的位置intCount=msgList.RowIfintCount>0ThenfrmAirlinel.txtSQL="select*fromairlineinfowhereairlineNO='"&Trim(msgList.TextMatrix(intCount,1))&"'"frmAirline1.Show1ElseMsgBox”警告”,vbOKOnly+vbExclamation,”请首先选择需要修改的记录!”EndIfEndIfEndSub8.4删除航线信息在航线信息列表中选择记录,然后单击“删除”按钮,当前记录将被删除。代码如下:PrivateSubcmdDelete_Click()DimtxtSQLAsStringDimintCountAsIntegerDimmrcAsADODB.RecordsetDimMsgTextAsString‘判断列表内容是否为空IfmsgList.Rows>1ThenIfMsgBox("真的要删除"&Trim(msgList.TextMatrix(msgList.Row,4))&"从"&Trim(msgList.TextMatrix(msgList.Row,2))&"出发到"&Trim(msgList.TextMatrix(msgList.Row,3))&"的航线记录吗?",vbOKCancel+vbExclamation,"警告”)=vbOKThen‘记载选择记录位置intCount=msgList.RowtxtSQL="deletefromairlineInfowhereairlineNO='"&Trim(msgList.TextMatrix(intCount,1))&"'"Setmrc=ExecuteSQL(txtSQL,MsgText)‘重新载入记录并显示UnloadfrmAirlinefrmAirline.txtSQL="select*fromairlineInfo"frmAirline.ShowEndIfEndIfEndSub8.5查询航线信息在航线信息列表中单击“查询”按钮,将出现如图9-19所示的窗体。图9-19航线信息查询窗体载入窗体时自动加入出发城市和到达城市的内容,代码如下:PrivateSubForm_Load()DimiAsIntegerDimsSqlAsStringDimtxtSQLAsStringDimMsgTextAsStringDimmrcAsADODB.Recordset‘清除列表框中的内容Fori=0To1Combo1(i).ClearNexti‘选择数据库中与出发城市有关的内容txtSQL="selectDISTINCTdepartCityfromairlineInfo"Setmrc=ExecuteSQL(txtSQL,MsgText)‘判断数据集是否为空IfNotmrc.EOFThenDoWhileNotmrc.EOFCombo1(0).AddItemTrim(mrc.Fields(0))mrc.MoveNextLoopElseMsgBox”请先进行航线信息设置!”,vbOKOnly+vbExclamation,”警告”ExitSubEndIfmrc.ClosetxtSQL="selectDISTINCTarrivalCityfromairlineInfo"Setmrc=ExecuteSQL(txtSQL,MsgText)IfNotmrc.EOFThenDoWhileNotmrc.EOFCombo1(1).AddItemTrim(mrc.Fields(0))mrc.MoveNextLoopElseMsgBox”请先进行航线信息设置!”,vbOKOnly+vbExclamation,”警告”ExitSubEndIfmrc.CloseEndSub设置查询内容后,单击“确定”按钮,所有满足查询条件的内容显示在航线信息列表中。9客户类型信息管理模块的创建客户类型信息管理模块主要实现如下功能:添加客户类型信息。修改客户类型信息。删除客户类型信息。9.1显示客户类型信息窗体的创建选择“客户信息管理I客户类型”菜单,将出现如图9-20所示的窗体。所有客户类型信息都将显示出来。窗体的Load事件调用ShowTitle、ShowData函数,将所有记录显示出来。图9-20显示客户类型信息窗体9.2添加客户类型信息窗体的创建在客户类型信息列表中单击“添加,,按钮,将出现如图9-21所示的窗体,用来添加客户类型信息。X|・舂尸夷型培思图9-21添加客户类型信息窗体X|・舂尸夷型培思输入内容完毕,单击“保存”按钮,程序将首先检查内容是否符合要求,然后检查是否有重复记录,最后添加到数据库中。9.3修改客户类型信息在客户类型信息列表中选择需要修改的记录,然后单击“修改”按钮,当前记录将出现在如图9-14所示的窗体中。修改完毕,单击“保存”按钮,修改后的记录保存到数据库中。代码如下:PrivateSubcmdModify_Click()DimintCountAsInteger‘判断列表内容是否为空IffrmcType.msgList.Rows>1ThengintTmode=2‘记载选择记录的位置intCount=msgList.Row‘判断是否选择记录IfintCount>0Then‘显示需要修改的记录frmcTypel.txtSQL="select*fromcustomerTypewherectypeNO='"&Trim(msgList.TextMatrix(intCount,1))&"'"frmcTypel.Show1ElseMsgBox”警告”,vbOKOnly+vbExclamation,”请首先选择需要修改的记录!”EndIfEndIfEndSub9.4删除客户类型信息选择客户类型信息列表中需要删除的记录,然后单击“删除”按钮,可以删除所选记录。代码如下:PrivateSubcmdDelete_Click()DimtxtSQLAsStringDimintCountAsIntegerDimmrcAsADODB.RecordsetDimMsgTextAsString‘判断列表内容是否为空IfmsgList.Rows>1Then‘提示信息IfMsgBox("真的要删除客户种类为"&Trim(msgList.TextMatrix(msgList.Row,2))&"的记录吗?”,vbOKCancel+vbExclamation,"警告”)=vbOKThen‘记载选择记录的位置intCount=msgList.Row‘删除记录txtSQL="deletefromcustomerTypewherectypeNO='"&Trim(msgList.TextMatrix(intCount,1))&”'”Setmrc=ExecuteSQL(txtSQL,MsgText)‘卸载窗体UnloadfrmcType‘选择所有记录frmcType.txtSQL="select*fromcustomerType"‘显示窗体frmcType.ShowEndIfEndIfEndSub10客户信息管理模块的创建客户信息管理模块主要实现如下功能:添加客户信息。修改客户信息。删除客户信息。查询客户信息。10.1显示客户信息窗体的创建选择“客户信息管理I客户信息”菜单,将首先出现如图9-22所示的窗体。所有客户类型信息都将显示出来。窗体的Load事件调用ShowTitle、ShowData函数,将所有记录显示出来。

图9-22显示客户信息窗体10.2添加客户信息窗体的创建在客户信息列表中单击“添加”按钮,将出现如图9-23所示的窗体,用来添加客户信息。图9-23添加客户信息窗体输入内容完毕,单击“保存”按钮,程序将首先检查内容是否符合要求,然后检查是否有重复记录,最后添加到数据库中。10.3修改客户信息在客户信息列表中选择需要修改的记录,然后单击“修改”按钮,当前记录将出现在如图9-23所示的窗体中。修改完毕,单击“保存”按钮,修改后的记录保存到数据库中。代码如下:PrivateSubcmdModify_Click()DimintCountAsInteger‘判断列表内容是否为空IffrmCustomer.msgList.Rows>1ThengintCmode=2‘记载选择记录的位置intCount=msgList.Row‘判断是否选择记录IfintCount>0Then‘选择点击记录frmCustomerl.txtSQL="select*fromcustomerinfowherecustomerNO='"&Trim(msgList.TextMatrix(intCount,1))&"'"‘显示frmCustomer1.Show1Else‘提示信息MsgBox”警告”,vbOKOnly+vbExclamation,”请首先选择需要修改的记录!”EndIfEndIfEndSub10.4删除客户信息选择客户信息列表中需要删除的记录,然后单击“删除”按钮,可以删除所选记录。代码如下:PrivateSubcmdDelete_Click()DimtxtSQLAsStringDimintCountAsIntegerDimmrcAsADODB.RecordsetDimMsgTextAsString‘判断列表内容是否为空IfmsgList.Rows>1ThenIfMsgBox("真的要删除客户姓名为"&Trim(msgList.TextMatrix(msgList.Row,2))&"的客户记录吗?",vbOKCancel+vbExclamation,"警告”)=vbOKThen‘记载选择记录的位置intCount=msgList.Row‘删除当前记录txtSQL="deletefromcustomerInfowherecustomerNO='"&Trim(msgList.TextMatrix(intCount,1))&"'"‘执行查询语句Setmrc=ExecuteSQL(txtSQL,MsgText)‘卸载客户信息列表UnloadfrmCustomer‘选择所有记录frmCustomer.txtSQL="select*fromcustomerInfo"‘显示frmCustomer.ShowEndIfEndIfEndSub10.5查询客户信息在如图9-22所示的客户信息列表中,单击“查询”按钮,出现如图9-24所示的对话框。图9-24图9-24客户信息查询窗体客户信息查询窗体在载入时所有客户信息自动加入到查询内容中。选择合适的查询方式,满足查询条件的记录显示在如图9-22所示的客户信息列表中。11订票信息管理模块的创建订票信息管理模块主要实现如下功能:•••••

•修改订票信息。删除订票信息。查询剩余机票信息。11.1显示订票信息窗体的创建选择“票务信息管理|订票信息”菜单,将首先出现如图9-25所示的窗体。所有订票类型信息都将显示出来。窗体的Load事件调用ShowTitle、ShowData函数,将所有记录显示出来。

图9-25显示机票信息的窗体11.2添加订票信息窗体的创建在机票信息列表中单击“添加”按钮,将出现如图9-26所示的窗体,用来添加订票信息。图9-26添加订票信息的窗体机票信息包括两部分:航线信息和客户信息。选择出发城市和到达城市,将得到相应的航线信息;选择客户姓名得到相应的客户信息。窗体载入时要求在列表框中加入所有有关航线和客户的信息,代码如下:PrivateSubForm_Load()DimMsgTextAsStringDimiAsIntegerDimmrccAsADODB.Recordset‘判断所处状态,添加或者修改IfgintKmode=1ThenMe.Caption=Me.Caption&"添加”‘产生随机的订票编号txtticket=GetRkno()ElseIfgintKmode=2ThenSetmrc=ExecuteSQL(txtSQL,MsgText)‘判断数据集对象是否为空Ifmrc.EOF=FalseThenWithmrctxtticket=.Fields(0)txtItem(0)=.Fields(7)txtItem(1)=.Fields(12)EndWithEndIfMe.Caption=Me.Caption&"修改”EndIf‘清楚列表框中内容Fori=0To6Combo1(i).ClearNexti‘选择数据库中所有与出发城市有关的信息txtSQL="selectdistinctdepartCityfromairlineInfoSetmrcc=ExecuteSQL(txtSQL,MsgText)‘判断数据集对象是否为空IfNotmrcc.EOFThenDoWhileNotmrcc.EOFCombo1(0).AddItemmrcc.Fields(0)mrcc.MoveNextLoopEndIf‘关闭数据集对象mrcc.Close‘选择数据库中所有与到达城市有关的信息txtSQL="selectdistinctarrivalCityfromairlineInfoSetmrcc=ExecuteSQL(txtSQL,MsgText)463/56‘判断数据集对象是否为空IfNotmrcc.EOFThenDoWhileNotmrcc.EOFCombo1(1).AddItemmrcc.Fields(0)mrcc.MoveNextLoopEndIf‘关闭数据集对象mrcc.Close‘选择数据库中所有与舱位等级有关的信息txtSQL="selectdistinctserviceNamefromserviceInfo"Setmrcc=ExecuteSQL(txtSQL,MsgText)‘判断数据集对象是否为空IfNotmrcc.EOFThenDoWhileNotmrcc.EOFCombo1(2).AddItemmrcc.Fields(0)mrcc.MoveNextLoopEndIf‘关闭数据集对象mrcc.Close‘选择数据库中所有与客户姓名有关的信息txtSQL="selectdistinctcustomerNamefromcustomerInfo"Setmrcc=ExecuteSQL(txtSQL,MsgText)‘判断数据集对象是否为空IfNotmrcc.EOFThenDoWhileNotmrcc.EOFCombo1(4).AddItemmrcc.Fields(0)mrcc.MoveNextLoopEndIf‘关闭数据集对象mrcc.ClosemblChange=FalseEndSub选择出发城市和到达城市,然后选择舱位类型,将自动显示票价,并用不可见文本框(txtairline、txtairline等)记载航线编号、客户编号等信息。实现代码加在列表框的Click事件中,如下:DimmrccAsADODB.RecordsetDimmrcdAsADODB.RecordsetDimMsgTextAsString‘判断列表框编号IfIndex=2Then‘判断出发城市和到达城市是否选择IfNot(Trim(Combo1(0))=""OrTrim(Combo1(1))="")ThentxtSQL="select*fromairlineInfowheredepartCity='"&Trim(Combo1(0))&"'andarrivalCity='"&Trim(Combo1(1))&"'"Setmrcc=ExecuteSQL(txtSQL,MsgText)‘判断数据集对象是否为空IfNotmrcc.EOFThentxtairline=mrcc.Fields(0)ticketCsum=mrcc!planeNOIfTrim(Combo1(2))="经济舱”ThenCombo1(3).ClearCombo1(3).AddItemmrcc.Fields(7)Combo1(3).ListIndex=0ElseIfTrim(Combo1(2))="公务舱”ThenCombo1(3).ClearCombo1(3).AddItemmrcc.Fields(8)Combo1(3).ListIndex=0ElseCombo1(3).ClearCombo1(3).AddItemmrcc.Fields(9)Combo1(3).ListIndex=0EndIfEndIf‘关闭数据集对象mrcc.Close‘选择制定客机编号的有关信息txtSQL="select*fromplaneInfowhereplaneNO='"&Trim(ticketCsum)&"'"Setmrcc=ExecuteSQL(txtSQL,MsgText)‘判断数据集对象是否为空IfNotmrcc.EOFThenticketCsum=mrcc.Fields(4)ticketMsum=mrcc.Fields(5)ticketFsum=mrcc.Fields(6)EndIf‘关闭数据集对象mrcc.CloseEndIfElselfIndex=4T

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论