JP2006048646A - ワークブックをデータソースとして公開するための方法、システム、および装置 - Google Patents

ワークブックをデータソースとして公開するための方法、システム、および装置 Download PDF

Info

Publication number
JP2006048646A
JP2006048646A JP2005158658A JP2005158658A JP2006048646A JP 2006048646 A JP2006048646 A JP 2006048646A JP 2005158658 A JP2005158658 A JP 2005158658A JP 2005158658 A JP2005158658 A JP 2005158658A JP 2006048646 A JP2006048646 A JP 2006048646A
Authority
JP
Japan
Prior art keywords
workbook
data source
computer
server
query
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.)
Granted
Application number
JP2005158658A
Other languages
English (en)
Other versions
JP4801376B2 (ja
Inventor
Amir Netz
ネッツ アミール
Cristian Petculescu
ペトクレスク クリステン
Daniel C Battagin
シー.バッタギン ダニエル
Eran Megiddo
メジッド エラン
Liviu Asnash
アスナッシュ リビウ
Shahar Prish
プリシュ シャハー
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 Corp
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 JP2006048646A publication Critical patent/JP2006048646A/ja
Application granted granted Critical
Publication of JP4801376B2 publication Critical patent/JP4801376B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating 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)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

【課題】 ワークブックをサーバデータソースとして公開および使用するための方法、システム、および装置を提供すること。
【解決手段】 システムは、1つまたは複数のワークシートを含むワークブックを作成するために、スプレッドシートアプリケーションプログラムを実行することが可能なクライアントコンピュータを含む。ワークブックをサーバコンピュータに対して公表することが可能であり、ワークブックのコンテンツは多次元データソースとして公開される。サーバコンピュータは、クライアントアプリケーションがキューブなどの多次元のデータソースとしてのワークブックを発見し、これに接続できるようにするものである。
【選択図】 図2

Description

ワークブックをデータソースとして公開するための方法、システム、および装置に関する。
ワークブックを構築する場合、スプレッドシートアプリケーションプログラムのユーザは、多くの場合いくつかの異なるソースからデータを使用する。例えば、スプレッドシートアプリケーションプログラム内にワークブックを作成する場合、ユーザは他のワークブックからデータをインポートするか、ワークブックへデータを手作業で入力するか、あるいは、リレーショナルデータベースに関するかまたは多次元分析処理(OLAP/on−line analytical processing)キューブに関する照会を実行することによってデータを取得することができる。これらソースのうちのいずれかからデータが入力されると、通常、ユーザは、ワークブック内の所望の構成にデータを配置構成する。ユーザがこのプロセスを終えると、それぞれが有意味の数値解析が実行可能な表形式のデータを含む1つまたは複数のシートを含むワークブックが作成されている。
他のユーザがワークブックのコンテンツにアクセスするために、ワークブックのコピーまたはその一部を作成することができる。例えば多くのシナリオでは、ワークブックは電子メール(「eメール」)メッセージを介して他のユーザに送られる。ワークブックを受け取ったユーザは、その後そのワークブックに関する分析を実行するか、またはワークブックに含まれるデータを他のワークブックに追加することができる。別の方法として、共用ファイル上にワークブックを格納し、複数のユーザがワークブックのコンテンツにアクセスできるようにすることもできる。ワークブックのコンテンツを共用するために、データの範囲をコピーすることおよび他の文書に貼り付けることもできる。
米国特許出願第10/858190号明細書
ワークブックを共用するためのこれら従来の方法により、複数のユーザがワークブックのコンテンツにアクセスすることができるが、これらの方法には欠点がないわけではない。第1に、複数のコンピュータおよびネットワークドメインを横切って何度も複写される可能性のあるワークブックの複数のコピーを管理するのは非常に困難である。具体的に言えば、ワークブックがセキュアであり、かつ頻繁にバックアップされることを保証するのは、システム管理者にとって非常に困難である。さらに共用ファイルの場合、複数のユーザがワークブックに同時にアクセスするのは非常に困難な場合がある。例えば、オリジナルワークブックの著者がこれを更新する必要がある場合、これを使用するすべてのユーザを追跡し、彼らにそのコピーを更新させることは極端に困難である。多くの場合、スプレッドシートのクライアントアプリケーションは、1人のユーザがワークブックを開いている場合はこれをロックするため、それによって他のユーザはそのファイルにアクセスできない。加えて、ワークブックの異なるコピーに対して同一の機能が実行される場合があり、それによって努力の重複が発生し、生産性が低下する。
これらおよび他の考慮すべき事項に関して、本発明の様々な実施形態が作成された。
本発明によれば、上記および他の問題は、ワークブックをデータソースとして公開するための方法、システム、および装置によって解決される。ワークブックをサーバデータソースとして公開することにより、サーバデータソースに接続することおよびこれを照会することが可能な任意のアプリケーションプログラムによって、ワークブックのコンテンツに体系的にアクセスすることが容易になる。さらに、ワークブックが公表された時点でサーバデータソースとして公開されることにより、スプレッドシートアプリケーションプログラムを操作することのできるユーザであれば誰でも企業レベルのデータソースを容易に作成することができる。
本発明の一態様によれば、ワークブックのコンテンツをサーバデータソースとして公開するためおよびこのサーバデータソースを使用するためのシステムが提供される。このシステムには、ワークブックを作成するためのスプレッドシートアプリケーションプログラムが実行可能なクライアントコンピュータが含まれる。ワークブックは、データを含む1つまたは複数のセルを含む1つまたは複数のワークシートを含むことができる。
スプレッドシートアプリケーションプログラムは、ワークシートが作成されたときにデータを収容するためのメタデータを生成するようにも動作可能である。メタデータは、ワークブックの行、列、およびシートなどの、ワークブックの構造を記述するように事前に定義することができる。メタデータはワークシートと共に保存することができる。サーバコンピュータは、サーバデータソースとしてのワークブックのコンテンツにアクセスする旨の要求を受信した場合およびこれに応答する場合、メタデータを使用することができる。さらにスプレッドシートアプリケーションプログラムは、サーバコンピュータに対してワークブックを公表するようにも動作可能である。その後、ワークブックはサーバコンピュータに伝送され、ここでそのコンテンツがサーバデータソースとして公開される。
本発明の諸態様によれば、システムは、ワークブックをサーバデータソースとして公開するためのサーバプログラムを実行するように動作可能なサーバコンピュータも含む。本明細書で使用される「データソース」および「サーバデータソース」という用語は、特に、照会が実行可能なデータベースを表すものである。この定義には、多次元データベース(OLAPキューブなど)、ならびにリレーショナルデータベースおよび多次元データベースの側面を組み合わせたデータベース(「UDM」/Unified Dimensional Modelなど)が含まれる。さらに本明細書で使用される「データソース照会」という用語は、OLAPまたは多次元表現(「MDX」)照会などの、データソースを対象とする照会を意味する。「データソース照会」はSQL照会も含むことができる。例えばSQLは、Microsoft Analysis Services OLEDBプロバイダを使用するキューブに対して使用することができる。
いったんワークブックが公開されると、クライアントアプリケーションはサーバデータソースとしてのワークブックを発見し、これに接続することができる。サーバデータソースとしてのワークブックに対して照会が発行されると、サーバコンピュータはこのワークブックを再計算するように動作可能である。ワークブックが他のデータソースへの参照を含む場合、ワークブックを再計算するために必要な任意のデータを、再計算に先立ってデータソースから取り出すことができる。いったんワークブックが再計算されると、サーバコンピュータはワークブックの表現(キューブ状の多次元データソースなど)を生成するように動作可能である。例えばこれには、ワークブックに対応する一時OLAPキューブの生成などが含まれる。キューブの3次元は、ワークブックの行、列、およびシートで定義することができる。さらにワークブックの集合をひとまとめに考えて、キューブに第4の次元を追加することもできる。
いったん表現が生成されると、サーバコンピュータは、その表現について要求された照会を実行するように動作可能である。その後、照会の結果は要求元のクライアントアプリケーションプログラムに戻される。例えばこの様式では、ユーザはワークブックを作成し、そのワークブックをサーバコンピュータに公表することが容易であり、そのコンテンツをキューブとして公開することができる。その後、OLAPクライアントなどのデータベースクライアントアプリケーションを使用している他のユーザは、ワークブックを発見し、そのコンテンツに対して固有の照会を発行することができる。
本発明は、コンピュータプロセス、コンピューティング装置、あるいはコンピュータプログラム製品またはコンピュータ読取り可能媒体などの製品として実施可能である。コンピュータプログラム製品は、コンピュータシステムによって読取り可能であり、コンピュータプロセスを実行するための命令のコンピュータプログラムを符号化する、コンピュータ記憶媒体とすることができる。コンピュータプログラム製品は、コンピューティングシステムによって読取り可能であり、コンピュータプロセスを実行するための命令のコンピュータプログラムを符号化する、搬送波上で伝播される信号とすることもできる。
本発明を特徴付けるこれらおよび様々な他の機能ならびに利点は、以下の詳細な説明を読み、関連する図面を再検討することによって明らかとなろう。
次に、本発明の様々な諸態様について図面を参照しながら説明するが、これらの図面では同じ数字が同じ要素を表す。具体的に言えば、図1および対応する考察は、本発明の諸実施形態が実施可能な好適なコンピューティング環境の簡潔で概括的な説明を提供することを意図するものである。本発明について、パーソナルコンピュータのオペレーティングシステム上で動作するプログラムモジュールに関して実行されるプログラムモジュールの一般的文脈で説明するが、当業者であれば、本発明が他の種類のコンピュータシステムおよびプログラムモジュールと組み合わせても実施可能であることを理解されよう。
一般に、プログラムモジュールにはルーチン、プログラム、構成要素、データ構造、および、特定のタスクを実行するかまたは特定の抽象データ型を実施する他の種類の構造が含まれる。さらに当業者であれば、本発明がハンドヘルド装置、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラム可能な家庭用電化製品、ミニコンピュータ、メインフレームコンピュータ、およびその他を含む、他のコンピュータシステム構成でも実施可能であることを理解されよう。本発明は、通信ネットワークを介してリンクされたリモート処理装置によってタスクが実行される、分散コンピューティング環境でも実施可能である。分散コンピューティング環境では、プログラムモジュールをローカルおよびリモートの両方のメモリ記憶装置内に配置することができる。
次に図1を参照しながら、本発明のいくつかの実施形態に関する例示的オペレーティング環境について説明する。図1に示されるように、ネットワーク10は、クライアントコンピュータ2といくつかのサーバコンピュータ12A〜12Cを相互に接続する。ネットワーク10は、ローカルエリアネットワークまたはインターネットなどのワイドエリアネットワークを含む任意の種類のコンピューティングネットワークを有することができることを理解されたい。ネットワーク10は、クライアントコンピュータ2と、サーバコンピュータ12A〜12Cと、潜在的にはネットワーク10に接続されるかまたはこれを介してアクセス可能な他のコンピュータシステムとの間に、通信を実行可能にするための媒体を提供する。
クライアントコンピュータ2は、1つまたは複数のアプリケーションプログラムが実行可能な汎用のデスクトップまたはラップトップコンピュータを含む。具体的に言えば、本発明の様々な実施形態に従い、コンピュータ2は、スプレッドシートクライアントアプリケーション4を実行するように動作可能である。当業者には既知であるように、スプレッドシートクライアントアプリケーションプログラム4は、予算の作成、財務予測の実行、ならびに他の財務および数値関連のタスクのための機能を提供する。この機能を提供するために、セルを使用してデータ値を体系化することが可能であり、公式を使用してセル間の関係を定義することができる。1つのセルを変更すると、関連セルへの変更が生成される。スプレッドシートプログラムは、通常、出力用のグラフ作成機能と、テキスト、数値、およびグラフ機能用の様々なフォーマット化オプションを提供する。
本発明の諸実施形態によれば、スプレッドシートクライアントアプリケーション4を使用してワークブック6を作成することができる。ワークブック6は、1つまたは複数のワークシート(本明細書ではワークシートを「スプレッドシート」と呼ぶこともある)を含むスプレッドシートプログラムによって作成されるファイルである。ワークシートとは、スプレッドシートプログラム内の行および列に体系化され、画面上に表示される、単一のテーブルを構築するために使用される単一のページのことである。
ワークブック6内のワークシートは、データオブジェクトを含む1つまたは複数の領域を含むことができる。本明細書で定義される場合、データオブジェクトとは、データを格納するために使用されるワークシート内の任意のオブジェクトを含むものである。例えばデータオブジェクトは、セル、ピボットテーブル、DOE、リスト、データベース、および照会テーブルの任意の領域を含むことができるが、これらに限定されるものではない。本明細書でより完全に説明するように、これらの型のデータオブジェクトのそれぞれを含むワークブックのコンテンツ全体を、サーバ12Aから入手可能なサーバデータソースとして公開することができる。
本発明の一実施形態によれば、スプレッドシートクライアントアプリケーション4は、ワシントン州レドモンドのMICROSOFT CORPORATIONからのEXCELスプレッドシートアプリケーションプログラムを含む。しかしながら、本明細書に記載された本発明の様々な態様は、他の製造業者からの他のスプレッドシートアプリケーションプログラムでも使用可能であることを理解されたい。さらに、本明細書に記載された発明の諸態様は、スプレッドシートアプリケーションプログラムとの関連において提示されているが、他の種類のアプリケーションプログラムも本発明の様々な態様を具体化するために使用可能であることを理解されたい。
本発明の他の実施形態によれば、クライアントコンピュータ2は、OLAPクライアントアプリケーション8を実行するようにも動作可能である。OLAPクライアントアプリケーション8は、OLAPデータソースからのデータへの接続、照会、および使用が可能なアプリケーションプログラムを含む。例えばOLAPクライアントアプリケーション8は、ネットワーク10を介してサーバコンピュータ12Bに接続することができる。OLAPクライアントアプリケーション8は、サーバコンピュータ12B上で実行しているデータベースソフトウェアを介して、データソース16に対する照会を発行することができる。その後、サーバコンピュータ12Bは、OLAPクライアントアプリケーション8からの照会を受信し、およびこれに応答するように動作可能である。
以下でより詳細に説明するように、OLAPクライアントアプリケーション8は、ワークブック6に対する照会も発行することができる。この機能を実行可能にするために、スプレッドシートクライアントアプリケーション4は、ファイルサーバコンピュータ12Cによって維持され、サーバコンピュータ12Aがアクセス可能なリポジトリ14に対して、ワークブック6を公表することができる。その後、サーバコンピュータ12A上で実行中のスプレッドシートサーバアプリケーション13は、ワークブック6を解析し、ワークブック6のコンテンツをサーバデータソースとして公開することができる。その後OLAPクライアントアプリケーション8は、サーバコンピュータ12Bによって提供されているような専用のOLAPデータソースに接続するのと同じ様式で、スプレッドシートサーバアプリケーション12Aによって公開されているデータソースに接続することができる。スプレッドシートクライアントアプリケーション4は、OLAPクライアントアプリケーション8と同じ様式で、データソースからのデータの消費者として動作できることを理解されたい。コンピュータ2は、他の種類のデータベースからのデータを照会および消費するために、追加のクライアントアプリケーションを実行するように動作可能であることも理解されたい。さらに代替実施形態では、上記で説明したコンピュータ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」)と、ランダムアクセスメモリ9(「RAM」)および読取り専用メモリ(「ROM」)11を含むシステムメモリ7と、メモリをCPU5に結合するシステムバス12とを含む、従来のデスクトップまたはラップトップコンピュータを示す図である。起動時などにコンピュータ内の要素間で情報を転送するのを助ける基本ルーチンを含む基本入力/出力システムは、ROM11内に格納される。さらにコンピュータ2は、オペレーティングシステム18、アプリケーションプログラム、および他のプログラムモジュールを格納するための大容量記憶装置24を含み、これらについては以下でより詳細に説明する。
大容量記憶装置24は、バス12に接続された大容量記憶コントローラ(図示せず)を介してCPU5に接続される。大容量記憶装置24およびその関連するコンピュータ読取り可能媒体は、コンピュータ2に不揮発性記憶域を提供する。本明細書に含まれるコンピュータ読取り可能媒体の説明は、ハードディスクまたはCD−ROMドライブなどの大容量記憶装置を指すものであるが、当業者であれば、コンピュータ読取り可能媒体はコンピュータ2がアクセス可能な任意の使用可能媒体とすることができることを理解されたい。
例を挙げると、コンピュータ読取り可能媒体にはコンピュータ記憶媒体および通信媒体が含まれるが、これらに限定されるものではない。コンピュータ記憶媒体は、コンピュータ読取り可能命令、データ構造、プログラムモジュール、または他のデータなどの情報を記憶するための任意の方法または技術で実施された、揮発性および不揮発性、取り外し可能および固定の媒体を含む。コンピュータ記憶媒体は、RAM、ROM、EPROM、EEPROM、フラッシュメモリまたは他のソリッドステートメモリ技術、CD−ROM、デジタル多用途ディスク(「DVD」)または他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、あるいは、所望の情報を格納するために使用可能でありコンピュータ2がアクセス可能な任意の他の媒体を含むが、これらに限定されるものではない。
本発明の様々な実施形態によれば、コンピュータ2は、インターネットなどのネットワーク10を介したリモートコンピュータへの論理接続を使用するネットワーク環境で動作することができる。コンピュータ2は、バス12に接続されたネットワークインターフェースユニット20を介して、ネットワーク10に接続することができる。ネットワークインターフェースユニット20を使用して、他の種類のネットワークおよびリモートコンピュータシステムに接続できることも理解されたい。コンピュータ2は、キーボード、マウス、または電子スタイラス(図2には図示せず)を含む、いくつかの他の装置からの入力を受信および処理するための入力/出力コントローラ22も含むことができる。同様に、入力/出力コントローラ22は、ディスプレイ画面、プリンタ、または他の種類の出力装置に出力を提供することもできる。
上記で簡単に述べたように、ワシントン州レドモンドのMICROSOFT CORPORATIONからのWINDOWS(登録商標)XPオペレーティングシステムなどの、ネットワーク化されたパーソナルコンピュータのオペレーションを制御するのに好適なオペレーティングシステム18を含む、いくつかのプログラムモジュールおよびデータファイルを、コンピュータ2の大容量記憶装置24およびRAM9に格納することができる。大容量記憶装置24およびRAM9は、1つまたは複数のプログラムモジュールも格納することができる。具体的に言えば、大容量記憶装置24およびRAM9は、前述のようにスプレッドシートクライアントアプリケーション4およびOLAPクライアントアプリケーション8を格納することができる。大容量記憶装置24およびRAM9は、スプレッドシートクライアントアプリケーション4によって作成されたワークブック6も格納することができる。
本発明の一実施形態によれば、スプレッドシートアプリケーションプログラム4は、ワークブック6用のメタデータ26を生成するようにも動作可能である。メタデータ26は、ワークブックの行、列、およびシートなどの、ワークブックの構造を記述するように事前に定義することができる。メタデータ26は、ワークブック6内に格納し、ワークブックと共に保存することができる。メタデータ26は、サーバコンピュータ12Aがサーバデータソースとしてのワークブック6にアクセスする旨の要求を受信し、これに応答する際に使用することができる。
本発明の実施形態では、スプレッドシートクライアントアプリケーションプログラム4は、ワークブック6に含まれるデータオブジェクト用のスプレッドシートアプリケーションプログラム4によって作成されたメタデータ26を、ユーザが編集できるようにするための機構を提供するように動作可能である。例えばユーザは、この機構を介してキューブのサブセットを定義することができる。この様式では、ユーザは、例えば行1〜10および列5〜15のみがキューブに変形されるように指定すること、およびこれらの要素に異なる名前を与えることが可能である。
サーバコンピュータ12A〜12Cは、図2に示され上記で説明した従来のコンピューティング構成要素の多くを含むことができることを理解されたい。さらにサーバコンピュータ12Aは、スプレッドシートサーバアプリケーション13を格納し、および実行するようにも動作可能である。ファイルサーバコンピュータ12Cは、ワークブック6などのリポジトリ14に格納されたファイルに関する要求を受信し、およびこれに応答するためのファイルサーバアプリケーション28を格納し、および実行するように動作可能である。サーバコンピュータ12A〜12Cは、図2には示されていないが当業者には周知の他の従来の構成要素を含むことができることを理解されたい。
次に図3を参照しながら、ワークブックをサーバデータソースとして公表するための、スプレッドシートクライアントアプリケーションプログラム4によって実行されるプロセスを示す、例示的なルーチン300について説明する。本明細書に提示されたルーチンの考察を読むと、本発明の様々な実施形態の論理オペレーションが、(1)コンピューティングシステム上で実行される一連のコンピュータ実施の動作またはプログラムモジュールとして、および/または(2)コンピューティングシステム内で相互接続されたマシン論理回路または回路モジュールとして、実施されることが理解されよう。この実施は、本発明を実施するコンピューティングシステムの性能要件に依存する選択の問題である。したがって、図3および5に示され、本明細書に記載された本発明の実施形態を構成する論理オペレーションは、オペレーション、構造化装置(structural device)、動作、またはモジュールとして様々に言い表される。当業者であれば、これらのオペレーション、構造化装置、動作、およびモジュールが、本明細書に記載された特許請求の範囲内に示された本発明の精神および範囲から逸脱することなく、ソフトウェア、ファームウェア、特定用途向けデジタル論理、およびそれらの任意の組合せで実施可能であることを理解されるであろう。
ルーチン300は、ユーザがスプレッドシートクライアントアプリケーション4を使用してワークブック6を作成するオペレーション302で開始される。具体的に言えば、本明細書で説明するように、ユーザは、スプレッドシートクライアントアプリケーション4によって提供される様々な機構を使用して、それぞれが1つまたは複数の列および行を有する1つまたは複数のワークシートを含むワークブックを作成する。それぞれのワークシートは、公式、データオブジェクト、ピボットテーブル、および他の型のオブジェクトなどの、ワークシート内で使用可能な従来のオブジェクトのうちのいずれも含むことができる。ユーザは、データソース16のワークブック6内に手動でデータを入力するか、または照会を作成することもできる。ワークブック6を作成するためにスプレッドシートクライアントアプリケーション4内で使用可能な様々な機能および方法はほぼ無限にあり、当業者にとっては周知である。
ルーチン300は、オペレーション302からオペレーション304へと続行され、ここでスプレッドシートクライアントアプリケーション4は、多次元データソースとしてのワークブック6にアクセスする旨の要求に応答する際にサーバアプリケーション13が使用するための、メタデータ26を生成する。具体的に言えば、スプレッドシートクライアントアプリケーション4は、ワークブック6内に格納されたデータを分析し、ワークブック6内のデータを記述するために使用可能なデータを識別することができる。例えば多次元データソースに関して、スプレッドシートクライアントアプリケーション4は、ワークブック6内の様々なデータに関する測度、階層、およびデフォルトの集約を識別することができる。
これらプロパティの値は、スプレッドシートクライアントアプリケーション4が知的様式で設定することもできる。例えば文字列データフィールドに関して、スプレッドシートクライアントアプリケーション4は、デフォルト集約をカウントとして示すことができる。数値データフィールドに関して、スプレッドシートクライアントアプリケーション4は、デフォルト集約を合計に設定することができる。他の種類の知的意思決定は、ワークブック6内のメタデータを識別し、およびメタデータ用のプロパティを設定するために、スプレッドシートクライアントアプリケーション4によって実行可能である。
ルーチン300はオペレーション304からオペレーション306へと続行され、ここでスプレッドシートクライアントアプリケーション4は、スプレッドシートクライアントアプリケーション4によって生成されたメタデータを編集するようにユーザが要求したか否かを判定する。上記で簡潔に説明したように、スプレッドシートクライアントアプリケーション4は、生成されたメタデータを編集するためのユーザインターフェースを提供することができる。例えばこれは、ワークブック6内のメタデータを識別する場合、およびメタデータに様々なプロパティを設定する場合に、ユーザがスプレッドシートクライアントアプリケーション4によって実行された知的意思決定を無効にできるようにする際に役立つ場合がある。
オペレーション306で、スプレッドシートクライアントアプリケーション4がメタデータ編集の要求を受け取っていると判定した場合、ルーチン300はオペレーション308に分岐する。オペレーション308では、スプレッドシートクライアントアプリケーション4は編集済みのメタデータをユーザから受け取る。ルーチン300は、オペレーション308からオペレーション310へと続行される。
オペレーション306で、スプレッドシートクライアントアプリケーション4がメタデータ編集の要求を受け取っていないと判定した場合、ルーチン300はオペレーション310へと続行される。オペレーション310では、スプレッドシートクライアントアプリケーション4によって生成され、場合によってはユーザによって編集されたメタデータ26が、ワークブック6と共に保存される。ワークブック6の保存は自動的に実行するか、またはユーザの要求に応答して実行することができる。
ルーチン300は、オペレーション310からオペレーション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のコンテンツをデータソースとして照会することができる。ワークブック6のコンテンツをデータソースとして公開するため、およびデータソース照会要求を受信し、およびこれに応答するために、スプレッドシートサーバアプリケーション13によって実行される様々な機能に関する追加の詳細については、図5に関して以下でより詳細に説明する。ルーチン300は、オペレーション312からオペレーション314へと続行され、ここで終了する。
サーバデータソースとして公開されたワークブックに向けて送られた照会を使用して、スプレッドシートクライアントアプリケーション4によって提供される機能を模倣できることを理解されたい。例えば、ワークブック内のデータのフィルタサブセットに対して、自動フィルタ(「オートフィルタ」)ツールを提供することができる。オートフィルタによって提供された機能は、その後公表済みデータソース内に反映されることになる。別の方法として、複合MDXステートメントを使用して、キューブから行および列を選択し、それによって同じ機能を提供することもできる。
次に図4を見ると、データソースとしてのワークブックのコンテンツ要求を受信し、およびこれに応答するためのスプレッドシートサーバアプリケーション13のオペレーションを示す例示的なルーチン400が記載されている。ルーチン400は、オペレーション402で開始され、ここではスプレッドシートサーバアプリケーション13がサーバデータソースとしてワークブックを公開する。本発明の一実施形態により、ワークブックはデータ接続マネージャ(特許文献1参照)を介して公開される。別の方法として、リポジトリ14内に格納されたワークブック6は、UDMなどの他の種類の分析サーバインターフェースを使用して公開することもできる。いったんスプレッドシートサーバアプリケーション13がワークブック6を公開すると、OLAPクライアントアプリケーション8またはスプレッドシートクライアントアプリケーション4などのクライアントアプリケーションは、ワークブックデータソースを発見して、データソースの照会要求を発行することができる。
ルーチン400はオペレーション402からオペレーション404へと続行され、ここでスプレッドシートサーバアプリケーション13は、サーバデータソースとしてのワークブックに接続する旨の要求を受信する。例えばオペレーション406で、スプレッドシートサーバアプリケーション13は、ワークブックの領域に対する固有の照会を受信することができる。例えばOLAPクライアントアプリケーションは、固有のOLAP照会をスプレッドシートサーバアプリケーション13に発行することができる。別の方法として、MDXおよびXML−A照会などの他の種類の照会をスプレッドシートサーバアプリケーション13に発行することもできる。当業者に知られているデータベースを照会するための他の種類の標準も使用することができる。
オペレーション408で、スプレッドシートサーバアプリケーション13は、照会の宛先であるワークブック6をロードする。スプレッドシートサーバアプリケーション13によってワークブック6がいったんロードされると、ルーチン400は、オペレーション410へと続行され、ここでスプレッドシートサーバアプリケーション13は、ワークブック6が他のデータソースへの参照を含むか否かを判定する。例えば、上記で簡潔に説明したように、ワークブックはデータソース16などのデータソースへの参照を含むことができる。
ワークブック6が他のデータソースへの参照を含む場合、ルーチン400はオペレーション412へと分岐し、ここでスプレッドシートサーバアプリケーション13は、ワークブック6を計算する際に必要な任意のデータについてデータソース16を参照する。スプレッドシートサーバアプリケーション13によってこのデータがいったん受信されると、ワークブック6は受信されたデータによって更新される。
オペレーション410で、ワークブック6が他のデータソースへの参照を含んでいないと判定されると、ルーチン400はオペレーション414へと続行される。オペレーション414で、スプレッドシートサーバアプリケーション13はワークブック6のコンテンツを再計算する。これには、例えばワークブック6に格納された任意の公式の値を計算することが含まれる場合がある。
ルーチン400は、オペレーション414からオペレーション416へと続行され、ここでスプレッドシートサーバアプリケーション13は、計算されたワークブックのデータベース表現を生成する。具体的に言えば、スプレッドシートサーバアプリケーション13によって多次元キューブなどの一時データベース表現が生成される。データベース表現は、ワークブック6を介して要求された照会を実行するために一時的に生成される。キューブを生成するためにスプレッドシートサーバアプリケーション13によって実行されるプロセスに関する追加の詳細は、図5に関して以下で説明する。
要求されたワークブックのデータベース表現がいったん生成されると、ルーチン400はオペレーション418へと続行され、ここでスプレッドシートサーバアプリケーション13は、計算されたワークブックのデータベース表現で要求された照会を実行する。照会の実行に応答して、クライアントアプリケーションから受信した初期の照会を満たす照会結果が生成される。ルーチン400は、オペレーション418からオペレーション420へと続行され、ここでスプレッドシートサーバアプリケーション13は、識別された照会結果を使用してオリジナルの照会要求に応答する。ルーチン400は、オペレーション420からオペレーション422へと続行され、ここで終了する。
次に図5を見ると、ワークブックのコンテンツに対応する多次元キューブを生成するための例示的なルーチン500が記載されている。ルーチン500はオペレーション502で開始され、ここで現在のワークブック、現在のワークシート、および現在のセルに対応する一時変数が、第1のワークブック、第1のワークシート、および第1のセルにそれぞれ設定される。以下で詳細に説明するように、これらの変数は、ワークブック、シート、およびセルの領域内での現在の位置を追跡するために使用される。以下の詳細な説明からもわかるように、データを含んでいる各ワークシートおよび各ワークブック内の各セルが分析され、各セルのコンテンツが新しい多次元データ構造内の対応する場所に転送される。ブロック502に関して参照された一時変数を使用して、ワークブックの領域内での現在の位置が追跡される。
ルーチン500は、オペレーション502からオペレーション504へと続行され、ここで、現在のワークブック、現在のシート、および現在のセルに関する一時変数の値によって指定されたセル内に含まれるデータが読み取られる。いったん値が読み取られると、ルーチン500は、オペレーション506へと続行され、データ値が適切な場所で多次元データ構造に挿入される。図6を参照しながら以下でより詳細に説明されるように、多次元データ構造は、ワークシート内の行に対応する1つの次元と、ワークシート内の列に対応する1つの次元と、存在する場合は追加のワークシートに対応する第3の次元とを使用して配置構成することができる。これに応じて、現在のワークブック、シート、およびセルによって指定された値は、新しい多次元データ構造の適切な次元内の適切な位置に移動される。
ルーチン500は、オペレーション506からオペレーション508へと続行され、現在のワークシート内に分析される予定の追加のセルが残っているか否かが判定される。追加のセルが残っている場合、ルーチン500は、オペレーション510へと分岐し、ここで現在のセルに対応する変数が次に処理される予定のセルと等価に設定される。次にルーチンはオペレーション510からオペレーション504へと戻り、次のセルのコンテンツが読み取られる。
オペレーション508で、現在のワークシート内に分析される予定の追加のセルが残っていない場合、ルーチン500はオペレーション512へと続行される。オペレーション512では、現在のワークブック内に分析される予定の追加のワークシートが残っているか否かが判定される。分析される予定の追加のワークシートが残っている場合、ルーチン500はオペレーション514へと分岐し、ここで現在のワークシートに対応する変数が次のワークシートと等価に設定される。次にルーチン500はオペレーション514からオペレーション504へと続行され、次のワークシートが分析される。
オペレーション512で、現在のワークブック内に処理される予定の追加のワークシートが残っていない場合、ルーチン500はオペレーション516へと続行される。オペレーション516では、処理される予定の追加のワークブックが残っているか否かが判定される。スプレッドシートアプリケーションプログラムによって複数のワークブックが同時に公開できることを理解されたい。さらに、追加のワークブックが多次元データ構造用の第4の次元を有することも理解されたい。処理される予定の追加のワークブックが残っている場合、ルーチン500は、オペレーション518へと分岐し、ここで現在のワークブックに対応する変数が次のワークブックに設定される。次に、ルーチンは、オペレーション518からオペレーション504へと続行され、次のワークブックが処理される。
オペレーション516で、処理される予定の追加のワークブックが残っていないと判定された場合、ルーチン500はオペレーション516からオペレーション520へと続行される。オペレーション520では、サーバコンピュータが使用するために多次元キューブが格納される。次にルーチン500はオペレーション522へと続行され、図4を参照しながら上記で考察したオペレーション416に戻る。
次に図6を見ると、ワークブックのコンテンツをキューブなどの多次元データ構造に変換するプロセスに関する追加の詳細が記載されている。図6に示されるように、ワークブック6は1つまたは複数のワークシート30A〜30Cを含むことができる。それぞれのワークシートは従来の様式で編成され、任意数の列32A〜32Nの任意数の行34A〜34Nを含むことができる。任意の行と任意の列の交差部分がセルを有し、ここへデータを入力することができる。例えば図6に示されるように、列32Bと行34Bの交差部分(セル「A1」)は番号10が入力されたセルを有する。
図5に関して上記で簡潔に論じたように、多次元データソース36を3次元キューブとして編成することができる。キューブの第1の次元38Aは、様々なワークシート内の行34A〜34Nに対応することができる。多次元データソース36の第2の次元38Bは、様々なワークシート内の列32A〜32Nに対応することができる。多次元データソース36の第3の次元38Cは、特定のワークブックに含まれる様々なワークシート30A〜30Cに対応することができる。図5に関して上記で論じたように、追加のワークブックに対応する第4の次元を割り振ることができる。
図5に関して上記で簡潔に論じたように、ワークブック6を多次元データソース36に変換するために、ワークシート30A〜30Cのそれぞれに含まれるセルがそれぞれ分析され、そこに含まれる任意のデータが多次元データソース36内の対応する場所に転送される。例えば図6に示されるように、ワークシート30Aの行34Bに含まれるデータは、3次元データソース36内の適切な場所に移動されている。ワークブック6に含まれる他のセルのコンテンツおよび他の型のオブジェクトを、同様の方式で多次元データソース36内の対応する場所に転送できることを理解されたい。
上記の内容に基づいて、本発明の様々な実施形態には、ワークブックをサーバデータソースとして公開および使用するための方法、システム、装置、およびコンピュータ読取り可能媒体が含まれることを理解されたい。上記の詳述、例、およびデータは、本発明の製造および使用に関して完全に説明するものである。本発明の多くの実施形態は本発明の精神および範囲を逸脱することなく実施可能であるため、本発明は添付の特許請求の範囲内に存在するものである。
本発明の様々な実施形態で使用されこれによって提供される、いくつかのコンピュータシステムの諸態様を例示するコンピュータネットワークを示す図である。 本発明の様々な実施形態で使用されこれによって提供される、クライアントコンピュータシステムの諸態様を例示するコンピュータシステムアーキテクチャを示す図である。 本発明の一実施形態に従って、ワークブック領域をサーバデータソースとして公表するためのプロセスの諸態様を示す流れ図である。 本発明の一実施形態に従って、サーバデータソースとしてのワークブックのコンテンツの要求を受信してこれに応答するためのプロセスの諸態様を示す流れ図である。 本発明の一実施形態に従って、ワークブックのデータベース表現を生成するためのプロセスを示す流れ図である。 一実施形態に従って、ワークブックを多次元データソースに変換するための変換プロセスを示す流れ図である。
符号の説明
12 システムバス
30A〜30C ワークシート
32A〜32N 列
34A〜34N 行
36 多次元データソース

Claims (20)

  1. ワークブックに向けて送られたデータベース照会を受信するステップと、
    前記照会に応答して、
    前記ワークブックを再計算するステップと、
    前記再計算されたワークブックのデータベース表現を生成するステップと、
    照会結果を取得するために、前記再計算されたワークブックの前記データベース表現において前記要求された照会を実行するステップと、
    前記照会結果を前記データベース照会への応答として伝送するステップと
    を備えたことを特徴とするワークブックのコンテンツをサーバデータソースとして公開するための方法。
  2. 前記ワークブックがデータソースへの参照を含むか否かを判定するステップと、
    前記ワークブックがデータソースへの参照を含むという判定に応答して、前記データソースから前記ワークブックの計算に必要なデータを取り出すステップと、
    前記データソースから取り出された前記データを使用して、前記ワークブックを再計算するステップと
    をさらに備えたことを特徴とする請求項1に記載の方法。
  3. 前記データベース表現はキューブを含み、前記データベース照会はOLAPクライアントアプリケーションから受信されることを特徴とする請求項2に記載の方法。
  4. コンピュータによって実行された場合、前記コンピュータに請求項1に記載の方法を実行させる、コンピュータ実行可能命令を格納していることを特徴とするコンピュータ読取り可能媒体。
  5. 請求項1に記載の方法が実行可能であることを特徴とするコンピュータ制御装置。
  6. 1つまたは複数のセルを有する1つまたは複数のワークシートを含むワークブックを作成するための機構を提供するステップと、
    前記ワークブックをサーバコンピュータに公表し、それによって前記シートおよび前記セルが多次元データソースとして前記サーバコンピュータで公表されるステップと
    を備えたことを特徴とするワークブックのコンテンツをサーバデータソースとして公開するための方法。
  7. 前記多次元データソースに向けて送られた照会を受信するステップと、
    前記照会に応答して、前記サーバコンピュータで前記ワークブックを計算し、前記計算されたワークブックから前記多次元データソースを生成するステップと、
    前記生成された多次元データソースを介して前記要求された照会を実行するステップと、
    前記照会結果を使用して前記照会要求に応答するステップと
    をさらに備えたことを特徴とする請求項6に記載の方法。
  8. コンピュータによって実行された場合、前記コンピュータに請求項6に記載の方法を実行させる、コンピュータ実行可能命令を格納していることを特徴とするコンピュータ読取り可能媒体。
  9. 請求項6に記載の方法が実行可能であることを特徴とするコンピュータ制御装置。
  10. 1つまたは複数のセルが含まれた1つまたは複数のワークシートを有するワークブックを作成するステップと、
    1つまたは複数のデータオブジェクト用のメタデータを生成するステップであって、前記メタデータが、サーバデータソースとしての前記ワークブックの要求に応答してサーバコンピュータが使用するものである生成するステップと、
    前記ワークブックおよび前記メタデータを前記サーバコンピュータに公表するステップと、
    前記ワークブックをサーバデータソースとして公開するステップと、
    ワークブックデータソース内に含まれるデータを参照する前記サーバコンピュータにおいて、データソース照会を受信するステップと、
    前記照会の受信に応答して、前記ワークブックをロードし、および前記ワークブックを計算するステップと、
    前記メタデータを使用する前記ワークブックのデータベース表現を生成するステップと、
    前記ワークブックの前記データベース表現で前記要求された照会を実行して、照会結果を作成するステップと、
    前記照会結果を使用して前記照会に応答するステップと
    を備えたことを特徴とするワークブックのコンテンツをサーバデータソースとして公開し、および使用するための方法。
  11. 前記ワークブックを計算するステップに先立って、
    前記ワークブックがデータソースへの参照を含むか否かを判定するステップと、
    前記ワークブックがデータソースへの参照を含むという判定に応答して、前記データソースから前記ワークブックの計算に必要なデータを取り出すステップと、
    前記データソースから取り出された前記データを考慮して前記ワークブックの値を計算するステップを含む、前記ワークブックを計算するステップと
    をさらに備えたことを特徴とする請求項10に記載の方法。
  12. コンピュータによって実行された場合、前記コンピュータに請求項10に記載の方法を実行させる、コンピュータ実行可能命令を格納していることを特徴とするコンピュータ読取り可能媒体。
  13. 請求項10に記載の方法が実行可能であることを特徴とするコンピュータ制御装置。
  14. 1つまたは複数のセルを含む1つまたは複数のワークシートを有するワークブックを作成するために、スプレッドシートアプリケーションプログラムを実行するように動作可能なクライアントコンピュータであって、前記スプレッドシートアプリケーションプログラムが、サーバコンピュータに対して前記ワークブックを公表するようにさらに動作可能であるクライアントコンピュータと、
    前記ワークブックをサーバデータソースとして公開するため、および前記ワークブックデータソースに向けて送られた照会要求を受信してこれに応答するために、サーバプログラムを実行するように動作可能なサーバコンピュータと
    を備えたことを特徴とするワークブックをサーバデータソースとして公開および使用するためのシステム。
  15. 前記スプレッドシートアプリケーションプログラムは、メタデータを生成して前記ワークブック内に格納するようにさらに動作可能であり、前記メタデータは、前記ワークブックデータソースの要求に応答する際に前記サーバコンピュータによって使用されるものであることを特徴とする請求項14に記載のシステム。
  16. 前記スプレッドシートアプリケーションプログラムは、ユーザが前記メタデータを編集できるようにするための機構を提供するようにさらに動作可能であることを特徴とする請求項15に記載のシステム。
  17. サーバデータソースに対して照会を発行するためにアプリケーションプログラムを実行するように動作可能な第2のクライアントコンピュータをさらに備え、前記サーバプログラムは、前記第2のクライアントコンピュータから前記サーバデータソースへのデータベース照会を受信してこれに応答するようにさらに動作可能であることを特徴とする請求項16に記載のシステム。
  18. 前記第2のクライアントコンピュータからのデータベース照会に応答するステップは、
    前記ワークブックを再計算するステップと、
    前記再計算されたワークブックに対応するキューブを生成するステップと、
    前記キューブで前記要求された照会を実行して、照会結果を取得するステップと、
    前記照会結果を、前記データベース照会への応答として前記第2のクライアントコンピュータに伝送するステップと
    を含むことを特徴とする請求項17に記載のシステム。
  19. 前記第2のクライアントコンピュータからのデータベース照会に応答するステップは、
    前記ワークブックがデータソースへの参照を含むか否かを判定するステップと、
    前記ワークブックがデータソースへの参照を含むという判定に応答して、前記データソースから前記ワークブックの計算に必要なデータを取り出すステップと、
    前記データソースから取り出された前記データを使用して、前記ワークブックを再計算するステップと
    をさらに含むことを特徴とする請求項18に記載のシステム。
  20. 前記第2のクライアントコンピュータ上で実行される前記アプリケーションは、OLAPクライアントアプリケーションを含むことを特徴とする請求項19に記載のシステム。
JP2005158658A 2004-07-30 2005-05-31 ワークブックをデータソースとして公開するための方法、システム、および装置 Expired - Fee Related JP4801376B2 (ja)

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
JP2006048646A true JP2006048646A (ja) 2006-02-16
JP4801376B2 JP4801376B2 (ja) 2011-10-26

Family

ID=35197751

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005158658A Expired - Fee Related JP4801376B2 (ja) 2004-07-30 2005-05-31 ワークブックをデータソースとして公開するための方法、システム、および装置

Country Status (5)

Country Link
US (1) US7991804B2 (ja)
EP (1) EP1622045B1 (ja)
JP (1) JP4801376B2 (ja)
KR (1) KR101143155B1 (ja)
CN (1) CN1728138B (ja)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
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
EP1826695A1 (en) * 2006-02-28 2007-08-29 Microsoft Corporation Secure content descriptions
EP1801720A1 (en) * 2005-12-22 2007-06-27 Microsoft Corporation Authorisation and authentication
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
US8606827B2 (en) * 2009-05-29 2013-12-10 Red Hat, Inc. Systems and methods for extracting database dimensions as data modeling object
US9009006B2 (en) * 2009-05-29 2015-04-14 Red Hat, Inc. Generating active links between model objects
US9292592B2 (en) * 2009-05-29 2016-03-22 Red Hat, Inc. Object-based modeling using composite model object having independently updatable component objects
US9105006B2 (en) * 2009-05-29 2015-08-11 Red Hat, Inc. Generating floating desktop representation of extracted model object
US8417739B2 (en) * 2009-05-29 2013-04-09 Red Hat, Inc. Systems and methods for object-based modeling using hierarchical model objects
US9292485B2 (en) * 2009-05-29 2016-03-22 Red Hat, Inc. Extracting data cell transformable to model object
US8930487B2 (en) * 2009-05-29 2015-01-06 Red Hat, Inc. Object-based modeling using model objects exportable to external modeling tools
US8365195B2 (en) * 2009-08-31 2013-01-29 Red Hat, Inc. Systems and methods for generating sets of model objects having data messaging pipes
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
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
GB201916801D0 (en) 2019-11-19 2020-01-01 Ibm Identifying data relationships from a spreadsheet
GB201916804D0 (en) 2019-11-19 2020-01-01 Ibm Generating an OLAP model from a spreadsheet
GB201916803D0 (en) 2019-11-19 2020-01-01 Ibm Identifying content and structure of olap dimensions 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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001243242A (ja) * 2000-02-25 2001-09-07 Hitachi Ltd 問合せ処理方法およびそれを実施するデータベース管理システムその処理プログラムを格納した記録媒体

Family Cites Families (71)

* Cited by examiner, † Cited by third party
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
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
US6613098B1 (en) 1999-06-15 2003-09-02 Microsoft Corporation Storage of application specific data in HTML
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
US6631497B1 (en) 1999-07-19 2003-10-07 International Business Machines Corporation Binding data from data source to cells in a spreadsheet
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
US6898603B1 (en) * 1999-10-15 2005-05-24 Microsoft Corporation Multi-dimensional data structure caching
US6493718B1 (en) 1999-10-15 2002-12-10 Microsoft Corporation Adaptive database caching and data retrieval mechanism
US6473750B1 (en) 1999-10-15 2002-10-29 Microsoft Corporation Adaptive query execution in a distributed database system
JP2003516582A (ja) 1999-12-07 2003-05-13 データ ファウンデイション、インコーポレイテッド スケーラブルな記憶アーキテクチャ
US7185279B2 (en) 2000-01-07 2007-02-27 Master Mine Software, Inc. Data mining and reporting
AU2001236901A1 (en) 2000-02-11 2001-08-20 David A Keeney Jr. Method and system for distributing and collecting spreadsheet information
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
WO2005026991A1 (en) 2003-09-09 2005-03-24 Ask Jeeves, Inc. Refinement of web-based search queries
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001243242A (ja) * 2000-02-25 2001-09-07 Hitachi Ltd 問合せ処理方法およびそれを実施するデータベース管理システムその処理プログラムを格納した記録媒体

Also Published As

Publication number Publication date
CN1728138B (zh) 2010-09-08
KR20060046282A (ko) 2006-05-17
US7991804B2 (en) 2011-08-02
EP1622045A3 (en) 2006-08-02
US20060024653A1 (en) 2006-02-02
KR101143155B1 (ko) 2012-05-11
EP1622045B1 (en) 2019-05-01
JP4801376B2 (ja) 2011-10-26
CN1728138A (zh) 2006-02-01
EP1622045A2 (en) 2006-02-01

Similar Documents

Publication Publication Date Title
JP4801376B2 (ja) ワークブックをデータソースとして公開するための方法、システム、および装置
JP4907906B2 (ja) ワークブック範囲をデータソースとして公開する方法、システムおよび装置
AU2005202285B2 (en) Method, system, and apparatus for providing access to workbook models through remote function calls
JP4921785B2 (ja) コンピュータ生成ドキュメントにおけるデータの管理および使用
JP2006012146A (ja) 影響分析のためのシステムおよび方法
US7587416B2 (en) Advanced desktop reporting
US7546526B2 (en) Efficient extensible markup language namespace parsing for editing
US20060085446A1 (en) Indirect persistent storage for plugin in container
US10445299B2 (en) Optimizing memory by sharing datasets between workspaces

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110215

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110516

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110519

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110711

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110802

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110805

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140812

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4801376

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees