CN1570926B - 将报表作为系统化可查询的数据源 - Google Patents

将报表作为系统化可查询的数据源 Download PDF

Info

Publication number
CN1570926B
CN1570926B CN2004100477356A CN200410047735A CN1570926B CN 1570926 B CN1570926 B CN 1570926B CN 2004100477356 A CN2004100477356 A CN 2004100477356A CN 200410047735 A CN200410047735 A CN 200410047735A CN 1570926 B CN1570926 B CN 1570926B
Authority
CN
China
Prior art keywords
data
report
data source
definition
computing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2004100477356A
Other languages
English (en)
Other versions
CN1570926A (zh
Inventor
W·P·巴克
J·卡尔森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN1570926A publication Critical patent/CN1570926A/zh
Application granted granted Critical
Publication of CN1570926B publication Critical patent/CN1570926B/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2425Iterative querying; Query formulation based on the results of a preceding query

Abstract

提供了一种能够将报表展示为系统化的可查询的数据源的系统和方法。在一个说明性的实施方式中,一个典型的计算应用程序根据至少一个报表定义来处理数据。所述的典型计算应用程序和至少一个数据存储器和/或数据源协同工作,从而根据包含在报表定义中的信息检索数据。使用所述的报表定义,所述的典型计算应用程序对建立在所述的协作数据存储器和/或数据源内的数据进行操作,从而产生所期望的报表。作为报表产生处理过程的部分,所述的典型计算应用程序产生所述报表的一个图表。该图表能够随后被上述典型计算应用程序或其他协作计算应用程序使用,从而在所产生的报表上执行一个或多个查询。而且,所述的典型计算应用程序将所述的报表以一种独立描述的永久数据格式进行存储。

Description

将报表作为系统化可查询的数据源
技术领域
本发明一般涉及报表的产生和管理领域,并且,尤其是,定义一种报表,该报表可以作为被多种协作计算应用程序和计算环境利用的可系统化查询的数据源。
背景技术
在有效实现知识的共享和理解中,报表的产生和管理是普遍存在的。通常,一个报表是一种或者多种有关和/或相关内容的预定义的集合。产生的报表可以被用来分布到企业中来帮助分析信息——对企业成功运作起到关键作用的信息。从大公司到教育和研究机构以及家庭商务,通过产生和管理报表有助于处理各种分离的数据,以便更好地进行理解,并且,更重要地是,有助于处理有效的数据来改善企业和组织。简单地说,有效的产生、管理和利用报表与企业和组织的成功是等价的。
在使用计算应用程序的情况下,报表的产生和管理是比较容易完成的。存在许多计算应用程序,所述程序的总体或部分上是专门用来产生和管理报表的。在使用这些典型的计算应用程序时,多个参与的用户被给予了定义报表域(例如,控制增加到报表中的内容)、定义报表的分布(例如,格式和颜色)、和在某些情况下定义报表的访问权限的能力。这些计算应用程序也可以允许多个参与用户来定义一个或多个报表模板,所述报表模板能够被使用并可被重复使用来产生所希望的报表。通过使用这些模板,这些计算应用程序提供了一个所希望的报表或报表的全局定义。这些定义依次可以被协作计算应用程序使用来帮助处理报表数据。而且,现有的报表产生计算应用程序提供了帮助多个参与用户存储和管理产生的报表的特性和操作。
一旦定义好了一个报表或报表模板(例如,被一个参与用户),则计算应用程序就利用这些定义,从协作数据存储器中检索相关数据,以便增加由报表或报表模板所定义的域。在某些情况下,存储在协作数据存储器中的数据经常随着企业运作的变化而变化。在这种情况下,报表充当在这些数据存储器中所建立的某一数据字段的值的快照。
而且,这些计算应用程序根据所述报表和报表模板的定义格式化数据并配置数据。经过增加和格式化之后,这些报表作为离散的文件类型而存在。由于是离散的文件类型,所产生的报表典型地只能由那些具有读和处理这种文件类型的能力的协作计算应用程序来读取和处理。存储为离散的文件类型报表的另一个副产品是协作计算应用程序不能重新利用报表模板。
用不同的表述来说,目前,计算应用程序产生的报表都有一个单一的描述扩展名(例如,.html,.doc,.xls,.xml)定义,其通常是源于产生该报表的计算应用程序。因此,协作应用程序,当处理报表时,首先需要进行一个由外部描述扩展名到本地描述扩展名的转换。这种转换步骤,在某些情况下,可能产生错误,例如,报表配置/格式错误和,更严重地是,报表数据错误。而且,在这种形式下,由于所产生的报表不容易查询从而限制了协作应用程序应用报表的效用。在大多数情况下,多个参与用户愿意利用计算应用程序来产生具有新的报表定义的新报表,而不是试着去重新利用一个已经生成的报表。
现有实践的另一个缺点是不能对已经生成的报表的进行以时间驱动的分析。如所述的那样,计算应用程序可以运行一个或多个协作数据存储器。这些数据存储器具有多种表格,所述表格含有多种字段定义。随着时间的过去,这些字段的值将会发生变化,从而反映组织和/或企业操作所述数据存储器的一个或多个变化。例如。一个轿车经销店可以应用一个与数据存储器协同工作的计算应用程序来记录销售。销售额将会随着更多的汽车被卖出而变化。同样的例子,现有的计算应用程序可以运行来产生指示出这个轿车销售店的每个销售人员的的总的销售额。这样的计算应用程序根据一个报表定义来收集必要的数据并根据所述的报表定义来产生一个报表。因此,该报表充当了报表产生时在协作数据存储器中建立的数据字段值的快照。而且,目前的计算应用程序将所生成的报表展示为一种数据结构,该数据结构没有系统化,没有被存储为非永久数据格式,因而该数据结构不容易被查询。如此,这些应用程序也不能够支持在历史报表上的时间纬度的查询,从而不能提供对一个或多个报表数据值的时间驱动的分析。因此,如果不是不可能的话,利用目前的报表生成计算应用程序来进行趋势分析是费劲的。
从前述内容看来,应该可以理解到需要有一些系统和方法,他们能够提供报表作为系统化的可查询的以永久数据格式存在的数据源。通过这些系统和方法,可以克服现有技术的缺点。
发明内容
本发明提供能够揭示一种可作为系统化的可查询的数据源的报表的系统和方法。在一个说明性的实施中,一个运行于计算环境的计算应用程序被用来和一个或多个数据存储器和/或数据源协同工作,产生能够作为系统化可查询的数据源揭示的报表。典型的计算应用程序和包含所期望数据的至少一个数据存储器以及拥有针对一个期望的报表的数据字段定义协同工作。尤其,所述的报表定义包括,报表分布和格式化信息,报表参数,和报表字段定义。
在运行时,典型的计算应用程序接收所述的报表定义。利用在报表定义中提供的各种信息,典型应用程序与协作数据存储器和/或其他数据源进行通信来检索与报表定义一致的期望数据。一旦收集到这些数据,典型的计算应用程序把一些数据扩展名相互联系起来并且开始产生报表。作为报表产生的一部分,计算应用程序通过处理与报表定义相联系的数据来产生所述报表的一个图表。所述报表图表随后就可以被所述计算应用程序利用来在报表中进行查询。
而且,在期望的实施例中,所产生的报表是由所述计算应用程序以一种独立描述的永久数据格式提供的。尤其,所述独立描述的永久数据格式允许计算应用程序和计算环境协同工作,从而对作为系统化的可查询的数据源的报表进行时间递减的和时间驱动的查询,并且,更重要的是,所述格式能够允许作为被其他协作计算应用程序所理解的其他任何数据源。
这里所述的系统和方法的其他特点和方面在下面进行了具体的描述。
附图说明
图1和2是适合本发明的典型的计算环境的图示,其中,图2描述了一个典型的网络计算环境;
图3是描述了一个报表的典型实施例的框图,其中该报表作为与这里所描述的系统和方法相应的数据源;
图4是描述了与这里所描述的系统和方法相应的报表处理流程的框图;
图5描述了与这里所描述的系统和方法相应的报表处理流程的框图;
图6是典型组成部件的详细框图,根据这里所描述的系统和方法,处理系统化的可查询报表;
图7是根据这里所描述的系统和方法,将报表展示为系统化可查询数据源的处理流程图,;
图8A是将所述数据源展示为独立描述的永久信息的处理流程图;
图8B是当将独立描述的永久信息转换为作为系统化的可查询的数据源时,报表所进行的处理流程图;
图9是当展示为系统化可查询数据源的报表通过处理从而产生期望的快照时,所进行的处理流程图。
具体实施方式
概述:
作为组织和企业正常运作程序的一部分,报表的产生、管理、和利用是很普遍的。报表通常被认为是根据预定的分布和预定的格式呈现出的一组数据的集合。在某些情况下,包括在报表生成中的一个或多个操作,其用来在报表数据上进行生成新的报表数据或者是来更好地组织现有的报表数据。例如,轿车销售店可以利用报表来跟踪轿车的销售。存储的数据可以反映出每次销售的的销售代表、轿车型号、和日期。典型的报表可以展示出那个轿车销售店的总的销售额。不需要进行一个单独的对所有的销售的结算来产生总的销售额图并存储起来,所述的报表产生机制能够将结算操作作为报表产生的一部分包括进来。
随着计算技术的出现,报表产生、管理和利用已经变的明显更加容易了。目前,有几种计算应用程序能够帮助多个参与用户产生、管理、和利用报表。通常,这些计算应用程序与数据存储器和/或数据源协同工作来检索所期望的数据。这些数据然后根据预定的分布和格式进行格式化,并被作为一个报表呈现给多个参与用户。在某些情况下,计算应用程序产生的报表将在所述的数据上进行一个或多个中间操作,从而为所述的报表产生新的数据。在大多数情况下,所产生的报表作为具有单一描述定义的离散文件格式而存在。用不同的表述来说,产生报表的计算应用程序通常产生适合于该计算应用程序本身而不是其他协作计算应用程序的数据格式的报表,由此而致使在完全不同的计算应用程序之间实现报表的重新利用是很费劲的。
在这种情况下,由目前的应用程序产生的报表不利于其自身的简单重新利用性和/或互操作性。在大多数情况下,生成一个具有在报表定义上有变化的新的报表比重新利用已经生成的报表更有效。当完全不同的应用程序试着去利用非本地的报表时,复杂性的水平就会增加。例如,一个拥有其自己的本地描述扩展名的第一数据库计算应用程序将首先不得不对由一个拥有第二描述扩展名的第二计算应用程序产生的报表进行转换。所述转换过程可能引入多种错误,包括数据错误,其在某些情况下,能够致使所述报表的不能使用。
而且,报表生成计算应用程序不使用一个独立描述的永久数据格式来存储报表。而目前做法是用一种代表本地描述扩展名的数据格式来存储所述的报表。其中,所述的报表数据不是永久不变的(即,随着存储在数据存储器的数据的变化而变化)。如此,在生成的报表上运行以时间为驱动的查询变得极其困难。用不同的描述来说,就是目前的报表生成计算应用程序不能产生在时间上持续的报表。运行于一个数据存储器上的报表将导致只能反映在报表生成时在数据存储器中的数据值。
本发明的目的是通过提供一种系统和方法来改善现有做法的缺点,所述的系统和方法揭示了一种将具有独立描述的永久数据格式的报表展示为系统化的可查询的数据源。特定地,提供了一个能够根据报表定义来操作数据的典型的计算应用程序。所述的报表定义尤其包括:与要在报表中增加的所期望的数据相关的信息、分布信息、和格式信息。所述的典型计算应用程序根据协作数据存储器的报表定义,对数据进行检索从而增加所期望的。一旦收集到这些数据,所述的典型的计算应用程序为报表数据定义一个图表,并以一种中间数据格式存储所述的报表。所述的中间数据格式是一种独立描述的永久数据格式。这样,所生成的具有一个关联图表的报表被展示为数据源,其具备数据源提供给协作应用程序的所有的好处。而且,由于是作为一种独立描述的永久数据格式被存储,目前的再利用性得到了解决,除此之外,采用现在的系统和方法,在一组生成的报表上进行以时间驱动的查询也更容易执行。
A、典型的计算环境
图1描述了一个适合于实现本发明的计算系统环境100的例子。所述的计算系统环境100只是适合计算环境的其中一个例子,并不是为了表明对本发明的功能性和应用范围的任何限制。该计算环境100也不应该被解释为对在典型操作环境100所展示的任何一个或多个元件的组合的任何依赖和需要。
可以采用多种其它常规用途或特殊用途的计算系统环境或配置来操作本发明。众所周知的适合本发明使用的计算系统、环境和/或配置的例子包括:个人计算机、服务器计算机、手持或膝上型设备、多处理器系统、基于微处理器的计算机、机顶盒、可编程的消费类电子产品、网络PC机、迷你计算机、大型计算机以及包括任何上述系统或设备的分布式计算环境等,但并不局限于此。
本发明在一般情况下可以被描述为计算机可执行指令,例如可被计算机执行的程序模块。通常,程序模块包括用来执行特殊任务或实现抽象数据类型的规程、程序、对象、元素、数据指令等。本发明也可以在分布式计算环境来实施,其任务可以通过由通信网络或其他数据传输介质相连的远程处理设备来执行。在分布式计算环境中,程序模块和其他数据可以放置于包括有记忆存储设备的本地和远程计算机存储媒体中。
参考图1,实现本发明的典型系统包括以计算机110形式给出的一般用途的计算设备.计算机110的组件可以包括一个处理单元120、一个系统存储器130、和一个系统总线121,但并不局限于此.所述的总线将所述系统存储器及各种系统组件耦合到处理单元120.所述系统总线121可以是总线结构的几种类型中的任何一种,包括存储器总线或存储器控制器、外设总线、和采用多种总线体系的局部总线.作为例子,但不局限于此,所述总线体系包括工业标准体系(ISA)总线、微通道体系(MCA)总线、增强型ISA(EISA)总线、视频电子产品标准协会(VESA)本地总线、和外围设备互连(PCI)总线(也称之为Mezzanine总线).
计算机110典型地包括许多计算机可读介质。计算机可读介质可以是任何能够被计算机110访问的有效介质,包括可变和不可变的介质、可移动的和不可移动的介质。作为例子,但不局限于此,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括可变和不可变的、可移动的和不可移动的,其可以用任何方法和技术来实现信息的存储,所述的信息例如可以是计算机可读指令、数据结构、程序模块或其他数据。计算机存储介质包括:RAM、ROM、EEPROM、闪存或其他存储技术、CD-ROM、数字通用盘(DVD)或其他光盘存储器、盒式磁带、磁带、磁盘存储器或其他磁式存储设备,或其他任何能够用来存储期望信息并能被计算机110访问的介质,但并不局限于此。通信媒质典型包括计算机可读指令、数据指令、程序模块或如载波或其他传输机制的调制数据信号中的其他数据,还包括任何信息传送介质。“调制数据信号”一词的意思是一种含有一个或多个字符集的信号或者是以这样一种方式进行改变从而在该信号中进行信息编码。作为例子,但不局限于此,通信介质包括有线介质,例如有线网络或直接有线连接,和无线介质,例如声波、射频(RF)、红外线和其他无线介质。上述任何介质的组合也都应该被包括到计算机可读介质的范围之内。
系统存储器130包括以可变和/或不可变形式的存储器存在的计算机存储介质,例如ROM131和RAM132。一个基本输入/输出系统133(BIOS)典型地被存储在ROM131中,该系统包含诸如在启动期间帮助在计算机110中的元件之间传送信息的基本程序。RAM132典型地包含能够被处理单元120很快访问和/或将要操作的数据和/或程序模块。作为例子,但不局限于此,图1示出了操作系统134、应用程序135、其他程序模块136、和程序数据137。
计算机110也可以包括其他可移动/不可移动、可变的/不可变的计算机存储介质。仅仅作为例子,图1示出了一个能够对不可移动、不可变的磁性介质进行读或写的硬盘驱动器140,一个能够对可移动、不可变的磁盘152进行读或写的磁盘驱动器151,和一个能够对可移动、不可变的光盘156进行读或写的光盘驱动器155,例如一个CD-ROM或其他光学介质。其他能够用在所述典型的操作环境的可移动/不可移动的、可变/不可变的计算机存储介质还包括:盒式磁带、闪存卡、数字通用盘、数字录像带、固化RAM、固化ROM等,但并不局限于此。硬盘驱动器141典型地通过一个如接口140的不可移动存储接口连接到系统总线121,磁盘驱动器151和光盘驱动器155典型地通过如接口150的可移动存储接口连接到系统总线121。
上面所讨论的及图1所示出的驱动器以及与他们相关的计算机存储介质为计算机110提供了存储计算机可读指令、数据结构、程序模块和其他数据.在图1中,例如,硬盘驱动器141展示为正在存储操作系统144,应用程序145,其他程序模块146,和程序数据147.值得注意的是这些元素既可以和操作系统134、应用程序135、其他程序模块136、和程序数据137相同,也可以不相同.操作系统144、应用程序145、其他程序模块146和程序数据在这里以不同的数字来至少展示出他们是不同的拷贝.用户可以通过象键盘162和指示设备161那样的输入设备来输入命令和信息到计算机110中,所述的指示设备一般地指鼠标、滚动球或触摸垫.其他的输入设备(没有示出)可以包括麦克风、操纵杆、游戏垫、圆盘式卫星电视天线、扫描器等.这些和其他的输入设备经常是通过一个耦合到系统总线的用户输入接口160连接到处理器120,但是也可以通过其他的接口和总线结构进行连接,例如串行口、游戏接口或通用串行总线(USB).监视器191或者其他类型的显示设备也被通过接口连接到系统总线121,例如视频接口190.除了显示器,计算机也可以包括其他的外围输出设备,例如喇叭197和打印机196,他们可以通过输出外设接口被连接起来.
利用与一个或多个远程计算机(例如远程计算机180)的逻辑连接,计算机110可以运行在网络环境中。所述远程计算机180可以是个人计算机、服务器、路由器、网络PC、等同设备或其他普通的网络节点,并典型地包括多个或所有的上面所述的与计算机110相关的设备,尽管在图1中只展示了一个记忆存储设备181。所述的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但是也可以包括其他的网络。这样的组网环境在办公室、遍布企业的计算机网络、企业内部互联网和因特网中是很平常的。
当用在LAN组网环境时,计算机110通过网络接口或适配器170连接到LAN171上。当用在WAN组网环境时,计算机110典型地包括一个调制解调器172或其他能够通过诸如因特网的WAN173建立通信的装置。内置或外置调制解调器172通过用户输入接口160或者其他合适的机制连接到系统总线121。在网络环境下,所述的与计算机110相关的程序模块或其部分可以被存储在远程记忆存储设备中。作为例子,但并不局限于此,图1示出了存储在存储设备181中的远程应用程序185。应该理解到所示的网络连接是示范性的并且也可以使用其他的在计算机间建立通信链路的手段。
B典型的网络计算环境
计算机20a,如上所述,可以作为计算机网络的一部分来应用。通常,前面对于计算机的描述也适用于在网络环境下应用的服务器计算机和客户端计算机。图1A示出一个典型的网络环境,服务器通过网络来和客户计算机进行通信,本发明可以在此得以应用。如图1A所示,许多服务器10a、10b等通过一个通信网络160(其可以是LAN、WAN、企业内部互联网、因特网或其他计算机网络)跟许多客户计算机20a、20b、20c或计算设备,例如移动电话15,固定电话16、和个人数字助理17,互连起来。在网络环境下,所述的通信网络160是因特网,例如,服务器10是网络服务器,客户端20通过许多公知的协议中的任何一种来和网络服务器进行通信,所述的协议,例如,可以是超文本传输协议(HTTP)或者是无线应用协议(WAP)。每个客户计算机20都能够配置浏览器180a来访问服务器10。同样地,个人数字助理17和移动电话15也能够分别配置浏览器180b和180c来显示和接收各种数据。
在操作时,用户(没有示出)可以通过和运行于客户计算设备上的计算应用程序进行交互操作,从而将报表展示为一个可作为系统化可查询的数据源,所述的报表可以存储在服务器计算机并通过在通信网160上的客户计算设备来和协作用户进行通信。用户可以通过与在客户计算设备上的计算应用程序进行交互操作来产生、管理,并操作这些报表。这些处理可以由客户计算设备向服务器计算机进行通信来实现处理和存储。服务器计算机可以作为计算应用程序的主机,以便将报表展示为可查询的系统化的数据源。
这样,在具有用来访问网络并与网络相互作用的客户计算设备和与客户计算机进行相互作用的服务器计算机的计算机网络环境中,可以利用本发明。然而,这里所描述的系统和方法可以用多种基于网络的体系来实现,而并不局限于例子所展示的。这里所描述的系统和方法将会通过参考目前展示性的实施方式来更具体地进行描述。
C.作为数据源的报表
图3示出了一个典型报表生成和管理系统的典型的示范性的体系,所述管理系统用于展示示一个报表.如图所示,典型体系300包括报表服务器320.报表服务器320进一步包括报表处理引擎325、分析业务引擎330和报表中间格式335.所述的报表中间格式335进一步包括数据345和图表340.最后,典型体系400包括报表阅读器/浏览器305和OLEDB/ADO310.在操作时,报表服务器320生成在报表数据345上操作的图表340.所述报表服务器320产生报表中间格式,该格式是具有独立描述的永久数据格式.所述中间数据格式能被报表服务器320用来通过305来显示所生成的报表.在这种情况下,中间数据格式335由报表服务器320的报表处理引擎325处理,从而在报表阅览器/浏览器305上显示该报表.所述中间格式也可以被报表服务器320使用,从而通过使用OLEDB模块310的分析业务引擎330将所生成的报表传达到协同运作的环境.
由于报表具有了系统化的中间格式,其看起来和用起来象是协作环境和协作计算应用程序的一个数据源。
D.可查询的和系统化的报表
图4示出了在报表产生和管理系统之间的典型数据流程,所述系统将报表展示为系统化可查询的数据源。如图所示,报表产生和管理系统400包括各种用来将报表展示为系统化可查询数据源的元件。明确地讲,报表产生和管理系统400包括报表处理模块420。如图所示,报表处理模块420与报表定义415进行合作并从外部数据源405和410接收数据来产生存储在中间格式425的报表。
在操作时,一个或多个协作环境可以请求一个生成的报表。在这种情况下,存储在中间数据格式的报表被传达到一个事件处理模块430,该模块整体或部分调整与请求环境的产生的报表通信。事件处理模块430确定所述请求环境的描述并以对该请求环境来说属于本地描述扩展名的格式提供整体或部分报表到该请求环境。例如,如果需要HTML描述,就使用HTML描述扩展名435。相比而言,如果需要XML描述,就使用XML描述扩展名440。如此等等,这样其他的描述可以通过其他的描述扩展名445来代表。
图5示出了一个典型的报表产生和管理系统500的示范性的高级配置。如图所示,报表产生和管理系统500包括报表处理模块525。报表处理模块525包括数据扩展名525和描述扩展名530。进一步,报表处理模块与报表定义510和数据源505进行协同运作。在运行时,向报表处理模块525请求一个报表。报表处理模块525从应用程序的报表定义字段510中获得合适的报表定义,所述应用程序用于数据源505中的数据建立。然后,利用数据扩展名535从数据源505识别数据元素,报表处理模块525处理所述的数据。然后,报表处理模块525根据适合的报表定义处理所述的数据来产生一个报表。该报表被展示为一个系统化的可查询的数据源。所述的报表然后被所述报表处理模块525存储在中间格式520供将来使用。
除了产生报表之外,报表产生和管理系统500还可以不用考虑请求环境所必需的描述来将产生的报表传达到协同工作的环境中。例如,可以使用报表产生和管理系统500来将一个已生成的报表传达到协同工作环境。在这种情况下,所生成的存储在中间格式520的报表被报表处理模块525检索并利用描述扩展名530进行处理从而产生可以被请求环境接受的描述格式的报表。
图6示出了一个典型的报表产生和管理系统的更具体的示范性配置,该系统能够将报表揭示为具有独立描述的永久数据格式的数据源.所示的报表产生和管理系统600包括一个报表服务器605,报表服务器605进而包括映射模块610,报表处理模块615和查询处理优化/执行引擎625.报表服务器605与各种协作元件协同工作,所述的协作元件包括但并不局限于报表用户接口(UI)630、报表定义650、一个第二报表服务器635、分析业务(AS)数据提供器640,和枢轴控制元件645.
当产生报表时,报表服务器605和报表定义650协作来为所期望的报表获得合适的报表定义。然后由报表处理器605的报表处理模块615来处理所述的报表定义。报表服务器605利用合适的报表定义收集合适的数据并产生代表所期望信号的系统化的可查询的数据源。然后由报表服务器605在该报表用户接口UI630上显示所述的报表。在这个预期的操作中,报表服务器605的报表处理模块615和映射模块610协同工作来映射在报表用户接口UI630上阅读和显示的所期望的报表。
在操作时,报表产生和管理系统600可以支持许多操作和功能。例如,一个报表可以在一组已经生成的报表上运行。如图6所示,通过箭头,对于一个报表之上的报表的请求被提供给报表服务器635。所述的报表服务器635处理该报表之上的报表请求并与AS数据提供器模块协同工作来完成该请求。进而,AS数据提供器640和查询处理优化/执行引擎625协同工作。该引擎与报表处理模块615协同工作来获得/产生必需的数据来满足该报表之上的报表请求。相似地,在报表上的一个OWC请求是进而由枢纽控制模块645的一个典型,所述枢纽控制模块645依次与AS数据提供器640协同工作来完成在该报表请求上的OWC。
另一个报表产生和管理系统600的用法是允许多个参与用户阅读源于远程协作环境的报表UI630上的报表。在这种情况下,所述的报表UI630与报表处理模块615协同工作。报表处理模块615与映射模块610协同工作。映射模块610将数据从一种格式转换为另一种。这样,它就可以用来将数据从独立描述的数据格式转换为用于请求环境的从属描述数据格式。然后该映射模块610与查询处理优化/执行引擎625协同工作来与一个或多个协作模块进行通信。
应该理解到在所考虑的实施方式中的报表服务器605可以包括任何的计算硬件、计算软件,以及计算硬件和计算软件的组合。
图7示出了一个将报表展示为一个系统化的可查询数据源的典型处理和后续的利用此已展示报表的处理流程图.如图所示,处理从块700开始并运行到块705,在此获得报表定义.在块710,根据获得的报表定义来为该报表创建一个图表.然后在块715获得所述的报表数据、并在块720中将在由在块710中创建的所述的图表应用到所述的报表数据.所述的系统化的报表在块725中存储为一种中间格式(根据图8A和8B所描述的处理过程).从那儿继续运行到块730,在块730中通过执行一个检查从而确定是否已经请求了一个报表(例如.由本地环境或者协作环境所请求的).在所提供的例子中这些情况中,环境包括计算环境和局部计算环境中的任何一种.如果一个报表已经被请求,则处理继续运行到块735,在这里数据扩展名被应用到所述的报表并且数据扩展名是在块740中提供的.在一个预期的说明性的实施方式中,所述的数据扩展名被应用到该报表的数据中来协助识别该数据段的定义.所述的描述扩展名,如上面所描述的,被用来将所用的报表转换成使用该报表的环境的描述格式.然后为了在请求该报表的环境中进行显示,在块745中对该报表进行描述.然后在块750中结束处理.然而,如果,在块730中没有请求一个报表,则处理过程就继续运行到块750并结束.
E.独立描述的永久信息
图8A示出了一个典型的处理流程,该处理用来提供一个以独立描述的永久数据格式展示的报表。如图所示,处理过程从块800开始并继续运行到块805,在这里获得所展示的系统化可查询的报表的报表图表。然后处理过程继续运行到810,在这里识别所述独立描述的永久数据格式。在一个说明性的实施方式中,所述的独立描述的永久数据格式包括一个二进制数据格式。在运行到块810时,用这里与例子所提供的方法描述一致的处理过程预测所述图表的二进制表示。进一步对所提供的例子来说,处理过程继续运行到块815,在这里,所识别出的二进制图表被应用到所期望的报表中,从而将所述的系统化报表转换成一个二进制数据格式。然后处理过程继续运行到块820,在此,将产生的二进制表示作为中间数据格式,该格式中可能存在所展示的报表。然后处理过程在块825中结束。
图8B示出了一个当为了在请求环境中使用由协作环境处理请求来整体或部分上检索揭示的报表时所进行的典型处理流程。如图所示,处理过程在块830开始并继续运行到块835,在这里所期望的报表(整体或部分)被请求并被以它的中间格式来提供(例如,独立描述的永久数据格式)。从那儿开始,处理过程继续运行到块840,在这里所述的中间格式,独立描述格式转换成一种从属描述格式,也就是,请求环境的描述格式。在一个说明性的实施方式中,转换步骤关注从所述报表图表转换到所述请求环境的扩展名的具体格式的二进制转换。在块845,系统化报表和附随的数据被释放以请求环境的描述扩展来表示。然后最终的报表在块850中给出。处理过程在块850中也结束。
图9示出了一个当在一组生成的报表上进行基于时间的查询时的典型处理流程。如图所示,处理过程在块900开始并继续运行到块905,在这里给出了所期望的快照阅读的参数。从那里开始,处理继续进行到块910,在这里系统化可查询报表被作为数据源来处理。然后在块915,数据被根据所提供的参数从该组生成的报表中进行合计(例如,从第一年到第二年的所有销售额中收集在中西部地区的从第一年到第二年的所有销售额)。所汇总的数据然后在块920中被收集并进行处理,从而提供具有所期望的快照数据的一个新的系统化的可查询的报表。处理进程到块925结束。
在图9A中所描述的处理过程使用了这里所描述的系统和方法的一个或多个特征。具体讲,这里所描述的系统和方法考虑到一种将具有独立描述的永久数据格式的报表展示为系统化可查询的数据源的机制。由于所述的报表系统化,可查询,并持久,所以当数据被从基于报表图表识别出的时间上收集起来时,基于一组这样的报表进行基于时间的查询(例如,趋势快照)是容易的。由于所述的报表是以永久的数据格式进行存储的,因此其值是可靠的。
F.结论
正如上面所提到的,当本发明的典型实施例已经结合各种计算设备和网络结构描述过之后,下面的概念就可以适用于任何的计算设备和系统,在其中据此进行仔细研究和/或进行其他的功能是所希望的,上面所述的处理过程和系统可以适用于各种应用程序和设备。虽然这里选择了典型数据结构、编程语言、名称和例子作为各种选择的代表,但并不是为了进行限制。
这里所描述的各种技术可以结合硬件或软件或,适当的时候,两者的结合来实施.这样,本发明所述的方法和装置,或者其某一方面或部分,就可以采取潜入到实体介质中的程序代码的形式来实现,例如软盘,CD-ROM,硬盘,或任何其他的机器可读的存储介质,其中,当程序码被加载并被一个机器执行时,例如一台计算机,该机器成为实现本发明的一个装置.在可编程的计算机上执行程序代码的情况下,该计算设备通常包括一个处理器,一个可以被该处理器读取的存储介质(包括可变的和不可变的记忆和/或存储元件),至少一个输入设备,和至少一个输出设备.可以利用本发明的调试界面,例如,通过使用数据处理API等来在高级程序或面向对象的编程语言来完成一个或多个程序来和一个计算机系统进行通信.然而,如果希望,所述的一个或多个程序能够以编译或机器语言来完成.无论如何,所述的语言可以是汇编的或解释语言,及与硬件实现相结合.
本发明的方法和装置也可以通过包含程序代码形式的通信来实施,所述的程序代码在一些传输介质上进行传输,例如在电线或电缆上,通过光纤,或通过任何其他形式的传输形式,其中,当所述的程序代码被接收和载入并被一机器执行时,例如EPROM,门阵列,可编程逻辑器件(PLD),客户计算机,视频录像机等,或者一个具有在上面典型实施例中所描述的具有调试能力的接收机器成为实现本发明的一个装置。当在一个一般目的的处理器上完成时,程序代码和处理器结合来提供能够调用本发明的功能性的唯一装置。此外,与本发明结合使用的任何存储技术可以总是硬件和软件的组合。
尽管本发明已经结合优选实施例进行了描述,应该明白也可以使用其他的相似的实施例或在不背离本发明的情况下对实现本发明同样功能的所描述的实施例进行修改或增加。例如,一个本领域的熟练技术人员能想到在本申请中所描述的本发明可以应用到任何的计算设备或环境,无论时有线或无线,并可以被应用到任何数量的通过通信网络连接起来的这样的计算设备。进一步,应该强调的是多种计算平台,包括手持设备操作系统和其他应用程序的特定操作系统是应当被考虑到的,尤其由于无线网络设备的数量持续增长。更进一步,本发明可以在或遍及许多处理芯片或设备上来实施,并且存储同样可以在许多设备上实现。因此,本发明不应该被限制为任何单一的实施例,而应该被解释为与所附的权利要求一致的的范围。

Claims (16)

1.一种用于计算环境中的将报表展示为系统化可查询的数据源的方法,所述报表是根据预定义的分布和格式来格式化的数据,所述方法包括步骤:
提供报表定义,所述报表定义包括与要填充在报表中的期望数据有关的信息、分布信息、和格式化信息;
从所述报表定义中导出一个可查询的图表来产生一个数据源;和
以一种独立描述的永久数据格式存储所述数据源。
2.如权利要求1所述的方法,进一步包括提供一个报表处理引擎,所述报表处理引擎能够将作为数据源的所述报表传达到协作环境。
3.如权利要求1所述的方法,进一步包括提供一个描述模块,所述描述模块能够处理所述独立描述的永久数据格式以供在描述特定的环境中使用。
4.如权利要求1所述的方法,进一步包括提供一个报表用户接口,用来显示和浏览报表。
5.如权利要求4所述的方法,进一步包括提供一个映射模块,所述映射模块运行用来将报表映射到所述报表用户接口。
6.如权利要求1所述的方法,进一步包括提供一个查询数据模块。
7.如权利要求1所述的方法,其中所述导出步骤进一步包括为所述报表识别一个图表。
8.如权利要求7所述的方法,进一步包括应用所述图表到数据。
9.一种用来揭示一个可作为系统化可查询的数据源的报表的系统,所述报表是根据预定义的分布和格式来格式化的数据,包括:
一个报表定义,所述报表定义包括与要填充在报表中的期望数据有关的信息、分布信息、和格式化信息;和
一个报表处理模块,所述报表处理模块具有一个能够根据所述的报表定义操作报表数据来将其揭示为系统化可查询的数据源的图表,其中所述数据源包括一个独立描述的永久数据格式。
10.如权利要求9所述的系统,进一步包括一个报表阅读器,所述报表阅读器能够显示报表。
11.如权利要求9所述的系统,其特征在于,所述报表包括数据扩展名。
12.如权利要求9所述的系统,其特征在于,所述报表包括描述扩展名。
13.如权利要求12所述的系统,进一步包括外部数据源。
14.如权利要求9所述的系统,其中所述报表处理模块包括一个报表服务器。
15.如权利要求14所述的系统,其中所述报表服务器包括一个计算环境。
16.如权利要求15所述的系统,进一步包括一个描述模块,所述描述模块和所述报表处理模块协同工作来根据对协作环境特定的描述需要来描述报表。
CN2004100477356A 2003-03-31 2004-03-31 将报表作为系统化可查询的数据源 Expired - Fee Related CN1570926B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/404,747 US20040193644A1 (en) 2003-03-31 2003-03-31 Exposing a report as a schematized queryable data source
US10/404,747 2003-03-31

Publications (2)

Publication Number Publication Date
CN1570926A CN1570926A (zh) 2005-01-26
CN1570926B true CN1570926B (zh) 2010-05-12

Family

ID=32850600

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004100477356A Expired - Fee Related CN1570926B (zh) 2003-03-31 2004-03-31 将报表作为系统化可查询的数据源

Country Status (5)

Country Link
US (1) US20040193644A1 (zh)
EP (1) EP1465083A3 (zh)
JP (1) JP4423079B2 (zh)
KR (1) KR101024808B1 (zh)
CN (1) CN1570926B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7657552B2 (en) * 2003-02-12 2010-02-02 Microsoft Corporation Declarative sequenced report parameterization
US8010553B2 (en) * 2004-04-05 2011-08-30 George Eagan Knowledge archival and recollection systems and methods
CA2660493A1 (en) 2006-08-17 2008-02-21 Experian Information Solutions, Inc. System and method for providing a score for a used vehicle
US8745486B2 (en) * 2007-01-25 2014-06-03 Microsoft Corporation Streamable interactive rendering-independent page layout
US7676524B2 (en) * 2007-01-31 2010-03-09 Microsoft Corporation Hierarchical cursor-based object model
US8200713B2 (en) * 2008-02-28 2012-06-12 Research In Motion Limited Database exploration for building wireless component applications
CN101730077A (zh) * 2009-11-20 2010-06-09 中兴通讯股份有限公司 一种基于报表订阅的配置报表参数值的方法及系统
US11301922B2 (en) 2010-11-18 2022-04-12 AUTO I.D., Inc. System and method for providing comprehensive vehicle information
US10977727B1 (en) 2010-11-18 2021-04-13 AUTO I.D., Inc. Web-based system and method for providing comprehensive vehicle build information
US9064004B2 (en) * 2011-03-04 2015-06-23 Microsoft Technology Licensing, Llc Extensible surface for consuming information extraction services
RU2536390C2 (ru) * 2012-10-31 2014-12-20 Общество с ограниченной ответственностью "1С" Способ для автоматизированного создания отчетов
US10580054B2 (en) 2014-12-18 2020-03-03 Experian Information Solutions, Inc. System, method, apparatus and medium for simultaneously generating vehicle history reports and preapproved financing options
US10409867B1 (en) * 2016-06-16 2019-09-10 Experian Information Solutions, Inc. Systems and methods of managing a database of alphanumeric values
US11210276B1 (en) 2017-07-14 2021-12-28 Experian Information Solutions, Inc. Database system for automated event analysis and detection
US10740404B1 (en) 2018-03-07 2020-08-11 Experian Information Solutions, Inc. Database system for dynamically generating customized models
US11157835B1 (en) 2019-01-11 2021-10-26 Experian Information Solutions, Inc. Systems and methods for generating dynamic models based on trigger events
CN116303310B (zh) * 2023-05-12 2023-08-04 山东恒远智能科技有限公司 一种工业互联网的数据共享方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003017055A2 (en) * 2001-08-15 2003-02-27 Visa International Service Association Method and system for delivering multiple services electronically to customers via a centralized portal architecture
US20030050995A1 (en) * 2001-09-13 2003-03-13 International Business Machines Corporation Method and system for delivering dynamic information in a network
US20030055843A1 (en) * 2001-09-06 2003-03-20 Inventec Corporation Server system and method for providing online multi-dimensional production data report

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5555201A (en) * 1990-04-06 1996-09-10 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including interactive system for hierarchical display of control and dataflow information
US5710900A (en) 1995-10-12 1998-01-20 Ncr Corporation System and method for generating reports from a computer database
US6820237B1 (en) * 2000-01-21 2004-11-16 Amikanow! Corporation Apparatus and method for context-based highlighting of an electronic document
US6810429B1 (en) * 2000-02-03 2004-10-26 Mitsubishi Electric Research Laboratories, Inc. Enterprise integration system
US20010045965A1 (en) * 2000-02-14 2001-11-29 Julian Orbanes Method and system for receiving user input
US9058416B2 (en) * 2000-12-11 2015-06-16 Peter K. Trzyna System and method for detecting and reporting online activity using real-time content-based network monitoring
US20030135499A1 (en) * 2002-01-14 2003-07-17 Schirmer Andrew Lewis System and method for mining a user's electronic mail messages to determine the user's affinities
US7337391B2 (en) * 2002-03-12 2008-02-26 International Business Machines Corporation Method and system for stylesheet execution interactive feedback
US7246306B2 (en) * 2002-06-21 2007-07-17 Microsoft Corporation Web information presentation structure for web page authoring
US20040123246A1 (en) * 2002-12-23 2004-06-24 Ju Wu Apparatus and method for creating new reports from discrete reports

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003017055A2 (en) * 2001-08-15 2003-02-27 Visa International Service Association Method and system for delivering multiple services electronically to customers via a centralized portal architecture
US20030055843A1 (en) * 2001-09-06 2003-03-20 Inventec Corporation Server system and method for providing online multi-dimensional production data report
US20030050995A1 (en) * 2001-09-13 2003-03-13 International Business Machines Corporation Method and system for delivering dynamic information in a network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Jayavel Shanmugasundaram, Jerry Kiernan, Eugene Shekita,Catalina Fan, John Funderburk.Querying XML Views of Relational Data.Proceedings of the 27th VLDB Conference.2001,1-10. *

Also Published As

Publication number Publication date
US20040193644A1 (en) 2004-09-30
CN1570926A (zh) 2005-01-26
EP1465083A2 (en) 2004-10-06
EP1465083A3 (en) 2006-07-26
KR20040088367A (ko) 2004-10-16
JP2005301327A (ja) 2005-10-27
KR101024808B1 (ko) 2011-03-24
JP4423079B2 (ja) 2010-03-03

Similar Documents

Publication Publication Date Title
CN1570926B (zh) 将报表作为系统化可查询的数据源
US9928526B2 (en) Methods and systems that predict future actions from instrumentation-generated events
KR100996771B1 (ko) 정보 캐싱 시스템 및 이를 사용하는 장치, 데이터 캐싱 방법, 및 능동적 캐싱 방법
US7472346B2 (en) Multidimensional XBRL engine
US8046494B2 (en) Extensible transcoder annotation for transcoding proxy servers
CN102270155B (zh) 应用程序实例和查询存储
US6910036B1 (en) Database performance monitoring method and tool
US10650007B2 (en) Ranking contextual metadata to generate relevant data insights
CN101213544B (zh) 基于查询的同步
US20150254328A1 (en) Methods and systems that categorize and summarize instrumentation-generated events
CN100520775C (zh) 将最佳实施集成进数据库设计
CN102156933A (zh) 统计电子商务交易数据的方法和统计系统
US20060224628A1 (en) Modeling for data services
CN114730312A (zh) 从异构数据源创建的受管物化视图
CN113722346A (zh) 通过外部基于云的分析系统实现数据访问
US7778998B2 (en) Liquid data services
CN102385617A (zh) 动态域查询及查询转换
US9356845B1 (en) System and method for audience segment profiling and targeting
CN102132267B (zh) 动态元数据
US20060218118A1 (en) Using query plans for building and performance tuning services
JP5442543B2 (ja) コンテンツ間類似度算出装置及びコンテンツ間類似度算出方法
CN100552665C (zh) 信息的再现独立持久性
CN100445989C (zh) 用于生成对关于选择对象的信息的请求的系统和方法
KR20220054992A (ko) Dcat 기반 메타데이터 변환 시스템
US20140143278A1 (en) Application programming interface layers for analytical applications

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150525

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150525

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100512

Termination date: 20190331