JP4482602B2 - データサマリテーブルにおけるフィールドの自動配置 - Google Patents

データサマリテーブルにおけるフィールドの自動配置 Download PDF

Info

Publication number
JP4482602B2
JP4482602B2 JP2008530101A JP2008530101A JP4482602B2 JP 4482602 B2 JP4482602 B2 JP 4482602B2 JP 2008530101 A JP2008530101 A JP 2008530101A JP 2008530101 A JP2008530101 A JP 2008530101A JP 4482602 B2 JP4482602 B2 JP 4482602B2
Authority
JP
Japan
Prior art keywords
field
summary table
data summary
pane
computer
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
Application number
JP2008530101A
Other languages
English (en)
Other versions
JP2009508221A (ja
JP2009508221A5 (ja
Inventor
フォルティング アラン
ツパジ コンラッド
シー.コリー ロバート
ヴィ.グレーバー アナトリー
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 JP2009508221A publication Critical patent/JP2009508221A/ja
Publication of JP2009508221A5 publication Critical patent/JP2009508221A5/ja
Application granted granted Critical
Publication of JP4482602B2 publication Critical patent/JP4482602B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Description

データサマリテーブルを使用して、大量のデータを分析することができる。データサマリテーブルの1つの例は、Microsoft社のEXCEL(登録商標)スプレッドシートソフトウェアを使用して生成することが可能なPIVOTTABLEダイナミックビューである。データサマリテーブルは、データベースプログラムによって提供されるか、またはスプレッドシートのデータリスト内にあるデータを表示し、要約するための効率的な方法を提供する。ユーザは、データサマリテーブルのページ、行、列またはデータサマリテーブルのデータ領域内に含むためのデータのフィールドを選択することができ、選択したデータのフィールドの表示すべき和、差、総数および標準偏差などのパラメータを選択することができる。スプレッドシートプログラム内から、またはリストを含むスプレッドシートデータからクエリすることが可能なデータベース内のデータは、データサマリテーブル内で分析することができる。
データサマリテーブルは、データを効率的かつ直感的に分析することができるように設計されているが、初心者のユーザにとっては、データサマリテーブル自体の作成が難しい可能性がある。例えば、一部のプログラムは、ユーザがデータサマリテーブルを作成することを支援するウィザードを提供する。こうしたウィザードは、最初のデータサマリテーブルを作成する際には役立つかもしれないが、いったん作成されてしまうと、表示を変更するためにウィザードを簡単に使用することができない。その他のプログラムでは、ユーザは、所望のフィールドを直接データサマリテーブル上にドラッグ&ドロップすることができる。これらのプログラムは、表示を生成する際にユーザに大きな柔軟性を提供するが、そのようなプログラムは、初心者にとっては、使用するためにあまり直感的なものではない場合がある。
この要約は、以下でさらに記述する詳細な説明から簡略化した形式で概念を選択したものを紹介するために提示するものである。この要約は、特許請求する主題事項の主要な特徴または本質的な特徴を特定することを目的とするわけでも、特許請求する主題事項の範囲を決定する際の助けとして使用することを目的とするわけでもない。
1つの側面にしたがうと、データサマリテーブルを作成するためのグラフィカルユーザインターフェースは、複数のフィールドを含むペイン(pane)と、データサマリテーブルとを含む。ユーザインターフェースは、データサマリテーブル内に含めるためのフィールドが選択されると、そのフィールドを分析し、自動的にそのフィールドをデータサマリテーブル内に配置するようにプログラムされている。
別の側面にしたがうと、データサマリテーブルのためのグラフィカルユーザインターフェースを有するコンピュータシステムにおいて、方法は、複数のフィールドから1つのフィールドを選択することを可能にするステップと、セマンティクス(semantics)を使用して、選択したフィールドを分析するステップと、フィールドを配置するために、データサマリテーブルの領域を選択するステップと、データサマリテーブルの領域にフィールドを付加するステップとを備える。
別の側面にしたがうと、コンピュータ読み取り可能な媒体は、複数のフィールドから1つのフィールドを選択することを可能にするステップと、セマンティクスを使用して、選択したフィールドを分析するステップと、フィールドを配置するために、データサマリテーブルの領域を選択するステップと、データサマリテーブルの領域にフィールドを付加するステップとを実行するためのコンピュータ実行可能命令を有する。
以下において、必ずしも一定の比率で描かれているわけではない添付図面が参照される。
以下、添付図面を参照しながら、様々な実施形態について、より全体的に説明する。本明細書で開示する諸実施形態は例示的なものであり、限定的なものとして解釈すべきではない。むしろ、これらの実施形態は、本開示が詳細かつ完全なものであるように示されるものである。全体を通じて、同様の参照番号は、同様の要素を指す。
本明細書で説明する諸実施形態は、コンピュータシステム上でデータを分析するために使用されるデータサマリテーブルに関する。
ここで図1を参照すると、例示的なコンピュータシステム100が示されている。図1に示されているコンピュータシステム100は、例えば、デスクトップコンピュータ、ラップトップコンピュータ、およびハンドヘルドコンピュータなど、様々な形態をとることができる。さらに、コンピュータシステム100が示されているが、本明細書で開示するシステムおよび方法は、様々な代替のコンピュータシステムを用いて実装することができる。
システム100は、プロセッサユニット102、システムメモリ104、およびシステムメモリ104を含む様々なシステムコンポーネントをプロセッサユニット102へ接続するシステムバス106を備えている。システムバス106は、任意の様々なバスアーキテクチャを使用する、メモリバス、周辺バス、およびローカルバスを含む、複数のタイプのバス構造のうちの任意のものとすることができる。システムメモリは、ROM108およびRAM110を含む。コンピュータシステム100内の要素間で情報を転送するのに役立つ基本ルーチンを含むBIOS112は、ROM108に記憶されている。
コンピュータシステム100は、ハードディスクに対して読み書きを行うハードディスクドライブ112と、取り外し可能な磁気ディスク116に対して読み書きを行う磁気ディスクドライブ114と、CD ROM、DVD、またはその他の光媒体などの取り外し可能な光ディスク119に対して読み書きを行う光ディスクドライブ118とをさらに備えている。ハードディスクドライブ112、磁気ディスクドライブ114、および光ディスクドライブ118はそれぞれ、ハードディスクドライブインターフェース120、磁気ディスクドライブインターフェース122、および光ドライブインターフェース124を介してシステムバス106に接続される。これらのドライブおよびそれらに関連するコンピュータ読み取り可能な媒体は、コンピュータ読み取り可能な命令、データ構造、プログラム、およびその他のデータの不揮発性の記憶をシステム100に提供する。
本明細書で説明する例示的な環境では、ハードディスク112、取り外し可能な磁気ディスク116、および取り外し可能な光ディスク119を用いることが可能であるが、例示的なシステム100では、その他のタイプのコンピュータ読み取り可能な媒体を使用して、データを記憶することができる。例示的な動作環境内で使用することが可能な、これらその他のタイプのコンピュータ読み取り可能な媒体の例として、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、RAM、およびROMを挙げることができる。
オペレーティングシステム126、1つまたは複数のアプリケーションプログラム128、その他のプログラムモジュール130、およびプログラムデータ132などの多数のプログラムモジュールを、ハードディスク112、磁気ディスク116、光ディスク119、ROM108、またはRAM110に記憶することができる。
ユーザは、例えば、キーボード134、マウス136、またはその他のポインティングデバイスなどの入力デバイスを介して、コンピュータシステム100にコマンドおよび情報を入力することができる。その他の入力デバイスの例として、ツールバー、メニュー、タッチスクリーン、マイクロフォン、ジョイスティック、ゲームパッド、ペン、衛星放送受信アンテナ、およびスキャナがある。これらおよびその他の入力デバイスは、システムバス106に接続されたシリアルポートインターフェース140を介して、プロセッサユニット102に接続されることが多い。しかしながら、これらの入力デバイスは、パラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB)などのその他のインターフェースを介して接続されてもよい。LCDディスプレイ142またはその他のタイプのディスプレイデバイスもまた、ビデオアダプタ144などのインターフェースを介して、システムバス106に接続される。コンピュータシステムには一般に、ディスプレイ142に加えて、スピーカおよびプリンタなどのその他の周辺出力デバイス(不図示)を含めることができる。
コンピュータシステム100は、リモートコンピュータ146などの、1つまたは複数のリモートコンピュータに対する論理接続を使用して、ネットワーク環境において動作することもできる。リモートコンピュータ146は、コンピュータシステム、サーバ、ルータ、ネットワークPC、ピアデバイス、またはその他の一般的なネットワークノードとすることができる。リモートコンピュータ146は一般に、コンピュータシステム100に関して上述した要素の多くまたはすべてを備えている。ネットワーク接続は、ローカルエリアネットワーク(LAN)148およびワイドエリアネットワーク(WAN)150を含む。そのようなネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネット、およびインターネットにおいて一般的である。
LANネットワーキング環境において使用される場合、コンピュータシステム100は、ネットワークインターフェースまたはネットワークアダプタ152を介してローカルネットワーク148に接続される。WANネットワーキング環境において使用される場合、コンピュータシステム100は一般に、インターネットなどのワイドエリアネットワーク150を介して通信を確立するためのモデム154またはその他の手段を備えている。内蔵型または外付け型とすることができるモデム154は、シリアルポートインターフェース140を介してシステムバス106に接続される。ネットワーク環境において、コンピュータシステム100に関して示されているプログラムモジュールまたはプログラムモジュールの一部分は、リモートメモリ記憶デバイス内に記憶されてもよい。図示されているネットワーク接続は例示的なものであって、コンピュータ間で通信を確立するためのその他の手段が使用されてもよいことを理解されたい。
本明細書で説明する諸実施形態は、コンピューティングシステムにおける論理動作として実装することができる。この論理動作は、(1)コンピュータに実装される連続するステップ、またはコンピュータシステム上で動作するプログラムモジュールとして、および(2)コンピューティングシステム内で動作する相互接続されたロジックまたはハードウェアモジュールとして実装することができる。この実装は、特定のコンピューティングシステムのパフォーマンス要件に応じて選択され得るものである。したがって、本明細書で説明する諸実施形態を構成する論理動作は、動作、ステップ、またはモジュールと呼ばれる。これらの動作、ステップ、およびモジュールは、本明細書に添付された特許請求の範囲内に記述されている本発明の趣旨および範囲から逸脱することなく、ソフトウェア、ファームウェア、専用デジタルロジック、およびそれらの任意の組合せを用いて実装されてもよいということが、当業者には理解されるであろう。こうしたソフトウェア、ファームウェア、または同種の連続するコンピュータ命令は、コンピュータ読み取り可能な記憶媒体に、コード化されて記憶されてもよいし、コンピューティングデバイス間での伝送のために、搬送波信号においてコード化されてもよい。
次に図2を参照すると、例示的なプログラム200が示されている。一例において、プログラム200は、上述したコンピュータシステム100などのコンピュータシステム上で動作するMicrosoft社のEXCEL(登録商標)スプレッドシートソフトウェアプログラムである。プログラム200は、例示的なデータ210のリストを有するスプレッドシート205を含む。ユーザは、データ210からデータサマリテーブルを作成することができる。
例えば、次に図3を参照すると、プログラム200の例示的なユーザインターフェース302が示されている。ユーザインターフェース302は、最初のデータサマリテーブル320を含む(図3では、データサマリテーブル320はブランクである)。データサマリテーブル320は、様々なソースからのデータを用いて作成することができる。図3に示されている一例では、データサマリテーブル320は、以下でさらに説明するように、1つまたは複数のデータベースからのデータを用いて作成することができる。別の実施形態では、データサマリテーブル320は、図2に示されているデータ210などの、スプレッドシート内のデータから作成することができる。
プログラム200のユーザインターフェース302は、データサマリテーブル320を作成し、かつ変更するために使用することができる例示的なタスクペイン450も含む。例えば、タスクペイン450は、データ210からのフィールドのリストを含む。以下でさらに説明するように、ユーザは、タスクペイン450からフィールドを選択/選択解除して、データサマリテーブル320を作成することができる。
I.タスクペイン
次に図4を参照すると、例示的なタスクペイン450が示されている。タスクペイン450は一般に、フィールドペイン452およびレイアウトペイン454を含む。以下でさらに説明するように、タスクペイン450は、データサマリテーブル320を作成し、かつ変更するために使用される。
フィールドペイン452は、所与のデータベースまたはスプレッドシート(例えば、上述した図2に示されているスプレッドシート205)内の各フィールドのリスト453を含む。フィールドのリスト453は、フィールドペイン452によって与えられるスペースよりも長いので、スクロールバー451が提供される。いくつかの実施形態では、フィールドペイン452は(レイアウトペイン454も)、ユーザによってサイズを変更することができる。リスト453内の各フィールドは、フィールドの隣にチェックボックスを含む。例えば、「Profit(収益)」フィールドは、フィールドの見出しの隣に配置されたチェックボックス460を含む。以下で説明するように、リスト453内のフィールドがレイアウトペイン454に付加される場合、そのフィールドに関連付けられたチェックボックスがチェックされる。例えば、「Profit(収益)」フィールドに関連付けられたチェックボックス460は、レイアウトペイン454に付加されているので、チェックされている。
レイアウトペイン454は、タスクペイン450を使用して作成されるデータサマリテーブル320の諸側面(aspect)を表す複数のゾーン(zone)を含む。例えば、レイアウトペイン454は、行ゾーン455、列ゾーン456、値ゾーン457、およびフィルタゾーン458を含む。行ゾーン455は、結果として生じるデータサマリテーブル320用の行のラベルを定める。列ゾーン456は、データサマリテーブル320用の列のラベルを定める。値ゾーン457は、データサマリテーブル320上の要約されたデータ(例えば、総計、差など)を識別する。フィルタゾーン458は、その他のゾーン455、456、457内のすべてのその他のフィールドに適用されるフィルタリングの選択を可能にする(例えば、フィルタゾーン458に1つのフィールドを配置することができ、そのフィールドに関連付けられた1つまたは複数の項目を選択して、フィルタを作成し、フィルタゾーン458内の当該フィールド用に選択された1つまたは複数の項目に関連付けられたレイアウトペイン454内のすべてのその他のフィールド用の項目だけを示すことができる)。
フィールドペイン452の1つまたは複数のフィールドを、レイアウトペイン454の1つまたは複数のゾーンに付加して、データサマリテーブル320を作成し、変更する。図示されている例では、ユーザは、フィールドペイン452のリスト453のフィールドをクリックし、レイアウトペイン454のゾーンのうちの1つにドラッグ&ドロップして、フィールドをデータサマリテーブル320に付加することができる。
例えば、図5に示されているように、ユーザは、「Store Sales(店舗売上)」フィールド466などのフィールドペイン452に含まれる特定のフィールド上で止めることができる。ユーザがフィールド上で止めた場合、ユーザがフィールドペイン452から選択したフィールドをクリックして、レイアウトペイン454のゾーンのうちの1つにドラッグすることができることを示す十字カーソル472が、ユーザに提示される。ユーザがフィールドを選択すると、十字カーソル472は通常のカーソルに戻り、図示されているように、「Store Sales(店舗売上)」フィールド466は、値ゾーン457にドラッグ&ドロップされる。同様に、フィールドは、レイアウトペイン454からフィールドを選択してドラッグすることによって、レイアウトペイン454から除去することができる。
別の例では、ユーザは、フィールドペイン452内の特定のフィールドに関連付けられたチェックボックスをチェックして、そのフィールドをレイアウトペイン454に付加することができる。例えば、ユーザが、図4のタスクペイン450内に示されている「Profit(収益)」フィールドに関連付けられたチェックボックス460を選択した場合、このフィールドは、「Profit(収益)」フィールド462として値ゾーン457に付加することができる。以下でさらに説明するように、プログラム200は、選択されたフィールドを分析し、そのフィールドをレイアウトペイン454の適切なゾーンに配置するようにプログラムすることができる。同様に、ユーザは、チェックされたフィールドを選択解除して、そのフィールドをレイアウトペイン454から除去することができる。例えば、ユーザがチェックボックス460を選択解除した場合、「Profit(収益)」フィールド462はレイアウトペイン454から除去される。
オプションの例では、ユーザがドロップゾーン454のゾーンのうちの1つにフィールドをドラッグすることなく、フィールドを選択するために所与のフィールドをクリックした場合、そのフィールドが配置されるゾーンをユーザが選択できるようにするメニュー(例えば、図6のメニュー482と類似したメニュー)をユーザに提示することができる。
次に図7を参照すると、フィールドペイン452からレイアウトペイン454のゾーンへフィールドを付加するための例示的な方法500が示されている。動作501で、ユーザは、フィールドペイン452内でリストされたフィールドを選択して、そのフィールドをレイアウトペイン454へ付加する。動作502で、ユーザが特定のフィールドに関連付けられたチェックボックスを選択したかどうかについて判定が行われる。ユーザがチェックボックスを選択していた場合、動作503に制御が移り、プログラム200は、選択されたフィールドがレイアウトペイン454のどのゾーンに配置されるかを自動的に判定することができる。次いで、動作507で、そのフィールドが、レイアウトペイン454の適切なゾーンへ付加される。
動作502で、ユーザがチェックボックスを選択していないという判定がなされた場合、動作504に制御が移る。動作504で、ユーザがフィールドを選択し、そのフィールドをレイアウトペイン454のゾーンのうちの1つにドラッグ&ドロップしたかどうかについて判定が行われる。ユーザがレイアウトペイン454のうちの1つのフィールドをドロップしていた場合、動作507に制御が移り、そのフィールドがゾーンに付加される。
動作504で、ユーザがフィールドをドラッグ&ドロップしていないという判定がなされた場合、オプションの実施形態では、ユーザがチェックボックスを選択することなく、またはフィールドをレイアウトペイン454のゾーンにドラッグ&ドロップすることなく、フィールドを選択していることから、動作505に制御が移る。動作505で、プログラムは、フィールドが付加されるゾーンをユーザが選択できるようにするメニューを、ユーザに提示する。次いで、動作506で、ユーザは、所望のゾーンを選択する。動作507で、フィールドはゾーンに付加される。
フィールドがレイアウトペイン454のゾーンに付加されると、動作509に制御が移り、以下で説明するように、それに応じて、プログラム200は、データサマリテーブル320を更新する。
再び図4を参照すると、フィールドペイン452に存在する「Profit(収益)」フィールドなどのフィールドが、レイアウトペイン454のゾーンのうちの1つに付加されると、フィールドペイン452内のフィールドに関連付けられたチェックボックス(例えば、チェックボックス460)は、そのフィールドがデータサマリテーブル320の一部であることを示すためにチェックされる。さらに、フィールドペイン452内のフィールドに関連付けられたフィールドラベルのフォントは太字にされる。同様に、フィールドがまだデータサマリテーブル320の一部になっていない場合(または、フィールドがデータサマリテーブル320から除去されていた場合)、そのフィールドに関連付けられたチェックボックスは、チェックされていないままにされ、そのフィールドは、太字ではなく通常のフォントで示される。データサマリテーブル320の一部であるフィールドを示すためのその他の方法も使用することができる。
フィールドがタスクペイン450のレイアウトペイン454に付加され、レイアウトペイン454から除去された場合、結果として生じるデータサマリテーブル320は、それに応じて変更される。例えば、ユーザには最初に、図3で示されるフィールドペイン452を含むタスクペイン450が提示される。図8を参照すると、ユーザが「Profit(収益)」フィールドをレイアウトペイン454の値ゾーン457へ付加した場合、「Profit(収益)」フィールドに関連付けられたデータの合計が、データサマリテーブル320に自動的に付加される。図9を参照すると、ユーザは、さらなるフィールド(例えば「Sales Average(売上平均)」、「Customer(顧客)」、「Gender(性別)」など)をレイアウトペイン454のゾーンへ付加することができ、データサマリテーブル320は、付加されたフィールドに関連付けられたデータを含むように更新される。
図10を参照すると、ユーザは、タスクペイン450のレイアウトペイン454内の1つのゾーンから別のゾーンへとフィールドを移動させることもでき、データサマリテーブル320は、それに応じて更新される。例えば、ユーザは、「Gender(性別)」フィールドを、列ゾーン456から行ゾーン455へ移動させることができ、データサマリテーブル320は、変更を反映するために、それに応じて、自動的に更新される。ユーザは、所与のゾーン455、456、457、458の中でフィールドを移動させて、データサマリテーブル320内でフィールドが表示される順番を変更することもできる。例えば、ユーザは、行ゾーン455において、「Customer(顧客)」フィールドの上部に「Gender(性別)」フィールドを移動させることができるので、データサマリテーブル320内では、「Gender(性別)」フィールドが、「Customer(顧客)」フィールドよりも先に示される。
次に図6を参照すると、一例において、ユーザが、レイアウトペイン454内に配置された「Product Categories(製品カテゴリ)」フィールド481などのフィールドをクリックして、そのフィールドをドラッグすることなく、そのフィールドを放した場合、ユーザがレイアウトペイン454内でフィールドの配置を操作できるようにするメニュー482が、ユーザに提示される。例えば、メニュー482によって、ユーザは、所与のゾーン内でフィールドの位置を変更させ(すなわち、「Move Up(上へ移動)」、「Move Down(下へ移動)」、「Move to Beginning(先頭に移動)」、「Move to End(末尾に移動)」)、ゾーン間でフィールドを移動させ(すなわち、「Move to Row Labels(行ラベルへ移動)」、「Move to Values(値へ移動)」、「Move to Column Labels(列ラベルへ移動)」、「Move to Report Filter(レポートフィルタへ移動)」)、レイアウトペイン454からフィールドを除去する(すなわち、「Remove Field(フィールドを除去)」)ことができる。特定のフィールドのために利用可能なオプションだけが、メニュー482内で有効な選択肢として示される(例えば、フィールド481はすでに行ゾーン455内にあるので、この例では、「Move to Row Labels(行ラベルへ移動)」は、有効ではないものとして示されている)。
再び図4を参照すると、タスクペイン450は、手動更新チェックボックス469も含む。チェックボックス469が選択された場合、結果として生じるデータサマリテーブル320は、フィールドが付加され、再配置され、タスクペイン450のレイアウトペイン454から除去されるときに、自動的に更新されることはない。例えば、ユーザが手動更新チェックボックス469を選択し、次いでフィールドをレイアウトペイン454の行ゾーン455へ付加した場合、データサマリテーブル320は、新たに付加されたフィールドを反映するために、自動的に更新されることはない。代わりに、更新は、変更がなされると有効になる手動更新ボタン471をユーザが選択した後で生じ、手動更新を実行することができる。手動更新を使用することにより、データサマリテーブル320を作成するためにかなりの読み出しおよび処理時間を要する大量のデータを用いる作業の際に、効率を高めることができる。このように、データサマリテーブル320の作成または変更の前に、所望のフィールドおよびフィルタリングを選択することが可能であり、このことは、手動更新ボタン471を選択した際に生じるので、効率性を向上させることができる。
図11を参照すると、フィールドペイン452内に示されているフィールドは、「オンライン分析処理」(OLAP)型のデータフィールドを表している(それに対し、図5のフィールドペイン452内に示されているフィールドは、非OLAP型であり、しばしばリレーショナルフィールド(relational field)と呼ばれる)。OLAPは、データベースに記憶されたデータの分析を提供する分類のツールである。OLAPツールによって、ユーザは、異なるディメンジョンのマルチディメンジョンデータを分析することができる。OLAPデータフィールドは、複数のレベルが存在する階層構造内に配置される。例えば、「Sales Fact(売上実績) 1991」フィールドは、「Store Sales(店舗売上)」、「Unit Sales(売上数量)」および「Store Cost(店舗コスト)」というサブフィールドを含む。サブフィールドを展開したり、折り畳んだりするためのドリルインジケータ(プラス/マイナス +/−サイン)556をクリックすることによって、サブフィールドにアクセスすることができる。OLAPデータは、階層および数量(measure)を有するディメンジョンに配置させることができる。
図示されている実施形態において、フィールドペイン452内にリストされている各フィールドは、複数のコンポーネントを含む。フィールドは、フィールドの上で止めるか、またはフィールドをクリックすることによって、強調表示することができる。例えば、図11に示されている「Product(製品)」フィールドなどの各フィールドは、ユーザがフィールドを選択してドラッグすることを可能にする選択領域558および559を含む。各フィールドはまた、データサマリテーブル320にフィールドを付加し、データサマリテーブル320からフィールドを除去するために使用することが可能なチェックボックス560も含む。さらに、OLAPデータ型の各フィールドには、フィールドに関連付けられたサブフィールドを展開したり、折り畳んだりするために使用されるドリルインジケータ556を含めることができる。さらに、各フィールドは、以下でさらに説明するように、フィルタリングオプションにアクセスするために使用されるドロップダウン領域562を含む。
再び図4を参照すると、タスクペイン450は、ユーザがタスクペイン450のレイアウトを変更できるようにするコントロール470も含む。例えば、ユーザは、図12に示されているように、コントロール470を選択して、レイアウトメニュー572にアクセスすることができる。レイアウトメニュー572を使用して、ペイン452および454を配置する。例えば、ユーザがコントロール470において「Fields and Layout stacked(積み重ねられたフィールドおよびレイアウト)」573を選択した場合、フィールドペイン452は、図4に示されているように、単一の一体化されたペインを形成するように、タスクペイン450内でレイアウトペイン454の上部に配置される。ユーザがコントロール470において「Fields and Layout side by side(横に並べられたフィールドおよびレイアウト)」574を選択した場合、フィールドペイン452は、図13に示されているように、単一の一体化されたペインを形成するように、タスクペイン450内でレイアウトペイン454の横に並んで配置される。ユーザがコントロール470において「Fields only(フィールドのみ)」575を選択した場合、フィールドペイン452は、図14に示されているように独立して示される。ユーザがコントロール470において「Layout only 2 by 2(2×2のレイアウトのみ)」576を選択した場合、レイアウトペイン454は、図15に示されているように、2×2の四角形であるゾーン455、456、457、458とともに独立して示される。ユーザがコントロール470において「Layout only 1 by 4(1×4のレイアウトのみ)」577を選択した場合、レイアウトペイン454は、図16に示されているように、1×4の四角形であるゾーン455、456、457、458とともに独立して示される。
図5に示されている例では、フィールドペイン452内のフィールドが、アルファベット順でリストされている。図4に示されているものなどのOLAP型データを含むリストに関しては、数量が最初に示され、その後に、ディメンジョンがアルファベット順で示される。図示されている例では、ディメンジョンフォルダは、展開された形態で示されており、すべてのその他のフィールドは、折り畳まれた形態で示されている。その他の構成を使用することもできる。
II.レイアウトペインにおけるフィールドの自動配置
再び図4を参照すると、ユーザがフィールドに関連付けられたチェックボックスをチェックすることによって、そのフィールドを選択した場合、プログラム200は、後述するように、選択したフィールドをレイアウトペイン454のゾーンのうちの1つへ自動的に配置するようにプログラムされている。
一般に、数値型のフィールドは値ゾーン457へ付加され、非数値型のフィールドはレイアウトペイン454の行ゾーン455に付加される。例えば、数値型のフィールド(例えば、会計上の売上高など)は通常、集計されて値ゾーン457に配置される。一方、非数値型のフィールド(例えば、製品名など)は通常、行ラベルとして使用され、したがって、自動的に行ゾーン455に配置される。
次に図17を参照すると、選択されたフィールドをレイアウトペイン454のゾーンのうちの1つへ自動的に付加するための例示的な方法600が示されている。動作601で、ユーザは、例えば、フィールドに関連付けられたチェックボックスを使用して、フィールド452内のフィールドを選択する。次いで、動作602で、そのフィールドが数値型であるかどうかについて判定が行われる。フィールドが数値型である場合、動作603に制御が移り、フィールドは、集計のために値ゾーン457へ付加される。動作602で、フィールドが数値型ではないと判定された場合、動作604に制御が移り、フィールドは、行ゾーン455に付加される。
いくつかの実施形態において、数値型のフィールドは、当該フィールドを値ゾーン457に付加する前に、レイアウトペイン454内で異なる配置がより適切であるかどうかを判定するために、さらに分析することができる。例えば、フィールドが、複数の郵便番号コード値を含む数値型であっても、通常は、そうしたフィールドは、値ゾーン457に配置されるよりも、行ゾーン455に配置されることが望ましい。このため、いくつかの実施形態では、数値型のフィールドは、レイアウトペイン454内での望ましい配置を識別するために、データセマンティクスを使用してさらに分析される。
一実施形態において、以下の例示的な表1などのルックアップテーブルを使用して、値ゾーン457ではなく、行ゾーン455へ付加される数値型のフィールドを識別する。
Figure 0004482602
以下でさらに説明するように、表1において、「フィールド型文字列」という列は、選択されたフィールドの見出しと比較されるテキスト文字列を含む。示されている例では、選択されたフィールドの見出しは、大文字と小文字との区別をしない合致を識別するために、表1のフィールド型文字列の列内における各文字列と比較される。
フィールド型文字列の列内におけるテキスト文字列と、選択されたフィールドの見出しとが合致した場合、フィールド内の数値項目は、表1の「最小値」および「最大値」の列内における値を使用して、さらに分析される。最小値の列内における値は、所与のフィールド型文字列の型における任意の項目の最小値を定めている。最大値の列内における値は、所与のフィールド型文字列の型における任意の項目の最大値を定めている。特定のフィールド型文字列の型用に、最小値が表1内で定義されていない場合、数値項目が最大値を下回る整数であるかどうかについて判定が行われる。特定のフィールド型文字列の型用に、最大値が定義されていない場合、数値項目が最小値を上回る整数であるかどうかについて判定が行われる。特定のフィールド型文字列の型用に、最小値も最大値も定義されていない場合、数値項目が整数であるかどうかについて判定が行われる。
例えば、選択されたフィールドが、「Month」という見出しを含む場合、表1が解析されて、フィールド型文字列の値「month」によって、合致が識別される。次に、そのフィールドに関連付けられた数値が、(1月から12月までを表している)最小値「1」以上最大値「12」以下であるかどうかを判定するために解析される。一実施形態では、フィールドのすべての数値項目がテストされる。かなり多くの数値項目が存在する場合などの別の実施形態では、数値項目のサンプルのみが、表1の最小値および最大値に対してテストされる。すべての値が最小値以上最大値以下である場合、以下でさらに説明するように、そのフィールドは、値ゾーン457ではなく、行ゾーン455に付加される。
表1内に示されているテキスト文字列、最小値、および最大値は、例示にすぎず、異なる文字列および値を使用することが可能である。例えば、テキスト文字列および最小値/最大値は、データが生成される地理的位置に応じて変更することができる(例えば、電話番号の値は、地理的位置に応じて異なり得る)。別の実施形態では、異なるタイプのセマンティックチェックを使用することができる。例えば、数値項目の桁数を、数値項目の実際の値のチェックに加えて、またはその代わりに分析することもできる。例えば、フィールドの見出しがテキスト文字列「zip」(すなわち、郵便番号コード)と合致した場合、フィールド内の数値項目の桁数は、最小の5桁(例えば、「90210」は5個の桁を含む)以上、最大の10桁(例えば、「90210−1052」は10個の桁を含む)以下であるかどうかを確認するために調べることができる。
次に図18を参照すると、レイアウトペイン454における、選択されたフィールドの自動配置のための例示的な方法610が示されている。方法610は、数値型のフィールドがさらに分析されることを除いて、上述した方法600に類似している。動作611で、ユーザは、例えば、フィールドに関連付けられたチェックボックスを使用して、フィールドペイン452内のフィールドを選択する。次いで、動作612で、フィールドが数値型であるかどうかについて判定が行われる。フィールドが非数値型である場合、動作613に制御が移り、フィールドが行ゾーン455に付加される。
動作612で、フィールドが数値型であると判定された場合、動作615に制御が移る。動作615で、フィールドの見出しが解析され、動作616で、その見出しが、上記の表1に示されているようなテキスト文字列のルックアップテーブルと比較される。動作616で、見出しとテキスト文字列とが合致しなかった場合、動作619に制御が移り、フィールドが値ゾーン457に付加される。見出しと表1のテキスト文字列とが合致した場合、動作617に制御が移る。
動作617でフィールドの数値項目が解析され、動作618で、数値項目の値が、テキスト文字列に関連付けられた表1内の最小値および最大値と比較される。上述したように、数値項目が最小値以上最大値以下の範囲に入らない場合、動作619に制御が移り、フィールドが値ゾーン457に付加される。動作618で、数値項目が最小値以上最大値以下の範囲に入る場合、動作613に制御が移り、フィールドが行ゾーン455に付加される。
このようにして、特定の数値型のフィールドを自動的に識別して、デフォルトの値ゾーン457ではなく、行ゾーン455に配置させることができる。プログラム200によって、フィールドがレイアウトペイン454の特定のゾーン内に自動的に配置され、かつユーザがそのフィールドを異なるゾーンに配置したいと望む場合、ユーザは、そのフィールドを選択して、所望のゾーンにドラッグすることができる。
いくつかの実施形態では、日付情報に関連付けられたフィールドは、識別されて、行ゾーン455または値ゾーン457ではなく、列ゾーン456に配置される。例えば、図19に示されている方法630は、上述した方法610に類似しており、動作611〜619を含む。しかしながら、動作618で、数値項目が最小値以上最大値以下の範囲に入る場合、動作631に制御が移る。動作631で、フィールドが日付フィールドであるかどうかについて判定が行われる。示されている例では、この判定は、見出しが合致するテキスト文字列によって行われる。例えば、フィールドの見出しがテキスト「Date」を含み、かつ表1内のテキスト文字列「date」と合致した場合、そのフィールドは、日付フィールドとして識別される。フィールドが日付フィールドである場合、動作632に制御が移り、フィールドが列ゾーン456に付加される。フィールドが日付フィールドではない場合、動作613に制御が移り、フィールドが行ゾーン455に付加される。
代替実施形態において、特定のフィールドに関連付けられたメタデータを使用して、フィールドに関する属性を識別することができる。例えば、メタデータを使用して、フィールドが数値フィールドおよび/または日付フィールドであるかどうかを識別することができる。
いくつかの実施形態では、OLAPデータを示すフィールドを、レイアウトペイン454およびデータサマリテーブル320に自動的に付加する際に、以下のルールが使用される:
A.OLAP階層/OLAPと名付けられたセット
1.階層は、行ゾーンに付加される
2.階層は、行ゾーン内におけるすべての別のフィールドの内部でネストされる
3.複数のレベルが存在する階層については、最高レベルのフィールドがデータサマリテーブル内に表示され、ユーザは、より低いレベルのフィールドを見るためにドリルすることができる
B.OLAP数量/OLAP KPI表現式
1.少なくとも1つの数量がすでに付加されている場合、数量は、すでに付加されている数量と同じゾーンに付加される
2.第2数量の付加は、データフィールド(例えば、図10の「Σ Value」フィールドを参照のこと)をレイアウトペイン内に取り込み(introduce)、データフィールドは、デフォルトとして列ゾーンに配置される。値ゾーン内に複数のフィールドが存在する場合、データフィールドは、レイアウトゾーンに配置される
3.付加される場合、データフィールドは、列ゾーン内におけるすべての別のフィールドの内部でネストされる
4.データフィールドは、行ゾーン内または列ゾーン内のいずれかに存在する
いくつかの実施形態では、非OLAPデータを示すフィールドまたはリレーショナルフィールドを、レイアウトペイン454およびデータサマリテーブル320に自動的に付加する際に、以下のさらなるルールが使用される:
A.非数値フィールドについては、フィールドは、行ゾーンに付加される。フィールドは、行ゾーン内におけるすべての別のフィールドの内部でネストされる
B.数値フィールドについては、フィールドは、値ゾーンに付加される
1.少なくとも1つのフィールドがすでに値ゾーン内にある場合、このフィールドは、すでに付加されているフィールドと同じゾーンに付加されることになる
2.値ゾーンへの第1フィールドの付加は、データフィールドをレイアウトペイン内に取り込み、データフィールドは、デフォルトとして列ゾーンに配置される
3.付加される場合、データフィールドは、列ゾーン内におけるすべての別のフィールドの内部でネストされる
4.データフィールドは、行ゾーン内または列ゾーン内のいずれかに存在する
III.フィルタリングタスクペイン
再び図11を参照すると、1つまたは複数のフィルタは、データサマリテーブル320内に含まれる情報を制限するために、特定のフィールドの項目に適用することができる。例えば、ユーザは、タスクペイン450のフィールドペイン452内にリストされた特定のフィールド用のドロップダウン領域562を使用して、フィルタリングタスクペイン700にアクセスすることができる。
次に図20を参照すると、例示的なフィルタリングタスクペイン700が示されている。インターフェース700は一般に、フィールドセレクタドロップダウンコントロール705、手動フィルタ領域707、およびフィルタリングコントロール領域709を含む。
セレクタドロップダウンコントロール705を使用して、フィルタリングのための異なるフィールドを選択することができる。OLAPデータについては、セレクタドロップダウンコントロール705におけるフィールドは、階層的な配置によって表示することができ、ドロップダウンコントロール705を使用して、フィルタリングのための異なるレベルのOLAPデータを選択することができる。図示されている例では、選択されたフィールドは、「Country(国)」フィールドである。
手動フィルタ領域707は、セレクタドロップダウンコントロール705において示されたフィールドに関連付けられたすべての項目をリストする。チェックボックスを、手動フィルタ領域707内にリストされた各項目に関連付けて、フィルタに含まれる項目をユーザが手動で選択することを可能にする。図21を参照すると、OLAPデータについては、ドリルインジケータ プラス/マイナス(+/−)サインをクリックして、手動フィルタ領域707内にリストされた各フィールドに関連付けられた項目を展開したり、折り畳んだりすることによって、サブ項目にアクセスすることができる。例えば、「Drink(飲料)」および「Food(食品)」という項目が、展開された形態で示されている。チェックボックス713は、「Food(食品)」の項目用に選択され、その結果、「Food(食品)」の各サブ項目を選択することにもつながる。「Drink(飲料)」の項目については、「Alcoholic Beverages(アルコール飲料)」のサブ項目のみが選択され、「Drink(飲料)」の項目に関連付けられたチェックボックス712には、「Drink(飲料)」項目のサブ項目のうちの一部のみが選択されていることを示すために、ミックスインジケータ(mix indicator)が提示される。「select all(すべて選択)」チェックボックス711を選択して、フィルタ領域707に示されるすべてのレベルで、各々の項目を選択/選択解除することができる。
再び図20を参照すると、ユーザが異なるフィールドを選択するためにセレクタドロップダウンコントロール705を使用した場合、それに応じて、手動フィルタ領域707は、セレクタドロップダウンコントロール705に示されるフィールドに関連付けられた項目をリストするために、更新される。新たに選択されたフィールドが、セレクタドロップダウンコントロール705において、元々選択されたフィールドと同じ階層の別のレベルからのものである場合、すべてのレベルの項目がOLAPデータ用に手動フィルタ領域707内に示されるので、手動フィルタ領域707は変更されないままである。
フィルタリングコントロール領域709は、セレクタドロップダウンコントロール705において示される選択されたフィールドに対する適用のために利用可能なフィルタコントロールをリストする。コントロール710によって、ユーザは、フィルタリングされた項目がリストされる順番を変更することができる。例えば、ユーザは、コントロール710のうちの1つを選択して、フィルタリングされた項目がAからZ、または、ZからAのアルファベット順でリストされるようにすることができる。コントロール715を使用して、特定のフィールドによってソートすることなどの、さらなるソートのオプションを提供することができる。
ユーザは、コントロール720を選択して、ドロップダウンセレクタ705におけるフィールド用のすべてのフィルタリングを除去することができる。コントロール725および730によって、ユーザは、特定のフィルタを選択して、ドロップダウンセレクタ705におけるフィールドに適用することができる。例えば、ユーザがコントロール725を選択した場合、図22に示されているように、ユーザにはフライアウトメニュー(fly−out menu)740が提示される。メニュー740は、選択されたフィールドに適用することが可能な複数のフィルタをリストする。メニュー740にリストされているフィルタは、通常はラベルフィールドに適用されるフィルタである。このフィルタには、「Begins With(で始まる)」、「Does Not Begin With(で始まらない)」、「Ends With(で終わる)」、「Does Not End With(で終わらない)」、「Contains(を含む)」、および「Does Not Contain(を含まない)」が含まれるが、これらに限定されるものではない。ユーザは、メニュー740からフィルタを選択して、そのフィルタをフィールド内の項目に適用することができる。同様に、ユーザは、コントロール730を選択して、図23に示されているように、フライアウトメニュー745にアクセスすることができる。メニュー745は、値フィールドに適用することが可能なフィルタを含む。このフィルタには、「Equals(と等しい)」、「Does Not Equal(と等しくない)」、「Greater Than(より大きい)」、「Greater Than Or Equal To(以上)」、「Less Than(より小さい)」、「Less Than Or Equal To(以下)」、「Between(の間にある)」、および「Not Between(の間にない)」が含まれるが、これらに限定されるものではない。
次に図24を参照すると、ユーザが、フライアウト740、745のうちの1つからフィルタを選択した場合、ユーザには、所望のフィルタを構築するために、ダイアログボックス760などのダイアログボックスが提示される。ダイアログボックス760には、セレクタドロップダウンコントロール705において選択されたフィールドを含むフィールド選択ボックス772が予め配置されており、フラウアウト740、745から選択されたフィルタを含むフィルタ選択ボックス774が予め配置されている。ユーザは、フィールド選択ボックス772におけるドロップダウンメニューを選択することによって異なるフィールドを選択して、例えば、値ゾーン457内に現在含まれている別のフィールドにアクセスすることができる。ユーザは、フィルタ選択ボックス774におけるドロップダウンメニューを選択することによって異なるフィルタを選択して、データ型用に利用可能なすべてのフィルタのリストを提供することができる。基準ボックス776によって、ユーザは、基準ボックス776におけるフィルタリングのために、値を配置させることができる。例えば、ユーザが、手動フィルタ領域707内で、「Store Sales(店舗売上)」という項目を選択し、次いでフライアウト745から「Greater Than(より大きい)」というフィルタを選択した場合、ダイアログボックス770が、ユーザに提示される。ユーザは、基準ボックス776に「50000」という値を入力して、50000ドルよりも多いすべての店舗売上をフィルタリングするフィルタを設定することができる。
次に図25を参照すると、コントロール725および730は、セレクタドロップダウンコントロール705において示されているフィールドの型に応じて、変更することが可能である。例えば、タスクペイン700は、データ型のフィールドを含み、したがって、日付によるフィルタリングを可能にするコントロール725と、値によるフィルタリングを可能にするコントロール730とを含む。ユーザは、コントロール725を選択して、図26に示されているように、フライアウトメニュー760にアクセスすることができる。フライアウトメニュー760は、データ型のフィールドに適用することが可能な複数のフィルタを含む。
いくつかの実施形態では、選択されたフィールドに対して適用可能なコントロールのみが、ユーザに提示される。例えば、ユーザが、日付型でも数値型でもない型のフィールドを選択した場合、コントロール725は、そのようなフィールドに対して適用可能なフィルタを含むフライアウトメニュー740を提供するために有効になる。ユーザが日付フィールドを選択した場合、コントロール725は、日付フィールドに対して適用可能なフィルタを含むフライアウトメニュー760を提供するために有効になる。ユーザが、日付型ではない数値型のフィールドを選択した場合、コントロール730は、数値データフィールドに対して適用可能なフィルタを含むフライアウトメニュー745を提供するために有効になる。
いくつかの実施形態では、フィルタは、所与のフィールドがデータサマリテーブル320へ付加される前に、当該所与のフィールドに関連付けることができる。フィルタは、実際には、特定のフィールドがデータサマリテーブル320に付加される場合に適用される。このようにして、データサマリテーブル320上でアクセスされ、要約されるデータの量を減少させることが可能であり、それによって効率性を高めることができる。フィルタが、データサマリテーブル320内にすでに含まれているフィールドに適用される場合、データサマリテーブル320は、フィルタリングされた項目のみを示すために、フィルタを考慮して更新される。
データへの選択されたフィルタの適用に関するさらなる詳細は、2005年6月21日に出願された、米国特許出願番号11/157634、代理人整理番号14917.0108US01/31178.01である、「Dynamically Filtering Aggregate Reports Based on Values Resulting from One or More Previously Applied Filters」という名称の明細書において確認することができる。米国特許出願番号11/157634の明細書は、参照することにより、その全体が本明細書に組み込まれる。
フィルタリングペイン700内のチェックボックスインジケータ752(図5参照)は、適用されている任意のフィルタの隣に配置される。ここで図27を参照すると、フィルタが所与のフィールドに適用されると、フィルタがフィールドに適用されていることを示すために、タスクペイン450のフィールドペイン452内のフィールドの隣にフィルタアイコン810が示される。いくつかの実施形態では、同様のフィルタアイコンがまた、レイアウトペイン454およびデータサマリテーブル320内のフィルタリングされた各フィールドに関連付けられている。
さらに、ポインティングデバイスが、フィルタアイコン810を伴う特定のフィルタ上で止まる場合、図28に示されているように、ツールチップ830が提示される。ツールチップ830は、手動フィルタ、ラベルフィルタ、および値フィルタの3つの部分のうちの1つにおいてフィルタリングされたフィールドをリストする。ツールチップ830はまた、適用されるフィルタの型による評価の順序で、フィルタリングされたフィールドをリストする。より長いラベルに関するフィルタの場合、ラベルの一部は、ツールチップ内に適合するように、必要に応じて切り取ることができる。各フィルタに関して、ツールチップ830は、手動フィルタが、最初に2000年、2001年、2002年、2003年、および2004年に対して「Year(年)」フィールドに適用されるということを示している。次いで、ツールチップ830は、テキストフィルタが、「ab」というテキストを要する「Product Name(製品名)」フィールドに適用されることを示している。さらなるフィルタリングもツールチップ830に示される。このようにして、ユーザは、どのフィルタがデータサマリテーブル320に対して適用されるのかを識別することができ、またツールチップ830を調べることによって、フィルタが適用される順序を識別することができる。
図示されている例では、ユーザは、タスクペイン450内でリストされた特定のフィールドのドロップダウン領域562(図11参照)を使用して、フィルタリングタスクペイン700にアクセスすることができる。ユーザが、データサマリテーブル320からインターフェース700にアクセスする場合、セレクタドロップダウンコントロール705に示されているデフォルトのフィールドが、データサマリテーブル320内で現在選択されているフィールドである。ユーザは、セレクタドロップダウンコントロール705を使用して、別のフィールドを選択することができる。別の実施形態では、データサマリテーブル320内のドロップダウン領域862を選択することによって、データサマリテーブル320内からフィルタリングタスクペイン700にアクセスすることも可能である。図9を参照されたい。別の実施形態では、ユーザは、データサマリテーブル320内で1つまたは複数のフィールドを選択し、選択されたフィールドの上を右クリックすることによって、フィルタリングタスクペイン700にアクセスして、1つまたは複数のフィルタリングオプションにアクセスすることができる。これらのオプションには、例えば、手動フィルタを用いて選択されたフィールドを含有すること、もしくは除外すること、または、上述したように、ラベルフィルタ、日付フィルタ、もしくは値フィルタを使用して、選択されたフィールドをフィルタリングすることを含めることができる。
フィルタリングタスクペイン700がデータサマリテーブル320からアクセスされる場合、ドロップダウンコントロール705内でリストされているフィールドは、ユーザがインターフェース700にアクセスする位置に基づいて選択することができる。例えば、ユーザが、データサマリテーブル320の行におけるフィールドからドロップダウン領域862を選択した場合、行に現在存在するすべてのフィールドが示される。代わりに、ユーザが、データサマリテーブル320の列におけるフィールドからドロップダウン領域862を選択した場合、列に現在存在するすべてのフィールドが示される。
示されている例では、フィルタリング情報は、当該フィルタリングが適用される特定のフィールドとともに記憶される。例えば、フィルタリングが、データサマリテーブル320の一部ではないフィールドに適用される場合、フィルタリング情報は、そのフィールドに関連付けられ、そのフィールドがデータサマリテーブル320に付加されたときに適用される。同様に、フィルタを伴うフィールドがデータサマリテーブル320から除去された場合、フィルタリング情報は、そのフィールドとともに保持されるので、そのフィールドが後でデータサマリテーブル320に再び付加された場合には、そのフィルタが再び適用される。上述したように、フィールドに関するフィルタリングは、フィールドを選択し、次いでコントロール720(図20参照)を選択することによって、除去することができる。
上述した様々な実施形態は、単に例として提供したにすぎず、限定的なものとして解釈すべきではない。本明細書で示され、説明されている例示的な実施形態および適用例に完全に従うことは必要とせず、また特許請求の範囲に記述されている本発明の真の趣旨および範囲から逸脱することなく、様々な変形および変更が可能であることが、当業者には容易に理解されよう。
例示的な汎用コンピューティングシステムを示す図である。 例示的なスプレッドシートプログラムのシートを示す図である。 スプレッドシートプログラムの例示的なデータサマリテーブルおよびタスクペインを示す図である。 図3のタスクペインの一例を示す図である。 タスクペインの別の例を示す図である。 タスクペインのレイアウトペインにおいてフィールドを置き換えるための例示的なメニューを示す図である。 図4のタスクペインのレイアウトペインにおいてフィールドを置き換えるための例示的な方法を示す図である。 フィールドが表に付加されている、図3の例示的なデータサマリテーブルおよびタスクペインを示す図である。 複数のフィールドが表に付加されている、図3の例示的なデータサマリテーブルおよびタスクペインを示す図である。 フィールドが表上で再配置されている、図9の例示的なデータサマリテーブルおよびタスクペインを示す図である。 タスクペインの別の例を示す図である。 図11のタスクペインのレイアウトを変更するための例示的なメニューを示す図である。 異なるレイアウトの図11の例示的なタスクペインを示す図である。 異なるレイアウトの図11の例示的なタスクペインを示す図である。 異なるレイアウトの図11の例示的なタスクペインを示す図である。 異なるレイアウトの図11の例示的なタスクペインを示す図である。 図4のタスクペインのレイアウトペインにおいてフィールドを配置するための例示的な方法を示す図である。 図4のタスクペインのレイアウトペインにおいてフィールドを配置するための別の例示的な方法を示す図である。 図4のタスクペインのレイアウトペインにおいてフィールドを配置するためのさらに別の例示的な方法を示す図である。 例示的なフィルタリングタスクペインを示す図である。 別のフィルタリングタスクペインのための例示的な手動フィルタ領域を示す図である。 図20のフィルタリングタスクペインの例示的なフライアウトメニューを示す図である。 図20のフィルタリングタスクペインの別の例示的なフライアウトメニューを示す図である。 図20のフィルタリングタスクペインの例示的なダイアログボックスを示す図である。 フィルタリングタスクペインの別の例を示す図である。 図25のフィルタリングタスクペインの例示的なフライアウトメニューを示す図である。 タスクペインの別の例を示す図である。 図27のタスクペインの例示的なツールチップを示す図である。

Claims (14)

  1. プロセッサによって実行されるとき、データサマリテーブルを作成するためのグラフィカルユーザインターフェースを提供するコンピュータ実行可能命令を有するコンピュータ読み取り可能記録媒体であって、前記グラフィカルユーザインターフェースは、
    複数のフィールドを含むペインと、
    データサマリテーブルと
    を含み、
    前記グラフィカルユーザインターフェースは、前記データサマリテーブル内に含めるためのフィールドが選択されると、前記フィールドの型を識別するために前記フィールドの見出しを文字列のリストと比較し、前記フィールドの型を検証するために前記フィールドの項目を最小値又は最大値と比較するようにプログラムされ、
    前記グラフィカルユーザインターフェースは、前記フィールドの型に基づいて、前記フィールドを前記データサマリテーブル内に自動的に配置するようにプログラムされていることを特徴とするコンピュータ読み取り可能記録媒体。
  2. 前記グラフィカルユーザインターフェースは、複数のゾーンを含むレイアウトペインを含み、前記ゾーンは、前記データサマリテーブルの領域を表し、前記グラフィカルユーザインターフェースは、前記レイアウトペインのゾーン内の前記フィールドを自動的に配置するようにプログラムされていることを特徴とする請求項1に記載のコンピュータ読み取り可能記録媒体。
  3. 前記グラフィカルユーザインターフェースは、前記フィールドが数値型かどうかを識別するようにプログラムされていることを特徴とする請求項1に記載のコンピュータ読み取り可能記録媒体。
  4. 前記グラフィカルユーザインターフェースは、前記フィールドが数値型である場合、前記フィールドの項目を要約するようにプログラムされていることを特徴とする請求項3に記載のコンピュータ読み取り可能記録媒体。
  5. 前記グラフィカルユーザインターフェースは、前記フィールドが非数値型である場合、前記フィールドを配置するために前記データサマリテーブルの行を選択するようにプログラムされていることを特徴とする請求項1に記載のコンピュータ読み取り可能記録媒体。
  6. 前記グラフィカルユーザインターフェースは、前記フィールドが日付型である場合、前記フィールドを配置するために前記データサマリテーブルの列を選択するようにプログラムされていることを特徴とする請求項1に記載のコンピュータ読み取り可能記録媒体。
  7. データサマリテーブルのためのグラフィカルユーザインターフェースを提供するコンピュータシステムにおける方法であって、
    複数のフィールドを有する前記グラフィカルユーザインターフェースから選択された1つのフィールドを受け取るステップと、
    受け取った前記フィールドの型を識別するステップであって、セマンティクスを使用して受け取った前記フィールドの見出しを文字列のリストと比較して分析し、前記フィールドの項目を最小値又は最大値と比較する、ステップと、
    前記フィールドを配置するためにデータサマリテーブルの領域を選択するステップであって、前記フィールドが非数値型である場合、前記データサマリテーブルの行を選択し、前記フィールドが日付型である場合、前記データサマリテーブルの列を選択する、ステップと、
    前記フィールドが数値型であって前記日付型でない場合、前記フィールドを要約するステップと、
    前記フィールドを前記データサマリテーブルの前記領域に付加するステップと
    を備えることを特徴とする方法。
  8. 前記選択するステップは、
    前記フィールドを配置するためにタスクペインのゾーンを選択するステップと、
    前記フィールドを前記タスクペインの前記ゾーンに付加するステップと
    をさらに備えることを特徴とする請求項7に記載の方法。
  9. 前記識別するステップは、前記フィールドが前記数値型かどうかを識別するステップをさらに備えることを特徴とする請求項7に記載の方法。
  10. 前記選択するステップは、前記フィールドが前記数値型である場合、前記フィールドを要約するステップをさらに備えることを特徴とする請求項9に記載の方法。
  11. 複数のフィールドを有するグラフィカルユーザインターフェースから選択された1つのフィールドを受け取るステップと、
    受け取った前記フィールドの型を識別するステップであって、セマンティクスを使用して受け取った前記フィールドの見出しを文字列のリストと比較して分析し、前記フィールドの項目を最小値又は最大値と比較する、ステップと、
    前記フィールドを配置するためにデータサマリテーブルの領域を選択するステップであって、前記フィールドが非数値型である場合、前記データサマリテーブルの行を選択し、前記フィールドが日付型である場合、前記データサマリテーブルの列を選択する、ステップと、
    前記フィールドが数値型であって前記日付型でない場合、前記フィールドを要約するステップと、
    前記フィールドを前記データサマリテーブルの前記領域に付加するステップと
    を実行するためのコンピュータ実行可能命令を有することを特徴とするコンピュータ読み取り可能記録媒体。
  12. 前記選択するステップは、
    前記フィールドを配置するためにタスクペインのゾーンを選択するステップと、
    前記フィールドを前記タスクペインの前記ゾーンに付加するステップと
    をさらに備えることを特徴とする請求項11に記載のコンピュータ読み取り可能記録媒体
  13. 前記識別するステップは、前記フィールドが前記数値型かどうかを識別するステップをさらに備えることを特徴とする請求項11に記載のコンピュータ読み取り可能記録媒体
  14. 前記選択するステップは、前記フィールドが前記数値型である場合、前記フィールドを要約するステップをさらに備えることを特徴とする請求項13に記載のコンピュータ読み取り可能記録媒体
JP2008530101A 2005-09-09 2006-08-29 データサマリテーブルにおけるフィールドの自動配置 Active JP4482602B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/222,660 US7480675B2 (en) 2005-09-09 2005-09-09 Automated placement of fields in a data summary table
PCT/US2006/033876 WO2007032913A1 (en) 2005-09-09 2006-08-29 Automated placement of fields in a data summary table

Publications (3)

Publication Number Publication Date
JP2009508221A JP2009508221A (ja) 2009-02-26
JP2009508221A5 JP2009508221A5 (ja) 2009-10-08
JP4482602B2 true JP4482602B2 (ja) 2010-06-16

Family

ID=37865259

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008530101A Active JP4482602B2 (ja) 2005-09-09 2006-08-29 データサマリテーブルにおけるフィールドの自動配置

Country Status (8)

Country Link
US (1) US7480675B2 (ja)
EP (1) EP1922649B1 (ja)
JP (1) JP4482602B2 (ja)
KR (1) KR101301363B1 (ja)
CN (1) CN101278279B (ja)
BR (1) BRPI0615459B1 (ja)
RU (1) RU2417421C2 (ja)
WO (1) WO2007032913A1 (ja)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8601383B2 (en) 2005-09-09 2013-12-03 Microsoft Corporation User interface for creating a spreadsheet data summary table
US8095866B2 (en) * 2005-09-09 2012-01-10 Microsoft Corporation Filtering user interface for a data summary table
US7627812B2 (en) 2005-10-27 2009-12-01 Microsoft Corporation Variable formatting of cells
US7770100B2 (en) * 2006-02-27 2010-08-03 Microsoft Corporation Dynamic thresholds for conditional formats
US8645321B1 (en) 2006-05-31 2014-02-04 Verizon Data Services Llc Asynchronous data integrity for enterprise computing
US8161075B1 (en) * 2006-05-31 2012-04-17 Verizon Laboratories Inc. Systems and methods for managing integrated and customizable data
US7705847B2 (en) 2007-03-05 2010-04-27 Oracle International Corporation Graph selection method
JP2010527051A (ja) * 2007-03-30 2010-08-05 グーグル・インコーポレーテッド モバイル装置のための文書処理
US20080301604A1 (en) * 2007-05-30 2008-12-04 Alexander Itskovich Apparatus for and method of estimating the quality of clock gating solutions for integrated circuit design
US8214743B2 (en) * 2007-08-07 2012-07-03 International Business Machines Corporation Data management techniques
US8436871B2 (en) * 2008-04-18 2013-05-07 General Electric Company Space efficent sortable table
US20100114844A1 (en) * 2008-11-04 2010-05-06 Wuzhen Xiong Method and system for data mashup in commenting layer
US8527897B2 (en) * 2009-01-26 2013-09-03 International Business Machines Corporation System, method, and computer program product for toggling back and forth between unformatted and formatted editable views of data
US8312366B2 (en) * 2009-02-11 2012-11-13 Microsoft Corporation Displaying multiple row and column header areas in a summary table
US9092411B2 (en) * 2009-08-18 2015-07-28 Miosoft Corporation Understanding data in data sets
EP2759941A1 (en) 2010-04-10 2014-07-30 Hewlett-Packard Development Company, L.P. Injection of data into a software application
US9075854B2 (en) * 2010-11-05 2015-07-07 Apple Inc. Browser based database manipulation
US9497084B2 (en) * 2011-02-28 2016-11-15 Ricoh Company, Ltd. Display filtering in device management system
US9881063B2 (en) * 2011-06-14 2018-01-30 International Business Machines Corporation Systems and methods for using graphical representations to manage query results
US9069748B2 (en) 2011-10-04 2015-06-30 Microsoft Technology Licensing, Llc Selective generation and display of data items associated with a spreadsheet
US8990675B2 (en) * 2011-10-04 2015-03-24 Microsoft Technology Licensing, Llc Automatic relationship detection for spreadsheet data items
US9135233B2 (en) 2011-10-13 2015-09-15 Microsoft Technology Licensing, Llc Suggesting alternate data mappings for charts
US8775506B2 (en) 2011-10-19 2014-07-08 Oracle International Corporation Eager block fetching for web-based data grids
US9098595B2 (en) 2011-10-19 2015-08-04 Oracle International Corporation Adaptive navigation functionality in a web-based data-entry grid
US10061473B2 (en) 2011-11-10 2018-08-28 Microsoft Technology Licensing, Llc Providing contextual on-object control launchers and controls
US8793567B2 (en) * 2011-11-16 2014-07-29 Microsoft Corporation Automated suggested summarizations of data
US20140019842A1 (en) * 2012-07-11 2014-01-16 Bank Of America Corporation Dynamic Pivot Table Creation and Modification
US9286284B2 (en) * 2012-10-15 2016-03-15 International Business Machines Corporation Data filtering based on a cell entry
US10055396B2 (en) * 2013-04-12 2018-08-21 Microsoft Technology Licensing, Llc Binding of data source to compound control
US10282407B1 (en) 2013-08-21 2019-05-07 The United States Of America, As Represented By The Secretary Of The Navy Method for filtering data to generate a balance sheet
WO2016057854A1 (en) 2014-10-08 2016-04-14 Inertech Ip Llc Systems and methods for cooling electrical equipment
US9984105B2 (en) * 2014-12-04 2018-05-29 International Business Machines Corporation Automatic discovery of code and data stores that populate a user interface element
US10120927B2 (en) 2015-06-03 2018-11-06 International Business Machines Corporation Technology for generating a model in response to user selection of data
US10345991B2 (en) 2015-06-16 2019-07-09 International Business Machines Corporation Adjusting appearance of icons in an electronic device
CN109002427A (zh) * 2017-06-06 2018-12-14 珠海金山办公软件有限公司 在电子表格中提示函数参数的方法、装置及电子设备
EP3422199A1 (en) * 2017-06-27 2019-01-02 Zebrys An interactive interface for improving the management of datasets
KR102076555B1 (ko) * 2018-06-22 2020-02-12 주식회사 한글과컴퓨터 데이터 패턴에 기초한 필터링 기능을 제공하는 스프레드시트 문서 편집 장치 및 그 동작 방법
US11093364B2 (en) * 2018-12-18 2021-08-17 Micron Technology, Inc. Management of event log information of a memory sub-system
CN110738037B (zh) * 2019-10-15 2021-02-05 深圳逻辑汇科技有限公司 用于自动生成电子表格的方法、装置、设备及存储介质
US11886462B2 (en) 2021-12-09 2024-01-30 Microsoft Technology Licensing, Llc Intelligent transformation of multidimensional data for automatic generation of pivot tables

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6246410B1 (en) * 1996-01-19 2001-06-12 International Business Machines Corp. Method and system for database access
US5819293A (en) * 1996-06-06 1998-10-06 Microsoft Corporation Automatic Spreadsheet forms
JP2000315242A (ja) * 1999-05-06 2000-11-14 Fujitsu Ltd 集計表作成装置および集計表作成プログラム記憶媒体
US6626959B1 (en) * 1999-06-14 2003-09-30 Microsoft Corporation Automatic formatting of pivot table reports within a spreadsheet
US6411313B1 (en) * 1999-06-14 2002-06-25 Microsoft Corporation User interface for creating a spreadsheet pivottable
US6604095B1 (en) * 1999-09-21 2003-08-05 International Business Machines Corporation Method, system, program, and data structure for pivoting columns in a database table
US7185279B2 (en) * 2000-01-07 2007-02-27 Master Mine Software, Inc. Data mining and reporting
US6829615B2 (en) * 2000-02-25 2004-12-07 International Business Machines Corporation Object type relationship graphical user interface
US6453270B1 (en) * 2000-03-07 2002-09-17 One Plus Corp. Systems for remote management of a network of waste containers
WO2002025471A2 (en) * 2000-09-20 2002-03-28 A2I, Inc. Method and apparatus for structuring, maintaining, and using families of data
US6988241B1 (en) * 2000-10-16 2006-01-17 International Business Machines Corporation Client side, web-based spreadsheet
US7584132B2 (en) 2001-02-06 2009-09-01 Strategic Capital Network, Llc System for facilitating selection of investments
US6906717B2 (en) * 2001-02-27 2005-06-14 Microsoft Corporation Multiple chart user interface
US6839719B2 (en) * 2002-05-14 2005-01-04 Time Industrial, Inc. Systems and methods for representing and editing multi-dimensional data
US20040117731A1 (en) * 2002-09-27 2004-06-17 Sergey Blyashov Automated report building system
KR100509072B1 (ko) 2002-12-04 2005-08-19 박문찬 양식 문서 통합 운영 방법
KR20040027270A (ko) 2003-03-22 2004-04-01 (주)오알솔루션즈코리아 데이터베이스 시스템 모니터링 방법
KR100581687B1 (ko) 2004-01-26 2006-05-22 이생희 이기종의 데이타베이스 관리시스템 통합방법 및 그 방법을실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는기록매체
US7698287B2 (en) * 2004-09-30 2010-04-13 Microsoft Corporation Design of spreadsheet functions for working with tables of data
KR100603547B1 (ko) 2004-11-30 2006-07-20 (주)이프라임 인터넷망을 이용한 운수행정관리시스템 및 그의 이용방법
US8095866B2 (en) * 2005-09-09 2012-01-10 Microsoft Corporation Filtering user interface for a data summary table
US8601383B2 (en) * 2005-09-09 2013-12-03 Microsoft Corporation User interface for creating a spreadsheet data summary table
KR200427270Y1 (ko) 2006-06-23 2006-09-22 피엘에이치 프로덕츠 인코포레이티드 사우나용 히터 조립체

Also Published As

Publication number Publication date
JP2009508221A (ja) 2009-02-26
BRPI0615459B1 (pt) 2018-09-25
CN101278279A (zh) 2008-10-01
EP1922649A1 (en) 2008-05-21
US20070074130A1 (en) 2007-03-29
US7480675B2 (en) 2009-01-20
EP1922649B1 (en) 2013-09-18
RU2417421C2 (ru) 2011-04-27
EP1922649A4 (en) 2009-08-19
BRPI0615459A2 (pt) 2011-05-17
CN101278279B (zh) 2010-12-29
RU2008109029A (ru) 2009-10-10
KR20080045696A (ko) 2008-05-23
WO2007032913A1 (en) 2007-03-22
KR101301363B1 (ko) 2013-08-29

Similar Documents

Publication Publication Date Title
JP4482602B2 (ja) データサマリテーブルにおけるフィールドの自動配置
US10579723B2 (en) User interface for creating a spreadsheet data summary table
US9959267B2 (en) Filtering user interface for a data summary table

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090819

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090819

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20090819

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20091104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100210

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: 20100316

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: 20100319

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

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4482602

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140326

Year of fee payment: 4

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

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