(57)【要約】  カスタマイズされたフォームが、クエリに関連するパラメータを入力するために提供される。ユーザは、データベースに対するクエリから結果として生じるレポートの修正を望むことがある。修正用のパラメータを入力するために、カスタマイズされたフォームをユーザに表示する。カスタマイズされたフォームは、生成されるフォームに対してプロンプトを提示することにより、関連するプロンプトに従ってパラメータを入力することを可能にする。
2009541899.tif 000002
【特許請求の範囲】
【請求項１】
データベースクエリステートメントに関連付けられたパラメータを入力するためのユーザインターフェースを提供する、コンピュータ実装される方法であって、
データビューのクエリステートメント（２１０）を生成するステップと、
データベースエンジンに対して前記クエリステートメント（２３２）を送信するステップと、
前記クエリステートメントが実行可能でない場合、パラメータ要求（２３４）を受信するステップと、
カスタマイズされたパラメータフォームが前記データビューに関連付けられているかどうかを判定するために、プロパティリスト（２１２）にアクセスするステップと、
前記プロパティリストが、カスタマイズされたパラメータフォームが前記データビューに関連付けられていると示す場合、前記カスタマイズされたパラメータフォーム（２０６）を表示するステップと
を含むことを特徴とするコンピュータ実装される方法。
【請求項２】
前記データビュー（３０２）は、フォーム、レポート、およびテーブルの少なくとも１つを含むことを特徴とする請求項１に記載のコンピュータ実装される方法。
【請求項３】
前記プロパティリスト（２１２）は、前記データビューを示す前記クエリステートメントを表す、レコードソースプロパティ（２１４）を含むことを特徴とする請求項１に記載のコンピュータ実装される方法。
【請求項４】
前記プロパティリスト（２１２）は、前記データビューに関連付けられた結果を修正するために、ブール演算に従ってパラメータを前記クエリステートメントに追加するためのパラメータフィルタプロパティ（２１６）を含むことを特徴とする請求項１に記載のコンピュータ実装される方法。
【請求項５】
前記クエリステートメントを変更することにより、前記データビュー（３０２）を修正するステップをさらに含むことを特徴とする請求項１に記載のコンピュータ実装される方法。
【請求項６】
前記プロパティリスト（２１２）は、カスタマイズされたパラメータフォームが前記データビューに関連付けられていることを示すパラメータフォームプロパティ（２２０）を含むことを特徴とする請求項１に記載のコンピュータ実装される方法。
【請求項７】
前記プロパティリスト（２１２）が、カスタマイズされたパラメータフォームが前記データビューに関連付けられていると示さない場合、標準のパラメータフォーム（２０４）にアクセスするステップをさらに含むことを特徴とする請求項１に記載のコンピュータ実装される方法。
【請求項８】
前記カスタマイズされたパラメータフォーム（２０６）は、前記データビューに特有のテキストブロック（９００）を含むことを特徴とする請求項１に記載のコンピュータ実装される方法。
【請求項９】
前記カスタマイズされたパラメータフォーム（２０６）は、追加のプロパティ、追加のフィルタプロパティ、およびコントロールの少なくとも１つを提供するように構成されることを特徴とする請求項１に記載のコンピュータ実装される方法。
【請求項１０】
前記パラメータフォームのパラメータに関連して前記データビュー（３０２）を修正するステップをさらに含み、前記データビュー（３０２）は、前記クエリステートメントを変更することなく修正されることを特徴とする請求項１に記載のコンピュータ実装される方法。
【請求項１１】
データベースクエリステートメントに関連付けられたパラメータを入力するためのコンピュータ実行可能命令を有する、コンピュータ読み取り可能な媒体であって、前記コンピュータ実行可能命令は、
クエリステートメントの実行がデータビュー（３１０）を完成するためのパラメータを必要とするかどうかを判定するステップと、
前記クエリステートメントが前記データビューを完成するためにパラメータを必要とする場合、プロパティリスト（２１２）にアクセスするステップと、
前記プロパティリスト（２１２）のパラメータフォームプロパティ（２２０）から、カスタマイズされたプロパティフォームが前記データビューに関連付けられているかどうかを判定するステップと、
前記パラメータフォームプロパティ（２２０）が前記プロパティリスト（２１２）に関連付けられている場合、前記カスタマイズされたプロパティフォーム（２０６）を表示するステップと
を含むことを特徴とするコンピュータ読み取り可能な媒体。
【請求項１２】
前記プロパティリスト（２１２）は、前記データビューを示す前記クエリステートメントを表す、レコードソースプロパティ（２１４）を含むことを特徴とする請求項１１に記載のコンピュータ読み取り可能な媒体。
【請求項１３】
前記プロパティリスト（２１２）は、前記データビューに関連付けられた結果を修正するために、ブール演算に従ってパラメータを前記クエリステートメントに追加するためのパラメータフィルタプロパティ（２１６）を含むことを特徴とする請求項１１に記載のコンピュータ読み取り可能な媒体。
【請求項１４】
前記クエリステートメントを変更することにより、前記データビュー（３０２）を修正するステップをさらに含むことを特徴とする請求項１１に記載のコンピュータ読み取り可能な媒体。
【請求項１５】
前記カスタマイズされたパラメータフォーム（２０６）は、追加のプロパティ、追加のフィルタプロパティ、およびコントロールの少なくとも１つを提供するように構成されることを特徴とする請求項１１に記載のコンピュータ読み取り可能な媒体。
【請求項１６】
前記パラメータフォームのパラメータに関連して前記データビュー（３２２）を修正するステップをさらに含み、前記データビューは、前記クエリステートメントを変更することなく修正されることを特徴とする請求項１１に記載のコンピュータ読み取り可能な媒体。
【請求項１７】
カスタマイズされたプロパティフォームをデータビューに相互に関連付けるためのコンピュータで実装される方法であって、
クエリステートメントに応答してパラメータ要求（３２４）を受信するステップと、
プロパティリスト（２１２）が、カスタマイズされたプロパティフォーム（２０６）が前記データビューに関連付けられていると示すかどうかを判定するために、プロパティマネージャ（２０８）にアクセスするステップと、
前記プロパティリスト（２１２）が、前記カスタマイズされたプロパティフォーム（２０６）が前記データビューに関連付けられていると示す場合、前記カスタマイズされたプロパティフォーム（２０６）を表示するステップと、
前記プロパティリストが、前記カスタマイズされたプロパティフォームが前記データビューに関連付けられていると示さない場合、標準のプロパティフォームを表示するステップと、
パラメータを、前記カスタマイズされたプロパティフォーム（２０６）、および前記標準プロパティフォーム（２０４）の少なくとも１つと関連付けるステップと、
前記クエリステートメントを変更することなく前記パラメータに関連して前記データビュー（３２２）を修正するステップと
を含むことを特徴とするコンピュータ実装される方法。
【請求項１８】
前記プロパティリスト（２１２）は、前記データビューに関連付けられた結果を修正するために、ブール演算によりパラメータを前記クエリステートメントに追加するためのパラメータフィルタプロパティ（２１６）を含むことを特徴とする請求項１７に記載のコンピュータ実装される方法。
【請求項１９】
前記クエリステートメントを変更することなく、前記データビュー（３０２）を修正するステップをさらに含むことを特徴とする請求項１７に記載のコンピュータ実装される方法。
【請求項２０】
前記プロパティリスト（２１２）は、カスタマイズされたパラメータフォームが前記データビューに関連付けられていることを示すパラメータフォームプロパティ（２２０）を含むことを特徴とする請求項１７に記載のコンピュータ実装される方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カスタマイズ可能なパラメータユーザインターフェースに関する。
【背景技術】
【０００２】
データベースは編成されたデータの集合である。データベース管理システム（ＤＢＭＳ：ｄａｔａｂｅｓｅ  ｍａｎａｇｅｍｅｎｔ  ｓｙｓｔｅｍ）は、データベースを管理し、数多くのクライアントによって要求されるデータに対する操作を実行するように設計された、コンピュータプログラム（または、より典型的にはコンピュータプログラムのスイート）である。ＤＢＭＳは、データを取り出すためにクエリを記述して実行することを可能にする。ＤＢＭＳは、フォームまたはレポートの作成を可能にすることもできる。より改良されたクエリを、ＤＢＭＳから実行することもできる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
これらのカスタマイズされたクエリ／レポート／フォームは、クエリ／レポート／フォームがデータベースに対して実行される前に、ある特定のパラメータが与えられることを必要とすることがある。このようなカスタマイズされたクエリ／レポート／フォームは、典型的にいくつかの複雑なステップを要し、その結果は典型的に、理解または修正することが困難である。
【課題を解決するための手段】
【０００４】
この課題を解決するための手段の記載は、下記の発明を実施するための最良の形態においてさらに説明される概念の選択を、簡略化した形式で紹介するために提供される。この課題を解決するための手段の記載は、特許請求される対象の重要な特徴または本質的な特徴を特定するようには意図されておらず、特許請求される対象の範囲を決定する際の助けとして使用されることも意図されていない。
【０００５】
カスタマイズ可能なユーザインターフェースが、データベースクエリに関連する、要求されたパラメータを入力するために提供される。カスタマイズされたパラメータユーザインターフェースは、データベースクエリに従って生成されるデータビュー（例えば、フォームまたはレポート）と相関関係にあるパラメータ入力ダイアログ／ウィンドウを提供する。入力されるパラメータは、データビューの修正を提供することができる。また、データベースのマネージャは、結果がデータベースによって返される前に、パラメータのプロンプトを自動的に含むようにデータベースのデータビューを構成することができる。これらのプロンプトを、マネージャによってカスタマイズすることができ、ポップアップ、プルダウンメニュー、フライアウトまたは様々な他のユーザインターフェースコンポーネントなどのダイアログに従って提供することができる。したがって、直観的かつ効率的で修正可能なデータビューが提供される。
【０００６】
本発明の非限定的で非網羅的な実施形態を、下記の図面を参照して説明する。これらの図では、別に指定しない限り、様々な図面を通して同様の参照番号が同様の部分を指す。
【発明を実施するための最良の形態】
【０００７】
以下では、本明細書の一部を形成し、諸実施形態を実践するための特定の例を示す添付の図面を参照して、諸実施形態をより詳しく説明する。しかし、諸実施形態は、多数の異なる形態で実装されることがあり、本明細書において説明される実施形態に限定されると解釈されるべきではない。むしろ、これらの実施形態は、本開示が詳細かつ完全なものとなり対象の範囲を当業者に十分に伝えるように提供される。開示される実施形態を、方法、システム、または装置として実施することができる。したがって、開示される実施形態は、専らハードウェアの実装、専らソフトウェアの実装、またはソフトウェアおよびハードウェアの態様の組み合わせの実装の形式をとることができる。したがって、以下の詳細な説明は、限定的な意味に捉えられるべきではない。
【０００８】
本明細書において提示されるルーチンの説明を読むとき、様々な実施形態の論理演算は、（１）コンピューティングシステムにおいて実行中の、一連のコンピュータで実装されたアクトまたはプログラムモジュールとして、および／または（２）コンピューティングシステム内の相互接続された機械的な論理回路または回路モジュールとして、実装されることを理解されたい。この実装は、本発明を実装するコンピューティングシステムのパフォーマンスの条件に応じた選択の問題である。したがって、本明細書で示され、本明細書で説明される実施形態を構成する論理演算は、操作、構造的装置、アクトまたはモジュールと、様々に称される。これらの操作、構造的装置、アクトおよびモジュールを、ソフトウェア、ファームウェア、特定の目的のデジタル論理、およびこれらの任意の組合せで実装することができる。
【０００９】
ここで図面を参照すると、図面では、同様の番号が同様の要素を表す。図１および対応する検討は、本発明の実施形態を実装することができる適切なコンピューティング環境についての簡潔で一般的な説明を提供するように意図される。
【００１０】
一般的に、プログラムモジュールは、ルーチン、プログラム、コンポーネント、データ構造、および特定のタスクを実行するか特定の抽象的なデータ型を実装する他のタイプの構造を含む。ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラム可能な家庭用電化製品、ミニコンピュータ、メインフレームコンピュータなどを含む他のコンピュータシステムの構成も使用することができる。通信ネットワークを介してリンクされたリモートの処理装置によってタスクを実行する、分散コンピューティング環境も使用することができる。分散コンピューティング環境では、プログラムモジュールを、ローカルおよびリモートの両方のメモリストレージデバイスに配置することができる。
【００１１】
ここで図１を参照し、様々な実施形態で使用されるコンピューティングデバイス１００の例示的なコンピュータアーキテクチャを説明する。例えば、コンピュータは、パーソナルコンピュータ、モバイルコンピュータなどとして構成することができる。示されるように、コンピューティングデバイス１００は、中央処理装置１０２（「ＣＰＵ」）、ランダムアクセスメモリ１０６（「ＲＡＭ」）とリードオンリーメモリ（「ＲＯＭ」）１０８を含むシステムメモリ１０４、およびメモリをＣＰＵ１０２に結合するシステムバス１１６を含む。起動中などにコンピュータ内の要素間の情報の転送を助ける基本ルーチンを含む、基本入力／出力システムはＲＯＭ１０８に格納される。コンピューティングデバイス１００は、以下により詳細に説明されるオペレーティングシステム１２２、アプリケーションプログラム、および他のプログラムモジュールを格納する大容量ストレージデバイス１２０をさらに含む。
【００１２】
大容量ストレージデバイス１２０、およびその関連するコンピュータ読み取り可能な媒体は、コンピューティングデバイス１００に揮発性および不揮発性のストレージを提供する。コンピュータ読み取り可能な媒体は、任意のタイプの取外し可能なおよび／または取外し不可能な媒体を含んでよい。
【００１３】
コンピューティングデバイス１００は、インターネットなどのネットワーク１１２を介してリモートコンピュータに対する論理的接続を使用して、ネットワーク化された環境で動作する。コンピューティングデバイス１００は、バス１１６に接続されたネットワークインターフェースユニット１１０を介してネットワーク１１２に接続してもよい。
【００１４】
コンピューティングデバイス１００は、キーボード、マウス、電子スタイラスなどの複数の装置から入力を受信して処理する、入力／出力コントローラ１１４も含んでもよい。同様に、入力／出力コントローラ１１４は、表示画面、プリンタ、または他の何らかのタイプの装置（図示せず）に対して出力を行うことができる。
【００１５】
上記で簡潔に述べたように、ネットワークに接続されたコンピュータの操作の制御に適したオペレーティングシステム１２２を含め、複数のプログラムモジュールおよびデータファイルを、コンピューティングデバイス１００の大容量ストレージデバイス１２０およびＲＡＭ１０６に格納することができる。大容量ストレージデバイス１２０およびＲＡＭ１０６も、１つまたは複数のプログラムモジュールを格納することができる。特に、大容量ストレージデバイス１２０およびＲＡＭ１０６は、データベース管理システム（ＤＢＭＳ）１２４のローカルコンポーネントを格納することができる。
【００１６】
ＤＢＭＳ１２４のローカルコンポーネントは、データベースサーチクエリとの関連でパラメータを入力するための、カスタマイズされたパラメータユーザインターフェースを提示する機能を含む。カスタマイズされたパラメータユーザインターフェースは、データベースクエリに従って生成されるデータビュー（例えば、フォームまたはレポート）と相関関係にあるパラメータ入力ダイアログ／ウィンドウを提供する。入力されるパラメータにより、データビューの修正を可能になる。修正は、元のクエリステートメントを変更することなく行うことができる。修正は、クエリステートメントを直接修正することによって行うこともできる。修正の持続性（ｐｅｒｓｉｓｔｅｎｃｅ）を、レコードソース、クエリオブジェクト、および／またはパラメータプロパティに関連付けることができる。また、データベースのマネージャは、結果がデータベースによって返される前に、パラメータのプロンプトを自動的に含むようにデータベースのデータビューを構築することができる。これらのプロンプトを、マネージャによってカスタマイズすることができ、ポップアップ、プルダウンメニュー、フライアウト、または様々な他のユーザインターフェースコンポーネントなどのダイアログに従って提供することができる。したがって、直観的かつ効率的で修正可能なデータビューが提供される。
【００１７】
本明細書において使用されるように、「コントロール（Ｃｏｎｔｒｏｌ）」は一般に、単純な入出力（Ｉ／Ｏ）タスクを実行するために別の表示フレームとともにアプリケーションが使用する子表示フレームを指す。コントロールは、ほとんどの場合ダイアログボックス内で使用されるが、他の表示フレームにおいても使用可能である。ダイアログボックス内のコントロールは、ユーザに、テキストをタイプし、オプションを選択し、そのアクションを完了するようにダイアログボックスに命令する手段を提供する。他の表示フレームにおけるコントロールは、ユーザにコマンドを選択させ、ステータスを見せ、テキストを見せて編集させるなどの様々なサービスを提供する。コントロールの一例は、アプリケーションのユーザインターフェースの子表示フレームを提示する右クリックの選択メニューである。
【００１８】
「データビュー（Ｄａｔａ  ｖｉｅｗ）」は一般に、データベースからのデータの集合を表すフォーム、レポート、および／またはテーブルを指す。データベースからのデータの集合を、データベースサーチクエリに従ってフォームまたはレポートで提供することができる。データビューを、カスタマイズされたパラメータユーザインターフェースに従って任意のパラメータの入力により、修正することができる。
【００１９】
本明細書において以下に使用されるように、「パラメータ（Ｐａｒａｍｅｔｅｒ）」は一般に、データビューに含まれるデータに関連付けられた、任意のデータ値またはデータ値のセットを指す。入力されたパラメータは、カスタマイズされたパラメータユーザインターフェースに従って入力されると、特定のデータビューを修正することができる。
【００２０】
「パラメータ入力プロンプト（Ｐａｒａｍｅｔｅｒ  ｅｎｔｒｙ  ｐｒｏｍｐｔ）」は一般に、データビューに関連してパラメータを入力するために提供されるユーザインターフェースダイアログを指す。ユーザインターフェースダイアログは、表示フレーム、ポップアップ、プルダウンメニュー、フライアウト、または様々な他のユーザインターフェースコンポーネントの形式をとることができる。パラメータ入力プロンプトにおけるパラメータの入力は、テキストボックス入力、プルダウン選択ボックス、または他のタイプのデータ入力ユーザインターフェースコンポーネントとして提供することができる。
【００２１】
「パラメータフィルタプロパティ（ＰＦｉｌｔｅｒ：Ｐａｒａｍｅｔｅｒ  ｆｉｌｔｅｒ  ｐｒｏｐｅｒｔｙ）」は一般に、データビューに関連付けられた、入力されたパラメータに対応するプロパティを指す。パラメータフィルタプロパティは、データビューに含まれる結果を修正するため、ブールＡＮＤ演算（Ｂｏｏｌｅａｎ  ＡＮＤ  ｏｐｅｒａｔｉｏｎ）に従ってクエリステートメントに追加される。
【００２２】
「パラメータフォームプロパティ（ＰＦｏｒｍ：Ｐａｒａｍｅｔｅｒ  ｆｏｒｍ  ｐｒｏｐｅｒｔｙ）」は一般に、アクティブにされるとカスタマイズされたパラメータフォームが特定のデータビューに関連付けられていることを示すプロパティを指す。
【００２３】
「レコードソース（Ｒｅｃｏｒｄ  ｓｏｕｒｃｅ）」は一般に、データビューを表すクエリステートメントに対応する、格納されたプロパティを指す。パラメータが本開示に従って入力されると、該パラメータを、ブールＡＮＤ演算に従ってレコードソースに追加することができる。
【００２４】
「クエリステートメント（Ｑｕｅｒｙ  ｓｔａｔｅｍｅｎｔ）」は、データビューを生成する、データベースに対するクエリに使用されるステートメントに対応する。ＳＱＬ（ｓｔｒｕｃｔｕｒｅｄ  ｑｕｅｒｙ  ｌａｎｇｕａｇｅ）データベースにおいて、クエリステートメントは、データビューに対応するデータベースの結果を取り出すためにデータベースエンジンに渡されるＳＱＬステートメントに対応する。
【００２５】
図２は、本開示に従って、ＤＢＭＳ内で、カスタマイズされたパラメータユーザインターフェースを提供する例示的なシステムの機能ブロック図を示す。ＤＢＭＳインターフェース１２４は、データビューブラウザ２０２、パラメータプロンプトモジュール２０４、カスタマイズされたパラメータＵＩモジュール２０６、およびプロパティマネージャ２０８を含む。データビューブラウザ２０２はさらに、ステートメントジェネレータ２１０を含み、データベースエンジン２３０に結合される。データベースエンジン２３０は、データベース２４０に結合される。プロパティマネージャ２０８は、ストレージ２１２に結合される。ストレージ２１２は、レコードソース２１４、パラメータフィルタプロパティ２１６、およびパラメータフォームプロパティ２２０に対する入力を含む。
【００２６】
操作中、データビューブラウザ２０２は、データベースエンジン２３０とＤＢＭＳ１２４の他の機能ブロックとの間で通信し、データベース２４０内に含まれるデータのデータビュー（例えばフォームまたはレポート、図５を参照されたい）を提供する。データビューブラウザ２０２に含まれるステートメントジェネレータ２１０は、データベースエンジン２３０に渡されるクエリステートメント２３２を生成する。クエリステートメント２３２が現在のフォームで実行可能である場合、データベースエンジン２３０は、クエリ結果２３６をデータビューブラウザ２０２に返す。そうではない場合、クエリステートメント２３２は、クエリステートメント２３２に含まれない追加のパラメータの識別子を必要とするため、クエリステートメント２３２は実行可能でなく、したがってデータベースエンジン２３０は、任意の必要なパラメータ要求をデータビューブラウザ２０２に返す。
【００２７】
データビューブラウザ２０２は、任意のパラメータ要求２３４をパラメータプロンプトモジュール２０４に伝達する。パラメータプロンプトモジュール２０４は、プロパティマネージャ２０８とやりとりをして（ｃｏｎｓｕｌｔ）、カスタマイズされたパラメータフォームが現在のデータビューに関連付けられているかどうかを判定する。プロパティマネージャ２０８は、ストレージ２１２のプロパティ（例えば、２１４−２２０）のリストにアクセスして、この判定を行う。ストレージ２１２は、一時的または永続的なストレージとすることができ、図１に示されるシステムメモリ１０４または大容量ストレージデバイス１２０に対応することができる。
【００２８】
大容量ストレージデバイスにおけるプロパティ（例えば、２１４−２２０）が、カスタマイズされたパラメータフォームがデータビューに関連付けられていることを示す場合、カスタマイズされたパラメータＵＩモジュール２０６によって提供される機能を使用して、データビューに関連して、カスタマイズされたパラメータフォームを表示する。しかし、プロパティ（例えば、２１４−２２０）が、カスタマイズされたパラメータフォームがデータビューに関連付けられないことを示す場合、通常のパラメータフォームをパラメータプロンプトモジュール２０４によって提供し、要求されたパラメータのユーザからの入力を求める。
【００２９】
図２に示される機能ブロックは、ＤＢＭＳに関連付けられる可能性のある機能ブロックの網羅的な表現ではない。追加のまたはより少ない機能ブロックが含まれることがあり、ＤＢＭＳはその意図される目的のために依然として動作する。例えば、代替的な実施形態では、カスタマイズされたパラメータＵＩモジュール２０６が、パラメータプロンプトモジュール２０４を介して通信するのではなく、データビューブラウザ２０２と直接通信する可能性がある。別の代替的な実施形態では、データベースマネージャによって、特定のデータベースのために生成される全てのフォームまたはレポートが、カスタマイズされたパラメータフォームを必要とするという決定がなされることがある。この実施形態において、各データビューが、関連するカスタマイズされたパラメータフォームを有することになるので、パラメータプロンプトモジュール２０４、および、ストレージ２１２の或る特定のプロパティ（例えば、２１４−２２０）が不要になることがある。
【００３０】
図３は、本開示にかかる、データベースクエリに関連してカスタマイズされたパラメータ入力フォームを提供する処理の操作フロー図である。パラメータの入力が要求されるような、クエリの実行に必要なパラメータの全ては含んでいないクエリがデータベースに対して生成されたとき、処理が開始する。処理は操作３０２に続く。
【００３１】
操作３０２では、容易に理解することができるフォーマットでクエリに対する応答を返すオブジェクト／ビュー（例えば、フォームまたはレポート）が開かれている。レポートが開かれている間、処理は決定操作３０４に続く。
【００３２】
決定操作３０４では、ＰＦｉｌｔｅｒプロパティがクエリに対して指定されているかどうかの決定が行われる。ＰＦｉｌｔｅｒプロパティは、クエリの追加のフィルタリングが要求されているように、そのクエリにおけるＷＨＥＲＥ節を示す。ＰＦｉｌｔｅｒプロパティが指定されていない場合、処理は操作３０８に進む。しかし、ＰＦｉｌｔｅｒプロパティが指定される場合、処理は操作３０６に進む。
【００３３】
操作３０６では、指定されたＰＦｉｌｔｅｒプロパティに対応するＰＦｉｌｔｅｒ節が、クエリステートメントに追加される。例えば、ＰＦｉｌｔｅｒプロパティが文字「Ａ」から始まる結果というアルファベットの限定を示すものであり、元のクエリが現在の顧客に関するものであった場合、結果として生じるクエリが文字「Ａ」から始まる顧客に関するものになるように、節が追加される。処理は操作３０８に進む。
【００３４】
操作３０８では、クエリステートメントが実行される。クエリステートメントが実行される間、処理は決定操作３１０に続く。
【００３５】
決定操作３１０では、クエリステートメントの実行が完了のためにパラメータを必要とするかどうかの判定が行われる。パラメータが必要でない場合、処理は操作３２２に進む。しかし、パラメータの入力が必要とされる場合、処理は決定操作３１２に進む。
【００３６】
決定操作３１２では、パラメータの入力を要求するのに使用するために、フォームが既に指定されているかどうかの判定が行われる。一実施形態では、パラメータフォームは、ＰＦｏｒｍプロパティによって示されると、指定される。フォームが指定されていない場合、処理は操作３１４に進む。
【００３７】
操作３１４では、本開示に従って生成されたパラメータフォームで利用可能なカスタマイズを含まないプロンプトが、パラメータを入力するため提供される。プロンプトが表示されると、処理は決定操作３１６に進む。
【００３８】
しかし、パラメータフォームが指定される場合、処理は操作３１８に進む。操作３１８では、指定されたフォームが、パラメータ入力のために表示される。指定されたフォームが表示されると、処理は決定操作３１６に進む。
【００３９】
決定操作３１６で、ユーザがクエリをキャンセルすることを選択したかどうかの判定が行われる。クエリを、ユーザの選択でいつでもキャンセルすることができる。ユーザがクエリをキャンセルしていた場合、処理は操作３１８に進む。操作３１８で、データのオブジェクト／ビューを開くことがキャンセルされ、処理が終了する。
【００４０】
しかし、クエリがキャンセルされていなかった場合、処理は操作３２０に進む。操作３２０で、パラメータの入力で修正されたステートメントの実行が行われる。元のクエリステートメントを変更することなく、修正を行うことができる。この修正を、クエリステートメントを直接修正することによっても行うことができる。修正の永続性を、レコードソース、クエリオブジェクト、および／またはパラメータプロパティに関連付けることができる。処理は操作３２２に進む。
【００４１】
操作３２２で、クエリの結果は、オブジェクト／ビューに結び付けられており、該結果は、入力されたパラメータによって修正されたとおりに表示される。オブジェクト／ビューが表示されると、処理３００は終了し、処理は他のタスクに移る。
【００４２】
図４は、本開示に従って、パラメータを、カスタマイズされたパラメータフォームに追加する操作フロー図を示す。開発者が、パラメータをカスタマイズされたパラメータフォームに追加したいと望む場合に、処理が開始する。処理は操作４０２に続く。
【００４３】
操作４０２で、カスタマイズされたパラメータフォームにパラメータを追加するために、コマンドが受信される。コマンドを、カスタマイズされたフォームの開発者による、プルダウンメニューの選択または他の編集の選択から得ることができる。処理は決定操作４０４に進む。
【００４４】
決定操作４０４では、ＰＦｉｌｔｅｒプロパティが、追加されるパラメータを既に含んでいるかどうかの判定が行われる。ＰＦｉｌｔｅｒプロパティが該パラメータを含んでいない場合、処理は、該パラメータがＰＦｉｌｔｅｒプロパティに追加される操作４０６に移る。ＰＦｉｌｔｅｒプロパティが既に該パラメータに投入されていた場合、またはＰＦｉｌｔｅｒプロパティが該パラメータに投入されると、処理は決定操作４０８に進む。
【００４５】
決定操作４０８では、ＰＦｏｒｍプロパティが、パラメータフォームがそのプロパティに含まれるものに既に指定されていると示すかどうかの判定が行われる。パラメータフォームがまだ生成されていない場合、処理は、パラメータフォームを作成してＰＦｏｒｍプロパティを設定する操作４１０に進む。
【００４６】
パラメータを含むためのパラメータフォームが既に作成されていた場合、またはパラメータフォームが作成されると、処理は操作決定操作４１２に進む。
【００４７】
決定操作４１２で、コントロールが、パラメータの入力のためのフォーム上に生成されているかどうかの判定が行われる。コントロールが存在しない場合、処理は、パラメータ入力のためのパラメータフォーム上にコントロールを生成するために処理が開始される操作４１４に移る。
【００４８】
コントロールが既に生成されていた場合、またはコントロールが生成されると、処理は操作４１６に続く。操作４１６で、追加されたパラメータとともにデータのオブジェクト／ビューを、クエリステートメントの実行後に表示することができる。オブジェクト／ビューが表示されると、処理４００が終了し、処理は他のタスクに移る。
【００４９】
図５は、本開示にかかる、フォームを生成したクエリに対する追加のパラメータの入力によって修正される前の例示的なレポートを示す。レポート５００は、ある製品についての年毎の売上のリスト、製品番号、製品が出荷された時、および売上高を含む。
【００５０】
図６は、本開示にかかる、レポートに対応するクエリ結果をフィルタリングするために行われる選択を有する、図５の例示的なレポートを示す。レポート６００において行われている選択は、結果を、特定の２つの日付の間に生じている結果に限定することを示す日付フィルタに従って、結果をフィルタリングすることである。
【００５１】
図７は、本開示にかかる例示的なパラメータ生成フォームを示す。パラメータ生成フォーム７００により、パラメータフォームの開発者は、パラメータの入力のためにパラメータプロンプトをカスタマイズすることを選択することができる。パラメータを作成するための選択は、パラメータのプロンプトおよびコントロールを設計するためにプロンプトを編集モードで配置する。
【００５２】
図８は、本開示にかかるカスタマイズされていない例示的なパラメータ入力フォームを示す。パラメータ入力フォーム８００は、プロンプトが関連付けられるレポートに関する特定の情報を有していない。対照的に、図９は、本開示にかかるカスタマイズされた例示的なパラメータ入力フォームを示す。カスタマイズされたパラメータ入力フォーム９００は、図８のパラメータ入力フォームとの著しい違いを表す。カスタマイズされたパラメータ入力フォーム９００は、それが生成された対象のフォームに関連するものを示す情報を含む。例えば、フォームのプロンプトは、単に開始および終了の日付を示す代わりに、「最も古い出荷日」および「最も新しい出荷日」を示す。フォームのタイトルも変更されている。カスタマイズされたパラメータ入力フォーム９００は、ドロップダウン表示フレームに異なる値を投入するための追加の論理を含むことができる。一例として、オーサリングの要求に応じて、デフォルト値を、データベースの設定から取得し、または特定の年について計算することができる。フォームのカスタマイズにより、データベースのサーチクエリのためのパラメータを入力するときの、ユーザエクスペリエンスをよりシームレスにすることが可能になる。
【００５３】
図１０は、本開示にかかる、入力されたパラメータに従って結果が修正された図５および図６のレポートを示す。レポート１０００は、カスタマイズされたパラメータフォームに入力された出荷日によって修正されたクエリ結果の出荷日を有する、表示フレームを示す。
【００５４】
上記の詳細、例、およびデータは、本発明の構成の製造および使用について完全な説明を提供する。本発明の多くの実施形態を本発明の精神および範囲から逸脱することなく行うことが可能であるので、本発明は添付の特許請求の範囲に属する。
【図面の簡単な説明】
【００５５】
【図１】コンピュータの例示的なコンピューティングアーキテクチャの図である。
【図２】データベース管理システム（ＤＢＭＳ）内でカスタマイズされたパラメータユーザインターフェースを提供する例示的なシステムの機能ブロック図である。
【図３】データベースクエリに関連して、カスタマイズされたパラメータ入力フォームを提供する処理の操作フロー図である。
【図４】カスタマイズされたパラメータフォームにパラメータを追加する操作フロー図である。
【図５】フォームを生成したクエリに対する追加のパラメータの入力によって修正される前の例示的なレポートを示す図である。
【図６】レポートに対応するクエリ結果をフィルタリングするために行われる選択を有する、図５の例示的なレポートを示す図である。
【図７】例示的なパラメータ生成フォームを示す図である。
【図８】カスタマイズされていない例示的なパラメータ入力フォームを示す図である。
【図９】カスタマイズされた例示的なパラメータ入力フォームを示す図である。
【図１０】入力されたパラメータに従って結果が修正された、図５および図６のレポートを示す図である。
【図１】
2009541899.tif 000003
【図２】
2009541899.tif 000004
【図３】
2009541899.tif 000005
【図４】
2009541899.tif 000006
【図５】
2009541899.tif 000007
【図６】
2009541899.tif 000008
【図７】
2009541899.tif 000009
【図８】
2009541899.tif 000010
【図９】
2009541899.tif 000011
【図１０】
2009541899.tif 000012
【国際調査報告】
2009541899.tif 000013
2009541899.tif 000014