




已阅读5页,还剩45页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
k 摘要 摘要 f 目前,支持u n i x 下数据库应用系统开发的报表工具较少,而且不能很好 的满足开发人员和用户的需求。因此,我们对报表技术进行了研究,试图提供 更好的u n i x 报表工具。) 首先,我们对一些现有的报表工具进行了研究,提出并讨论了报表工具需 要解决的三个核心问题:报表数据,报表格式和报表输出。 然后,我们构造了一个报表工具模型。在该模型中,我们引入了报表数据 定义语言和报表格式描述语言,用相应的解释器解释它们。报表工具模型中应 用了流水线样本和解释器样本,提供了重用性和扩充性,同时又易于构造。 最后,以文中的报表工具模型为基础,我们实现了一个u n i x 下的报表工 具。该报表工具已经应用到实际项目中。 实践使得我们相信:经过进一步的改进与完善,可以基于该模型开发出更 加功能强大和实用的u n i x 报表工具。 关键讯报表工具报表工具模型报表数梦义语言报表格严述语言 a b s t r a c t a bs t r a c t c u r r e n t l y ,o n l y af e w r e p o r t i n g t o o l su n d e r u n i x ,w h i c hs u p p o r t d a t a b a s e a p p l i c a t i o nd e v e l o p m e n t ,a r ea v a i l a b l ea n dt h e yd on o tf u l f i l l t h ed e v e l o p e r sa n d u s e r sn e e d sw e l l h e r e a f t e r , w ec o n d u c ts t u d yo nr e p o r t i n gt e c h n o l o g i e st od e v e l o p ab e t t e rr e p o r t i n gt o o lu n d e ru n i x f i r s t ,w es t u d y s o m er e p o r t i n gt o o l s ,i d e n t i f ya n dd i s c u s st h et h r e em a i n p r o b l e m st h a tr e p o r t i n gt o o l sh a v et oa d d r e s s ,w h i c ha r er e p o r td a t a ,r e p o r tf o r m a t a n d r e p o r to u t p u t t h e n ,w ec o n s t r u c tar e p o r t i n gt o o lm o d e l i no u rm o d e l ,r e p o r td a t ad e f i n i t i o n l a n g u a g e a n dr e p o r tf o r m a t d e s c r i p t i o nl a n g u a g e a r eu s e dw i t h i n t e r p r e t e r s t o i n t e r p r e t e rt h e m p a t t e r n ss u c ha sp i p e a n d f i l t e ra n di n t e r p r e t e ra r eu t i l i z e di nt h e m o d e l ,p r o v i d i n gr e u s a b i l i t y , e x t e n s i b i l i t ya n d e a s i n e s st oi m p l e m e n t l a s t ,w eb u i l dar e p o r t i n gt o o lu n d e ru n i xb a s e do nt h em o d e l ,w h i c hh a s b e e n i n t e g r a t e di n t oa r e a lw o r l dd a t a b a s ea p p l i c a t i o n t h e e x p e r i e n c em a k e s u sb e l i e v et h a tw i t hs o m ei m p r o v e m e n ta n dr e f i n e m e n t , t h em o d e lm a yb e u s e dt oi m p l e m e n tam o r ep o w e r f u la n da p p l i c a b l er e p o r t i n gt o o l u n d e r t n k e y w o r d :r e p o r t i n g t o o l r e p o r t i n g t o o lm o d e l r e p o r t d a t ad e f i n i t i o n l a n g u a g er e p o r t f o r m a t d e s c r i p t i o nl a n g u a g e 第章绪论 第一章绪论 1 1 引言 在计算机出现之前,数据需要以纸质文件等形式保存,数据处理是手工进 行的,报表的编制也是手工实现的。随着计算机的广泛应用,人们开始使用计 算机及计算机软件实现数据处理,使用数据库管理系统来管理数据,使用应用 程序来完成具体的业务操作,报表的编制也开始使用软件来实现。完成报表的 编制工作的软件程序称为报表系统或者报表工具( 本文以下内容中出现的报表 工具和报表系统两个名词除非特别声明,否则均可以互换,没有含义上的区别) 。 报表系统的产生改变了报表编制的流程、方法以及编制手段。 目前,数据库应用系统大量出现。报表是这些应用系统最重要的输出形式 。之一,绝大部分数据库软件的设计都离不开报表的设计。在数据库软件的开发 过程中,软件设计人员常常需要设计大量的报表,尽管其中相当一部分报表的 结构比较类似,但也得为每一个报表的报表对象、数据模型、显示格式等一一 进行定义,报表运行时还得重复同样的运行操作,同时还可能对数据存储、导 入和导出等操作带来诸多的不便,这些繁琐的重复性工作常常花费数据库软件 设计人员、操作人员、维护人员大量的精力和时间,影响系统的开发、使用效 率和质量。开发人员迫切需要可用的报表工具。 同时,报表是数据库系统中变化性很强的部分。应用系统交付用户后,随 着时间的推移,用户可能需要新的报表:报表的格式、报表的数据要求都有可 能发生变化,用户的多种多样的报表要求,仅靠应用系统预先提供的报表,很 可能无法满足。用户需要能够支持不断变化的报表要求的报表工具。 目前,市场上已经出现了许多报表工具,它们试图解决上述种种的问题。 目前的报表系统可以分为三类:专用报表系统、通用报表系统和电子表系统三 类【1 】: 专用报表系统 专用报表系统把报表的种类( 张数) 、格式和编制方法周定在程序中。报表 有变化,程序就随之需要修改。以前许多应用程序采用此种方法提供报表功能。 通用报表系统 通用报表系统允许用户定义报表的种类( 张数) 、格式、数据。报表系统根 据用户的报表定义,从数据库资源中提取数据,按照用户的报表格式定义,生 西安电子科技大学硕士论文 报表技术研究及报表工具开发 成报表的全部内容。通用报表系统提供的自定义报表功能,使得用户在不需要 程序设计或修改程序的情况下,就能生成自己所需要的报表。因此,这类报表 系统对编制报表非常实用。但是,由于这种软件专业性强,只能从与该软件相 配套的数据库资源中提取数据,功能也较简单,在应用范围方面存在一定的局 限性。 电子表格系统 电子表是一种“纯粹”的表处理系统,实际上各种表处理都可以通过电子 表格系统实现。同样,电子表格系统可以用来方便地编制各种报表。典型的电 子表格系统如e x c e l 、l o t u s l 2 3 等。电子表格系统大都是可视化界面,每张表 由行和列划分为许多单元格,在单元格中定义数据和格式,使用方便。而且, 大多提供图形功能、大量的函数和工具,方便用户使用。 1 2 研究目的和基本内容 长期以来,报表工具的开发一直是一个热点,不少人对报表工具进行了研 究,提出了自己的解决方案【拍l 。目前已经有了多种可用的报表工具,但是依然 存在许多问题。例如,报表工具的可用性和灵活性仍然不能令人满意:在u n i x 系统上问题更为突出:数据库厂商提供的报表工具不能很好的满足用户需求, 缺乏可用的第三方报表工具等。本文对现有的报表工具和报表技术进行研究, 分析报表工具的需求和难点,提出了一个报表工具的模型,讨论了报表工具的 实现,最后,在此模型基础上开发了一个u n i x 下的报表工具。我们的目标是 建造u n i x 下的能够集成到应用程序中的报表工具,向应用程序提供报表功能, 同时具有可重用性、可扩充性、易于构造性。 1 3 论文的结构 论文的组织结构如下: 第二章对报表工具进行分析。首先讨论报表本身:然后讨论报表工具必须 解决的三个核心问题:报表数据、报表格式和报表输出;接着是现有报表工具 的研究比较;最后,讨论了报表工具的其他需求。 第三章的内容是关于报表工具模型。首先,提出了一个报表工具模型;然 后讨论该模型的各个方面:模型中的样本重用、报表数据处理语言及其处理器、 报表格式描述语言及其处理器、报表的输出等。 第四章介绍报表工具的开发实例。讨论我们实现的一个u n i x 下的报表工 具。 第五章总结全文,提出了下一步的研究工作方向。 西安电子科技大学硕士论文 第二章报表工具的分析 第二章报表工具的分析 本章的主要内容是对报表工具的分析。首先是对报表的讨论;然后提出并分 析了报表工具必须解决的三个核心问题:报表数据、报表格式和报表输出:接着 是现有报表工具的比较研究:最后是一些进一步的讨论。 2 1 1 什么是报表 2 1 报表 报表一词经常使用,下面摘录几个报表的定义: 1 高级汉语大词典 报表 f o r m sf o rr e p o r t i n g t ot h eh i g h e ro r g a n i z a t i o n s 】向上级报告情况的表格 2 现代汉英词典 r e p o r t 报告,报表; 报告书 a n o u t p u td o c u m e n tp r e p a r e db y a d a t a - p r o c e s s i n gs y s t e m 由数据处理系统所预备好的一种输出文件。 3 电算化会计与审计 会计报表是根据日常核算资料,以货币为计量单位,按照统一规定的 表格形式和指标体系定期编制,用来总括反映企业在一定时期内的经营成 果和财务状况的总结性文件。 报表,就其实质而言,是信息的发布。从上面的几个报表的定义中我们可以 看到,报表包括内容和形式两个方面。形式方面:报表是“表格”,具有“统一规 定的表格形式”报表的内容要按照一定格式组织;内容方面:报表要“报告情 况”,“反映经营成果和财务状况”报表的内容是各种各样的数据。同时,报 表是“数据处理系统所预备好”的输出文件,是“总结性文件”报表中的数 据是经过处理的数据。报表工具要代替人完成报表的编制,就必须要解决这两个 主要问题:一个是报表的内容报表数据;另一个是报表的形式报表格式。 西安电子科技大学硕士论文 报表技术研究及报表工具开发 2 1 2 报表工具中的报表 使用报表系统生成报表后,报表具有了一些手工编制的报表所没有的特点, 不同的报表工具中的报表也有所不同: 报表的交互性 某些报表系统中支持交互式报表,报表生成后,仍然是“活动”的。 例如:在e x c e l 中可以按交互式或非交互式保存数据。如果将数据保存为 具有交互式功能,在交互式时用户可以进行以下操作:筛选,输入新值以 进行计算,或汇总和分析数据。 数据流动方向 报表工具一般是将数据库中的某些数据抽取出来,经过一些数学运算, 最终以特定的格式呈现给用户。数据流动是单向的:即从数据库到报表。 可是,在某些报表系统中,报表是双向的,还存在着另一个方向上的数据 流动:从报表到数据库一一报表可以更新数据库中的数据。例如,在 f o r m u l ao n e 中,报表可以添加、修改、删除数据库中记录的功能。 报表的输出 手工编制的报表不需要考虑输出问题:编制好的报表往往是纸质的, 可以直接使用;报表系统则必须考虑报表的输出:支持报表的打印、屏幕 上的浏览等。也就是说,报表工具不但要能生成摄表,还必须能够按照使 用者的要求输出报表,供人们使用。 2 2 报表数据 报表中信息的核心内容是各种各样的数据。报表的数据来源多种多样,可 能取自数据库;可能来自数据文件:可能由用户输入;还可能来自予其他系统。 同时,报表数据不是简单的摘录或者拷贝原始数据,报表中的有些数据需要经 过加工处理,是计算结果,也就是说,报表数据是经过处理的数据。 报表中的数据受以下一些因素的限制: 1 数据源中现有的数据 报表的数据最终是来自于外部的数据源,主要是各种数据库,因而受到数 据源中包含的数据范围的限制。举例来说:如果数据库中不存在历史数据,则 报表无法包括历史数据。 2 报表工具所支持的数据源 原始数据可能存在于各种形式的数据源:数据库,数据文件等等。数据库 有不同的访问接1 :3 ,数据文件有不同的格式。报表工具所能访问的数据源的种 西安电子科技大学硕士论文 第二章报表工具的分析 类是有限的,因而限制了报表的数据来源。 3 报表工具的数据处理能力 报表工具的数据处理能力决定报表数据的抽象层次。报表数据越抽象,需 要的处理越复杂。比如,要支持统计分析报表就要求报表工具具有数据的统计 分析能力。 4 报表工具的实现 一些实现时的因素也限制了报表工具的能力。例如,报表工具所能支持的 数据规模就受到程序实现时的限制。同时,支持报表工具运行的操作系统的能 力也限制着报表工具的能力。 2 3 报表格式 除了报表数据,报表的另一个重要的方面是报表格式:报表中的数据必须 按照一定的格式组织。报表格式包括报表布局和报表数据格式两个方面。 2 3 1 报表布局 报表布局是指报表的结构安排或者说是报表各部分内容及其出现位置。报 表工具的习惯做法是将报表分解,规定各个部分的出现位置,用户通过指定各 部分的内容来控制报表的布局。 下面以a c t i v e r e p o r t s l 7 为例介绍报表工具中的报表布局。在a e t i v e r e p o r t s 中,将报表分为如下几个部分( 在a c t i v e r e p o r t s 中称为节s e c t i o n :一组控件 的集合,不管是处理还是打印,他们作为一个不可分割的整体) : r e p o r t h e a d e r r e p o r th e a d e r 在报表的开始处出现。它通常用来在报表的开始打印 个报告标题,一张概括表,一份图表或仅仅在报表的开始处需要出现的任 何信息。r e p o r th e a d e r 可以跨越多重的页,在它的内容中插入分页控制即 可。 r e p o r t f o o t e r r e p o r tf o o t e r 在整个报表的结束处出现。它用来打印报表的总结性内 容,总计或在报表的结束处需要打印的任何信息。 p a g e h e a d e r p a g eh e a d e r 在报表每页的顶端出现( 在包含r e p o r th e a d e r 节的页上 不出现) 。它被用来打印列头,页码,页标题或在每页的开始需要打印的任 何信息。 p a g e f o o t e r 西安电子科技大学硕士论文 报表技术研究及报表工具开发 p a g ef o o t e r 在报表每页的底部出现。它被用来打印本页合计,页码或 在每页的底部需要打印的任何信息。 g r o u p h e a d e r 报表中数据可以分组,组可以嵌套。每个组有一个g r o u ph e a d e r 和 g r o u pf o o t e r 。g r o u ph e a d e r 在本组的明细节以前打印。 g r o u p f o o t e r g r o u pf o o t e r 在本组所有的明细节后打印。 d e t a i l 明细节( d e t a i l ) 是报表的主体。报表的数据源中的每个记录对应一个 明细节。 23 2 报表数据格式 报表数据格式是指报表中数据的呈现形式,例如,报表中文字的格式:字 体、大小、颜色、对齐方式;报表中数字的格式:加货币符号、千分位、小数 位数;报表中日期的格式:日月年、年月日等。 报表工具的数据格式支持与文档编辑器( 比如,w o r d ) 所提供的各种格式 设定功能类似。但是,报表工具中的数据格式有自己的独特之处。例如,e x c e l 提供一种非常实用的数据格式数据的条件格式峭】:可以指定条件,数据的 格式可以随着条件的满足与否而变化。 2 4 报表的输出 报表生成后,需要用某种形式输出以供人们使用。关于报表的输出方面有 如下要求: 输出设备无关性 报表工具应该能够将报表输出到多种设备。报表工具将根据输出设备 的输出能力,选择合适的表现形式,输出报表。比如,报表的打印应该能 够支持使用多种打印机。 支持多种发布方式 不仅支持打印纸介质报表,而且支持互联网发布报表到网页,以及 e m a i l 报表给用户等。 报表数据的输出 在某些场合,比如在不同的系统间交换报表数据时,从附加了各种格 式的报表中得到报表数据往往比较困难。这时候,没有报表格式的“纯粹 的”报表数据的输出可能使用更方便。 西安电子科技大学硕士论文 第二章报表工具的分析 支持多种输出格式 报表工具需要支持多种输出格式,以适应不同环境的使用需要。比如 h t m l 格式、p d f 格式等。 2 5 现有报表工具概述 目前常见的典型报表工具中,著名的有e x c e l 、u n i v e r s a lf o r m s 、o r a c l e 9 i r e p o r t s 、f o r m u l ao n e 等,国内也推出了许多报表工具。对现有报表工具的比 较研究,有助于我们设计出更好的报表工具。 e x c e l 是历史悠久的电子表程序之一,功能强大。许多后来出现的w i n d o w s 报表工具均受其影响,甚至在功能和界面上加以模仿。 e x c e l 具有如下特点【8 】: 可视化界面 e x c e l 提供工作簿和工作表,一个工作簿包括若干张工作表,一张工 作表即是一张报表。每张工作表由若干单元格组成,每个单元格可以单独 操纵:设计单元格的数据格式,定义数据公式等。对报表作出修改后,可 以立即看到修改效果。 丰富的格式支持 e x c e l 报表中可以包括文字,数字,图形等多种内容; 提供文字的字体大小、颜色,数字的显示格式等格式控制; 支持条件格式化。 丰富的数据处理功能 提供多种数据处理函数:数据库函数、日期与时间函数、工程函数、 财务函数、逻辑函数、查询和引用函数、数学和三角函数、统计函数、文 本函数; 支持数据的分组、合计等等。 支持多种数据源 可访问的数据库包括: m i c r o s o f ts q ls e r v e ro l a ps e r v i c e s m i c r o s o f ta c c e s s2 0 0 0 d b a s e m i c r o s o f tf o x p r o m i c r o s o f te x c e l 西安电子科技大学硕士论文 报表技术研究及报表工具开发 o r a c l e p a r a d o x s q l s e r v e r 文本文件数据库 此外,使用d a o 可以检索m i c r o s o re x c h a n g e 或l o t u s1 2 - 3 数据源中 的数据。还可以使用o d b c 驱动程序或数据源驱动程序以获取其他类型数 据库中的信息。 w e b 发布支持 e x c e l 支持将报表放置到w e b 页上。用户不需要在计算机上安装e x c e l 就可以访问报表。 支持交互式报表 如果希望用户可以与报表中的数据进行交互,则可以将数据设置为交 互式。在交互式报表中,用户可以进行以下操作:筛选,输入新值以进行 计算,或汇总和分析数据。 提供编程环境 e x c e l 提供了v i s u a lb a s i cf o ra p p l i c a t i o n s ( v b a ) 和v i s u a lb a s i c 编 程环境,同时支持o l e 。用户可以使用v b a 编写自定义函数,实现对已 有数据处理函数库的扩充,满足实际需要。 2 5 2u n i v e r s a lf o r m s & r e p o r t s u n i v e r s a lf o r m s & r e p o r t s ( u f o r m s ) 是u n i v e r s a lo b j e c t s 公司开发的第三 方报表工具。u f o r m s 既是一个报表开发平台同时又是一个信息引擎。u f o r m s 可以给应用程序增加报表功能,用于创建和执行报表布局语言脚本。u f o r m s 运行时解释脚本,脚本可以是由应用程序动态生成的,或者是预先存储的可读 的文本文件。 u f o r m s 主要包括三个部件1 9 : u f o r m s 设计器 u f o r m s 设计器提供开发环境,可以在这里输入报表脚本,编辑和调 试脚本。脚本使用纯文本的u n i v e r s a lf o r m s 布局语言。同时,设计器也可 以用作独立的应用程序生成报表文档。 u f o r m s 运行引擎 运行引擎允许用户将设计器产生的报表脚本集成到应用程序中,使得 应用程序具有报表功能。 u f o r m s 服务器 西安电子科技大学硕士论文 第二章报表工具的分析 9 专用的w e b 报表服务器。可以响应普通浏览器的报表请求,实时生 成包含文本影像等的报表页面文件。 u f o r m s 的优点如下: 数据安全性 u f o r m s 提供了简单又安全的平台以发布保密数据和信息。u f o r m s 运 行引擎不传输数据。实际的报表生成过程是:服务器端编译信息,生成报 表,发送给客户机( 报表的格式可能是g i f , 、j p e g 、f l a s h 、p d f 等) 。这 样,保密数据不在不安全的连接上传输,保证了数据安全。 高质量的输出效果 u f o r m s 提供功能强大的字体引擎和图像引擎,可以实现高质量的字体 和图像输出效果。 功能可裁剪 可以方便地取舍u f o r m s 提供的功能,实现瘦客户机( t h i nc l i e n t ) 或 者瘦服务器( t h i ns e r v e r ) 的灵活配置。 报表修改方便 u f o r m s 支持报表的集中控制,在服务器端改变报表布局脚本,所有基 于该布局脚本的报表都被改变,只需要一次编辑! 移植性好 u f o r m s 使用a n s ic + + 开发,不调用依赖于操作系统的a p i 。移植方 便,支持新的服务器平台只需要很少改动,目前支持6 4 位n t a l p h a l i n u x a 1 p h a 。 适应面广 u f o r m s 客户机界面、u f o r m s 开发设计器界面、u f o r m s 服务器由相 同源代码基( s o u r c ec o d eb a s e ) 编译,功能分层设计,可以适应各种类型 的客户机, i l l 务器结构和各种功能需求,只需要重新编译源代码即可。 多平台支持 u f o r m s 采用统一的布局文件源代码,可以被多个平台上的u f o r m s 同 时识别:“w r i t ei to n c e ,r u na n y w h e r e ” 扩展性 u f o r m s 支持使用第三方插件对功能进行扩展。 2 5 3o r a e l e 9 ir e p o t s o r a c l e 9 ir e p o t s 是o r a c l e 公司提供的一个强大的企业级报表工具【1 0 - 13 1 。 o r a c l e 9 i r e p o r t s 中的报表可以含任意数据,具有任意格式,输出到任意目标。 西安电子科技大学硕士论文 报表技术研究及报表工具开发 o r a c l e 9 ir e p o r t s 包括两部分:开发环境( d e v e l o p m e n te n v i r o n m e n t ) 和发 布环境( d e p l o y m e n te n v i r o n m e n t ) 。开发环境一o r a c l e 9 ir e p o r t sd e v e l o p e r :创建 报表( 包括w e b 和纸质报表) 的r a d 环境;发布环境o r a c l e 9 i a sr e p o t s s e r v i c e s :完成报表的生成、输出、发布,提供高质量企业级报表服务。 o r a c l e 9 ir e p o r t s 主要特点如下: , 支持几乎不受限制的数据源 支持多种数据源( o r a c l ee x p r e s s 、x m l 、j d b c 、文本文件) ; - 通过数据源插件( p l u g g a b l ed a t as o u r c e ,p d s ) 可以支持新数据源。 支持丰富的图形 目前支持5 0 + 类型图形,包括3 d 图形。 支持多种格式报表输出 目前支持的格式包括:p d f , h t m l ,h t m l c s s ,x m l 等。 支持多种发布方式 目前支持打印、e m a i l 、缓冲等; 支持自定义新的发布目标。 支持基于应用服务器的报表生成 客户端使用浏览器界面; 标准c g i s e r v l e t 接口; 报表服务器端动态生成报表页面。 高性能 报表服务器支持输出缓冲、批处理、负载平衡等。 内建的安全机制和简便的管理 可以方便地控制对报表服务器、打印机、报表定义、输出格式定义等 的访问。 w y s i w y g ( 所见即所得) 格式化 支持现场预览和网上预览。现场预览是指数据项格式指定后立即可以。 看到报表外观的变化效果;网上预览是指数据格式修改后,服务器自动将 、 更新的结果“p u s h ”到浏览器。 提供向导程序 提供报表向导、数据向导和w e b 向导自动化报表的创建过程。 开放性 提供a p l ,支持实现自己的插件对系统的能力进行扩充,包括:数据源 访问、引擎、安全性、通知、分布和缓存等。 西安电子科技大学硕士论文 第二章报表工具的分析 2 5 4f o r m u l a0 l i e f o r m u l ao n e 控件包容了桌面型电子表格应用的精华,为开发者提供了完 整而灵活的报表功能。可以嵌入到应用程序中提供报表功能,也可以独立运行 1 4 j 。 f o r m u l ao n e 具有如下特点: 内置工作簿设计器 f o r m u l ao n e 内置一个基于窗口的可以独立运行的工作簿设计器,该 设计器具有强大的电子表格功能,可以用来设计和生成多种格式、多种内 容的报表,包括: 读写e x c e l 4 0 5 0 7 0 的文件; 设置单元格的字体、模板、边界和颜色; 设置数字和文本的格式; 建立二维、三维图表; 设置各种计算功能( 重新计算、定义表达式) ; 允许设置单元格保护、重定义行列大小、单元格编辑、改变所选范围。 支持h t m l 输出类型 f o r m u l ao n e 包括一组a p i ,能够将选定范围的表格输出到一个薪建的 h t m l 文件或者插入到已有的h t m l 文件中,并自动设置h t m l 语言中 的标签( t a g ) 。选定范围中的表格文本能够具有定义月 定义的格式,在输 出到h t m l 表格文件中保留原有的文本设置和色彩。 e x c e l 兼容性 f o r m u l ao n e 与e x c e l 4 0 5 0 7 0 兼容,支持1 3 0 余种e x c e l 工作表函数 和e x c e l 形式的工作簿。同时,占用的资源远远小于e x c e l ,用户无需装载 e x c e l ,即可运行基于f o r m u l ao n e 基础上的应用。 统一的数据传输 f o r m u l a o n e 提供扩展的数据功能集合,支持统一的数据传输,这使 得f o r m u l ao n e 能够作为一个o l e 的对象插入到p o w e r b u i l d e r 的数据窗口 中。 支持o d b c f o r m u l ao n e 在所有的开发环境中都可以作为一个数据库的输k 输出 工具,它允许连接查询各种支持o d b c 的数据库。可以通过其a p i 函数 或内置的o d b c 查询框设置s e l e c t 语句建立与数据库的连接,或使用已有 的s e l e c t 语句构造o d b c 的连接。 支持多国语言 西安电子科技大学硕士论文 报表技术研究及报表工具开发 f o r m u l ao n e 包含一个附属库,为开发者提供对多国语言的支持,包 括法语、意大利语、目语、西班牙语等。 编程支持 f o r m u l ao n e 包含了广泛而丰富的a p i 函数,帮助开发者灵活自如地 控制电子表格的制作,不同于其它独立的电子表格系统,它拥有完整的事 件、大量的方法和属性,为程序员提供了便利的电子表格设计工具箱。 2 55 国内开发的报表工具 国内开发的报表工具以d m t a b l e 智能报表工具 3 , 4 1 和u f o 报表 1 , l s 】为例介 绍如下: 一、d m t a b l e 智能报表工具 d m t a b l e 智能报表工具向用户提供了两个使用部件,一个是报表工具集成 环境,集成环境包括了报表工具的所有功能,即报表框架的管理和报表数据的 管理,报表工具集成环境给用户提供了交互式使用方式;另一个部件是供用户 使用的编程接口,目前提供了报表数据管理的编程接口,因为这部分功能必须 嵌在应用程序中。 d m t a b l e 智能报表工具的功能包括: 1 支持定制自由的报表式样 2 支持以下数据产生方法: 静态文本字符 用户输入数据 s q l 查询语句 函数及四则运算表达式 报表内置公式 其中,静态字符、s q l 语句和四则表达式中均支持使用参数,s q l 语 句和四则运算表达式中支持指示参数( 指示参数的值由动态执行的结 果来确定) 3 支持多个o d b c 数据源 。 4 支持多表单的报表框架 5 支持统计报表的报表保存到历史数据库中的功能 6 支持报表历史数据库的直接浏览 7 支持任意层次机构的历史报表合并和累计 8 支持报表上再建报表的能力 9 支持各种形式的图表表现形式 西安电子科技大学硕士论文 第二章报表工具的分析 1 0 支持自动分页打印 1 1 支持用户编程接口 1 2 具有安全管理机制 d m t a b l e 智能报表工具的特色如下: 支持多种数据源 具有完备的跨数据库系统的数据源管理功能。可以同时连接多个不同 的数据源,从中取数据制作报表。 与数据库紧密联系 支持s q l 语言脚本,可以方便地从数据库中取出最新数据或历史数据 进行加工处理、生成报表。结果也可存入数据库,可以将不同时间的历史 报表数据进行累加。能“表上建表”,在需要时可自动维护数据的一致性。 企业级报表工具 该报表工具支持在i n t r a n e t 上使用,它有一套严格的权限管理机制, 确保报表数据的安全。同时,该工具能满足企业内部多层次组织机构管理 的需要,支持报表数据分层次机构存放,并可对不同层次机构的报表数据 进行合并汇总、分析比较。 开放性 达梦智能报表工具既提供一个集成环境,可以独立使用,也提供与其 它应用开发工具的接1 2 1 。可以调用外部动态连接库( d l l ) 的库函数,也提 供动态库供多种应用开发工具调用。例如,可被v c 、v b 、d e l p h i 、p o w e r b u i l d e r 等调用。 易用性 达梦智能报表工具支持所见即所得的报表制作方式,可以方便、自由 地定义各种报表式样、指定数据来源。还提供了多个“向导”,引导用户制 作报表。 二、u f o 报表 u f o 报表也是国内开发的电子表软件。u f o 的主要功能包括: 提供各行业报表模板( 包括现金流量表) u f o 提供的报表模板包括了1 9 个行业的7 0 多张标准财务报表( 包括现 金流量表) 。 文件管理功能 包括报表文件、批命令文件、菜单文件的管理。 格式管理功能 可以自定义报表格式,修改已有报表格式,创建报表模板等。 数据处理功能 西安电子科技大学硕士论文 报表技术研究及报表工具开发 u f o 提供了丰富的计算公式,可以完成几乎所有的计算要求: 提供丰富的取数函数; 支持提取应用服务数据,可以实现u f o 电子报表同其它应用软件间数据 整合。 图表功能 u f o 提供了直方图、圆饼图、折线图、面积图等4 大类共1 0 种格式的 图表。 打印功能 支持打印预览、支持套打。 二次开发功能 u f o 提供了由函数、命令、变量和语句组成的语言系统,可以用它开发 出适合本企业的专用系统。 2 6 报表工具的比较 将上述报表工具进行比较,可以得到的结果见表2 1 ( 因为国产报表工 具与国外产品的的类似性,比较时没有包括国产报表工具) : 弋 e x c e iu n i v e r s a l0 r a c l e 9 if o r m u l a 项 f o r m s r e p o r t s 0 n e 操作系统支持 w i n d o w sw i n d o w sw i n d o w sw i n d o w $ u n i x 可视化设计环境有有有有 数据源 o d b c0 d b co d b co d b c 可扩充 数据格式丰富丰富丰富丰富 服务器组件无有有无0 输出格式 h t m lh t m lp df h t m l e x c e lp d fh t m le x e e l f l a s hh t m l c s s 专用格式 专用格式 x m l 支持交互式报表是否否否 功能裁剪性否是否否 独立运行支持支持支持支持 嵌入应用程序弱强否强 编程支持提供提供提供提供 2 7 其他需求 除以上讨论的报表数据、报表格式和报表输出外,报表工具通常还要提供其 他一些功能 西安电子科技大学硕士论文 第二章报表工具的分析 2 7 1 报表管理 报表工具需要提供报表管理机制,用于管理系统中存在的大量的报表,以 方便用户使用报表。例如:报表查找、添加、删除等等功能。查找功能是指报 表系统中可以由用户输入查询条件,系统查找符合该条件的报表,显示给用户。 报表的添加是指用户可以向系统中添加新的报表定义。报表的删除是指用户可 以删除已有的报表和报表定义。 2 7 2 安全性 报表数据来自于数据库,数据库系统中很重要的一个问题就是数据安全, 因而,报表同样需要安全性。报表工具需要提供安全机制,使得用户可以针对 不同的情况进行授权,控制报表的使用,保护数据。 2 7 3 伸缩性 报表工具支持从报表设计到报表生成,最后到报表输出的一系列功能。但 是,不是所有的用户都需要全部这些功能,报表工具应该具有伸缩性,能够方 便地提供系统功能的一个子集,实现灵活的配置。例如,对于只需要浏览报表 的用户,一个支持报表显示功能的报表浏览器即可满足要求。 27 4 平台支持 报表工具应该支持尽可能多的操作系统平台。目前支持w i n d o w s 平台的 报表工具较多,但是在u n i x 平台上运行的报表工具产品则较少。 2 7 5 二次开发支持 报表工具可能需要集成到其他应用程序中去,提供报表功能。这时候,报 表工具需要向应用程序提供编程接口。为了便于使用,要求报表工具提供的编 程接口符合一定标准。 2 7 6 扩充性 报表工具提供的功能有时可能不能满足用户的特殊需求,报表工具需要提 供功能扩充机制,用户可以通过它对报表工具的功能进行扩充。实际上,目前 有些报表工具的功能扩充机制非常强大。 西安电子科技大学硕士论文 报表技术研究及报表工具开发 2 8 现有报表工具的实现方式 现有报表工具的实现有如下两类方法: 完全开发 开发者负责实现报表工具的全部功能。采用这种实现方式的报表工具 例子如:e x c e l 、u f o r m s 、o r a c l e 9 ir e p o r t s 和f o r m u l ao n e 。 部分开发 对现有的报表工具进行扩充或者利用现有的报表工具开发新的报表工 具。采用这种方式实现的报表工具如:基于e x c e l 开发的报表工具 1 6 , 1 7 】。 2 9 本章小结 报表是信息的发布。报表工具需要解决的三个核心问题是:报表数据、报表 格式和报表输出。报表数据和报表格式是报表本身的固有属性;报表输出是报表 工具为了实用,必须解决的问题。现有的报表工具在报表数据、报表格式和报表 输出方面各有特色。报表管理、安全性、伸缩性、平台支持、二次开发支持和扩 充支持也是报表工具的重要特性。 西安电子科技大学硕士论文 第三章报表工具的模型 第三章报表工具的模型 1 7 本章讨论我们提出的一个报表工具模型,主要包括模型中的样本重用、报表 数据定义语言及其解释器、报表格式描述语言及其解释器和报表的输出等内容。 3 1 报表工具的模型 我们提出了一个报表工具模型,该模型提供重用性,同时又具有可扩充性 易于构造。模型如图3 1 所示: 图3 1 报表工具模型 该报表工具模型支持:报表的定义、报表的生成和报表的输出发布。其中 报表的定义由报表设计环境支持 报表生成和报表的输出发布由报表运行环境支持 西安电子科技大学硕士论文 报袭技术研究及报表工具开发 报表数据定义使用报表数据定义语言 报表格式定义使用报表格式描述语言 报表数据处理器负责根据报表数据定义,生成报表数据模型 报表格式处理器负责根据报表格式定义,将报表数据模型中的数据按 照指定的报表格式组织,生成报表 报表输出处理器负责将报表输出到不同设备或者以不同的文件格式输 出报表 3 21 什么是样本 3 2 报表工具模型中的样本重用 软件工程中所用的样本( p a t t e r n ) 一词起源于c h r i s t o p h e ra l e x a n d e r 所著的 t h et i m e l e s sw a yo fb u i l d i n g 一书中。在这本关于建筑的书中,样本的定义如 下: 每个样本是一个三元规则,表达了特定的环境、问题和解之间的关系。 作为世界的元素,每个样本表示了一个特定的环境、个在该环境中重复 出现的强制因素的系统、以及个使得这些强制因素得以解决的特定的空间配 置之间的关系。 作为语言的元素,一个样本是一条指令,显示了如何使用这个空间配置, 一遍又一遍地,解决在特定环境里相关的强制因素的系统。 简而言之,样本既是一个实在,在世界中发生;又是规则,告诉我们如何 创造那个实在和什么时候创造。样本既是一个过程又是一个实在:是对活生生 的实在的描述,也是生成该实在的过程的描述。 对于软件工程中使用的的样本一词,目前存在着许多不同的定义。在文献 1 8 】中,样本是这样定义的:样本描述了一个在特定的设计环境中重复出现的 设计问题,提出了该问题的久经考验的一般的解决方案;该解决方案描述了解 的组成部件,组成部件的职责和相互关系,以及它们协同的方式。 样本具有如下特性: 样本针对特定设计环境中重复出现的设计问题,提出了问题的解 样本记录了现有的,久经考验的设计经验 样本识别和指定了高于单个类和实例或者组件层次的抽象 样本提供了理解设计原则的公用语言 样本是记录软件结构的方法 样本支持构造具有特定性质的软件 西安电子科技大学硕士论文 第三章报表工具的模型 样本有助于构造复杂的、异构的软件结构 样本有助于管理软件的复杂度 根据不同的抽象层次,样本可分为体系结构样本( a r c h i t e c t u r a lp a t t e r n s ) 、 设计样本( d e s i g np a t t e r n s ) 、惯用样本( i d i o m s i m p l e m e n t a t i o np a t t e r n s ) 。 体系结构样本 描述软件系统的基础的结构组织,决定系统的高层组织,它提供了一 套预先定义好的子系统,说明了它们的责任,如:组织予系统之间关系的 规则和指导原则。 设计样本 设计样本在规模上小于体系结构样本,但是也独立于特定的程序设计 语言。它提供了精炼的子系统,构件或者它们之间关系的模板,解决了特 定背景下一般的设计问题。 惯用样本 特定于某种编程语言的低级样本,它同时强调了设计和实施方面的问 题,描述了怎样用某种特定程序设计语言的特性实现构件或构件之间关系 的某些方面。 3 2 2 流水线样本 流水线样本t 捧】是一种数据流处理系统的体系结构样本。每个处理步骤用过 滤器组件实现。数据沿相邻过滤器间的管道流动。熏新组合过滤器可以建造相 关的系统。 流水线样
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 宁波水平钢支撑施工方案
- 绥化学院《景观工程技术》2023-2024学年第二学期期末试卷
- 上海外国语大学贤达经济人文学院《食品物理学》2023-2024学年第二学期期末试卷
- 餐饮安全培训
- 上海电影艺术职业学院《互动叙事2》2023-2024学年第一学期期末试卷
- 《品味火锅》课件
- 2025至2031年中国大功率干湿两用吸尘器行业投资前景及策略咨询研究报告
- 2025至2031年中国固定式(凸)焊机行业投资前景及策略咨询研究报告
- 2025年新版试用期员工劳动合同模板大全
- 2025至2031年中国半流体齿轮润滑脂行业投资前景及策略咨询研究报告
- 小学校本课程教材《好习惯伴我成长》
- 国家开放大学电大本科《儿童心理学》网络课形考任务话题讨论答案(第二套)
- 《淮阴师范学院二级学院经费核拨管理办法(试行)》
- 诺基亚LTE FDD设备技术说明(2)
- 清筛车挖掘输送装置
- 实名核验(法人)业务办理表
- 初中尺规作图典型例题归纳总结(共10页)
- 离合齿轮的工艺规程与专用夹具设计
- 武汉土地使用税和土地征税等级现行标准
- SCR法和Contirod法铜杆生产线的比较资料讲解
- 绘本PPT:胡椒生长在哪里
评论
0/150
提交评论