(57)【特許請求の範囲】
【請求項１】
表示装置と、１つまたは複数のデータ記憶装置、及びデータ・ファイルを操作するためのアプリケーション・プログラムを有するコンピュータ・システムを操作する方法であって、
１つまたは複数のデータ・ファイルに対するユーザ指定のアプリケーション・プログラム・データ操作のシーケンスを指定するステップと、
前記データ操作のシーケンスを表す表示画面タスク・アイコンを作るステップと、
前記表示画面タスク・アイコンのユーザ選択に応答して、前記データ・ファイルに対する前記アプリケーション・プログラム・データ操作のシーケンスを実行するステップとを含み、
前記指定するステップは、指定されたフィールド範囲に対して前記データ操作の実行が発生するように、前記データ操作への入力として使用されるデータ・ファイルに含まれる、１つまたは複数のデータ・レコードを表すフィールド範囲を指定することを含むことを特徴とする、
方法。
【請求項２】
前記フィールド範囲が、ユーザによってグラフィカルに指定されることを特徴とする、請求項１に記載の方法。
【請求項３】
前記フィールド範囲が１つまたは複数のデータ・ファイルに含まれるデータ・レコードを含み、前記指定されたフィールド範囲が表示画面フィールド範囲アイコンによって表されることを特徴とする、請求項１に記載の方法。
【請求項４】
タスク・アイコンによって指定される前記データ操作のシーケンスの実行が、選択された前記タスク・アイコンに定義された前記指定されたフィールド範囲に対して発生するように、フィールド範囲アイコンを複数のタスク・アイコンに定義することができることを特徴とする、請求項３に記載の方法。
【請求項５】
さらに、タスク・アイコンの選択によって実行される前記データ操作の出力フォーマットを指定するステップを含む、請求項１に記載の方法。
【請求項６】
前記出力フォーマットを指定するステップが、ユーザによって指定される出力情報を含むか排除するフィルタ・パラメータの指定を含むことを特徴とする、請求項５に記載の方法。
【請求項７】
前記出力フォーマットを指定するステップが、前記出力情報が含まれる出力データ・ファイルを指定することを含むことを特徴とする、請求項５に記載の方法。
【請求項８】
さらに、ユーザ指定のデータ・ファイル情報を含む入力フォーマットを指定するステップを含む、請求項１に記載の方法。
【請求項９】
前記入力フォーマットを指定するステップが、ユーザによって指定される１つまたは複数のデータ記憶装置からのデータ・ファイルを指定することを含むことを特徴とする、請求項８に記載の方法。
【請求項１０】
コンピュータ・システムに格納されたデータ・ファイルのユーザ選択部分を操作するコンピュータ・システムであって、
アプリケーション・プログラムを実行する処理装置と、
前記データ・ファイルが格納されるデータ記憶装置と、
表示装置と、
ユーザが１つまたは複数の前記データ・ファイルに対するアプリケーション・プログラム・データ操作のシーケンスを指定することを可能にし、データ操作のシーケンスを表す表示画面タスク・アイコンを作り、前記表示画面タスク・アイコンのユーザ選択に応答して、前記データ・ファイルに対する前記アプリケーション・プログラム・データ操作のシーケンスを実行するアプリケーション・インターフェースとを含み、
前記アプリケーション・インターフェースは、指定されたフィールド範囲に対して前記データ操作の実行が発生するように、前記データ操作への入力として使用されるデータ・ファイルに含まれる、１つまたは複数のデータ・レコードを表すフィールド範囲をユーザが指定することを可能にすることを特徴とする、
コンピュータ・システム。
【請求項１１】
前記フィールド範囲が、ユーザによってグラフィカルに指定されることを特徴とする、請求項１０に記載のコンピュータ・システム。
【請求項１２】
前記フィールド範囲が１つまたは複数のデータ・ファイルに含まれるデータ・レコードを含み、前記指定されたフィールド範囲が表示画面フィールド範囲アイコンによって表されることを特徴とする、請求項１０に記載のコンピュータ・システム。
【請求項１３】
タスク・アイコンによって指定される前記データ操作のシーケンスの実行が、選択された前記タスク・アイコンに定義された前記指定されたフィールド範囲に対して発生するように、フィールド範囲アイコンを複数のタスク・アイコンに定義することができることを特徴とする、請求項１２に記載のコンピュータ・システム。
【請求項１４】
タスク・アイコンの選択によって実行される前記データ操作の出力フォーマットをユーザが指定することを前記アプリケーション・インターフェースが可能にすることを特徴とする、請求項１０に記載のコンピュータ・システム。
【請求項１５】
ユーザによって指定される前記出力フォーマットが、ユーザによって指定された出力情報を含むか排除するフィルタ・パラメータの指定を含むことを特徴とする、請求項１４に記載のコンピュータ・システム。
【請求項１６】
ユーザによって指定される前記出力フォーマットが、前記出力情報が含まれる出力データ・ファイルを指定することを特徴とする、請求項１４に記載のコンピュータ・システム。
【請求項１７】
ユーザ指定のデータ・ファイル情報を含む入力フォーマットをユーザが指定することを前記アプリケーション・インターフェースが可能にすることを特徴とする、請求項１０に記載のコンピュータ・システム。
【請求項１８】
ユーザによって指定される前記入力フォーマットが、１つまたは複数のデータ記憶装置からのユーザ指定のデータ・ファイルを含むことを特徴とする、請求項１７に記載のコンピュータ・システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ処理システムに関し、具体的には、データ・ファイルを操作するためのグラフィカル・ユーザ・インターフェースに関する。
【０００２】
【従来の技術】
データ処理システムでは、ディジタル・コンピュータを使用して、大量のデータを格納し、管理する。データには、たとえば、数千人の従業員を有する会社の従業員情報、流通業者の在庫に関する製品在庫情報、製造業者の材料供給情報を含めることができる。このデータは、数千ページの印刷情報を表す可能性があり、通常は、磁気テープ、磁気ディスク、光磁気ディスク、集積回路チップなどのデータ記憶装置に格納される。
【０００３】
このデータは、テーブルに配置されることがしばしばであり、テーブルのそれぞれには、情報を含むセルの行と列が含まれる。テーブルの１つまたは複数のセルからの情報を、通常はレコードと称する。１つまたは複数のレコードを、他のレコードと共に順次式または他の形でリンクして格納してファイルを形成することができ、ファイルは、データ記憶装置から検索、操作し、データ記憶装置に格納することができる。都合のよいことに、ファイルは、ファイル名によって参照される。データ・ベース管理システムは、データ処理システムのデータ・ファイルに格納されたデータの操作と管理の際にユーザを支援するために開発されてきた。
【０００４】
データ・ベース管理システムは、一般に、情報を維持できるデータ記憶環境を提供する。データ・ベース管理システム（ＤＢＭＳ）は、通常は、照会言語または他のプログラミング言語をサポートし、ユーザは、これらの言語を用いて、データ操作機能とデータ管理機能を実行できる。ＤＢＭＳのユーザは、データが格納されるデータベースを１つまたは複数用意することができ、照会言語を使って、データベースから選択されたデータを検索し、データベース内のデータを処理し、処理済みのデータを出力レポートに編成することができる。
【０００５】
ＤＢＭＳのユーザは、通常はＤＢＭＳのデータ処理エンジン（ＤＰＥ）によってサポートされる標準データ操作を指定するために内部データ・ファイル構造を知る必要はない。しかし、ＤＢＭＳまたは別のＤＰＥを使用してデータベース・ファイルに対して実行される非標準のデータ操作を指定するためには、ユーザは、データがデータベース内でどのように編成されるかに関するかなりの知識を有する必要がある。あらかじめ定義されたレコード構造を持たない、通常のテキスト・ファイルなどのフラット・ファイルに対してデータ操作を実行する必要がある場合には、これと同一の状況が発生する。このような場合には、データ操作の指定がかなり長くなる可能性がある。
【０００６】
たとえば、データをテーブルに配置する場合、正確な行数と列数を知り、テーブルの各セルに含まれる情報の性質を知ることが必要になる可能性がある。通常はコピー操作、ソート操作及び組合せ操作を含む、実行される操作を指定しなければならない。データ操作の対象となる特定のデータ・レコードの指定を含む操作の範囲は、データ操作が適切なデータ・レコードに対して実行されることを保証するために、注意深く記述しなければならない。最後に、データ操作の対象となるファイルは、ファイル内の特定のデータ・レコードとファイルごとに実行される操作の指定と共に、ファイル名によって指定しなければならないことがしばしばである。
【０００７】
したがって、ＤＰＥユーザは、操作されるデータ・ファイルの構造とサイズに関してよく知る必要があり、データ・ファイルを操作するために特定のＤＰＥが必要とする特定の動作の指定と指定の方法に熟達する必要がある。操作を実行するたびに、特定のデータ・ファイルの所望の部分に対する適当な動作を呼び出すための適当なコマンド列を注意深く組み立てる必要がある。新規ユーザがＤＰＥを熟知し、比較的効率的にシステムの長所を最大限に利用できるようになるには、かなりの時間を要する可能性がある。
【０００８】
【発明が解決しようとする課題】
したがって、本発明の目的は、より単純なユーザ対話を可能にする単純化されたデータ・ベース管理インターフェースを提供することである。このようなインターフェースがあれば、操作にかかわるファイル、操作の実行対象となるファイル内のレコードの範囲及び実行される操作をユーザが簡単に指定できるようになる。
【０００９】
【課題を解決するための手段】
本発明は、データを操作する動作への入力としてデータ・ファイル内の範囲を指定するためのグラフィカルな手段と、実行のためにそのような動作を表すためのグラフィカルな手段を提供する。ユーザは、所望のデータ操作動作が行われるデータ・ファイル内のレコードの範囲をグラフィカルに指定でき、タスク・アイコンと称する、実行のために選択できる単一の画面表示オブジェクトを用いて所望のデータ操作動作をグラフィカルに表すことができる。本発明のグラフィカル表現機能を使用するデータ・ベース管理システムは、操作にかかわるファイルと、操作の実行対象となるファイル内のレコードの範囲をユーザが簡単に指定する方法を提供し、ユーザが操作の実行を簡単に開始する方法を提供する。
【００１０】
本発明の１態様では、表示画面タスク・アイコンによって表されるアプリケーション・プログラム機能のシーケンスをユーザが指定できるようにするグラフィカル・ユーザ・インターフェースがアプリケーション・プログラムに含まれ、この表示画面タスク・アイコンは、その後、ユーザが指定した命令シーケンスを実行させるためにユーザが呼び出すことができる。アプリケーション・プログラムは、データ配置を実行でき、指定される機能は、たとえば、ソート、組合せ及び検査の機能の中から選択できる。
【００１１】
本発明のもう１つの態様では、ユーザは、データ配置機能の実行のために１つまたは複数のファイル内のデータの選択された範囲を表すフィールド範囲を指定できる。表示画面ウィンドウに、データ・ファイルの表現が提供され、ユーザは、ファイル内の所望の範囲を視覚的に強調表示し、指定された機能に関連付けることができる。強調表示された範囲と関連付けられた機能を、単一の表示画面タスク・アイコンによって視覚的に表示またはこれにリンクすることができる。その後、タスク・アイコンを選択でき、これによって、データ配置プログラムによる、指定されたフィールド範囲に対する関連付けられた機能の実行が開始される。
【００１２】
本発明のもう１つの態様では、タスク・アイコン命令に含めるために副次機能を選択できる。実行のために選択されるタスク副次機能は、たとえば、キー機能、和（ｓｕｍ）機能、出力機能または範囲機能の中から選択でき、適当なフィールド範囲と関連付けることができる。キー機能を選択すると、指定されたフィールド範囲が、選択された機能の実行中に操作されるキーとして識別される。和機能を選択すると、フィールド範囲は、選択されたタスクの実行中に出力レコード上での合計が行われる範囲として識別される。出力機能を選択すると、フィールド範囲は、選択されたタスク中に生成される出力ファイルの各レコードに含まれるようになる。範囲機能を選択すると、選択されたタスク中にアプリケーション・プログラムから使用可能な名前付きフィールド範囲のリストにフィールド範囲が追加される。この形で、データ配置アプリケーション・プログラムのユーザは、コンピュータ表示画面上で、特定の関数とオブジェクトを視覚的に関連付けることができる。したがって、本発明は、ユーザがさまざまな所定の画面表示オブジェクトから選択して、繰り返し機能を実行できるようにすることによって、柔軟性と効率を高める。
【００１３】
本発明の他の特徴及び長所は、たとえば本発明の原理を示す、以下の好ましい実施例の説明から明白になる。
【００１４】
【発明の実施の形態】
コンピュータ・システム構成要素
図１は、本発明に従って構成されたコンピュータ・システム１００のブロック図である。このコンピュータ・システムには、ネットワーク１０６を介してシステム記憶装置１０４と通信するユーザ・ステーション１０２が含まれる。システム記憶装置１０４には、磁気ディスク記憶装置などの直接アクセス記憶装置（ＤＡＳＤ）が含まれ、これにデータ・ファイルが格納される。ユーザ・ステーション１０２には、中央処理装置（ＣＰＵ）１０８、表示装置１１０及び主記憶１１２が含まれる。ＣＰＵは、ユーザ・コマンドに応答して動作し、キーボード１１４か、マウス、ジョイスティック、トラック・ボールなどのグラフィカル・インターフェース入力装置１１６を介してユーザ・コマンドを受け取る。ユーザ・ステーション１０２は、ネットワーク１０６を介してネットワーク・サーバもしくは１つまたは複数の他のユーザ・ステーションと通信することができる。
【００１５】
ユーザ・ステーション１０２には、たとえば集積回路チップや磁気媒体ディスク、磁気テープなど、プログラム命令またはデータを記録された機械可読記憶装置を含むコンピュータ・プログラム製品１２０を受け、読み取ることができるＤＡＳＤインターフェース１１８が含まれる。この機械可読記憶装置には、たとえば、光ディスクなどの媒体を含めることができる。また、ユーザ・ステーション１０２は、ネットワーク１０６を介して、他のユーザ・ステーション、サーバまたはメインフレーム・コンピュータと通信する。他のシステムには、たとえば、例のユーザ・ステーションに類似した構成のコンピュータ・システムを含めることができる。この形で、ユーザ・ステーションは、これ以上の説明なしに当業者に理解される周知の方法を使用してネットワーク通信が確立された後に、ネットワーク１０６を介して主記憶１１２にデータを受け取ることができる。
【００１６】
主記憶１１２には、オペレーティング・システム、アプリケーション・プログラム、プログラム・オブジェクト及びユーザ・データを含む、さまざまなデータ構造と情報が含まれる。主記憶は、単一の実体として図示されているが、主記憶に、ランダム・アクセス・メモリ（ＲＡＭ）、ハード・ディスク駆動装置、光ディスク駆動装置、及び、論理的に分割された記憶位置を含む他の記憶装置の組合せを含めることができることを、当業者であれば諒解するであろう。主記憶には、その実行によって本発明が実施されるプログラム命令のシーケンスを含むデータ配置アプリケーション・プログラムが含まれる。
【００１７】
主記憶１１２に含まれるオペレーティング・システムは、好ましくは、たとえばＣ＋＋プログラミング言語で提供されたプログラムなどのオブジェクト指向プログラムを実行するためのオブジェクト指向プログラミング環境をサポートする。主記憶には、Ｃ＋＋のようなオブジェクト指向プログラミング言語のデータ構造であるプログラム・オブジェクトが含まれる。アプリケーション・プログラムは、キーボード１１４またはグラフィカル・インターフェース入力装置１１６を介して、ユーザによって呼び出されるか起動される。アプリケーション・プログラムは、Ｃ＋＋を含むさまざまな言語で記述することができる。
【００１８】
ＣＰＵ１０８には、International Business Machines Corporation（ＩＢＭ）社のModel PS/2（登録商標）パーソナル・コンピュータ、ＩＢＭ社のModel RS/6000ワークステーションなどを含む、多数のプラットフォームのうちのいずれかを含めることができる。好ましい実施例では、グラフィカル・インターフェース入力装置１１６に、マウスが含まれるが、これは、トラック・ボールやジョイスティックなど、同一の機能と制御を提供する他の装置と置換することができる。これらの装置は、当業者には周知であり、これ以上説明する必要はない。したがって、マウスに言及する箇所は、トラック・ボールやジョイスティック・コントローラなどの代替装置が含まれることを諒解されたい。同様に、マウス・ボタン及び他のマウス機能に言及する箇所は、トラック・ボール、ジョイスティック装置などの同等の機構を含むことを諒解されたい。
【００１９】
表示装置１１０には、コンピュータ出力を表示し、システム動作を示す、ビデオ端末などの表示装置が含まれる。表示オブジェクトは、表示装置上に描くことができ、ユーザは、グラフィカル・インターフェース入力装置１１６を使用することによって表示画面上でデータ操作を指定することができる。
【００２０】
データ配置プログラムのインターフェース
好ましい実施例では、ユーザ・ステーション１０２に、ウィンドウ・オペレーティング環境を提供するグラフィカル・ユーザ・インターフェース（ＧＵＩ）と共にオペレーティング・システムが含まれる。ウィンドウ・オペレーティング環境は当業者に周知であり、これ以上説明する必要はない。しかし、本発明は、パーソナルコンピュータ用の、一般に「DOS」システムまたは「DOS」アプリケーションと称するものを含む、非ウィンドウ・オペレーティング環境にも同様に適用できることを理解されたい。ＧＵＩオペレーティング・システムのプログラム命令は、主記憶１１２に常駐する。
【００２１】
図２は、表示装置１１０に表示された、好ましい実施例のＧＵＩオペレーティング・システムによってサポートされるウィンドウ・オペレーティング環境を示す、表示画面イメージを表す図である。当業者であれば、ＧＵＩオペレーティング・システムが、複数のアプリケーション・プログラム及び文書、または複数のウィンドウを、同時に活動状態にすることができる多重レベル・オペレーティング環境を提供することを諒解するであろう。図２に示された表示画面イメージは、好ましい実施例のデータ配置アプリケーション・プログラムのApplication Window（アプリケーション・ウィンドウ）表示画面に対応する。
【００２２】
図２には、ウィンドウ枠１５２とタイトル・バー１５４を有する表示ウィンドウ１５０が含まれる。タイトル・バーには、「Application Window」と記されたタイトル１５６と、ウィンドウ状況アイコン１５８と、ウィンドウ・サイズ変更アイコン１６０が含まれる。タイトル・バーの下には、「Task（タスク）」、「Customize（カスタマイズ）」及び「Help（ヘルプ）」というタイトルの付いたドロップダウン選択メニュー見出しが示されているメニュー・バー１６２がある。当業者であれば、これらの表示ウィンドウ要素が、ＧＵＩオペレーティング・システムによって生成されることを諒解し、特定のメニュー・バー項目（Task、CustomizeまたはHelp）が選択された時にドロップダウン機能リストが表示されることを理解するであろう。
【００２３】
ウィンドウ枠１５２によって、ウィンドウ作業空間１６４が画定される。このデータ配置アプリケーション・プログラムでは、アプリケーション・プログラム機能のシーケンスを表示画面タスク・アイコンによって表すことをユーザが指定できるようになっており、その後にこの表示画面タスク・アイコンをユーザが呼び出して、ユーザが指定した命令シーケンスを実行できる。上で述べたように、好ましい実施例のアプリケーション・プログラムは、オブジェクト指向プログラミング言語で実装され、表示画面タスク・アイコンには、属性と挙動をカプセル化したプログラム・オブジェクトが含まれる。プログラム・オブジェクトには、たとえば、Ｃ＋＋プログラミング言語で実装された「オブジェクト」を含めることができる。したがって、用語「Taskオブジェクト」と「タスク・オブジェクト」と「タスク・アイコン」は、交換可能に使用され、英語表記で「Taskオブジェクト」と表記する時には、実行のために呼び出すことができるユーザ命令のシーケンスに対応する表示オブジェクトを指すことを理解されたい。
【００２４】
ウィンドウ作業空間１６４内には、タスク・オブジェクト空間１６６とコマンド・オブジェクト空間１６８が表示される。タスク・オブジェクト空間１６６には、下でさらに説明する、ユーザが作成した表示画面Taskオブジェクトのすべてが含まれ、コマンド・オブジェクト空間には、アプリケーション・プログラム機能を表すコマンド・オブジェクトが含まれる。図２では、タスク・オブジェクト空間１６６に「SMRT 1」として識別されるTaskオブジェクトが示されている。コマンド・オブジェクト空間１６８には、データ配置プログラムの諸機能を表すオブジェクトが示されている。好ましい実施例では、コマンド・オブジェクトに、タスク作成オブジェクト１７０、タスク削除オブジェクト１７２及びヘルプ・オブジェクト１７４が含まれる。データ配置機能は、コマンド・オブジェクトの選択を介して呼び出すことができ、その代わりに、ドロップダウン・メニュー項目の選択を介して呼び出すこともできるが、これはＧＵＩオペレーティング・システムの実装者によって決定される。たとえば、コマンド・オブジェクト空間でヘルプ・オブジェクト１７４を選択すると、ＧＵＩオペレーティング・システムは、「Help」ドロップダウン・メニュー項目がメニュー・バー１６２で選択された時と同一の命令を実行する。表示画面カーソル１７６は、タスク・オブジェクト空間内に表示されているが、当業者であれば、グラフィカル・インターフェース入力装置１１６（マウス）を用いてこのカーソルを表示画面上で移動できることを諒解するであろう。
【００２５】
TaskオブジェクトとTask Properties（タスク・プロパティ）パネル
上で述べたように、タスク・オブジェクト空間１６６に表示されるTaskオブジェクト（「SMRT 1」など）は、そのオブジェクトに関連する命令のシーケンスを実行するためにユーザが呼び出すことができる。命令のシーケンスは、ユーザによって定義され、これには、データ・ファイルを操作する、データ配置プログラムのコマンドが含まれる。Taskオブジェクトは、たとえば、表示画面カーソルをTaskオブジェクトの上に置いてから、キーボードの「Enter」キーを押すかマウス・ボタンをダブルクリックすることによって呼び出される。Taskオブジェクトは、図２の「Task」ドロップダウン・メニュー内にデータ配置プログラムによってリストされる「New（新規作成）」機能（図示せず）によって作成するか、オブジェクト空間１６８内のタスク作成オブジェクト１７０を選択することによって作成できる。
【００２６】
図３は、データ配置プログラムのTask Properties表示パネルを表す図である。Taskオブジェクトが新規作成された直後、または、「Task」ドロップダウン・メニューの「Open（開く）」機能を使用して既存のTaskオブジェクトを開いた後に、Task Properties表示パネルが表示される。Task Propertiesパネルは、ユーザがTaskオブジェクトを定義するための手段である。図３に示された表示画面には、タイトル・バー１８０、Taskオブジェクトを識別するタイトル１８２、ウィンドウ状況アイコン１８４及びウィンドウ・サイズ変更アイコン１８６が含まれる。タイトル・バーの下には、ウィンドウ作業空間があり、このウィンドウ作業空間は、「Input Files（入力ファイル）」と記されたボックス、「Function（機能）」と記されたボックス、「Output File（出力ファイル）」と記されたボックス及び「Tool box（ツール・ボックス）」と記されたパネルを有し、これらのすべてが、Task Propertiesパネルの下位区分に関連する。Task Propertiesパネルには、通常はアプリケーション・プログラム・ウィンドウ用のさまざまな表示画面ボタンも含まれ、これらのボタンは、グラフィカル入力装置を使って所望の表示画面ボタンの上にカーソルを置くことによって選択できる。
【００２７】
図３のTask Propertiesパネルを用いると、ユーザが、Taskオブジェクトが表す命令のシーケンス、入力に使用される具体的なデータ・ファイル、及び、命令からの出力が置かれるデータ・ファイルを定義できるようになる。図３では、Input Filesパネルに複数のファイルがリストされて、ユーザが複数のデータ・ドライブの複数のファイル名から選択できることが示されている。Output Fileパネルには、名前付きの出力ファイルが示されて、ユーザが、出力が格納されるファイルの名前を指定できることが示されている。ユーザは、Tool boxパネルを使って、定義中のTaskオブジェクトの一部になり、そのTaskオブジェクトによって実行されるシーケンスと共に含まれる、データ配置プログラムの副次機能をさらに定義し、指定することができる。Tool boxパネルは、下でさらに説明する。
【００２８】
データ配置プログラムのユーザは、Task PropertiesパネルとTool box表示画面ボタンから選択を行って、Taskオブジェクトによって表される機能及び副次機能の独自の組を定義する。選択のすべてが行われ、これによってTaskオブジェクトの動作パラメータのすべてが定義された後に、ユーザは、Task Propertiesパネルの下部にある「Execute（実行）」表示画面ボタンを選択することによって、定義されたTaskオブジェクトを実行することができる。新たに定義されたTaskオブジェクトを保存するには、ユーザは、Task Propertiesパネルの「Save（保存）」、「Save as（名前を付けて保存）」または「OK」表示画面ボタンのいずれかを選択する。「Save as」ボタンを選択すると、ユーザは、作成されたTaskオブジェクトに関連する名前を求められ、「Save」ボタンか「OK」ボタンを選択すると、省略時（先在する）Taskオブジェクト名が使用される。その後、Task Propertiesパネルは、表示画面から削除され、保存されたTaskオブジェクトを含むApplication Window表示（図２）に置換される。
【００２９】
新規作成されたTaskオブジェクトは、データ配置プログラムが実行を終了するか中止された後であっても、保存される。したがって、Taskオブジェクトに関連するプログラム命令のシーケンスを再構成するのに必要なデータ構造は、ユーザがTaskオブジェクトを保存する時に、主記憶または他のデータ記憶装置に自動的に格納される。次にデータ配置プログラムを呼び出した時には、保存されたTaskオブジェクトは、Application Windowに表示され、実行のためユーザが選択できる。
【００３０】
Task PropertiesパネルのTool box
図３に示されたTool boxパネルを介して指定できる副次機能は、Input Format（入力フォーマット）、Range Marker（範囲マーカー）、Range Pool（範囲プール）、Keys（キー）、Sum（和）、Filter（フィルタ）、Output Format（出力フォーマット）、Options（オプション）、Preview（プレビュー）及びFile Organization（ファイル編成）を含む表示画面ボタンを介して選択される。Tool boxの表示画面ボタンが選択された時には、対応するサブパネルがTask Properties表示パネルの上に表示される。
【００３１】
Input Formatパネルを用いると、ユーザが、Taskオブジェクト入力ファイルを含むレコードの構造を定義できるようになる。Range Markerパネルを用いると、ユーザが、入力ファイルを表示し、Field Range（フィールド範囲）オブジェクトと称する表示オブジェクトとして表される入力ファイル・レコードまたはレコードの一部をマークできるようになる。Taskオブジェクトの言及と同様の形で、単語「Field Rangeオブジェクト」は、オブジェクト指向プログラミング環境のデータ・オブジェクトに関連するユーザ命令のシーケンスに対応する表示オブジェクトを指すことを理解されたい。Field Rangeオブジェクトは、下でさらに説明する。
【００３２】
Range Poolパネルは、Field Rangeオブジェクトを集め、その結果、後にこれらを使用できるようにするのに使用される。Keysパネルは、ソート機能、組合せ機能または検査機能を実行する際に使用されるField Rangeオブジェクトを集めるのに使用される。Sumパネルは、データ配置プログラムが合計動作を行う対象となる入力を定義するField Rangeオブジェクトを集めるのに使用される。Filterパネルを用いると、ユーザが、出力ファイルに保存されるTaskオブジェクト出力データを決定するためのデータ・フィルタリング判断基準をデータ配置プログラムに対して指定できるようになる。Output Formatパネルは、データ配置プログラムによって作成される出力データ・ファイルの構造を定義するField Rangeオブジェクトを集めるのに使用される。Optionsパネルを用いると、ユーザが、下で述べるさまざまな機能を提供する複数のオプションのうちの１つを指定できるようになる。Previewパネルは、データ配置プログラムによって作成される出力データの構成を表示するのに使用される。最後に、File Organizationパネルは、入力データ・ファイルと出力データ・ファイルのファイル編成属性を指示するのに使用される。
【００３３】
Tool boxのOptionsパネル
ユーザが選択できるTool box副次機能オプションは、図４のOptions表示パネルによって示される。図４に示されたOptions表示パネルには、タイトル・バー２００、ウィンドウ状況アイコン２０２及びウィンドウ・サイズ変更アイコン２０４が含まれる。タイトル・バーの下には、「File Setting（ファイル設定）」と記されたボックス、「Record Settings（レコード設定）」と記されたボックス及び「Process Settings（処理設定）」と記されたボックスを有するウィンドウ作業空間２０６がある。オプション選択肢の中には、File SettingボックスのWork Directory（作業ディレクトリ）オプションなど、キーボードからのユーザ入力を必要とするものがある。Optionsパネルには、アプリケーション・プログラム・ウィンドウに一般的に見られる「OK」、「Cancel（取消）」及び「Help」の表示画面ボタンも含まれる。ユーザがFile Settingオプション・ボックス、Record Settingsオプション・ボックス、Process Settingsオプション・ボックスで選択や指定を行った時に実行されるプログラム処置は、図４の表示からこれ以上の説明なしに当業者に明白になるはずである。追加のまたは異なるファイル処理オプションも、当業者の心に浮かぶであろう。望みに応じてデータ配置プログラムにこれらを設けることができる。
【００３４】
Field Rangeオブジェクト
Field Rangeオブジェクトは、ユーザによって指定されたプログラム命令のシーケンスをカプセル化し、グラフィカル・インターフェース入力装置１１６を使用してグラフィカルに操作（たとえばコピーや削除）できるという点で、Taskオブジェクトに類似している。たとえば、Tool boxパネルの副次機能Range Pool、Keys、Output Format及びSumを呼び出し、同時に表示することができ、その結果、副次機能のそれぞれについて１つまたは複数のField Rangeオブジェクトを指定できる。図５は、それぞれの副次機能パネル内にField Rangeオブジェクトの表現（箱の中の「FR」として図示）を含む複数のTool box副次機能パネルを示す表示画面を表す図である。Field Rangeオブジェクトは、副次機能のそれぞれに関連付けることができ、次で説明するようにわずかに異なる動作を有する。
【００３５】
図６は、図３のTool boxサブパネルから選択されるRange Poolパネルを示す図である。図６のRange Poolパネルには、ユーザが選択できる３つのField Rangeオブジェクトの名前（「Range_1」、「Range_2」及び「Size_3」）が示されている。図７は、図３のTool boxサブパネルから選択されるKeysパネルを示す図である。図８は、図３のTool boxサブパネルから選択される Sumパネルを示す図である。最後に、図９は、図３のTool boxサブパネルから選択されるOutput Formatパネルを示す図である。これらのパネルのそれぞれに、タイトル・バー、ウィンドウ状況アイコン、ウィンドウ・サイズ変更アイコンと、各タイトル・バーの下のウィンドウ作業空間が含まれる。各パネルには、アプリケーション・プログラム・ウィンドウに典型的に見られることが当業者に諒解される「OK」機能、「Cancel」機能及び「Hel p」機能の表示画面ボタンも含まれる。Output Formatパネルには、「Add constant（定数追加）」ボタンが含まれる。さまざまなアクションは、各パネルの「Action （アクション）」ドロップダウン・メニューを使用して指定でき、その詳細は、望みに応じて指定でき、それ以外は、これ以上の説明なしで当業者に明白になるはずである。
【００３６】
Field RangeオブジェクトによるField Rangeの定義
上で述べたように、Field Rangeオブジェクトによって、入力レコードに対する相対的な位置とビット長を含む、Taskオブジェクトのためのデータ入力を構成する先頭レコードと終了レコードが指定される。開始位置と終了位置に関する情報は、図１０に示されたField Range Information（フィールド範囲情報）パネルを使用して指定され、図１１に示されたRange Markerパネルから作ることができる。図１１のRange Markerパネルは、データ・ファイル内のデータのレコード単位のグラフィカル表現を提供する。異なる型のデータは、Range Markerパネルの異なる文字によって示すことができる。たとえば、図１１で「u」によって示される「未定義」データ型範疇を含めて、グラフィカル、整数、実数、ディスプレイその他の型のデータを表現することができる。
【００３７】
具体的に言うと、データ配置プログラムのユーザは、カーソルを所望の開始位置に移動し、マウス・ボタンを押し下げたままにし（または、キーボードの「コントロール」キーを押し下げ）ながら、所望のフィールド範囲位置をカーソルでドラッグすることによって、Range Markerパネルからレコード内のビット・パターンをグラフィカルに指定することができる。ユーザがマウス・ボタン（または「コントロール」キー）を離した時に、図１０に示されたField Range Informationパネルが、表示画面上で図１１に示されたRange Markerパネルの上に作られる。その後、ユーザは、Field Rangeオブジェクト名、開始位置、終了位置、ビット長など、図１０に示された必要な情報を提供する。ユーザが、指定されたフィールド範囲の承認を示す時には、データ配置プログラムが、適当な形状を使用してField Rangeオブジェクトのアイコンを作る。このField Rangeオブジェクトは、下で説明するように、表示パネル上で機能から機能へと移動することができる。
【００３８】
Field Rangeオブジェクトの操作図１２は、図１１に表されるものなどを強調する表示を示すために特定のフィールドを破線で囲まれたRange Markerパネルを表す図である。図１２では、破線の強調された区域に矢印が続き、これが破線の中の「FR」によって示されるField Rangeオブジェクトを指している。Field Rangeオブジェクトは、Range Poolパネル、Keysパネル、Sumパネル及びOutput Formatパネルの表現につながる破線と共に表示されて、Range Markerパネルから上で説明した図３のTool boxサブパネル機能ボックスのどれかにField Rangeオブジェクトをドラッグでき、その機能ボックスにドロップして適当な入力フォーマットを実施できることが示されている。
【００３９】
Field RangeオブジェクトをたとえばKeys機能ボックスにドロップすると、Keys機能ボックスの「Action」ドロップダウン・メニュー（図７参照）によるユーザの選択に応じて、ソート・キー、組合せキーまたは検査キーが定義される。Field RangeオブジェクトをRange Poolボックスにドロップすると、そのField Rangeオブジェクトは、後程ユーザが選択することのできるオブジェクトのプールに置かれる。Field RangeオブジェクトをSum機能ボックスにドロップすると、合計が行われるフィールド範囲が定義される。最後に、Field RangeオブジェクトをOutput Format機能ボックスにドロップすると、Output Formatボックスの「Action」メニューを使用して選択された出力機能の動作範囲が定義される。この形で、Field Rangeオブジェクトによって、それがドロップされたさまざまな機能ボックスへの適当な入力パラメータが自動的に定義される。
【００４０】
Range Markerパネルを使用するフィールド範囲の初期指定からもたらされる自動入力パラメータ定義によって、入力のためにデータ・ファイルの指定された部分を簡単に複製する手段がもたらされる。すなわち、Field RangeオブジェクトをSum機能ボックスからKeys機能ボックスへドラッグすることによって、当初は合計の目的で定義されたField Rangeオブジェクトをコピーし、Keys機能ボックスで使用することができる。Field Rangeオブジェクトは、Tool box機能ボックスのうちのそれぞれにドラッグし、ドロップすることができ、これによって、複数のアプリケーション・プログラム機能のためにデータ・ファイルの入力部分をグラフィカルに定義し、選択するための、便利で効率的な手段がもたらされる。
【００４１】
追加のプログラム機能
Field Rangeオブジェクトは、機能ボックスから機能ボックスへのドラッグ・アンド・ドロップによってコピーできるだけではなく、データ配置アプリケーション・プログラムから削除することもできる。好ましい実施例では、機能ボックスから、削除機能を提供する表示オブジェクトへドラッグするだけで、Field Rangeオブジェクトを削除することができる。
【００４２】
図１３は、Keys機能ボックス内のField Rangeオブジェクトを、「シュレッダ・オブジェクト」と示された表示画面アイコンにつながる破線と共に示す表示画面を表す図である。シュレッダ・オブジェクトには、たとえば、図２に示されたタスク削除オブジェクトであるDeletorオブジェクト１７２を含めることができる。したがって、TaskオブジェクトとField Rangeオブジェクトの両方を、タスク削除オブジェクトへドラッグすることによってプログラム・メモリから削除することができる。
【００４３】
機能ボックスからドラッグすることによってField Rangeオブジェクトを削除する時には、指定されたField Rangeオブジェクトは、その機能だけについて削除される。Field Rangeオブジェクトが、Tool box副次機能パネルからシュレッダ・オブジェクトへドラッグされる場合には、Tool box副次機能パネル内の対応するField Rangeオブジェクトのすべてが、それぞれのボックスに残される。したがって、Keysボックスからシュレッダ・オブジェクトへのField Rangeオブジェクトのドラッグという図１３のアクションは、KeysボックスからのField Rangeオブジェクトの削除をもたらすが、Range Poolボックス、Output Formatボックス及びSumボックスのField Rangeオブジェクトは残される。その代わりに、Field Rangeオブジェクトを強調表示にし、機能ボックスの「Action」ドロップダウン・メニューから削除機能を選択することによって、Field Rangeオブジェクトを機能ボックスから削除することができる。
【００４４】
入力の定義
データ配置プログラムは、多くの異なる型のデータ・ファイルを処理する能力を有する。データ配置プログラムにとって、２進データ・ファイルは、１つまたは複数のデータのフィールドからなり、各フィールドは、異なるデータ型を有する可能性がある。たとえば、２進データ・ファイルは、テキストまたは文字データと、その後の整数型数値データと、その後の倍精度数値データと、その後のテキスト・データを有するデータ構造を有する可能性がある。データ配置プログラムは、単純なテキスト情報を有するデータ・ファイルとは異なる形で２進データ・ファイルを処理する。ユーザは、データ配置プログラムがファイルから取り出す入力を正しく処理するように、２進データ・ファイルの構造を指定する。
【００４５】
図１４は、ユーザがデータ・ファイルの構造を指定するのに用いるInput Record Format（入力レコード・フォーマット）パネルの表示画面を表す図である。Input Record Formatパネルには、標準のテキストのみのデータ・ファイルを指定する表示画面ボタンと、２進データ・ファイル・フォーマットを指定するための表示画面ボタンが含まれる。Input Record Formatパネルの２つの表示画面ボックスは、「Components（構成要素）」と「Record Format（レコードのフォーマット）」と記されており、それぞれ、検索され、データ配置プログラム・タスクへの入力に使用されるデータ・レコードのフィールドの構成要素またはデータ型の詳細を指定するのに使用される。
【００４６】
具体的に言うと、ユーザは、Componentsリストからデータ型構成要素を強調表示にし、強調表示された構成要素をRecord Formatボックスにドラッグし、そこでドロップする。データ型構成要素がComponentsボックスからRecord Formatボックスにドラッグされるたびに、図１５に図示されたものに類似のInput Field Information（入力フィールド情報）パネルが表示される。Input Field Informationパネルによって、定義中のフィールド範囲の名前と長さをユーザが定義するための手段が提供される。したがって、Input Field Informationパネルには、ユーザが所望のパラメータ情報を供給するName（名前）フィールドとLength（長さ）フィールドが含まれる。
【００４７】
たとえば、１０バイトの文字データと、その後の５バイトのパック１０進数データと、その後の１桁の整数を含むデータ構造を有する入力レコードを定義するためには、ユーザは、まずInput Record FormatパネルのComponentsリストからRecord Formatボックスへ、「character（文字）」構成要素をドラッグする。次に、ユーザは、「packed（パック）」構成要素をRecord Formatボックスへドラッグし、その後、「integer（整数）」構成要素をRecord Formatボックスへドラッグする。ドラッグのたびに、強調表示された構成要素をRecord Formatボックスにドロップする際にInput Field Informationがユーザに示され、そのたびに、ユーザはパラメータ情報（名前と長さ）を供給する。
【００４８】
Record Formatに構成要素をドラッグするたびに、入力レコード内の１フィールドが定義される。フィールドは、フィールド範囲のサブセットであるから、各フィールドは、フィールドのRange Poolパネル（図６）に自動的に配置され、これによって、Field Rangeオブジェクトが構成される。Range Poolパネルに配置された後には、上で説明したように、Field Rangeオブジェクトを操作（ドラッグ・アンド・ドロップ）することができる。
【００４９】
構成要素がRecord Formatボックス内で配置される順序によって、対応するField Rangeオブジェクトに構成要素が現れる順序が決定される。しかし、構成要素がRecord Formatボックスにドラッグ・アンド・ドロップされる順序は、重要ではない。したがって、ある構成要素をComponentsリストで強調表示にし、Record Formatリスト内の別の構成要素の前または後ろにドロップすることができる。また、ある構成要素を、Record Formatリスト内のある位置から別の位置へ移すことができ、Record Formatリストからドラッグし、シュレッダ・オブジェクト上に置いて削除することができる。
【００５０】
出力のフィルタリング
データ配置プログラムでは、ユーザが出力フォーマットを指定し、望みに応じて選択的にデータを出力に含めるか排除することができる。たとえば、データ・ファイルの各レコードに、そのレコードの日付情報が含まれる場合がある。ユーザは、特定の日付より前の（または後の）日付を含むレコードの場合に、生成される出力からそのレコードを排除したいと思う場合がある。データ配置プログラムは、作られる出力からレコードを除去する条件を定義するためのパネルを提供し、選択的なフィルタリングを実行する。
【００５１】
図１６は、ユーザが出力の選択的フィルタリングを指定するための手段を提供するFiltering Information（フィルタリング情報）パネルを示す表示画面を表す図である。フィルタリングは、下記のように表すことができるステートメント形式を有する論理条件を作成することによって指定される。
［条件１］［関係］［条件２］
ここで、［条件１］と［条件２］は、ユーザによって作成されたField Rangeオブジェクトからなり、［関係］は、未満（＜）、超（＞）、等しい（＝）など、周知の論理演算子のうちのいずれかである。これらのパラメータは、図１６のFiltering InformationパネルのCondition Information（条件情報）ボックスを使用して指定される。図１６からわかるように、［条件２］も、フィールド範囲ではなく英数定数（アルファベットまたは数字）とすることができる。
【００５２】
ユーザは、各条件を指定する際に、条件に名前を付け、図１６に示された「Save to Pool（プールに保存）」表示画面ボタンを使用して、条件を条件プールに保存する。単純条件を使用して、図１６の「Final selection condition（最終選択条件）」ボックスによって示されるように、出力フィルタリング用の選択条件を作成することができる。単純条件は、条件を強調表示にし、「Remove（除去）」表示画面ボタンを選択するか、強調表示された条件をシュレッダ・オブジェクトにドラッグすることによって、プールから除去することができる。
【００５３】
最終選択条件を作成するために、ユーザは、条件プールからの１つまたは複数の単純条件を、Filtering Informationパネルの右側に演算子アイコンとして表示される４つの演算子のうちの１つまたは複数の論理演算子と共に、Final selection conditionボックスにドラッグすることができる。
【００５４】
第１のField Rangeオブジェクトと第２のField Rangeの間の比較を指定すると、データ配置プログラムは、処理される各レコード内の各Field Rangeオブジェクトによって指定されるフィールド範囲を比較して、生成される出力にそのレコード全体を含めるか排除するかを決定する。Field Rangeオブジェクトと英数定数の間の比較を指定すると、データ配置プログラムは、各レコード内のフィールド範囲を指定された定数と比較して、含めるか排除するかを決定する。レコードは、フィルタ判断基準（選択条件）が満たされない場合には生成される出力に含まれ、条件が満たされる場合には排除される。
【００５５】
出力のプレビュー
ユーザは、入力データの一部を前処理することによって、指定され、その後、Taskオブジェクトにカプセル化されたオプションとパラメータのすべての結果を調べることができる。データ配置プログラムは、Output Previewパネルを提供して、前処理とプレビューの手段を提供する。
【００５６】
図１７は、Output Previewパネルの表示画面を表す図であり、このパネルには、プレビューする入力レコードを指示するためのボックス、プレビュー判断基準を入力するためのボックス、及び、プレビュー・データを表示するためのウィンドウが含まれる。ユーザは、「Input Records to Preview（プレビューする入力レコード）」ボックスで、前処理する入力レコードを指定する。ユーザは、任意選択として、適当な表示画面ボタンを介して、ソート、フィルタリング、再フォーマットなどの特定の出力機能を使用可能または使用不能にすることができる。これによって、前処理されたデータを異なる形で表示できる。
【００５７】
ユーザが「OK」表示画面ボタンを押した時に、データ配置プログラムは、Input Records to Previewボックスで指定された入力レコードを取り出し、対応するTaskオブジェクトについて前に定義されているすべての機能をそのデータに適用する。その結果の出力は、Preview Window（プレビュー・ウィンドウ）に表示される。この形で、ユーザは、入力データのすべてを処理する必要なしに、パラメータとオプションが意図に適するかどうかを検証できる。これは非常に有利である。というのは、入力データに数メガバイトのデータが含まれる可能性があるからである。したがって、Output Previewパネルを用いると、指定されたパラメータの分析とオプションの選択が可能になり、Taskオブジェクト操作に対して行う必要がある変更を早期に発見できるので、ユーザにとって時間の節約になる。
【００５８】
入力ファイルの選択
図３に示されたTask Propertiesパネルには、入力ファイルのパス名を含むInput Filesリストが含まれる。好ましい実施例では、データ配置プログラムに、ファイル選択パネルが含まれ、これによって、ユーザが、間単に、Input Filesリストに含めるために使用可能な格納されたすべてのファイルから入力ファイルを探し、指定できるようになる。
【００５９】
図１８は、ユーザが入力ファイルをグラフィカルに選択できるようにするSelect File（ファイル選択）パネルの表示画面を表す図である。すなわち、ユーザは、ファイル・パス名データを入力することなく、入力ファイルを表示し、選択することができる。これは、図１８に示された、ドロップダウン・メニュー機能とディレクトリ操作を使用することによって達成される。記憶装置のドライブは、「Drive（ドライブ）」ボックスを使用して選択でき、ディレクトリは、「Directory（ディレクトリ）」ボックスを使用して選択でき、ファイルの種類は、「Type of file（ファイルの種類）」ボックスを使用して選択でき、選択されたディレクトリに格納されたファイルは、「File（ファイル）」ボックスに表示される。特定のファイルは、そのファイルを強調表示にすることによって選択され、このファイルは、「Open」ボックスを使用して開くことができる。選択されたファイルは、図１８の「OK」表示画面ボタンを選択することによって、図３の「Input Files」ボックスに追加することができる。
【００６０】
ファイル編成の指定
図３に示されたTask PropertiesパネルのTool boxサブパネルには、ファイル編成機能が含まれ、この機能を用いると、ユーザは、定義済みの入力ファイルと出力ファイルのそれぞれのファイル編成属性を指定することができる。好ましい実施例では、データ配置プログラムに、ユーザがファイル編成を指定するための手段を提供するファイル編成パネルが含まれる。
【００６１】
図１９は、File Organization Specification（ファイル編成指定）パネルの画面表示を表す図であり、このパネルには、指定された編成が入力ファイル用と出力ファイル用のどちらであるかをユーザが指示するためのボックスが含まれる。このパネルには、ファイル名リスト用のボックスと、ネイティブ・ファイル（ユーザのシステムから）またはVSAMファイル（ネットワークから）を指示するためのボックスも含まれる。
【００６２】
アプリケーション・プログラムの設計
上で述べたように、本発明の好ましい実施例は、オブジェクト指向プログラミング環境で実施される。上で述べた機能、特徴及び動作を実施する適当なデータ構造及び編成の通信には、多数の異なる方法がある。というのは、オブジェクト指向プログラミング実装を記述するための異なる表記システムが存在するからである。満足な実装をもたらすアプリケーション・プログラムを記述する方法の１つが、ランボー（J. Rumbough）によって開発された表記システムを使用することである（たとえば、ランボー他著「Object-Oriented Modeling and Design」、Prentice-Hall、１９９０年を参照されたい）。
【００６３】
図２０ないし図２５は、上で述べた特徴を実施する、例のアプリケーション・プログラム構造のオブジェクト・モデル表現である。これらの図には、それぞれのオブジェクト・クラスのクラス名だけが示されている。当業者であれば、上の説明と以下のプログラム流れ図に鑑みて、これ以上の説明なしにクラスの属性及び動作の詳細を選択できるであろう。
【００６４】
図２０ないし図２５に示された、好ましい実施例の特徴を実施するオブジェクト指向アプリケーション・プログラムは、３つの主要な部分からなるものとしてよりよく理解できる。最初の２つの部分には、図２０及び図２１に示された、視覚化レベル・モデルと相互作用レベル・モデルの組合せが含まれ、これによって、アプリケーション・プログラムのグラフィカル・ユーザ・インターフェース（ＧＵＩ）設計の枠組みが表される。第３の部分は、図２２ないし図２５に示されたアプリケーション・レベル・モデルであり、これは、「AppObjectInfo（アプリケーション・オブジェクト情報）」と称する汎用クラスから派生した、アプリケーション固有のデータ・オブジェクトの組からなる。これらのオブジェクトのそれぞれが、それ自体の固有データ（属性）を有し、基本クラスの仮想関数の一部を再定義（オーバーロード）する。
【００６５】
Initializer（初期設定子）
図２０は、好ましい実施例に、ＧＵＩFiles（ＧＵＩファイル）、ＧＵＩDirectories（ＧＵＩディレクトリ）及びＧＵＩLanguages（ＧＵＩ言語）と称する構成要素クラスを有する集約クラスInitializerが含まれることを示す図である（ランボー及び他のオブジェクト指向表記システムの慣習により、複数単語のクラス名が１単語として記述されることに留意されたい）。Initializerクラスは、ＧＵＩ環境の初期設定と、タスク・ファイルからのアプリケーション・データ・オブジェクトのロード及びタスク・ファイルへのアプリケーション・データ・オブジェクトの保存の責任を負う。Initializerクラスは、ＧＵＩの他のオブジェクトと直接の関係を有しない。
【００６６】
ＧＵＩFilesクラスには、アプリケーション・プログラム（ＧＵＩ）動作を記録し、Taskオブジェクトの動作によって作られた出力データを保存するためのオブジェクト（Ｃ＋＋プログラミング言語では、これらを標準Ｃ＋＋ストリーム・クラスのインスタンスと称する場合もある）が含まれる。ＧＵＩDirectoriesクラスには、ＧＵＩによって使用されるディレクトリ名のNameクラス・オブジェクト・インスタンスが含まれる。ＧＵＩLanguagesクラスには、ＧＵＩによってサポートされる言語を記憶するためのNameクラス・オブジェクト・インスタンスが含まれる。これらのクラスのオブジェクトのそれぞれには、Optionsパネル（図４参照）から動作をロードするためのLoadIniFile（初期設定ファイル・ロード）メソッドと、Optionsパネルからユーザが選択したオプションを保存するためのSaveIniFile（初期設定ファイル保存）メソッドが含まれる。
【００６７】
Registrar（レジストラ）
図２１は、好ましい実施例のRegistrar集約クラスと、DefaultTask（省略時タスク）、FileDialog（ファイル・ダイアログ）、PanelRegistrar（パネル・レジストラ）及びItemRegistrar（項目レジストラ）と称する構成要素クラスを示す図である。このＧＵＩには、Registrarクラスのオブジェクトのインスタンス化が１つある。Registrarクラスのオブジェクトは、全パネル情報オブジェクトのPanelRegistrarレジスタを作成し、維持する責任と、省略時Taskオブジェクトを作成し、初期設定する責任と、アプリケーション・データ・オブジェクトを作成し、これらを適当なデータ・キャリアに送る責任と、補助オブジェクトのレジスタを作成し、維持する責任と、パネル情報オブジェクト及び補助オブジェクトに関連するデータ管理タスクを実行する責任を負う。
【００６８】
図２１からわかるように、RegistrarのクラスFileDialogは、標準ＧＵＩ  Fileダイアログ動作をサポートする。DefaultTaskクラスは、下でさらに説明するSortTask（ソート・タスク）クラスの唯一のインスタンスである。PanelRegistrarクラスには、ウィンドウ表示を管理するためのPanelInfo（パネル情報）オブジェクト及びWindowInfo（ウィンドウ情報）オブジェクトのリストが含まれる。ItemRegistrarクラスには、下でさらに説明する項目情報オブジェクトのリストが含まれる。これらのクラスのオブジェクトには、下でさらに説明するように、アプリケーション・オブジェクトを作成し、そのそれぞれのポインタを対応するControlInfo（制御情報）オブジェクト及びDefaultTaskオブジェクトに渡すためのGiveAppObject（アプリケーション・オブジェクトを与える）メソッド、DefaultTaskオブジェクトのデータを初期設定するためのInitDefaultTask（省略時タスク初期設定）メソッド及び現在のDefaultTaskオブジェクトのデータを保存するためのSaveDefaultTask（省略時タスク保存）メソッドが含まれる。
【００６９】
PanelRegistrar  −  PanelInfoクラス
PanelRegistrarクラスは、PanelInfoと称する構成要素クラスの集約クラスであり、PanelInfoクラスは、WindowInfoクラスのスーパークラスであり、ControlInfoクラス、GroupInfo（グループ情報）クラス及びMenuInfo（メニュー情報）クラスの集約クラスである。PanelInfoクラスは、ＧＵＩ表示パネルの構造と挙動を定義し、ユーザ対話のすべて（ユーザのキーボード動作と表示装置動作の解釈とこれらに対する応答を含む）をサポートし、ControlInfoの適当な制御情報オブジェクトを作成し、制御情報及び表示メニューなどの他のＧＵＩ制御オブジェクトに関するデータ管理タスクを実行する責任を負う。ビジュアル表示を提供する表示パネルのそれぞれには、通常のウィンドウの特徴と応答が含まれ、したがって、これらの表示パネルは、PanelInfoクラス内のオブジェクトのインスタンスまたはインスタンス化として、対応する内部オブジェクト表現を有する。当業者であれば、オブジェクトのクラスを使用して表示パネル要素を定義して、上で述べたパネルを実現する方法を理解するであろう。たとえば、PanelInfoオブジェクトには、パネルのコントロール及び表示画面ボタンを識別する属性及びメソッド、ウィンドウ・プロシージャを指すポインタ、コントロール・グループ、表示画面メニュー・バー、保存プロシージャ、取消プロシージャ、チュートリアル・プロシージャ、検査プロシージャ、メニュー動作プロシージャ、及び、メッセージ処理プロシージャが含まれる。
【００７０】
好ましい実施例では、データ配置アプリケーション・プログラムのPanelInfoクラスに、ウィンドウ・オペレーティング・システムのレイアウト用の通例のファイル型であるレイアウト・パネル定義ファイル（.PDFファイル）で定義されたパネル識別子であるPanelIDと、パネルへの参照の識別子であるTitleIDと、.HLPファイル内のパネル・ヘルプ・ファイル用の参照識別子であるHelpIDと、パネル・チュートリアルへの参照の識別子であるTutorIDと、対象のパネルの「親」パネルのパネル識別子であるParentIDと、対象のパネルの任意指定のサブクラス・ウィンドウ・プロシージャを指すポインタであるSubclassProcedureと、省略時ウィンドウ・プロシージャを指すポインタであるDefaultProcedureと、レイアウト.PDFファイルで定義された内部パネル・コントロール用のオブジェクト表現のリストであるControlListと、コントロール・グループのオブジェクト表現のリストであるGroupListと、標準ウィンドウ・オプションを有するパネル・メニュー・バーの表現であるMenuBarとを含むデータが含まれる。
【００７１】
好ましい実施例のPanelInfoクラスには、メソッドとも称するプロシージャも含まれる。通常のオブジェクト指向プログラミング表記では、プロシージャ名に開きカッコと閉じカッコを続けたものがリストされる。データ配置プログラムのプロシージャには、.PDFライブラリからパネルをロードする、表示パネル用の準備プロシージャであるGetPanel()と、ビジュアル表示オブジェクトを初期設定する、パネルの初期設定プロシージャであるInitPanel()と、パネルの保存プロシージャであるSavePanel()と、表示オブジェクトの変更を取り消すための、パネルの取消プロシージャであるCancelPanel()と、パネルのチュートリアルを開くプロシージャであるGetTutorPanel()と、アプリケーション・オブジェクト（AppObjectInfo）の検査プロシージャであるAppObjectAccept()と、パネル・コントロールの通常のメニュー・アクション・プロシージャであるExecuteMenuAction()と、ユーザ入力に応答するためのさまざまなメッセージ・ハンドラとが含まれる。
【００７２】
PanelInfoクラスには、プッシュボタン、リスト項目、メニュー項目及びコンテナ・レコードの機能として.PDFファイルで指定された識別子を有する次ウィンドウ・パネルを開き、パネル終了の責任を負う、ApplicationPanelProcedure()と称する省略時クラス・ウィンドウ・プロシージャを含む、他のプロシージャも含まれる。各パネルは、アプリケーション・プログラムによって供給されるプロシージャに応じて、そのパネルの特殊な挙動をサポートするサブクラス・プロシージャを有することもできる。アプリケーション・パネルは、その「親」パネルが、指定されたパネル識別子を有する次パネルを開くメッセージを受け取る時に、ユーザ画面に表示される。
【００７３】
ControlInfoクラス
PanelInfoクラスのControlInfoオブジェクトは、表示入力フィールド、表示コンテナ、リストなどのＧＵＩ情報要素を定義する責任を負い、ユーザ対話をサポートし、適当なアプリケーション・データ・オブジェクトを維持する責任を負う。アプリケーション・データを含む内部パネル・コントロールのそれぞれは、ControlInfoクラスのオブジェクトの対応するオブジェクト・インスタンス（インスタンス化とも称する）を有する。当業者であれば、オブジェクトのクラスを使用して上で述べたパネルを提供することによって、表示パネル要素を定義する方法を理解するであろう。たとえば、ControlInfoオブジェクトには、属性とメソッドが含まれ、これによって、アプリケーション・コントロールの情報、アプリケーション・オブジェクト、アプリケーション・オブジェクトを指すポインタ及びコントロール・プロシージャを指すポインタが識別される。
【００７４】
好ましい実施例では、データ配置プログラムに、レイアウト・パネル定義ファイル（.PDFファイル）で定義されたコントロール識別子であるControlIDと、コンテナ、リストなどのコントロール型識別子であるControlTypeと、コントロール情報クラスに対応するアプリケーション・オブジェクト・クラスであるAppObjectIDと、対象のコントロール・オブジェクトの新規オブジェクトの作成に使用されるコンテナ及びリストの参照識別子であるDefaultItemIDと、対応するアプリケーション・オブジェクトを指すポインタであるAppObjectと、コントロール・オブジェクトのサブクラス・プロシージャを指すポインタであるSubclassProcedureと、省略時ウィンドウ・プロシージャを指すポインタであるDefaultProcedureとを含むデータが含まれる。
【００７５】
GroupInfoクラス
PanelInfoクラスのGroupInfoオブジェクトは、当業者に既知の、表示パネル・コントロール・グループに対応するコントロール・グループを表す。したがって、このようなGroupInfoオブジェクトは、コントロール・グループ内の実体の数と、アプリケーション・ウィンドウ用のコントロール識別子を識別する。
【００７６】
GroupInfoクラスのオブジェクトには、コントロール・グループの参照識別子であるGroupIDと、コントロール・グループ内の実体の数であるEntityCountと、それぞれがControlIDデータ、コントロールの型、コントロールの状態などのコントロール情報を含む実体の組であるEntitySetとを含むデータが含まれる。
【００７７】
MenuInfoクラス
PanelInfoクラスのMenuInfoオブジェクトは、アプリケーション表示パネルのメニュー・バーを表す。たとえば、いくつかの標準ウィンドウ・メニューのオプションには、New、Update（更新）、Delete（削除）、Help及びSaveが含まれる。アプリケーション・アクションに関連するメニュー項目のそれぞれは、対応するMenuInfoオブジェクトに関連する。MenuInfoオブジェクトには、アプリケーション・プログラムによって定義される、必要なメニュー・アクションを実行するメソッドが含まれる。たとえば、コンテナやドロップダウン・リストなどのレコードを含むパネルのコントロール・ボタンのそれぞれについて、サポートされる標準表示画面アクションには、New、Update、Delete及びHelpの４つが含まれる。 この形で、MenuInfoオブジェクトは、各表示パネルのメニュー・アクションの自動実行を提供する。
【００７８】
したがって、アプリケーションの各ＧＵＩ表示パネルには、ウィンドウ・パネル定義ファイル（.PDFファイル）によって指定される、ユーザによる表示画面ボタンとプログラム・コマンドの選択に応答して表示パネルを開くウィンドウ・プロシージャを実行するために、GetPanel()メソッドとInitPanel()メソッドが含まれる。これらのメソッドは、表示パネルのプッシュボタン、リスト項目、メニュー項目、コンテナ・レコード及び、パネル終了用の表示画面破壊メソッドを制御する。当業者であれば、特定のアプリケーション実施態様に従って、他のパネル関連メソッドを思い浮かべるであろう。
【００７９】
WindowInfoクラス
PanelInfoをスーパークラスとするWindowInfoクラスには、ユーザ表示画面アクションを示すメッセージ処理用のメソッドが含まれる。すなわち、標準ウィンドウ・メッセージ処理によってサポートされない可能性がある挙動を有するＧＵＩ表示パネルのそれぞれについて、WindowInfoクラスに、そのパネルが示さなければならない挙動をサポートまたは提供するオブジェクトが含まれる。このようなメソッドには、ウィンドウ・ドラッグ、ウィンドウ・ドロップ、ボタン解放、ボタン押下げ、マウス移動、スクロール、文字入力、表示画面描画などの挙動が含まれる。
【００８０】
ItemRegistrar  −  ItemInfo（項目情報）クラス
ItemRegistrarクラスのItemInfoオブジェクトには、アプリケーション表示項目に対応する属性及びメソッドが含まれる。表示コンテナやリストなどのＧＵＩフォルダのそれぞれに、１つまたは複数の定義済みの型のレコードが含まれる。各レコード型は、ItemInfoクラスのオブジェクトによって表されるオブジェクト定義に対応する。ItemInfoオブジェクトによって参照される情報には、レコード型参照識別子、関連レコード型のアプリケーション・オブジェクト・クラス識別子、データ・レコード型のパネル識別子、「ヘルプ」メッセージ型識別子及びレコード型省略時名が含まれる。当業者であれば、他のアプリケーション・オブジェクトと共に項目情報を使用して、必要な表示挙動をもたらす方法を理解するであろう。
【００８１】
アプリケーション・レベルのクラス図
上で述べたように、図２２、図２３、図２４及び図２５は、本発明の特徴を提供するデータ配置アプリケーション・プログラムの好ましい実施例のアプリケーション・レベル・オブジェクト・クラスを示す図である。図２２ないし図２５に示されたクラスは、本発明の特徴を提供できるオブジェクト・クラスの１つの配置構成を表すに過ぎないことを理解されたい。当業者であれば、オブジェクト・クラスの他の異なる選択も、本発明の特徴を提供できることを諒解し、上の説明に鑑みて、データ配置プログラムの特定の実施態様に従ってそのような選択を行う方法を理解するであろう。
【００８２】
AppObjectInfo  クラス
図２２は、AppObjectInfo集約クラスとその構成要素クラスを示す図であり、構成要素クラスには、ToggleGroup（グループのトグル）、FlagOption（フラグ・オプション）、CharOption（文字オプション）、NumericOption（数値オプション）、RangeObject（範囲オブジェクト）、TextReference（テキスト参照）、ConstField（定数フィールド）、Field（フィールド）、GeneralOptions（一般オプション）、FileName（ファイル名）、KeyRange（キー範囲）、TaskIcon（タスク・アイコン）、InputFormat（入力フォーマット）、FilterCondition（フィルタ条件）、AppObjectFolder（アプリケーション・オブジェクト・フォルダ）及びSortTask（ソート・タスク）が含まれる。AppObjectInfoクラスは、アプリケーション固有のデータ・オブジェクトを定義し、アプリケーション固有の適当な共通オプションを作成するのに必要なユーザ・データを維持し、データ・フロー制御機能と検査機能を実行する責任を負う。
【００８３】
図２２に示されたオブジェクト・クラスは、上で述べたデータ配置プログラムの特徴に対応することが明白であり、オブジェクトの属性とメソッドは、特徴の説明から明白である。特定の実施態様のオブジェクトの特定の属性及びメソッドは、当業者に既知のとおり、その実施態様のシステム動作環境及びプログラミング環境と、ユーザが所望する正確な特徴とに依存する。
【００８４】
好ましい実施例では、AppObjectInfoクラスに、アプリケーション・オブジェクト型を識別するObjectID、アプリケーション・オブジェクト・オーナー・パネル識別子のPanelID、オブジェクト・オーナー・コントロール識別子のControlID、パネル・コンテナ及びリストのSubControlIDなどのデータを含むデータ構造であるObjectDefinitionと、アプリケーション・オブジェクト・インスタンス化の名前であるObjectNameと、アプリケーション・オブジェクト状況を定義する論理フラグの組（オブジェクト・フォルダ用）であるObjectMarksと、各アプリケーション・オブジェクトに関連する一般仕様データであるCommandOptionというデータ属性が含まれる。
【００８５】
AppObjectInfoクラスには、表示コンテナ内のオブジェクト表現を作成できるようにするGetColumnsCount()及びGetColumnsData()と、別のアプリケーション・オブジェクトからデータをコピーするAssignAppData()と、内部アプリケーション・サブオブジェクトを対応する親オブジェクトとリンクするLinkSubObjects()と、特定のオブジェクト属性を保存するBuildObjectList()と、コマンド・オプションを作成するBuildCommandOption()というメソッドも含まれる。
【００８６】
ToggleGroupクラス、ConstFieldクラス、FilterConditionクラス及びFieldクラス
図２３は、サブクラスAction、FileOrganization（ファイル編成）、RecordLength（レコード長）、InputRecordType（入力レコード型）、KeySortOrder（キー・ソート順）及びConditionType（条件型）のスーパークラスであるToggleGroupクラスを示す図である。図２３には、図２２に示されたNumericOptionクラスとCharOptionクラスも、図２２のConstFieldクラスの構成要素クラスとして関連することも示されている。図２３には、CharOptionクラスとConditionTypeクラスが、集約クラスFilterConditionの構成要素であることと、クラスNumericOptionが、Fieldクラスの構成要素クラスであることも示されている。
【００８７】
上の図２２と同様に、図２３に示されたオブジェクト・クラスは、上で説明したデータ配置プログラムの特徴に対応することが明白であり、オブジェクトの属性及びメソッドは、特徴の説明から明白である。やはり、特定の実施態様のオブジェクトの特定の属性及びメソッドは、システム動作環境及びプログラミング環境と、ユーザが所望する正確な特徴とに依存する。
【００８８】
KeyRangeクラス、InputField（入力フィールド）クラス、InputFormatクラス及びGeneralOptionsクラス
図２４から、KeyRangeクラスが、KeySortOrderオブジェクトとFlagOptionオブジェクトを含む集約クラスであることがわかる。図２４から、InputFieldクラスが、FlagOptionオブジェクトを含む集約クラスであることがわかる。図２４から、InputFormatクラスが、InputRecordType、CharOption、NumericOption及びAppObjectFolderという構成要素クラスの集約クラスであることがわかる。最後に、図２４から、GeneralOptionsクラスが、CharOptionクラス、FlagOptionクラス、NumericOptionクラス及びAppObjectFolderクラスからのオブジェクトを有する集約クラスであることがわかる。
【００８９】
前と同様に、図示されたオブジェクト・クラスは、上で説明したデータ配置プログラムの特徴に対応し、オブジェクトの属性及びメソッドは、プログラム特徴の説明から明白である。やはり、オブジェクトの特定の属性及びメソッドは、当業者に既知のとおり、特定の実施態様のシステム動作環境及びプログラミング環境と、ユーザが所望する正確な特徴とに依存する。
【００９０】
FileNameクラスとSortTaskクラス
図２５から、FileNameクラスが、DataFile（データ・ファイル）クラス、BrowserFile（ブラウザ・ファイル）クラス及びPreviewFile（プレビュー・ファイル）クラスのスーパークラスであることがわかる。また、図２５から、DataFileクラスがFileOrganizationの集約クラスであることと、BrowserFileクラスがRangeObjectの集合クラスであることと、PreviewFileがNumericOptionオブジェクトとFlagOptionオブジェクトの両方の集約クラスであることがわかる。最後に、図２５から、SortTaskが、構成要素TaskIcon、Action、BrowserFile、AppObjectFolder、PreviewFile、GeneralOptions及びInputFormatからの集約クラスであることがわかる。
【００９１】
前と同様に、図示されたオブジェクト・クラスは、上で説明したデータ配置プログラムの特徴に対応し、オブジェクトの属性及びメソッドは、プログラム特徴の説明から明白である。やはり、オブジェクトの特定の属性及びメソッドは、当業者に既知のとおり、特定の実施態様のシステム動作環境及びプログラミング環境と、ユーザが所望する正確な特徴とに依存する。
【００９２】
手続き動作
上で述べたデータ配置アプリケーション・プログラムの動作は、図２６、図２７、図２８及び図２９の手続き流れ図を参照すれば簡単に明白になる。
【００９３】
Taskオブジェクトの作成
図２６は、上で説明したTaskオブジェクトの作成を実行する際に、図１に示されたコンピュータ・システムによって実行される処理ステップの通常のシーケンスを表す流れ図である。Taskオブジェクトを作成する前に、ボックス２６０１の開始ボックスによって表されるように、好ましい実施例のオブジェクト指向プログラミング環境を提供しなければならない。このような初期設定処理には、アプリケーション・プログラムの大域オプション初期設定（Optionsファイルからの読取）と、Initializerオブジェクトへのオプションの格納と、必要なPanelInfoオブジェクト、WindowInfoオブジェクト及びItemInfoオブジェクトの作成と、こうして作成されたオブジェクトの対応するRegistrarオブジェクトへの登録が含まれる。初期設定処理には、PanelInfoオブジェクトのインスタンスを作成するために表示パネルの登録を可能にするパネル・リスト・ファイルの作成と、ItemInfoオブジェクトのインスタンスを作成するためにパネル項目の登録を可能にする項目リスト・ファイルの作成も含まれる。最後に、初期設定では、定義済みアプリケーション・オブジェクト（AppObjectInfoオブジェクト）のすべてを作成し、対応するControlInfoオブジェクトに束縛またはリンクすることが必要である。示されたオブジェクト・クラスが、上で説明したデータ配置プログラムの特徴に対応することは明白であり、オブジェクトの属性及びメソッドは、プログラム特徴の説明から明白である。やはり、オブジェクトの特定の属性及びメソッドは、特定の実施態様のシステム動作環境及びプログラミング環境と、ユーザが所望する正確な特徴とに依存する。
【００９４】
開始ボックス２６０１でのプログラム・オブジェクト初期設定が完了した後の、Taskオブジェクト作成処理の最初のステップは、ボックス２６０２によって表される。このステップでは、アプリケーション・プログラムが、コンピュータ・システムにTask Propertiesパネル（図３）を表示させる。Task Propertiesパネルは、上の図２及び図３の説明で述べたように、ユーザ・コマンドに応答して表示される。ボックス２６０３によって表されるTaskオブジェクト作成の次のステップは、新しいTaskオブジェクト・テンプレートの作成またはシステム記憶域からの既存のTaskオブジェクトのロードである。このステップによって、ユーザのタスク指定が含まれるオブジェクトがもたらされる。ボックス２６０３の処理では、既存のTaskオブジェクトを使用する（または修正する）か、テンプレートを使用して新規のTaskオブジェクトを作成するかのいずれかであることが示される。
【００９５】
ボックス２６０４によって示される次の処理ステップは、ユーザから指定されたタスク・プロパティを受け取ることである。次に、ユーザは、Tool boxパネルから選択される任意選択のタスク副次機能を指定する。この処理は、ボックス２６０６によって表される。最後に、ボックス２６０８によって表されるように、タスク・プロパティと副次機能を、コンピュータ・システム・メモリに格納し、名前付きのTaskオブジェクトに関連付ける。
【００９６】
Taskオブジェクトの実行
図２７は、上で説明したTaskオブジェクトを実行する際に、図１に示されたコンピュータ・システムによって実行される処理ステップの通常のシーケンスを表す流れ図である。Taskオブジェクト実行処理の最初のステップは、ボックス２７０２によって示されるように、ユーザが、表示画面に示されたTaskオブジェクトを選択することである。上で説明したように、この選択は、マウスを用いてTaskオブジェクトをダブルクリックすることによって行うことができる。これに応答して、ボックス２７０４によって示されるように、そのTaskオブジェクトに関連する命令のシーケンスが、コンピュータ・システム・メモリから取り出される。最後に、ボックス２７０６によって示されるように、コンピュータ・システムによって命令のシーケンスが実行される。
【００９７】
Field Rangeオブジェクトの作成
図２８は、上で説明したField Rangeオブジェクトの作成を実行する際に、図１に示されたコンピュータ・システムによって実行される処理ステップの通常のシーケンスを表す流れ図である。Field Rangeオブジェクト作成処理の最初のステップは、ボックス２８０２によって表されるように、Field Range Marker Informationパネルを表示することである。ボックス２８０４は、次のステップが、Taskオブジェクトへの入力用のファイル内のフィールドをユーザが指定することであることを示す。最後に、最後のステップは、ボックス２８０６によって表されるように、ユーザから受け取ったフィールド範囲情報を格納し、Field Rangeオブジェクトによって表示画面に表すことである。
【００９８】
Field Rangeオブジェクトの実行
図２９は、上で説明したField Rangeオブジェクトの実行を実行する際に、図１に示されたコンピュータ・システムによって実行される処理ステップの通常のシーケンスを表す流れ図である。Field Rangeオブジェクト実行処理の最初のステップは、ボックス２９０２によって表されるように、表示画面にField Rangeオブジェクトを示すことである。次のステップは、ボックス２９０４によって表されるように、ユーザがField Rangeオブジェクトを選択することである。上で説明したように、ユーザは、複数の異なる機能ボックスへField Rangeオブジェクトをドラッグし、これによって、そのフィールド範囲を用いて実行されるデータ操作機能を選択することができる。この処理は、ボックス２９０６によって表される。最後に、最後のステップは、ボックス２９０８によって表されるように、コンピュータ・システムが、選択されたField Rangeオブジェクトのフィールド範囲をデータ操作機能と関連付けることである。
【００９９】
本発明の長所
上で説明したように、本発明は、データを操作する動作への入力としてデータ・ファイル内の範囲を指定するグラフィカルな手段と、実行のためにそのような動作を表すためのグラフィカルな手段を提供する。結果のシステムを用いると、ユーザは、Field Rangeオブジェクトを用いて所望のデータ操作動作が行われるデータ・ファイル内のレコードの範囲をグラフィカルに指定できるようになり、実行のために選択することのできる単一のTaskオブジェクトを用いて所望のデータ操作動作をグラフィカルに表すことができるようになる。
【０１００】
上では、本発明の理解を伝達できるように、好ましい実施例に関して本発明を説明した。しかし、本明細書で具体的に説明されてはいないが、本発明を適用できるグラフィカル・ユーザ・インターフェースの構成が多数存在する。したがって、本発明は、本明細書に記載の特定の実施例に制限されるとみなされてはならず、本発明は、グラフィカル・ユーザ・インターフェース全般に関して広範囲に適用可能であることを理解されたい。したがって、請求の範囲に含まれる修正、変形または同等配置のすべてが、本発明の範囲に含まれるとみなされなければならない。
【図面の簡単な説明】
【図１】本発明に従って構成されたコンピュータ・システムのブロック図である。
【図２】データ配置プログラムのタスク・オブジェクトを示す、図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムの主表示ウィンドウであるApplication Windowを表す図である。
【図３】図２に示されたタスク・オブジェクトを開いた後の表示結果を示す、データ配置プログラムのTask Properties表示パネルを表す図である。
【図４】図３のTask Properties表示パネルに示されたOptions表示画面ボタンを選択することによって作られる表示画面を示す、データ配置プログラムのOptions表示パネルを表す図である。
【図５】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムのツール・ボックス・パネルに配置される複数のフィールド範囲オブジェクトを示す、主表示アプリケーション・ウィンドウを表す図である。
【図６】図３のTask Properties表示パネル内に示されたRange Pool表示画面ボタンを選択することによって作られる表示画面を示す、データ配置プログラムのRange Pool表示パネルを表す図である。
【図７】図３のTask Properties表示パネル内に示されたKeys表示画面ボタンを選択することによって作られる表示画面を示す、データ配置プログラムのKeys表示パネルを表す図である。
【図８】図３のTask Properties表示パネル内に示されたSum表示画面ボタンを選択することによって作られる表示画面を示す、データ配置プログラムのSum表示パネルを表す図である。
【図９】図３のTask Properties表示パネル内に示されたOutput Format表示画面ボタンを選択することによって作られる表示画面を示す、データ配置プログラムのOutput Format表示パネルを表す図である。
【図１０】図６、図７、図８または図９に示されたRange Pool、Key、SumまたはOutput Format表示パネルのいずれかから適当なフィールド範囲Actionを選択することによって作られる、データ配置プログラムのField Range Information表示パネルを表す図である。
【図１１】図３に示されたTask Properties表示パネルからファイル名を選択することによって作られる、データ配置プログラムのRange Marker表示パネルを表す図である。
【図１２】マークされ、図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムの複数のツール・ボックス・パネルにドラッグされたField Rangeオブジェクトを示す主表示アプリケーション・ウィンドウを表す図である。
【図１３】図１に示されたコンピュータ・プログラムによって実行されるデータ配置プログラムのシュレッダ・オブジェクトを用いるField Rangeオブジェクトの削除を示す主表示アプリケーション・ウィンドウを表す図である。
【図１４】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムのInput Record Format表示パネルを表す図である。
【図１５】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムのInput Field Information表示パネルを表す図である。
【図１６】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムのFiltering Information表示パネルを表す図である。
【図１７】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムのOutput Preview表示パネルを表す図である。
【図１８】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムのSelect File表示パネルを表す図である。
【図１９】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムのFile Organization表示パネルを表す図である。
【図２０】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムに含まれるInitializerオブジェクト・クラスを相互作用レベルで表すオブジェクト・モデルの図である。
【図２１】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムに含まれるRegistrarオブジェクト・クラスを相互作用レベルで表すオブジェクト・モデルの図である。
【図２２】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムに含まれるAppObjectInfoオブジェクト・クラスをアプリケーション・レベルで表すオブジェクト・モデルの図である。
【図２３】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムに含まれるToggleGroup、ConstField、FilterCondition及びFieldオブジェクト・クラスをアプリケーション・レベルで表すオブジェクト・モデルの図である。
【図２４】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムに含まれるKeyRange、InputField、InputFormat及びGeneralOptionsオブジェクト・クラスをアプリケーション・レベルで表すオブジェクト・モデルの図である。
【図２５】図１に示されたコンピュータ・システムによって実行されるデータ配置プログラムに含まれるFileName及びSortTaskオブジェクト・クラスをアプリケーション・レベルで表すオブジェクト・モデルの図である。
【図２６】図１に示されたコンピュータ・システムによって実行されるタスク・オブジェクト作成処理ステップを表す流れ図である。
【図２７】ユーザによって選択されたタスク・オブジェクトを実行する際に図１のコンピュータ・システムによって実行される処理ステップを表す流れ図である。
【図２８】図１に示されたコンピュータ・システムによって実行される、フィールド範囲オブジェクト作成処理ステップを表す流れ図である。
【図２９】ユーザによって選択されたフィールド範囲オブジェクトを実施する際に図１のコンピュータ・システムによって実行される処理ステップを表す流れ図である。
【符号の説明】
１００  コンピュータ・システム
１０２  ユーザ・ステーション
１０４  システム記憶装置
１０６  ネットワーク
１０８  中央処理装置（ＣＰＵ）
１１０  表示装置
１１２  主記憶
１１４  キーボード
１１６  グラフィカル・インターフェース入力装置
１１８  ＤＡＳＤインターフェース
１２０  コンピュータ・プログラム製品
１５０  表示ウィンドウ
１５２  ウィンドウ枠
１５４  タイトル・バー
１５６  タイトル
１５８  ウィンドウ状況アイコン
１６０  ウィンドウ・サイズ変更アイコン
１６２  メニュー・バー
１６４  ウィンドウ作業空間
１６６  タスク・オブジェクト空間
１６８  コマンド・オブジェクト空間
１７０  Creatorオブジェクト
１７２  Deletorオブジェクト
１７４  ヘルプ・オブジェクト
１７６  表示画面カーソル
１８０  タイトル・バー
１８２  タイトル
１８４  ウィンドウ状況アイコン
１８６  ウィンドウ・サイズ変更アイコン
２００  タイトル・バー
２０２  ウィンドウ状況アイコン
２０４  ウィンドウ・サイズ変更アイコン
２０６  ウィンドウ作業空間
【図１】
0003639410.tif 000002
【図２】
0003639410.tif 000003
【図３】
0003639410.tif 000004
【図４】
0003639410.tif 000005
【図５】
0003639410.tif 000006
【図６】
0003639410.tif 000007
【図７】
0003639410.tif 000008
【図８】
0003639410.tif 000009
【図９】
0003639410.tif 000010
【図１０】
0003639410.tif 000011
【図１１】
0003639410.tif 000012
【図１２】
0003639410.tif 000013
【図１３】
0003639410.tif 000014
【図１４】
0003639410.tif 000015
【図１５】
0003639410.tif 000016
【図１６】
0003639410.tif 000017
【図１７】
0003639410.tif 000018
【図１８】
0003639410.tif 000019
【図１９】
0003639410.tif 000020
【図２０】
0003639410.tif 000021
【図２１】
0003639410.tif 000022
【図２２】
0003639410.tif 000023
【図２３】
0003639410.tif 000024
【図２４】
0003639410.tif 000025
【図２５】
0003639410.tif 000026
【図２６】
0003639410.tif 000027
【図２７】
0003639410.tif 000028
【図２８】
0003639410.tif 000029
【図２９】
0003639410.tif 000030