CN1728138B - 用于将工作簿展现为数据源的方法、系统和装置 - Google Patents
用于将工作簿展现为数据源的方法、系统和装置 Download PDFInfo
- Publication number
- CN1728138B CN1728138B CN200510082420XA CN200510082420A CN1728138B CN 1728138 B CN1728138 B CN 1728138B CN 200510082420X A CN200510082420X A CN 200510082420XA CN 200510082420 A CN200510082420 A CN 200510082420A CN 1728138 B CN1728138 B CN 1728138B
- Authority
- CN
- China
- Prior art keywords
- book
- data source
- data
- inquiry
- response
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
- G06F40/18—Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
提供用于展现和利用作为服务器数据源的工作簿的一种方法、系统和装置。该系统包括能够执行用于创建包括一个或多个工作表的工作簿的电子制表应用程序的客户计算机。工作簿可被发布到服务器计算机中,其中工作簿的内容被展现为多维数据源。服务器计算机使客户机应用程序能发现并连接到诸如立方体的作为多维数据源的工作簿。
Description
相关申请
本申请与申请号为10/858,175于2004年6月1日提交的题为“Method,System and Apparatus for Exposing Workbook Ranges As Data Sources”(“用于将工作簿范围展现为数据源的方法、系统和装置”)的美国专利申请相关,该申请在此明确引入作为参考。
背景技术
在建立工作簿时,电子制表软件程序的用户常常利用来自众多不同源的数据。例如,当在一电子制表应用程序中创建一工作簿时,可手动地将数据输入工作簿,或可通过在关系数据库或在线分析处理(OLAP)立方体上执行查询来获取。一旦已输入来自任一这些源的数据,通常用户就将数据安排在工作簿内的所需配置中。在该过程结束时,用户已创建包括一个或多个表格的工作簿,每个表格都包含执行有意义的数字分析后的表列数据。
为便于其它用户访问工作簿的内容,可制作工作簿的副本或其一部分。例如,在许多情形中工作簿通过电子邮件(“e-mail”)消息被发送给其它用户。接收该工作簿的用户可执行有关工作簿的分析,或将包含在工作簿中的数据添加到另一工作簿中。或者,工作簿可存储在多个用户可访问工作簿内容的文件共享中。为了共享工作簿的内容,可把数据的范围复制并粘贴到其它文档中。
尽管这些用于共享工作簿的常规方法使多个用户能访问工作簿的内容,这些方法并非没有缺点。首先,管理可能在多台计算机和网络领域上被复制多次的工作簿的多个副本是非常困难的。特别地,对于系统管理员而言确保工作簿安全并经常备份是很困难的。此外,在文件共享的情形中,多个用户同时访问工作簿可能非常困难。例如,如果原始工作簿的作者需要更新它,则跟踪使用它的所有用户并使其更新这些副本是极困难的。在许多情形中,当工作簿被一个用户打开时电子制表客户机应用程序会锁住该工作簿,从而防止其它人访问该文件。此外,可能在工作簿的不同副本上执行同一功能,从而使得所作努力重复并下降了生产力。
本发明的各个实施例已基于这些和其它考虑而作出。
发明内容
根据本发明,以上和其它问题通过用于将工作簿展现为数据源的方法、系统和装置解决。通过将工作簿展现为服务器数据源,可由能够连接并查询服务器数据源的任一应用程序对工作簿内容进行简便的结构化访问。此外,由于当发布工作簿时工作簿被展现为服务器数据源,任何能操作电子制表应用程序的用户可简单地创建企业级数据源。
根据本发明一方面,提供用于将工作簿内容展现为服务器数据源并利用服务器数据源的一种系统。该系统包括能够执行用于创建工作簿的电子表格应用程序的客户计算机。该工作簿可包括具有包含数据的一个或多个单元的一个或多个工作表。
电子制表应用程序还可操作以产生在创作工作表时所包含数据的元数据。该元数据可预先定义以描述工作簿的结构,诸如工作簿的行、列、和表格。元数据可用工作表存储。可由服务器计算机在接收并响应要访问工作簿内容的请求时将该元数据用作服务器数据源。电子制表应用程序还可操作以向服务器计算机发布工作簿。然后向服务器计算机传送该工作簿,其中其内容被展现为服务器数据源。
根据本发明各方面,该系统还包括可操作用来执行用于将工作簿展现为服务器数据源的服务器程序的服务器计算机。当在此使用时,术语“数据源”和“服务器数据源”特别指在其上可执行查询的数据库。该定义包括多维数据库(诸如OLAP立方体),以及结合关系和多维数据库各方面的数据库(诸如统一维量模型(“UDM”))。在此使用时,术语“数据源查询”意思是指向诸如OLAP或多维表达式(“MDX”)查询的数据源的查询。“数据源查询”还可包括SQL查询。例如,可根据使用微软分析服务OLEDB供应商的立方体来利用SQL。
一旦工作簿已展现,客户机应用程序可发现并连接到作为服务器数据源的工作簿。当对作为服务器数据源的工作簿发出查询时,服务器计算机可操作以重新计算工作簿。如果工作簿包含对另一数据源的引用,则可在重新计算之前从数据源检索重新计算工作簿所需的任何数据。一旦工作簿已经重新计算,服务器计算机可操作以产生工作簿的表示(诸如像立方体的多维数据源)。这可包括例如产生对应于工作簿的临时OLAP立方体。立方体的三维可由工作簿的行、列和表格来定义。此外,可一起取工作簿集以将第四维添加到立方体中。
一旦表示已经产生,则服务器计算机可操作以对表示执行所请求的查询。然后将查询结果返回到请求客户机应用程序。这样,例如,用户可简便地创作工作簿并将该工作簿发布到服务器计算机,其中其内容可展现为立方体。然后利用诸如OLAP客户机的数据库客户机应用程序的其它用户可发现工作簿并发出对其内容的本机查询。
本发明可被实现为计算机进程、计算装置、或诸如计算机程序产品或计算机可读介质的制造品。计算机程序产品可以是计算机系统可读的并编码用于执行计算机进程的指令的计算机程序的计算机存储介质。计算机程序产品还可以是由计算机系统可读的并编码用于执行计算机进程的指令的计算机程序的载波信号上的传播信号。
阅读以下详细说明书和附图,表征本发明的这些和各个其它特征以及优点将变得显然。
附图说明
图1是示出本发明各实施例利用并提供的若干计算机系统各方面的计算机网络图;
图2是示出本发明各实施例利用并提供的客户计算机系统各方面的计算机系统体系结构图;
图3是根据本发明一实施例示出一过程各方面的流程图,该过程用于将工作簿范围发布为服务器数据源;
图4是根据本发明一实施例示出一过程各方面的流程图,该过程用于接收和响应对作为服务器数据源的工作簿内容的请求;
图5是根据本发明一实施例示出用于产生工作簿的数据库表示的过程的流程图;
图6是根据一实施例示出用于将工作簿转换成多维数据源的转换过程的流程图。
具体实施方式
现在参看附图,其中类似标号表示类似元件,将描述本发明各方面。特别地,图1和以下讨论旨在提供一种本发明可在其中实现的适当计算环境的简要一般说明。尽管本发明将在结合运行于计算机操作系统上的程序模块执行的程序模块的一般上下文中进行说明,本领域技术人员将理解本发明也可结合其它类型的计算机系统和程序模块实现。
通常,程序模块包括执行特定任务或实现具体抽象数据类型的例程、程序、对象、组件、数据结构等等。此外,本领域技术人员将理解本发明可在其它计算机系统配置中实践,包括手持式装置、多处理器系统、基于微处理器的或可编程的电器消费品、小型计算机、大型计算机等等。本发明还可在任务由经通信网络链接的远程处理装置执行的分布式计算环境中实践。在分布式计算环境中,程序模块可被置于本地和远程存储器存储设备中。
现在参看图1,将描述本发明若干实施例的说明性操作环境。如图1所示,网络10与客户机计算机2以及若干服务器计算机12A-12C相互连接。应理解网络10可包括任意类型的计算网络,包括局域网或诸如因特网的广域网。网络10提供用于启用在客户计算机2、服务器计算机12A-12C、以及可能与网络10连接或通过它可访问的其它计算机系统之间的通信的介质。
客户机计算机2包括能执行一个或多个应用程序的通用的台式或膝上型计算机。特别地,根据本发明各实施例,计算机2可操作来执行电子制表客户机应用程序4。如本领域技术人员所众所周知的,电子制表客户机应用程序4提供用于创建预算、执行财务预测以及其它财务或数字相关任务的功能。为提供该功能,数据值可使用单元而被组织,而单元之间的关系可使用公式来定义。一个单元的变化产生相关单元的变化。电子制表程序通常提供用于输出的图表能力以及文本、数字值以及图表特征的各种格式化选项。
根据本发明各实施例,电子制表客户机应用程序4可被用来创建工作簿6。工作簿6是由包含一个或多个工作表(工作表在此也可称为“电子表格”)的电子制表程序所创建的文件。工作表是组织成电子制表程序内行和列,显现在屏幕上并用于创建单个表格的单个页面。
工作簿6内的工作表包括具有数据对象的一个或多个范围。如在此所定义的,数据对象包括工作簿内用来存储数据的任何对象。例如,数据对象可包括,但不限于,单元、主表格、DOE、列表、数据库和查询表格的任意范围。如在此将要更详细描述的,包括每一个这些数据对象类型的工作簿的整个内容可被展现为可从服务器12A得到的服务器数据源。
应理解,根据本发明一实施例,电子制表客户机应用程序4包括来自华盛顿州Redmond微软公司的EXCEL电子制表应用程序。然而,应当理解,在此描述的本发明各方面可采用来自其它制造商的其它电子制表应用程序。此外,尽管在此描述的各个发明方面可在电子制表应用程序的环境中呈现,应理解也可利用其它类型的应用程序来体现本发明各方面。
根据本发明其它实施例,客户计算机2还可操作以执行OLAP客户机应用程序8。该OLAP客户机应用程序8包括能够连接、查询并利用来自OLAP数据源的数据的应用程序。例如,OLAP客户机应用程序8可通过网络10连接到服务器计算机12B。通过在服务器计算机12B上执行的数据库软件,OLAP客户机应用程序8可发出对数据源16的查询。然后服务器计算机12B可操作以接收和响应来自OLAP客户机应用程序8的查询。
如以下将要详细描述的,OLAP客户机应用程序8还可发出对工作表6的查询。为了启用该功能,电子制表客户机应用程序4可将工作簿6发布到由文件服务器计算机12C维护的以及服务器计算机12A可访问的贮藏库14。然后在服务器计算机12A上执行的电子制表服务器应用程序13可解析工作簿6并将工作簿6的内容展现为服务器数据源。然后OLAP客户机应用程序8可用它将连接到诸如由服务器计算机12B提供的专用OLAP数据源的同样方法连接到由电子制表服务器应用程序12A展现的数据源。应理解,电子制表客户机应用程序4可以与OLAP客户机应用程序8相同的方式作为来自数据源的数据的消费者。还应理解计算机2可操作以执行用来查询并消费来自其它类型数据库的数据的其它客户机应用程序。还应当理解在可选实施例中,上述计算机2的功能可被分成两个计算装置。例如,一个计算装置可操作以执行用于发布工作表6的电子制表应用程序4,而另一个计算装置可操作以执行用于消费数据的客户机应用程序。
当在此使用时,术语“数据源”和“服务器数据源”特别指在其上可执行查询的数据库。该定义包括多维数据库(诸如OLAP立方体),以及结合关系和多维数据库各方面的数据库(诸如UDM)。在此使用时,术语“数据源查询”意思是指向诸如OLAP或MDX查询的数据源的查询。
电子制表服务器应用程序13包括不使用显示屏(无头的)就可执行的基于服务器应用程序。电子制表服务器应用程序13可操作以执行服务器计算机上电子制表客户机应用程序4的许多功能。例如,电子制表服务器应用程序13可载入并计算工作簿6。如在此将要描述的,电子制表服务器应用程序13还提供用于通过网络10向兼容客户机展现作为数据源的工作簿6的功能。有关由电子制表客户机应用程序4和电子制表服务器应用程序13执行的各个功能的其它细节将参照图2-6在下面提供。
现在参看图2,将描述在本发明各实施例中利用的计算机2的说明性计算机体系结构。在图2中所示的计算机体系结构示出常规台式或膝上型计算机,包括中央处理单元5(“CPU”)、包括随机存取存储器(RAM)9和只读存储器(ROM)11的系统存储器7、以及将存储器耦合到CPU 5的系统总线12。包含有助于如起动时在计算机元件间传送信息的基本例程的基本输入/输出系统(BIOS)存储在ROM11中。计算机2还包括用于存储操作系统18、应用程序和其它程序模块的大容量存储装置24,将在下面进行更详细描述。
大容量存储装置24通过连接到总线12的大容量存储控制器(未示出)连接到CPU 5。大容量存储装置24及其相关联计算机可读介质提供计算机2的非易失性存储。尽管包含在此的计算机可读介质的描述指向诸如硬盘或CD-ROM的大容量存储装置,本领域技术人员应理解计算机可读介质可以是计算机2能访问的任何可用介质。
作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括以任何方法或技术实现、用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的易失性和非易失性介质、可移动和不可移动介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字化多功能光盘(DVD)或其它光学存储技术、磁盒、磁带、磁盘存储器或其它磁性存储设备、或任何其它可用于存储所需信息并可由计算机2访问的介质。
根据本发明各实施例,计算机2可使用通过诸如因特网的网络10与远程计算机的逻辑连接在网络化环境中操作。计算机2可通过与总线12连接的网络接口单元20与网络10相连。应理解,网络接口单元20也可被用于与其它类型的网络和远程计算机系统相连。计算机2还可包括输入/输出控制器22,用于接收和处理来自包括键盘、鼠标、或电子笔(未在图2中示出)的众多其它装置的输入。类似地,输入/输出控制器22可提供对显示屏、打印机、或其它类型输出装置的输出。
如上简述,众多程序模块和数据文件可被存储于计算机2的大容量存储装置24和RAM 9中,包括适于控制网络化个人计算机的操作系统18,诸如来自华盛顿州Redmond微软公司的Windows XP操作系统。大容量存储装置24和RAM 9还可存储一个或多个程序模块。特别地,大容量存储装置24和RAM 9可存储电子制表客户机应用程序4和OLAP客户机应用程序8,如上所述。大容量存储装置24和RAM 9还可存储由电子制表客户机应用程序4创建的工作簿6。
根据本发明一实施例,电子制表应用程序4还可操作以生成工作簿6的元数据26。元数据26可预先定义以描述工作簿的结构,诸如工作簿的行、列、和表格。元数据26可在工作簿6中存储并可用工作簿保存。可由服务器计算机12A在接收并响应要访问工作簿6的请求时将该元数据26用作服务器数据源。
应当理解,在本发明各实施例中,电子制表客户机应用程序4可操作以提供用于使用户能编辑由电子制表应用程序4创建的用于工作簿6中所包含数据对象的元数据26的工具。例如,可允许用户通过工具定义立方体的子集。这样,用户能指定例如在立方体中仅变换行1-10和列5-15并给予这些元素不同名字。
应当理解,服务器计算机12A-12C可包括如图2所示的以及上述的许多常规计算组件。此外,服务器计算机12A可操作以存储和执行电子制表服务器应用程序13。文件服务器计算机12C可操作以存储和执行文件服务器应用程序28,用于接收和响应对存储在贮藏库14中文件(诸如工作簿6)的请求。应理解,服务器计算机12A-12C可包括未在图2中示出但本领域技术人员众所周知的其它常规组件。
现在参看图3,将描述示出由电子制表客户机应用程序4执行的用于将工作簿发布为服务器数据源的过程的说明性例程300。参阅在此所示例程的讨论时,应理解本发明各实施例的逻辑操作被实现为(1)运行于计算系统上的计算机实现动作或程序模块序列和/或(2)计算系统中相互连接的机器逻辑电路或电路模块。实现是取决于实现本发明的计算系统性能要求所作的选择。因此,如图3和5所示的以及组成在此所述本发明各实施例的逻辑操作可被分别称为操作、结构化装置、动作或模块。本领域技术人员将理解,这些操作、结构化装置、动作和模块可用软件、固件、专用数字逻辑、及其任意组合来实现而不背离本发明精神和范围,如在此陈述的权利要求所述。
例程300从操作302开始,其中用户利用电子制表客户机应用程序4来创作工作簿6。特别地,如在此所述的,用户可利用由电子制表客户机应用程序4提供的各个工具来创建包括一个或多个工作表的工作簿,每个工作表具有一个或多个列和行。每个工作表还可包括在工作表内利用的任一常规对象,诸如公式、数据对象、主表、以及其它类型的对象。用户还可在数据源16的工作簿6中手动输入数据或创建查询。可在电子制表客户机应用程序4内用来创建工作簿6的各种功能和方法实际上是无限的并为本领域技术人员所众所周知。
从操作302,例程300继续到操作304,其中电子制表客户机应用程序4响应于对访问作为多维数据源的工作簿6的请求生成由服务器应用程序13使用的元数据26。特别地,电子制表客户机应用程序4可分析在工作簿6内所包含的数据以标识可用来描述工作簿6中数据的数据。例如,对于多维数据源,电子制表客户机应用程序4可标识工作簿6内各种数据的度量、分层结构和缺省聚集。
这些属性的值还可由电子制表客户机应用程序4以智能方式设置。例如,对于字符串数据字段,电子制表客户机应用程序4可将缺省聚集指示为计数。对于数值数据字段,电子制表客户机应用程序4可将缺省聚集指示为和。其它类型的智能决策可由电子制表客户机应用程序4作出以标识工作簿6中的元数据并设置元数据的属性。
从操作304,例程300继续到操作306,其中电子制表客户机应用程序4确定用户是否以作出对编辑由电子制表客户机应用程序4生成的元数据的请求。如上简述,电子制表客户机应用程序4可提供用于编辑生成元数据的用户界面。例如,当标识工作簿6中的元数据并设置元数据上各个属性时,使用户能置换由电子制表客户机应用程序4作出的智能决策是有用的。
如果,在操作306,电子制表客户机应用程序4确定已接收对编辑元数据的请求,则例程300分支到操作308。在操作308,电子制表客户机应用程序4接收来自用户的经编辑元数据。从操作308,例程300继续到操作310。
如果,在操作306,电子制表客户机应用程序4确定未接收对编辑元数据的请求,则例程300继续到操作310。在操作310,由电子制表客户机应用程序4生成的且可能由用户编辑的元数据26用工作簿6保存。工作簿6的保存可自动进行或可响应于用户请求进行。
从操作310,例程300继续到操作312,其中包括元数据26的工作簿6被发布到电子制表服务器应用程序13。工作簿6的发布可响应于用户命令进行或可自动进行。例如,工作簿6的发布可包括将工作簿6上载到服务器计算机12A或通过程序生成工作簿6并通过服务器应用程序接口(API)将其发送到服务器计算机12A中。
当工作簿6被发布到电子制表服务器应用程序13中时,工作簿6被存储在贮藏库14中。电子制表服务器应用程序13还被告知工作簿6的存在,然后工作簿6可被展现为多维数据源。
一旦工作簿6已被传播到贮藏库14并由电子制表服务器应用程序13分析,诸如OLAP客户机应用程序8或电子制表客户机应用程序4的数据库客户机应用程序可被用来查询作为数据源的工作簿6的内容。有关由电子制表服务器应用程序13执行以便将工作簿6的内容展现为数据源并接收和响应数据源查询请求的各种功能将参照图5在下面详述。从操作312,例程300继续到操作314,在那里例程结束。
应理解,指向展现为服务器数据源的查询可被用来模仿由电子制表客户机应用程序4提供的功能。例如,可提供自动化过滤器(“自动过滤器”)工具用于过滤工作簿内的数据子集。然后由自动过滤器提供的功能可在已发布数据源中反映。或者,可利用复杂的MDX语句来选择来自立方体的行和列,从而提供相同的功能。
现在参看图4,将描述示出由电子制表服务器应用程序13的操作的说明性例程400,该操作用于接收和响应对作为数据源的工作簿内容的请求。例程400在操作402开始,其中电子制表服务器应用程序13将工作簿展现为服务器数据源。根据本发明一实施例,工作簿通过数据连接服务器展现,诸如在序列号为10/858,190题为“Method,System,and Apparatus for Discovering and Connecting to Data Sources”(“用于发现和连接数据源的方法、系统和装置”)的共同待批的美国专利申请(律师案号60001.0338US01),在此明确引入作为参考。或者,存储在贮藏库14内的工作簿6可利用诸如UDM的其它类型的分析服务器接口来展现。一旦电子制表服务器应用程序13已展现工作簿6,诸如OLAP客户机应用程序8或电子制表客户机应用程序4的客户机应用程序可发现工作簿数据源并发出查询数据源的请求。
例程400从操作402继续到操作404,其中电子制表服务器应用程序13接收对连接到作为服务器数据源的工作簿的请求。例如,在操作406,电子制表服务器应用程序13可根据工作簿的范围接收本机查询。例如,OLAP客户机应用程序可发出对电子制表服务器应用程序13的本机OLAP查询。或者,可向电子制表服务器应用程序13发出诸如MDX和XML-A查询的其它类型查询。还可利用本领域技术人员众所周知的其它类型的用于查询数据库的标准。
在操作408,电子制表服务器应用程序13载入查询已导向的工作簿6。一旦工作簿6已由电子制表服务器应用程序13载入,例程400继续到操作410,其中电子制表服务器应用程序13确定工作簿6是否包括对另一数据源的引用。例如,如上简述,工作簿可包括对诸如数据源16的数据源的引用。
如果工作簿6包括对另一数据源的引用,则例程400分支到操作412,其中电子制表服务器应用程序13查询计算工作簿6所需任何数据的数据源16。一旦该数据由电子制表服务器应用程序13接收,则工作簿6用已接收数据更新。
如果在操作410,确定工作簿6未包括对另一数据源的引用,则例程400继续到操作414。在操作414,电子制表服务器应用程序13重新计算工作簿6的内容。这可包括例如计算包含在工作簿6中任何公式的值。
从操作414,例程400继续到操作416,其中电子制表服务器应用程序13生成经计算工作簿的数据库表示。特别地,诸如多维立方体的临时数据库表示由电子制表服务器应用程序13生成。数据库表示临时生成以便执行工作簿6上的请求查询。有关由电子制表服务器应用程序13执行用以产生立方体的过程的其它细节参照图5提供如下。
一旦请求工作簿的数据库表示已生成,例程400继续到操作418,其中电子制表服务器应用程序13执行对经计算工作簿的数据库表示的请求查询。响应于执行该查询,满足从客户机应用程序接收的初始查询的查询结果生成。从操作418,例程400继续到操作420,其中电子制表服务器应用程序13用经标识查询结果响应原始查询请求。从操作420,例程400继续到操作422,在那里它结束。
现在参看图5,将描述用于生成对应于工作簿内容的多维立方体的说明性例程500。例程500在操作502开始,其中对应于当前工作簿、当前工作表和当前单元的临时变量被分别设置成第一工作簿、第一工作表格和第一单元。如下将要详细描述的,这些变量被用以跟踪工作簿、表格和单元空间内的当前位置。如将从以下提供的详细描述中可见,包含数据的每个工作表和每个工作簿中的每个单元被分析,且每个单元的内容被传送到新的多维数据结构中的相应位置。对于框502所引用的临时变量被用以跟踪工作簿空间中的当前位置。
从操作502,例程500继续到操作504,其中读取用于当前工作簿、工作表和单元的由临时变量值指定的包含在单元内的数据。一旦该值已经读取,例程500继续到操作506,其中数据值被插入适当位置上的多维数据结构。如以下参照图6将要详述的,多维数据结构可用对应于工作表中各行的一维、对应于工作表中各列的一维、以及对应于其它工作表的第三维(如果呈现)来排列。因此,由当前工作簿、表和单元指定的值被移到新多维数据结构的适当维内的适当位置。
从操作506,例程500继续到操作508,其中确定是否还剩有其它单元要在当前工作表内分析。如果剩有其它单元,则例程500分支到操作510,其中对应于当前单元的变量被设置为等于要处理的下一单元。从操作510,例程返回到操作504,其中读取下一单元的内容。
如果在操作508,确定未剩有其它单元要在当前工作表内分析,则例程500继续到操作512。在操作512,确定是否还剩有其它工作表要在当前工作簿内分析。如果有其它工作表,则例程500分支到操作514,其中对应于当前工作表的变量被设置为等于下一工作表。然后例程从操作514返回到操作504,其中分析下一工作表。
如果在操作512,确定未有其它工作表要在当前工作簿内分析,则例程500继续到操作516。在操作516,确定是否还剩有其它工作簿要分析。应当理解,多个工作簿可由电子制表应用程序同时展现。还应理解,其它工作簿包括多维数据结构的第四维。如果仍有其它工作簿,则例程500分支到操作518,其中对应于当前工作簿的变量被设置为等于下一工作簿。然后例程从操作518返回到操作504,其中下一工作簿被处理。
如果在操作516,确定未有其它工作簿要分析,则例程500从操作516继续到操作520。在操作520,多维立方体被存储为由服务器计算机使用。然后例程500继续到操作522,其中它返回到参照图4如上所述的操作416。
现在参看图6,将提供有关将工作簿内容转换成诸如立方体的多维数据结构的过程的其它细节。如图6所示,工作簿6可包括一个或多个工作表30A-30C。每个工作表用常规方法组织并可在任意列31A-32N中包括任何行34A-34N。任何行和任何列的交集包括可输入数据的单元。例如,如图6所示,列32B和行34B的交集(单元“A1”)包括已输入数字10的单元。
如上参照图5简述,多维数据源36可被组织为三维立方体。立方体的第一维38A可对应于各个工作表内的行34A-34N。多维数据源36的第二维38B可对应于各个工作表内的列32A-32N。多维数据源36的第三维38C可对应于包含在特定工作簿内的各个工作表30A-30C。如上参照图5所述,第四维可对应于附加工作簿而被分配。
如上参照图5简述,为了将工作簿6转换成多维数据源36,包含在工作表30A-30C内的每个单元可加以分析,且其中所包含的任何数据被传送到多维数据源36内的相应位置。例如,包含在工作表30A中行34B单元内的数据已被移到如图6所示的三维数据源36中的适当位置。应理解,包含在工作簿6内的其它单元和其它对象类型的内容可以类似方式被传送到多维数据源36内的相应位置中。
基于前述内容,应当理解本发明各实施例包括用于展现和利用作为服务器数据源的工作簿的方法、系统、装置和计算机可读介质。以上说明书、示例和数据提供了对本发明组件的制造和使用的完整描述。因为可作出本发明的许多实施例而不背离本发明的精神和范围,本发明驻留于此后所附的权利要求中。
Claims (14)
1.一种用于将工作簿内容展现为服务器数据源的方法,其特征在于,所述方法包括:
接收指向所述工作簿的数据库查询;
响应于所述查询,
重新计算所述工作簿,所述重新计算包括:确定所述工作簿是否包含对数据源的引用;响应于确定所述工作簿包含对数据源的引用,从所述数据源检索计算所述工作簿所需的数据;以及利用从所述数据源检索的数据重新计算所述工作簿,
生成所述经重新计算的工作簿的数据库表示,所述数据库表示为多维立方体,
在所述经重新计算的工作簿的多维立方体上执行所述查询以获取查询结果,以及
传送作为所述数据库查询响应的查询结果。
2.如权利要求1所述的方法,其特征在于,所述数据库查询接收自在线分析处理OLAP客户机应用程序。
3.一种用于将工作簿内容展现为服务器数据源的计算机控制装置,包括:
用于接收指向所述工作簿的数据库查询的装置;
用于响应于所述查询
重新计算所述工作簿的装置,所述重新计算包括:确定所述工作簿是否包含对数据源的引用;响应于确定所述工作簿包含对数据源的引用,从所述数据源检索计算所述工作簿所需的数据;以及利用从所述数据源检索的数据重新计算所述工作簿,
用于生成所述经重新计算工作簿的数据库表示的装置,所述数据库表示为多维立方体,
用于在所述经重新计算工作簿的多维立方体数据库表示上执行所述查询以获取查询结果的装置,以及
用于传送作为所述数据库查询响应的查询结果的装置。
4.一种用于将工作簿内容展现为服务器数据源的方法,其特征在于,所述方法包括:
提供一种工具,用于创作包括具有一个或多个单元的一个或多个工作表的工作簿;
向服务器计算机发布所述工作簿;
接收指向所述工作簿的查询;
响应于所述查询,计算所述服务器计算机上的工作簿,所述计算包括:确定所述工作簿是否包含对数据源的引用;响应于确定所述工作簿包含对数据源的引用,从所述数据源检索计算所述工作簿所需的数据;以及利用从所述数据源检索的数据重新计算所述工作簿;
从经重新计算的工作簿生成多维立方体数据源;
在所述已生成的多维立方体数据源上执行所述查询以获得查询结果;以及
用所述查询结果响应所述查询。
5.一种用于将工作簿内容展现为服务器数据源的计算机控制装置,包括:
用于提供一种工具的装置,所述工具用于创作包括具有一个或多个单元的一个或多个工作表的工作簿;
用于向所述服务器计算机发布所述工作簿的装置;
用于接收指向所述工作簿的查询的装置;
用于响应于所述查询,计算所述服务器计算机上的工作簿的装置,所述计算包括:确定所述工作簿是否包含对数据源的引用;响应于确定所述工作簿包含对数据源的引用,从所述数据源检索计算所述工作簿所需的数据;以及利用从所述数据源检索的数据重新计算所述工作簿;
用于从所述经计算工作簿生成多维立方体数据源的装置;
用于在所述已生成多维立方体数据源上执行所述查询以获得查询结果的装置;以及
用于用所述查询结果响应所述查询的装置。
6.一种把工作簿展现和利用为服务器数据源的方法,包括:
创作包括具有包含其中的一个或多个单元的一个或多个工作表的工作簿;
生成一个或多个数据对象的元数据,所述元数据响应于对作为服务器数据源的工作簿的请求由服务器计算机使用;
向所述服务器计算机发布所述工作簿和所述元数据;
将所述工作簿展现为服务器数据源;
在所述服务器计算机上接收引用包含在工作簿数据源内数据的数据源查询;
响应于接收所述查询,载入所述工作簿并计算所述工作簿,所述计算包括:确定所述工作簿是否包含对数据源的引用;响应于确定所述工作簿包含对数据源的引用,从所述数据源检索计算所述工作簿所需的数据;以及利用从所述数据源检索的数据重新计算所述工作簿;
利用所述元数据生成所述工作簿的数据库表示,所述数据库表示是多维立方体;
在所述工作簿的多维立方体上执行所述查询以创建一查询结果;以及
用所述查询结果响应所述查询。
7.如权利要求6所述的方法,其特征在于,所述计算所述工作簿包括按照从所述数据源检索的数据来计算所述工作簿的值。
8.一种把工作簿展现和利用为服务器数据源的计算机控制装置,包括:
用于创作包括具有包含其中的一个或多个单元的一个或多个工作表的工作簿的装置;
用于生成一个或多个数据对象的元数据的装置,所述元数据响应于对作为服务器数据源的工作簿的请求由服务器计算机使用;
用于向所述服务器计算机发布所述工作簿和所述元数据的装置;
用于将所述工作簿展现为服务器数据源的装置;
用于在所述服务器计算机上接收引用包含在工作簿数据源内数据的数据源查询的装置;
用于响应于接收所述查询,载入所述工作簿并计算所述工作簿的装置,所述计算包括:确定所述工作簿是否包含对数据源的引用;响应于确定所述工作簿包含对数据源的引用,从所述数据源检索计算所述工作簿所需的数据;以及利用从所述数据源检索的数据重新计算所述工作簿;
用于利用所述元数据生成所述工作簿的数据库表示的装置,所述数据库表示是多维立方体;
用于在所述工作簿的多维立方体上执行所述查询以创建一查询结果的装置;以及
用于用所述查询结果响应所述查询的装置。
9.一种用于把工作簿展现和利用为服务器数据源的工作簿的方法,所述方法在一系统内实现,该系统包括一客户机计算机,用于执行一电子制表应用程序以创作包括具有一个或多个单元的一个或多个工作表的工作簿,所述电子制表应用程序还能够操作以向该系统内的一服务器计算机发布所述工作簿,所述方法包括,由所述服务器计算机执行以下步骤:
接收指向所述工作簿的数据库查询;
响应于所述查询,
重新计算所述工作簿,所述重新计算包括:确定所述工作簿是否包含对数据源的引用;响应于确定所述工作簿包含对数据源的引用,从所述数据源检索计算所述工作簿所需的数据;以及利用从所述数据源检索的数据重新计算所述工作簿,
生成所述经重新计算工作簿的数据库表示,所述数据库表示为多维立方体,
在所述经重新计算工作簿的多维立方体上执行所述查询以获取查询结果,以及
传送作为所述数据库查询响应的查询结果。
10.如权利要求9所述的方法,其特征在于,所述电子制表应用程序还能够操作以产生和存储所述工作簿中的元数据,所述元数据响应于对所述工作簿数据源的请求由所述服务器计算机使用。
11.如权利要求10所述的方法,其特征在于,所述电子制表应用程序还能够操作以提供用于使用户能编辑所述元数据的工具。
12.如权利要求11所述的方法,其特征在于,所述系统还包括第二客户计算机,用于执行应用程序以发出对于所述服务器计算机上所展示的服务器数据源的查询。
13.如权利要求12所述的方法,其特征在于,还包括由所述服务器计算机执行以下步骤:
响应于来自所述第二客户计算机的数据库查询确定所述工作簿是否包含对数据源的引用;
响应于确定所述工作簿包含对数据源的引用,从所述数据源检索计算所述工作簿所需的数据;以及
利用从所述数据源检索的数据重新计算所述工作簿。
14.如权利要求13所述的方法,其特征在于,在所述第二客户计算机上执行的应用程序包括一在线分析处理OLAP客户机应用程序。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/903,568 US7991804B2 (en) | 2004-07-30 | 2004-07-30 | Method, system, and apparatus for exposing workbooks as data sources |
US10/903,568 | 2004-07-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1728138A CN1728138A (zh) | 2006-02-01 |
CN1728138B true CN1728138B (zh) | 2010-09-08 |
Family
ID=35197751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200510082420XA Active CN1728138B (zh) | 2004-07-30 | 2005-06-29 | 用于将工作簿展现为数据源的方法、系统和装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7991804B2 (zh) |
EP (1) | EP1622045B1 (zh) |
JP (1) | JP4801376B2 (zh) |
KR (1) | KR101143155B1 (zh) |
CN (1) | CN1728138B (zh) |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7251776B2 (en) * | 2001-07-13 | 2007-07-31 | Netview Technologies, Inc. | System and method for efficiently and flexibly utilizing spreadsheet information |
US7664804B2 (en) * | 2004-06-01 | 2010-02-16 | Microsoft Corporation | Method, system, and apparatus for exposing workbook ranges as data sources |
US8578399B2 (en) | 2004-07-30 | 2013-11-05 | Microsoft Corporation | Method, system, and apparatus for providing access to workbook models through remote function cells |
US20070106705A1 (en) * | 2005-11-07 | 2007-05-10 | Vikram Chalana | System and method for integrating data between computer systems |
EP1801720A1 (en) * | 2005-12-22 | 2007-06-27 | Microsoft Corporation | Authorisation and authentication |
EP1826695A1 (en) * | 2006-02-28 | 2007-08-29 | Microsoft Corporation | Secure content descriptions |
US20080104542A1 (en) * | 2006-10-27 | 2008-05-01 | Information Builders, Inc. | Apparatus and Method for Conducting Searches with a Search Engine for Unstructured Data to Retrieve Records Enriched with Structured Data and Generate Reports Based Thereon |
US20080201338A1 (en) * | 2007-02-16 | 2008-08-21 | Microsoft Corporation | Rest for entities |
US20080229184A1 (en) * | 2007-03-15 | 2008-09-18 | Microsoft Corporation | Private sheets in shared spreadsheets |
US8121975B2 (en) * | 2008-02-20 | 2012-02-21 | Panorama Software Inc. | Creating pivot tables from tabular data |
US8819589B2 (en) * | 2008-06-10 | 2014-08-26 | Microsoft Corporation | Providing partner services within a host application |
US9292592B2 (en) * | 2009-05-29 | 2016-03-22 | Red Hat, Inc. | Object-based modeling using composite model object having independently updatable component objects |
US8417739B2 (en) * | 2009-05-29 | 2013-04-09 | Red Hat, Inc. | Systems and methods for object-based modeling using hierarchical model objects |
US8930487B2 (en) * | 2009-05-29 | 2015-01-06 | Red Hat, Inc. | Object-based modeling using model objects exportable to external modeling tools |
US8606827B2 (en) * | 2009-05-29 | 2013-12-10 | Red Hat, Inc. | Systems and methods for extracting database dimensions as data modeling object |
US9105006B2 (en) * | 2009-05-29 | 2015-08-11 | Red Hat, Inc. | Generating floating desktop representation of extracted model object |
US9009006B2 (en) * | 2009-05-29 | 2015-04-14 | Red Hat, Inc. | Generating active links between model objects |
US9292485B2 (en) * | 2009-05-29 | 2016-03-22 | Red Hat, Inc. | Extracting data cell transformable to model object |
US9152944B2 (en) * | 2009-08-31 | 2015-10-06 | Red Hat, Inc. | Generating rapidly rotatable dimensional view of data objects |
US8417734B2 (en) * | 2009-08-31 | 2013-04-09 | Red Hat, Inc. | Systems and methods for managing sets of model objects via unified management interface |
US8365195B2 (en) * | 2009-08-31 | 2013-01-29 | Red Hat, Inc. | Systems and methods for generating sets of model objects having data messaging pipes |
US9152435B2 (en) * | 2009-08-31 | 2015-10-06 | Red Hat, Inc. | Generating a set of linked rotational views of model objects |
US9275031B2 (en) | 2009-10-09 | 2016-03-01 | Microsoft Technology Licensing, Llc | Data analysis expressions |
US8825745B2 (en) | 2010-07-11 | 2014-09-02 | Microsoft Corporation | URL-facilitated access to spreadsheet elements |
US9075787B2 (en) * | 2010-11-30 | 2015-07-07 | Think-Cell Software Gmbh | Defining a reusable spreadsheet-function by extracting the function from a complex calculation in a spreadsheet document |
US9721030B2 (en) * | 2010-12-09 | 2017-08-01 | Microsoft Technology Licensing, Llc | Codeless sharing of spreadsheet objects |
US10223346B2 (en) * | 2011-01-25 | 2019-03-05 | Microsoft Technology Licensing, Llc | Hybrid client/network service application integration |
US20130124957A1 (en) * | 2011-11-11 | 2013-05-16 | Microsoft Corporation | Structured modeling of data in a spreadsheet |
US20140075278A1 (en) * | 2012-09-12 | 2014-03-13 | International Business Machines Coporation | Spreadsheet schema extraction |
US20140359417A1 (en) * | 2013-06-04 | 2014-12-04 | Omer Bar-On | Systems and methods for graphically modulating structured data |
US9483457B2 (en) * | 2014-04-28 | 2016-11-01 | International Business Machines Corporation | Method for logical organization of worksheets |
US9817876B2 (en) * | 2015-06-29 | 2017-11-14 | Planisware SAS | Enhanced mechanisms for managing multidimensional data |
CN104991886B (zh) * | 2015-07-22 | 2018-05-22 | 网易(杭州)网络有限公司 | 一种数据表的编辑方法、装置与系统 |
CN105426501B (zh) * | 2015-11-25 | 2018-12-21 | 广州华多网络科技有限公司 | 多维数据库自动路由实现方法和系统 |
US10735504B2 (en) | 2016-01-06 | 2020-08-04 | Oracle International Corporation | System and method for distributed workbook storage |
US11567628B2 (en) * | 2018-07-05 | 2023-01-31 | International Business Machines Corporation | Cognitive composition of multi-dimensional icons |
US11481539B1 (en) * | 2018-09-17 | 2022-10-25 | George McMann | Systems and methods for improved building of interactive workbooks within business reporting, analysis, and management software |
KR102067504B1 (ko) * | 2018-10-02 | 2020-01-17 | 주식회사 한글과컴퓨터 | 임시 머리글의 생성을 통해 자동필터 기능을 실행하는 스프레드시트 문서 편집 장치 및 그 동작 방법 |
US11429558B2 (en) * | 2018-10-11 | 2022-08-30 | Dealvector, Inc. | Mapping tests of spreadsheets in server-browser environments |
US11561967B2 (en) * | 2019-06-26 | 2023-01-24 | Sigma Computing, Inc. | Exposing parameters in referencing worksheets |
GB201916803D0 (en) | 2019-11-19 | 2020-01-01 | Ibm | Identifying content and structure of olap dimensions from a spreadsheet |
GB201916804D0 (en) | 2019-11-19 | 2020-01-01 | Ibm | Generating an OLAP model from a spreadsheet |
GB201916801D0 (en) | 2019-11-19 | 2020-01-01 | Ibm | Identifying data relationships from a spreadsheet |
GB201916800D0 (en) | 2019-11-19 | 2020-01-01 | Ibm | Detecting errors in spreadsheets |
WO2022221585A1 (en) * | 2021-04-15 | 2022-10-20 | Sigma Computing, Inc. | Data visualization with derived dimensional hierarchy |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6631497B1 (en) * | 1999-07-19 | 2003-10-07 | International Business Machines Corporation | Binding data from data source to cells in a spreadsheet |
Family Cites Families (71)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4912657A (en) | 1986-10-30 | 1990-03-27 | Synthesis, Inc. | Method and systems for generating parametric designs |
US5033009A (en) | 1989-03-03 | 1991-07-16 | Dubnoff Steven J | System for generating worksheet files for electronic spreadsheets |
US5371675A (en) | 1992-06-03 | 1994-12-06 | Lotus Development Corporation | Spreadsheet program which implements alternative range references |
US5437006A (en) | 1993-01-27 | 1995-07-25 | Microsoft Corporation | Spreadsheet command/function capability from a dynamic-link library |
US5721847A (en) | 1994-10-21 | 1998-02-24 | Microsoft Corporation | Method and system for linking controls with cells of a spreadsheet |
US5701451A (en) * | 1995-06-07 | 1997-12-23 | International Business Machines Corporation | Method for fulfilling requests of a web browser |
US5832532A (en) | 1995-06-16 | 1998-11-03 | I2 Technologies, Inc. | Model-independent and interactive report generation system and method of operation |
US5893123A (en) | 1995-06-22 | 1999-04-06 | Tuinenga; Paul W. | System and method of integrating a spreadsheet and external program having output data calculated automatically in response to input data from the spreadsheet |
US6157934A (en) | 1995-10-24 | 2000-12-05 | Ultimus, L.L.C. | Method and apparatus for using distributed spreadsheets in a client/server architecture for workflow automation |
US5890174A (en) | 1995-11-16 | 1999-03-30 | Microsoft Corporation | Method and system for constructing a formula in a spreadsheet |
US6122649A (en) | 1996-05-30 | 2000-09-19 | Microsoft Corporation | Method and system for user defined and linked properties |
US6055548A (en) | 1996-06-03 | 2000-04-25 | Microsoft Corporation | Computerized spreadsheet with auto-calculator |
US5819293A (en) | 1996-06-06 | 1998-10-06 | Microsoft Corporation | Automatic Spreadsheet forms |
US5926822A (en) | 1996-09-06 | 1999-07-20 | Financial Engineering Associates, Inc. | Transformation of real time data into times series and filtered real time data within a spreadsheet application |
US5983268A (en) | 1997-01-14 | 1999-11-09 | Netmind Technologies, Inc. | Spreadsheet user-interface for an internet-document change-detection tool |
US5937406A (en) * | 1997-01-31 | 1999-08-10 | Informix Software, Inc. | File system interface to a database |
US5933818A (en) | 1997-06-02 | 1999-08-03 | Electronic Data Systems Corporation | Autonomous knowledge discovery system and method |
US6154732A (en) | 1997-07-25 | 2000-11-28 | Guidedchoice.Com | System for providing investment advice and management of pension assets |
US6012057A (en) | 1997-07-30 | 2000-01-04 | Quarterdeck Corporation | High speed data searching for information in a computer system |
US6094651A (en) | 1997-08-22 | 2000-07-25 | International Business Machines Corporation | Discovery-driven exploration of OLAP data cubes |
US5974416A (en) | 1997-11-10 | 1999-10-26 | Microsoft Corporation | Method of creating a tabular data stream for sending rows of data between client and server |
US6009455A (en) | 1998-04-20 | 1999-12-28 | Doyle; John F. | Distributed computation utilizing idle networked computers |
JP2000067143A (ja) | 1998-08-26 | 2000-03-03 | Toshiba Corp | データベースシステム |
US6269377B1 (en) | 1998-09-21 | 2001-07-31 | Microsoft Corporation | System and method for managing locations of software components via a source list |
US6317750B1 (en) | 1998-10-26 | 2001-11-13 | Hyperion Solutions Corporation | Method and apparatus for accessing multidimensional data |
US6640234B1 (en) | 1998-12-31 | 2003-10-28 | Microsoft Corporation | Extension of formulas and formatting in an electronic spreadsheet |
US7032030B1 (en) | 1999-03-11 | 2006-04-18 | John David Codignotto | Message publishing system and method |
US6532458B1 (en) | 1999-03-15 | 2003-03-11 | Microsoft Corporation | Sampling for database systems |
US6549907B1 (en) | 1999-04-22 | 2003-04-15 | Microsoft Corporation | Multi-dimensional database and data cube compression for aggregate query support on numeric dimensions |
US7013246B1 (en) | 1999-05-24 | 2006-03-14 | Parametric Technology Corporation | Parametric exchange of data between a modeling system and an external application program |
US6411313B1 (en) * | 1999-06-14 | 2002-06-25 | Microsoft Corporation | User interface for creating a spreadsheet pivottable |
US6701485B1 (en) | 1999-06-15 | 2004-03-02 | Microsoft Corporation | Binding spreadsheet cells to objects |
US6613098B1 (en) | 1999-06-15 | 2003-09-02 | Microsoft Corporation | Storage of application specific data in HTML |
US6691281B1 (en) | 1999-06-15 | 2004-02-10 | Microsoft Corporation | Publishing/republishing data tables in HTML documents while maintaining formatting and functionality for restoring back the data tables |
US6477536B1 (en) | 1999-06-22 | 2002-11-05 | Microsoft Corporation | Virtual cubes |
US6446059B1 (en) | 1999-06-22 | 2002-09-03 | Microsoft Corporation | Record for a multidimensional database with flexible paths |
US6456999B1 (en) | 1999-06-22 | 2002-09-24 | Microsoft Corporation | Aggregations size estimation in database services |
US6490600B1 (en) | 1999-08-09 | 2002-12-03 | Cognex Technology And Investment Corporation | Processing continuous data streams in electronic spreadsheets |
US6920443B1 (en) | 1999-09-21 | 2005-07-19 | International Business Machines, Corporation | Method, system, program, and data structure for transforming database tables |
US6473750B1 (en) | 1999-10-15 | 2002-10-29 | Microsoft Corporation | Adaptive query execution in a distributed database system |
US6493718B1 (en) | 1999-10-15 | 2002-12-10 | Microsoft Corporation | Adaptive database caching and data retrieval mechanism |
US6898603B1 (en) * | 1999-10-15 | 2005-05-24 | Microsoft Corporation | Multi-dimensional data structure caching |
IL150079A0 (en) | 1999-12-07 | 2002-12-01 | Data Foundation Inc | Scalable storage architecture |
US7185279B2 (en) | 2000-01-07 | 2007-02-27 | Master Mine Software, Inc. | Data mining and reporting |
US20020010743A1 (en) | 2000-02-11 | 2002-01-24 | Ryan Mark H. | Method and system for distributing and collecting spreadsheet information |
JP2001243242A (ja) | 2000-02-25 | 2001-09-07 | Hitachi Ltd | 問合せ処理方法およびそれを実施するデータベース管理システムその処理プログラムを格納した記録媒体 |
GB0011426D0 (en) * | 2000-05-11 | 2000-06-28 | Charteris Limited | A method for transforming documents written in different XML-based languages |
US6632249B2 (en) | 2000-06-23 | 2003-10-14 | Microsoft Corporation | Method for providing web-based services to an application program module |
US6944662B2 (en) | 2000-08-04 | 2005-09-13 | Vinestone Corporation | System and methods providing automatic distributed data retrieval, analysis and reporting services |
US6631597B1 (en) * | 2000-08-10 | 2003-10-14 | Flannery, Inc. | Bullnose base/crown corner plug |
US6988241B1 (en) | 2000-10-16 | 2006-01-17 | International Business Machines Corporation | Client side, web-based spreadsheet |
US6779151B2 (en) | 2001-01-05 | 2004-08-17 | Microsoft Corporation | Storing objects in a spreadsheet |
US7082569B2 (en) * | 2001-01-17 | 2006-07-25 | Outlooksoft Corporation | Systems and methods providing dynamic spreadsheet functionality |
US6684206B2 (en) | 2001-05-18 | 2004-01-27 | Hewlett-Packard Development Company, L.P. | OLAP-based web access analysis method and system |
US20020188629A1 (en) | 2001-05-21 | 2002-12-12 | Burfoot Daniel C. | System, protocol, and methods for the creation of distributed spreadsheets |
US20030009649A1 (en) * | 2001-05-30 | 2003-01-09 | Paul Martin | Dynamic conversion of spreadsheet formulas to multidimensional calculation rules |
US7761403B2 (en) * | 2001-06-20 | 2010-07-20 | Oracle International Corporation | Run-time optimizations of queries with SQL spreadsheet |
US7177855B2 (en) * | 2001-06-20 | 2007-02-13 | Oracle International Corporation | Compile-time optimizations of queries with SQL spreadsheet |
US7251776B2 (en) | 2001-07-13 | 2007-07-31 | Netview Technologies, Inc. | System and method for efficiently and flexibly utilizing spreadsheet information |
US20030195762A1 (en) | 2002-04-12 | 2003-10-16 | David Gleason | Automated workflow |
JP3868331B2 (ja) | 2002-05-20 | 2007-01-17 | 株式会社読売新聞東京本社 | データベース登録装置および方法 |
US7266763B2 (en) | 2002-11-26 | 2007-09-04 | Microsoft Corporation | User defined spreadsheet functions |
US20040103365A1 (en) * | 2002-11-27 | 2004-05-27 | Alan Cox | System, method, and computer program product for an integrated spreadsheet and database |
US7530012B2 (en) * | 2003-05-22 | 2009-05-05 | International Business Machines Corporation | Incorporation of spreadsheet formulas of multi-dimensional cube data into a multi-dimensional cube |
US7299223B2 (en) * | 2003-07-16 | 2007-11-20 | Oracle International Corporation | Spreadsheet to SQL translation |
US7233956B2 (en) | 2003-08-12 | 2007-06-19 | International Business Machines Corporation | Method and apparatus for data migration between databases |
US7240052B2 (en) | 2003-09-09 | 2007-07-03 | Iac Search & Media, Inc. | Refinement of a search query based on information stored on a local storage medium |
RU36541U1 (ru) | 2003-12-23 | 2004-03-10 | Григорьев Евгений Александрович | Объектно-ориентированная система управления реляционными базами данных |
US7664804B2 (en) | 2004-06-01 | 2010-02-16 | Microsoft Corporation | Method, system, and apparatus for exposing workbook ranges as data sources |
US8578399B2 (en) | 2004-07-30 | 2013-11-05 | Microsoft Corporation | Method, system, and apparatus for providing access to workbook models through remote function cells |
US20060112123A1 (en) * | 2004-11-24 | 2006-05-25 | Macnica, Inc. | Spreadsheet user-interfaced business data visualization and publishing system |
-
2004
- 2004-07-30 US US10/903,568 patent/US7991804B2/en not_active Expired - Fee Related
-
2005
- 2005-05-25 EP EP05104477.4A patent/EP1622045B1/en not_active Not-in-force
- 2005-05-30 KR KR1020050045672A patent/KR101143155B1/ko active IP Right Grant
- 2005-05-31 JP JP2005158658A patent/JP4801376B2/ja not_active Expired - Fee Related
- 2005-06-29 CN CN200510082420XA patent/CN1728138B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6631497B1 (en) * | 1999-07-19 | 2003-10-07 | International Business Machines Corporation | Binding data from data source to cells in a spreadsheet |
Non-Patent Citations (1)
Title |
---|
Lakshmanan,L.V.S.,Subramanian,S.N.,Goyal,N.,Krishnamurthy, R..on querying spreadsheets.Data Engineering,1998. Proceedings., 14th International Conference ON ORLANDO,FL,USA23-27 FEB.1998,LOS ALAMITOS,CA,USA,IEEE COMPUT.SOC,US.1998,134-141. * |
Also Published As
Publication number | Publication date |
---|---|
CN1728138A (zh) | 2006-02-01 |
KR20060046282A (ko) | 2006-05-17 |
EP1622045B1 (en) | 2019-05-01 |
US20060024653A1 (en) | 2006-02-02 |
JP2006048646A (ja) | 2006-02-16 |
KR101143155B1 (ko) | 2012-05-11 |
US7991804B2 (en) | 2011-08-02 |
EP1622045A3 (en) | 2006-08-02 |
EP1622045A2 (en) | 2006-02-01 |
JP4801376B2 (ja) | 2011-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1728138B (zh) | 用于将工作簿展现为数据源的方法、系统和装置 | |
JP5154002B2 (ja) | リモートファンクションコールによるワークブックモデルへのアクセスを提供する方法、システム、および装置 | |
JP4907906B2 (ja) | ワークブック範囲をデータソースとして公開する方法、システムおよび装置 | |
CN112269792B (zh) | 数据查询方法、装置、设备及计算机可读存储介质 | |
US8589311B2 (en) | Designing business content for reporting | |
US20060242189A1 (en) | High-level database management system | |
CN102426582A (zh) | 数据操作管理装置和数据操作管理方法 | |
CN111782820B (zh) | 知识图谱创建方法及装置、可读存储介质及电子设备 | |
US20070035558A1 (en) | Visual model importation | |
CN115168361A (zh) | 一种标签管理方法和装置 | |
CN111241089B (zh) | Erp系统二次开发方法、系统、装置及可读存储介质 | |
CN118154140B (zh) | 一种基于源端静态数据的智能数据建模管理系统及方法 | |
Frantz et al. | CEMAP II: An Architecture and Specifications to Facilitate the Importing of Real-World Data into the CASOS Software Suite | |
Ellison et al. | DO NOT DUPLICATE WITHOUT PERMISSION |
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: 20150427 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150427 Address after: Washington State Patentee after: Micro soft technique license Co., Ltd Address before: Washington State Patentee before: Microsoft Corp. |