表計算データサマリー表を作成するためのユーザインターフェース
【課題】初心者が使用する場合でも、データを効率的かつ直観的に解析することができるデータサマリー表を作成することを可能とする。
【解決手段】データサマリー表を作成するためのグラフィカルユーザインターフェースが、複数のフィールドのリストを含むフィールドペインと、複数のゾーンを含むレイアウトペインとを含む。ゾーンは、データサマリー表の領域を表し、レイアウトペインは、フィールドペインからの複数のフィールドのうちのフィールドを前記ゾーンのうちの第1のゾーンに追加することを可能にする。データサマリー表は、フィールドがレイアウトペインに追加されると更新される。
【解決手段】データサマリー表を作成するためのグラフィカルユーザインターフェースが、複数のフィールドのリストを含むフィールドペインと、複数のゾーンを含むレイアウトペインとを含む。ゾーンは、データサマリー表の領域を表し、レイアウトペインは、フィールドペインからの複数のフィールドのうちのフィールドを前記ゾーンのうちの第1のゾーンに追加することを可能にする。データサマリー表は、フィールドがレイアウトペインに追加されると更新される。
【発明の詳細な説明】
【背景技術】
【0001】
データサマリー表は、大量のデータを解析するために使用することができる。データサマリー表の一例は、Microsoft Corporation社のEXCEL表計算ソフトウェアを使用して生成することができるPIVOTTABLEダイナミックビューである。データサマリー表は、データベースプログラムによって提供されるデータ、またはスプレッドシートのデータリスト内にあるデータを表示し要約する効率的なやり方を提供する。ユーザは、データサマリー表のページ、行、列、またはデータ領域内に含めるデータのフィールドを選択することができ、選択されたデータフィールドについて表示される合計、差異、カウントおよび標準偏差などのパラメータを選択することができる。表計算プログラム内から照会することができるデータベース内のデータ、またはリストを含む表計算データは、データサマリー表で解析することができる。
【0002】
データサマリー表は、データを効率的かつ直観的に解析することができるように設計されているが、初心者ユーザにとってはデータサマリー表の作成自体が大変難しいことであり得る。例えば、一部のプログラムは、ユーザがデータサマリー表を作成する助けとなるウィザードを提供する。これらのウィザードは最初のデータサマリー表の作成の際には有用であり得るが、それが作成されると、ウィザードは、表示を修正するためには容易に使用することができない。他のプログラムは、ユーザが所望のフィールドをデータサマリー表に直接にドラッグアンドドロップすることを可能にする。これらのプログラムは、表示を作成するときにユーザに柔軟性の向上をもたらすが、こうしたプログラムは、初心者が使用するにはあまり直観的でないことがある。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】米国特許出願第11/157634号明細書
【発明の概要】
【課題を解決するための手段】
【0004】
この要約は、以下の詳細な説明でさらに述べられる選択された概念について簡略化された形で述べるために提供されている。この要約は、特許請求の範囲に記載された主題の主な特徴または本質的な特徴を識別するためのものではなく、また特許請求の範囲に記載された主題の範囲を定める助けとして使用するためのものでもない。
【0005】
一態様によれば、データサマリー表を作成するためのグラフィカルユーザインターフェースが、複数のフィールドのリストを含むフィールドペインと、データサマリー表の領域を表す複数のゾーンを含むレイアウトペインとを含み、レイアウトペインは、フィールドペインからの複数のフィールドのうちのフィールドを前記ゾーンのうちの第1のゾーンに追加することを可能にするようにプログラムされる。データサマリー表は、フィールドがレイアウトペインに追加されると更新される。
【0006】
別の態様によれば、データサマリー表のためのグラフィカルユーザインターフェースを有するコンピュータシステム内で、方法が、複数のフィールドのリストからフィールドを選択すること、データサマリー表の領域を表す複数のゾーンのうちの第1のゾーンにフィールドを追加すること、およびフィールドがレイアウトペインの第1のゾーンに追加されるとデータサマリー表を更新することを含む。
【0007】
別の態様によれば、コンピュータ読取り可能媒体が、複数のフィールドのリストからフィールドを選択すること、データサマリー表の領域を表す複数のゾーンのうちの第1のゾーンにフィールドを追加すること、およびフィールドがレイアウトペインの第1のゾーンに追加されるとデータサマリー表を更新することを含むステップを実施するためのコンピュータ実行可能命令を含む。
【0008】
次に、添付の図面に言及する。図面は、必ずしも一定の尺度で作られていない。
【図面の簡単な説明】
【0009】
【図1】例示的な汎用コンピューティングシステムを示す図である。
【図2】表計算プログラムの例示的なシートを示す図である。
【図3】表計算プログラムの例示的なデータサマリー表およびタスクペインを示す図である。
【図4】図3の例示的なタスクペインを示す図である。
【図5】別の例示的なタスクペインを示す図である。
【図6】タスクペインのレイアウトペイン内にフィールドを配置するための例示的なメニューを示す図である。
【図7】図4のタスクペインのレイアウトペイン内にフィールドを配置するための例示的な方法を示す図である。
【図8】表にフィールドが追加されている、図3の例示的なデータサマリー表およびタスクペインを示す図である。
【図9】表に複数のフィールドが追加されている、図3の例示的なデータサマリー表およびタスクペインを示す図である。
【図10】表の上でフィールドが再配列されている、図9の例示的なデータサマリー表および例示的なタスクペインを示す図である。
【図11】別の例示的なタスクペインを示す図である。
【図12】図11のタスクペインのレイアウトを修正するための例示的なメニューを示す図である。
【図13】異なるレイアウトの図11の例示的なタスクペインを示す図である。
【図14】異なるレイアウトの図11の例示的なタスクペインを示す図である。
【図15】異なるレイアウトの図11の例示的なタスクペインを示す図である。
【図16】異なるレイアウトの図11の例示的なタスクペインを示す図である。
【図17】図4のタスクペインのレイアウトペイン内にフィールドを配置するための例示的な方法を示す図である。
【図18】図4のタスクペインのレイアウトペイン内にフィールドを配置するための別の例示的な方法を示す図である。
【図19】図4のタスクペインのレイアウトペイン内にフィールドを配置するための別の例示的な方法を示す図である。
【図20】例示的なフィルタリングタスクペインを示す図である。
【図21】別のフィルタリングタスクペインの例示的な手動フィルタリング領域を示す図である。
【図22】図20のフィルタリングタスクペインの例示的なフライアウトメニューを示す図である。
【図23】図20のフィルタリングタスクペインの別の例示的なフライアウトメニューを示す図である。
【図24】図20のフィルタリングタスクペインの例示的なダイアログボックスを示す図である。
【図25】別の例示的なフィルタリングタスクペインを示す図である。
【図26】図25のフィルタリングタスクペインの例示的なフライアウトメニューを示す図である。
【図27】別の例示的なタスクペインを示す図である。
【図28】図27のタスクペインの例示的なツールチップを示す図である。
【発明を実施するための形態】
【0010】
次に、添付された図面を参照して、本発明の実施形態について以下により完全に述べる。本明細書に開示された実施形態は、例示的なものであり、限定的なものと解釈すべきではなく、これらの実施形態は、この開示が徹底的であり完全となるように提供されている。同じ番号は、全体を通して同様の要素に言及する。
【0011】
本明細書に示された実施形態は、コンピュータシステム上でデータを解析するために使用されるデータサマリー表に関する。
【0012】
次に図1を参照すると、例示的なコンピュータシステム100が示されている。図1に示されたコンピュータシステム100は、例えばデスクトップコンピュータ、ラップトップコンピュータおよび携帯型コンピュータなど、様々な形を取ることができる。さらに、コンピュータシステム100が示されているが、本明細書に開示されたシステムおよび方法は、様々な代替のコンピュータシステム内でも同様に実装することができる。
【0013】
システム100は、処理装置102と、システムメモリ104と、システムメモリ104を含めて様々なシステム構成要素を処理装置102に結合するシステムバス106とを含む。システムバス106は、メモリバス、周辺バス、および様々なバスアーキテクチュアのいずれかを使用したローカルバスを含めて、複数のタイプのバス構造のいずれかであり得る。システムメモリは、読出し専用メモリ(ROM:read only memory)108とランダムアクセスメモリ(RAM:random access memory)110とを含む。コンピュータ100内の要素間で情報を転送するのに役立つ基本ルーチンを含む基本入出力システム(BIOS:basic input/output system)112は、ROM108に格納される。
【0014】
コンピュータシステム100はさらに、ハードディスクから読み出し、またそれに書き込むためのハードディスクドライブ112と、取外し可能磁気ディスク116から読み出しまたはそこに書き込む磁気ディスクドライブ114と、CD−ROM、DVDなどの取外し可能光ディスク119または他の光学媒体から読み出しまたはそこに書き込むための光ディスクドライブ118とを含む。ハードディスクドライブ112、磁気ディスクドライブ114および光ディスクドライブ118は、それぞれハードディスクドライブインターフェース120、磁気ディスクドライブインターフェース122、および光学ドライブインターフェース124によってシステムバス106に接続される。ドライブおよびその関連するコンピュータ記憶読取り可能媒体は、コンピュータ読取り可能命令、データ構造体、プログラム、およびコンピュータシステム100のための他のデータの不揮発性記憶域を提供する。
【0015】
本明細書で述べられた例示的な環境は、ハードディスク112、取外し可能磁気ディスク116および取外し可能光ディスク119を使用することができるが、例示的なシステム100内では、データを格納することができる他のタイプのコンピュータ読取り可能媒体を使用することができる。例示的な動作環境内で使用することができるこれらの他のタイプのコンピュータ読取り可能媒体の例には、磁気カセット、フラッシュメモリカード、デジタルビデオティスク、ベルヌーイカートリッジ、ランダムアクセスメモリ(RAM)および読出し専用メモリ(ROM)が含まれる。
【0016】
オペレーティングシステム126、1つまたは複数のアプリケーションプログラム128、他のプログラムモジュール130およびプログラムデータ132を含めて、複数のプログラムモジュールをハードディスク112、磁気ディスク116、光ディスク119、ROM 108、RAM 110に格納することができる。
【0017】
ユーザは、例えばキーボード134、マウス136または他のポインティング装置などの入力装置を用いて、コンピュータシステム100にコマンドおよび情報を入力してもよい。他の入力装置の例には、ツールバー、メニュー、タッチスクリーン、マイクロホン、ジョイスティック、ゲームパッド、ペン、衛星放送アンテナおよびスキャナが含まれる。これらおよび他の入力装置はしばしば、システムバス106に結合されたシリアルポートインターフェース140を介して処理装置102に接続される。しかし、これらの入力装置は、パラレルポート、ゲームポートまたはユニバーサルシリアルバス(USB:universal serial bus)など、他のインターフェースによって接続することもできる。LCDディスプレイ142または他のタイプの表示装置も、ビデオアダプタ144などのインターフェースを介してシステムバス106に接続される。ディスプレイ142に加えて、コンピュータシステムは一般に、スピーカおよびプリンタなど、他の周辺出力装置(図示せず)を含むことができる。
【0018】
コンピュータシステム100は、リモートコンピュータ146など、1つまたは複数のリモートコンピュータへの論理接続を使用して、ネットワーク化された環境内で動作してもよい。リモートコンピュータ146は、コンピュータシステム、サーバ、ルータ、ネットワークPC、ピアデバイスまたは他の一般的なネットワークノードであってもよく、コンピュータシステム100に関して上記で述べた要素の多くまたはすべてを一般に含む。ネットワーク接続は、ローカルエリアネットワーク(LAN:local area network)148と、広域ネットワーク(WAN:wide area network)150とを含む。こうしたネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネットおよびインターネットでは一般的である。
【0019】
LANネットワーキング環境内で使用されるとき、コンピュータシステム100は、ネットワークインターフェースまたはアダプタ152を介してローカルエリアネットワーク148に接続される。WANネットワーキング環境内で使用されるとき、コンピュータシステム100は一般に、モデム154、あるいはインターネットなどの広域ネットワーク150を介して通信を確立するための他の手段を含む。内部にあることも、外部にあることもあるモデム154は、シリアルポートインターフェース140を介してシステムバス106に接続される。ネットワーク化された環境では、コンピュータシステム100に関して示されたプログラムモジュール、またはその一部は、リモートメモリ記憶装置に格納してもよい。示されたネットワーク接続は、例示的なものであり、コンピュータ間の通信リンクを確立する他の手段を使用してもよいことが理解されよう。
【0020】
本明細書で述べられた諸実施形態は、コンピューティングシステム内の論理操作として実装することができる。論理操作は、(1)コンピュータシステム上で実行されるコンピュータ実装ステップのシーケンスまたはプログラムモジュール、および(2)コンピューティングシステム内で実行される相互接続された論理またはハードウェアモジュールとして実装することができる。この実装形態は、特定のコンピューティングシステムの性能要件に依存する選択の問題である。したがって、本明細書で述べられた諸実施形態を構成する論理操作は、操作、ステップまたはモジュールと呼ばれる。これらの操作、ステップおよびモジュールは、本明細書に添付された特許請求の範囲中に述べられた本発明の精神および範囲から逸脱せずに、ソフトウェア、ファームウェア、特別目的のデジタル論理、およびその任意の組合せで実装してもよいことが当業者には理解されよう。このソフトウェア、ファームウェア、またはコンピュータ命令の類似のシーケンスは、符号化され、コンピュータ読取り可能記憶媒体内に格納されてもよく、またコンピューティング装置内で送信するために搬送波信号中で符号化されることもできる。
【0021】
次に図2を参照すると、例示的なプログラム200が示されている。一実施例では、プログラム200は、上記で述べられたコンピュータシステム100などのコンピュータシステム上で実行されるMicrosoft社のEXCEL表計算ソフトプログラムである。プログラム200は、データ210の例示的なリストを伴うスプレッドシート205を含む。ユーザは、データ210から、データサマリー表を作成することができる。
【0022】
例えば、次に図3を参照すると、プログラム200の例示的なユーザインターフェース302が示されている。ユーザインターフェース302は、初期データサマリー表320(図3ではデータサマリー表320は空白である)を含む。データサマリー表320は、様々なソースからのデータから作成することができる。図3に示された一実施例では、以下にさらに述べられるように、データサマリー表320は、1つまたは複数のデータベースからのデータから作成することができる。他の実施形態では、データサマリー表320は、図2に示されたデータ210など、スプレッドシート内のデータから作成することができる。
【0023】
プログラム200のユーザインターフェース302は、データサマリー表320を作成し修正するために使用することができる例示的なタスクペイン450をも含む。例えば、タスクペイン450は、データ210からのフィールドのリストを含む。ユーザは、以下にさらに述べられるように、データサマリー表320を作成するために、タスクペイン450からフィールドを選択し、また選択解除することができる。
【0024】
I.タスクペイン
次に図4を参照すると、例示的なタスクペイン450が示されている。タスクペイン450は一般に、フィールドペイン452とレイアウトペイン454とを含む。以下にさらに述べられるように、タスクペイン450は、データサマリー表320を作成し修正するために使用される。
【0025】
フィールドペイン452は、所与のデータベースまたはスプレッドシート(例えば上記の図2に示されたスプレッドシート205など)内の各フィールドのリスト453を含む。フィールドのリスト453がフィールドペイン452によって提供されたスペースより長いので、スクロールバー451が提供される。一部の実施形態では、フィールドペイン452(およびレイアウトペイン454もまた)、ユーザによってサイズ変更することができる。リスト453内の各フィールドは、フィールドの隣にチェックボックスを含む。例えば、フィールド「Profit(利益)」は、フィールドキャプションに隣接して置かれたチェックボックス460を含む。以下で述べられるようにリスト453内フィールドがレイアウトペイン454に追加されるとき、フィールドに関連するチェックボックスがチェックされる。例えば、「Profit」フィールドのチェックボックス460は、レイアウトペイン454に追加されているのでチェックされている。
【0026】
レイアウトペイン454は、タスクペイン450を使用して作成されるデータサマリー表320の態様を表す複数のゾーンを含む。例えば、レイアウトペイン454は、行ゾーン455と、列ゾーン456と、値ゾーン457と、フィルタゾーン458とを含む。行ゾーン455は、結果として生じるデータサマリー表320の行ラベルを定義する。列ゾーン456は、データサマリー表320の列ラベルを定義する。値ゾーン457は、データサマリー表320上で要約される(例えば集約、変動など)データを識別する。フィルタゾーン458は、他のゾーン455、456、457内の他のすべてのフィールドに適用されるフィルタリングの選択を可能にする(例えば、あるフィールドをフィルタゾーン458に置くことができ、レイアウトペイン454内の他のすべてのフィールドについて、フィルタゾーン458内のフィールドについて選択されたアイテム(複数可)に関連するアイテムだけを示すためのフィルタを作成するために、フィルタゾーン458内のそのフィールドに関連する1つまたは複数のアイテムを選択することができる)。
【0027】
データサマリー表320を作成し修正するために、フィールドペイン452からのフィールドのうちの1つまたは複数が、レイアウトペイン454のゾーンのうちの1つまたは複数に追加される。示された実施例では、ユーザは、データサマリー表320にフィールドを追加するために、フィールドペイン452のリスト453からのフィールドをクリックし、レイアウトペイン454のゾーンのうちの1つにドラッグアンドドロップすることができる。
【0028】
例えば、図5に示されるように、ユーザは、「Store Sales(店舗売上高)」フィールド466など、フィールドペイン452内に含まれた特定フィールドの上でホバーすることができる。ユーザがフィールド上でホバーするとき、十字形のカーソル472がユーザに提示され、この十字形のカーソルは、ユーザが選択されたフィールドをクリックし、フィールドペイン452からレイアウトペイン454のゾーンのうちの1つにドラッグできることを示す。ユーザがフィールドを選択すると、十字形カーソル472は通常のカーソルに戻り、示されるように、「Store Sales」フィールド466を値ゾーン457にドラッグアンドドロップすることができる。フィールドは同様に、レイアウトペイン454からフィールドを選択しドラッグすることによってレイアウトペイン454から削除することができる。
【0029】
別の実施例では、ユーザは、レイアウトペイン454にフィールドを追加するために、フィールドペイン452内の特定のフィールドに関連するチェックボックスをチェックすることができる。例えば、ユーザが、図4のタスクペイン450内に示された「Profit」フィールドに関連するチェックボックス460を選択する場合、このフィールドは、値ゾーン457に、「Profit」フィールド462として追加することができる。以下にさらに述べられるように、プログラム200は、選択されたフィールドを解析し、レイアウトペイン454の適切なゾーン内に置くようにプログラムされることができる。ユーザは同様に、レイアウトペイン454からフィールドを削除するために、チェックされたフィールドを選択解除することができる。例えば、ユーザがチェックボックス460を選択解除する場合、「Profit」フィールド462は、レイアウトペイン454から削除される。
【0030】
オプションの実施例では、ユーザがドロップゾーン454のゾーンのうちの1つにフィールドをドラッグしないでフィールドを選択するために所与のフィールドをクリックする場合、ユーザがフィールドをどのゾーンに置くか選択することを可能にするメニュー(例えば図6に示されたメニュー482に類似する)がユーザに提示され得る。
【0031】
次に図7を参照すると、フィールドペイン452からのフィールドをレイアウトペイン454のゾーンに追加するための例示的な方法500が示されている。操作501で、ユーザは、レイアウトペイン454に追加する、フィールドペイン452内にリストされたフィールドを選択する。操作502で、ユーザが特定のフィールドに関連するチェックボックスを選択したかどうか決定される。ユーザがチェックボックスを選択した場合は、制御は操作503にわたされ、プログラム200は、選択されたフィールドをレイアウトペイン454のどのゾーンに置くか自動的に決定することができる。次に、操作507で、フィールドは、レイアウトペイン454の適切なゾーンに追加される。
【0032】
操作502で、ユーザがチェックボックスを選択していないと決定される場合は、制御は操作504にわたされる。操作504で、ユーザがフィールドを選択して、レイアウトペイン454のゾーンのうちの1つにドラッグアンドドロップしたか決定される。ユーザがフィールドをレイアウトペイン454のゾーンのうちの1つにドロップしている場合は、制御は操作507にわたされ、フィールドはそのゾーンに追加される。
【0033】
操作504で、ユーザがフィールドをドラッグアンドドロップしていないと決定される場合は、オプションの実施形態では、ユーザがチェックボックスを選択せずに、またはフィールドをレイアウトペイン454のゾーンにドラッグ/ドロップせずにフィールドを選択しているので、制御は操作505にわたされる。操作505で、プログラム200は、フィールドを追加するゾーンをユーザが選択することを可能にするために、ユーザにメニューを提示する。次いで、操作506で、ユーザは、所望のゾーンを選択する。操作507で、フィールドはそのゾーンに追加される。
【0034】
フィールドがレイアウトペイン454のゾーンに追加されると、制御は操作509にわたされ、下記に述べられるように、プログラム200は、データサマリー表320をそれに応じて更新する。
【0035】
図4を再び参照すると、フィールドペイン452からの「Profit」フィールドなどのフィールドがレイアウトペイン454のゾーンのうちの1つに追加されると、フィールドペイン452内のそのフィールドに関連するチェックボックス(例えばチェックボックス460)が、そのフィールドがデータサマリー表320の一部であることを示すためにチェックされる。さらに、フィールドペイン452内のフィールドに関連するフィールドラベルのフォントは、太字にされる。同様に、フィールドがデータサマリー表320の一部にまだなっていない(またはそこから削除されている)場合は、そのフィールドに関連するチェックボックスはチェックされないままであり、フィールドは、太字ではなく通常のフォントで示される。データサマリー表320の一部であるフィールドを示すための他の方法を使用することもできる。
【0036】
フィールドが追加され、またタスクペイン450のレイアウトペイン454から削除されるとき、結果として生じるデータサマリー表320は、それに応じて修正される。例えば、ユーザには最初、図3に示されるように、フィールドペイン452を含むタスクペイン450が提示される。図8を参照すると、ユーザが「Profit」フィールドをレイアウトペイン454のゾーン457に追加するとき、「Profit」フィールドに関連するデータの合計が、データサマリー表320に自動的に追加される。図9を参照すると、ユーザは、追加のフィールド(例えば「Sales Average(平均売上高)」、「Customers(顧客)」、「Gender(性別)」)をレイアウトペイン454のゾーンに追加することができ、データサマリー表320は、追加されたフィールドに関するデータを含むように更新される。
【0037】
図10を参照すると、ユーザは、フィールドをあるゾーンからタスクペイン450のレイアウトペイン454内の別のゾーンに移動することもでき、データサマリー表320は、それに応じて更新される。例えば、ユーザは、「Gender」フィールドを列ゾーン456から行ゾーン455に移動することができ、データサマリー表320は、その変更を反映するように自動的に更新される。ユーザは、データサマリー表320内にフィールドが表示される順序を変更するために、所与のゾーン455、456、457、458内のフィールドを移動することもできる。例えば、ユーザは、データサマリー表320内で「Gender」フィールドが「Customer」フィールドの前に示されるように、行ゾーン455内で「Gender」フィールドを「Customer」フィールドの上に移動することができる。
【0038】
次に図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内のアクティブな選択肢として示される(例えば、「Move to Row Labels」はこの実施例では、フィールド481が既に行ゾーン455にあるので、非アクティブとして示されている)。
【0039】
図4を再び参照すると、タスクペイン450は、手動更新チェックボックス469をも含んでいる。チェックボックス469が選択されるとき、結果として生じるデータサマリー表320は、フィールドが追加され、再配列され、タスクペイン450のレイアウトペイン454から削除されるとき、自動的には更新されない。例えば、ユーザが手動更新チェックボックス469を選択し、次いで、レイアウトペイン454の行ゾーン455にフィールドを追加する場合、データサマリー表320は、新しく追加されたフィールドを反映するように自動的には更新されない。そうではなく、更新は、変更が行われるとアクティブになる手動更新ボタン471をユーザが選択した後に行われ、手動更新が実施されることができる。手動更新は、データサマリー表320の作成のためにかなりの取出しおよび処理時間を要する大量のデータを扱うときに効率を向上させるために使用することができる。このようにして、所望のフィールドおよびフィルタリングをデータサマリー表320の作成または修正の前に選択することができ、この作成または修正は、手動更新ボタン471が選択されると行われ、それによって効率が向上する。
【0040】
図11を参照すると、フィールドペイン452内に示されたフィールドが、「オンライン解析処理」(OLAP:online analysis processing)タイプのデータフィールドを表している。(それとは対照的に、図5のフィールドペイン452内に示されたフィールドは、リレーショナルフィールドと呼ばれることがある非OLAPタイプである。)OLAPは、データベース内に格納されたデータの解析を提供するツールのカテゴリである。OLAPツールは、ユーザが多次元のデータのそれぞれ異なる次元を解析することを可能にする。OLAPデータフィールドは、複数のレベルを有する階層構造で配列される。例えば、「Sales Fact 1991(売上データ1991年)」フィールドは、サブフィールド「Store Sales」と、「Unit Sales(売上数)」と、「Store Cost(店舗コスト)」とを含む。サブフィールドは、サブフィールドを展開し、また折りたたむためのドリルインジケータ(プラス/マイナス、+/−符号)556をクリックすることによってアクセスすることができる。OLAPデータは、階層およびメジャーを有するディメンションに配列することができる。
【0041】
示された実施形態では、フィールドペイン452内にリストされた各フィールドは、複数の構成要素を含む。フィールドは、フィールド上をホバーしまたはクリックすることによって強調させることができる。例えば、図11に示される「Product(製品)」フィールドなどの各フィールドは、ユーザがフィールドを選択しドラッグすることを可能にする選択領域558、559を含む。各フィールドは、データサマリー表320からフィールドを追加し/削除するために使用することができるチェックボックス560をも含む。さらに、OLAPデータタイプの各フィールドは、フィールドに関連するサブフィールドを展開し、また折りたたむために使用されるドリルインジケータ556を含むことができる。さらに、各フィールドは、以下にさらに述べられるように、フィルタリングオプションにアクセスするために使用されるドロップダウン領域562を含む。
【0042】
図4を再び参照すると、タスクペイン450は、ユーザがタスクペイン450のレイアウトを修正することを可能にするコントロール470をも含む。例えば、図12に示されるように、ユーザは、レイアウトメニュー572にアクセスするためにコントロール470を選択することができる。レイアウトメニュー572は、ペイン452および454を配列するために使用される。例えば、ユーザがコントロール470で「Fields and Layout stacked(フィールドとレイアウトを積み重ねて)」573を選択する場合は、タスクペイン450内でフィールドペイン452は、図4に示されるように、統合された単一のペインを形成するようにレイアウトペイン454上に置かれる。ユーザがコントロール470で「Fields and Layout side by side(フィールドとレイアウトを並べて)」574を選択する場合は、タスクペイン450内でフィールドペイン452は、図13に示されるように、統合された単一のペインを形成するようにレイアウトペイン454の横に沿って置かれる。ユーザがコントロール470で「Fields only(フィールドのみ)」575を選択する場合は、図14に示されるようにフィールドペイン452が分離して示される。ユーザがコントロール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で分離して示される。
【0043】
図5に示される実施例では、フィールドペイン452内のフィールドは、アルファベット順でリストされている。図4に示されるものなどのOLAPタイプデータを含むリストでは、メジャーがまず示され、その後にディメンションがアルファベット順に示される。示された実施例では、ディメンションフォルダは展開した形で示されており、他のすべてのフィールドは折りたたんだ形で示されている。他の配置を使用することもできる。
【0044】
II.レイアウトペイン内のフィールドの自動配置
図4を再び参照すると、ユーザがフィールドに関連するチェックボックスをチェックすることによってフィールドを選択する場合、プログラム200は、以下に述べるように、選択されたフィールドをレイアウトペイン454のゾーンのうちの1つに自動的に置くようにプログラムされる。
【0045】
一般に、数値タイプのフィールドは値ゾーン457に追加され、非数値タイプのフィールドは、レイアウトペイン454の行ゾーン455に追加される。例えば、数値タイプ(例えば売上金額の数字(monetary sales figures))のフィールドは一般に、集約され、したがって値ゾーン457に置かれ、非数値タイプ(例えば製品名)のフィールドは一般に行ラベルとして使用され、したがって、行ゾーン455内に自動的に置かれる。
【0046】
次に図17を参照すると、選択されたフィールドをレイアウトペイン454のゾーンのうちの1つに自動的に追加するための例示的な方法600が示されている。操作601で、ユーザは、例えばフィールドに関連するチェックボックスを使用して、フィールドペイン452内のフィールドを選択する。次いで、操作602で、フィールドが数値タイプかどうか決定される。フィールドが数値タイプである場合は、制御は操作603にわたされ、フィールドは、集約のために値ゾーン457に追加される。操作602でフィールドが数値タイプでないと決定される場合は、制御は操作604にわたされ、フィールドは行ゾーン455に追加される。
【0047】
一部の実施形態では、レイアウトペイン454内の別の配置がより適切かどうか決定するために、フィールドを値ゾーン457に追加する前に、数値タイプのフィールドをさらに解析することができる。例えば、複数の郵便番号値を含むフィールドは数値タイプであるが、こうしたフィールドを値ゾーン457ではなく、行ゾーン455に置くことが一般に望ましい。このために、一部の実施形態では数値タイプのフィールドが、レイアウトペイン454内の所望の配置を識別するために、データ意味論を使用してさらに解析される。
【0048】
一実施形態では、値ゾーン457ではなく行ゾーン455に追加される数値タイプのフィールドを識別するために、以下の例示的な表1などのルックアップテーブルが使用される。
【0049】
【表1】
【0050】
表1では、以下にさらに述べられるように、列「FieldTypeString」は、選択されたフィールドのキャプションと比較されるテキスト文字列を含む。示された実施例では、大/小文字を区別しないどんな一致をも識別するために、選択されたフィールドのキャプションが表1のFieldTypeString列の各文字列と比較される。
【0051】
FieldTypeString列のテキスト文字列と、選択されたフィールドのキャプションの間に一致がある場合は、フィールド内の数値アイテムが、表1の「MinValue」および「MaxValue」列の値を使用してさらに解析される。MinValue列の値は、所与のFieldTypeStringタイプのアイテムのいずれかの最小値を指定する。MaxValue列の値は、所与のFieldTypeStringタイプのアイテムのいずれかの最大値を指定する。特定のFieldTypeStringタイプについて表1にMinValueが定義されていない場合は、数値アイテムがMaxValue未満の整数かどうか決定される。特定のFieldTypeStringタイプについてMaxValueが定義されていない場合は、数値アイテムがMinValueより大きい整数かどうか決定される。特定のFieldTypeStringタイプについてMinValueもMaxValueも定義されていない場合は、数値アイテムが整数かどうか決定される。
【0052】
例えば、選択されたフィールドがキャプション「月」を含む場合は、表1が解析され、FieldTypeStringの値「月」との一致が識別される。次に、その数値が最小値と最大値、「1」と「12」(1月から12月を表す)の範囲にあるかどうか決定するために、フィールドに関連する数値が解析される。一実施形態では、フィールドのすべての数値アイテムがテストされる。他の実施形態では、例えばかなり大きい数の数値アイテムがある場合は、数値アイテムのサンプルだけが、表1の最小値および最大値に対してテストされる。値のすべてが最小値と最大値の範囲内にある場合は、以下にさらに述べられるように、フィールドは、値ゾーン457ではなく、行ゾーン455に追加される。
【0053】
表1に示されたテキスト文字列、ならびに最小値および最大値は、例示的なものにすぎず、異なる文字列および値を使用することができる。例えば、テキスト文字列および最小/最大値は、データが生成される地理的な位置に応じて修正することができる(例えば、電話番号値は、地理的な位置により異なり得る)。他の実施形態では、異なるタイプの意味的チェックを使用することができる。例えば、数値アイテムの実際の値のチェックに加えて、またはその代わりに、数値アイテムの桁数を解析することができる。例えば、フィールドのキャプションがテキスト文字列「郵便番号」(すなわちジップコード)に一致する場合は、桁が最小5(例えば「90210」は5桁を含む)と最大10(例えば「90210−1052」は10桁を含む)の間の範囲内にあるかどうか確かめるために、フィールド内の数値アイテムの桁数を検査することができる。
【0054】
次に図18を参照すると、選択されたフィールドをレイアウトペイン454内に自動配置するための例示的な方法610が示されている。方法610は、数値タイプのフィールドがさらに解析されることを除いては、上記で述べられた方法600に類似する。操作611で、ユーザは、例えばフィールドに関連するチェックボックスを使用して、フィールドペイン452内のフィールドを選択する。次に、操作612で、フィールドが数値タイプかどうか決定される。フィールドが非数値タイプである場合は、制御は操作613にわたされ、フィールドは行ゾーン455に追加される。
【0055】
操作612でフィールドが数値タイプであると決定される場合は、制御は操作615にわたされる。操作615で、フィールドのキャプションが解析され、操作616で、キャプションが、上記の表1に示されるようなテキスト文字列のルックアップテーブルと比較される。操作616でキャプションとテキスト文字列の間で一致しない場合は、制御は操作619にわたされ、フィールドは値ゾーン457に追加される。操作616でキャプションと表1のテキスト文字列の間で一致する場合は、制御は操作617にわたされる。
【0056】
操作617で、フィールドの数値アイテムが解析され、操作618で、数値アイテムの値が、テキスト文字列に関連する表1の最小値および最大値と比較される。数値アイテムが、上記で述べられた最小値と最大値の範囲外である場合は、制御は操作619にわたされ、フィールドは値ゾーン457に追加される。操作618で数値アイテムが最小値と最大値の範囲内にある場合は、制御は操作613にわたされ、フィールドは行ゾーン455に追加される。
【0057】
このようにして、数値タイプの特定フィールドは、自動的に識別され、デフォルトの値ゾーン457ではなく、行ゾーン455に置かれることができる。フィールドがプログラム200によってレイアウトペイン454の特定のゾーンに自動的に置かれ、ユーザがフィールドを異なるゾーンに置かれることを望む場合は、ユーザは、フィールドを選択し、所望のゾーンにドラッグすることができる。
【0058】
一部の実施形態では、日付情報に関連するフィールドが識別され、行ゾーン455または値ゾーン457ではなく、列ゾーン456に置かれる。例えば、図19に示された方法630は、操作61〜619を含めて、上記で述べられた方法610に類似する。しかし、操作618で、数値アイテムが最小値と最大値の範囲内にある場合は、制御は操作631にわたされる。操作631で、フィールドが日付フィールドかどうか決定される。示された実施例では、この決定は、キャプションが一致するテキスト文字列によって行われる。例えば、フィールドのキャプションがテキスト「日付」を含んでおり、表1のテキスト文字列「日付」に一致される場合は、フィールドは日付フィールドと識別される。フィールドが日付フィールドである場合は、制御は操作632にわたされ、フィールドは列ゾーン456に追加される。フィールドが日付フィールドでない場合は、制御は操作613にわたされ、フィールドは行ゾーン455に追加される。
【0059】
代替の実施形態では、フィールドに関する属性を識別するために、特定のフィールドに関連するメタデータを使用することができる。例えば、フィールドが数値および/または日付フィールドかどうか識別するために、メタデータを使用することができる。
【0060】
一部の実施形態では、OLAPデータを識別するフィールドをレイアウトペイン454およびデータサマリー表320に自動的に追加するときに、以下の規則が使用される。
【0061】
A.OLAP階層/OLAP名前付きセット
1.階層は、行ゾーンに追加される
2.階層は、行ゾーンの他のすべてのフィールドの内部でネストされる
3.複数レベルを有する階層について、最高レベルのフィールドがデータサマリー表に表示され、ユーザは、より低いレベルのフィールドを見るためにドリルすることができる
B.OLAPメジャー/OLAP KPI表現
1.少なくとも1つのメジャーが既に追加されている場合は、メジャーは、既に追加されているメジャーと同じゾーンに追加される
2.第2のメジャーを追加すると、レイアウトペイン内にデータフィールド(例えば図10の「Σ値」フィールドを参照)が生じ、データフィールドはデフォルト設定により列ゾーンに置かれ、値ゾーンに2つ以上のフィールドがある場合は、データフィールドはレイアウトゾーンに表示される
3.データフィールドは、追加されるときに、列ゾーンの他のすべてのフィールドの内部でネストされる
4.データフィールドは、行または列ゾーンに存在する
一部の実施形態では、非OLAPデータを識別するフィールド、またはリレーショナルフィールドをレイアウトペイン454およびデータサマリー表320に自動的に追加するときに、以下の追加の規則が使用される。
【0062】
A.非数値フィールドでは、フィールドは行ゾーンに追加され、フィールドは、行ゾーンの他のすべてのフィールドの内部でネストされる
B.数値フィールドでは、フィールドは値ゾーンに追加される
1.少なくとも1つのフィールドが既に値ゾーンにある場合は、このフィールドは、既に追加されているフィールドと同じゾーンに追加される
2.第1のフィールドを値ゾーンに追加すると、レイアウトペインにデータフィールドが生じ、データフィールドはデフォルト設定により列ゾーンに置かれる
3.データフィールドは、追加されるときに、列ゾーンの他のすべてのフィールドの内部でネストされる
4.データフィールドは、行または列ゾーンに存在する。
【0063】
III.フィルタリングタスクペイン
図11を再び参照すると、データサマリー表320に含まれる情報を制限するために、特定のフィールドのアイテムに1つまたは複数のフィルタを適用することができる。例えば、ユーザは、フィルタリングタスクペイン700にアクセスするために、タスクペイン450のフィールドペイン452にリストされた特定のフィールドのドロップダウン領域562を使用することができる。
【0064】
次に図20を参照すると、例示的なフィルタリングタスクペイン700が示されている。インターフェース700は一般に、フィールドセレクタドロップダウンコントロール705と、手動フィルタリング領域707と、フィルタリング制御領域709とを含む。
【0065】
セレクタドロップダウンコントロール705は、フィルタリングのためのそれぞれ異なるフィールドを選択するために使用することができる。OLAPデータでは、フィールドセレクタドロップダウンコントロール705内のフィールドは、階層構成で表示することができ、ドロップダウンコントロール705は、フィルタリングのためのそれぞれ異なるレベルのOLAPデータを選択するために使用することができる。示された実施例では、選択されたフィールドは、「Country(国)」フィールドである。
【0066】
手動フィルタ領域707は、セレクタドロップダウンコントロール705内に示されたフィールドに関連するアイテムのすべてをリストする。どのアイテムをフィルタに含めるかユーザが手動で選択することを可能にするために、チェックボックスが、手動フィルタ領域707にリストされた各アイテムに関連付けられる。図21を参照すると、OLAPデータでは、手動フィルタ領域707にリストされた各フィールドに関連するアイテムを展開しまたは折りたたむためのドリルインジケータプラス/マイナス(+/−)符号をクリックすることによって、サブアイテムにアクセスすることができる。例えば、展開された形では、「Drink(飲み物)」および「Food(食べ物)」アイテムが示されている。「Food」アイテムについてチェックボックス713が選択されており、その結果、「Food」の各サブアイテムも同様に選択されている。「Drink」アイテムでは、サブアイテム「Alcoholic Beverages(アルコール飲料)」だけが選択されており、「Drink」アイテムに関連するチェックボックス712には、「Drink」アイテムのサブアイテムの一部だけが選択されていることを示すために混合インジケータが提供されている。「select all(すべて選択)」チェックボックス711は、フィルタ領域707に示されたすべてのレベルのあらゆるアイテムを選択/選択解除するために選択することができる。
【0067】
図20を再び参照すると、ユーザがセレクタドロップダウンコントロール705を使用して異なるフィールドを選択するとき、手動フィルタ領域707は、セレクタドロップダウンコントロール705内に示されたフィールドに関連するアイテムをリストするように、それに応じて更新される。新しく選択されたフィールドがセレクタドロップダウンコントロール705で元々選択されているフィールドと同じ階層の別のレベルからのものである場合は、OLAPデータについてすべてのレベルのアイテムが手動フィルタ領域707に示されているので、手動フィルタ領域707は変化しないままである。
【0068】
フィルタリング制御領域709は、セレクタドロップダウンコントロール705に示された選択されたフィールドに適用するのに使用可能なフィルタコントロールをリストしている。コントロール710は、フィルタリングされたアイテムがリストされる順序をユーザが変更することを可能にする。例えば、ユーザは、フィルタリングされたアイテムをアルファベット順A〜ZまたはZ〜Aにリストさせるために、コントロール710のうちの1つを選択することができる。コントロール715は、例えば特定のフィールドによるソートなど、追加のソートオプションを提供するために使用される。
【0069】
ユーザは、ドロップダウンセレクタ705内のフィールドへのすべてのフィルタリングを削除するために、コントロール720を選択することができる。コントロール725および730は、ドロップダウンセレクタ705内のフィールドに適用する特定のフィルタをユーザが選択することを可能にする。例えば、ユーザがコントロール725を選択する場合、図22に示されたフライアウトメニュー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(範囲外)」を含む。
【0070】
次に図24を参照すると、ユーザがフライアウト740、745のうちの1つからフィルタを選択するときに、所望のフィルタを構築するためのダイアログボックス760などのダイアログボックスがユーザに提示される。ダイアログボックス760では、フィールド選択ボックス772には、セレクタドロップダウンコントロール705内の選択されたフィールドが事前に取り込まれており、フィルタ選択ボックス774には、フライアウト740と745から選択されたフィルタが事前に取り込まれている。ユーザは、例えば、値ゾーン457に現在含まれる他のフィールドにアクセスするために、フィールド選択ボックス772内のドロップダウンメニューを選択することによって異なるフィールドを選択することができる。ユーザは、データタイプに使用可能なすべてのフィルタのリストを提供するフィルタ選択ボックス774内のドロップダウンメニューを選択することによって、異なるフィールドを選択することができる。基準ボックス776は、その中でフィルタリングする値をユーザが置くことを可能にする。例えば、ユーザが手動フィルタ領域707内の「Store Sales」アイテムを選択し、次いで、フライアウト745から「Greater Than」フィルタを選択する場合、ダイアログボックス770がユーザに提示される。ユーザは、$50,000より大きいすべての店舗売上高をフィルタリングするフィルタを設定するために、基準ボックス776内に値「50000」を入力することができる。
【0071】
次に図25を参照すると、コントロール725および730は、セレクタドロップダウンコントロール705内に示されたフィールドのタイプに応じて修正することができる。例えば、タスクペイン700は、データタイプのフィールドを含んでおり、したがって、日付によるフィルタリングを可能にするコントロール725と、値によるフィルタリングを可能にするコントロール730とを含む。ユーザは、コントロール725を選択して、図26に示されたフライアウトメニュー760にアクセスすることができる。フライアウトメニュー760は、データタイプのフィールドに適用することができる複数のフィルタを含む。
【0072】
一部の実施形態では、選択されたフィールドに適用可能なコントロールだけがユーザに提示される。例えば、ユーザが日付でない、非数値タイプのフィールドを選択する場合は、コントロール725は、こうしたフィールドに適用可能なフィルタを含むフライアウトメニュー740を提供するようにアクティブである。ユーザが日付フィールドを選択する場合は、コントロール725は、日付フィールドに適用可能なフィルタを含むフライアウトメニュー760を提供するようにアクティブである。ユーザが数値の非データタイプのフィールドを選択する場合は、コントロール730は、数値データフィールドに適用可能なフィルタを含むフライアウトメニュー745を提供するようにアクティブである。
【0073】
一部の実施形態では、フィールドがデータサマリー表320に追加される前に、フィルタを所与のフィールドに関連付けることができる。フィルタは実際、特定のフィールドがデータサマリー表320に追加されるときに適用される。このようにして、アクセスされ、データサマリー表320上で要約されるデータ量を減少することができ、それによって効率が向上する。フィルタが、データサマリー表320に既に含まれているフィールドに適用される場合、データサマリー表320は、フィルタリングされたアイテムだけを示すフィルタを考慮して更新される。
【0074】
選択されたフィルタをデータに適用することに関する追加の詳細は、その全体が参照により本明細書に組み込まれている、2005年6月21日出願の特許文献1、整理番号第14917.0108US01/311178.01号、「Dynamically Filtering Aggregate Reports Based on Values Resulting from One or More Previously Applied Filter」に見られる。
【0075】
フィルタリングペイン700内のチェックボックスインジケータ752(図25参照)は、適用されたいずれかのフィルタに隣接して置かれる。次に図27を参照すると、フィルタが所与のフィールドに適用されると、そのフィールドにフィルタが適用されていることを示すためにフィルタアイコン810が、タスクペイン450のフィールドペイン452内のフィールドに隣接して示されている。一部の実施形態では、類似のフィルタアイコンが、レイアウトペイン454およびデータサマリー表320内のフィルタリングされたフィールドにも関連付けられる。
【0076】
さらに、ポインティング装置が、フィルタアイコン810を伴う特定のフィールド上でホバーするときに、図28に示されるようにツールチップ830が提供される。ツールチップ830は、3つのセクション、すなわち手動フィルタ、ラベルフィルタおよび値フィルタのうちの1つに、フィルタリングされたフィールドをリストする。またツールチップ830は、フィルタリングされたフィールドを、適用されたフィルタのタイプによる評価の順にリストする。より長いラベルを用いたフィルタでは、ラベルの一部は、ツールチップ内に収まるように、必要に応じて切り捨てることができる。各フィルタについて、ツールチップ830は、2000年、2001年、2002年、2003年および2004年の「Year(年)」フィールドに手動フィルタがまず適用されることを示している。ツールチップ830は、次いでテキストフィルタが、テキスト「ab」を求めて「Product Name(製品名)」フィールドに適用されることを示している。追加のフィルタリングも、ツールチップ830に示されている。このようにして、ユーザは、データサマリー表320についてどのフィルタが適用されるか識別することができ、またツールチップ830を検査することによって、フィルタの適用順序を識別することもできる。
【0077】
示された実施例では、ユーザは、フィルタリングタスクペイン700にアクセスするために、タスクペイン450内にリストされた特定のフィールドのドロップダウン領域562(図11参照)を使用することができる。ユーザがデータサマリー表320からインターフェース700にアクセスする場合、セレクタドロップダウンコントロール705内に示されたデフォルトのフィールドは、データサマリー表320内で現在選択されているフィールドである。ユーザは、セレクタドロップダウンコントロール705を使用して別のフィールドを選択することができる。他の実施形態では、フィルタリングタスクペイン700は、データサマリー表320内でドロップダウン領域862を選択することによってデータサマリー表320の内からアクセスすることもできる(図9参照)。他の実施形態では、ユーザは、データサマリー表320内の1つまたは複数のフィールドを選択し、1つまたは複数のフィルタリングオプションにアクセスするためにその選択されたフィールド上で右クリックすることによってフィルタリングタスクペイン700にアクセスすることができる。これらのオプションは、例えば、手動フィルタで、選択されたフィールドを含めまたは除外すること、または上記で述べられたラベル、日付または値フィルタを使用して、選択されたフィールドをフィルタリングすることを含み得る。
【0078】
フィルタリングタスクペイン700がデータサマリー表320からアクセスされる場合は、ユーザアクセスインターフェース700がどこにあるかに基づいて、ドロップダウンコントロール705内にリストされたフィールドを選択することができる。例えば、ユーザがデータサマリー表320の行のフィールドからドロップダウン領域862を選択する場合は、現在行の中にあるすべてのフィールドが示される。そうではなくユーザが、データサマリー表320の列のフィールドからドロップダウン領域862を選択する場合は、現在列の中にあるすべてのフィールドが示される。
【0079】
示された実施例では、フィルタリングの情報は、それが適用される特定のフィールドと共に格納される。例えば、データサマリー表320の一部でないフィールドにフィルタリングが適用される場合は、フィルタリング情報は、フィールドに関連付けられ、フィールドがデータサマリー表320に追加されるときに適用される。同様に、フィルタを伴うフィールドがデータサマリー表320から削除される場合は、フィルタ情報は、フィールドが後にデータサマリー表320に追加され戻される場合にフィルタが再び適用されるように、フィールドと共に保持される。上記で述べられたように、フィールドへのフィルタリングは、フィルタを選択し、次いでコントロール720を選択することによって削除することができる(図20参照)。
【0080】
上記で述べられた様々な実施形態は、例示するためだけに示されており、限定的なものと解釈すべきでない。本明細書に示され述べられた例示的な実施形態および適用例に従わずに、また添付の特許請求の範囲に記載された本発明の真の精神および範囲から逸脱せずに、様々な修正および変更を行ってもよいことが当業者には容易に認識されよう。
【背景技術】
【0001】
データサマリー表は、大量のデータを解析するために使用することができる。データサマリー表の一例は、Microsoft Corporation社のEXCEL表計算ソフトウェアを使用して生成することができるPIVOTTABLEダイナミックビューである。データサマリー表は、データベースプログラムによって提供されるデータ、またはスプレッドシートのデータリスト内にあるデータを表示し要約する効率的なやり方を提供する。ユーザは、データサマリー表のページ、行、列、またはデータ領域内に含めるデータのフィールドを選択することができ、選択されたデータフィールドについて表示される合計、差異、カウントおよび標準偏差などのパラメータを選択することができる。表計算プログラム内から照会することができるデータベース内のデータ、またはリストを含む表計算データは、データサマリー表で解析することができる。
【0002】
データサマリー表は、データを効率的かつ直観的に解析することができるように設計されているが、初心者ユーザにとってはデータサマリー表の作成自体が大変難しいことであり得る。例えば、一部のプログラムは、ユーザがデータサマリー表を作成する助けとなるウィザードを提供する。これらのウィザードは最初のデータサマリー表の作成の際には有用であり得るが、それが作成されると、ウィザードは、表示を修正するためには容易に使用することができない。他のプログラムは、ユーザが所望のフィールドをデータサマリー表に直接にドラッグアンドドロップすることを可能にする。これらのプログラムは、表示を作成するときにユーザに柔軟性の向上をもたらすが、こうしたプログラムは、初心者が使用するにはあまり直観的でないことがある。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】米国特許出願第11/157634号明細書
【発明の概要】
【課題を解決するための手段】
【0004】
この要約は、以下の詳細な説明でさらに述べられる選択された概念について簡略化された形で述べるために提供されている。この要約は、特許請求の範囲に記載された主題の主な特徴または本質的な特徴を識別するためのものではなく、また特許請求の範囲に記載された主題の範囲を定める助けとして使用するためのものでもない。
【0005】
一態様によれば、データサマリー表を作成するためのグラフィカルユーザインターフェースが、複数のフィールドのリストを含むフィールドペインと、データサマリー表の領域を表す複数のゾーンを含むレイアウトペインとを含み、レイアウトペインは、フィールドペインからの複数のフィールドのうちのフィールドを前記ゾーンのうちの第1のゾーンに追加することを可能にするようにプログラムされる。データサマリー表は、フィールドがレイアウトペインに追加されると更新される。
【0006】
別の態様によれば、データサマリー表のためのグラフィカルユーザインターフェースを有するコンピュータシステム内で、方法が、複数のフィールドのリストからフィールドを選択すること、データサマリー表の領域を表す複数のゾーンのうちの第1のゾーンにフィールドを追加すること、およびフィールドがレイアウトペインの第1のゾーンに追加されるとデータサマリー表を更新することを含む。
【0007】
別の態様によれば、コンピュータ読取り可能媒体が、複数のフィールドのリストからフィールドを選択すること、データサマリー表の領域を表す複数のゾーンのうちの第1のゾーンにフィールドを追加すること、およびフィールドがレイアウトペインの第1のゾーンに追加されるとデータサマリー表を更新することを含むステップを実施するためのコンピュータ実行可能命令を含む。
【0008】
次に、添付の図面に言及する。図面は、必ずしも一定の尺度で作られていない。
【図面の簡単な説明】
【0009】
【図1】例示的な汎用コンピューティングシステムを示す図である。
【図2】表計算プログラムの例示的なシートを示す図である。
【図3】表計算プログラムの例示的なデータサマリー表およびタスクペインを示す図である。
【図4】図3の例示的なタスクペインを示す図である。
【図5】別の例示的なタスクペインを示す図である。
【図6】タスクペインのレイアウトペイン内にフィールドを配置するための例示的なメニューを示す図である。
【図7】図4のタスクペインのレイアウトペイン内にフィールドを配置するための例示的な方法を示す図である。
【図8】表にフィールドが追加されている、図3の例示的なデータサマリー表およびタスクペインを示す図である。
【図9】表に複数のフィールドが追加されている、図3の例示的なデータサマリー表およびタスクペインを示す図である。
【図10】表の上でフィールドが再配列されている、図9の例示的なデータサマリー表および例示的なタスクペインを示す図である。
【図11】別の例示的なタスクペインを示す図である。
【図12】図11のタスクペインのレイアウトを修正するための例示的なメニューを示す図である。
【図13】異なるレイアウトの図11の例示的なタスクペインを示す図である。
【図14】異なるレイアウトの図11の例示的なタスクペインを示す図である。
【図15】異なるレイアウトの図11の例示的なタスクペインを示す図である。
【図16】異なるレイアウトの図11の例示的なタスクペインを示す図である。
【図17】図4のタスクペインのレイアウトペイン内にフィールドを配置するための例示的な方法を示す図である。
【図18】図4のタスクペインのレイアウトペイン内にフィールドを配置するための別の例示的な方法を示す図である。
【図19】図4のタスクペインのレイアウトペイン内にフィールドを配置するための別の例示的な方法を示す図である。
【図20】例示的なフィルタリングタスクペインを示す図である。
【図21】別のフィルタリングタスクペインの例示的な手動フィルタリング領域を示す図である。
【図22】図20のフィルタリングタスクペインの例示的なフライアウトメニューを示す図である。
【図23】図20のフィルタリングタスクペインの別の例示的なフライアウトメニューを示す図である。
【図24】図20のフィルタリングタスクペインの例示的なダイアログボックスを示す図である。
【図25】別の例示的なフィルタリングタスクペインを示す図である。
【図26】図25のフィルタリングタスクペインの例示的なフライアウトメニューを示す図である。
【図27】別の例示的なタスクペインを示す図である。
【図28】図27のタスクペインの例示的なツールチップを示す図である。
【発明を実施するための形態】
【0010】
次に、添付された図面を参照して、本発明の実施形態について以下により完全に述べる。本明細書に開示された実施形態は、例示的なものであり、限定的なものと解釈すべきではなく、これらの実施形態は、この開示が徹底的であり完全となるように提供されている。同じ番号は、全体を通して同様の要素に言及する。
【0011】
本明細書に示された実施形態は、コンピュータシステム上でデータを解析するために使用されるデータサマリー表に関する。
【0012】
次に図1を参照すると、例示的なコンピュータシステム100が示されている。図1に示されたコンピュータシステム100は、例えばデスクトップコンピュータ、ラップトップコンピュータおよび携帯型コンピュータなど、様々な形を取ることができる。さらに、コンピュータシステム100が示されているが、本明細書に開示されたシステムおよび方法は、様々な代替のコンピュータシステム内でも同様に実装することができる。
【0013】
システム100は、処理装置102と、システムメモリ104と、システムメモリ104を含めて様々なシステム構成要素を処理装置102に結合するシステムバス106とを含む。システムバス106は、メモリバス、周辺バス、および様々なバスアーキテクチュアのいずれかを使用したローカルバスを含めて、複数のタイプのバス構造のいずれかであり得る。システムメモリは、読出し専用メモリ(ROM:read only memory)108とランダムアクセスメモリ(RAM:random access memory)110とを含む。コンピュータ100内の要素間で情報を転送するのに役立つ基本ルーチンを含む基本入出力システム(BIOS:basic input/output system)112は、ROM108に格納される。
【0014】
コンピュータシステム100はさらに、ハードディスクから読み出し、またそれに書き込むためのハードディスクドライブ112と、取外し可能磁気ディスク116から読み出しまたはそこに書き込む磁気ディスクドライブ114と、CD−ROM、DVDなどの取外し可能光ディスク119または他の光学媒体から読み出しまたはそこに書き込むための光ディスクドライブ118とを含む。ハードディスクドライブ112、磁気ディスクドライブ114および光ディスクドライブ118は、それぞれハードディスクドライブインターフェース120、磁気ディスクドライブインターフェース122、および光学ドライブインターフェース124によってシステムバス106に接続される。ドライブおよびその関連するコンピュータ記憶読取り可能媒体は、コンピュータ読取り可能命令、データ構造体、プログラム、およびコンピュータシステム100のための他のデータの不揮発性記憶域を提供する。
【0015】
本明細書で述べられた例示的な環境は、ハードディスク112、取外し可能磁気ディスク116および取外し可能光ディスク119を使用することができるが、例示的なシステム100内では、データを格納することができる他のタイプのコンピュータ読取り可能媒体を使用することができる。例示的な動作環境内で使用することができるこれらの他のタイプのコンピュータ読取り可能媒体の例には、磁気カセット、フラッシュメモリカード、デジタルビデオティスク、ベルヌーイカートリッジ、ランダムアクセスメモリ(RAM)および読出し専用メモリ(ROM)が含まれる。
【0016】
オペレーティングシステム126、1つまたは複数のアプリケーションプログラム128、他のプログラムモジュール130およびプログラムデータ132を含めて、複数のプログラムモジュールをハードディスク112、磁気ディスク116、光ディスク119、ROM 108、RAM 110に格納することができる。
【0017】
ユーザは、例えばキーボード134、マウス136または他のポインティング装置などの入力装置を用いて、コンピュータシステム100にコマンドおよび情報を入力してもよい。他の入力装置の例には、ツールバー、メニュー、タッチスクリーン、マイクロホン、ジョイスティック、ゲームパッド、ペン、衛星放送アンテナおよびスキャナが含まれる。これらおよび他の入力装置はしばしば、システムバス106に結合されたシリアルポートインターフェース140を介して処理装置102に接続される。しかし、これらの入力装置は、パラレルポート、ゲームポートまたはユニバーサルシリアルバス(USB:universal serial bus)など、他のインターフェースによって接続することもできる。LCDディスプレイ142または他のタイプの表示装置も、ビデオアダプタ144などのインターフェースを介してシステムバス106に接続される。ディスプレイ142に加えて、コンピュータシステムは一般に、スピーカおよびプリンタなど、他の周辺出力装置(図示せず)を含むことができる。
【0018】
コンピュータシステム100は、リモートコンピュータ146など、1つまたは複数のリモートコンピュータへの論理接続を使用して、ネットワーク化された環境内で動作してもよい。リモートコンピュータ146は、コンピュータシステム、サーバ、ルータ、ネットワークPC、ピアデバイスまたは他の一般的なネットワークノードであってもよく、コンピュータシステム100に関して上記で述べた要素の多くまたはすべてを一般に含む。ネットワーク接続は、ローカルエリアネットワーク(LAN:local area network)148と、広域ネットワーク(WAN:wide area network)150とを含む。こうしたネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネットおよびインターネットでは一般的である。
【0019】
LANネットワーキング環境内で使用されるとき、コンピュータシステム100は、ネットワークインターフェースまたはアダプタ152を介してローカルエリアネットワーク148に接続される。WANネットワーキング環境内で使用されるとき、コンピュータシステム100は一般に、モデム154、あるいはインターネットなどの広域ネットワーク150を介して通信を確立するための他の手段を含む。内部にあることも、外部にあることもあるモデム154は、シリアルポートインターフェース140を介してシステムバス106に接続される。ネットワーク化された環境では、コンピュータシステム100に関して示されたプログラムモジュール、またはその一部は、リモートメモリ記憶装置に格納してもよい。示されたネットワーク接続は、例示的なものであり、コンピュータ間の通信リンクを確立する他の手段を使用してもよいことが理解されよう。
【0020】
本明細書で述べられた諸実施形態は、コンピューティングシステム内の論理操作として実装することができる。論理操作は、(1)コンピュータシステム上で実行されるコンピュータ実装ステップのシーケンスまたはプログラムモジュール、および(2)コンピューティングシステム内で実行される相互接続された論理またはハードウェアモジュールとして実装することができる。この実装形態は、特定のコンピューティングシステムの性能要件に依存する選択の問題である。したがって、本明細書で述べられた諸実施形態を構成する論理操作は、操作、ステップまたはモジュールと呼ばれる。これらの操作、ステップおよびモジュールは、本明細書に添付された特許請求の範囲中に述べられた本発明の精神および範囲から逸脱せずに、ソフトウェア、ファームウェア、特別目的のデジタル論理、およびその任意の組合せで実装してもよいことが当業者には理解されよう。このソフトウェア、ファームウェア、またはコンピュータ命令の類似のシーケンスは、符号化され、コンピュータ読取り可能記憶媒体内に格納されてもよく、またコンピューティング装置内で送信するために搬送波信号中で符号化されることもできる。
【0021】
次に図2を参照すると、例示的なプログラム200が示されている。一実施例では、プログラム200は、上記で述べられたコンピュータシステム100などのコンピュータシステム上で実行されるMicrosoft社のEXCEL表計算ソフトプログラムである。プログラム200は、データ210の例示的なリストを伴うスプレッドシート205を含む。ユーザは、データ210から、データサマリー表を作成することができる。
【0022】
例えば、次に図3を参照すると、プログラム200の例示的なユーザインターフェース302が示されている。ユーザインターフェース302は、初期データサマリー表320(図3ではデータサマリー表320は空白である)を含む。データサマリー表320は、様々なソースからのデータから作成することができる。図3に示された一実施例では、以下にさらに述べられるように、データサマリー表320は、1つまたは複数のデータベースからのデータから作成することができる。他の実施形態では、データサマリー表320は、図2に示されたデータ210など、スプレッドシート内のデータから作成することができる。
【0023】
プログラム200のユーザインターフェース302は、データサマリー表320を作成し修正するために使用することができる例示的なタスクペイン450をも含む。例えば、タスクペイン450は、データ210からのフィールドのリストを含む。ユーザは、以下にさらに述べられるように、データサマリー表320を作成するために、タスクペイン450からフィールドを選択し、また選択解除することができる。
【0024】
I.タスクペイン
次に図4を参照すると、例示的なタスクペイン450が示されている。タスクペイン450は一般に、フィールドペイン452とレイアウトペイン454とを含む。以下にさらに述べられるように、タスクペイン450は、データサマリー表320を作成し修正するために使用される。
【0025】
フィールドペイン452は、所与のデータベースまたはスプレッドシート(例えば上記の図2に示されたスプレッドシート205など)内の各フィールドのリスト453を含む。フィールドのリスト453がフィールドペイン452によって提供されたスペースより長いので、スクロールバー451が提供される。一部の実施形態では、フィールドペイン452(およびレイアウトペイン454もまた)、ユーザによってサイズ変更することができる。リスト453内の各フィールドは、フィールドの隣にチェックボックスを含む。例えば、フィールド「Profit(利益)」は、フィールドキャプションに隣接して置かれたチェックボックス460を含む。以下で述べられるようにリスト453内フィールドがレイアウトペイン454に追加されるとき、フィールドに関連するチェックボックスがチェックされる。例えば、「Profit」フィールドのチェックボックス460は、レイアウトペイン454に追加されているのでチェックされている。
【0026】
レイアウトペイン454は、タスクペイン450を使用して作成されるデータサマリー表320の態様を表す複数のゾーンを含む。例えば、レイアウトペイン454は、行ゾーン455と、列ゾーン456と、値ゾーン457と、フィルタゾーン458とを含む。行ゾーン455は、結果として生じるデータサマリー表320の行ラベルを定義する。列ゾーン456は、データサマリー表320の列ラベルを定義する。値ゾーン457は、データサマリー表320上で要約される(例えば集約、変動など)データを識別する。フィルタゾーン458は、他のゾーン455、456、457内の他のすべてのフィールドに適用されるフィルタリングの選択を可能にする(例えば、あるフィールドをフィルタゾーン458に置くことができ、レイアウトペイン454内の他のすべてのフィールドについて、フィルタゾーン458内のフィールドについて選択されたアイテム(複数可)に関連するアイテムだけを示すためのフィルタを作成するために、フィルタゾーン458内のそのフィールドに関連する1つまたは複数のアイテムを選択することができる)。
【0027】
データサマリー表320を作成し修正するために、フィールドペイン452からのフィールドのうちの1つまたは複数が、レイアウトペイン454のゾーンのうちの1つまたは複数に追加される。示された実施例では、ユーザは、データサマリー表320にフィールドを追加するために、フィールドペイン452のリスト453からのフィールドをクリックし、レイアウトペイン454のゾーンのうちの1つにドラッグアンドドロップすることができる。
【0028】
例えば、図5に示されるように、ユーザは、「Store Sales(店舗売上高)」フィールド466など、フィールドペイン452内に含まれた特定フィールドの上でホバーすることができる。ユーザがフィールド上でホバーするとき、十字形のカーソル472がユーザに提示され、この十字形のカーソルは、ユーザが選択されたフィールドをクリックし、フィールドペイン452からレイアウトペイン454のゾーンのうちの1つにドラッグできることを示す。ユーザがフィールドを選択すると、十字形カーソル472は通常のカーソルに戻り、示されるように、「Store Sales」フィールド466を値ゾーン457にドラッグアンドドロップすることができる。フィールドは同様に、レイアウトペイン454からフィールドを選択しドラッグすることによってレイアウトペイン454から削除することができる。
【0029】
別の実施例では、ユーザは、レイアウトペイン454にフィールドを追加するために、フィールドペイン452内の特定のフィールドに関連するチェックボックスをチェックすることができる。例えば、ユーザが、図4のタスクペイン450内に示された「Profit」フィールドに関連するチェックボックス460を選択する場合、このフィールドは、値ゾーン457に、「Profit」フィールド462として追加することができる。以下にさらに述べられるように、プログラム200は、選択されたフィールドを解析し、レイアウトペイン454の適切なゾーン内に置くようにプログラムされることができる。ユーザは同様に、レイアウトペイン454からフィールドを削除するために、チェックされたフィールドを選択解除することができる。例えば、ユーザがチェックボックス460を選択解除する場合、「Profit」フィールド462は、レイアウトペイン454から削除される。
【0030】
オプションの実施例では、ユーザがドロップゾーン454のゾーンのうちの1つにフィールドをドラッグしないでフィールドを選択するために所与のフィールドをクリックする場合、ユーザがフィールドをどのゾーンに置くか選択することを可能にするメニュー(例えば図6に示されたメニュー482に類似する)がユーザに提示され得る。
【0031】
次に図7を参照すると、フィールドペイン452からのフィールドをレイアウトペイン454のゾーンに追加するための例示的な方法500が示されている。操作501で、ユーザは、レイアウトペイン454に追加する、フィールドペイン452内にリストされたフィールドを選択する。操作502で、ユーザが特定のフィールドに関連するチェックボックスを選択したかどうか決定される。ユーザがチェックボックスを選択した場合は、制御は操作503にわたされ、プログラム200は、選択されたフィールドをレイアウトペイン454のどのゾーンに置くか自動的に決定することができる。次に、操作507で、フィールドは、レイアウトペイン454の適切なゾーンに追加される。
【0032】
操作502で、ユーザがチェックボックスを選択していないと決定される場合は、制御は操作504にわたされる。操作504で、ユーザがフィールドを選択して、レイアウトペイン454のゾーンのうちの1つにドラッグアンドドロップしたか決定される。ユーザがフィールドをレイアウトペイン454のゾーンのうちの1つにドロップしている場合は、制御は操作507にわたされ、フィールドはそのゾーンに追加される。
【0033】
操作504で、ユーザがフィールドをドラッグアンドドロップしていないと決定される場合は、オプションの実施形態では、ユーザがチェックボックスを選択せずに、またはフィールドをレイアウトペイン454のゾーンにドラッグ/ドロップせずにフィールドを選択しているので、制御は操作505にわたされる。操作505で、プログラム200は、フィールドを追加するゾーンをユーザが選択することを可能にするために、ユーザにメニューを提示する。次いで、操作506で、ユーザは、所望のゾーンを選択する。操作507で、フィールドはそのゾーンに追加される。
【0034】
フィールドがレイアウトペイン454のゾーンに追加されると、制御は操作509にわたされ、下記に述べられるように、プログラム200は、データサマリー表320をそれに応じて更新する。
【0035】
図4を再び参照すると、フィールドペイン452からの「Profit」フィールドなどのフィールドがレイアウトペイン454のゾーンのうちの1つに追加されると、フィールドペイン452内のそのフィールドに関連するチェックボックス(例えばチェックボックス460)が、そのフィールドがデータサマリー表320の一部であることを示すためにチェックされる。さらに、フィールドペイン452内のフィールドに関連するフィールドラベルのフォントは、太字にされる。同様に、フィールドがデータサマリー表320の一部にまだなっていない(またはそこから削除されている)場合は、そのフィールドに関連するチェックボックスはチェックされないままであり、フィールドは、太字ではなく通常のフォントで示される。データサマリー表320の一部であるフィールドを示すための他の方法を使用することもできる。
【0036】
フィールドが追加され、またタスクペイン450のレイアウトペイン454から削除されるとき、結果として生じるデータサマリー表320は、それに応じて修正される。例えば、ユーザには最初、図3に示されるように、フィールドペイン452を含むタスクペイン450が提示される。図8を参照すると、ユーザが「Profit」フィールドをレイアウトペイン454のゾーン457に追加するとき、「Profit」フィールドに関連するデータの合計が、データサマリー表320に自動的に追加される。図9を参照すると、ユーザは、追加のフィールド(例えば「Sales Average(平均売上高)」、「Customers(顧客)」、「Gender(性別)」)をレイアウトペイン454のゾーンに追加することができ、データサマリー表320は、追加されたフィールドに関するデータを含むように更新される。
【0037】
図10を参照すると、ユーザは、フィールドをあるゾーンからタスクペイン450のレイアウトペイン454内の別のゾーンに移動することもでき、データサマリー表320は、それに応じて更新される。例えば、ユーザは、「Gender」フィールドを列ゾーン456から行ゾーン455に移動することができ、データサマリー表320は、その変更を反映するように自動的に更新される。ユーザは、データサマリー表320内にフィールドが表示される順序を変更するために、所与のゾーン455、456、457、458内のフィールドを移動することもできる。例えば、ユーザは、データサマリー表320内で「Gender」フィールドが「Customer」フィールドの前に示されるように、行ゾーン455内で「Gender」フィールドを「Customer」フィールドの上に移動することができる。
【0038】
次に図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内のアクティブな選択肢として示される(例えば、「Move to Row Labels」はこの実施例では、フィールド481が既に行ゾーン455にあるので、非アクティブとして示されている)。
【0039】
図4を再び参照すると、タスクペイン450は、手動更新チェックボックス469をも含んでいる。チェックボックス469が選択されるとき、結果として生じるデータサマリー表320は、フィールドが追加され、再配列され、タスクペイン450のレイアウトペイン454から削除されるとき、自動的には更新されない。例えば、ユーザが手動更新チェックボックス469を選択し、次いで、レイアウトペイン454の行ゾーン455にフィールドを追加する場合、データサマリー表320は、新しく追加されたフィールドを反映するように自動的には更新されない。そうではなく、更新は、変更が行われるとアクティブになる手動更新ボタン471をユーザが選択した後に行われ、手動更新が実施されることができる。手動更新は、データサマリー表320の作成のためにかなりの取出しおよび処理時間を要する大量のデータを扱うときに効率を向上させるために使用することができる。このようにして、所望のフィールドおよびフィルタリングをデータサマリー表320の作成または修正の前に選択することができ、この作成または修正は、手動更新ボタン471が選択されると行われ、それによって効率が向上する。
【0040】
図11を参照すると、フィールドペイン452内に示されたフィールドが、「オンライン解析処理」(OLAP:online analysis processing)タイプのデータフィールドを表している。(それとは対照的に、図5のフィールドペイン452内に示されたフィールドは、リレーショナルフィールドと呼ばれることがある非OLAPタイプである。)OLAPは、データベース内に格納されたデータの解析を提供するツールのカテゴリである。OLAPツールは、ユーザが多次元のデータのそれぞれ異なる次元を解析することを可能にする。OLAPデータフィールドは、複数のレベルを有する階層構造で配列される。例えば、「Sales Fact 1991(売上データ1991年)」フィールドは、サブフィールド「Store Sales」と、「Unit Sales(売上数)」と、「Store Cost(店舗コスト)」とを含む。サブフィールドは、サブフィールドを展開し、また折りたたむためのドリルインジケータ(プラス/マイナス、+/−符号)556をクリックすることによってアクセスすることができる。OLAPデータは、階層およびメジャーを有するディメンションに配列することができる。
【0041】
示された実施形態では、フィールドペイン452内にリストされた各フィールドは、複数の構成要素を含む。フィールドは、フィールド上をホバーしまたはクリックすることによって強調させることができる。例えば、図11に示される「Product(製品)」フィールドなどの各フィールドは、ユーザがフィールドを選択しドラッグすることを可能にする選択領域558、559を含む。各フィールドは、データサマリー表320からフィールドを追加し/削除するために使用することができるチェックボックス560をも含む。さらに、OLAPデータタイプの各フィールドは、フィールドに関連するサブフィールドを展開し、また折りたたむために使用されるドリルインジケータ556を含むことができる。さらに、各フィールドは、以下にさらに述べられるように、フィルタリングオプションにアクセスするために使用されるドロップダウン領域562を含む。
【0042】
図4を再び参照すると、タスクペイン450は、ユーザがタスクペイン450のレイアウトを修正することを可能にするコントロール470をも含む。例えば、図12に示されるように、ユーザは、レイアウトメニュー572にアクセスするためにコントロール470を選択することができる。レイアウトメニュー572は、ペイン452および454を配列するために使用される。例えば、ユーザがコントロール470で「Fields and Layout stacked(フィールドとレイアウトを積み重ねて)」573を選択する場合は、タスクペイン450内でフィールドペイン452は、図4に示されるように、統合された単一のペインを形成するようにレイアウトペイン454上に置かれる。ユーザがコントロール470で「Fields and Layout side by side(フィールドとレイアウトを並べて)」574を選択する場合は、タスクペイン450内でフィールドペイン452は、図13に示されるように、統合された単一のペインを形成するようにレイアウトペイン454の横に沿って置かれる。ユーザがコントロール470で「Fields only(フィールドのみ)」575を選択する場合は、図14に示されるようにフィールドペイン452が分離して示される。ユーザがコントロール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で分離して示される。
【0043】
図5に示される実施例では、フィールドペイン452内のフィールドは、アルファベット順でリストされている。図4に示されるものなどのOLAPタイプデータを含むリストでは、メジャーがまず示され、その後にディメンションがアルファベット順に示される。示された実施例では、ディメンションフォルダは展開した形で示されており、他のすべてのフィールドは折りたたんだ形で示されている。他の配置を使用することもできる。
【0044】
II.レイアウトペイン内のフィールドの自動配置
図4を再び参照すると、ユーザがフィールドに関連するチェックボックスをチェックすることによってフィールドを選択する場合、プログラム200は、以下に述べるように、選択されたフィールドをレイアウトペイン454のゾーンのうちの1つに自動的に置くようにプログラムされる。
【0045】
一般に、数値タイプのフィールドは値ゾーン457に追加され、非数値タイプのフィールドは、レイアウトペイン454の行ゾーン455に追加される。例えば、数値タイプ(例えば売上金額の数字(monetary sales figures))のフィールドは一般に、集約され、したがって値ゾーン457に置かれ、非数値タイプ(例えば製品名)のフィールドは一般に行ラベルとして使用され、したがって、行ゾーン455内に自動的に置かれる。
【0046】
次に図17を参照すると、選択されたフィールドをレイアウトペイン454のゾーンのうちの1つに自動的に追加するための例示的な方法600が示されている。操作601で、ユーザは、例えばフィールドに関連するチェックボックスを使用して、フィールドペイン452内のフィールドを選択する。次いで、操作602で、フィールドが数値タイプかどうか決定される。フィールドが数値タイプである場合は、制御は操作603にわたされ、フィールドは、集約のために値ゾーン457に追加される。操作602でフィールドが数値タイプでないと決定される場合は、制御は操作604にわたされ、フィールドは行ゾーン455に追加される。
【0047】
一部の実施形態では、レイアウトペイン454内の別の配置がより適切かどうか決定するために、フィールドを値ゾーン457に追加する前に、数値タイプのフィールドをさらに解析することができる。例えば、複数の郵便番号値を含むフィールドは数値タイプであるが、こうしたフィールドを値ゾーン457ではなく、行ゾーン455に置くことが一般に望ましい。このために、一部の実施形態では数値タイプのフィールドが、レイアウトペイン454内の所望の配置を識別するために、データ意味論を使用してさらに解析される。
【0048】
一実施形態では、値ゾーン457ではなく行ゾーン455に追加される数値タイプのフィールドを識別するために、以下の例示的な表1などのルックアップテーブルが使用される。
【0049】
【表1】
【0050】
表1では、以下にさらに述べられるように、列「FieldTypeString」は、選択されたフィールドのキャプションと比較されるテキスト文字列を含む。示された実施例では、大/小文字を区別しないどんな一致をも識別するために、選択されたフィールドのキャプションが表1のFieldTypeString列の各文字列と比較される。
【0051】
FieldTypeString列のテキスト文字列と、選択されたフィールドのキャプションの間に一致がある場合は、フィールド内の数値アイテムが、表1の「MinValue」および「MaxValue」列の値を使用してさらに解析される。MinValue列の値は、所与のFieldTypeStringタイプのアイテムのいずれかの最小値を指定する。MaxValue列の値は、所与のFieldTypeStringタイプのアイテムのいずれかの最大値を指定する。特定のFieldTypeStringタイプについて表1にMinValueが定義されていない場合は、数値アイテムがMaxValue未満の整数かどうか決定される。特定のFieldTypeStringタイプについてMaxValueが定義されていない場合は、数値アイテムがMinValueより大きい整数かどうか決定される。特定のFieldTypeStringタイプについてMinValueもMaxValueも定義されていない場合は、数値アイテムが整数かどうか決定される。
【0052】
例えば、選択されたフィールドがキャプション「月」を含む場合は、表1が解析され、FieldTypeStringの値「月」との一致が識別される。次に、その数値が最小値と最大値、「1」と「12」(1月から12月を表す)の範囲にあるかどうか決定するために、フィールドに関連する数値が解析される。一実施形態では、フィールドのすべての数値アイテムがテストされる。他の実施形態では、例えばかなり大きい数の数値アイテムがある場合は、数値アイテムのサンプルだけが、表1の最小値および最大値に対してテストされる。値のすべてが最小値と最大値の範囲内にある場合は、以下にさらに述べられるように、フィールドは、値ゾーン457ではなく、行ゾーン455に追加される。
【0053】
表1に示されたテキスト文字列、ならびに最小値および最大値は、例示的なものにすぎず、異なる文字列および値を使用することができる。例えば、テキスト文字列および最小/最大値は、データが生成される地理的な位置に応じて修正することができる(例えば、電話番号値は、地理的な位置により異なり得る)。他の実施形態では、異なるタイプの意味的チェックを使用することができる。例えば、数値アイテムの実際の値のチェックに加えて、またはその代わりに、数値アイテムの桁数を解析することができる。例えば、フィールドのキャプションがテキスト文字列「郵便番号」(すなわちジップコード)に一致する場合は、桁が最小5(例えば「90210」は5桁を含む)と最大10(例えば「90210−1052」は10桁を含む)の間の範囲内にあるかどうか確かめるために、フィールド内の数値アイテムの桁数を検査することができる。
【0054】
次に図18を参照すると、選択されたフィールドをレイアウトペイン454内に自動配置するための例示的な方法610が示されている。方法610は、数値タイプのフィールドがさらに解析されることを除いては、上記で述べられた方法600に類似する。操作611で、ユーザは、例えばフィールドに関連するチェックボックスを使用して、フィールドペイン452内のフィールドを選択する。次に、操作612で、フィールドが数値タイプかどうか決定される。フィールドが非数値タイプである場合は、制御は操作613にわたされ、フィールドは行ゾーン455に追加される。
【0055】
操作612でフィールドが数値タイプであると決定される場合は、制御は操作615にわたされる。操作615で、フィールドのキャプションが解析され、操作616で、キャプションが、上記の表1に示されるようなテキスト文字列のルックアップテーブルと比較される。操作616でキャプションとテキスト文字列の間で一致しない場合は、制御は操作619にわたされ、フィールドは値ゾーン457に追加される。操作616でキャプションと表1のテキスト文字列の間で一致する場合は、制御は操作617にわたされる。
【0056】
操作617で、フィールドの数値アイテムが解析され、操作618で、数値アイテムの値が、テキスト文字列に関連する表1の最小値および最大値と比較される。数値アイテムが、上記で述べられた最小値と最大値の範囲外である場合は、制御は操作619にわたされ、フィールドは値ゾーン457に追加される。操作618で数値アイテムが最小値と最大値の範囲内にある場合は、制御は操作613にわたされ、フィールドは行ゾーン455に追加される。
【0057】
このようにして、数値タイプの特定フィールドは、自動的に識別され、デフォルトの値ゾーン457ではなく、行ゾーン455に置かれることができる。フィールドがプログラム200によってレイアウトペイン454の特定のゾーンに自動的に置かれ、ユーザがフィールドを異なるゾーンに置かれることを望む場合は、ユーザは、フィールドを選択し、所望のゾーンにドラッグすることができる。
【0058】
一部の実施形態では、日付情報に関連するフィールドが識別され、行ゾーン455または値ゾーン457ではなく、列ゾーン456に置かれる。例えば、図19に示された方法630は、操作61〜619を含めて、上記で述べられた方法610に類似する。しかし、操作618で、数値アイテムが最小値と最大値の範囲内にある場合は、制御は操作631にわたされる。操作631で、フィールドが日付フィールドかどうか決定される。示された実施例では、この決定は、キャプションが一致するテキスト文字列によって行われる。例えば、フィールドのキャプションがテキスト「日付」を含んでおり、表1のテキスト文字列「日付」に一致される場合は、フィールドは日付フィールドと識別される。フィールドが日付フィールドである場合は、制御は操作632にわたされ、フィールドは列ゾーン456に追加される。フィールドが日付フィールドでない場合は、制御は操作613にわたされ、フィールドは行ゾーン455に追加される。
【0059】
代替の実施形態では、フィールドに関する属性を識別するために、特定のフィールドに関連するメタデータを使用することができる。例えば、フィールドが数値および/または日付フィールドかどうか識別するために、メタデータを使用することができる。
【0060】
一部の実施形態では、OLAPデータを識別するフィールドをレイアウトペイン454およびデータサマリー表320に自動的に追加するときに、以下の規則が使用される。
【0061】
A.OLAP階層/OLAP名前付きセット
1.階層は、行ゾーンに追加される
2.階層は、行ゾーンの他のすべてのフィールドの内部でネストされる
3.複数レベルを有する階層について、最高レベルのフィールドがデータサマリー表に表示され、ユーザは、より低いレベルのフィールドを見るためにドリルすることができる
B.OLAPメジャー/OLAP KPI表現
1.少なくとも1つのメジャーが既に追加されている場合は、メジャーは、既に追加されているメジャーと同じゾーンに追加される
2.第2のメジャーを追加すると、レイアウトペイン内にデータフィールド(例えば図10の「Σ値」フィールドを参照)が生じ、データフィールドはデフォルト設定により列ゾーンに置かれ、値ゾーンに2つ以上のフィールドがある場合は、データフィールドはレイアウトゾーンに表示される
3.データフィールドは、追加されるときに、列ゾーンの他のすべてのフィールドの内部でネストされる
4.データフィールドは、行または列ゾーンに存在する
一部の実施形態では、非OLAPデータを識別するフィールド、またはリレーショナルフィールドをレイアウトペイン454およびデータサマリー表320に自動的に追加するときに、以下の追加の規則が使用される。
【0062】
A.非数値フィールドでは、フィールドは行ゾーンに追加され、フィールドは、行ゾーンの他のすべてのフィールドの内部でネストされる
B.数値フィールドでは、フィールドは値ゾーンに追加される
1.少なくとも1つのフィールドが既に値ゾーンにある場合は、このフィールドは、既に追加されているフィールドと同じゾーンに追加される
2.第1のフィールドを値ゾーンに追加すると、レイアウトペインにデータフィールドが生じ、データフィールドはデフォルト設定により列ゾーンに置かれる
3.データフィールドは、追加されるときに、列ゾーンの他のすべてのフィールドの内部でネストされる
4.データフィールドは、行または列ゾーンに存在する。
【0063】
III.フィルタリングタスクペイン
図11を再び参照すると、データサマリー表320に含まれる情報を制限するために、特定のフィールドのアイテムに1つまたは複数のフィルタを適用することができる。例えば、ユーザは、フィルタリングタスクペイン700にアクセスするために、タスクペイン450のフィールドペイン452にリストされた特定のフィールドのドロップダウン領域562を使用することができる。
【0064】
次に図20を参照すると、例示的なフィルタリングタスクペイン700が示されている。インターフェース700は一般に、フィールドセレクタドロップダウンコントロール705と、手動フィルタリング領域707と、フィルタリング制御領域709とを含む。
【0065】
セレクタドロップダウンコントロール705は、フィルタリングのためのそれぞれ異なるフィールドを選択するために使用することができる。OLAPデータでは、フィールドセレクタドロップダウンコントロール705内のフィールドは、階層構成で表示することができ、ドロップダウンコントロール705は、フィルタリングのためのそれぞれ異なるレベルのOLAPデータを選択するために使用することができる。示された実施例では、選択されたフィールドは、「Country(国)」フィールドである。
【0066】
手動フィルタ領域707は、セレクタドロップダウンコントロール705内に示されたフィールドに関連するアイテムのすべてをリストする。どのアイテムをフィルタに含めるかユーザが手動で選択することを可能にするために、チェックボックスが、手動フィルタ領域707にリストされた各アイテムに関連付けられる。図21を参照すると、OLAPデータでは、手動フィルタ領域707にリストされた各フィールドに関連するアイテムを展開しまたは折りたたむためのドリルインジケータプラス/マイナス(+/−)符号をクリックすることによって、サブアイテムにアクセスすることができる。例えば、展開された形では、「Drink(飲み物)」および「Food(食べ物)」アイテムが示されている。「Food」アイテムについてチェックボックス713が選択されており、その結果、「Food」の各サブアイテムも同様に選択されている。「Drink」アイテムでは、サブアイテム「Alcoholic Beverages(アルコール飲料)」だけが選択されており、「Drink」アイテムに関連するチェックボックス712には、「Drink」アイテムのサブアイテムの一部だけが選択されていることを示すために混合インジケータが提供されている。「select all(すべて選択)」チェックボックス711は、フィルタ領域707に示されたすべてのレベルのあらゆるアイテムを選択/選択解除するために選択することができる。
【0067】
図20を再び参照すると、ユーザがセレクタドロップダウンコントロール705を使用して異なるフィールドを選択するとき、手動フィルタ領域707は、セレクタドロップダウンコントロール705内に示されたフィールドに関連するアイテムをリストするように、それに応じて更新される。新しく選択されたフィールドがセレクタドロップダウンコントロール705で元々選択されているフィールドと同じ階層の別のレベルからのものである場合は、OLAPデータについてすべてのレベルのアイテムが手動フィルタ領域707に示されているので、手動フィルタ領域707は変化しないままである。
【0068】
フィルタリング制御領域709は、セレクタドロップダウンコントロール705に示された選択されたフィールドに適用するのに使用可能なフィルタコントロールをリストしている。コントロール710は、フィルタリングされたアイテムがリストされる順序をユーザが変更することを可能にする。例えば、ユーザは、フィルタリングされたアイテムをアルファベット順A〜ZまたはZ〜Aにリストさせるために、コントロール710のうちの1つを選択することができる。コントロール715は、例えば特定のフィールドによるソートなど、追加のソートオプションを提供するために使用される。
【0069】
ユーザは、ドロップダウンセレクタ705内のフィールドへのすべてのフィルタリングを削除するために、コントロール720を選択することができる。コントロール725および730は、ドロップダウンセレクタ705内のフィールドに適用する特定のフィルタをユーザが選択することを可能にする。例えば、ユーザがコントロール725を選択する場合、図22に示されたフライアウトメニュー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(範囲外)」を含む。
【0070】
次に図24を参照すると、ユーザがフライアウト740、745のうちの1つからフィルタを選択するときに、所望のフィルタを構築するためのダイアログボックス760などのダイアログボックスがユーザに提示される。ダイアログボックス760では、フィールド選択ボックス772には、セレクタドロップダウンコントロール705内の選択されたフィールドが事前に取り込まれており、フィルタ選択ボックス774には、フライアウト740と745から選択されたフィルタが事前に取り込まれている。ユーザは、例えば、値ゾーン457に現在含まれる他のフィールドにアクセスするために、フィールド選択ボックス772内のドロップダウンメニューを選択することによって異なるフィールドを選択することができる。ユーザは、データタイプに使用可能なすべてのフィルタのリストを提供するフィルタ選択ボックス774内のドロップダウンメニューを選択することによって、異なるフィールドを選択することができる。基準ボックス776は、その中でフィルタリングする値をユーザが置くことを可能にする。例えば、ユーザが手動フィルタ領域707内の「Store Sales」アイテムを選択し、次いで、フライアウト745から「Greater Than」フィルタを選択する場合、ダイアログボックス770がユーザに提示される。ユーザは、$50,000より大きいすべての店舗売上高をフィルタリングするフィルタを設定するために、基準ボックス776内に値「50000」を入力することができる。
【0071】
次に図25を参照すると、コントロール725および730は、セレクタドロップダウンコントロール705内に示されたフィールドのタイプに応じて修正することができる。例えば、タスクペイン700は、データタイプのフィールドを含んでおり、したがって、日付によるフィルタリングを可能にするコントロール725と、値によるフィルタリングを可能にするコントロール730とを含む。ユーザは、コントロール725を選択して、図26に示されたフライアウトメニュー760にアクセスすることができる。フライアウトメニュー760は、データタイプのフィールドに適用することができる複数のフィルタを含む。
【0072】
一部の実施形態では、選択されたフィールドに適用可能なコントロールだけがユーザに提示される。例えば、ユーザが日付でない、非数値タイプのフィールドを選択する場合は、コントロール725は、こうしたフィールドに適用可能なフィルタを含むフライアウトメニュー740を提供するようにアクティブである。ユーザが日付フィールドを選択する場合は、コントロール725は、日付フィールドに適用可能なフィルタを含むフライアウトメニュー760を提供するようにアクティブである。ユーザが数値の非データタイプのフィールドを選択する場合は、コントロール730は、数値データフィールドに適用可能なフィルタを含むフライアウトメニュー745を提供するようにアクティブである。
【0073】
一部の実施形態では、フィールドがデータサマリー表320に追加される前に、フィルタを所与のフィールドに関連付けることができる。フィルタは実際、特定のフィールドがデータサマリー表320に追加されるときに適用される。このようにして、アクセスされ、データサマリー表320上で要約されるデータ量を減少することができ、それによって効率が向上する。フィルタが、データサマリー表320に既に含まれているフィールドに適用される場合、データサマリー表320は、フィルタリングされたアイテムだけを示すフィルタを考慮して更新される。
【0074】
選択されたフィルタをデータに適用することに関する追加の詳細は、その全体が参照により本明細書に組み込まれている、2005年6月21日出願の特許文献1、整理番号第14917.0108US01/311178.01号、「Dynamically Filtering Aggregate Reports Based on Values Resulting from One or More Previously Applied Filter」に見られる。
【0075】
フィルタリングペイン700内のチェックボックスインジケータ752(図25参照)は、適用されたいずれかのフィルタに隣接して置かれる。次に図27を参照すると、フィルタが所与のフィールドに適用されると、そのフィールドにフィルタが適用されていることを示すためにフィルタアイコン810が、タスクペイン450のフィールドペイン452内のフィールドに隣接して示されている。一部の実施形態では、類似のフィルタアイコンが、レイアウトペイン454およびデータサマリー表320内のフィルタリングされたフィールドにも関連付けられる。
【0076】
さらに、ポインティング装置が、フィルタアイコン810を伴う特定のフィールド上でホバーするときに、図28に示されるようにツールチップ830が提供される。ツールチップ830は、3つのセクション、すなわち手動フィルタ、ラベルフィルタおよび値フィルタのうちの1つに、フィルタリングされたフィールドをリストする。またツールチップ830は、フィルタリングされたフィールドを、適用されたフィルタのタイプによる評価の順にリストする。より長いラベルを用いたフィルタでは、ラベルの一部は、ツールチップ内に収まるように、必要に応じて切り捨てることができる。各フィルタについて、ツールチップ830は、2000年、2001年、2002年、2003年および2004年の「Year(年)」フィールドに手動フィルタがまず適用されることを示している。ツールチップ830は、次いでテキストフィルタが、テキスト「ab」を求めて「Product Name(製品名)」フィールドに適用されることを示している。追加のフィルタリングも、ツールチップ830に示されている。このようにして、ユーザは、データサマリー表320についてどのフィルタが適用されるか識別することができ、またツールチップ830を検査することによって、フィルタの適用順序を識別することもできる。
【0077】
示された実施例では、ユーザは、フィルタリングタスクペイン700にアクセスするために、タスクペイン450内にリストされた特定のフィールドのドロップダウン領域562(図11参照)を使用することができる。ユーザがデータサマリー表320からインターフェース700にアクセスする場合、セレクタドロップダウンコントロール705内に示されたデフォルトのフィールドは、データサマリー表320内で現在選択されているフィールドである。ユーザは、セレクタドロップダウンコントロール705を使用して別のフィールドを選択することができる。他の実施形態では、フィルタリングタスクペイン700は、データサマリー表320内でドロップダウン領域862を選択することによってデータサマリー表320の内からアクセスすることもできる(図9参照)。他の実施形態では、ユーザは、データサマリー表320内の1つまたは複数のフィールドを選択し、1つまたは複数のフィルタリングオプションにアクセスするためにその選択されたフィールド上で右クリックすることによってフィルタリングタスクペイン700にアクセスすることができる。これらのオプションは、例えば、手動フィルタで、選択されたフィールドを含めまたは除外すること、または上記で述べられたラベル、日付または値フィルタを使用して、選択されたフィールドをフィルタリングすることを含み得る。
【0078】
フィルタリングタスクペイン700がデータサマリー表320からアクセスされる場合は、ユーザアクセスインターフェース700がどこにあるかに基づいて、ドロップダウンコントロール705内にリストされたフィールドを選択することができる。例えば、ユーザがデータサマリー表320の行のフィールドからドロップダウン領域862を選択する場合は、現在行の中にあるすべてのフィールドが示される。そうではなくユーザが、データサマリー表320の列のフィールドからドロップダウン領域862を選択する場合は、現在列の中にあるすべてのフィールドが示される。
【0079】
示された実施例では、フィルタリングの情報は、それが適用される特定のフィールドと共に格納される。例えば、データサマリー表320の一部でないフィールドにフィルタリングが適用される場合は、フィルタリング情報は、フィールドに関連付けられ、フィールドがデータサマリー表320に追加されるときに適用される。同様に、フィルタを伴うフィールドがデータサマリー表320から削除される場合は、フィルタ情報は、フィールドが後にデータサマリー表320に追加され戻される場合にフィルタが再び適用されるように、フィールドと共に保持される。上記で述べられたように、フィールドへのフィルタリングは、フィルタを選択し、次いでコントロール720を選択することによって削除することができる(図20参照)。
【0080】
上記で述べられた様々な実施形態は、例示するためだけに示されており、限定的なものと解釈すべきでない。本明細書に示され述べられた例示的な実施形態および適用例に従わずに、また添付の特許請求の範囲に記載された本発明の真の精神および範囲から逸脱せずに、様々な修正および変更を行ってもよいことが当業者には容易に認識されよう。
【特許請求の範囲】
【請求項1】
データサマリー表を作成するためのグラフィカルユーザインターフェースであって、
複数のフィールドのリストを含むフィールドペインと、
前記データサマリー表の領域を表す複数のゾーンを含むレイアウトペインであって、前記レイアウトペインは、前記フィールドペインからの前記複数のフィールドのうちのフィールドを前記ゾーンのうちの第1のゾーンに追加することを可能にするようにプログラムされる、レイアウトペイントと、
前記フィールドが前記レイアウトペインに追加されると更新されるデータサマリー表とを備えることを特徴とするグラフィカルユーザインターフェース。
【請求項2】
前記フィールドペインおよび前記レイアウトペインは、統合されたタスクペインを形成することを特徴とする請求項1に記載のユーザインターフェース。
【請求項3】
前記レイアウトペインの前記ゾーンは、行ゾーンと列ゾーンと値ゾーンとフィルタゾーンとを含むことを特徴とする請求項1に記載のユーザインターフェース。
【請求項4】
前記フィールドペイン内の前記フィールドに関連するチェックボックスをさらに備え、前記インターフェースは、前記チェックボックスが選択される場合は、前記レイアウトペインおよび前記データサマリー表に前記フィールドを自動的に置くようにプログラムされることを特徴とする請求項1に記載のユーザインターフェース。
【請求項5】
前記インターフェースは、前記チェックボックスが選択解除される場合は。前記レイアウトペインおよび前記データサマリー表から前記フィールドを削除するようにプログラムされることを特徴とする請求項4に記載のユーザインターフェース。
【請求項6】
前記ユーザインターフェースは、前記フィールドを前記フィールドペインから前記レイアウトペインの前記第1のゾーンにドラッグすることを可能にするようにプログラムされることを特徴とする請求項1に記載のユーザインターフェース。
【請求項7】
前記レイアウトペインは、前記フィールドを前記ゾーンのうちの前記第1のゾーンから第2のゾーンに移動することを可能にするようにプログラムされ、前記レイアウトペインは、前記フィールドを前記第1のゾーン内の他のフィールドに対して再配置することを可能にするようにプログラムされることを特徴とする請求項1に記載のユーザインターフェース。
【請求項8】
ユーザインターフェースは、前記フィールドが前記レイアウトペインの前記第1のゾーンに追加されるときに前記データサマリー表を自動的に更新するようにプログラムされることを特徴とする請求項1に記載のユーザインターフェース。
【請求項9】
手動コントロールが選択される場合は前記データサマリー表の手動更新を可能にするようにプログラムされた前記手動コントロールをさらに備えることを特徴とする請求項1に記載のユーザインターフェース。
【請求項10】
データサマリー表のためのグラフィカルユーザインターフェースを有するコンピュータシステム内で、
複数のフィールドのリストからフィールドを選択すること、
前記データサマリー表の領域を表す複数のゾーンのうちの第1のゾーンに前記フィールドを追加すること、および
前記フィールドが前記レイアウトペインの前記第1のゾーンに追加されるとデータサマリー表を更新することを備えることを特徴とする方法。
【請求項11】
選択することは、前記フィールドに関連するチェックボックスを選択することをさらに備え、追加することは、前記チェックボックスが選択される場合は、前記フィールドを前記第1のゾーンに自動的に置くことをさらに備えることを特徴とする請求項10に記載の方法。
【請求項12】
前記フィールドに関連する前記チェックボックスを選択解除すること、および
前記チェックボックスが選択解除される場合は、前記第1のゾーンおよび前記データサマリー表から前記フィールドを削除することをさらに備えることを特徴とする請求項11に記載の方法。
【請求項13】
追加することは、前記フィールドを前記第1のゾーンにドラッグすることをさらに備えることを特徴とする請求項10に記載の方法。
【請求項14】
前記フィールドを前記第1のゾーンから第2のゾーンに移動すること、および
前記フィールドが前記第1のゾーンから前記第2のゾーンに移動されるときに前記データサマリー表を更新することをさらに備えることを特徴とする請求項10に記載の方法。
【請求項15】
更新することは、手動更新コントロールが選択されると前記データサマリー表を更新することをさらに備えることを特徴とする請求項10に記載の方法。
【請求項16】
複数のフィールドのリストからフィールドを選択すること、
前記データサマリー表の領域を表す複数のゾーンのうちの第1のゾーンに前記フィールドを追加すること、および
前記フィールドが前記レイアウトペインの前記第1のゾーンに追加されるとデータサマリー表を更新することを備えるステップを実施するためのコンピュータ実行可能命令を有することを特徴とするコンピュータ読取り可能媒体。
【請求項17】
選択することは、前記フィールドに関連するチェックボックスを選択することをさらに備え、追加することは、前記チェックボックスが選択される場合は前記フィールドを前記第1のゾーンに自動的に置くことをさらに備えることを特徴とする請求項16に記載のコンピュータ読取り可能媒体。
【請求項18】
前記フィールドに関連する前記チェックボックスを選択解除すること、および
前記チェックボックスが選択解除される場合は、前記第1のゾーンおよび前記データサマリー表から前記フィールドを削除することをさらに備えることを特徴とする請求項17に記載のコンピュータ読取り可能媒体。
【請求項19】
追加することは、前記フィールドを前記第1のゾーンにドラッグすることをさらに備えることを特徴とする請求項16に記載のコンピュータ読取り可能媒体。
【請求項20】
前記フィールドを前記第1のゾーンから第2のゾーンに移動すること、および
前記フィールドが前記第1のゾーンから前記第2のゾーンに移動されるときに前記データサマリー表を更新することをさらに備えることを特徴とする請求項16に記載のコンピュータ読取り可能媒体。
【請求項1】
データサマリー表を作成するためのグラフィカルユーザインターフェースであって、
複数のフィールドのリストを含むフィールドペインと、
前記データサマリー表の領域を表す複数のゾーンを含むレイアウトペインであって、前記レイアウトペインは、前記フィールドペインからの前記複数のフィールドのうちのフィールドを前記ゾーンのうちの第1のゾーンに追加することを可能にするようにプログラムされる、レイアウトペイントと、
前記フィールドが前記レイアウトペインに追加されると更新されるデータサマリー表とを備えることを特徴とするグラフィカルユーザインターフェース。
【請求項2】
前記フィールドペインおよび前記レイアウトペインは、統合されたタスクペインを形成することを特徴とする請求項1に記載のユーザインターフェース。
【請求項3】
前記レイアウトペインの前記ゾーンは、行ゾーンと列ゾーンと値ゾーンとフィルタゾーンとを含むことを特徴とする請求項1に記載のユーザインターフェース。
【請求項4】
前記フィールドペイン内の前記フィールドに関連するチェックボックスをさらに備え、前記インターフェースは、前記チェックボックスが選択される場合は、前記レイアウトペインおよび前記データサマリー表に前記フィールドを自動的に置くようにプログラムされることを特徴とする請求項1に記載のユーザインターフェース。
【請求項5】
前記インターフェースは、前記チェックボックスが選択解除される場合は。前記レイアウトペインおよび前記データサマリー表から前記フィールドを削除するようにプログラムされることを特徴とする請求項4に記載のユーザインターフェース。
【請求項6】
前記ユーザインターフェースは、前記フィールドを前記フィールドペインから前記レイアウトペインの前記第1のゾーンにドラッグすることを可能にするようにプログラムされることを特徴とする請求項1に記載のユーザインターフェース。
【請求項7】
前記レイアウトペインは、前記フィールドを前記ゾーンのうちの前記第1のゾーンから第2のゾーンに移動することを可能にするようにプログラムされ、前記レイアウトペインは、前記フィールドを前記第1のゾーン内の他のフィールドに対して再配置することを可能にするようにプログラムされることを特徴とする請求項1に記載のユーザインターフェース。
【請求項8】
ユーザインターフェースは、前記フィールドが前記レイアウトペインの前記第1のゾーンに追加されるときに前記データサマリー表を自動的に更新するようにプログラムされることを特徴とする請求項1に記載のユーザインターフェース。
【請求項9】
手動コントロールが選択される場合は前記データサマリー表の手動更新を可能にするようにプログラムされた前記手動コントロールをさらに備えることを特徴とする請求項1に記載のユーザインターフェース。
【請求項10】
データサマリー表のためのグラフィカルユーザインターフェースを有するコンピュータシステム内で、
複数のフィールドのリストからフィールドを選択すること、
前記データサマリー表の領域を表す複数のゾーンのうちの第1のゾーンに前記フィールドを追加すること、および
前記フィールドが前記レイアウトペインの前記第1のゾーンに追加されるとデータサマリー表を更新することを備えることを特徴とする方法。
【請求項11】
選択することは、前記フィールドに関連するチェックボックスを選択することをさらに備え、追加することは、前記チェックボックスが選択される場合は、前記フィールドを前記第1のゾーンに自動的に置くことをさらに備えることを特徴とする請求項10に記載の方法。
【請求項12】
前記フィールドに関連する前記チェックボックスを選択解除すること、および
前記チェックボックスが選択解除される場合は、前記第1のゾーンおよび前記データサマリー表から前記フィールドを削除することをさらに備えることを特徴とする請求項11に記載の方法。
【請求項13】
追加することは、前記フィールドを前記第1のゾーンにドラッグすることをさらに備えることを特徴とする請求項10に記載の方法。
【請求項14】
前記フィールドを前記第1のゾーンから第2のゾーンに移動すること、および
前記フィールドが前記第1のゾーンから前記第2のゾーンに移動されるときに前記データサマリー表を更新することをさらに備えることを特徴とする請求項10に記載の方法。
【請求項15】
更新することは、手動更新コントロールが選択されると前記データサマリー表を更新することをさらに備えることを特徴とする請求項10に記載の方法。
【請求項16】
複数のフィールドのリストからフィールドを選択すること、
前記データサマリー表の領域を表す複数のゾーンのうちの第1のゾーンに前記フィールドを追加すること、および
前記フィールドが前記レイアウトペインの前記第1のゾーンに追加されるとデータサマリー表を更新することを備えるステップを実施するためのコンピュータ実行可能命令を有することを特徴とするコンピュータ読取り可能媒体。
【請求項17】
選択することは、前記フィールドに関連するチェックボックスを選択することをさらに備え、追加することは、前記チェックボックスが選択される場合は前記フィールドを前記第1のゾーンに自動的に置くことをさらに備えることを特徴とする請求項16に記載のコンピュータ読取り可能媒体。
【請求項18】
前記フィールドに関連する前記チェックボックスを選択解除すること、および
前記チェックボックスが選択解除される場合は、前記第1のゾーンおよび前記データサマリー表から前記フィールドを削除することをさらに備えることを特徴とする請求項17に記載のコンピュータ読取り可能媒体。
【請求項19】
追加することは、前記フィールドを前記第1のゾーンにドラッグすることをさらに備えることを特徴とする請求項16に記載のコンピュータ読取り可能媒体。
【請求項20】
前記フィールドを前記第1のゾーンから第2のゾーンに移動すること、および
前記フィールドが前記第1のゾーンから前記第2のゾーンに移動されるときに前記データサマリー表を更新することをさらに備えることを特徴とする請求項16に記載のコンピュータ読取り可能媒体。
【図1】
【図7】
【図17】
【図18】
【図19】
【図2】
【図3】
【図4】
【図5】
【図6】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図7】
【図17】
【図18】
【図19】
【図2】
【図3】
【図4】
【図5】
【図6】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【公開番号】特開2012−142002(P2012−142002A)
【公開日】平成24年7月26日(2012.7.26)
【国際特許分類】
【出願番号】特願2012−36529(P2012−36529)
【出願日】平成24年2月22日(2012.2.22)
【分割の表示】特願2008−530097(P2008−530097)の分割
【原出願日】平成18年8月29日(2006.8.29)
【出願人】(500046438)マイクロソフト コーポレーション (3,165)
【Fターム(参考)】
【公開日】平成24年7月26日(2012.7.26)
【国際特許分類】
【出願日】平成24年2月22日(2012.2.22)
【分割の表示】特願2008−530097(P2008−530097)の分割
【原出願日】平成18年8月29日(2006.8.29)
【出願人】(500046438)マイクロソフト コーポレーション (3,165)
【Fターム(参考)】
[ Back to top ]