(57)【要約】  複数のフィールドを含むペインとデータサマリテーブルとを含む、データサマリテーブルを作成するためのグラフィカルユーザインターフェース。このユーザインターフェースは、データサマリテーブル内に含めるためのフィールドが選択されると、そのフィールドを分析し、自動的にそのフィールドをデータサマリテーブル内に配置するようにプログラムされている。
2009508221.tif 000002
【特許請求の範囲】
【請求項１】
データサマリテーブルを作成するためのグラフィカルユーザインターフェースであって、
複数のフィールドを含むペインと、
データサマリテーブルと
を備え、
前記データサマリテーブル内に含めるためのフィールドが選択されると、前記フィールドを分析し、前記フィールドを前記データサマリテーブル内に自動的に配置するようにプログラムされていることを特徴とするグラフィカルユーザインターフェース。
【請求項２】
前記データサマリテーブルの領域群を表す複数のゾーンを含むレイアウトペイン
をさらに備え、
前記フィールドを前記レイアウトペインの前記ゾーンに自動的に配置するようにプログラムされていることを特徴とする請求項１に記載のグラフィカルユーザインターフェース。
【請求項３】
前記フィールドが数値型であるかどうかを識別するようにプログラムされていることを特徴とする請求項１に記載のグラフィカルユーザインターフェース。
【請求項４】
前記フィールドが数値型である場合、前記フィールドの項目を要約するようにプログラムされていることを特徴とする請求項３に記載のグラフィカルユーザインターフェース。
【請求項５】
前記フィールドの型を識別し、かつ前記フィールドが非数値型である場合、前記フィールドの配置のために前記データサマリテーブルの行を選択するようにプログラムされていることを特徴とする請求項１に記載のグラフィカルユーザインターフェース。
【請求項６】
前記フィールドの型を識別し、かつ前記フィールドが日付型である場合、前記フィールドの配置のために前記データサマリテーブルの列を選択するようにプログラムされていることを特徴とする請求項１に記載のグラフィカルユーザインターフェース。
【請求項７】
前記フィールドの型を識別するために、前記フィールドの見出しを文字列のリストと比較するようにプログラムされており、前記フィールドの前記型を確認するために、前記フィールドの項目を最小値または最大値と比較するようにプログラムされていることを特徴とする請求項１に記載のグラフィカルユーザインターフェース。
【請求項８】
データサマリテーブルのためのグラフィカルユーザインターフェースを有するコンピュータシステムにおける方法であって、
複数のフィールドから１つのフィールドを選択することを可能にするステップと、
セマンティクスを使用して、前記選択したフィールドを分析するステップと、
前記フィールドを配置するための、データサマリテーブルの領域を選択するステップと、
前記フィールドを前記データサマリテーブルの前記領域に付加するステップと
を備えることを特徴とする方法。
【請求項９】
前記選択するステップは、
前記フィールドを配置するための、タスクペインのゾーンを選択するステップと、
前記フィールドを前記タスクペインの前記ゾーンに付加するステップと
をさらに含むことを特徴とする請求項８に記載の方法。
【請求項１０】
前記分析するステップは、
前記フィールドが数値型であるかどうかを識別するステップ
をさらに含むことを特徴とする請求項８に記載の方法。
【請求項１１】
前記選択するステップは、
前記フィールドが数値型である場合、前記フィールドを要約するステップ
をさらに含むことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記分析するステップおよび前記選択するステップは、
前記フィールドの型を識別するステップと、
前記フィールドが非数値型である場合、前記データサマリテーブルの行を選択するステップと、
前記フィールドが日付型である場合、前記データサマリテーブルの列を選択するステップと、
前記フィールドが数値型であって日付型ではない場合、前記フィールドを要約するステップと
をさらに含むことを特徴とする請求項８に記載の方法。
【請求項１３】
前記識別するステップは、
前記フィールドの前記型を識別するために、前記フィールドの見出しを文字列のリストと比較するステップ
をさらに含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
前記識別するステップは、
前記フィールドの前記型を確認するために、前記フィールドの項目を最小値または最大値と比較するステップ
をさらに含むことを特徴とする請求項１３に記載の方法。
【請求項１５】
複数のフィールドから１つのフィールドを選択することを可能にするステップと、
セマンティクスを使用して、前記選択したフィールドを分析するステップと、
前記フィールドを配置するための、データサマリテーブルの領域を選択するステップと、
前記フィールドを前記データサマリテーブルの前記領域に付加するステップと
を実行するためのコンピュータ実行可能命令を有することを特徴とするコンピュータ読み取り可能な媒体。
【請求項１６】
前記選択するステップは、
前記フィールドを配置するための、タスクペインのゾーンを選択するステップと、
前記フィールドを前記タスクペインの前記ゾーンに付加するステップと
をさらに含むことを特徴とする請求項１５に記載のコンピュータ読み取り可能な媒体。
【請求項１７】
前記分析するステップは、
前記フィールドが数値型であるかどうかを識別するステップ
をさらに含むことを特徴とする請求項１５に記載のコンピュータ読み取り可能な媒体。
【請求項１８】
前記選択するステップは、
前記フィールドが数値型である場合、前記フィールドを要約するステップ
をさらに含むことを特徴とする請求項１７に記載のコンピュータ読み取り可能な媒体。
【請求項１９】
前記分析するステップおよび前記選択するステップは、
前記フィールドの型を識別するステップと、
前記フィールドが非数値型である場合、前記データサマリテーブルの行を選択するステップと、
前記フィールドが日付型である場合、前記データサマリテーブルの列を選択するステップと、
前記フィールドが数値型であって日付型ではない場合、前記フィールドを要約するステップと
をさらに含むことを特徴とする請求項１５に記載のコンピュータ読み取り可能な媒体。
【請求項２０】
前記識別するステップは、
前記フィールドの型を識別するために、前記フィールドの見出しを文字列のリストと比較するステップ
をさらに含むことを特徴とする請求項１９に記載のコンピュータ読み取り可能な媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
データサマリテーブルを使用して、大量のデータを分析することができる。データサマリテーブルの１つの例は、Ｍｉｃｒｏｓｏｆｔ社のＥＸＣＥＬ（登録商標）スプレッドシートソフトウェアを使用して生成することが可能なＰＩＶＯＴＴＡＢＬＥダイナミックビューである。データサマリテーブルは、データベースプログラムによって提供されるか、またはスプレッドシートのデータリスト内にあるデータを表示し、要約するための効率的な方法を提供する。ユーザは、データサマリテーブルのページ、行、列またはデータサマリテーブルのデータ領域内に含むためのデータのフィールドを選択することができ、選択したデータのフィールドの表示すべき和、差、総数および標準偏差などのパラメータを選択することができる。スプレッドシートプログラム内から、またはリストを含むスプレッドシートデータからクエリすることが可能なデータベース内のデータは、データサマリテーブル内で分析することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００２】
データサマリテーブルは、データを効率的かつ直感的に分析することができるように設計されているが、初心者のユーザにとっては、データサマリテーブル自体の作成が難しい可能性がある。例えば、一部のプログラムは、ユーザがデータサマリテーブルを作成することを支援するウィザードを提供する。こうしたウィザードは、最初のデータサマリテーブルを作成する際には役立つかもしれないが、いったん作成されてしまうと、表示を変更するためにウィザードを簡単に使用することができない。その他のプログラムでは、ユーザは、所望のフィールドを直接データサマリテーブル上にドラッグ＆ドロップすることができる。これらのプログラムは、表示を生成する際にユーザに大きな柔軟性を提供するが、そのようなプログラムは、初心者にとっては、使用するためにあまり直感的なものではない場合がある。
【課題を解決するための手段】
【０００３】
この要約は、以下でさらに記述する詳細な説明から簡略化した形式で概念を選択したものを紹介するために提示するものである。この要約は、特許請求する主題事項の主要な特徴または本質的な特徴を特定することを目的とするわけでも、特許請求する主題事項の範囲を決定する際の助けとして使用することを目的とするわけでもない。
【０００４】
１つの側面にしたがうと、データサマリテーブルを作成するためのグラフィカルユーザインターフェースは、複数のフィールドを含むペイン（ｐａｎｅ）と、データサマリテーブルとを含む。ユーザインターフェースは、データサマリテーブル内に含めるためのフィールドが選択されると、そのフィールドを分析し、自動的にそのフィールドをデータサマリテーブル内に配置するようにプログラムされている。
【０００５】
別の側面にしたがうと、データサマリテーブルのためのグラフィカルユーザインターフェースを有するコンピュータシステムにおいて、方法は、複数のフィールドから１つのフィールドを選択することを可能にするステップと、セマンティクス（ｓｅｍａｎｔｉｃｓ）を使用して、選択したフィールドを分析するステップと、フィールドを配置するために、データサマリテーブルの領域を選択するステップと、データサマリテーブルの領域にフィールドを付加するステップとを備える。
【０００６】
別の側面にしたがうと、コンピュータ読み取り可能な媒体は、複数のフィールドから１つのフィールドを選択することを可能にするステップと、セマンティクスを使用して、選択したフィールドを分析するステップと、フィールドを配置するために、データサマリテーブルの領域を選択するステップと、データサマリテーブルの領域にフィールドを付加するステップとを実行するためのコンピュータ実行可能命令を有する。
【発明を実施するための最良の形態】
【０００７】
以下において、必ずしも一定の比率で描かれているわけではない添付図面が参照される。
【０００８】
以下、添付図面を参照しながら、様々な実施形態について、より全体的に説明する。本明細書で開示する諸実施形態は例示的なものであり、限定的なものとして解釈すべきではない。むしろ、これらの実施形態は、本開示が詳細かつ完全なものであるように示されるものである。全体を通じて、同様の参照番号は、同様の要素を指す。
【０００９】
本明細書で説明する諸実施形態は、コンピュータシステム上でデータを分析するために使用されるデータサマリテーブルに関する。
【００１０】
ここで図１を参照すると、例示的なコンピュータシステム１００が示されている。図１に示されているコンピュータシステム１００は、例えば、デスクトップコンピュータ、ラップトップコンピュータ、およびハンドヘルドコンピュータなど、様々な形態をとることができる。さらに、コンピュータシステム１００が示されているが、本明細書で開示するシステムおよび方法は、様々な代替のコンピュータシステムを用いて実装することができる。
【００１１】
システム１００は、プロセッサユニット１０２、システムメモリ１０４、およびシステムメモリ１０４を含む様々なシステムコンポーネントをプロセッサユニット１０２へ接続するシステムバス１０６を備えている。システムバス１０６は、任意の様々なバスアーキテクチャを使用する、メモリバス、周辺バス、およびローカルバスを含む、複数のタイプのバス構造のうちの任意のものとすることができる。システムメモリは、ＲＯＭ１０８およびＲＡＭ１１０を含む。コンピュータシステム１００内の要素間で情報を転送するのに役立つ基本ルーチンを含むＢＩＯＳ１１２は、ＲＯＭ１０８に記憶されている。
【００１２】
コンピュータシステム１００は、ハードディスクに対して読み書きを行うハードディスクドライブ１１２と、取り外し可能な磁気ディスク１１６に対して読み書きを行う磁気ディスクドライブ１１４と、ＣＤ  ＲＯＭ、ＤＶＤ、またはその他の光媒体などの取り外し可能な光ディスク１１９に対して読み書きを行う光ディスクドライブ１１８とをさらに備えている。ハードディスクドライブ１１２、磁気ディスクドライブ１１４、および光ディスクドライブ１１８はそれぞれ、ハードディスクドライブインターフェース１２０、磁気ディスクドライブインターフェース１２２、および光ドライブインターフェース１２４を介してシステムバス１０６に接続される。これらのドライブおよびそれらに関連するコンピュータ読み取り可能な媒体は、コンピュータ読み取り可能な命令、データ構造、プログラム、およびその他のデータの不揮発性の記憶をシステム１００に提供する。
【００１３】
本明細書で説明する例示的な環境では、ハードディスク１１２、取り外し可能な磁気ディスク１１６、および取り外し可能な光ディスク１１９を用いることが可能であるが、例示的なシステム１００では、その他のタイプのコンピュータ読み取り可能な媒体を使用して、データを記憶することができる。例示的な動作環境内で使用することが可能な、これらその他のタイプのコンピュータ読み取り可能な媒体の例として、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ＲＡＭ、およびＲＯＭを挙げることができる。
【００１４】
オペレーティングシステム１２６、１つまたは複数のアプリケーションプログラム１２８、その他のプログラムモジュール１３０、およびプログラムデータ１３２などの多数のプログラムモジュールを、ハードディスク１１２、磁気ディスク１１６、光ディスク１１９、ＲＯＭ１０８、またはＲＡＭ１１０に記憶することができる。
【００１５】
ユーザは、例えば、キーボード１３４、マウス１３６、またはその他のポインティングデバイスなどの入力デバイスを介して、コンピュータシステム１００にコマンドおよび情報を入力することができる。その他の入力デバイスの例として、ツールバー、メニュー、タッチスクリーン、マイクロフォン、ジョイスティック、ゲームパッド、ペン、衛星放送受信アンテナ、およびスキャナがある。これらおよびその他の入力デバイスは、システムバス１０６に接続されたシリアルポートインターフェース１４０を介して、プロセッサユニット１０２に接続されることが多い。しかしながら、これらの入力デバイスは、パラレルポート、ゲームポート、またはユニバーサルシリアルバス（ＵＳＢ）などのその他のインターフェースを介して接続されてもよい。ＬＣＤディスプレイ１４２またはその他のタイプのディスプレイデバイスもまた、ビデオアダプタ１４４などのインターフェースを介して、システムバス１０６に接続される。コンピュータシステムには一般に、ディスプレイ１４２に加えて、スピーカおよびプリンタなどのその他の周辺出力デバイス（不図示）を含めることができる。
【００１６】
コンピュータシステム１００は、リモートコンピュータ１４６などの、１つまたは複数のリモートコンピュータに対する論理接続を使用して、ネットワーク環境において動作することもできる。リモートコンピュータ１４６は、コンピュータシステム、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、またはその他の一般的なネットワークノードとすることができる。リモートコンピュータ１４６は一般に、コンピュータシステム１００に関して上述した要素の多くまたはすべてを備えている。ネットワーク接続は、ローカルエリアネットワーク（ＬＡＮ）１４８およびワイドエリアネットワーク（ＷＡＮ）１５０を含む。そのようなネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネット、およびインターネットにおいて一般的である。
【００１７】
ＬＡＮネットワーキング環境において使用される場合、コンピュータシステム１００は、ネットワークインターフェースまたはネットワークアダプタ１５２を介してローカルネットワーク１４８に接続される。ＷＡＮネットワーキング環境において使用される場合、コンピュータシステム１００は一般に、インターネットなどのワイドエリアネットワーク１５０を介して通信を確立するためのモデム１５４またはその他の手段を備えている。内蔵型または外付け型とすることができるモデム１５４は、シリアルポートインターフェース１４０を介してシステムバス１０６に接続される。ネットワーク環境において、コンピュータシステム１００に関して示されているプログラムモジュールまたはプログラムモジュールの一部分は、リモートメモリ記憶デバイス内に記憶されてもよい。図示されているネットワーク接続は例示的なものであって、コンピュータ間で通信を確立するためのその他の手段が使用されてもよいことを理解されたい。
【００１８】
本明細書で説明する諸実施形態は、コンピューティングシステムにおける論理動作として実装することができる。この論理動作は、（１）コンピュータに実装される連続するステップ、またはコンピュータシステム上で動作するプログラムモジュールとして、および（２）コンピューティングシステム内で動作する相互接続されたロジックまたはハードウェアモジュールとして実装することができる。この実装は、特定のコンピューティングシステムのパフォーマンス要件に応じて選択され得るものである。したがって、本明細書で説明する諸実施形態を構成する論理動作は、動作、ステップ、またはモジュールと呼ばれる。これらの動作、ステップ、およびモジュールは、本明細書に添付された特許請求の範囲内に記述されている本発明の趣旨および範囲から逸脱することなく、ソフトウェア、ファームウェア、専用デジタルロジック、およびそれらの任意の組合せを用いて実装されてもよいということが、当業者には理解されるであろう。こうしたソフトウェア、ファームウェア、または同種の連続するコンピュータ命令は、コンピュータ読み取り可能な記憶媒体に、コード化されて記憶されてもよいし、コンピューティングデバイス間での伝送のために、搬送波信号においてコード化されてもよい。
【００１９】
次に図２を参照すると、例示的なプログラム２００が示されている。一例において、プログラム２００は、上述したコンピュータシステム１００などのコンピュータシステム上で動作するＭｉｃｒｏｓｏｆｔ社のＥＸＣＥＬ（登録商標）スプレッドシートソフトウェアプログラムである。プログラム２００は、例示的なデータ２１０のリストを有するスプレッドシート２０５を含む。ユーザは、データ２１０からデータサマリテーブルを作成することができる。
【００２０】
例えば、次に図３を参照すると、プログラム２００の例示的なユーザインターフェース３０２が示されている。ユーザインターフェース３０２は、最初のデータサマリテーブル３２０を含む（図３では、データサマリテーブル３２０はブランクである）。データサマリテーブル３２０は、様々なソースからのデータを用いて作成することができる。図３に示されている一例では、データサマリテーブル３２０は、以下でさらに説明するように、１つまたは複数のデータベースからのデータを用いて作成することができる。別の実施形態では、データサマリテーブル３２０は、図２に示されているデータ２１０などの、スプレッドシート内のデータから作成することができる。
【００２１】
プログラム２００のユーザインターフェース３０２は、データサマリテーブル３２０を作成し、かつ変更するために使用することができる例示的なタスクペイン４５０も含む。例えば、タスクペイン４５０は、データ２１０からのフィールドのリストを含む。以下でさらに説明するように、ユーザは、タスクペイン４５０からフィールドを選択／選択解除して、データサマリテーブル３２０を作成することができる。
【００２２】
Ｉ．タスクペイン    
次に図４を参照すると、例示的なタスクペイン４５０が示されている。タスクペイン４５０は一般に、フィールドペイン４５２およびレイアウトペイン４５４を含む。以下でさらに説明するように、タスクペイン４５０は、データサマリテーブル３２０を作成し、かつ変更するために使用される。
【００２３】
フィールドペイン４５２は、所与のデータベースまたはスプレッドシート（例えば、上述した図２に示されているスプレッドシート２０５）内の各フィールドのリスト４５３を含む。フィールドのリスト４５３は、フィールドペイン４５２によって与えられるスペースよりも長いので、スクロールバー４５１が提供される。いくつかの実施形態では、フィールドペイン４５２は（レイアウトペイン４５４も）、ユーザによってサイズを変更することができる。リスト４５３内の各フィールドは、フィールドの隣にチェックボックスを含む。例えば、「Ｐｒｏｆｉｔ（収益）」フィールドは、フィールドの見出しの隣に配置されたチェックボックス４６０を含む。以下で説明するように、リスト４５３内のフィールドがレイアウトペイン４５４に付加される場合、そのフィールドに関連付けられたチェックボックスがチェックされる。例えば、「Ｐｒｏｆｉｔ（収益）」フィールドに関連付けられたチェックボックス４６０は、レイアウトペイン４５４に付加されているので、チェックされている。
【００２４】
レイアウトペイン４５４は、タスクペイン４５０を使用して作成されるデータサマリテーブル３２０の諸側面（ａｓｐｅｃｔ）を表す複数のゾーン（ｚｏｎｅ）を含む。例えば、レイアウトペイン４５４は、行ゾーン４５５、列ゾーン４５６、値ゾーン４５７、およびフィルタゾーン４５８を含む。行ゾーン４５５は、結果として生じるデータサマリテーブル３２０用の行のラベルを定める。列ゾーン４５６は、データサマリテーブル３２０用の列のラベルを定める。値ゾーン４５７は、データサマリテーブル３２０上の要約されたデータ（例えば、総計、差など）を識別する。フィルタゾーン４５８は、その他のゾーン４５５、４５６、４５７内のすべてのその他のフィールドに適用されるフィルタリングの選択を可能にする（例えば、フィルタゾーン４５８に１つのフィールドを配置することができ、そのフィールドに関連付けられた１つまたは複数の項目を選択して、フィルタを作成し、フィルタゾーン４５８内の当該フィールド用に選択された１つまたは複数の項目に関連付けられたレイアウトペイン４５４内のすべてのその他のフィールド用の項目だけを示すことができる）。
【００２５】
フィールドペイン４５２の１つまたは複数のフィールドを、レイアウトペイン４５４の１つまたは複数のゾーンに付加して、データサマリテーブル３２０を作成し、変更する。図示されている例では、ユーザは、フィールドペイン４５２のリスト４５３のフィールドをクリックし、レイアウトペイン４５４のゾーンのうちの１つにドラッグ＆ドロップして、フィールドをデータサマリテーブル３２０に付加することができる。
【００２６】
例えば、図５に示されているように、ユーザは、「Ｓｔｏｒｅ  Ｓａｌｅｓ（店舗売上）」フィールド４６６などのフィールドペイン４５２に含まれる特定のフィールド上で止めることができる。ユーザがフィールド上で止めた場合、ユーザがフィールドペイン４５２から選択したフィールドをクリックして、レイアウトペイン４５４のゾーンのうちの１つにドラッグすることができることを示す十字カーソル４７２が、ユーザに提示される。ユーザがフィールドを選択すると、十字カーソル４７２は通常のカーソルに戻り、図示されているように、「Ｓｔｏｒｅ  Ｓａｌｅｓ（店舗売上）」フィールド４６６は、値ゾーン４５７にドラッグ＆ドロップされる。同様に、フィールドは、レイアウトペイン４５４からフィールドを選択してドラッグすることによって、レイアウトペイン４５４から除去することができる。
【００２７】
別の例では、ユーザは、フィールドペイン４５２内の特定のフィールドに関連付けられたチェックボックスをチェックして、そのフィールドをレイアウトペイン４５４に付加することができる。例えば、ユーザが、図４のタスクペイン４５０内に示されている「Ｐｒｏｆｉｔ（収益）」フィールドに関連付けられたチェックボックス４６０を選択した場合、このフィールドは、「Ｐｒｏｆｉｔ（収益）」フィールド４６２として値ゾーン４５７に付加することができる。以下でさらに説明するように、プログラム２００は、選択されたフィールドを分析し、そのフィールドをレイアウトペイン４５４の適切なゾーンに配置するようにプログラムすることができる。同様に、ユーザは、チェックされたフィールドを選択解除して、そのフィールドをレイアウトペイン４５４から除去することができる。例えば、ユーザがチェックボックス４６０を選択解除した場合、「Ｐｒｏｆｉｔ（収益）」フィールド４６２はレイアウトペイン４５４から除去される。
【００２８】
オプションの例では、ユーザがドロップゾーン４５４のゾーンのうちの１つにフィールドをドラッグすることなく、フィールドを選択するために所与のフィールドをクリックした場合、そのフィールドが配置されるゾーンをユーザが選択できるようにするメニュー（例えば、図６のメニュー４８２と類似したメニュー）をユーザに提示することができる。
【００２９】
次に図７を参照すると、フィールドペイン４５２からレイアウトペイン４５４のゾーンへフィールドを付加するための例示的な方法５００が示されている。動作５０１で、ユーザは、フィールドペイン４５２内でリストされたフィールドを選択して、そのフィールドをレイアウトペイン４５４へ付加する。動作５０２で、ユーザが特定のフィールドに関連付けられたチェックボックスを選択したかどうかについて判定が行われる。ユーザがチェックボックスを選択していた場合、動作５０３に制御が移り、プログラム２００は、選択されたフィールドがレイアウトペイン４５４のどのゾーンに配置されるかを自動的に判定することができる。次いで、動作５０７で、そのフィールドが、レイアウトペイン４５４の適切なゾーンへ付加される。
【００３０】
動作５０２で、ユーザがチェックボックスを選択していないという判定がなされた場合、動作５０４に制御が移る。動作５０４で、ユーザがフィールドを選択し、そのフィールドをレイアウトペイン４５４のゾーンのうちの１つにドラッグ＆ドロップしたかどうかについて判定が行われる。ユーザがレイアウトペイン４５４のうちの１つのフィールドをドロップしていた場合、動作５０７に制御が移り、そのフィールドがゾーンに付加される。
【００３１】
動作５０４で、ユーザがフィールドをドラッグ＆ドロップしていないという判定がなされた場合、オプションの実施形態では、ユーザがチェックボックスを選択することなく、またはフィールドをレイアウトペイン４５４のゾーンにドラッグ＆ドロップすることなく、フィールドを選択していることから、動作５０５に制御が移る。動作５０５で、プログラムは、フィールドが付加されるゾーンをユーザが選択できるようにするメニューを、ユーザに提示する。次いで、動作５０６で、ユーザは、所望のゾーンを選択する。動作５０７で、フィールドはゾーンに付加される。
【００３２】
フィールドがレイアウトペイン４５４のゾーンに付加されると、動作５０９に制御が移り、以下で説明するように、それに応じて、プログラム２００は、データサマリテーブル３２０を更新する。
【００３３】
再び図４を参照すると、フィールドペイン４５２に存在する「Ｐｒｏｆｉｔ（収益）」フィールドなどのフィールドが、レイアウトペイン４５４のゾーンのうちの１つに付加されると、フィールドペイン４５２内のフィールドに関連付けられたチェックボックス（例えば、チェックボックス４６０）は、そのフィールドがデータサマリテーブル３２０の一部であることを示すためにチェックされる。さらに、フィールドペイン４５２内のフィールドに関連付けられたフィールドラベルのフォントは太字にされる。同様に、フィールドがまだデータサマリテーブル３２０の一部になっていない場合（または、フィールドがデータサマリテーブル３２０から除去されていた場合）、そのフィールドに関連付けられたチェックボックスは、チェックされていないままにされ、そのフィールドは、太字ではなく通常のフォントで示される。データサマリテーブル３２０の一部であるフィールドを示すためのその他の方法も使用することができる。
【００３４】
フィールドがタスクペイン４５０のレイアウトペイン４５４に付加され、レイアウトペイン４５４から除去された場合、結果として生じるデータサマリテーブル３２０は、それに応じて変更される。例えば、ユーザには最初に、図３で示されるフィールドペイン４５２を含むタスクペイン４５０が提示される。図８を参照すると、ユーザが「Ｐｒｏｆｉｔ（収益）」フィールドをレイアウトペイン４５４の値ゾーン４５７へ付加した場合、「Ｐｒｏｆｉｔ（収益）」フィールドに関連付けられたデータの合計が、データサマリテーブル３２０に自動的に付加される。図９を参照すると、ユーザは、さらなるフィールド（例えば「Ｓａｌｅｓ  Ａｖｅｒａｇｅ（売上平均）」、「Ｃｕｓｔｏｍｅｒ（顧客）」、「Ｇｅｎｄｅｒ（性別）」など）をレイアウトペイン４５４のゾーンへ付加することができ、データサマリテーブル３２０は、付加されたフィールドに関連付けられたデータを含むように更新される。
【００３５】
図１０を参照すると、ユーザは、タスクペイン４５０のレイアウトペイン４５４内の１つのゾーンから別のゾーンへとフィールドを移動させることもでき、データサマリテーブル３２０は、それに応じて更新される。例えば、ユーザは、「Ｇｅｎｄｅｒ（性別）」フィールドを、列ゾーン４５６から行ゾーン４５５へ移動させることができ、データサマリテーブル３２０は、変更を反映するために、それに応じて、自動的に更新される。ユーザは、所与のゾーン４５５、４５６、４５７、４５８の中でフィールドを移動させて、データサマリテーブル３２０内でフィールドが表示される順番を変更することもできる。例えば、ユーザは、行ゾーン４５５において、「Ｃｕｓｔｏｍｅｒ（顧客）」フィールドの上部に「Ｇｅｎｄｅｒ（性別）」フィールドを移動させることができるので、データサマリテーブル３２０内では、「Ｇｅｎｄｅｒ（性別）」フィールドが、「Ｃｕｓｔｏｍｅｒ（顧客）」フィールドよりも先に示される。
【００３６】
次に図６を参照すると、一例において、ユーザが、レイアウトペイン４５４内に配置された「Ｐｒｏｄｕｃｔ  Ｃａｔｅｇｏｒｉｅｓ（製品カテゴリ）」フィールド４８１などのフィールドをクリックして、そのフィールドをドラッグすることなく、そのフィールドを放した場合、ユーザがレイアウトペイン４５４内でフィールドの配置を操作できるようにするメニュー４８２が、ユーザに提示される。例えば、メニュー４８２によって、ユーザは、所与のゾーン内でフィールドの位置を変更させ（すなわち、「Ｍｏｖｅ  Ｕｐ（上へ移動）」、「Ｍｏｖｅ  Ｄｏｗｎ（下へ移動）」、「Ｍｏｖｅ  ｔｏ  Ｂｅｇｉｎｎｉｎｇ（先頭に移動）」、「Ｍｏｖｅ  ｔｏ  Ｅｎｄ（末尾に移動）」）、ゾーン間でフィールドを移動させ（すなわち、「Ｍｏｖｅ  ｔｏ  Ｒｏｗ  Ｌａｂｅｌｓ（行ラベルへ移動）」、「Ｍｏｖｅ  ｔｏ  Ｖａｌｕｅｓ（値へ移動）」、「Ｍｏｖｅ  ｔｏ  Ｃｏｌｕｍｎ  Ｌａｂｅｌｓ（列ラベルへ移動）」、「Ｍｏｖｅ  ｔｏ  Ｒｅｐｏｒｔ  Ｆｉｌｔｅｒ（レポートフィルタへ移動）」）、レイアウトペイン４５４からフィールドを除去する（すなわち、「Ｒｅｍｏｖｅ  Ｆｉｅｌｄ（フィールドを除去）」）ことができる。特定のフィールドのために利用可能なオプションだけが、メニュー４８２内で有効な選択肢として示される（例えば、フィールド４８１はすでに行ゾーン４５５内にあるので、この例では、「Ｍｏｖｅ  ｔｏ  Ｒｏｗ  Ｌａｂｅｌｓ（行ラベルへ移動）」は、有効ではないものとして示されている）。
【００３７】
再び図４を参照すると、タスクペイン４５０は、手動更新チェックボックス４６９も含む。チェックボックス４６９が選択された場合、結果として生じるデータサマリテーブル３２０は、フィールドが付加され、再配置され、タスクペイン４５０のレイアウトペイン４５４から除去されるときに、自動的に更新されることはない。例えば、ユーザが手動更新チェックボックス４６９を選択し、次いでフィールドをレイアウトペイン４５４の行ゾーン４５５へ付加した場合、データサマリテーブル３２０は、新たに付加されたフィールドを反映するために、自動的に更新されることはない。代わりに、更新は、変更がなされると有効になる手動更新ボタン４７１をユーザが選択した後で生じ、手動更新を実行することができる。手動更新を使用することにより、データサマリテーブル３２０を作成するためにかなりの読み出しおよび処理時間を要する大量のデータを用いる作業の際に、効率を高めることができる。このように、データサマリテーブル３２０の作成または変更の前に、所望のフィールドおよびフィルタリングを選択することが可能であり、このことは、手動更新ボタン４７１を選択した際に生じるので、効率性を向上させることができる。
【００３８】
図１１を参照すると、フィールドペイン４５２内に示されているフィールドは、「オンライン分析処理」（ＯＬＡＰ）型のデータフィールドを表している（それに対し、図５のフィールドペイン４５２内に示されているフィールドは、非ＯＬＡＰ型であり、しばしばリレーショナルフィールド（ｒｅｌａｔｉｏｎａｌ  ｆｉｅｌｄ）と呼ばれる）。ＯＬＡＰは、データベースに記憶されたデータの分析を提供する分類のツールである。ＯＬＡＰツールによって、ユーザは、異なるディメンジョンのマルチディメンジョンデータを分析することができる。ＯＬＡＰデータフィールドは、複数のレベルが存在する階層構造内に配置される。例えば、「Ｓａｌｅｓ  Ｆａｃｔ（売上実績）  １９９１」フィールドは、「Ｓｔｏｒｅ  Ｓａｌｅｓ（店舗売上）」、「Ｕｎｉｔ  Ｓａｌｅｓ（売上数量）」および「Ｓｔｏｒｅ  Ｃｏｓｔ（店舗コスト）」というサブフィールドを含む。サブフィールドを展開したり、折り畳んだりするためのドリルインジケータ（プラス／マイナス  ＋／−サイン）５５６をクリックすることによって、サブフィールドにアクセスすることができる。ＯＬＡＰデータは、階層および数量（ｍｅａｓｕｒｅ）を有するディメンジョンに配置させることができる。
【００３９】
図示されている実施形態において、フィールドペイン４５２内にリストされている各フィールドは、複数のコンポーネントを含む。フィールドは、フィールドの上で止めるか、またはフィールドをクリックすることによって、強調表示することができる。例えば、図１１に示されている「Ｐｒｏｄｕｃｔ（製品）」フィールドなどの各フィールドは、ユーザがフィールドを選択してドラッグすることを可能にする選択領域５５８および５５９を含む。各フィールドはまた、データサマリテーブル３２０にフィールドを付加し、データサマリテーブル３２０からフィールドを除去するために使用することが可能なチェックボックス５６０も含む。さらに、ＯＬＡＰデータ型の各フィールドには、フィールドに関連付けられたサブフィールドを展開したり、折り畳んだりするために使用されるドリルインジケータ５５６を含めることができる。さらに、各フィールドは、以下でさらに説明するように、フィルタリングオプションにアクセスするために使用されるドロップダウン領域５６２を含む。
【００４０】
再び図４を参照すると、タスクペイン４５０は、ユーザがタスクペイン４５０のレイアウトを変更できるようにするコントロール４７０も含む。例えば、ユーザは、図１２に示されているように、コントロール４７０を選択して、レイアウトメニュー５７２にアクセスすることができる。レイアウトメニュー５７２を使用して、ペイン４５２および４５４を配置する。例えば、ユーザがコントロール４７０において「Ｆｉｅｌｄｓ  ａｎｄ  Ｌａｙｏｕｔ  ｓｔａｃｋｅｄ（積み重ねられたフィールドおよびレイアウト）」５７３を選択した場合、フィールドペイン４５２は、図４に示されているように、単一の一体化されたペインを形成するように、タスクペイン４５０内でレイアウトペイン４５４の上部に配置される。ユーザがコントロール４７０において「Ｆｉｅｌｄｓ  ａｎｄ  Ｌａｙｏｕｔ  ｓｉｄｅ  ｂｙ  ｓｉｄｅ（横に並べられたフィールドおよびレイアウト）」５７４を選択した場合、フィールドペイン４５２は、図１３に示されているように、単一の一体化されたペインを形成するように、タスクペイン４５０内でレイアウトペイン４５４の横に並んで配置される。ユーザがコントロール４７０において「Ｆｉｅｌｄｓ  ｏｎｌｙ（フィールドのみ）」５７５を選択した場合、フィールドペイン４５２は、図１４に示されているように独立して示される。ユーザがコントロール４７０において「Ｌａｙｏｕｔ  ｏｎｌｙ  ２  ｂｙ  ２（２×２のレイアウトのみ）」５７６を選択した場合、レイアウトペイン４５４は、図１５に示されているように、２×２の四角形であるゾーン４５５、４５６、４５７、４５８とともに独立して示される。ユーザがコントロール４７０において「Ｌａｙｏｕｔ  ｏｎｌｙ  １  ｂｙ  ４（１×４のレイアウトのみ）」５７７を選択した場合、レイアウトペイン４５４は、図１６に示されているように、１×４の四角形であるゾーン４５５、４５６、４５７、４５８とともに独立して示される。
【００４１】
図５に示されている例では、フィールドペイン４５２内のフィールドが、アルファベット順でリストされている。図４に示されているものなどのＯＬＡＰ型データを含むリストに関しては、数量が最初に示され、その後に、ディメンジョンがアルファベット順で示される。図示されている例では、ディメンジョンフォルダは、展開された形態で示されており、すべてのその他のフィールドは、折り畳まれた形態で示されている。その他の構成を使用することもできる。
【００４２】
ＩＩ．レイアウトペインにおけるフィールドの自動配置    
再び図４を参照すると、ユーザがフィールドに関連付けられたチェックボックスをチェックすることによって、そのフィールドを選択した場合、プログラム２００は、後述するように、選択したフィールドをレイアウトペイン４５４のゾーンのうちの１つへ自動的に配置するようにプログラムされている。
【００４３】
一般に、数値型のフィールドは値ゾーン４５７へ付加され、非数値型のフィールドはレイアウトペイン４５４の行ゾーン４５５に付加される。例えば、数値型のフィールド（例えば、会計上の売上高など）は通常、集計されて値ゾーン４５７に配置される。一方、非数値型のフィールド（例えば、製品名など）は通常、行ラベルとして使用され、したがって、自動的に行ゾーン４５５に配置される。
【００４４】
次に図１７を参照すると、選択されたフィールドをレイアウトペイン４５４のゾーンのうちの１つへ自動的に付加するための例示的な方法６００が示されている。動作６０１で、ユーザは、例えば、フィールドに関連付けられたチェックボックスを使用して、フィールド４５２内のフィールドを選択する。次いで、動作６０２で、そのフィールドが数値型であるかどうかについて判定が行われる。フィールドが数値型である場合、動作６０３に制御が移り、フィールドは、集計のために値ゾーン４５７へ付加される。動作６０２で、フィールドが数値型ではないと判定された場合、動作６０４に制御が移り、フィールドは、行ゾーン４５５に付加される。
【００４５】
いくつかの実施形態において、数値型のフィールドは、当該フィールドを値ゾーン４５７に付加する前に、レイアウトペイン４５４内で異なる配置がより適切であるかどうかを判定するために、さらに分析することができる。例えば、フィールドが、複数の郵便番号コード値を含む数値型であっても、通常は、そうしたフィールドは、値ゾーン４５７に配置されるよりも、行ゾーン４５５に配置されることが望ましい。このため、いくつかの実施形態では、数値型のフィールドは、レイアウトペイン４５４内での望ましい配置を識別するために、データセマンティクスを使用してさらに分析される。
【００４６】
一実施形態において、以下の例示的な表１などのルックアップテーブルを使用して、値ゾーン４５７ではなく、行ゾーン４５５へ付加される数値型のフィールドを識別する。
【００４７】
【表１】
2009508221.tif 000003
【００４８】
以下でさらに説明するように、表１において、「フィールド型文字列」という列は、選択されたフィールドの見出しと比較されるテキスト文字列を含む。示されている例では、選択されたフィールドの見出しは、大文字と小文字との区別をしない合致を識別するために、表１のフィールド型文字列の列内における各文字列と比較される。
【００４９】
フィールド型文字列の列内におけるテキスト文字列と、選択されたフィールドの見出しとが合致した場合、フィールド内の数値項目は、表１の「最小値」および「最大値」の列内における値を使用して、さらに分析される。最小値の列内における値は、所与のフィールド型文字列の型における任意の項目の最小値を定めている。最大値の列内における値は、所与のフィールド型文字列の型における任意の項目の最大値を定めている。特定のフィールド型文字列の型用に、最小値が表１内で定義されていない場合、数値項目が最大値を下回る整数であるかどうかについて判定が行われる。特定のフィールド型文字列の型用に、最大値が定義されていない場合、数値項目が最小値を上回る整数であるかどうかについて判定が行われる。特定のフィールド型文字列の型用に、最小値も最大値も定義されていない場合、数値項目が整数であるかどうかについて判定が行われる。
【００５０】
例えば、選択されたフィールドが、「Ｍｏｎｔｈ」という見出しを含む場合、表１が解析されて、フィールド型文字列の値「ｍｏｎｔｈ」によって、合致が識別される。次に、そのフィールドに関連付けられた数値が、（１月から１２月までを表している）最小値「１」以上最大値「１２」以下であるかどうかを判定するために解析される。一実施形態では、フィールドのすべての数値項目がテストされる。かなり多くの数値項目が存在する場合などの別の実施形態では、数値項目のサンプルのみが、表１の最小値および最大値に対してテストされる。すべての値が最小値以上最大値以下である場合、以下でさらに説明するように、そのフィールドは、値ゾーン４５７ではなく、行ゾーン４５５に付加される。
【００５１】
表１内に示されているテキスト文字列、最小値、および最大値は、例示にすぎず、異なる文字列および値を使用することが可能である。例えば、テキスト文字列および最小値／最大値は、データが生成される地理的位置に応じて変更することができる（例えば、電話番号の値は、地理的位置に応じて異なり得る）。別の実施形態では、異なるタイプのセマンティックチェックを使用することができる。例えば、数値項目の桁数を、数値項目の実際の値のチェックに加えて、またはその代わりに分析することもできる。例えば、フィールドの見出しがテキスト文字列「ｚｉｐ」（すなわち、郵便番号コード）と合致した場合、フィールド内の数値項目の桁数は、最小の５桁（例えば、「９０２１０」は５個の桁を含む）以上、最大の１０桁（例えば、「９０２１０−１０５２」は１０個の桁を含む）以下であるかどうかを確認するために調べることができる。
【００５２】
次に図１８を参照すると、レイアウトペイン４５４における、選択されたフィールドの自動配置のための例示的な方法６１０が示されている。方法６１０は、数値型のフィールドがさらに分析されることを除いて、上述した方法６００に類似している。動作６１１で、ユーザは、例えば、フィールドに関連付けられたチェックボックスを使用して、フィールドペイン４５２内のフィールドを選択する。次いで、動作６１２で、フィールドが数値型であるかどうかについて判定が行われる。フィールドが非数値型である場合、動作６１３に制御が移り、フィールドが行ゾーン４５５に付加される。
【００５３】
動作６１２で、フィールドが数値型であると判定された場合、動作６１５に制御が移る。動作６１５で、フィールドの見出しが解析され、動作６１６で、その見出しが、上記の表１に示されているようなテキスト文字列のルックアップテーブルと比較される。動作６１６で、見出しとテキスト文字列とが合致しなかった場合、動作６１９に制御が移り、フィールドが値ゾーン４５７に付加される。見出しと表１のテキスト文字列とが合致した場合、動作６１７に制御が移る。
【００５４】
動作６１７でフィールドの数値項目が解析され、動作６１８で、数値項目の値が、テキスト文字列に関連付けられた表１内の最小値および最大値と比較される。上述したように、数値項目が最小値以上最大値以下の範囲に入らない場合、動作６１９に制御が移り、フィールドが値ゾーン４５７に付加される。動作６１８で、数値項目が最小値以上最大値以下の範囲に入る場合、動作６１３に制御が移り、フィールドが行ゾーン４５５に付加される。
【００５５】
このようにして、特定の数値型のフィールドを自動的に識別して、デフォルトの値ゾーン４５７ではなく、行ゾーン４５５に配置させることができる。プログラム２００によって、フィールドがレイアウトペイン４５４の特定のゾーン内に自動的に配置され、かつユーザがそのフィールドを異なるゾーンに配置したいと望む場合、ユーザは、そのフィールドを選択して、所望のゾーンにドラッグすることができる。
【００５６】
いくつかの実施形態では、日付情報に関連付けられたフィールドは、識別されて、行ゾーン４５５または値ゾーン４５７ではなく、列ゾーン４５６に配置される。例えば、図１９に示されている方法６３０は、上述した方法６１０に類似しており、動作６１１〜６１９を含む。しかしながら、動作６１８で、数値項目が最小値以上最大値以下の範囲に入る場合、動作６３１に制御が移る。動作６３１で、フィールドが日付フィールドであるかどうかについて判定が行われる。示されている例では、この判定は、見出しが合致するテキスト文字列によって行われる。例えば、フィールドの見出しがテキスト「Ｄａｔｅ」を含み、かつ表１内のテキスト文字列「ｄａｔｅ」と合致した場合、そのフィールドは、日付フィールドとして識別される。フィールドが日付フィールドである場合、動作６３２に制御が移り、フィールドが列ゾーン４５６に付加される。フィールドが日付フィールドではない場合、動作６１３に制御が移り、フィールドが行ゾーン４５５に付加される。
【００５７】
代替実施形態において、特定のフィールドに関連付けられたメタデータを使用して、フィールドに関する属性を識別することができる。例えば、メタデータを使用して、フィールドが数値フィールドおよび／または日付フィールドであるかどうかを識別することができる。
【００５８】
いくつかの実施形態では、ＯＬＡＰデータを示すフィールドを、レイアウトペイン４５４およびデータサマリテーブル３２０に自動的に付加する際に、以下のルールが使用される：
Ａ．ＯＬＡＰ階層／ＯＬＡＰと名付けられたセット
１．階層は、行ゾーンに付加される
２．階層は、行ゾーン内におけるすべての別のフィールドの内部でネストされる
３．複数のレベルが存在する階層については、最高レベルのフィールドがデータサマリテーブル内に表示され、ユーザは、より低いレベルのフィールドを見るためにドリルすることができる
Ｂ．ＯＬＡＰ数量／ＯＬＡＰ  ＫＰＩ表現式
１．少なくとも１つの数量がすでに付加されている場合、数量は、すでに付加されている数量と同じゾーンに付加される
２．第２数量の付加は、データフィールド（例えば、図１０の「Σ  Ｖａｌｕｅ」フィールドを参照のこと）をレイアウトペイン内に取り込み（ｉｎｔｒｏｄｕｃｅ）、データフィールドは、デフォルトとして列ゾーンに配置される。値ゾーン内に複数のフィールドが存在する場合、データフィールドは、レイアウトゾーンに配置される
３．付加される場合、データフィールドは、列ゾーン内におけるすべての別のフィールドの内部でネストされる
４．データフィールドは、行ゾーン内または列ゾーン内のいずれかに存在する
【００５９】
いくつかの実施形態では、非ＯＬＡＰデータを示すフィールドまたはリレーショナルフィールドを、レイアウトペイン４５４およびデータサマリテーブル３２０に自動的に付加する際に、以下のさらなるルールが使用される：
Ａ．非数値フィールドについては、フィールドは、行ゾーンに付加される。フィールドは、行ゾーン内におけるすべての別のフィールドの内部でネストされる
Ｂ．数値フィールドについては、フィールドは、値ゾーンに付加される
１．少なくとも１つのフィールドがすでに値ゾーン内にある場合、このフィールドは、すでに付加されているフィールドと同じゾーンに付加されることになる
２．値ゾーンへの第１フィールドの付加は、データフィールドをレイアウトペイン内に取り込み、データフィールドは、デフォルトとして列ゾーンに配置される
３．付加される場合、データフィールドは、列ゾーン内におけるすべての別のフィールドの内部でネストされる
４．データフィールドは、行ゾーン内または列ゾーン内のいずれかに存在する
【００６０】
ＩＩＩ．フィルタリングタスクペイン    
再び図１１を参照すると、１つまたは複数のフィルタは、データサマリテーブル３２０内に含まれる情報を制限するために、特定のフィールドの項目に適用することができる。例えば、ユーザは、タスクペイン４５０のフィールドペイン４５２内にリストされた特定のフィールド用のドロップダウン領域５６２を使用して、フィルタリングタスクペイン７００にアクセスすることができる。
【００６１】
次に図２０を参照すると、例示的なフィルタリングタスクペイン７００が示されている。インターフェース７００は一般に、フィールドセレクタドロップダウンコントロール７０５、手動フィルタ領域７０７、およびフィルタリングコントロール領域７０９を含む。
【００６２】
セレクタドロップダウンコントロール７０５を使用して、フィルタリングのための異なるフィールドを選択することができる。ＯＬＡＰデータについては、セレクタドロップダウンコントロール７０５におけるフィールドは、階層的な配置によって表示することができ、ドロップダウンコントロール７０５を使用して、フィルタリングのための異なるレベルのＯＬＡＰデータを選択することができる。図示されている例では、選択されたフィールドは、「Ｃｏｕｎｔｒｙ（国）」フィールドである。
【００６３】
手動フィルタ領域７０７は、セレクタドロップダウンコントロール７０５において示されたフィールドに関連付けられたすべての項目をリストする。チェックボックスを、手動フィルタ領域７０７内にリストされた各項目に関連付けて、フィルタに含まれる項目をユーザが手動で選択することを可能にする。図２１を参照すると、ＯＬＡＰデータについては、ドリルインジケータ  プラス／マイナス（＋／−）サインをクリックして、手動フィルタ領域７０７内にリストされた各フィールドに関連付けられた項目を展開したり、折り畳んだりすることによって、サブ項目にアクセスすることができる。例えば、「Ｄｒｉｎｋ（飲料）」および「Ｆｏｏｄ（食品）」という項目が、展開された形態で示されている。チェックボックス７１３は、「Ｆｏｏｄ（食品）」の項目用に選択され、その結果、「Ｆｏｏｄ（食品）」の各サブ項目を選択することにもつながる。「Ｄｒｉｎｋ（飲料）」の項目については、「Ａｌｃｏｈｏｌｉｃ  Ｂｅｖｅｒａｇｅｓ（アルコール飲料）」のサブ項目のみが選択され、「Ｄｒｉｎｋ（飲料）」の項目に関連付けられたチェックボックス７１２には、「Ｄｒｉｎｋ（飲料）」項目のサブ項目のうちの一部のみが選択されていることを示すために、ミックスインジケータ（ｍｉｘ  ｉｎｄｉｃａｔｏｒ）が提示される。「ｓｅｌｅｃｔ  ａｌｌ（すべて選択）」チェックボックス７１１を選択して、フィルタ領域７０７に示されるすべてのレベルで、各々の項目を選択／選択解除することができる。
【００６４】
再び図２０を参照すると、ユーザが異なるフィールドを選択するためにセレクタドロップダウンコントロール７０５を使用した場合、それに応じて、手動フィルタ領域７０７は、セレクタドロップダウンコントロール７０５に示されるフィールドに関連付けられた項目をリストするために、更新される。新たに選択されたフィールドが、セレクタドロップダウンコントロール７０５において、元々選択されたフィールドと同じ階層の別のレベルからのものである場合、すべてのレベルの項目がＯＬＡＰデータ用に手動フィルタ領域７０７内に示されるので、手動フィルタ領域７０７は変更されないままである。
【００６５】
フィルタリングコントロール領域７０９は、セレクタドロップダウンコントロール７０５において示される選択されたフィールドに対する適用のために利用可能なフィルタコントロールをリストする。コントロール７１０によって、ユーザは、フィルタリングされた項目がリストされる順番を変更することができる。例えば、ユーザは、コントロール７１０のうちの１つを選択して、フィルタリングされた項目がＡからＺ、または、ＺからＡのアルファベット順でリストされるようにすることができる。コントロール７１５を使用して、特定のフィールドによってソートすることなどの、さらなるソートのオプションを提供することができる。
【００６６】
ユーザは、コントロール７２０を選択して、ドロップダウンセレクタ７０５におけるフィールド用のすべてのフィルタリングを除去することができる。コントロール７２５および７３０によって、ユーザは、特定のフィルタを選択して、ドロップダウンセレクタ７０５におけるフィールドに適用することができる。例えば、ユーザがコントロール７２５を選択した場合、図２２に示されているように、ユーザにはフライアウトメニュー（ｆｌｙ−ｏｕｔ  ｍｅｎｕ）７４０が提示される。メニュー７４０は、選択されたフィールドに適用することが可能な複数のフィルタをリストする。メニュー７４０にリストされているフィルタは、通常はラベルフィールドに適用されるフィルタである。このフィルタには、「Ｂｅｇｉｎｓ  Ｗｉｔｈ（で始まる）」、「Ｄｏｅｓ  Ｎｏｔ  Ｂｅｇｉｎ  Ｗｉｔｈ（で始まらない）」、「Ｅｎｄｓ  Ｗｉｔｈ（で終わる）」、「Ｄｏｅｓ  Ｎｏｔ  Ｅｎｄ  Ｗｉｔｈ（で終わらない）」、「Ｃｏｎｔａｉｎｓ（を含む）」、および「Ｄｏｅｓ  Ｎｏｔ  Ｃｏｎｔａｉｎ（を含まない）」が含まれるが、これらに限定されるものではない。ユーザは、メニュー７４０からフィルタを選択して、そのフィルタをフィールド内の項目に適用することができる。同様に、ユーザは、コントロール７３０を選択して、図２３に示されているように、フライアウトメニュー７４５にアクセスすることができる。メニュー７４５は、値フィールドに適用することが可能なフィルタを含む。このフィルタには、「Ｅｑｕａｌｓ（と等しい）」、「Ｄｏｅｓ  Ｎｏｔ  Ｅｑｕａｌ（と等しくない）」、「Ｇｒｅａｔｅｒ  Ｔｈａｎ（より大きい）」、「Ｇｒｅａｔｅｒ  Ｔｈａｎ  Ｏｒ  Ｅｑｕａｌ  Ｔｏ（以上）」、「Ｌｅｓｓ  Ｔｈａｎ（より小さい）」、「Ｌｅｓｓ  Ｔｈａｎ  Ｏｒ  Ｅｑｕａｌ  Ｔｏ（以下）」、「Ｂｅｔｗｅｅｎ（の間にある）」、および「Ｎｏｔ  Ｂｅｔｗｅｅｎ（の間にない）」が含まれるが、これらに限定されるものではない。
【００６７】
次に図２４を参照すると、ユーザが、フライアウト７４０、７４５のうちの１つからフィルタを選択した場合、ユーザには、所望のフィルタを構築するために、ダイアログボックス７６０などのダイアログボックスが提示される。ダイアログボックス７６０には、セレクタドロップダウンコントロール７０５において選択されたフィールドを含むフィールド選択ボックス７７２が予め配置されており、フラウアウト７４０、７４５から選択されたフィルタを含むフィルタ選択ボックス７７４が予め配置されている。ユーザは、フィールド選択ボックス７７２におけるドロップダウンメニューを選択することによって異なるフィールドを選択して、例えば、値ゾーン４５７内に現在含まれている別のフィールドにアクセスすることができる。ユーザは、フィルタ選択ボックス７７４におけるドロップダウンメニューを選択することによって異なるフィルタを選択して、データ型用に利用可能なすべてのフィルタのリストを提供することができる。基準ボックス７７６によって、ユーザは、基準ボックス７７６におけるフィルタリングのために、値を配置させることができる。例えば、ユーザが、手動フィルタ領域７０７内で、「Ｓｔｏｒｅ  Ｓａｌｅｓ（店舗売上）」という項目を選択し、次いでフライアウト７４５から「Ｇｒｅａｔｅｒ  Ｔｈａｎ（より大きい）」というフィルタを選択した場合、ダイアログボックス７７０が、ユーザに提示される。ユーザは、基準ボックス７７６に「５００００」という値を入力して、５００００ドルよりも多いすべての店舗売上をフィルタリングするフィルタを設定することができる。
【００６８】
次に図２５を参照すると、コントロール７２５および７３０は、セレクタドロップダウンコントロール７０５において示されているフィールドの型に応じて、変更することが可能である。例えば、タスクペイン７００は、データ型のフィールドを含み、したがって、日付によるフィルタリングを可能にするコントロール７２５と、値によるフィルタリングを可能にするコントロール７３０とを含む。ユーザは、コントロール７２５を選択して、図２６に示されているように、フライアウトメニュー７６０にアクセスすることができる。フライアウトメニュー７６０は、データ型のフィールドに適用することが可能な複数のフィルタを含む。
【００６９】
いくつかの実施形態では、選択されたフィールドに対して適用可能なコントロールのみが、ユーザに提示される。例えば、ユーザが、日付型でも数値型でもない型のフィールドを選択した場合、コントロール７２５は、そのようなフィールドに対して適用可能なフィルタを含むフライアウトメニュー７４０を提供するために有効になる。ユーザが日付フィールドを選択した場合、コントロール７２５は、日付フィールドに対して適用可能なフィルタを含むフライアウトメニュー７６０を提供するために有効になる。ユーザが、日付型ではない数値型のフィールドを選択した場合、コントロール７３０は、数値データフィールドに対して適用可能なフィルタを含むフライアウトメニュー７４５を提供するために有効になる。
【００７０】
いくつかの実施形態では、フィルタは、所与のフィールドがデータサマリテーブル３２０へ付加される前に、当該所与のフィールドに関連付けることができる。フィルタは、実際には、特定のフィールドがデータサマリテーブル３２０に付加される場合に適用される。このようにして、データサマリテーブル３２０上でアクセスされ、要約されるデータの量を減少させることが可能であり、それによって効率性を高めることができる。フィルタが、データサマリテーブル３２０内にすでに含まれているフィールドに適用される場合、データサマリテーブル３２０は、フィルタリングされた項目のみを示すために、フィルタを考慮して更新される。
【００７１】
データへの選択されたフィルタの適用に関するさらなる詳細は、２００５年６月２１日に出願された、米国特許出願番号１１／１５７６３４、代理人整理番号１４９１７．０１０８ＵＳ０１／３１１７８．０１である、「Dynamically Filtering Aggregate Reports Based on Values Resulting from One or More Previously Applied Filters」という名称の明細書において確認することができる。米国特許出願番号１１／１５７６３４の明細書は、参照することにより、その全体が本明細書に組み込まれる。
【００７２】
フィルタリングペイン７００内のチェックボックスインジケータ７５２（図５参照）は、適用されている任意のフィルタの隣に配置される。ここで図２７を参照すると、フィルタが所与のフィールドに適用されると、フィルタがフィールドに適用されていることを示すために、タスクペイン４５０のフィールドペイン４５２内のフィールドの隣にフィルタアイコン８１０が示される。いくつかの実施形態では、同様のフィルタアイコンがまた、レイアウトペイン４５４およびデータサマリテーブル３２０内のフィルタリングされた各フィールドに関連付けられている。
【００７３】
さらに、ポインティングデバイスが、フィルタアイコン８１０を伴う特定のフィルタ上で止まる場合、図２８に示されているように、ツールチップ８３０が提示される。ツールチップ８３０は、手動フィルタ、ラベルフィルタ、および値フィルタの３つの部分のうちの１つにおいてフィルタリングされたフィールドをリストする。ツールチップ８３０はまた、適用されるフィルタの型による評価の順序で、フィルタリングされたフィールドをリストする。より長いラベルに関するフィルタの場合、ラベルの一部は、ツールチップ内に適合するように、必要に応じて切り取ることができる。各フィルタに関して、ツールチップ８３０は、手動フィルタが、最初に２０００年、２００１年、２００２年、２００３年、および２００４年に対して「Ｙｅａｒ（年）」フィールドに適用されるということを示している。次いで、ツールチップ８３０は、テキストフィルタが、「ａｂ」というテキストを要する「Ｐｒｏｄｕｃｔ  Ｎａｍｅ（製品名）」フィールドに適用されることを示している。さらなるフィルタリングもツールチップ８３０に示される。このようにして、ユーザは、どのフィルタがデータサマリテーブル３２０に対して適用されるのかを識別することができ、またツールチップ８３０を調べることによって、フィルタが適用される順序を識別することができる。
【００７４】
図示されている例では、ユーザは、タスクペイン４５０内でリストされた特定のフィールドのドロップダウン領域５６２（図１１参照）を使用して、フィルタリングタスクペイン７００にアクセスすることができる。ユーザが、データサマリテーブル３２０からインターフェース７００にアクセスする場合、セレクタドロップダウンコントロール７０５に示されているデフォルトのフィールドが、データサマリテーブル３２０内で現在選択されているフィールドである。ユーザは、セレクタドロップダウンコントロール７０５を使用して、別のフィールドを選択することができる。別の実施形態では、データサマリテーブル３２０内のドロップダウン領域８６２を選択することによって、データサマリテーブル３２０内からフィルタリングタスクペイン７００にアクセスすることも可能である。図９を参照されたい。別の実施形態では、ユーザは、データサマリテーブル３２０内で１つまたは複数のフィールドを選択し、選択されたフィールドの上を右クリックすることによって、フィルタリングタスクペイン７００にアクセスして、１つまたは複数のフィルタリングオプションにアクセスすることができる。これらのオプションには、例えば、手動フィルタを用いて選択されたフィールドを含有すること、もしくは除外すること、または、上述したように、ラベルフィルタ、日付フィルタ、もしくは値フィルタを使用して、選択されたフィールドをフィルタリングすることを含めることができる。
【００７５】
フィルタリングタスクペイン７００がデータサマリテーブル３２０からアクセスされる場合、ドロップダウンコントロール７０５内でリストされているフィールドは、ユーザがインターフェース７００にアクセスする位置に基づいて選択することができる。例えば、ユーザが、データサマリテーブル３２０の行におけるフィールドからドロップダウン領域８６２を選択した場合、行に現在存在するすべてのフィールドが示される。代わりに、ユーザが、データサマリテーブル３２０の列におけるフィールドからドロップダウン領域８６２を選択した場合、列に現在存在するすべてのフィールドが示される。
【００７６】
示されている例では、フィルタリング情報は、当該フィルタリングが適用される特定のフィールドとともに記憶される。例えば、フィルタリングが、データサマリテーブル３２０の一部ではないフィールドに適用される場合、フィルタリング情報は、そのフィールドに関連付けられ、そのフィールドがデータサマリテーブル３２０に付加されたときに適用される。同様に、フィルタを伴うフィールドがデータサマリテーブル３２０から除去された場合、フィルタリング情報は、そのフィールドとともに保持されるので、そのフィールドが後でデータサマリテーブル３２０に再び付加された場合には、そのフィルタが再び適用される。上述したように、フィールドに関するフィルタリングは、フィールドを選択し、次いでコントロール７２０（図２０参照）を選択することによって、除去することができる。
【００７７】
上述した様々な実施形態は、単に例として提供したにすぎず、限定的なものとして解釈すべきではない。本明細書で示され、説明されている例示的な実施形態および適用例に完全に従うことは必要とせず、また特許請求の範囲に記述されている本発明の真の趣旨および範囲から逸脱することなく、様々な変形および変更が可能であることが、当業者には容易に理解されよう。
【図面の簡単な説明】
【００７８】
【図１】例示的な汎用コンピューティングシステムを示す図である。
【図２】例示的なスプレッドシートプログラムのシートを示す図である。
【図３】スプレッドシートプログラムの例示的なデータサマリテーブルおよびタスクペインを示す図である。
【図４】図３のタスクペインの一例を示す図である。
【図５】タスクペインの別の例を示す図である。
【図６】タスクペインのレイアウトペインにおいてフィールドを置き換えるための例示的なメニューを示す図である。
【図７】図４のタスクペインのレイアウトペインにおいてフィールドを置き換えるための例示的な方法を示す図である。
【図８】フィールドが表に付加されている、図３の例示的なデータサマリテーブルおよびタスクペインを示す図である。
【図９】複数のフィールドが表に付加されている、図３の例示的なデータサマリテーブルおよびタスクペインを示す図である。
【図１０】フィールドが表上で再配置されている、図９の例示的なデータサマリテーブルおよびタスクペインを示す図である。
【図１１】タスクペインの別の例を示す図である。
【図１２】図１１のタスクペインのレイアウトを変更するための例示的なメニューを示す図である。
【図１３】異なるレイアウトの図１１の例示的なタスクペインを示す図である。
【図１４】異なるレイアウトの図１１の例示的なタスクペインを示す図である。
【図１５】異なるレイアウトの図１１の例示的なタスクペインを示す図である。
【図１６】異なるレイアウトの図１１の例示的なタスクペインを示す図である。
【図１７】図４のタスクペインのレイアウトペインにおいてフィールドを配置するための例示的な方法を示す図である。
【図１８】図４のタスクペインのレイアウトペインにおいてフィールドを配置するための別の例示的な方法を示す図である。
【図１９】図４のタスクペインのレイアウトペインにおいてフィールドを配置するためのさらに別の例示的な方法を示す図である。
【図２０】例示的なフィルタリングタスクペインを示す図である。
【図２１】別のフィルタリングタスクペインのための例示的な手動フィルタ領域を示す図である。
【図２２】図２０のフィルタリングタスクペインの例示的なフライアウトメニューを示す図である。
【図２３】図２０のフィルタリングタスクペインの別の例示的なフライアウトメニューを示す図である。
【図２４】図２０のフィルタリングタスクペインの例示的なダイアログボックスを示す図である。
【図２５】フィルタリングタスクペインの別の例を示す図である。
【図２６】図２５のフィルタリングタスクペインの例示的なフライアウトメニューを示す図である。
【図２７】タスクペインの別の例を示す図である。
【図２８】図２７のタスクペインの例示的なツールチップを示す図である。
【図１】
2009508221.tif 000004
【図２】
2009508221.tif 000005
【図３】
2009508221.tif 000006
【図４】
2009508221.tif 000007
【図５】
2009508221.tif 000008
【図６】
2009508221.tif 000009
【図７】
2009508221.tif 000010
【図８】
2009508221.tif 000011
【図９】
2009508221.tif 000012
【図１０】
2009508221.tif 000013
【図１１】
2009508221.tif 000014
【図１２】
2009508221.tif 000015
【図１３】
2009508221.tif 000016
【図１４】
2009508221.tif 000017
【図１５】
2009508221.tif 000018
【図１６】
2009508221.tif 000019
【図１７】
2009508221.tif 000020
【図１８】
2009508221.tif 000021
【図１９】
2009508221.tif 000022
【図２０】
2009508221.tif 000023
【図２１】
2009508221.tif 000024
【図２２】
2009508221.tif 000025
【図２３】
2009508221.tif 000026
【図２４】
2009508221.tif 000027
【図２５】
2009508221.tif 000028
【図２６】
2009508221.tif 000029
【図２７】
2009508221.tif 000030
【図２８】
2009508221.tif 000031
【国際調査報告】
2009508221.tif 000032
2009508221.tif 000033