




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE40人才培养模式改革和开放教育试点理工类毕业设计(论文)安徽广播电视大学毕业设计(论文)分校名称教学点名称年级名称专业名称课题名称学生姓名指导教师年月日ﻬ摘要招标信息管理系统是企业的信息管理系统(MIS)的一部分,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点.根据我们的实际情况经过分析,本系统采用客户机/服务器模式,编程环境使用Borland公司的Delphi6,后台数据库采用流行的高性能数据库产品Oracle,我们利用Delphi6其提供的各种面向对象的开发工具,尤其是VCL数据集和数据控件这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成满意的可行系统.后台使用符合国际标准的SQL数据语言的Oracle,给系统的兼容性、可移置、安全性、稳定性打下了坚实的基础。关键字:控件、窗体、域
ABSTRACTInvitationforbirmationmanagementsystemisapartofenterprisemanagementinformationsystem,whichmainlyincludesbuildingupdata-baseofback-endanddevelopingtheapplicationinterfaceoffront-end.Theformerrequiredconsistencyandintegralityandsecurityofdata。Thelatershouldmaketheapplicationpowerfulandeasilyused.Dependonoursituation,weselectclienter/servicermode.WeuseDelphi6presentedbyBorlandcompanyasprogramenvironmentandselectOracleasdata-baseofback-end.Delphi6cansupplymanyobjecttoolsespeciallyVCLdata—baseanddataActiveX.Itcangiveyouashort—cuttobuildupaprototypeofsystemapplication。Theprototypecouldbemodifiedanddevelopedtillusersaresatisfiedwithit.Forback-endweselectedOraclewhichSQLdatalanguageconformtointernationalstandard。Sothesystemhasthecharacteristicofcompatible、displace、securityandstable.Keywords:ActiveX,Form,Fieldﻬ目录前言……………………4第一章开发招标信息管理系统的必要……………4第二章开发招标信息管理系统的软硬件选择……5硬件环境编程环境的选择关系型数据库的实现二者的结合开发招标信息管理系统技术要点…………7用Delphi6开发数据库简介什么是BDE?我们在开发怎样时的配置应用程序和数据库联系的工具-数据库访问控件Oracle数据库的安装配置使用第四章招标信息管理系统的功能与结构…………21系统的主要功能系统的性能要求系统的结构系统流程图第五章招标信息管理系统的实现建设……………24数据库的需求分析数据库概念结构设计数据表的创建录入初始数据各个功能模块的创建编译第六章性能测试与分析……………36测试环境配置测试使用报表输出性能分析第七章结束语………………………37致谢……………………38主要参考文献…………39附件……………………40ﻬ前言在这个科技经济飞速发展的时代里,企业间的竞争日趋激烈,要保持企业的竞争力就必须有高效的企业管理,管理的信息化就不可或缺.招标信息管理系统是企业信息化的一部分,它的内容对于企业采购的决策者和管理者来说都至关重要,所以招标信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对招标信息信息进行管理,具有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高招标信息管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中我们将以开发一套招标信息管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。下面就让我们开始正文的介绍开发招标信息管理系统的必要计算机已经成为我们学习和工作的得力助手:今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:首先,计算机可以代替人工进行许多繁杂的劳动;其次,计算机可以节省许多资源;第三,计算机可以大大的提高人们的工作效率;第四,计算机可以使敏感文档更加安全,等等。企业的发展离基本建设,建设就须采购设备材料,根据国家的有关法规国家贷款基建项目设备材料的采购必须采用招标采购,实现公开公平的竞争,降低采购成本和风险.在现在我们的企业招标信息管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。我作为一个在招标管理岗位上且同时作为开放教育计算机科学与技术的本科生,希望可以在这方面有所贡献。改革的总设计师邓小平同志说过“科学技术是第一生产力”,我希望能用我三年的所学编制出一个实用的程序来帮助企业进行更有效的招标信息管理.归纳起来,好处大约有以下几点:1.可以存储招标过程中的信息,安全、高效;2.可以收集有关投标厂商的信息可分析设备的市场情况。3。可以迅速查到所需信息,为今后的建设中采购提供帮助。招标信息管理系统的设计,根据实际情况,我们使用原型法(RapidPrototyping)即以少量代价快速地构造一个可执行的软件系统模型。使用户和开发人员可以较快地确定需求,然后采用循环进化的开发方式,对系统模型作连续的精化,将系统需具备的性质逐渐增加上去,直到所有的性质全部满足.此时模块也发展成为最终产品了。开发招标信息管理系统的软硬件选择硬件环境办公自动化的在企业中已逐渐普及,每个岗位的管理人员都有计算机,且已连成企业内部网,能在上面共享文件和发电子邮件。多个管理人员同时工作时,数据服务器要能同时处理多客户的请求,协调访问并且更新数据.根据以上情况我们程序采用双层结构即客户机/服务器模式,服务器采用微型计算机,操作系统选用windows2000服务器版,客户机采用win98或win2000/XP操作系统的微机,网络采用以太网,通讯协议采用TCP/IP协议。编程环境的选择美国Borland公司的Delphi6开发工具,是开发数据库前端的优秀工具,它以其简洁明快编程语言,功能强大的组件和灵活的编程环境在激烈的市场中越来越受到青睐,采用Delphi6来开发数据库应用程序具有更大的灵活性和可扩充性,它支持单机的dBase、Paradox数据库和流行的关系数据库Oracle、SQLserver等。最后完成的系统可以在单机、Netware网络文件共享方式和客户机/服务器条件下运行。故而,实现本系统Delphi6是一个相对较好的选择.三、关系型数据库的实现Oracle是一种流行的高性能数据库产品,它以符合国际标准的SQL数据语言为基础具有丰富的软件工具,是当今世界上唯一可以同时适用用于大、中、小型机和微型机的数据库系统,它支持多种硬件及操作系统、多种网络通讯协议和多种数据库管理系统的互连,从而为建立分布式数据库提供强有力的支持.我们选择了Oracle8forwindows版本,安装在win2000server服务器上,通讯协议选用TCP/IP协议。二者的结合Delphi是通过BDE(Borlang数据引擎)来完成对数据库的访问(见图2—1),无论对存储格式诸如DB和DBF文件的本地数据还是更为复杂的客户机/服务器体系的异地数据,BDE都能提供性能优异的访问服务。Delphi中的数据控件,在数据库中的信息与将信息显示给用户看的Delphi程序之间架起了一座桥梁。我们可以设置数据组件的各个属性,告诉它要调用那个数据库的哪个部分.缺省情况下,数据控件根据数据库中的一个或多个数据表建立一个dynaset—type(动态集合)类型的记录集合。一个记录集合是动态的也就意味着,当原来的数据表中的内容改变了以后,该记录集合中的记录也会随之改变。数据控件还提供了用来浏览不同记录的各种跳转按钮。将数据控件放置在窗体中之后,我们还必须在该控件与要处理的数据库之间建立联系。Delphi应用程序Delphi应用程序Delphi数据库应用程序BDE管理配置程序ODBC数据源ODBCSQLLinks本地数据源InterbaseDBASEParadox等BORLAND数据库引擎网络协议远程数据库说明:1、远程数据库可以是Oracle,Sybase,MSSQLServer,Informin,Interbase2、网络协议用虚线框,表示应用程序可以利用SQLLinks、ODBC来访问本地数据库.图2—1Delphi的数据库体系ﻬ第三章开发招标信息管理系统技术要点用Delphi6开发数据库简介开发环境简介在Windows安装完Delphi后,安装程序在Windows操作系统的“开始”菜单中添加Delphi的菜单及菜单项,点击BorlandDelphi6目录的Delphi6即可启动Delphi主窗口如图3—1所示.图3-1集成开发环境的主窗口主窗口主要由以下几部分构成:标题栏:图3-1中显示“Delphi6-Project1”字样的部分,在标题栏上,还有主窗口的最大化、最小化及关闭按钮。菜单栏:包括10个菜单,为开发人员提供编辑、开发、调试和管理工程等功能.工具栏:包括一些常用的命令,如新建、打开、运行等。控件栏:控件栏集中了Delphi自身提供的控件。窗体:每当启动BorlandDelphi6,会自动创建一个窗体Form1,在窗体上添加控件,设计应用程序界面。代码窗口:在其左侧区域,包含本程序所有的窗体、控件,在其右侧区域,用于输入编码.对象监视器:选中窗体或窗体上的控件时,在对象监视器就会相应出现此窗体或控件的属性.在对象监视器中,可以对窗体或对象的属性进行设置。对象目录树:在对象目录树中,显示窗体上所有控件的名称以及相互的包含关系。当删除或改变控件的主、子容器时,目录树的控件就会相应的发生变化.在对象目录树中,可以精确的选定窗体上的控件对象,并进行属性设置。用户可以直接在控件栏用鼠标左键双击某一控件,在当前的窗体上就添加了此控件:或者在控件栏用鼠标左键单击某一控件,然后在窗体上按住鼠标左键,拖动控件,然后释放鼠标左键,在窗体上鼠标拖动的范围内就会添加这个控件.ﻩ二、什么是BDE?我们在开发怎样时的配置在利用可视化开发工具做数据库开发时,通常应用程序不能和数据源直接打交道,而要通过一些中介,这些中介就叫做数据库驱动器.一般而言,对于一种数据库至少有一种数据库驱动器.随着数据库的种类的增多,也就渐渐地产生了形形色色地数据库驱动器,于是出现了管理这些数据库的的数据引擎。有了数据库引擎,程序员在编程时就不必调用具体的数据库驱动器了,只需按照统一的方式和数据库引擎打交道,而让数据库引擎去操作今天的数据库驱动器。这样就大大简化了数据库应用程序的开发。进一步而言,现在的数据库应用所面对的数据类型真是形形色色,像语音,图像数据等,直接调用这些数据库的驱动器有时真的比较繁琐,而借助数据库引擎,我们就不必关心这些细节。Borland推出了这样一个数据库引擎(BorlandDatabaseEngine),缩写为BDE,它能连接到其他类型的数据库,还能将应用从本地上传到客户机-服务器系统,同时有很高的效率.Delphi数据库应用程序通过BDE来完成对数据库的访问。它能的访问的数据可分为两大类,一类是本地数据,另一类是客户机-服务器体系的异地数据。本系统采用的结构是客户机-服务器模式,用到了异地数据,具体配置如下。配置BDE是通过BDE管理器这个图形界面进行的。在BorlandDelphi6目录下启动BDEAdministrator后,其如图3-2所示。我们可以看到屏幕最上面是标题栏、菜单栏和工具栏,和一般的Windows应用程序相同。屏幕的左侧是数据库别名(DatabaseAlisaes)栏.数据库的别名指定了数据库的位置和与数据库服务器相连的参数。对于桌面数据库,别名是指数据库保存的路径或文件。例如,对DBASE数据库来说,别名是指数据库保存的路径;对Access数据库而言,别名是指MDB文件;对那些数据库服务器,别名就是指服务器名库名、SQL语言传递方式等。使用数据库别名的主要目的在于按名存取,就是说,因为别名蕴含了定位数据库足够的信息(比如像路径名等),知道了别名,就可以直接找到数据库而不必进行搜索,从而给使用数据库带来方便。在数据库别名栏有二个标签-Database和Configuration.前者显示各种的数据库可进行各种配置,后者是BDE管理的的配置。图3-2BDE管理器的运行界面 下面我们来配置本系统的BDE配置。第一步启动BDE,现选择Configuration标签(如图3—2-1),对BDE缺省参数配置,点击左边目录中Configuration/Drivers/Native/Oracle,这时再更改右边SERVERNAME中名字为在Oracle客户端连接时配置的访问数据库的别名“TEST",更改USERNAME为SCOTT(访问Oracle数据库缺省用户名),按Ctrl—A键保存配置。图3—2—1BDE管理器配置界面第二步选择标签Database配置应用程序使用的数据库别名,如图3—2—1a所示把鼠标的指针移到界面的左边区域,点击右键,弹出菜单,选择new菜单项新建一数据库别名,弹出界面如图3—2-1b,点击界面中下拉菜单选择数据库类型,这里选择Oracle,点击OK返回到管理界面,此时在列表中新增加一个Oracle数据库条目,更改条目名称为我们程序中所用的别名SBBORA,按Ctrl-A键保存配置。完成BDE配置后,用鼠标双击数据库别名SBBORA,弹出数据库登陆用户名和密码界面,在输入Oracle数据库内置访问用户名SCOTT和密码TIGER后,就可连接网上Oracle数据库。图3—2-1a图3—2-1b三、应用程序和数据库联系的工具—数据库访问控件数据库访问控件是Delphi中用来建立应用程序和数据库联系的工具,数据库访问控件也叫做数据存取控件(DataAccess),它们是通过数据引擎访问数据库,并提供数据库信息和用户接口之间的联系。大部分数据库访问控件都是非可视控件,因为它们封装了数据库连接、数据表格、查询及相似的元素。同时Delphi还提供了一些预定义控件,用来查看和编辑数据库数据。数据库访问控件可以允许应用程序通过BDE数据引擎访问数据库,将数据的信息传递给用户接口,并通过BDE将用户接口的数据反馈给数据库,这样就可利用数据库访问控件,并通过设计用户接口和数据库信息进行交换。Delphi6中的数据库访问控件在控制面板上的DataAccess选项卡和BDE选项卡如图3-3所示。(a)(b)图3—3数据库访问控件ﻩ当鼠标指针定在某个控件上时,就会显示出控件的名称。其中TTable、TQurey和TStoreProc属于数据集(DataSet)控件,起联系应用程序和数据库的作用。四、Oracle数据库的安装配置使用本系统采用客户机—服务器模式,数据库服务器强调的就是数据库可靠性和稳定性,Oracle数据库在这方面是一流的,数据库的性能也是一流的。所以我们选择它作为我们的后台服务器.众所周知Oracle数据库也是相当复杂的,给我们的设计也带来了挑战,下面来介绍一下Oracle数据库的安装、工作原理、配置过程。4.1、Oracle数据库的安装我们选用的Oracle8版本是Release8.0.5forWindowsNT企业版,在服务器和客户机都要安装.在服务器上装Oracle8EnterpriseEdition,客户机上安装Oracle8Client并选择ApplicationUser选项。把程序光盘放到计算机安装程序自动打开,分别根据上面的选项安装服务器和客户机,安装完毕重启动计算机,系统会自动打开Oracle的数据库和监听器,Oracle8服务器和客户机安装完毕。4.2、Oracle8数据库的基本内容和概念4。2。1角色Oracle使用角色的方法来限定各种用户的权力,在系统中可以有许多用户,各种用户有各种不同的角色,拥有不同的权力。因为实践表明与其很明确地赋一组权限给每一个用户,不如赋权给一个角色,然后把这个角色赋给一组用户。这样就可以实现动态的权限管理,当这组用户的权限必须改变时,仅仅改变角色的权限就可以了,组内用户的权限自动根据角色权限的改变而改变。通过设定角色的方法可以实现权限的选择和利用,赋与用户的角色可以被选择为可用或不可用。这个特性适用于在某些特定情况下用户权限控制的需要,当用户欲执行一个程序时,程序能根据它的不同的角色决定能否执行。所以对于一个数据库的应用程序,数据库管理员能够创建角色,赋与这个角色执行应用程序的权力。然后数据库管理员再把这个角色赋与别的角色和用户。一个应用程序能有几个不同的角色,每个角色赋于不同的权限以实现不同的作用权.角色和应用程序角色、用户角色、用户和关系如图4-2-1所示。执行角色执行角色数据浏览角色执行程序角色管理角色浏览角色用户执行程序、修改数据的权限执行程序、浏览数据的权限应用程序权限应用程序角色用户角色用户用户用户用户用户图4—2—1角色与用户的关系角色主要用来帮助定义数据库中的安全性。它也是把相应的优先级分配给一组用户的一种方法。在一些安全性较强的操作系统中也采用相似的方法。例如NetWare,windowsNT等。4。2.2、用户在安装过程中如果选择安装预定义的数据库,初始数据库有几个预定义的用户。其用户名和密码都是预定义的,安装完成后可以改掉原始的密码,以防止未授权的用户进入系统.当然,如果安装数据库时使用自定义的方式安装,在安装时就可以理发密码。例如INTERNAL就是一个默认的用户,它不是一个真正的用户,是SYS的别名。可以使用这个用户来执行数据库的日常管理工作。下面把预定的用户、密码和用法列在表4—2—1中.表4-2-1数据库预定义用户用户名密码用法INTERNALOracleDBA的用户名,使用它可以执行数据库的日常操作SYSCHANGE_ON_INSTALLDBA的用户名SYSTEMMANAGER可用的数据库管理员SCOTTTIGERCONNECT和RESOURCE角色的用户名(登陆、创建新对象,我们在编程中使用该用户名)DEMODEMOCONNECT和RESOURCE角色的用户名DBSNMPDBSNMPOracleEnterpriseManager管理员CTXSYSCTXSYS内容Cartridge管理员ORDSYSORDSYS图像Cartridge管理员MDSYSMDSYS空间Cartridge管理员4.3、客户与服务器的连接在安装完Oracle8的客户和服务器之后,必须要在客户与服务器数据库之间建立完整的连接,使之能够通信,这样才能充分发挥Oracle数据库的网络功能,才能构造功能强大的分布数据库系统。而要完成客户与服务器之间的连接,必须要用到Oracle的Net8。下面介绍Net8来完成客户与服务器之间的连接。4。3.1Net8的功能Net8的主要功能是在客户与服务器之间建立起数据的连接和会话。一旦这个连接建立起来,Net8就可以在客户与服务器之间进行数据通信.进行数据库登录时,在客户服务器之间就建立起这仲联系,客户的住处就可以传到远程的服务器上。这时就进入一个分布式的数据库系统,尽享网络的功能。如图4—3-1所示是Net8的一个简单的Client/Server网络数据连接。Net8执行的主要任务就是管理会话连接、管理数据传输并处理异常。Net8在监听服务的帮助下创建并管理数据库会话请求.Net8还以与管理连接请求同样的方式管理所有来自客户应用程序的中断请求,它还可以识别和中断由客房应用程序异常中断而导致的非法连接。这使在Oracle8网络中的非法连接占用的服务器资源减到最少,Net8还自动迫使数据库撤消所有由非法连接用户持有的未执行的事务处理和锁,以维护数据库中数据的完整性。Net8管理数据的传输,使数据能在Oracle8客户和服务器间被传输和理解。在客户端,使用Net8中的发送请求提交一个SQL会话请求;在服务器端Net8处理到来的请求并将其发送给数据库以响应客户的请求。Net8还管理和初始化来自Oracle8客房或服务器中断的请求,并处理异常。Oracle8数据库Oracle8数据库数据库请求和响应服务器请求的Net8传输客户请求的Net8请求运行Net8的客户运行Net8监听服务的Oracle8服务器图4-3—1服务器与客户的数据连接Net8就是以前版本Oracle的SQL*NET。Net8是存在于Oracle8客户与服务器之间的一个软件层,但它处于具体的网络协议之上,它使用透明网络层(TNS)建立并维护连接,TNS是Net8的下层,它执行与具体网络协议的交互任务。通过Net8与网络中其他的计算机的通信,可以在多协议的异构网络中传递数据库信息,从而实现网络透明性,这使Oracle在网络中的实用性大大增强,以满足网络时代对数据库的要求。4.3。2、Net8的工作原理与过程为了了解Net8的工作原理以及它在Oracle8网络中的作用,需要首先了解Net8的工作过程,在服务器的主机上,Net8打开Oracle8的数据库和监听器以监听来自客户的数据库请求,在监听器中可以设定监听的地址,这些地址是报务器处理其数据库请求的客户地址,一旦监听地地址发出数据库请求监听器接受并把它传递给数据库管理系统,以处理客户的请求。用户从客户端提交一个连接请求和数据库请求。便如用户要通过SQL*PLUS连接远程的数据库,就必须提供用户名、口令以及希望连接的数据库服务名和连接方式,数据库服务名被映射到一个特定连接描述符所包含的网络地址上,这些网络地址被包含在一个名叫TSNMAMES.ORA的设置文件或一个Oracle8的名字服务器中。SQL*PLUS将这个请求传递给客户机上的Net8,通过网络传输到Oracle8的数据库服务器。在服务器上通过监听器接受到这个请求,建立起客房与网络服务器之间的一次会话.Net8的网络监呼器通过Net8协议适配器接收来自客户的连接.它支持一些广泛使用的网络协议,如TCP/IP,SPX等。每次客户要求建立与Oracle8服务器的会话时,服务器的Net8网络监听器收到实际的请求。结于一个特定的Oracle8数据库报务器这些服务通常配置为监听一个听众配置文件LISTENERORA中指定的地址.一旦Net8网络监听服务开始监听,就表明Oracle8数据库打开并接受应用程序会请求。接收到请示后,监听服务可将请求转给一个特定的服务进程以响应客户请求4.3.3、Net8的体系结构Oracle8对网络的支持是通过Net8来实现的,一个Oracle8的网络环境包括Oracle数据库、客户以及数据库与客户的通信,它是一个分布式的系统。Net8使用透明网络层(TNS)和标准网络协议连接的客户与服务器并建立会话。而Net8也分层来完成客户与服务器的连接,下面介绍各层的作用.先讲述一下Net8体系结构和服务进程,使用户明白如何在客房端发出连接请求及数据库返回查询信息的过程.Oracle8的Net8是基于开放系统互连(OSI)参考模型之上的,在开放系统互连参考模型中,不同计算机之间的通信是分层的。住处在软件代码的若干之间传递。而Net8也是分层的,这种结构使Oracle8服务器和客户能够更好地共享、修改和操纵数据。在客户端信息被层层找包以用于网络上传输,这些信息在服务器端会被相应的层解包并被理解。分层有利于功能的分解和错误的较验.下面介绍Net8各层作用。表4—3—1描述Net8的分层和各层的功能。表4—3—1Net8的各层及其功能层名层的描述NetworkInterface(NI)网络接口层为访问Net8的应用程序提供接口NetworkRouting(NR)网络路由层支配网络的路由,把请求交给Oracle8的数据服务器NetworkNaming(NN)网络名字层将别名转化为Net8的目的地址NetworkAuthentication(NA)网络认证层协商目的地址之间的认证请求TransparentNetworkSubstrate(TNS)透明网络层处理所有来自Net8的请求和响应4。3.4、实现一个Net8的网络Net8提供了两个可视化的工具,使用户可以更方便地建立和测试Oracle8的网络环境。这两个工具是OracleNet8Assistant和OracleNet8EasyConfig。下面讲解如何用这两上工具来建立和测试Oracle8的网络环境。OracleNet8Assistant的界面如图4-3-2所示。图4-3-2Net8Assistant在Net8Assistant中可以修改客房和服务器的配置文件、服务名、Oracle8的名字服务器和监听器的配置.Oracle在按照前面所述安装好Oracle的产品以后,在Net8Assistant中可以看到定义好的服务名和监听器。在Listener的地址选项中加入客户的地址、协议和端口,重新启动计算机使服务和监听器有效,这时服务器就可以与网络进行连接了。服务名(ServiceNames)用来指定网络上数据库服务的身份和地址的一名字.服务名被映射到连接描述符上,连接描述符可被存储在本地客户机上或的名字服务器上。在中数据库服务名要求是唯一的,以避免访问冲突,在的网络中,为了达到服务名唯一的要求,常作用域的概念。域是所有计算机或服务一个逻辑组,域中的计算机名必须唯一。在域内的数据库服务名自动加上域名,例如服务名为TCPIPDATA,它是所在的域的域名是WORLD,为个数据库服务的服务名就是TCPIPDATAWORLD。在Net8Assistant中可以创建和修改服务名的默认域,如图4-3-3所示.图4—3-3建立默认的域下面介绍如何利用Net8EasyConfig来创建一个到数据库服务的简单连接:Net8EasyConfig中的设置如图4-3—4所示.在这个对话框中,也可以选择修改、删除、测试等操作,它们的操作与建立新服务的操作相似,下面只讲一下新建服务的操作,其余的操作可参照本操作执行。单击Next按钮进入下一个对话框。如图4-3—5所示。图4—3—4创建一个新服务名图4-3-5选择协议在图4—3-5的列表框中选择连接数据库的协议,各种网络可以作用不同的协议,如需要通过英特网来连接远程网络,就可以选择TCP/IP协议。选择好所使用的协议后,单击Next按钮进入下一个对话框。如图4-3—6所示图4-3—6选择主机号和端口号有主机名(HostName)文本框输入主机的IP地址。如果前面协议选的是命名管道,主机名可以是计算机名。端口号(portNumber)1521是连接大部分数据库的默认端口号,单击Next按钮进入下一个对话框。如图4-3—7所示。图4—3-7选择数据库系统标识符在上图所示的数据库的系统标识(DatabaseSID)文本框中输入连接的数据库实例的系统标识。单击Nest按钮,弹出如图4-3-8所示的对话框,单击其中的TestService按钮,进行连接测试,弹出的对话框如图4-3-9所示。单击Test按钮测试客户与服务器的连接,成功以后就可以进行客户与数据库服务器的数据通信。完成客户机与服务器的连接后,在Delphi的BDE作连接服务器的配置,我们就能通过对Delphi的进行数据库的开发应用。图4-3—8测试服务器图4-3-9ﻬ第四章招标信息管理系统的功能与结构系统的主要功能本系统的主要功能是把招标工作的全过程录入到计算机中,一方面存储原始数据,一方面利用这些数据分析投标厂商信息、市场行情、投资统计、规范报表等.主要内容包括:厂商信息录入:厂商名称、厂商类别、地址、邮编、开户银行、法人代表、固定资产、企业简介等。招标计划录入:工程项目名称、设备类别、招标编号、设备名称、规格型号、图号、数量、推荐投标人1—5、技术协议完成时间、编发标书时间、开标评标时间、主持人等。评标情况录入:工程项目名称、设备类别、招标编号、设备名称、规格型号、开标地点、技术评分、推荐投标人、竞标单位报价、中标金额等。资料交交接情况录入:序号、工程名称、卖方名称、招标文件、投标文件、中标通知书、合同号等。厂商信息、招标信息、设备信息等的查询.招标计划、商务比较表、综合评标报告、中标通知书、月招标设备统计等报表的输出.系统的性能要求由于软件的输入工作量大,对于一些相对固定的数据,不应让用户频频输入(特别是汉字),而应让用户用轻松选择。例如在输入厂商信息时,地区、省份、厂商类别、实现鼠标选择输入,还有在输入招标计划表时,投标厂商名称要实现用鼠标点击图标弹出菜单,做查找后点击查找结果输入厂商名称。系统中有关日期输入的地方很多,选用界面友好的日历控件,实现日期的查找和输入。输出的报表要符合现行公司规定的报表格式,系统对输出的报表要有自动编号功能.提供在线帮助功能,具有较强的容错功能。ﻬ三、系统的结构根据上一章系统功能的分析,将系统分解成几个模块来分别设计应用程序界面,如下图所示:四。系统流程图根据系统分析数据的流程图如下:ﻬ第五章招标信息管理系统的实现建设数据库的需求分析根据上一章的数据述流程图,可以列出系统所需的数据项和数据结构:厂商信息:厂商ID、厂商名称、厂商类别、地址、邮编、开户银行、法人代表、固定资产、企业简介等。招标计划:工程项目名称、设备类别、招标编号、设备名称、规格型号、图号、数量、推荐投标人1-5、技术协议完成时间、编发标书时间、开标评标时间、主持人等。设备概算:工程项目名称、设备类别、招标编号、设备名称、规格型号、预定数量、重量、概算等竞标情况:工程项目名称、设备类别、招标编号、设备名称、规格型号、数量、竞标单位报价、中标金额等评标情况:工程项目名称、设备类别、招标编号、设备名称、规格型号、开标地点、技术评分、推荐投标人等.资料交付:序号、工程名称、卖方名称、招标文件、投标文件、中标通知书、合同号等。(以上具体数据结构详见源程序)二、数据库概念结构设计招标信息管理系统的E—R图:如下
三、数据表的创建根据系统所需的数据项、数据结构和实体-关系模型,进一步优化数据表,在Delphi中用DatabaseDesktop工具用SQL的CREATETABLE语句在Oracle8数据库上创建数据表。厂商基本情况表CREATETABLESCOTT.”厂商基本情况表”("厂商ID"NUMBER(*)NOTNULL,”厂商名称”VARCHAR2(50),"厂商类别ID"NUMBER(*),”地址"VARCHAR2(50),”城市”VARCHAR2(20),"省份ID”NUMBER(*),”地区ID"NUMBER(*),"邮编"VARCHAR2(50),"营业执照注册号"VARCHAR2(50),”税号”VARCHAR2(50),”开户银行"VARCHAR2(50),"帐号"VARCHAR2(50),”电话"VARCHAR2(50),"传真"VARCHAR2(50),"法人代表”VARCHAR2(20),"委托代理人"VARCHAR2(20),"企业简介”VARCHAR2(255),"固定资产"NUMBER(*),"流动资产"NUMBER(*),"企业总人数”NUMBER(*),”上年产值"NUMBER(*),”上年净利润”NUMBER(*),”高级技工人数"NUMBER(*),"中级职称人数”NUMBER(*),"高级职称人数"NUMBER(*),"质量认证体系"VARCHAR2(50),"厂商基本情况"VARCHAR2(255),"银行资信"VARCHAR2(50),”证明出具单位"VARCHAR2(50),"厂家简称"VARCHAR2(20),"网内网外"VARCHAR2(10))厂商类别表CREATETABLESCOTT."厂商类别表"("厂商类别ID”NUMBER(*)NOTNULL,”厂商类别"VARCHAR2(20))厂商联系人表CREATETABLESCOTT."厂商联系人表”("编号"NUMBER(10,0)NOTNULL,"类别ID"NUMBER(10,0),"姓名"VARCHAR2(40),”职务”VARCHAR2(40),"职称"VARCHAR2(40),"办公室电话”VARCHAR2(60),"住宅电话”VARCHAR2(40),"手机"VARCHAR2(40),"传呼"VARCHAR2(40),"电子邮件地址"VARCHAR2(60),"传真”VARCHAR2(40),"厂商ID"NUMBER(10,0))厂商业绩表CREATETABLESCOTT."厂商业绩表”("厂商业绩ID"NUMBER(*)NOTNULL,"序号”NUMBER(*),"设备名称”VARCHAR2(100),”型号规格"VARCHAR2(100),”数量"NUMBER(*),”业绩分类ID”NUMBER(*),"质量情况"VARCHAR2(100),”厂商ID"NUMBER(*))地区表CREATETABLESCOTT.”地区表”(”地区ID”NUMBER(*)NOTNULL,”地区"VARCHAR2(16))工程项目表CREATETABLESCOTT。"工程项目表"(”序号”VARCHAR2(8),"工程项目名称"VARCHAR2(40),"工程项目ID”VARCHAR2(8)NOTNULL)竞标信息表CREATETABLESCOTT."竞标信息表”("工程项目名称"VARCHAR2(40),"工程小项"VARCHAR2(10),”竞标单位"VARCHAR2(40),"招标编号"VARCHAR2(30),”设备名称"VARCHAR2(40),”设备类别"VARCHAR2(8),"规格型号"VARCHAR2(40),"数量"VARCHAR2(8),"重量”VARCHAR2(8),”竞标单位报价"VARCHAR2(10),”交标时间"VARCHAR2(14),”开标时间"VARCHAR2(14),”承诺书"VARCHAR2(8),"报价方式”VARCHAR2(8),"运保费"VARCHAR2(10),"设备报价"VARCHAR2(10),"安装调试费"VARCHAR2(10),”中标金额"VARCHAR2(10),"序号"NUMBER(*)NOTNULL,"中标时间"VARCHAR2(10),"其它费用"VARCHAR2(10))厂商考核情况表CREATETABLESCOTT."考核情况表”("考核ID"NUMBER(10,0)NOTNULL,"年度"VARCHAR2(44),"订货量"NUMBER(10,0),”交货情况"VARCHAR2(80),"设备质量”VARCHAR2(80),"现场服务"VARCHAR2(80),"质量事故"VARCHAR2(80),"厂商ID”NUMBER(*))联系人类别表CREATETABLESCOTT."联系人类别表"("类别ID”NUMBER(*)NOTNULL,”联系人类别”VARCHAR2(20))招标计划表CREATETABLESCOTT。"招标计划表"(”工程项目名称”VARCHAR2(30),"设备类别"VARCHAR2(16),”招标编号"VARCHAR2(30),"设备名称"VARCHAR2(40),"规格型号”VARCHAR2(40),”图号"VARCHAR2(40),"数量"VARCHAR2(12),”推荐投标人1”VARCHAR2(50),”推荐投标人2”VARCHAR2(50),"推荐投标人3"VARCHAR2(50),"推荐投标人4"VARCHAR2(50),"推荐投标人5”VARCHAR2(50),"技术协议完成时间"VARCHAR2(28),"编制标书发标"VARCHAR2(28),"组织答疑会议"VARCHAR2(28),"开标”VARCHAR2(28),"评标”VARCHAR2(28),"签订合同"VARCHAR2(28),"发放图纸"VARCHAR2(28),"主持人"VARCHAR2(20),"主持人电话"VARCHAR2(16),"计划内外”VARCHAR2(16),"工程序号"VARCHAR2(16),”招标方式"VARCHAR2(40))省份表CREATETABLESCOTT。"省份表”(”省份ID"NUMBER(*)NOTNULL,"省份"VARCHAR2(40))特种资质证书表CREATETABLESCOTT."特种资质证书表"("特种资质证书ID"NUMBER(*)NOTNULL,"序号"NUMBER(*),”特种资质证书”VARCHAR2(200),"有效期"VARCHAR2(60),”厂商ID"NUMBER(*))项目设备概算表CREATETABLESCOTT."项目设备概算表"(”工程项目名称”VARCHAR2(40),”招标编号”VARCHAR2(30)NOTNULL,”设备名称”VARCHAR2(40),”设备类别"VARCHAR2(8),"规格型号"VARCHAR2(40),"预订数量"VARCHAR2(6),"预订重量"VARCHAR2(6),"概算”VARCHAR2(10))业绩分类表CREATETABLESCOTT。"业绩分类表”("业绩分类ID"NUMBER(*)NOTNULL,"业绩分类”VARCHAR2(20))职称类别表CREATETABLESCOTT."职务类别表”("类别ID"NUMBER(10,0)NOTNULL,”职务类别"VARCHAR2(100))中表信息表CREATETABLESCOTT。"中标信息表"(”工程项目名称"VARCHAR2(40),”工程小项"VARCHAR2(10),"招标编号"VARCHAR2(30)NOTNULL,”设备名称"VARCHAR2(40),"设备类别"VARCHAR2(8),"规格型号"VARCHAR2(40),"数量"VARCHAR2(6),"重量"VARCHAR2(6),"中标厂家"VARCHAR2(40),"中标时间"VARCHAR2(14),"中标金额"VARCHAR2(8),”中标方式"VARCHAR2(8),"承诺书”VARCHAR2(6),”合同号"VARCHAR2(40))主要产品表CREATETABLESCOTT.”主要产品表"("主要产品ID”NUMBER(*)NOTNULL,"序号”NUMBER(*),"产品名称”VARCHAR2(40),”型号规格"VARCHAR2(60),"参考单价”VARCHAR2(20),”厂商ID"NUMBER(*))主要装备表CREATETABLESCOTT.”主要装备表"("装备ID"NUMBER(10,0)NOTNULL,"序号”NUMBER(10,0),”设备名称"VARCHAR2(200),"加工检测范围"VARCHAR2(200),”厂商ID"NUMBER(10,0))资料交付表CREATETABLESCOTT。"资料交付表"(”序号"VARCHAR2(10)NOTNULL,"工程名称”VARCHAR2(40),"卖方名称”VARCHAR2(60),”招标文件”VARCHAR2(30),”投标文件"VARCHAR2(30),"商务评价表”VARCHAR2(30),”技术评价报告及汇总表"VARCHAR2(30),"综合评价报告"VARCHAR2(30),”中标通知书"VARCHAR2(30),"合同号"VARCHAR2(40),"考察报告"VARCHAR2(30),"工作联系单"VARCHAR2(30),"技术协议”VARCHAR2(30),"文本合同"VARCHAR2(30),"其它”VARCHAR2(30),"询价书"VARCHAR2(30),"报价"VARCHAR2(30))综合评价表CREATETABLESCOTT.”综合评价表”(”序号"NUMBER(*)NOTNULL,"工程项目名称"VARCHAR2(40),”招标编号"VARCHAR2(50),"设备名称"VARCHAR2(40),"开标地点"VARCHAR2(40),”推荐投标人1"VARCHAR2(50),”技术评分1"VARCHAR2(20),"补充说明1”VARCHAR2(20),”推荐投标人2"VARCHAR2(50),"技术评分2"VARCHAR2(20),"补充说明2”VARCHAR2(20),"推荐投标人3"VARCHAR2(50),"技术评分3"VARCHAR2(20),"补充说明3"VARCHAR2(20),"推荐投标人4”VARCHAR2(50),"技术评分4"VARCHAR2(20),"补充说明4"VARCHAR2(20),"推荐投标人5"VARCHAR2(50),”技术评分5"VARCHAR2(20),"补充说明5"VARCHAR2(20),"综合评述”VARCHAR2(255),"推荐预中标人"VARCHAR2(50),”会签意见"VARCHAR2(255),"会签时间”VARCHAR2(20),"主持人”VARCHAR2(20),”监督人”VARCHAR2(20),"投标总价1”VARCHAR2(20),"投标总价2”VARCHAR2(20),”投标总价3"VARCHAR2(20),"投标总价4"VARCHAR2(20),"投标总价5"VARCHAR2(20),"开标时间"VARCHAR2(20))四、录入初始数据数据表创建成功后,数据库中还没有实际的数据。为保证外部键能使用,利用Delphi6中的SQLExplorer工具向数据库的一些固定内容的表格输入数据,如省份、类别、主持人、地区等.五.各个功能模块的创建1、工程的创建启动Delphi后自动创建一个工程Projec1和一个窗体Form1。在“Project"菜单中选择“Options…"来修改工程的属性。设置工程标题“Title"为“招标信息管理系统”,这样将在Windows任务栏中显示;图标为选定的图标,最后的结果如图5—1所示.图5-1工程属性修改窗口修改完成以后,单击“File”菜单中的“SaveProjectAs…”选项保存工程,工程文件名为“Project1".在保存工程文件之前,首先要报存主窗体单元,窗体单元的文件名为“u_main。pas”.2、应用程序窗体的创建应用程序的主窗体布局如5-2,上面是菜单栏,中间一行按钮为各功能模块启动按钮,下面为数据输入选择框,最下面是数据显示窗,另还有相应数据组件。图5-2主窗体布局上述控件分别按钮在“standard”控件组中添加,数据页在“win32”控件组中添加,数据控件在“BDE”、“DataAccess"、“Datacontrols"中增加。数据库的连接在窗体上添加“Database”控件后,对其中数据库别名选择我们在“BDE”配置好的数据库别名即可如图5—3.图5—3Database控件配置 如在数据目录点击“招标计划"就会在右边的数据表中显示相关记录,下面的数据表显示当前记录的数据。部分源程序举例如下:procedureTForm1。TabSheet3Show(Sender:TObject);var//数据类型定义i:integer;aa:array[0..100]ofstring;beginifsqlcondition3='招标计划’thenﻩﻩ ﻩ//事件beginrichedit1.clear;query2.active:=false;query2.SQL。clear;query2.SQL.add('SELECT工程项目名称,招标编号,计划内外,设备类别,设备名称,规格型号,图号,数量,招标方式,');query2。SQL.add('推荐投标人1,推荐投标人2,推荐投标人3,推荐投标人4,推荐投标人5,技术协议完成时间,’);query2。SQL.add('编制标书发标,开标,评标,签订合同,主持人,主持人电话,工程序号’);query2.SQL。add('FROM招标计划表招标计划表');query2。SQL.add(’where工程项目名称=:aa1’);query2.SQL.add(’orderby工程序号,工程项目名称,设备类别,招标编号');query2。parambyname('aa1').asstring:=copy(sqlcondition2,1,length(sqlcondition2)-4);query2.active:=true;ifquery2.RecordCount<>0thenbeginaa[0]:='工程项目名称:'+query2.fieldbyname('工程项目名称’).asstring;aa[1]:=’工程序号:’+query2.fieldbyname(’工程序号').asstring;aa[2]:='计划内外:’+query2。fieldbyname(’计划内外’)。asstring;aa[3]:=’招标编号:’+query2.fieldbyname(’招标编号’).asstring;aa[4]:='设备类别:'+query2.fieldbyname('设备类别’).asstring;aa[5]:='设备名称:’+query2.fieldbyname('设备名称').asstring;aa[6]:='规格型号:'+query2.fieldbyname('规格型号').asstring;aa[7]:=’图号:’+query2。fieldbyname('图号').asstring;aa[8]:='数量:’+query2。fieldbyname('数量').asstring;aa[9]:='招标方式:'+query2.fieldbyname(’招标方式').asstring;aa[10]:='推荐投标人1:’+query2。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辽阳古建施工方案审批
- 2024年三季度报湖南地区A股销售净利率排名前十大上市公司
- 快船新球馆施工方案
- (教研室)福建省宁德市2024-2025学年高二上学期期末考试语文试题
- 扬尘施工方案
- 预制滤板施工方案
- 2025年柳工营销面试题及答案
- 6年级上册20课青山不老课堂笔记
- 教育教学评价表
- 低空经济产业专项引导基金
- 妇产科学(甲)知到智慧树章节测试课后答案2024年秋浙江大学
- 2022年HTD-8M同步带轮尺寸表
- 皮带滚筒数据标准
- 脚手架操作平台计算书
- 内科学第八版循环系统教学大纲
- 煤矿供电系统及供电安全讲座方案课件
- 绿色建筑及材料分析及案列
- 实用中西医结合诊断治疗学
- 幕墙工程技术标范本
- 《施工方案封面》
- (完整版)ppt版本——哈工大版理论力学课件(全套)01
评论
0/150
提交评论