两种定义
1、语义层——是将数据库中的列(字段)按决策主题重组为面向用户的对象,对象可以是数据库中的表、列、连接(多字段组合)以及对多字段进行运算的表达式。
2、语义层是一个覆盖在数据库内部数据对象之上的一个解释层,是用户和数据库之间的一个代码翻译层,也就是:将数据库中比较凌乱、复杂的数据对象(例如:存储在table中的各个字段的记录)通过预先定义好的规则(“语义层”)过滤转换成实际使用的业务对象。
Universe 是对数据库中数据结构(表,列和连接等)的面向业务的映射。
类是Universe中对象的逻辑分组,通常,类名反映了业务概念,体现了对象的类型和种类。
对象是Universe中的最具体的内容,对象映射了数据库中的数据或数据派生物。
为了进行多维分析,对象被限定为以下三种类型之一:维、明细或度量。
维对象是用于分析的参数,维通常和一个层次结构相关。
明细对象为维对象提供描述,但不是分析的重点。
度量对象体现了数值的信息,用这些信息来对维对象进行度量。
所谓的xml,就是eXtensible Markup Language, 翻译成中文就是“可扩展标识语言
XSLT是扩展样式表转换语言(Extensible Stylesheet Language Transformations)的简称,这是一种对XML文档进行转化的语言,XSLT中的T代表英语中的“转换”(transformation)。它是XSL(Extensible stylesheet language)规范的一部分。XSL规范的另外一部分是XSL-FO(FO代表格式化对象Formatting Objects)
<?xml version="1.0" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
...
</xsl:stylesheet>
XSL(eXtensible Stylesheet Language),即可扩展样式表语言
XML Schema xml纲要
命名空间
<x xmlns:edi='http://ecommerce.org/schema'>
<!-- 對於"x"元素及內容﹐前綴 "edi" 與“http://ecommerce.org/schema”捆綁在一起 -->
国内报表设计器的分析
本人对报表设计器有些兴趣,于是到处搜集资料,写下了一些关于国内的报表设计器的分析,望高手指点。
首先分析中国国内的打印报表市场。有人研究了国内报表工具的市场容量(具体见 http://runqian.blog.com.cn/archives/2005/164956.shtml ),应该有20亿元。只是开发商竞争激烈,很多无自主开发的核心技术,而且中国信息化水平不高,是的实际市场缩水,但需求是一直存在的。在未来非常长的时间内,办公无纸化不会普及,打印时刻进行,而且工作量不小,打印模板占整个信息化系统的很大一块,甚至是关键的模块,而且国内打印格式千百万化,用户需求经常改变,因此若没有良好的打印模板工具,实施打印模块的难度是超出想象的,因此信息系统开发商是非常需要良好的打印工具。
国内已经存在的不少打印工具提供商,在此对其主要的几个厂商进行分析
水晶报表(Crystal Reports)是加拿大Crystal Decisions公司出品报表分析与生成软件,历史比较长,使用的比较广泛,原先是作为微软OEM绑定到VB中,但现在微软放弃了她的绑定,而且其产品有点跟不上时代,因此有人评价她有点江河日下。
Style Report(中文网址 http://www.inetsoft.com.cn/ ),源自国外的纯JAVA的报表系统,报表设计器的操作演示没看到,在她的学习中心只看到几张模糊的图片,她的设计器是拖拽控件的设计模式,数据源的定义还是基于SQL语句查询数据库的,和其他的设计器没什么本质区别。她的报表的HTML输出质量很好,非常适合Web环境。
Developer Express 公司(网址http://www.devexpress.com ),是一个相当有名的第三方软件厂商,制造了大量的优良的图形化软件,其中针对打印的有 XtraReports 控件,其中包括一个打印模板设计器,根据其官方网站介绍的情况和本人亲自下载试用的体验,对其打印控件的了解如下
1.功能强大,支持的报表元素类型不多,报表样式控制不错
2.设计器界面比较专业
3.在一个大部分报表工具都存在的问题,数据源设计不完善,还需要编写程序向打印控件提供数据
4.计器中的打印的元素都是一个个Windows控件,因此当报表的包含的元素很多,结构复杂时,无论设计还是运行报表都是耗费大量的计算机系统资源的,而且影响运行速度,因为单个的Windows控件要占用不少的系统资源。
5.该报表工具在国内应用不多。
FastReport(网址 http://www.fast-report.com ),是一个俄国人开发的报表系统,报表设计器的图形化用户界面做得非常精致,她是典型的控件拖放的设计模式。报表分为几个大块(Band),这些块区分为页眉,表身和页脚,其中只有一个页眉和页脚,可以有多个表身。而所有的报表元素分布在这些块上面,因此这种报表的页面模型是两层,对于复杂的报表则可能过于简单。她支持的页面元素类型比较多,报表数据源还是普通的基于SQL查询的二维表格方式。
FastReport提供一个版本FreeReport,她是FastReport的旧的低级的版本,但提供所有源代码,因此很多公司借助她来进行Web报表的开发。一般的做法为首先使用其提供的报表设计器设计报表,文件保存到Web服务器,然后后台页面程序(例如ASP或JSP)查询数据库获得数据,然后拼凑JavaScript或VBScript等客户端脚本代码文本随着HTML代码发送到客户端,客户端的IE页面嵌入FreeReport控件,而客户端脚本代码向该控件填充数据,然后控制它进行打印。这种报表开发模式非常麻烦,当用户需求经常改变,程序员们只有疲于奔命的修改后台程序。
国内比较先进的报表系统,个人认为是润乾报表,她是北京润乾软件技术有限公司(网址 http://www.runqian.com.cn )开发的报表系统,全部采用Java开发,她的设计器采用类似Excel样式的表格设计方式,她的报表模型比较先进,包括报表排版模型,报表参数和宏定义等概念。演示效果不错。她的数据源的定义有内建数据集,相当于在报表系统中建了一个小型关系型数据库,保存表结构和数据。报表样式设计器比较不错,样式控制丰富,自主开发达到这种水平不容易。
杰创网络报表是杭州杰创软件有限公司(http://www.jatools.com)的主打产品,它一般简称为杰表。它技术比较先进,完全用Java实现,兼容j2ee平台。它的报表设计器是用Java写的,它的设计模式总体上是基于控件拖放,它没有Band的概念,报表设计界面直接分为页眉,主体和页脚,用户可以在在界面上拖放操作放置表格控件,但表格控件内部却是类似Excel 的电子表格设计模式,因此它的设计器的设计模式实际上是控件拖放和电子表格的结合。杰表作为Web报表,可以输出比较好的HTML页面,它的图表输出用Flash来展现,它还实现了数据钻取(在报表中点击某个链接可以显示另外一张相关的报表)。
中创软件(网址 http://www.inforbus.com ),是一个中间件厂商,其中报表工具是其一个重要产品。她是针对B/S环境下的报表工具,看看一些报表模板编制的演示,她是采用类似Excel的排版方式。数据源的定义采用普通的数据集,使用SQL语句查询数据库获得二维表格,对多数据源则使用某些字段进行关联。
Grid++Report 报表设计器是仁龙软件(http://www.rubylong.cn/index.asp)出品。她的设计器是传统的带状报表设计器,数据源是采用一条SQL语句通过ADO查询数据所得,因此数据源只是一个二维表格, GUI设计器比较专业,支持的报表元素类型不多。设计器提供了比较完整的编程模型,好像还不错的样子。
上海炎鼎软件(网址 http://www.maxrpt.com/ )的数巨报表,核心的报表设计器是基于俄国的FastReport开源版本FressReport,数据源定义还是基于SQL查询的二维表格,和其他厂商没什么本质区别。
深圳明宇科技(网址 http://www.soft2web.com )旗下有如意报表,和炎鼎的数巨报表同质化严重,因为他们两个的核心设计器是基于俄国的FastReport,同时运行如意报表设计器和FastReport的报表设计器,可以发现两者无论是用户界面还是操作方法都惊人的相似。数据源的定义和运行环境都和数巨报表没什么本质区别。
微软报表服务是新出的产品,它背靠强大的微软和SQLServer服务器而在报表市场中异军突起,来势汹汹。本人首先进入微软的MSDN网络图书馆 MSDN Library > Servers and Enterprise Development > SQL Server > Reporting Services 的目录下面,这是报表服务的用户手册,本人英语不好,勉强看了它的几篇介绍文章,往后就看不下去。本人还下载了报表服务评估版下载安装了其中的客户端。由于它的服务器端需要SQLServer2000Spa,本人机子只有MSDE2000,装不了服务器端,再说本人暂时对报表设计器和报表原理感兴趣,所以没装服务器端程序。
整个报表服务概念非常庞大,覆盖了整个报表的生命周期,包括了报表设计,安全,管理和运行。在此只重点说说报表的运行原理和报表设计器。
实际生产运行中,报表服务系统需要配置一个报表Web服务器,将报表定义文件放好,数据库连接配好,然后用户就可以在客户端的IE地址栏中敲入报表页面 URL就可访问报表了,因此报表服务算是一个纯粹的Web报表解决方案了,非常适合B/S系统。但目前不知如何在C/S系统中使用报表服务。
报表定义文件是一个扩展名为RDL的XML文档。它保存了报表的样式定义和数据源的定义,是微软自己定义的一种描述报表定义的XML文档,结构是公开的,因此第三方厂商可以编写兼容报表服务的报表设计器。微软使用自己的VS.NET集成开发环境来设计报表,相信绝大部分人还是用VS.NET来设计报表。
微软提供的报表设计器是基于VS.NET的,因此若要设计报表则必须安装昂贵的VS.NET集成开发环境,对报表设计器的广泛应用有所限制。其实私底下用用盗版的也没什么风险,若在公司里大量使用盗版的则微软迟早会找上门。微软做的软件向来好用,它的报表设计器也相当专业,它采用控件拖拽的设计模式,但表格内部则采用类似Excel的编辑方式。目前的报表设计器支持文本框,线条,表,矩阵,矩形,列表,图像,子报表和图表。好像不支持条形码。文本框也不支持行间距和字符间距。但报表元素所有的属性都支持表达式。矩阵实际上是交叉报表,是处理复杂的中国式报表的基础,但具体怎么使用则不清楚。
报表设计器的程序文件安装在 C:\Program Files\Microsoft SQL Server\80\Tools\Report Designer ,其中 Microsoft.ReportingServices.Designer.dll 是报表设计器的主程序。使用Reflector查看它的反编译代码,可以看到,其实所有的报表元素都是一个个Windows控件,这点和 DeveloperExpress的XtraReports一样。在报表设计器中使用Windows控件来实现页面元素有些性能问题。大家都知道 Windows控件是很消耗系统资源的,因为其中涉及到了窗体句柄这种重量级的句柄。当报表复杂,里面存在数百个页面元素时,报表设计器需要动态的加载数百个控件,如此启动和操作都比较慢,而且占用大量内存(这种事我以前干过,有体会)。而俄国的FastReport等类似报表工具则是自己绘制报表元素的,因此没有这种问题,加载和编辑复杂报表不会很慢。
在数据源定义方面,根据微软提供的RDL的 XML样式定义,一个报表存在若干个DataSet的节点,DataSet节点提供一个Query,其中定义了一个SQL语句,DataSet还提供若干个字段,这些字段和Query的SQL查询结果的字段一一对应。因此个人看来DataSet实际只是定义了一个源自数据库的二维表格,一个报表内可以定义多个DataSet,当这些二维表格之间发生关联时如何处理我这个初学者就猜不出来了。本人觉得报表服务和其他报告工具类似,是基于SQL查询的,数据源结构是两层。这在报表设计器设计数据源的操作上体现出来了。它的数据源设计界面实际上是一个SQL查询设计器,无论如何操作,最终结果都是一个SQL查询语句,包括普通SQL查询语句,表查询和存储过程三种类型。SQL查询语句执行的结果肯定是一个二维表格。
报表设计器使用拖拽操作来简化数据源的绑定,一般的旁边有个字段窗体,列出了所有的DataSet的字段。将某个字段拖拽到某个报表页面元素上面,若这个页面元素为文本框则设置它的文本值使之绑定到指定的字段,否则会在拖拽的位置新增一个文本框并绑定到指定字段。
此外还有一些其他的报表厂商,由于应用不广泛或本人不了解,在此不再说明。
以上说明的这些厂商分为国外厂商和国内厂商。两类有着各自的特点。国外厂商本身实力强大,技术先进而成熟,都具有自主知识产权,但有某些地方不大适应中国国情,但这个问题国外厂商迟早会解决的。而国内厂商实力弱小,技术相对有些落后;而没有自主知识产权的厂商则更视为草根公司。因此总体上国外厂商在市场中处于强势地位,占据了大部分市场。国内厂商迫切需要发展,而且急需比较先进的自主知识产权。
以上厂商提供的报表设计器按照操作模式可以分为两类:基于控件拖放的设计模式和基于类似Excel电子表格的设计模式。基于控件拖放的设计模式实现起来比较方便,技术成熟,但不适应类似中国式的复杂报表,因为这需要进行精细的对齐操作,生成的报表输出为HTML或Excel文档时比较难于处理。而Excel电子表格的设计模式实现起来比较复杂,但能处理中国式的复杂报表,能比较方便的生成HTML或Excel文档,技术好的还能直接和Excel交换数据。因此一般认为类似Excel电子表格的报表设计器比较先进,符合中国国情。
分享到:
相关推荐
4. **本土化服务**:国内报表工具提供商更了解本地用户的使用习惯和服务需求,能够提供更加贴合市场需求的产品和服务。 #### 国内报表工具的优势分析 1. **高度定制化**:国内报表工具通常支持高度定制化的设计,...
这种现状,实际上是不健康的,因为它限制了整个行业的视野,使国内报表厂商在国际竞争中处于不利地位。 在处理中国式报表时,我们需要注意,信息化初期的简单移植——即从纸质表格到电子表格的转化——可能带来了...
今天,我们将详细介绍国内性价比最高的企业级报表软件——华企报表,探讨其强大的功能、易用性、自主知识产权以及国内客户服务等优势。 首先,让我们了解华企报表的核心功能。华企报表是一个企业级的综合报表解决...
目前市面上的报表工具有很多,国外的如:Crystal, Brio, Style Report等,国内的如:博易智软、和勤报表等,无一例外地都提供了一个独立的报表服务器,提供了一套完整的用户角色管理机制,导致了程序员集成的时候...
华企报表软件是一种国内流行的报表设计工具,它允许用户创建多种类型的报表,并提供了丰富的报表设计方法。以下是对利用华企报表软件设计常见报表方法的总结: 1. 制作报表的常规流程 首先,用户需要登录华企报表...
Cell 组件、插件(ActiveX控件)是北京用友华表公司在长期开发实践的基础上推出的功能强大、技术成熟的报表二次开发工具,是国内技术领先拥有广泛客户群的商业报表组件,有700多个编程接口,实现报表自定义,报表显示...
目前国内功能最强的报表中间件产品,支持普通报表、分组报表、交叉报表、分组交叉报表、主从报表等各类统计报表的制作,支持用户自己定义报表,支持报表二次加工、过滤、支持多数据源、支持WEB、C/S等各种应用环境。...
基于python的国内疫情实时数据可视化报表.zip实时获取国内疫情数据,大屏数据报表展示基于python的国内疫情实时数据可视化报表.zip实时获取国内疫情数据,大屏数据报表展示基于python的国内疫情实时数据可视化报表....
ireport是一款不可多得的报表开发工具,它具有国内报表工具不能超越的优越性。
国内最实惠的报表平台,用了才知道。
国内主流报表软件工具比较,对国内主流报表的优缺点进行分析,并总结特性
润乾报表是一款在中国国内广泛应用的企业级报表工具,尤其在数据可视化和数据分析领域有着广泛的影响力。其设计理念在于帮助企业快速构建各种复杂报表,实现数据的高效管理和分析。本压缩包中的“润乾报表V4~V4.5...
润乾报表4.0是一款国内知名的商业智能和报表软件,主要为企业提供数据分析和报表设计解决方案。这款产品由三个核心组件组成:设计器(Designer)、服务器(Service)和快逸报表(Quick Report)。每个组件都有对应的...
当前国内外有很多著名的DCS厂商,如SIEMNES,ABB,等,他们都把重点放在了对现场的监控和现场数据的获取上,在报表方面做的不够完善,或者是报表没有通用性,只有在他们自己的系统中才可以使用,当然如果是不错的报表...
总的来说,"C# RDLC报表相关安装程序"是C#开发者不可或缺的工具,它简化了报表开发流程,并且通过提供汉化支持,使得国内开发者能够更高效地利用RDLC报表进行数据可视化和分析。无论是小型桌面应用还是大型企业级...
用友,作为国内知名的企业管理软件提供商,其产品线涵盖了财务管理、供应链管理、人力资源管理等多个领域。其中,“报表插件”是用友为提升企业信息化水平,优化数据分析能力而设计的重要工具。该插件主要用于帮助...
万用报表打印系统系统适用Microsoft Visual Studio 2008开发的、基于Fromwork...注:此组件在国内多个大型项目中得到过应用,非常适合简单报表打印,同时此组件,仅限于技术研究,禁止用于商业,如有需要,请联系作者。
国内市场上,针对中国式复杂报表的需求,涌现出了一批优秀的国产报表软件。其中,华企报表软件(HReport)以其独特的技术优势和用户友好的特性,成为了国产报表软件领域的佼佼者。 #### **一、简单易用,专为中国式...