浅谈Delphi+Word的数据库系统设计 数据库设计
关键字:Delphi Word 数据库系统设计
Delphi擅长做数据库系统的开发,其功能强大,开发快速。但现在大多数的数据库系统80%的工作都是简单的增删改的工作,用数据库系统来实现增删改,存在录入不方便,录入内容简单等问题,尤其对于处理大量的文本和图片的数据库系统来说更是非常不便。报表输出还需要利用Delphi中各个版本提供的报表工具或第三方打印控件进行开发。虽然Delphi中提供的报表工具功能逐渐强大,使用愈加方便,但是如果想充分利用该报表工具开发强大实用的报表,仍得花费一定的精力去学习该报表组件的各个功能。例如Delphi6中提供的Qreport报表工具,对于制作复杂报表非常麻烦,也许BorLand也注意到了这个问题,所以到了Delphi7时,换成了Rave报表工具,该工具相比Qreport更易于使用,但如果要做出复杂的报表,仍需对它详细研究。
在做文字处理的时候,中国的大多数用户还是习惯于使用Office,而Office中最常用的莫过于Word。因此大多数用户对于Word的操作应该说非常熟悉,而Word在数据录入方面功能之强大确实是无与伦比,在Word中无论简单的文本、表格还是图片等都能很轻松的录入,利用Word本身的打印功能还可以将其作为报表输出的工具。
Delphi+Word的数据库系统设计思路
结合Delphi和Word本身的特点,数据库系统可以采用这样的设计思路:以Word作为数据录入界面,录入完毕后,数据库系统自动从Word中提取数据,并将提取的各要素存储于数据表中,以便利用数据库系统的强大的数据处理功能对数据表内容进行维护、检索、统计等,并将Word作为报表输出的工具。
Delphi中从Delphi5开始恰恰提供了与Word的接口—TwordApplication,利用该接口可以实现Word的打开、关闭、保存以及对文档内容作相应的处理。采用以上的系统设计思想以及Delphi提供的与Word的数据接口,笔者开发了一套成果管理系统。该成果管理系统主要内容是管理最终成果文档的内容,包括详细内容、文字图片、成果的储备情况、经费情况、获奖情况等,为了便于统计分析及保证成果内容的一致性,系统将各要素统一存放于数据表相应的字段中。下面详细阐述系统的设计思路,参见图1。
首先筛选必要的成果要素利用Word作一个录入模板。Word模板较常见的有两种做法:一种是在Word文档相应的位置插入书签;另一种是在Word文档的相应位置插入特殊符号。插入书签的具体做法是:选中要插入书签的区域,在Word的插入菜单中选择书签,填写书签名称,点击添加即可。在Word文档中插入特殊符号的思路是:将需要提取的内容用特殊字符包起来,系统利用特殊字符识别要导入的内容,例如#中国#,表示中国是要提取的内容。但是利用以上两种模板制作方法都有缺陷,尤其是将模板既作为输出界面,也将其作为录入界面时。首先对于利用书签的模板方法,用户在实际录入数据的过程中,很容易将书签误删除。插入特殊符号的方法无疑增加了用户录入时的负担,且界面也不美观,没有保持文档原貌。但这两种方法的基本思路都一样,即创造要提取要素的特征符号。