科研项目管理系统-VB编程毕业设计_第1页
科研项目管理系统-VB编程毕业设计_第2页
科研项目管理系统-VB编程毕业设计_第3页
科研项目管理系统-VB编程毕业设计_第4页
科研项目管理系统-VB编程毕业设计_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、上海交通大学CIM所科研项目管理系统开发摘 要本设计按照管理信息系统的开发方法,通过系统分析、系统设计、系统实施等一系列开发过程,以上海交通大学计算机集成制造研究所为应用背景,开发一个有实用价值的科研项目管理系统,实现对科研项目和发表的科技论文的计算机管理,以提高项目及论文管理的水平,提供及时、准确的信息服务并减轻管理人员制作报表、统计分析的负担,从而摆脱该研究所长期以来通过人工对科研项目及发表论文的落后面貌。该系统能对科研项目及科技论文实现较全面的管理,提供数据录入、多条件查询、统计、报表输出等日常管理所必需的功能,并在系统的易使用性上作了较大的努力。该系统是一个基于客户机/服务器的系统,可

2、以在多个客户机上同时运行。采用Visual Basic 6.0作为系统的开发语言,运行的环境为Windows NT 4.0操作系统,后台的数据库管理系统选用Microsoft Access 20XX。目 录第一章 绪 论.4第二章 系统分析2.1概述.62.2现存的问题及目标.62.3 需求分析 2.3.1 信息需求.72.3.2 功能需求.8第三章 系统设计3.1 数据库设计3.1.1 数据库概念设计.103.1.2 数据库逻辑设计.103.1.3 数据库物理设计3.1.3.1 数据库选型. 123.1.3.2 数据库结构定义. 133.1.3.3 完整性规则. 163.1.3.4 索引.

3、163.1.3.5 安全性考虑. 163.1.3.6 磁盘空间分配. 173.2 平台选型3.2.1 选型的原则.173.2.2 开发平台选择.173.3 系统总体结构.183.4 数据库访问接口设计.173.4.1 数据访问接口选择. 213.4.2 具体实现.213.5 初始化模块设计.223.6 主界面设计. 223.7 录入模块设计.233.8 查询模块设计.253.9 设置模块设计.303.10 帮助模块设计.31第四章 软件测试分析 4.1 测试的目的. 324.2 软件功能的验证.334.3 结论.33第五章 项目开发总结.34致 谢.36参考文献.36第一章 绪 论 上海交通大

4、学计算机集成制造研究所(以下简称CIM所)每年都承接了大量的科研项目及发表为数众多的科技论文,对这些成果进行统计所得到的信息在该研究所的管理中具有重要的意义;首先,它反映了CIM所的学术水平和成就,是对该所进行各种评估时的主要参考依据;第二,通过这些统计结果,可以看出CIM所的发展趋势,从而为研究所的发展决策提供重要的辅助信息;第三,它是考察某位研究人员的工作成就的主要途径之一;最后,这些统计信息也是上级主管部门经常要求上报的信息。显然,需要有一套行之有效的手段来对CIM所的科研项目及发表论文进行管理。到目前为止,CIM所的科研项目管理一直采用人工管理的方式,并无一套成文的管理规范,也没有相应

5、的专职管理人员,只有当上级部门发文要求统计项目或论文情况时才由有关人员查阅本所的各种相关文档,人工进行统计并制作报表。这种落后管理的弊端是显而易见的。在现在这个计算机得到普遍应用的时代,很多过去依靠人工进行的管理都由计算机所取代。尤其在信息的存储、加工和维护上计算机能取得人所不能比拟的作用。通过计算机进行管理的主要方法是建立管理信息系统(Management Information System,MIS)。对管理信息系统有许多种解释,按照管理信息系统的创始人明尼苏达大学的Gordon B.Davis教授给出的定义,MIS是一个利用计算机硬件和软件,手工作业,分析、计划、控制和决策模型,以及数据

6、库的用户机器系统。它能提供信息,支持企业或组织的运行、管理和决策功能。我国学者薛华成则将其定义为:管理信息系统是一个以人为主导,利用计算机硬件、软件、网络通信设备以及其他办公设备,进行信息的收集、传输、加工、存储、更新和维护,以企业战略竞优、提高效率和效益为目的,支持企业高层决策、中层控制、基层运作的集成化的人机系统。尽管定义不同,但总的说来,管理信息系统终究要起到一个提高管理效率、减轻管理人员负担的作用。无论对于企业或其他组织,建立一个管理信息系统都是实现其先进管理所必须的。有鉴于此,开发一个CIM所的科研项目和论文管理信息系统是很有必要的。它将有助于将管理人员从烦琐的管理工作中解脱出来,使

7、管理系统化、条理化,能迅速获得感兴趣的信息。管理信息系统是一个一体化的系统或集成系统,通常包括业务信息系统、知识工作系统、决策支持系统等。根据现有人力和时间限制条件以及项目和论文管理的特点,不可能也没有必要建立一个完整的、具有所有功能的管理信息系统。我们选择开发一个相对较小的实用的数据处理系统。数据处理系统(Data Processing System,DPS)又称为电子数据处理系统(Electronic Data Processing System,EDPS)或业务处理系统(Transaction Processing System,TPS),它属于管理信息系统的范畴,但不是管理信息系统的全

8、部。其主要特点是简单、精确和标准化。业务范围主要是业务数据的登录,数据的编辑,将数据信息以文件形式存入软盘、磁带或硬盘,通过存取这些数据信息打印出报表,主要的操作是排序、列表、更新、查询等,主要使用的运算是简单的加减乘除,其输入一般是原始的单据或表单,输出一般是分类或汇总的报表,主要使用的人员是运行人员。这一类系统由于处理的问题处于较低的管理层,因而问题比较结构化,即处理步骤较固定,系统结构相对比较简单,无须很复杂的实现技术。 去年上海交通大学计算机集成研究所已经开发了一个基于SQL server的科研项目管理系统,今年所里想将该系统移植到Access数据库上。本设计的主要任务就是为上海交通大

9、学计算机集成研究所移植并升级更有实用价值的科研项目及论文管理系统,以实现CIM所的科研项目及论文管理计算机化,摆脱人工进行管理的落后面貌。并作为一项毕业设计的成果。 第二章 系统分析2.1 概述 管理信息系统通常是一个复杂的系统,它既受内部环境的互相影响,又受外部环境的制约,需要考虑的问题很多。系统分析首先应对系统现状进行分析,提出新系统要达到的目标,然后确定用户对目标系统的要求,为软件设计提供基础。其主要任务是将在系统详细调查中所得的文档资料集中在一起,对组织内部整体管理状况和信息处理过程进行分析;目的是将用户的需求确定下来。其中的需求分析是系统开发工作中最重要的环节之一,是系统设计的依据,

10、需求分析已经成为一门独立的学科,称为需求工程(Requirement Engineering,RE),即应用已证实有效的技术、方法进行需求分析,确定用户需求,帮助开发人员理解问题并定义目标系统的所有外部特征。系统分析一般还应包括业务流程及数据流程分析等,但由于项目及论文管理来说,只是一个简单的归档及统计问题,故可以省去。重点放在用户的信息和功能需求上。由于目前对CIM所的项目和论文进行管理的人员主要是该所的领导,工作很繁忙,无法抽出过多时间进行交流,所以采取的需求分析方法主要采用首先对CIM所过去产生的各种手工报表进行分析,从用户的角度提出需求的设想,然后再请所里领导修改。2.2 现存的问题及

11、目标经过分析,得出目前采用人工管理存在如下主要问题:(1)项目信息查询、统计困难 由于缺乏有效的规范,无法对本所的所有科研项目进行统一管理,当需要进行统计工作或需要查询某个项目的基本情况(如拨款情况或成果情况)时只能通过向该项目的负责人询问,造成极大的不便。特别是当需要以某种条件进行统计或查询时(如统计本所所有863计划项目或统计本所所有获奖项目等)尤其困难。(2)论文统计困难由于论文发表具有周期长、分布广泛的特点,当发表通知或杂志、期刊抵达时,往往相关人员已经遗忘甚至已经离开研究所,由于缺乏专职管理人员和一套行之有效的管理规范,通知或杂志寄到时没有及时归档记录,以至于当需要进行论文统计工作时

12、不得不东查西找,效率非常低,并且极易统计不完全或由于遗忘而造成数据不属实的现象。(3)浪费领导的时间和精力当需要进行统计工作,尤其是用于送交上级部门的报表,一般工作人员往往不熟悉情况或要求而不得不由所里主要领导来完成,浪费了领导的大量时间和精力。根据上面的分析,提出以下开发目标:(1) 提高项目及论文管理的水平,提供及时、准确的信息服务;(2) 提高信息检索的效率,实现灵活的查询,包括多条件查询、模糊查询等;(3) 减轻管理人员制作报表、统计分析的负担;(4) 实用。系统规模不宜太大,但又要能保证支持日常工作的要求;(5) 系统应易于修改和扩充。2.3 需求分析 2.3.1信息需求(1)关于项

13、目基本情况的信息l 项目编号:格式为 年份+序号l 项目名称(中文、英文)l 负责人1l 负责人2l 主要承担人1l 主要承担人2l 项目来源l 项目性质 分为国家自然科学基金、863、部省科委及企业集团四种情况l 文件柜号l 科研代号l 电子文档名l 开始日期:格式为 年份+月份+日期l 结束日期:格式为 年份+月份+日期 注:项目编号是一个七位字符串,其格式为YYYY-#,其中YYYY为立项年份,#是两位数,表示该项目在某年中的立项顺序。(2)关于项目财务情况的信息l 财务编号l 单位分类l 总经费(万元)l 第一(二六)次拨款数(万元)l 第一(二六)次拨款日期:格式为 年份+月份l 第

14、一(二六)次免扣额(万元)l 拨款总额(计算项)l 累计支出(万元)(3)项目成果情况l 验收日期:格式为 年份+月份+日l 鉴定日期:格式为 年份+月份+日l 获奖日期:格式为 年份+月份+日l 鉴定单位l 获奖名称l 授奖单位l 证书号(4)关于期刊论文情况的信息l 论文名称(中文、英文)l 发表日期:格式为 年份+月份l 期刊名称l 作者(1-6)l 范围 分为全国、国际、地方三种情况l 检索源 分为EI、SCI、核心和一般四种情况l 检索号l 学科门类l 来源l 出版单位(5)关于会议论文情况的信息l 论文名称(中文、英文)l 会议时间:格式为 年份+月份l 会议名称l 入选论文集名称

15、l 作者(1-6)l *范围 分为全国、国际、地方三种情况l 学科门类l 来源l 会议地点 2.3.2 功能需求(1) 数据录入 分别以项目、期刊论文、会议论文为单位录入项目、期刊论文及会议论文的全部数据,对项目也可以分别以基本情况、财务情况或成果情况为单位录入。录入时应包括对数据的正确性校验。(2) 数据维护 支持平时对数据的修改,包括插入、删除及更新。(3) 查询 i 项目查询以项目名称、负责人、主要承担人、项目性质、开始日期、财务编号为条件查询项目的各种情况,对项目名称支持模糊查询。ii 期刊论文查询以发表日期、来源、检索源为条件查询。iii 会议论文查询以会议时间查询。iiii 设备查

16、询 以购置设备日期、设备经费、单位分类为条件查询。iiiii 支持自定义复杂条件查询。 查询结果要求能以下列统计报表的形式打印输出:项目总览表项目经费情况表项目成果情况表期刊论文统计表学术论文统计表(4) 其他要求 系统要有一定的安全保障,对于影响数据库内容的操作,例如录入、插入、删除等,必须验证用户身份。系统必须具有一定的灵活性,对于用代号设置的字段(例如项目性质、检索源等)必须能够进行动态修改并自动显示在报表中。软件应有良好的易使用性,操作应尽量简单,有联机帮助对用户进行使用指导及在用户输入错误、数据库未连接、打印机未准备好等意外情况情况下提供详细的帮助信息。第三章 系统设计3.1 数据库

17、设计3.1.1 数据库概念设计本系统结构比较简单,只有三个相互独立的实体:项目、期刊论文和会议论文。其中项目用项目编号、期刊论文和会议论文用论文名称作为码。3.1.2数据库逻辑设计该系统由三个基本关系组成,其模式结构如下:(1) 项目(序号,项目编号,合同号,负责人1,负责人2,主要承担人1,主要承担人2,项目来源,项目性质,开始日期,结束日期,文件柜号,电子文档名,财务编号,总经费,货币类型,拨款数(1-4),拨款日期(1-4),免扣额(1-4),累计支出,验收日期,鉴定日期,鉴定单位,获奖名称,获奖名称,授奖单位,证书号)各字段的定义如下所示:名 称类 型格 式其 他序号char(7)yy

18、yy-#主键项目编号varchar(10)yy-mm项目名称varchar(120XX合同号varchar(12)负责人1varchar(20XX负责人2varchar(20XX主要承担人1varchar(20XX主要承担人2varchar(20XX项目来源varchar(30)项目性质tinyint缺省为0开始日期datetime结束日期datetime文件柜号tinyint电子文档名varchar(20XX财务编号char(6)总经费smallmoney货币类型varchar(10)拨款数(1-4)smallmoney拨款日期(1-4)datetime免扣额(1-4)smallmoney累

19、计支出smallmoney验收日期datetime鉴定日期datetime鉴定单位varchar(50)获奖名称varchar(40)获奖日期datetime授奖单位varchar(50)证书号varchar(50)注:序号格式为yyyy-#,其中yyyy为项目开始的年份,#为该项目在该年份中的次序。(2) 期刊论文(论文名称,发表日期,期刊名称,作者1,作者2,作者3,作者4,作者5,作者6,范围,检索源,检索号,卷期号,学科门类,来源,出版单位)各字段的定义如下所示:名 称类 型格 式其 他论文名称varchar(120XX主键发表日期datatimeyyyy-mm期刊名称varchar(

20、100)作者(1-6)varchar(20XX范围tinyint缺省为0检索源tinyint缺省为0检索号varchar(30)卷期号varchar(30)学科门类varchar(20XX来源varchar(20)出版单位varchar(50)(3) 会议论文(论文名称,会议时间,会议地点,作者1,作者2,作者3,作者4,作者5,作者6,范围,学科门类,来源)各字段的定义如下所示:名 称类 型格 式其 他论文名称varchar(120XX主键会议时间datatimeyyyy-mm会议地点varchar(20XX作者(1-6)varchar(20XX范围tinyint缺省为0学科门类varcha

21、r(20XX来源varchar(20)(4) 设备查询(设备编号,设备名称,单位分类,型号,规格,分类号,国标代码,单位代码,购置日期,已使用年限,账面数量数,清查数量数,账面金额数,清查金额数,使用状况,备注)各字段的定义如下所示:名 称类 型格 式其 他设备编号varchar(8)主键设备名称varchar(30)单位分类varchar(1)型号varchar(30)规格varchar(20XX分类号varchar(6)国标代码varchar(3)单位代码varchar(4)购置日期datatimeyyyy-mm已使用年限varchar(3)账面数量数varchar(3)清查数量数varc

22、har(3)账面金额数varchar(10)清查金额数varchar(10)使用状况varchar(10)备注varchar(20)3.1.3 数据库物理设计3.1.3.1 数据库选型计算机集成制造研究所科研项目管理系统是以计算机技术为手段,为用户存储、处理各种有效信息,完成各项管理活动。根据应用程序的要求,选择本软件系统采用的数据库管理系统要考虑到如下因素:(1) 符合关系型的标准: 网络上运行的数据库必须是基于Access标准的分布式关系数据库。(2) 数据库的体系结构 数据库系统应该是基于客户/服务器体系结构的分布式数据库,用户的应用程序运行在不同的工作站上。(3) 事务的完整性和恢复:

23、 数据库服务器应具有事务完整性机制,如日志文件、回退,并能从各种异常情况下恢复数据。在日常工作中能够联机地被份数据库。(4) 分布式处理: 数据库必须支持分布式环境中节点自治的原则,以保证数据的分布式管理和完整性,对用户提供分布式透明以便于应用系统的使用。(5) 应用开发: 数据库所支持的宿主语言应包括Visual Basic,还必须能提供足够的工具供开发者和用户选择,这些工具应涉及数据库分析设计、应用开发、调试和运行等各个不同的阶段。 根据上述要求,结合CIM研究所的具体情况,选用Microsoft Access 20XX作为该系统的数据库管理系统,Access 20XX是一个多用户的关系型

24、数据库系统,它结合了Microsoft Windows NT操作系统的能力,提供一个安全的、可扩展的、易管理、高性能的客户机/服务器平台;提供了一套图形化的方便易用的工具如Enterprise Manager、Query Analyzer等;对多用户应用提供了充足的保护措施,能够阻止冲突和防止错误产生,并且能高效地给多用户分配可用的资源。3.1.3.2 数据库结构定义应用Access语言中的数据定义语句,定义四个基本表如下:(1) 项目情况表CREATE TABLE dbo.科研项目表 (序号 char (5) NOT NULL PRIMARY KEY,项目编号 varchar (10) NU

25、LL ,项目名称 varchar (120XXNOT NULL ,合同号 varchar (12) NULL ,负责人1 varchar (20XXNULL ,负责人2 varchar (20XXNULL ,主要承担人1 varchar (20XXNULL ,主要承担人2 varchar (20XXNULL ,项目来源 varchar (30) NULL ,项目性质 tinyint NULL DEFAULT (0),开始日期 smalldatetime NULL ,结束日期 smalldatetime NULL ,文件柜号 tinyint NULL ,电子文档名 varchar (20XXNU

26、LL ,财务编号 char (5) NULL ,总经费 smallmoney NULL DEFAULT (0), 货币类型 varchar (10) NULL ,拨款数1 smallmoney NULL DEFAULT (0),拨款数2 smallmoney NULL DEFAULT (0),拨款数3 smallmoney NULL DEFAULT (0),拨款数4 smallmoney NULL DEFAULT (0),拨款日期1 datetime NULL ,拨款日期2 datetime NULL ,拨款日期3 datetime NULL ,拨款日期4 datetime NULL ,免扣额

27、1 smallmoney NULL DEFAULT (0),免扣额2 smallmoney NULL DEFAULT (0),免扣额3 smallmoney NULL DEFAULT (0),免扣额4 smallmoney NULL DEFAULT (0),累计支出 smallmoney NULL DEFAULT (0),验收日期 datetime NULL ,鉴定日期 datetime NULL ,鉴定单位 varchar (50) NULL ,获奖名称 varchar (40) NULL ,获奖日期 datetime NULL ,授奖单位 varchar (50) NULL ,证书号 va

28、rchar (50) NULL ) (2) 期刊论文表CREATE TABLE dbo.期刊论文表 (论文名称 varchar (120XXNOT NULL PRIMARY KEY,发表日期 datetime NULL ,期刊名称 varchar (100) NULL ,作者1 varchar (20XXNULL ,作者2 varchar (20XXNULL ,作者3 varchar (20XXNULL ,作者4 varchar (20XXNULL ,作者5 varchar (20XXNULL ,作者6 varchar (20XXNULL ,范围 tinyint NULL DEFAULT (0

29、),检索源 tinyint NULL DEFAULT (0) ,检索号 varchar (20XXNULL ,卷期号 varchar (30) NULL ,学科门类 varchar (20XXNULL ,来源 varchar (20XXNULL ,出版单位 varchar (50) NULL ) (3) 会议论文表CREATE TABLE dbo.会议论文表 (论文名称 varchar (120XXNOT NULL PRIMARY KEY,会议时间 datetime NULL ,会议名称 varchar (100) NULL ,入选论文集 varchar (120XXNULL ,作者1 var

30、char (20XXNULL ,作者2 varchar (20XXNULL ,作者3 varchar (20XXNULL ,作者4 varchar (20XXNULL ,作者5 varchar (20XXNULL ,作者6 varchar (20XXNULL ,会议地点 varchar (20XXNULL ,学科门类 varchar (20XXNULL ,来源 varchar (20XXNULL ,范围 tinyint NULL DEFAULT (0) ) (4)CREATE TABLE dbo.会议论文表 (设备编号 varchar (8) NOT NULL PRIMARY KEY,设备名称

31、 varchar(30)NULL ,单位分类 varchar (1) NULL ,型号 varchar (30) NULL ,规格 varchar (20XXNULL ,分类号 varchar (6) NULL ,国标代码 varchar (3) NULL ,单位代码 varchar (4) NULL ,购置日期 datetime NULL ,已使用年限 varchar (3) NULL ,账面数量数 varchar (3) NULL ,清查数量数 varchar (3) NULL ,账面金额数 varchar (10) NULL ,清查金额数 varchar NULL DEFAULT (10

32、) 使用状况 varchar (10) NULL ,备注 varchar NULL DEFAULT (20XX) 3.1.3.3 完整性规则所谓数据的完整性规则是指数据的正确性和相容性,完整性规则是保证数据库中数据正确的有力工具。本系统中数据完整性规则包括:l 主码完整性规则:每个基本关系中主码的值必须是唯一的,不允许重复;l 其他完整性规则:(1) 项目编号的格式要求为 yyyy-#。(2) 项目名称虽然不是主键,但不允许为空。上述完整性规则都应在系统中实现,以保证系统中的数据的正确,能真实反映客观世界的情况,这些完整性规则有的通过应用程序实现,有的通过规范的操作过程来控制。3.1.3.4

33、索引通常表中的数据按照堆结构存储,记录间没有特定的顺序,当查找数据时,必须扫描表的所有数页。而在表中创建了索引后,索引顺序存储索引列值。这样,查找数据时,根据索引列的值就可以找到记录所在的数据页,无须扫描所有的数据页,从而提高了查询效率。在Microsoft SQL Server中,索引分为聚簇和非聚簇两类。聚簇索引采用B-树结构,当按照索引键检索数据时,SQL Server以遍历B-树的方法遍历索引,直接找到记录所在的数据页,是查询速度最快的索引。有鉴于此,在数据库的三个基本关系上都定义了一个索引,其定义语句如下:(1) 建立在项目情况表的项目名称字段上的索引CREATE CLUSTERED

34、 INDEX INDEX_项目名称 ON 项目情况表(项目名称)CREATE CLUSTERED INDEX INDEX_开始日期 ON 项目情况表(开始日期)(2) 建立在期刊论文表上的索引CREATE CLUSTERED INDEX INDEX_论文名称 ON 期刊论文表(论文名称)CREATE CLUSTERED INDEX INDEX_发表日期 ON 期刊论文表(发表日期)(3) 建立在会议论文表上的索引CREATE CLUSTERED INDEX INDEX_论文名称 ON 会议论文表(论文名称)CREATE CLUSTERED INDEX INDEX_会议日期 ON 会议论文表(会

35、议日期) 以上的语句在Access 20XX中仍然适用。3.1.3.5 安全性考虑数据库安全性是数据库系统的一个重要方面,它是指保护数据库防止被不合法的使用,包括恶意的破坏和非法的存取等。但由于本系统涉及到的数据都不是保密性数据,无须采取很复杂的安全措施,只须防止数据被人随意改动即可。原系统采取的安全措施是利用SQL Server与Windows NT的安全性集成功能,由系统管理员或数据库管理员为用户分配数据库访问权限,当没有权利修改数据库的用户试图修改数据时给出相应的提示,数据库备份的工作也由数据库管理员来完成。而Access 20XX的安全系统是以Microsoft SQL Server的

36、安全系统为模型的,所以原系统的安全措施也可以保留。3.1.3.6 磁盘空间分配由于项目管理数据量不大、每年的增长量也不大,所以不需要很大的磁盘空间,将初始大小定义为10MB,增量为20XX3.2 平台选型3.2.1 选型的原则在选择开发平台时主要考虑以下因素:(1) 开发工具的性能l 稳定和可靠。这是最关心的性能,开发工具不能经常发生错误或在访问数据库时经常出现问题。l 可视化的开发。只须用鼠标即可完成界面的设计,并且界面应具有流行的风格,如带有简短提示的工具条,具有Windows 95风格的Tab文件夹等。l 提供可扩展的第四代编程语言。这样开发人员就无须关心复杂的底层工作,如Windows

37、 API等。l 对Windows技术的广泛支持。包括对Windows 95/98上32位计算的支持以及对DDL、OLE、MDI等的支持。l 可以生成真正的可执行文件。较之于伪代码真正的机器代码会使应用的速度和效率得到大幅度提高。(2) 数据库的访问能力l 必须能够支持ODBC(开放式数据库互联)和数据库专用接口。l 提供多种数据表现形式。完成对后台数据库的查询和操作是前端开发工具的主要任务。因此开发工具不许提供简便而功能强大的数据访问手段;并提供多种数据表现形式;可以生成复杂的报表。3.2.2 开发平台选择目前,很多数据库厂商和应用开发工具厂商纷纷推出了新一代的32位快速应用开发(RAD)工具

38、,这些工具为应用开发人员开发客户机/服务器结构下客户机端的应用程序带来了极大的方便。在数据库应用程序开发方面,现在用的最多的有Power Builder、Visual C+和Visual Basic等。其中Visual C+功能最强大,但实现复杂,编程量大,对开发人员的要求太高。Power Builder的最大优点是容易使用,只须很少的代码,尤其是它的数据窗口(Data Window)技术提供了一个非常简便的访问数据库的方法。Power Builder还提供了对窗口的继承,对于类型相似的窗口只须设计一个,其余的通过继承来实现,这样就大大减轻了开发人员的工作量。但由于Power Builder是

39、一个专门用于数据库应用程序开发的工具,所以在其他例如界面设计和错误处理之类的细节方面的功能就相对较弱。基于如下原因,我们最后选择Visual Basic 6.0作为本项目管理系统的开发工具。(1) 自从Visual Basic 5.0开始提供了本机代码(N-Code)生成器,摆脱了以往只能生成伪代码(P-Code)的局限,运行效率提高近二十倍。(2) Visual Basic提供了开发图形用户界面 (GUI) 的方法。不需编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象拖放到屏幕上的一点即可。(3) Visual Basic提供了ADO (ActiveX 数据对象) 这项新的数据

40、访问技术。特点是:更简单的对象模型;与其它 Microsoft 和非 Microsoft 的技术更好的集成;为本地和远程数据数据提供了通用的接口。 (4) 提供了增强的数据绑定。在 Visual Basic 以前的版本中,只能在窗体上绑定控件。在 Visual Basic 6.0 中,已经可以将任何 ADO/OLE DB 数据源绑定到任何 ADO/OLE DB 数据使用者上。(5) Visual Basic是一个通用的开发工具,功能强大,并且由于同为Microsoft公司的产品,Visual Basic与Windows操作系统及Access 20XX数据库管理系统结合得更好。VB还有一个很大的

41、优点是它是一个基于事件驱动的编程语言,而不象C或C+是过程化的。这在开发Windows的应用程序时尤其有用。在传统的或“过程化”的应用程序中,应用程序自身控制了执行哪一部分代码和按何种顺序执行代码。从第一行代码执行程序并按应用程序中预定的路径执行,必要时调用过程。在事件驱动的应用程序中,代码不是按照预定的路径执行而是在响应不同的事件时执行不同的代码片段。事件可以由用户操作触发、也可以由来自操作系统或其它应用程序的消息触发、甚至由应用程序本身的消息触发。这些事件的顺序决定了代码执行的顺序,因此应用程序每次运行时所经过的代码的路径都是不同的。不过这样就造成无法为Visual Basic编制的程序画

42、出流程图,或者说流程图太复杂而无法画出。当然Visual Basic也有不足之处。最大的缺点就是不支持继承,这样就容易造成代码重复率高,代码的可重用性和开发效率降低。3.3 系统总体结构根据系统的功能需求,确定以下模块结构图.它由数据录入、数据查询、系统设置和帮助模块组成。(见下图)数据查询系统设置帮 助数据录入科研项目管理系统 数据录入项目数据录入 会议论文录入期刊论文录入数据查询期刊论文查询项目情况查询会议论文查询打印报表图 3-1系统设置数据库连接设置 代号设置续图 3-1其中每一个模块由一个窗体及其相应的代码构成。为了实现应用程序的灵活性,对于实际应用中需要动态修改的数据库连接设置与项

43、目性质、论文检索源代号等数据存储在注册表中。其结构为:HKEY_CURRENT_USERVB and VBA Program Settings科研项目管理系统1.0.ConnectionDatabaseName“科研项目管理系统”ServerName“IDEASSERVER”SymbolArticleRange0“国内”1 “国际”2 “地方”Count“2”ArticleRetrieveSource0“无”1“EI”2“SCI”3“核心”4“一般”Count“4”ProjectQuality0“无”1“国家自然科学基金”2“863”3“部、省科委”4“企业、集团”Count“4其中后面三个键

44、名的意义为ArticleRange :论文范围ArticleRetrieveSource :检索源ProjectQuality :项目性质所有键值均为字符串,Count是计数值。系统第一次运行时将创建上述注册表结构,初始数据库名称和服务器名称为空字符串,Count为0。3.4 数据库访问接口设计3.4.1 数据访问接口选择 对于一个数据库应用程序来说,选择一个合适的数据访问接口是很重要的,它与应用程序的性能密切相关。在 Visual Basic 中,可用的数据访问接口有三种:ActiveX 数据对象(ActiveX Data Object,ADO)、远程数据对象(Remote Data Obj

45、ect,RDO) 和数据访问对象(Data Access Object,DAO)。数据访问接口是一个对象模型,它代表了访问数据的各个方面。使用 Visual Basic,可以在任何应用程序中通过编程控制连接、语句生成器和供使用的返回数据。 数据访问对象 (DAO) 既可以和 Microsoft Jet 数据库引擎一起使用,也可以通过设置 ODBCDirect 选项而不和它一起使用。Microsoft Jet 数据库引擎是一个独立的数据库管理系统,需要时它既可以对远程各种服务器进行处理查询,又可以进行路由查询。通过 DAO 访问 Jet 使开发工作更加简便,因为它提供了面向对象的开发方法和对数据识别绑定控件的访问能力。DAO/Jet的主要缺点是没有利用SQL Server的所有特性,这主要是由于试图使DAO/Jet成为通用接口的原因。并且Jet不适合多任务,在每个查询完成之前,它将锁定其他请求和用户。RDO远程数据对象是一个到 ODBC 的、面向对象的数据访问接口,它同易于使用的 DAO style组合在一起,提供了一个接口,形式上展示出所有 ODBC 的底层功能和灵活性。RDO 提供了用来访问存储过程和复杂结果集的更多和更复杂的对象、属性,以及方法。RDO 的缺

温馨提示

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

评论

0/150

提交评论