JP2955289B2 - 関係型データベースの管理における対話型エラー処理装置 - Google Patents

関係型データベースの管理における対話型エラー処理装置

Info

Publication number
JP2955289B2
JP2955289B2 JP60299659A JP29965985A JP2955289B2 JP 2955289 B2 JP2955289 B2 JP 2955289B2 JP 60299659 A JP60299659 A JP 60299659A JP 29965985 A JP29965985 A JP 29965985A JP 2955289 B2 JP2955289 B2 JP 2955289B2
Authority
JP
Japan
Prior art keywords
signal
screen
record
module
display
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP60299659A
Other languages
English (en)
Other versions
JPS61221819A (ja
Inventor
ヴアル・ジヨセフ・ハバー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
UONGU LAB Inc
Original Assignee
UONGU LAB Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by UONGU LAB Inc filed Critical UONGU LAB Inc
Publication of JPS61221819A publication Critical patent/JPS61221819A/ja
Application granted granted Critical
Publication of JP2955289B2 publication Critical patent/JP2955289B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)
  • Memory System (AREA)
  • Calculators And Similar Devices (AREA)
  • Input From Keyboards Or The Like (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、リレーショナル(関係型)データベースの
管理システムにおいて使用されるように提供される対話
型エラー処理手段に関する。 [発明の背景] リレーショナル・データベースの保守に関する操作の
間、複数の種類のエラーが生じ得る。あるエラーは「致
命的」であり、データ処理システムが全く作動不能とな
る(例えば、ディスクの作動における恒久的なエラ
ー)。致命的とはいえないエラーもあるが、作動を継続
するためには訂正を必要とする。対話型システムでは、
このようなエラーは端末ユーザによって訂正可能であ
る。 特に、このようなエラーには2つのレベルがある。第
1のレベル即ちフィールド・レベルにおいては、フィー
ルドに対する制約(例えば、あるフィールドに入力され
た値が英字または数字であるという制約)が破られる。
第2のレベル即ち保全レベルにおいては、更に複雑な制
約が破られ、例えば、1つのレコードがある関係におけ
る親レコードとしてデータディクショナリにおいて定義
されて、子レコードとして親レコードと関連したレコー
ドが存在する場合には、1つの親レコードの削除を阻止
する制約が存在し得る。このような子レコードガ存在す
る場合に、ユーザが親レコードを削除しようとすれば、
これはエラーとなる。このエラーを検出する手段を提供
することが望まれる。 対話型システムでは、これら両方のレベルのエラー
が、システムの対話型ユーザが訂正可能なクラスのエラ
ーに含まれ、エラーの表示がディスプレイ上に与えられ
れば、ユーザは、キーボードによってこのエラーを訂正
できて、システムの動作を継続し得る。 従って、対話的に訂正可能なクラスのエラーを検出し
て、対話型ユーザに示すための手段が与えられることが
望ましい。 [発明の概要] 本発明に係るエラー処理手段は、表示手段と入力手段
とを含んでおり、更に、リレーショナル・データベース
におけるレコード実現値を含むレコード実現値信号と、
ステータス信号と、カレンシー信号と、フォーマット信
号と、表示可能なエラー・メッセージの文字を表わすメ
ッセージ・ファイル信号と、を生じる記憶手段を含んで
いる。更に、この記憶手段は、オペレーション・バッフ
ァと、第1及び第2のレコード実現値・バッファを定義
する手段を提供する。 このエラー処理手段は、更に、呼出し手段、操作手段
および取出し手段を含んでいる。この操作手段は、操作
呼出し信号に応答して第2のレコード発生バッファにお
けるレコード発生信号に関して作動させられるように選
択された操作の妥当性を検査して、妥当条件および不当
条件を表わす2つの値の一方を有する出力信号を生じる
手段を含んでいる。この操作手段は更に、前記出力信号
の不当な条件値に応答して訂正するステータス不当信号
を生じ、かつ操作戻り信号を生じる第1の手段と、出力
信号の妥当な値に応答してレコードの発生信号に関して
選択された操作を実施し、かつ操作戻り信号を生じる第
2の手段を含んでいる。 取出し手段は、非対話型手段および対話型手段を含ん
でいる。この非対話型手段は、取出し呼出し信号、非対
話条件信号およびカレンシー信号に応答して、データベ
ースからレコード発生信号を検索し、検索された信号を
第1と第2のバッファに入れ、カレンシー信号を増分
し、取出し戻り信号を生じる。対話型手段は、取出し呼
出し信号に応答して呼出し信号および対話型条件信号を
取出す。この対話型手段は、ステータス妥当信号および
カレンシー信号に応答して、データベースからレコード
発生信号を検索し、またこの検索された信号を第1と第
2のバッファに対してコピーする手段と、ステータス不
当信号に応答してレコード発生信号を第1のバッファか
ら第2のバッファへコピーする手段とからなっている。
更に、この対話型手段は、フォーマット信号および第2
のバッファにおける信号に応答してレコードの発生の表
示を行なうようにディスプレイを制御する手段を含み、
入力手段からのオペレータ入力信号に応答して操作選択
信号を操作バッファに入れかつ取出し戻り信号を生じ
る。表示手段は更に、ステータス不当信号およびメッセ
ージ信号に応答してエラー・メッセージの表示を行な
う。 呼出し手段は、操作戻り信号およびステータス不当信
号に応答して取出し手段呼出し信号を生じ、また取出し
戻り信号に応答して操作呼出し信号を生じる。 好適な実施態様においては、表示手段は更にオペレー
タ入力信号に応答して第2のバッファにおける信号の修
正を行なう。また、この取出し手段は更に、フォーマッ
ト識別信号と条件パラメータ信号の第1の値とステータ
ス不当信号とに応答して対話型条件信号を生じ、フォー
マット識別信号と条件パラメータ信号の第1の値とステ
ータス妥当信号とに応答して非対話型条件信号を生じ
る。 他の目的、特徴および利点については、図面に関して
本発明の好適な実施態様の以降の記述から明らかになる
であろう。 【実施例】 本発明の好適な実施例を説明する前に、その説明のた
めに必要な関連発明(以下では、発明Aと称する)に関
する説明をここで挿入する。 [発明Aに係るデータベース管理手段の詳細な説明] [技術的背景] この発明Aは、ディスプレイ手段とキーボード信号入
力手段とを与える1つ又は複数の端末又はコンソールを
有するデータ処理システムにおいて用いられ、記憶装置
において、少なくとも1つのリレーショナル・データベ
ースとして形成された物理的レコードを提供する。 データ処理システムやデータベースのレコードの最終
ユーザの中には、プログラマではない事務員等もいる。
このようなユーザたちは、システムの端末を使用して、
データ処理システムのメモリーに格納されたレコードの
表示を見たり、見たい特定のレコード又はその一部を選
択したり、メモリーにおける物理レコードを削除又は修
正したり、あるいは新たな物理レコードをメモリーに追
加したりすることを望む。これらの目的のため、物理レ
コードは物理的な記憶装置において選択され、アクセス
され、検索(コピー)されねばならず、検索されたレコ
ードの表現(representation)は、ある所定の表示フォ
ーマットで端末のユーザに表示されなければならない。 格納されたデータベースのレコードのこのような使用
を可能にするためには、このデータ処理システムによっ
て実行される場合に、物理レコードの表現とユーザがキ
ーボードを介して入力した信号の表現とを特定のフォー
マットでディスプレイ上に表示させる、コード化された
命令がデータ処理システムにおいて提供されなければな
らない。更に、データ処理システムにより実行される場
合に、ユーザがキーボードを介して入力した信号の解釈
を行ないそのような入力信号に応答して格納されたデー
タベースの物理レコードの検索と修正を行う、コード化
された命令が提供されなければならない。 特定のデータベースのレコードの特定の使用のため設
計されたこのような命令群は、「データベース・アプリ
ケーション・プログラム」として知られるある種のプロ
グラム、即ち、最終ユーザによって用いられて、ある特
定のデータベースの格納された物理レコードに関してデ
ータ処理システムの最終ユーザが望むアプリケーション
を実行するプログラムを含む。 このようなアプリケーション・プログラムの準備に
は、一般に、アプリケーション・プログラマによる数週
間または数か月の作業を必要とし、プログラム中のエラ
ーを検出・消去して当該プログラムが信頼でき使用の際
にエラーが比較的少ない状態とするのに更に数週間が必
要である。 従って、このようなデータベースのアプリケーション
・プログラムの構成及び操作を簡略化する手段を提供す
ることが望ましく、そのような手段の提供が本発明の目
的の1つである。 当技術においてよく理解されるように、データ処理シ
ステムのユーザ(またはプログラマ)は、システムのメ
モリに格納される物理レコードを直接に扱うことはな
い。むしろ、彼らは、そのようなレコードのモデルを扱
い、このモデルは、必要な場合にはシステムのメモリに
格納されたプログラミングによって提供され、必要な場
合にはプロセッサによって実行される。図2によれば、
物理レコードは、望ましくは二次メモリー16からなる磁
気ディスク24上に格納された磁気信号として物理的媒体
に格納される。この磁気信号は、このような記憶媒体の
管理技術において周知の方法で、ディスク24上に物理的
に構成されている。このような信号の特定の構成と、こ
れら信号を位置付けて主記憶装置14にコピーする特定の
手段とは、使用する特定の記憶媒体のハードウエアの特
徴に大きく依存している。 下位の格納された物理レコードからの異なる抽象化の
程度を有する、レコードのいくつかのモデルが提供され
る。要約すれば、これらは(第2図参照)、特定のユー
ザが「外部」又は「論理」レコードを認識する「外部ビ
ュー(view)」(26又は28)と、「概念」レコードを認
識する「概念ビュー」(30)と(各外部ビューは概念ビ
ューの部分集合である)、「内部」即ち「格納された」
レコードを認識する「内部ビュー」(32)である。 データ処理システムが動作して第2図に示される各ビ
ューのレコードを使用のために構成し呈示する場合に
は、これらのレコードは、その時点では(そのような使
用の間は)、ディスク24上に格納された磁気信号から得
られる物理信号によってデータ処理システム内で表現さ
れる。このような使用が終ると、構成されたレコード
は、システム10内ではもはや物理的に表現されない。対
照的に、ディスク24上に格納されている下位の物理レコ
ードは、削除又は修正されるまで、使用されているかど
うかにかかわらず、常にディスク上に残る。 種々のビュー26、28、30、32において見られたものと
してレコードを表わす信号は、データベース管理システ
ムの動作、換言すれば、プロセッサ12による適切な格納
プログラムの実行によって、媒体24上に格納された物理
レコードから、このデータ処理システムにより導かれ
る。第3図に概念的に示したように、媒体24上の物理レ
コードは、アクセス法として知られるプログラム要素の
制御の下で、本発明の一部を構成するものではないが当
技術において周知の方法によって、データ処理システム
によって物理的に書き込まれ、コピーされ、削除され
る。このアクセス法は、物理レコードと対応しかつこれ
から得られる「格納された」又は「内部」レコードを、
データ処理システムに提供するものと考えられる。 データベースのユーザは、(システムを使用するプロ
グラマには知られているが)「内部」ビューを見ること
ができない。データベース管理システムのプログラムの
他の部分に従って動作するプロセッサ12は、格納された
即ち内部のレコードから、概念ビューとその部分集合で
ある外部ビューのレコードを構成する。概念レコードの
定義は、物理レコードを効率的に見出して検索するアク
セス法により用いられる記憶構造・戦略とは独立であ
る。 データベースにおけるレコードは、当該データベース
における他のレコードと関連付けることができ、この関
係(relationship)が、データベースのユーザの関心対
象である。この関係は、それ自体、データベースにおい
て実体(エンティティ)として表わされる。 データベース管理技術においては、あるデータベース
の概念レコードとそれらの間の関係とは、関係型(リレ
ーショナル)、階層型(ハイエラーキカル)、網型(ネ
ットワーク)モデルとして知られている3つの可能な方
法の中の1つで構成ないし形成できる。この発明Aは、
リレーショナル・データベースとして形成されたデータ
ベースのレコードの管理に関するものである。 リレーショナル・データベースのレコードは、テーブ
ル(「関係(リレーション)とも称される」)として概
念的に構成されている。第4図においては、リレーショ
ナル・データベースの1つのテーブル(関係)は複数の
行(rows)を備えており、各行は複数のフィールドを備
えた1つのレコード(又はテュプル(tuple))であ
る。ある特定のテーブルの全ての行は同数のフィールド
を有する。レコードのフィールドは複数の列(column
s)に配置されており、1つの列は属性(attribute)と
も称される。1つの列の要素は、定義域(domain)と称
されるこのような要素のクラスを構成し、列は列のヘッ
ディング(定義域名)により名前が与えられる。各レコ
ードは、このレコードを一意的に識別するのに用いられ
るインデックス又はキーを内容とする1つ又は複数のフ
ィールドを含む。 関係型データ構造の決定的な特徴は、各行(テュプ
ル)の間の相関が、関連するレコードのディスク上の物
理的位置ではなく共通の定義域から得られる列のデータ
値によってのみ表現されることである。 リレーショナル・データベースは、他の2つのモデル
よりも優れている色々な利点を有する。一般に、階層型
データベースや網型データベースは、一度に1つのレコ
ードを取扱い、一度に1つの関連したレコードを得るの
に有効であるように構成されているが、リレーショナル
・データベースは、一度に1組のレコードを取り扱い、
一度に1組の関連したレコードを得るのに有効であるよ
うに構成されている。 関係型モデルの重要な1つの特質は、テーブル(関
係)が、ある制約に従う場合には、やはり関係と呼ばれ
厳密な数学的扱いが既に存在している数学的な要素と考
え得る点である。従って、テーブル上の操作(オペレー
ション)はこの数学的な理論によって分析可能であっ
て、これは、そのような操作の効果を明確に理解する上
で利点を有する。特に、データを一様に定義された場合
(sets)の形式で表現することは、当該集合を変換する
演算子の集合における対応する一様性(uniformity)を
可能にし、これにより、データ処理システムを制御する
プログラム要素を提供してこのようなセットを変換する
タスクが簡略化される。本発明の1つの目的は、列挙さ
れた関係を提供することにより、この利点を、これまで
は得られなかったデータベース保守の性質にまでこのよ
うな利点を拡張することにある。 [発明Aの概要] このデータ処理システムは、入力信号を提供するキー
ボードと、視覚的ディスプレイと、リレーショナル・デ
ータベース内の関係として構成される複数のレコード実
現値を表わす信号を提供する記憶手段と、作業用記憶装
置と、視覚的ディスプレイを制御し作業用記憶装置の読
出しと書込みとを行ない入力信号に応答する手段を有す
るプロセッサと、を備えている。プロセッサは、更に、
データベースからのレコード実現値信号を検索し検索さ
れたレコード実現値信号を作業用記憶装置に格納するア
クセス手段を有する。 発明Aによれば、このデータ処理システムは、予め定
義した表示フォーマットを表わすフォーマット信号とデ
ータベースにおける関係の少なくとも1つを含むターゲ
ットに対し定義されたカーソルを表わすカーソル信号と
を提供する作業用記憶域内の手段と、キーボードを介し
て列挙してまた対話的に定義される結果関係(result
relation)を表わす信号を提供する関係型演算子(oper
ator)手段と、有することを特徴とする。 演算子手段は、作業用記憶域からのカーソル信号を受
け取るカーソル受取手段を含む。システムのアクセス手
段は、カーソル受取手段に応答して、ターゲットからカ
ーソルにより特定されるレコード実現値信号を検索す
る。 関係型演算子手段は、作業用記憶域からフォーマット
信号を受け取り、スクリーン画像を表わすスクリーン画
像信号を定義・格納し、フォーマット信号と検索された
レコード表現値信号とに応答する、スクリーン画像定義
手段を、更に含んでいる。プロセッサは、演算子手段に
応答して格納されたスクリーン画像信号の表現の表示を
行なうディスプレイを制御し、キーボードを介してこの
表示の間に入力された列挙信号に対応する格納されたス
クリーン画像信号を修正して、検索されたレコード実現
値のあるものの列挙を行なう。 演算子手段は、更に、修正スクリーン画像信号とカー
ソル信号とから、列挙的に定義されるものから成る結果
関係を定義する出力信号を導く手段と、作業用記憶域に
この出力信号を格納する手段と、を備えている。 発明Aの別の特徴によれば、このデータ処理システム
は、演算子スクリーン画像定義手段が予め定義した表示
フォーマット信号に更に応答してプロセッサにより実行
可能な複数の選択できる操作の表示をスクリーン画像に
定義することを、更に特徴とする。プロセッサは、演算
子手段に応答して、そのような表示の間にキーボードか
ら入力された操作選択信号を受取って、定義された複数
の操作の内の1つを選択し、プロセッサはこの操作選択
信号を格納する。 演算子手段は、更に、格納された操作選択信号に応答
し、この選択された操作を表わす出力信号を提供してこ
れを格納する。 発明Aの別の特質によれば、このデータ処理システム
は、データベースにおいて明確に定義されたレコード実
現値の属性に照して定義される構成要素を有する結果関
係を表す信号を提供する関係型演算子手段を備えてお
り、この結果関係はキーボードを介して対話的に定義さ
れる。 演算子手段は、作業用記憶域からフォーマット信号を
受け取り、総称要素(generic elements)と解放要素
(open elements)を提供するスクリーン画像を表わす
信号を定義し格納するスクリーン画像定義手段を含む。
プロセッサは、演算子手段に応答して、スクリーンの映
像を表現を表示するディスプレイを制御し、そのような
表示の間にキーボードから入力される特徴付け信号に応
答する格納されたスクリーン画像の解放要素を修正し
て、カーソルを特徴付ける。 演算子手段は、更に、修正されたスクリーン画像信号
とカーソル信号とから、その構成要素が特徴的に定義さ
れる結果関係を定義する修正されたカーソルを定義する
出力信号を導く手段と、この出力信号を作業用記憶域に
格納する手段とを含んでいる。 好適実施例においては、このデータ処理システムは、
フォーマット信号が2つの代替的なモードのフォーマッ
トを定義し各モードのフォーマットと対応するモード標
識(indicator)を含むことを特徴とする。関係型演算
子手段はモード標識に応答して、指示されたモードのフ
ォーマットを使用し、キーボードを介して列挙的かつ対
話的に定義される構成要素から成る結果関係を表わす信
号を提供するか、又は、データベースにおいて明瞭に定
義されるレコード実現値の属性に照して定義される構成
要素から成る結果関係を表わす信号を提供し、この結果
関係はキーボードを介して対話的に定義される。 好適実施例においては、複数の選択可能な操作が各モ
ードのフォーマットごとに定義され、各モードのフォー
マットにおいては、選択可能なこの操作が他のモードの
フォーマットに従って表示する遷移操作を含み、演算子
手段はこの遷移操作を表わす出力信号に応答して他のモ
ードと対応するモード指示信号をスクリーン画像定義手
段に与え、必要に応じてカーソル受取手段にも与えて遷
移を実行する。 また好適実施例においては、作業用記憶域が予め定義
した更新表示フォーマットを表すフォーマット信号を提
供し、複数の選択可能な操作はこの更新表示フォーマッ
ト信号に従って表示を行う遷移を含む。このデータ処理
システムは、演算子手段から遷移操作を表わす出力信号
に応答する更新手段を提供し、この更新手段は、更に、
結果関係を定義する演算子出力信号に応答してレコード
実現値に更新操作を実行する。この更新手段は、更新表
示フォーマット信号にアクセスし、列挙されるレコード
実現値およびレコード実現値に対して実行可能な選択可
能な更新操作の表現を含むスクリーン画像を表わすスク
リーン画像信号を定義し格納する手段を提供する。プロ
セッサは、更新手段に応答して格納されたスクリーン画
像の表現を表示し、キーボードから入力される更新操作
選択信号を受け取って格納し、更新手段は格納された更
新操作選択信号に応答して列挙されたレコード実現値に
対して更新操作を実行する。 [発明Aに係るデータ処理システムの実施例] [データ処理システムの概要] 第1図において、データ処理システム10は、主記憶装
置14を含むプロセッサ12を有する。二次記憶手段16は、
1つ又は複数のディスクの形態で提供される。主記憶手
段14と二次記憶手段16とは、共に、記憶装置17を構成し
ている。発明Aの説明は、それはデータ処理システム管
理の技術において既に知られていることであるので、主
記憶装置と二次記憶装置との間でプログラムまたはデー
タの一部を表わす信号を移動させる方法の詳細に関する
ものではなく、この発明A自体もそれに関するものでは
ない。記憶システム17の全ての部分における信号は、プ
ロセッサ12に対して使用可能であるものと仮定する。 プロセッサ12に結合された1つ又は複数の端末又はコ
ンソールは、表示手段18としてCRTスクリーンと、信号
入力手段20としてのキーボードとを備えている。マウ
ス、タッチスクリーン、音声付勢手段などその他の信号
入力手段は、発明Aにおいて考察される。発明Aが大型
のデータ処理システムにおいて実施される場合には、シ
ステム内には入出力プロセッサのような付加的なプロセ
ッサが設けられることがあり、本明細書で「プロセッ
サ」により実行されるとされる操作は、実際にこれら複
数のプロセッサ間で分担することができる。このような
細部は、この発明Aの技術範囲に影響を与えない。 [キーボード及びPFキー] 次に第5図においては、キーボード20は、スペース・
バー202を有し全体として200で示されるタイプライタ・
キーボードの通常のキーを提供する。キーボード420の
最上段には4つのグループに配列された16のキー204が
置かれ、これらのキーは、PF(プログラム機能)キーと
呼ばれる。その各々は1から16までの番号が付され、そ
の割当てられた番号が表示されている。シフト・キーを
用いれば、これらのキーは32の可能なプログラム機能を
提供する。キーボード20は、更に、1つの入力キー206
とスクリーン位置マーカ制御キー208のパッドとを提供
する。スクリーン位置マーカは、通常は、「カーソル」
と呼ばれるが、この用語は、リレーショナル・データベ
ースから複数のレコードを取り出す際に用いられる「カ
ーソル」との混乱を避けるため、この明細書では、この
要素に対して用いないことにする。 [記憶装置17] 以下の説明においては、「@」で始まる単語は、デー
タ構造、又は、記憶装置17内の要素に対するポインタ名
とし、「$」で始まる単語は特定のプログラム要素に対
するパラメータ名とし、「#」で終わる単語はデータ構
造におけるリスト又はセット内の要素に対するインデッ
クス名とする慣習に従う。データ構造の中の要素は、デ
ータ構造名で始まる単語(またはその略号)の後にピリ
オドが続けることにより命名され、例えば、「qry.sour
se」は、「ソース(source)」と命名されデータ構造
「QUERY」内に置かれた格納要素(storage element)
(又は、ある場合には、このような格納要素に格納され
た信号)である。「DO」で始まる単語は呼出しプログラ
ム内のモジュールの名前であり、「WZ」で始まる単語は
呼出しプログラムにより呼び出される外部手続名であ
る。 データ処理システム10の記憶装置17は、プログラム記
憶装置とデータ記憶手段とに概念的に分割されると見做
される。プログラム記憶装置(第7図)の内容について
最初に簡単に述べ、次に、データ記憶装置(第6図)の
内容について述べることにするが、第7図の各モジュー
ルについては、その後更に詳細に説明し、データ処理シ
ステム10の前記モジュールによるデータ構造に関する動
作についてはその後で述べることにする。 [プログラム記憶装置] 第7図において、プログラム記憶装置に設けられたプ
ログラム・モジュールが概念的に示されており、各モジ
ュールに入力された有意のパラメータと1つのモジュー
ルから他のモジューへの呼出しとが表示されている。更
に、ある場合には、モジュールにより戻されたパラメー
タが表示される。 このようなモジュールおよびパラメータは物理的な信
号によって表わされ、また作動中はプロセッサ12が適当
なプログラム要素を表わす信号をプログラム記憶装置か
らコピーし、このような信号を用いて、表わされた作動
が物理的に実行されるようにシステム10内のハードウエ
ア要素の物理的状態を制御する。あるモジュールが他の
モジュールを「呼出し中」であると説明される場合に
は、第1のモジュールに従って作動中のデータ処理シス
テム10が第2のモジュールに従って更なる作動を制御す
るために第2のモジュールにアクセスしてその信号をコ
ピーする。 [プログラム記憶装置の簡単な説明] [オペレーティング・システム] 記憶装置17のプログラム格納部分においては、発明A
の一部を構成せず所望の任意の構造でよいが、データ処
理システム10を制御して、記憶装置17におけるデータベ
ースからレコード実現値を検索し、データベースにおけ
るレコード実現値を修正もしくは削除し、データベース
に新たなレコードを追加するのに適したアクセス法102
を提供しなければならないオペレーティング・システム
のプログラム100を表現する信号が提供される。更に、
オペレーティング・システム100は、ディスプレイ18と
キーボード20との制御のためのプログラムを含み、特
に、ディスプレイ18に対して格納されたスクリー画像を
表わす信号を送り、キーボード入力信号を受け取り、こ
れに従って格納されたスクリーン画像を修正し、更にキ
ーボード入力信号のあるものを格納することにより呼出
しプログラムにおける適切なコマンド(「書込み/読出
しスクリーン」)に応答することができなければならな
い。 [呼出しプログラム] プログラム記憶装置17は、更に、データ処理システム
の作動のためのプログラミング要素を呼び出す「呼出し
プログラム」を表わす信号を提供する。この実施例で
は、この呼出しプログラムは、PACE RUNと命名されて
いるが、この発明Aの関係型演算子手段に対するプログ
ラムは、リレーショナル・データベースを保守するため
の他のプログラムから呼出すことができ、このようなプ
ログラムの詳細は、以下で述べる点を除いてこの発明A
とは関連ない。 端末のユーザから呼出しプログラムに最初に送られね
ばならない情報は、アクセスすべきデータベースの指定
と、アクセスすべきスクリーン・ファイルの指定と、あ
る場合にはカーソルとから成る。それ以外の場合には、
カーソルは以下に説明する方法で提供される。リレーシ
ョナル・データベースの管理技術において理解されてい
るように、カーソルは、物理的データベースから検索さ
れるべきレコード実現値の集合を定義しコード実現値を
検索するプロセスの間に当該集合の中のある位置を識別
するステートメント(又は、このステートメントから得
られる実行内容に依存するデータ構造)である。 呼出しプログラム(PACE RUN)内には、DO OPEN D
ATABASEモジュール103と、DO OPEN SCREEN FILEモジ
ュール105と、DO DSCモジュール107と、DO QUERYモジ
ュール108と、DO PXIモジュール112と、DO UPDATEモ
ジュール126とがある。 WZOPEN DATABASEモジュール104は、モジュール103に
よって呼び出され、WZOPEN SCREEN FILEモジュール10
6は、モジュール105によって呼び出され、WZOPEN CURS
ORモジュール110は、DO QUERYモジュール108によって
呼び出される。WZPXIモジュール114は、DOPXIモジュー
ル112により呼び出され、WZDISPモジュール124は、WZPX
Iモジュール114によって呼び出される。モジュールWZSC
RLOD116と、WZRETRIEVE118と、WZSCRIO120とは、WZDISP
モジュール124により呼び出される。WZFORMS122は、WZS
CRIO120によって呼び出される。更に、WZSELECTモジュ
ール128は、モジュール114によって呼出され、またWZSC
RIOモジュール120とOPEN CURSORモジュール110とを呼
び出す。DO UPDATEモジュール126もまた、以下に述べ
る条件下でDOPXIにより呼び出され、WZINSERTと、WZMOD
IFYと、WZDELETEモジュール115とは、モジュール126に
よって呼び出される。第7図に示されるプログラム・モ
ジュールと、これらを表わす信号の制御下におけるデー
タ処理システム10の動作の詳細については、以下で記述
する。 [データ記憶装置] 第6図においては、記憶装置17のデータ格納部分は、
1つ又は複数のリレーショナル・データベース150から
なるレコード実現値を表わす信号を生じるデータベース
記憶手段と、作業用記憶域とに、概念的に分離される。
データベース記憶装置の詳細については、上述したよう
にデータ処理システム10のユーザからは見えず、これ以
上記述しない。作業用記憶域は、2種類のデータ構造を
表わす信号を与えるものとして示されており、実線で示
したものを表す信号は、発明Aによる動作が開始する前
に、発明Aに従って記憶装置17において与えられ、ま
た、点線で示される構造を表わす信号は、以下に述べる
ように第7図に示されるプログラム要素に従ってデータ
処理システム10の作動の間に記憶装置内に置かれ、又は
記憶場所がこれらに対して割り当てられる。 [スクリーン・ファイル151:PSCR、PSMP、POP、PDEF] スクリーン・ファイルのデータ構造151を表わす信号
は、記憶装置17に与えられ、予め定義された表示フォー
マット信号を与える。スクリーン・ファイル151はユー
ザ(呼出し)プログラムの一部でよい。それは、複数の
ターゲット関係に対する表示フォーマット信号を与える
が、このファイルは、ここでの説明のために、命名され
たデータベース内の特定のターゲット関係(ベーステー
ブル又はビュー)からのレコード実現値の表示を意図す
るものとする。複数のターゲット関係がアクセスされる
べき場合には、複数のスクリーン・ファイルが与えられ
得る。 スクリーン・ファイル151は、アクセスされる最初の
スクリーン・フォーマットを表わす信号に対する記憶装
置を提供するPDEFテーブル153を含む。スクリーン・フ
ァイル151は、更に、手順スクリーン定義テーブル(Pro
cedure Screen Definition Table=PSCR)152を含
み、要素@pscrは,PSCR152をアドレス指定するポインタ
である。PSCR152は、複数のスクリーン・フォーマット
と関連する格納された信号を提供し、各スクリーンに対
する信号はスクリーン・インデックス(スクリーン#)
により見い出される。各スクリーンに対して、PSCR152
に、スクリーン・タイプ(又は、モード・インジケー
タ)を表わす信号と、スクリーン・フォーマット166を
指示するポインタ@scr(以下では、第8図、第12図、
第13図と関連して説明する)と、スクリーンと関連した
手順スクリーン・マップ(Procedure Screen Map=PS
MP)と、手順オペレータ・テーブル(Procedure Opera
tor Table=POP)とが与えられる。スクリーン・ファ
イル151は、更に、PSCR152においてインデックスされた
各スクリーンに対して、スクリーン・フォーマット166
と、POPテーブル156と、PSMP154と、表示リスト(For−
Display−List)のための部分(ポーション)155を提供
する。 特定のスクリーン・フォーマット166に対するPOPテー
ブル156については、第10図に更に詳細に示されてい
る。POPテーブル156は、各スクリーン・フォーマット16
6に対して、このスクリーンが表示される間にキーボー
ド20から選択することができる操作についての情報を表
わす信号を提供し、これらは、このスクリーン・フォー
マットの表示中に対話的に定義される結果関係について
実行されるべき操作と、レコード実現値のスクローリン
グや他のスクリーン・フォーマットへの遷移のような他
の操作を含む。テーブルは、以下に述べるFPFkeyと呼ば
れる記憶素子の値によりインデックスされ、このような
値それぞれに対して、「oper」と呼ばれるデータ構造が
与えられて、以下に説明する方法でキーボード20上のPF
キーにより選択可能な操作に関する情報を与える。「op
er」は、「oper−name」(呼出しプログラムに戻される
テキスト)と、行なわれるべき動作(単数または複数)
と、関連する場所の動作に対して用いられるべきスクリ
ーン・フォーマットのスクリーン名を含んでいる。LIST
スクリーンに対するPOPテーブルには、Add、Modify、De
lete、Returnの各操作に対する「oper」がある。他のス
クーンは、これより多く又は少ない操作に対する「ope
r」を含むPOPテーブルを有する。POPテーブルが構成さ
れる際に、他の操作もまた提供され得る。 ある特定のスクリーン・フォーマット166に対する手
順スクリーン・マップ(PSMP)154は、スクリーン・フ
ォーマットを用いてデータベースからのレコード実現値
を表示する場合にディスプレイ上に現われるべきビュー
・フィールドの名前のリストを表わす信号を含んでい
る。この情報は、表示リスト155/174を充たす(フィル
アウト)する際に用いられる。更に、ある特定のスクリ
ーン・フォーマット166に対するPSMP154は、どれだけ多
くのレコード実現値がこのようなスクリーン上に一度に
表示することができるかを定義するスクリーン制限信号
を発生する。 [スクリーン・フォーマット] 次に第12図によれば、各スクリーン・フォーマットは
6つまでのスクリーン・フォーマット(フォーマット16
6として第6図に一緒に示される)を表わす信号を含み
得るが、基本形式(basic type)は2つしかない。こ
れらのフォーマットは、この2つの形式間の相違が容易
に判るように第12図において概略が示されている。LIST
スクリーン・フォーマット400は、データベースのター
ゲットの関係からの多くのレコード実現値の表示を行な
うためのものであり、従って、列に配置されたこのよう
な実現値のフィールドに対するスペースを与える。全フ
ィールドよりも少ないフィールドが示され得る。DISPLA
Yスクリーン・フィールド402は、データベースのターゲ
ット関係からの1つのレコード実現値の表示を行なうた
めのものであり、このレコード実現値のフィールドより
も多くのフィールドを示すことができる。SELECTスクリ
ーン(404)と、ADD、MODIFY、DELETEスクリーン(40
6)とは、基本的に、DISPLAYスクリーンのフォーマット
と、1つのレコードのフィールド又は1つのレコードの
フィールドの名前の表示が以下に述べる相違点と共に示
されているという点で類似している。 [LISTスクリーン・フォーマット] LISTスクリーン・フォーマット400が、第8a図および
第8b図において更に詳細に示されている。 第8a図は、スクリーン・ファイル151に当初に提供さ
れるLISTスクリーン・フォーマット400を示している。
このスクリーンのタイトル300は、310に示されるターゲ
ット関係の名前と、302に示される固定テキストと共に
示されている。固定テキストの下方には、列のヘッダと
レコード実現値の表示のための空のスペースがある。線
304が、スクリーンを上下の部分306、308に分離してい
る。線304の下側の下方部分308には、キーボード20(第
5図)上のENTER(入力)キー206の名前と共に16個のキ
ー204の中の特定のPFキーの番号が表示されている。選
択できる操作の名前がキーの指定に対応させて示されて
いる。 16の可能なPFキーの全てがスクリーン・フォーマット
の下方部分308にリストされるわけではないことが認め
られるが、これは、LISTスクリーンが表示される間はよ
り数少ない操作しか選択できないためである。これらの
リストされたものの中には、PFキー204−16即ちReturn
(戻り)がある。キー204−4つまりPrevキーを付勢す
れば、その時点のフォーマットを用いたままで、当該リ
ストの中のレコード実現値の直前に表示されたスクリー
ンロード(screenload)が再び表示され、シフト・キー
と共にキー204−4を付勢すれば、リストの中のレコー
ド実現値の最初のスクリーンロードが表示される。同様
に、キー205−5を付勢すれば、次のスクリーンロード
が表示され、シフト・キーと共にキー205−5を付勢す
れば、レコード実現値の最後のスクリーンロードが表示
される。このように、キー204−4と204−5とは、306
の部分をスクロールする。キー204−7を付勢すれば、S
ELECTスクリーン・フォーマット(以下に述べる)が表
示される。キー204−8と204−9とを付勢すれば、ユー
ザがスクリーン位置マーカを移動させて選択した1つ又
は複数の表示されたレコード実現値を、以下に述べるDE
LETEおよびMODIFYスクリーン・フォーマットに表示させ
る。複数のレコード実現値が選択された場合には、それ
らは選択されたスクリーン上に順次表示されることにな
る。キー204−6を付勢すれば、ADDスクリーン・フォー
マット(以下に述べる)が表示される。(第5図のキー
ボード20上の)ENTERキー206を付勢すれば、DISPLAYス
クリーン・フォーマットへの変換が生じ、列挙されたレ
コード実現値が表わされる。 対応する操作の名前と共にPFキーの番号とキーの名前
とを含む表示されたキー識別子は、以下に述べるよう
に、関係型演算子手段によって与えられ得る結果関係の
要素との関係で実行可能である操作を含む複数の選択可
能な操作を表示する。 第8b図においては、検索されたレコード実現値が、列
のヘッダの下方に表わされている。 [他のフォーマット] 第13図および第14図においては、残りのスクリーン・
フォーマットが第12図におけるよりも更に詳細に示され
ている。 第13図は、1つのレコード実現値のフィールドの表現
と共に、DISPLAYスクリーン・フォーマット402を示して
いる。このスクリーン・フォーマットは、LISTフォーマ
ットが表示される間に、(第5図のキーボード20の上
の)ENTERキー206の付勢に応答して示される。レコード
におけるフィールドの名前がフィールドの値の左側に与
えられる。選択可能な操作は、このフォーマットの下方
部分308に表示される。PFキー204−16(Return)を付勢
すれば、LISTスクリーン・フォーマットのビューに戻
る。PFキー204−6(Add)、204−8(Delete)、204−
9(Modify)を付勢すると、ユーザは、DISPLAYスクリ
ーン・フォーマットで表示されたものと同じものであっ
てフォーマット406の1つで表示されているレコード実
現値を見ることができ、それにより、指示された操作を
実行し得る。 LISTフォーマットが表示される間にPFキー204−7の
付勢に応答して示されるSELECTスクリーン・フォーマッ
ト404は、フォーマット402と構成が類似しているが、こ
のフィールドの幾つか又は全ては疑問符(?)と空欄
(ブランク)によって表わされる。このスクリーンによ
って、ユーザは、スクリーン位置マーカを特定のフィー
ルド(解放要素)位置させ、また、特徴値(characteri
sing value)をフィールドに入力することが可能にな
る。これは、データベースの中の(310において名付け
られた)ターゲット関係から、選択されたフィールドに
おける当該特徴値を有するレコード実現値を選択するた
めである。複数のフィールドがこのようにして特徴付け
(キャラクタライズ)できる。 第14図においては、更新(Update)スクリーン・フォ
ーマット406が示されている。追加(ADD)スクリーン・
フォーマット406−1は選択(SELECT)スクリーン・フ
ォーマットと類似しているが、この場合、ユーザは、デ
ータベースの(310で命名される)ターゲット関係に加
算されるべき新たなレコード実現値を構成するため必要
な全てのフィールドを充たさなければならない。修正
(MODIFY)スクリーン・フォーマット406−1は、表示
(DISPLAY)フォーマット402と類似するが、フィールド
の値の表現がハイライトして(そうでなければ、属性の
名前から識別されて)示され、データベースにおいてス
クリーン上に示されたレコード実現値を修正するために
これらの値をユーザが修正できることを表示している。
DELETEスクリーン・フォーマット406−3もまたDISPLAY
フォーマット402と類似しているが、選択可能な操作
は、「削除(DELETE)」または「レコードの飛び越し
(Skip record)」を含む。 [カーソル158] 再び第6図において、カーソルを表わす信号が、ポイ
ンタ@cursorにより記憶装置158に与えられる。記憶装
置158で示される特定のカーソルは、呼出しプログラム
により与えられるか、又は、以下に述べる方法によりも
しくは他に定義される方法で当初のカーソルから導かれ
る。前に述べたように、カーソルは、データベースの中
のターゲット関係から検索されるべきレコードの集合を
定義してレコードの検索の過程においてこの集合の中の
位置を識別するステートメント(又は、このようなステ
ートメントから導かれるインプルメンテーションに依存
するデータ構造)である。 [他のデータ構造] 再びまた第6図において、データ構造であるタスク共
通領域(TCOM)160、QUERY162,見られる(Seen)リスト
176、ATAB172、表示のためのリスト(その2)174、DBU
SER173、FOR164に対する記憶装置は、以下に述べるよう
に、データ処理システム10の動作中に配分(アロケイ
ト)される。更に、システム・バッファ168に対する記
憶装置は、以下に述べるように、動作中に配分される。 [プログラム・モジュールおよび格納場所との会話の説
明] [WZOPENデータベース104] データ処理システム10は、ある特定のデータベース
(パラメータ$データベースにより指定される)に対し
て呼出しプログラムから呼出されるプログラム要素WZOP
ENデータベース104を表わす信号の制御下で作動する。
それについてデータベースがアクセスされるべき情報
が、データ処理システムの端末のユーザから最終的に到
達する。モジュール104による作動中、データ処理シス
テム10はデータ構造DBUSER173に対する記憶装置17にお
いてスペースの割当てを行ない、これがデータベースの
レコード、ファイル、関係表示、および開放(オープ
ン)されたデータベースと関連する他のデータの記述子
のリストに対するポインタを表わす信号を生じる。この
ような記述子は、レベル32の格納された即ち内部のレコ
ード実現値に照してレベル30の概念的なレコード(第2
図)を定義するための信号を提供する。この時、データ
処理システム10は記憶装置17において構造タスク共通領
域(TCOM)を表わす信号に対してスペースを割当てる
が、この領域は以降の操作において用いられるべき色々
なポインタにする格納場所を保有し、特に表示のための
リスト(その2)174を指示するポインタ@for−displa
y−listおよびDBUSERデータ構造173を指示するポインタ
@dbuserに対する格納場所を含んでいる。 以上のこととは別に、レコード実現値がこれから検索
することができるようにデータベースを開放する手順は
データベースの管理技術においては周知であり、以下本
文において特に記述しない。 WZOPEN SCREEN FILE106 データ処理システム10は、パラメータ$スクリーン・
フォーマット(最終的にユーザにより供給される)に関
して呼出しプログラムから呼出されたプログラム要素WL
OPEN SCREEN FILE106を表わす信号に従って作動す
る。このパラメータ$スクリーン・フォーマットはアク
セスされるべき特定のスクリーン・フォーマット151を
指定する。もし参照される特定のスクリーン・フォーマ
ットを表わす信号が主記憶装置14に存在しなければ、デ
ータ処理システム10はモジュールWZOPEN SCREEN FILE
106の制御下にある時二次記憶装置16からPSCR152を表わ
す信号をロードするが、この動作は本発明の一部を構成
するものではない。 DO DSC107 DO DSCモジュール107を表わす信号に従って呼出しプ
ログラム内で作動して、データ処理システム10は初期の
カーソルを定義し、これを表わす信号を記憶装置17内の
データ構造CURSOR158を置く。カーソルは、指定された
データベース内の関係の少なくとも1つからなるターゲ
ット(ターゲット)に対して定義される。このターゲッ
トは、基底テーブル(別の記憶されたファイルにより記
憶場所において表わされる)または表示(表示とはそれ
自体で存在する如何なる権利も持たないテーブル〔関
係〕である)の何れかである。 DO QUREY108 本文の記述の目的のため、呼出しプログラム内のモジ
ュールDO QUREY108はWZOPENCURSERモジュール110およ
びDO PXIモジュール112の呼出しのためデータ処理シス
テム10の制御を行なうのみである。 OPEN CURSOR モジュールWZOPEN CURSOR(@cursor,$qid)110
は、データ構造158における信号により定義されるカー
ソルを開放(オープン)するためデータ処理システム10
を制御するのに用いられる。カーソルにより定義される
多くのレコードを発生させるためカーソルを開放する手
続はデータベース管理技術においては一般に周知であ
り、本文では詳細には記述しない。 本文に述べる特定の実施態様においては、WZOPENCURS
ORモジュール110を表わす信号の制御下で作動するデー
タ処理システム10は、@cursorによって指示されるカー
ソルと対応してデータ構造QUERY162に対して記憶装置17
内のスペースを割当てる。1つのデータ構造QUERYは1
つのカーソルと対応している。データ構造QUERY162は、
@qryによって指示され、システム・バッファ168を指定
するポインタ@sysbufと、当該関係オペレータまたは最
も後に使用されたスクリーンに従って操作の間用いられ
るスクリーン・フォーマットを指定するポインタ@pxis
crと、表示リスト176(以下に述べる)を指定するポイ
ンタ@seen−list等と、をそれぞれ表わす信号を保有す
る。更に、データ構造QUERY162は、その全てについて以
下に述べる「oper」と呼ばれるデータ要素、リスト・バ
ッファと呼ばれるバッファおよび「ソース」と呼ばれる
データ要素に対する記憶場所を提供する。 WZOPEN CURSORモジュール110の制御下にあるデータ
処理システム10は、QUERYに対する識別子「qid」を戻
す。WZOPEN CURSORモジュール110の制御下におけるこ
れ以上の操作において、データ処理システム10はカーソ
ルにより定義される如くデータベース150からの物理的
なレコード実現値の検索において使用されるべきアクセ
ス式を選択するが、アクセス方式を選択するプロセスは
データベースの管理技術においては周知であり、以下本
文においては記述しない。 DOPXI112 DO QUERYモジュール108を表わす信号の制御下で作動
するデータ処理システム10は、DOPXI(スクリーン#)
モジュール112を呼出し、本発明とは関連しないある操
作を行なった後、WZPXI($スクリーン・フォーマッ
ト、スクリーン#、$qid)モジュール114を呼出す。
「$スクリーン・フォーマット」は参照すべきスクリー
ン・フォーマットを指定するパラメータであり、「スク
リーン#」はスクリーン・ファイル内の特定のスクリー
ン・フォーマットに対する標識である。スクリーン・フ
ァイル151と関連して述べたように、アクセスすべき初
期のスクリーンの名前は呼出しプログラムにより与えら
れ、この名前を表わす信号がスクリーン・ファイル151
のPDEFテーブル153内の「初期のスクリーン」において
格納される。以降の操作においてアクセスされるスクリ
ーンの名前は次項において説明される方法で呈示され
る。前に述べたように、「qid」は参照のための識別子
である。WZPXIによる操作については以下に記述する
が、この操作はデータ構造ATAB172(第6図)内にこの
ような値を表わす信号を置くことにより値を戻す。この
値は、加算、削除または戻りの操作の1つの表わし、他
の操作もまた行なうことができる。更に、WZPXIはポイ
ンタ$oper nameにより指定される記憶要素170内の文
字「oper−name」を表わす信号を戻すことができ、この
ポインタは必要に応じて呼出しプログラムによって与え
られる。ATAB172および「oper−name」からなる文字の
一方もしくは両方はこの他のテストのための呼出しプロ
グラムから使用可能であり、これらは本発明とは関連の
ない異なる状況において使用することができる。 WZPXIから戻ると同時に、DOPXIの制御下にあるデータ
処理システム10はデータ構造ATAB172内のWZPXIから戻さ
れた値を表わす信号のテストを行なう。動作「加算」、
「修正」または「削除」のため、データ処理システム10
は、DOPXIの制御下で適当なプログラム・モジュール(D
OUPDATEモジュール126およびモジュール126により呼出
されるWZINSERT、DELETE、MODIFYモジュール115ととし
て示される)を表示された操作の実施のため呼出す。 WZPXI114 WZPXI($スクリーン・フォーマット、クリーン#、
$qid)モジュール114の制御下で、データ処理システム
10はPDEFテーブル153における「初期のスクリーン」に
より指示されるスクリーンのスクリーン・タイプ(WZPX
Iの最初の対話のための)またはqry.@pxiscrにより指
定されるスクリーンのスクリーン・タイプ(それ以降の
対話のための)を表わす信号をテストする。 もしスクリーン・タイプがLISTまたはDISPLAYの何れ
かであるならばスクリーン・タイプがSELECT(以下にお
いて延べる)である確率を暫時無視して、WZDISPモジュ
ール124が呼出される。WZDISPモジュール124による操作
については以下に説明するが、このような操作の間、カ
ーソルによって定義される1つ以上のレコード実現値の
表示がDISPLAY(1つの発生)またはLIST(多くの発
生)のスクリーン・フォーマットの何れかにおいて表示
される。このような操作が完了すると、信号は端末のユ
ーザによってPFキーの操作により選択される操作を表わ
す記憶要素qry.operに置かれている。 データ処理システム10がWZDISPモジュール124から戻
ると、WZPXIモジュール114に従って更に作動して、記憶
要素qry.action(qry.oper内部の)に格納された信号を
テストする。ある動作(以下に述べるSELECTスクリーン
への切換えを含む)はWZPXIモジュール114に従って更に
作動するデータ処理システム10によって実行することが
でき、このような作動は切換え動作を保持するためのqr
y.@psiscrおよびqry.pxiscr#のリセット動作を含む。
あるいはまた、WZPXIモジュール114に従って更に作動す
るデータ処理システム10はデータ構造QUERY62から$ope
r−nameにより指示される場所170に対してqry.oper−na
me(qry.operの内部)を表わす信号をコピーし、この動
作を表わす信号をデータ構造ATAB172へ置き、qry.sours
eをセットして電流ISPLA有スクリーンを介する選択、カ
ーソルからLISTスクリーンを経由する選択、マークされ
たスクリーン・リストによりLISTスクリーンを介する選
択、またはSELECTスクリーンを介する選択の何れかを表
示する。$oper−nameおよびATAB172における信号によ
り表わされる操作は、加算、修正、削除または戻りであ
ろう(操作が選択である確率については以下に述べるこ
とにする)。 WZDISP124 パラメータ$qidおよび$starting−lr#に関するWZD
ISPモジュール124に従って作動して(lr#=照会リスト
/バッファに格納されたリスト・レコード番号、starti
ng−lr#はスクリーンの状態に基づいてWZPXIにより与
えられる)、以下に述べるようにデータ処理システム10
はモジュールWZSCRLOD($qid.@scr)116を呼出して表
示するためのリストを完了し、次いでWZRETRIEVE(qry.
sourse)モジュール118を呼出して表示されるべきレコ
ード実現値を得る。WZRETRIEVEによる作動については以
下に述べることにする。LISTスクリーンについては、WZ
RETRIEVEが繰返し呼出され、ある充填状態のスクリーン
ロードが(スクリーンに対するPSMP154におけるスクリ
ーン制限信号によって定義される如く)検索されるか、
あるいは検索すべきレコード実現値がこれ以上存在しな
くなるまで、即ち、カーソルにより定義される全てのレ
コード実現値が検索されるまで、レコード実現値は一時
に一回ずつ検索される。各レコード実現値が検索される
と、そのキーを表わす信号は表示リスト176に置かれ
る。 WZRETRIEVEモジュール118から戻ると同時に、WZDISP
モジュール124に従って更に作動するデータ処理システ
ム10はWZSCRIOモジュール120を呼出して検索されたレコ
ード実現値の表示を行なわせる。WZSCRIO120に従う動作
については以下に述べる。WZSCRIOモジュール120から戻
ると同時に、WZDISPモジュール124に従って作動するデ
ータ処理システム10は、照会動作(qry.oper)において
格納された信号をテストする。 もしこの動作がDISPLAYからLISTのフォーマットへの
切換え(PFキー204−16即ち第13図のDISPLAYフォーマッ
ト402と同時に戻りの操作により選択される)、もしく
はLISTからDISPLAYフォーマットへの切換え(キーボー
ド20上の入力キー206の操作により選択される、第8図
のLISTフォーマット)であるならば、データ処理システ
ム10はqry.@pxiscrおよび@scrをリセットして新たな
スクリーンを指示し、標識qry.pxiscr#を用いてスクリ
ーン・フォーマット間の切換えを追跡する。このような
切換え操作のため、この時リセット・ポインタにより示
されるスクリーン・フォーマットのスクリーン・タイプ
に応じて、WZDISPおよびこれから呼出されたモジュール
に従って更に作動するデータ処理システム10は適当なス
クリーン・フォーマットにおいて検索されたレコード実
現値(単数または複数)の表示を行なう。 もし照会動作における動作が「次の」、「前の」、
「最初の」、「最後の」、動作であれば、WZDISPモジュ
ール124に従って作動しながら、表示されたスクロール
操作がデータ処理システム10により実施される。「次
の」または「前の」動作の場合には、表示されるべきレ
コード実現値の表示の次のまたは前のスクリーンロード
を生じ、「最初の」または「最後の」動作は表示される
べき最初のあるいは最後のスクリーンロードを生じる。
もし前のスクリーンロードが表示されるならば、レコー
ド実現値は表示リスト176に格納されたキーを用いて見
出され、さもなければレコード実現値はデータ構造QUER
Y162を用いて検索されなければならない。これらの操作
の結果、レコード実現値の表示されたリストのスクロー
ルが生じる。 データ処理システム10をWZDISPモジュール124から戻
すことなく、ユーザがLISTおよびDISPLAYスクリーン・
フォーマット間のスクロールまたは切換えの制限のない
連続的な操作を選択することができることは明らかであ
ろう。PFキーのReturnは、もしあれば前に表示されたス
クリーン・フォーマット(qry.pxiscr#により示される
如き)に対する戻りを生じるか、あるいは呼出しプログ
ラムへの戻りを生じる。 モジュールWZSCRLOD116 モジュールWZSCRLOD($qid.@scr)116に従って作動
するデータ処理システム10は@scrにより指示される特
定のスクリーン・フォーマット166に対して適当なPOPテ
ーブル156およびPSMP154をアクセスして、表示のための
リストの右側の部分を充填する。次に第15図において
は、表示のためのリストの左側部分がスクリーン・ファ
イル151内のデータ構造155によって与えられ、スクリー
ン上に表示される各表示フィールド毎に、場所(スクリ
ーン上の行および列)、長さおよび適当な情報が与えら
れる。この右側の部分はデータ構造174によって与えら
れ、各表示フィールド毎にレコード実現値についての格
納場所、長さ、種類および他の適当な情報が与えられ
る。部分174はこのように表示すべきレコード実現値の
アドレスを与え、1つのLISTスクリーン・フォーマット
毎に、これらのアドレスがqry.「リスト/バッファ」に
対するものであるが、DISPLAYスクリーン・フォーマッ
トにおいては、アドレスはシステム・バッファ168に対
するものである。見出し303の如き属性の名称、表示の
表題310の如き表示名、特定のスクリーン・フォーマッ
ト166の表示の間選択可能な操作に対する適当なPFキー2
04および他の情報の表示がスクリーン・フォーマット16
6によって行なわれる。 WZRETRIEVEモジュール 118 WZRETRIEVE(照会ソース)モジュール118に従って作
動しながら、データ処理システム10はqry.ソースにおけ
る信号を勘案しつつ、オペレーティング・システム100
のアクセス法102の呼出しを行なう。アクセス法102は、
WZRETRIEVEモジュール118に従って作動するデータ処理
システム10により与えられる信号に応答して、データ処
理システム10をして、指示されたデータベース150内の
ターゲットからカーソルにより指定される1つのレコー
ド実現値を検索させ、かつシステム・バッファ168にお
ける検索されたレコード実測値を表わす信号を格納させ
る。 システム・バッファ168は唯一のレコード実現値しか
保持しないため、LISTスクリーン(複数のレコード実現
値を表示する)に対して、検索された発生を表わす信号
がWZDISPモジュール124に従って作動するデータ処理シ
ステム10によってqry.リスト/バッファに対してコピー
される。WZRETRIEVEは、カーソルにより定義されるレコ
ード実現値がもはや存在しなくなるまで、またはPSMP15
4におけるスクリーン制限標識により形成される如きス
クリーンの充填に充分なレコード実現値が検索されるま
で繰返して実行される。 WZSCRIO WZSRIO(@qry=$qid.@scr)モジュール120に従っ
て作動しながら、データ処理システム10はWZFORMS(@f
or−display−list)モジュール122を呼出して、ユーザ
に対する表示のため@scrにより指示されたスクリーン
・フォーマットと表示のためのリスト(第15図)によっ
て指示されるレコード実現値を組合せる。データ処理シ
ステム10のWZFORMSに従う作動については以下に述べる
が、このような作動が完了すると、for.fpf−キーに対
して信号が置かれ、格納されたスクリーン映像がユーザ
の入力信号に対応して修正される。WZFORMSから戻ると
同時に、更にWZSCRIOに従って作動するデータ処理シス
テム10は表示されたスクリーンに対するPOPテーブル・
データ構造156内の信号に対する標識として(以下に述
べるように)for.fpf−キーに格納された信号を用い
て、これからPFキーの番号と対応する「操作の名前(op
er−name)」および「動作(action)」を含む要素「op
er」を表わす信号をデータ構造QUERY162内の記憶要素qr
y.operに対してコピーする。 qry.operに格納された信号は、ユーザにより選択され
る操作を表わす結果および応答装置の出力信号である。 WZSCRIOモジュール120に従って更に作動するデータ処
理システム10は、以下に述べるように端末ユーザにより
指定されるレコードを(第11図に示されるようにリスト
の列「マーク」にフラッグをセットすることにより)マ
ークして表示のためのリスト176を修正する。処理シス
テム10はWZSCRIOモジュール120からWZDISPモジュール12
4へ戻る。 WZFORMSモジュール122 WZFORMS(@for−display−list@scr)モジュール12
2の制御下で、データ処理システム10は表示のためのリ
スト155/174におけるアドレスを表わす信号を用いてア
ドレス指定されたバッファからレコード実現値信号を得
て、これら信号をスクリーン・フォーマット166を修正
することによりその結果を生じる格納されたスクリーン
映像を画成するため、スクリーン・ファイル151の予め
定めた表示フォーマット信号と組合せる。LISTスクリー
ンに対しては、レコード実現値信号がqry.リスト/バッ
ファから取られ、DISPLAYスクリーンに対しては1つの
レコード実現値がシステム・バッファ168から取られ
る。 更にWZFORMSモジュール122の制御下で、データ処理シ
ステム10はオペレーティング・システム100を呼出し、
その表示制御信号に従って作動して、166に格納された
結果として生じるスクリーン映像の表示を行なうためデ
ィスプレイ18を制御する。更に、この表示中、データ処
理システム10はキーボード20を使用可能状態にする。コ
ンソール即ち端末のユーザはキーボード20を使用して入
力信号を生じる。 LISTスクリーン上ならば、ある特定のレコード実現値
の表示に続いてスクリーン位置マーカがユーザによって
位置決めされ、レコード実現値が指示されるべく取出さ
れる省略値によりPFキー204が操作される。あるいはま
た、ユーザ「X」はまたは1つ以上のレコード実現値に
続く他の文字を入力してこれを指示することができる。 ユーザにより与えられるキーボード信号は、格納され
たスクリーン映像を修正するため、オペレーティング・
システム100に従って作動するデータ処理システムによ
り解釈される。操作されるPFキーと対応する信号もまた
格納される。WZFORMSから戻った後、データ処理システ
ム10はWZSCRIOおよびWZDISPの制御下でユーザの入力し
たキーボード信号を、その表示が行なわれる検索された
レコード実現値のあるものの指示を行なう指示信号およ
び選択可能な複数の操作の1つの選択を行なう操作選択
信号と解釈する。選択可能な操作は各スクリーン・フォ
ーマット毎に画成されるが、常に戻り操作(Return)を
含んでいる。 更に、WZFORMSモジュール122に従って動作中のデータ
処理システムはPFキー番号を表わす格納された信号をFO
Rデータ構造164内のfor.fpf−キーに対するデータ記憶
要素に対してコピーする。 PFキーの信号がfor.fpf−キーに対してコピーされた
時、データ処理システムはWZFORMSモジュール122からWZ
SCRIOモジュール120へ戻る。 動作 これまでに述べたモジュールおよびデータ構造を表わ
す信号に従う動作においては、データ処理システムの端
末のユーザがアクセスすべきデータベースおよびその目
的(特定の基底テーブルまたは表示のため定義される)
のため使用すべきスクリーン・フォーマットを選択す
る。これは、キーボードを介しまたは呼出しプログラム
によって会話的に行なうことができる。データベース15
0およびスクリーン・ファイル151は、データ処理システ
ム10により開放され、これがDBUSERデータ構造173およ
びTCOMデータ構造160のための記憶スペースの割当てを
行なう。ユーザはカーソルにより示されるデータベース
に対する照会を方式化する。データ処理システム10はカ
ーソルを開放してデータ構造QUERY162に対する記憶装置
の割当てを行ない、データベース150からレコード実現
値を得るための方式を決定し、qidの定義を行なう。 スクリーン#により指示されるLISTスクリーン・フォ
ーマットと共にWZPXIに従って作動するデータ処理シス
テム10はWZDISP(qid)モジュール124を呼出す。WZDISP
に従って作動するデータ処理システム10は、WZRETRIEVE
(qry.ソース)を呼出し、これが次にオペレーティング
・システム100内のアクセス法102を呼出してカーソルに
より定義されるレコード実現値を表わすターゲット信号
から検索を行ない、これらをシステム・バッファ168に
格納する。LISTスクリーンにおいては、多くのレコード
実現値が検索され、その信号がqry.リスト/バッファに
格納される。 WZRETRIEVEから戻ると同時に、データ処理システム10
はモジュールWZSCRLOD116を呼出して表示のためのリス
ト155/174を完了し、次いでWZSCRIOモジュール120を呼
出し、このモジュールに従って作動するデータ処理シス
テム10がWZFORMSモジュール122の呼出しを行なう。WZFO
RMSに従って作動するデータ処理システム10は表示のた
めのリスト155/174におけるアドレス信号を用いて、LIS
Tスクリーン・フォーマット400を修正しこれにより結果
として生じる格納されたスクリーン映像を定義するた
め、qry.リスト/バッファ内に格納されている検索され
たレコード実現値信号と、スクリーン・ファイル151内
の166に格納されたLISTスクリーン・フォーマット400か
ら予め定められた表示フォーマット信号と、を組合わせ
る。 オペレーティング・システム100に従って作動するデ
ータ処理システム10は、この時、ディスプレイ18を制御
して定義されたその結果のスクリーン映像の表示を行な
う。この表示中、システム10はキーボード20を使用可能
状態にする。ユーザはキーボード20を用いて指示信号を
与え、その表示が行なわれる検索されたレコード実現値
のあるものの指示を行なうことができ、更にPFキーを操
作することにより、ユーザは操作選択信号を与えて、LI
STスクリーン上に表示される付勢可能な複数の操作の1
つの選択を行なう。 PFキーが付勢された時、あるレコードが指示されるも
のとすると、データ処理システム10はオペレーティング
・システム100に従って作動してユーザの入力信号と対
応するように定義されたスクリーン映像を修正する。更
に、データ処理システム10は付勢されたPFキーを表わす
信号を格納させる。 更にWZFORMSモジュール122に従って作動するデータ処
理システム10は、PFキー信号をFORデータ構造164内のデ
ータ記憶要素for.fpf−キーにコピーする。WZFORMSから
戻ると同時に、WZSCRIOモジュール120に従って更に作動
するデータ処理システム10は、LISTスクリーンと対応す
るPOPテーブル・データ構造156に対する標識としてfor.
fpf−キーに格納された信号を用い、これから付勢され
たPFキーと対応する「oper」の信号をデータ構造QUERY1
62内の記憶要素qry.operにコピーする。qry.oper−acti
onにおける信号はユーザにより選択された操作を表わす
関係オペレータ装置の出力信号である。WZSCRIOモジュ
ール120に従って更に作動するデータ処理システム10
は、表示のためのリスト176内のマーク・フラッグをセ
ットして、修正されたスクリーンの映像に表示されるよ
うに指示されたレコードをマークする。 WZSCRIOから戻ると同時に、WZDISPモジュール124に従
って更に作動するデータ処理システム10は、qry.oper−
action内に格納される信号をテストする。もしこの作動
が「次の」、「前の」、「最初の」、「最後の」、「戻
り」(表示からリストへ)または「表示」であるなら
ば、システム10はWZDISPモジュール124に従って作動し
ながら選択された作動を実行することができる。これら
の動作は、1つのセットを指示し選択された発生につい
ての修正および削除の如き操作を行なう前に所要のレコ
ード実現値の指示を得ることをユーザに許容するため、
ユーザが望む頻度および如何なるシーケンスにおいても
選択することができる。 もし動作が「次の」、「前の」、「最初の」、「最後
の」、表示からリストへのまたはリストから表示への
「戻り」のどれでもない場合には、データ処理システム
10はWZPXIモジュール114へ戻る。もしこの動作が「修
正」、「削除」または「加算」(またはPOPテーブルに
おいて定義されるが本文には記述しない他の動作)なら
ば、WZPXIモジュール114は呼出しプログラムに戻ってこ
の動作の解釈を行なう。本実施例に示される特定の呼出
しプログラムは、スクリーン・ファイル151からの適当
なスクリーン・フォーマットにより「修正」、「削除」
および「加算」操作を実行するためモジュール126およ
び115を呼出す。 もしユーザがLISTスクリーンにおいて1つ以上のレコ
ード実現値を指示して削除または修正を選択するPFキー
を付勢するならば、指示されたレコード毎の表示は更に
全てが表示されるまで表示されたスクリーン上に表示さ
れることになろう。 これまでに述べた操作の結果、キーボード20を介して
ユーザが指定する信号入力に従って呼出しプログラムに
より与えられる初期のカーソルから会話的に得られる指
定された関係が与えられる。指示された関係(1つの要
素の)は、上記のようにLISTスクリーンを介してユーザ
がレコード実現値の表示の次にスクリーン位置マーカを
置き1つのPFキーを付勢することにより定義でき、ある
いはまた指示された関係(1つ以上の要素の)は、1つ
以上のレコード実現値の表示の次にある文字を入力して
1つのPFキーを付勢することにより定義することができ
る。最後に、表示スクリーンが表示される間1つのPFキ
ーのユーザによる操作は表示される1つのレコード実現
値からなる指示された関係の定義をもたらす結果とな
る。更に、表示された選択可能な操作からユーザにより
選択された1つの操作を表わす出力信号が与えられる。
全てのこのような場合において、指示された関係は表示
リストにおける指示マークを含む「修正されたカーソ
ル」を表わす信号により指定される。このように、「修
正されたカーソル」および選択れた操作を表わす信号を
受取る呼出しプログラムに従うこの他の操作は、指示が
行なわれた方法とは無関係である。 SELECTスクリーン 指示される結果の関係を定義するための手段に加え
て、この技術によれば、特徴的に定義された結果の関
係、即ちデータベースの目標において明瞭に定義され存
在するレコードの発生の属性に照して定義される関係即
ち要素を、会話的に定義するための手段が提供される。
これは、既に述べた要素と共に、SELECTスクリーン・フ
ォーマット404およびWZSELECTモジュール128によって選
択される。 再び第7図によれば、更に別のプログラム・モジュー
ルWZSELECTモジュール128を表わす信号がデータ処理シ
ステム10内の記憶装置17のプログラム部分に与えられ
る。これまで述べたようにデータ処理システム10がWZPX
Iモジュール114に従って作動する時、装置10はスクリー
ン・ファイル151内のスクリーン#(qry.@pxiscrによ
り示される)により示されるスクリーンのスクリーン・
タイプ(モード標識)を表わす信号をテストする。もし
スクリーンがSELECTスクリーンならば、WZPXIモジュー
ル128を呼出す。もしLISTスクリーンが表示される間ユ
ーザがPFキー204−7を操作するならば、WZDISPモジュ
ール124に従う操作の間qry.@pxiscrがセットされてSEL
ECTスクリーンを表示する。WZPXIはqry.@pxiscr#の値
を用いてSELECTスクリーンとLIST/DISPLEYスクリーン間
の切換えを追跡する。 データ処理システム10は、入力パラメータ@qry.およ
び@cursorを表わす信号に関してWZSELECTモジュール12
8に従って作動し、WZSCRIOモジュール120を呼出してSEL
ECT(選択)スクリーン・フォーマット404(第13図)を
表示する。このフォーマットは、目標関係の名称および
目標関係に対する表示フィールドを含んでいる。WZSCRI
Oモジュール120に従って作動するデータ処理システム10
はWZFORMSモジュール122を呼出し、また本文に述べた方
法でこれと従って作動して目標の表示名310および部分3
06における表示フィールド名を含むSELECTスクリーン・
フォーマット404の表示を行なう。この表示名と表示フ
ィールド名は一般的な要素である。前に探索の基準とし
てカーソルの一部とされた属性(フィールド)の値はフ
ィールド名の次のSELECTスクリーン上に示され、残りの
フィールドは空の状態で示される。 前に入力された探索基準が空か表示があるかの如何に
拘らず、フィールドは開放要素であり、即ち、ユーザは
特徴的な要素をこの開放要素に入れることができる。ユ
ーザは所要のフィールドに対してスクリーン位置のマー
カを位置付けでき、またキーボード20のタイプライタ・
キー200(第5図)を用いて特徴的な信号を与えるため
このフィールドに対して値を入れることができる。表示
はこれに従って変更される。これは必要に応じて表示さ
れたフィールドの1つ以上に対して行なうことができ
る。ユーザにより開放要素に対して入力された特徴的な
値は新たな探索基準を与えて、指示されたデータベース
の目標関係におけるレコードの発生の属性に関してカー
ソルを更に細かく規定即ち特定化するのである。 最後に、ユーザは表示れた選択可能な操作と対応する
PFキーの1つを操作する。SELECTスクリーンにおける選
択可能な操作はリスト、削除および修正を含む。操作さ
れたPFキーを表わす信号は、前に述べた方法でfor.fpf
−キーに格納され、前に述べた方法でWZSCRIOモジュー
ル120に従って作動するデータ処理システム10は操作さ
れたキーに対する信号POP.operをqry.operにコピーす
る。 しかし、WZSELECTモジュール128に従って更に作動し
ながら、データ処理システム10はデータ構造CURSOR158
の信号を修正することにより新たなカーソルを取得して
表示された表示フィールドに対してユーザによる入力さ
れた特徴的値を反映する。次に、データ処理システム10
は元のカーソルを閉じ(図示はしないが技術的には公知
の適当なモジュールに従って呼出し且つ操作することに
より)、次いで、WZOPENCRUSORモジュール110の呼出し
を行う。モジュール110の信号に従って作動しながら、
データ処理システム10はこの新たな(前のものを修正し
た)カーソルと対応する新たなデータ構造QUERY162のた
め記憶装置の割当てを行なう。次に、データ処理システ
ム10はWZSELECTモジュール128からWZPXIモジュール114
に戻る。データ処理システム10はqry.@pxiscrにより指
示されたスクリーン・タイプを反映するようにqry.sour
seをセットする。 WZSELECTモジュールに従う操作の結果は、特徴的に定
義された、即ちデータベースの目標関係内のレコードの
発生において明瞭に示された属性に照して結果関係が会
話的に与えられることである。更に、データ処理システ
ム10によって結果関係について実施可能な諸操作を含む
表示された選択可能な操作からユーザにより選択される
操作を表わす出力信号が与えられる。 もし操作されたPFキーがLIST操作を選択したならば、
LISTスクリーンのスクリーン・タイプに表わすWZPXIが
再び画成されたカーソルにより画成されるレコードの発
生のLISTスクリーン上での表示のため、前記の方法でWZ
DISPモジュール124を呼出す。ユーザは、この時、再び
画成されたカーソルから得た関係を列挙的に定義するこ
とができる。もし操作されたPFキーが削除または修正を
選択したならば、再び画成されたカーソルにより指定さ
れるレコードの発生の表示が適当なスクリーン上で順次
行なわれて、データベースにおけるレコードの発生毎に
ユーザによってこのような動作を行なうことを許容す
る。 望ましい実施態様においては、この技術の関係オペレ
ータ装置は、キーボードを介して列挙的および会話的に
定義される結果関係の要素を提供する装置およびキーボ
ードを介して特徴的かつ会話的に定義される結果関係の
要素を提供する装置と共に、ユーザに対して表示される
複数の選択可能な操作から選択された操作を表わす出力
信号を生じる装置からなっている。しかし、ある結果関
係を提供する何れか一方の装置は他方がなくてもよく、
これによりリレーショナル・データベースの会話的な保
守における著しい利点が実現できる。 もし列挙的および特徴的に定義される両方の結果関係
を定義する装置が提供されるならば、WZPXIモジュール1
14は下記の一般的形態の命令を表わす信号を提供しなけ
ればならない(用語は標準的なプログラミング言語の用
語でなない)。即ち、set pxi−handled−action=yes loop while pxi−handled−action=yes: test screen teye if screen pointed to byqry.@px
iscr if type is SELECT,call WZSELECT (that will set qry.action) if type is DISPLAY or LIST,call WZDISP (that will set qry.action) test qry.action if action is select,List or Displey, get the appropriate sereen(and loop) else if action is other, set pxi−handled−action=no,(exit loop retut
n to DOQUERY この関係オペレータ装置の作動のため本文に述べたモ
ジュールを呼出した呼出しプログラムに従って作動しな
がら、データ処理システム10は選択されたPFキー操作を
表わす信号を@oper−nameから得ることができる。この
ような信号はまたデータ構造ATAB172においても与えら
れる(このような信号は、本文の記述とは関連がない理
由のため2つの形態で与える)。次いで、データ関連シ
ステム10は呼出しプログラムにより制御される如き更に
別の操作を続行する。 関係オペレータ装置は、キーボード20を介してユーザ
の信号入力に従って呼出しプログラムにより与えられる
初期のカーソルから会話的に得られる結果関係を提供し
た。この結果関係は、列挙する信号(第11図の表示のた
めのリスト176におけるマークとして表示される)を含
む「修正されたカーソル)によって指定された列挙的に
定義された関係であるか、あるいはデータ構造CURSOR15
8における修正されたカーソル信号によって定義され
る。特徴的に定義された関係の何れかである。 何れの場合でも、会話的に定義された結果関係はリレ
ーショナル・データベースの文脈において定義される如
き関係の特徴を有し、即ち関係について使用されるよう
に設計され構成された更に他の操作をこの結果関係につ
いて実施することができる。特に、この結果関係のレコ
ードはある関係におけるレコードの検索のため構成され
たモジュールの制御下で検索することができる。更に、
この結果関係は、これが定義された特定の方法によるこ
となくどんな要求された方法においても呼出しプログラ
ムによって修正することができ、呼出しプログラムを使
用された物理的な構造(キーボード、接触スクリーン
等)ならびに結果関係が列挙的にまたは特徴的に何れで
定義されたかとは切離されたものとする。このため、こ
のような結果関係の使用における大きな柔軟性をもたら
すものである。 次に第9図においては、この関係オペレータ装置が
「ブラックボックス」として概念的に示されている。こ
のブラックボックスに対する入力は、前に述べたように
呼出しプログラムによって与えられる(即ち、最初のス
クリーンがSELECTスクリーンである時特定の場合にWZSE
LECTモジュール128により定義される)カーソル信号、
および予め定められたスクリーン・ファイル151に格納
された表示フォーマット信号である。キーボード20から
の信号は更にこのブラックボックスに対して入力され、
これがある選択された操作(PFキーの操作により選択さ
れるためユーザに対して呈示されるものから選択され
た)と共に、ある結果関係を表わす信号を生じる。この
結果関係を表わす信号は、データ構造CURSOR158および
表示のためのリスト176に(列挙的に定義された結果関
係に対して)格納され、選択された操作を表わす信号は
データ構造ATAB172および$oper−name170に格納され
る。 この発明の関係オペレータ装置は実際にある入力され
た関係(カーソルにより定義された)をある結果関係に
変換するように作動するため、このオペレータ装置はリ
レーショナル・データベースのテーブルに関する動作に
対して定義される公知の関係オペレータ、即ちPROJEC
T、SELECTおよびJOINと非常に類似している(他の関係
オペレータもまた種々の著者によって定義されてい
る)。ある関係オペレータの必要な特徴は、これがそれ
自体ある関係オペレータによって演算できる他の関係を
生じるためある関係について演算することである。この
特徴は、さもなければあり得る関係のセットがある関係
オペレータの演算の下で閉じられる命令文として(数学
的用語で)表わされる。この結果関係は、データベース
内の物理的なまたは基底テーブルである必要はないがあ
る関係の定義と一致しなれければならないことに留意さ
れたい。 この技術のオペレータ装置は、このような要件と一致
するもので、従ってある関係オペレータとして見做すこ
とができる。このオペレータ装置のこのような特徴は、
この装置を一連の関係オペレータの一部として用いるこ
とを可能にする。更に、このことは、通常の方法でカー
ソルにより定義されるどんな関係のレコードでも取出す
ために使用される同じ操作を用いて結果関係のレコード
をデータベースから取出すことを可能にするものであ
る。このため、プログラミングの経済性および操作の簡
素化を提供するのである。 しかし、標準的な各オペレータは、ある関係に用いら
れる時、カーソルにより定義される最初の関係内のレコ
ードの属性の1つの値によって決定されるある結果即ち
結果的な関係である要素たり得ることを暗黙のうちに規
定する。即ち、この結果の関係における要素は、データ
ベース中に明示的に存在するレコードの特徴即ち属性に
よって「特徴的に」定義されるのである。例えば、毛髪
の色のみがこの関係における属性として定義されたなら
ば、顧客の表から緑色の毛髪を有する顧客を選択するこ
とを可能にするものである。 対照的に、この技術のオペレータ装置は、「列挙的
に」即ちキーボードを介してユーザによって列挙により
定義される要素である結果関係の定義を行ない、従って
このような要素は格納されたデータベースにおいて明示
的に定義され存在するレコードの発生の属性とは独立で
あるがおそらくはユーザのみが知るレコードの基礎とな
るエンティティーのある特質に依存し得るものである。 従って、この技術の斬新なオペレータ装置は、ユーザ
により列挙されるある属性の組を会話的に構成し、その
後この組をこれから結果的に生じるデータ操作のあらゆ
る利点を以てこの関係の種類の一要素として取扱うこと
を可能にする。従来技術のデータ管理装置においては、
列挙された要素のテーブルはこのような目的のため構成
された(アプリケーション・プログラムにおける)明瞭
なプログラミングによってのみ構成することができ、従
って構成されたテーブルは組の関係の一要素として取扱
うことができない。その結果、例えば、レコードは関係
におけるレコードを取出すため使用される同じ操作を用
いて取出すことができず、むしろ別のプログラム・モジ
ュールをこの目的のために提供しなければならない。 この技術のオペレータ装置は更に、データベースにお
いて明瞭に定義され存在するレコードの発生の属性に照
して特徴的に定義される要素である結果関係の会話的な
定義を行ない、このような会話的な定義はこれにより、
従来技術の手段を用いて可能であったよりも かに簡単
になる。 この技術の特定の実施態様は、ウオング社のVS−100
(仮想記憶型の)コンピュータで実行する特定のデータ
構造の定義およびプログラム・モジュールからなってい
る。 (B)リレーショナル・データベースからの関係レコー
ドの検索 次に説明する技術は、データ処理システムに
関し、特にこのようなシステムの記憶装置に格納される
リレーショナル・データベースの管理のための手段の作
動に関する。この技術は更に、このようなデータベース
の会話的な使用および更新を容易にする手得に関する。 技術的背景 この検索技術は、表示装置およびキーボードの如き入
力信号装置を提供する1つ以上の端末即ちコンソールを
備え、1つ以上のリレーショナル・データベースとして
形成された物理的なレコードを格納領域に提供するデー
タ処理システムにおいて使用される。 上記のように、データ処理システムおよびデータベー
スの個々の最終的なユーザには、プログラマではない事
務要員の如きユーザが含まれる。このようなユーザは、
データベースに格納されたレコードの表示を見て、特定
のレコードまたはレコードの一部を見るため選択し、デ
ータベースにおける物理的なレコードの削除または修正
を行ない、あるいは新たな物理的なレコードをデータベ
ースに追加するためシステムの端末を使用することがで
きることを要求する。このような目的のため、物理的な
レコードは、物理的な記憶装置において選択アクセスさ
れまた検索(コピー)されねばならず、また検索された
レコードの表示をある予め定めた表示フォーマットにお
いて端末の1つでユーザに対して表示されなければなら
ない。 格納されたデータベースのこのような使用を可能にす
るためには、データ処理システムを制御するため使用さ
れる時、物理的なレコードの表示ならびにユーザによっ
てキーボードを介して入力される信号の表示をディスプ
レイ上に特定のフォーマットで表示させる格納されたコ
ード化命令信号がデータ処理システムに提供されなけれ
ばならない。更に、データ処理システムを制御するため
使用される時、ユーザによって入力される信号の表示を
行ないかつこのような入力信号に応答して格納されたデ
ータベースの物理的なレコードの検索および修正を行な
わせる命令信号が提供されねばならない。 特定のデータベースにおける特定の使用のため設計さ
れたこのような命令は、共に「データベースのアプリケ
ーション・プログラム」として知られるある種類のプロ
グラムの1つ、即ちデータ処理システムの最終ユーザに
よりある特定の格納された物理的なデータベースについ
て要求されるアプリケーションを実施するためこのユー
ザによって使用されるプログラムからなっている。色々
な種類の情報を表わす物理的なレコードを含むデータ処
理システムにおいて格納される多くのデータベースがあ
る得る(一般にはある)。例えば、被雇用者が就労する
部所についての関連情報と共に、名前、部所、給料、技
能、職歴等の被雇用者についての情報を含む個人的なデ
ータベースがある得る。日付、価格および支払履歴と共
に、会社の顧客およびその会社に対する指令についての
情報を含む売上データベースがあり得、数量と共に会社
の納入業者および彼等により納入される品目についての
情報および製品におけるこれら品目の用途についての情
報を含む調達データベースであり得る。 このようなデータベースにおいてはいくつかの個々の
ユーザがあり得、各ユーザは特定のデータベースにおけ
る情報の一部のみに関心を有するかも知れない。 一般に、このようなユーザが各データベースをアクセ
スして使用することを可能にするためいくつかの個々の
アプリケーション・プログラムが提供されなければなら
ない。更に別の各データベースは、一般に、更に別の複
数の別個のアプリケーション・プログラムを必要とす
る。あるアプリケーション・プログラムの作成は、一般
に、専門のアプリケーション・プログラマによって数週
間または数箇月の作業を要し、更にその後使用において
信頼できる状態となりかつ比較的エラーが少ない状態と
なるようにプログラムにおけるエラーを検出してこれを
排除するためには更に数週間が必要とされる。 このようなアプリケーション・プログラムの提供は、
データベースの保守コストにおける重要な要素であるこ
とは明らかであろう。従って、簡単、迅速かつ安価な方
法でこのようなプログラムを作成するための手段を提供
することが望ましいことになる。 更にまた、このようなプログラムおよびデータベース
が、その最終ユーザではない専門のプログラムによって
作成される場合、プログラマはしばしば最終ユーザの目
的について完全に理解せず、その結果アプリケーション
・プログラムはユーザが望み得る程その必要性に充分適
合するものとはならない。ユーザ自身がアプリケーショ
ン・プログラムを作成でき、このためその目的に緊密に
適合し得ることが望ましい。このようなユーザの大半は
プログラマではないため、このことはこれまで容易に達
成されなかった。 特にこのようなアプリケーション・プログラムの作成
の負担が大きく時間を要する特質は、データベースのユ
ーザがある特定の組のレコードの発生の要素の監視から
関連した組のレコードの発生の要素の監視へ転換を行な
うことを可能にする手段の提供にある(関係の性質につ
いては、以下本文において更に詳細に説明する)。この
ような転換は、あるアプリケーション・プログラムにお
いてしばしば要求されるものである。このような転換を
可能にする簡単かつ経済的な手段の提供が望ましいもの
となる。 従って、この技術の目的は、簡単かつ迅速な、安価な
方法で、かつ会話的であって手順によらない方法でこの
ようなアプリケーション・プログラムを作成するための
手段を提供することにある。更に別の目的は、アプリケ
ーション・プログラムを作成することをデータベースの
ユーザ自身が可能である手段の提供にある。他の目的
は、ある第1の組のレコードの諸要素の監視から関連し
た組のレコードの諸要素の監視への転換を行なうことを
データベースのユーザに許容するこのようなアプリケー
ション・プログラムの簡単かつ経済的な手段の提供にあ
る。 検索技術の簡単な説明 格納されたリレーショナル・データベースにおける宛
先の関係から、初めの関係のレコードの発生と関連した
レコードの発生を表わす信号を検索する方法は、データ
ベースにおける特定の関係の間における関係に対して特
定の関係と共通のある関係フィールドの仕様をフィール
ドの仕様を含む関係の属性を表わす格納された信号を提
供し、初めの特定の関係および初めの関係が関与する関
係の選択に応答して前記の格納された関係の属性信号を
アクセスし、前記関係の属性に応答してある宛先の関係
として他の特定の関係に対して定義された一般的カーソ
ルを表わす一般的なカーソル信号を生じ、この一般的カ
ーソル信号を作業用記憶域に格納し、初めの関係におけ
るある特定のレコードの発生のオペレータによる選択を
表わす信号および前記オペレータからの操作選択信号に
応答して完了したカーソルを形成するため前記の一般的
カーソルにおける場所に対して特定の前記レコードの発
生からの特定の関係のフィールドの値をコピーし、格納
されたデータベースにおいて前記の完了したカーソルに
応答して、その完了したカーソルにより定義される宛先
関係のレコードの発生信号をアクセスし、このアクセス
された宛先の関係のレコードの発生を作業用記憶域に格
納する工程からなっている。 望ましい実施態様においては、前記方法は、宛先の関
係のレコードの発生に関して実施できる複数の選択可能
な操作の表示と共に格納された宛先関係レコードの発生
信号を表示する工程を更に含んでいる。 この技術の別の特質によれば、格納されたリレーショ
ナル・データベースにおける宛先の関係から、初めの関
係のレコードの発生と関連したレコードの発生を表わす
信号を検索するレコード検索装置が設けられる。この装
置は、データベースにおける特定の関係の間における関
係について、前記の特定の関係と共通の、関係フィール
ドの仕様を含む関係の属性を表わす格納された属性信号
を提供する格納装置と、初めの特定の関係およびこの初
めの関係が関与する関係の選択に応答して格納された前
記関係の属性信号をアクセスする装置と、からなってい
る。 前記のレコード検索装置は更に、前記の関係の属性に
応じて、宛先の関係として他の特定の関係に対して定義
された一般的カーソルを表わす一般的カーソル信号を生
成する装置と、この一般的カーソル信号を作業用記憶域
に格納する装置と、前記の初めの関係におけるある特定
のレコードの発生のオペレータによる選択を表わす信号
および前記オペレータからの操作選択信号に応答して1
つの完了したカーソルを形成するため前記の特定のレコ
ードの発生から前記の一般的カーソルにおける場所へ前
記の特定の関係のフィールドの値をコピーする装置と、
を含んでいる。更に、このレコード検索装置は、前記の
完了したカーソルに応答してこの完了したカーソルによ
り定義される宛先関係レコードの発生信号を格納された
データベースにおいてアクセスする装置と、このアクセ
スされた宛先関係レコードの発生信号を作業用記憶域に
格納する装置と、を含んでいる。 望ましい実施態様においては、前記格納装置は更に、
データベースにおけるある関係についてある関係の名前
を含む格納された記述子信号と、関係が関与する関係毎
の関係識別子信号とを提供し、この関係識別子信号は対
応する関係に対する格納された属性信号に対する標識と
なる。格納された属性信号は更に、前記関係により関連
付けられた特定の関係の名前を表わす名前信号を含んで
いる。 前記のレコード検索装置は更に、データベースにおけ
る関係の名前の最初の表示を制御する装置と、この最初
の表示の間に初めの関係の名前のオペレータの選択に応
答して前記記述子信号における対応する関係識別子信号
をアクセスする装置と、を含み、この格納された関係の
属性信号をアクセスする装置はアクセスされた関係の識
別子信号に応答して適当な格納された関係属性信号をア
クセスする。前記のレコード検索装置は更に、前記のア
クセスされた属性信号に応答して初めの関係と関連付け
られたある特定の関係の名前の表示の次の表示を制御す
る装置と、この次の表示の間1つの宛先関係として示さ
れた特定の関係の名前のオペレータの選択に応答して、
初めと宛先の関係の間における関係に対する属性識別子
を取得する装置と、この取得された属性識別子に応答し
て関係属性信号をアクセスする装置と、を含み、前記生
成装置はアクセスされた前記属性信号に応答する。 更に、望ましい実施態様においては、前記格納装置は
更に、選択可能な初めの関係のレコードの発生と選択可
能な操作の名前の表示のための修正可能な実行時間の表
示フォーマットと、を表わす格納されたフォーマット信
号を提供し、また選択可能な操作毎に関連した格納制御
信号を提供する。この格納された属性信号は更に関係の
名前を含んでいる。このレコードの検索装置は更に、次
の表示の間に初めの関係のオペレータの選択に応答して
前記関係の名前により識別される更に別の選択可能な操
作を表わすため格納されたフォーマット信号を修正する
装置を含んでいる。このレコード検索装置は更に、ある
宛先の関係のオペレータの選択に応答して、前記の別の
選択可能な操作と関連しかつ格納された一般的カーソル
信号に対するカーソル標識を含む制御信号を生じる装置
と、この生成された制御信号を格納する装置と、を含ん
でいる。コピーを行なう前記装置は、実行時間のフォー
マット信号に従って表示中初めの関係のレコードの発生
および関係の名前のオペレータの選択に応答してカーソ
ル標識をアクセスする。 更に、望ましい実施態様においては、格納された属性
信号は更に、前記関係により関連付けられる特定の各関
係の親または子の関係の状態と昇順の関係の名前と降順
の関係の名前の表示を指定する状態指定信号と、関係の
構成の状態を有する初めの関係レコード発生と共に表示
するための関係の昇順の名前をアクセスし、かつ関係の
親の状態を有する初めの関係のレコードの発生と共に表
示するための関係の降順の名前をアクセスする名前選択
装置と、を含んでいる。格納されたフォーマット信号を
修正する前記装置は前記名前の選択装置に応答する。 他の目的、特徴および利点については、この技術の望
ましい実施態様の以降の記述を図面と共に照合すること
により明らかになるであろう。 検索技術の詳細な説明 データ処理システムの概要 次に図面において、特に第16図においては、データ処
理システム710は、主記憶装置714を含むプロセッサ712
を有する。二次記憶装置716は、1つ以上のディスクの
形態で提供される。主記憶装置714および二次記憶装置7
16は一緒に記憶装置717を構成している。この技術の記
述は、それ自体は、データ処理システムの管理技術にお
いて周知の如く主記憶装置と二次記憶装置間にプログラ
ムまたはデータの一部を表わす信号を移動する方法の詳
細に関するものではなく、この技術はこれに関するもの
でもない。記憶装置717の全ての部分における信号がプ
ロセッサ712から使用できるものと仮定しよう。 プロセッサ712に対して結合された1つ以上の端末即
ちコンソールは、ディスプレイ装置718としてのCRTスク
リーンおよび信号入力装置720としてのキーボードを提
供する。マウス、接触スクリーン、音声作動装置等の如
き他の信号入力装置は、この技術の対象とされる。もし
この技術が大型データ処理システムにおいて実施される
ならば、装置内には入出力プロセッサの如き他のプロセ
ッサが存在し得、本文において「プロセッサ」により行
なわれる操作は実際にこのようなプロセッサ間で分担す
ることができる。このような細部は、この技術の範囲に
影響を与えるものではない。キーボードおよびPFキー 次に第17図においては、キーボード720は、スペース
・バー902を有する全体的に900で示されるタイプライタ
・キーボードの通常のキーを提供する。キーボード720
の最上段には4つのグループに配列された16のキー904
があり、これらのキーはPF(プログラム機能)キーと呼
ばれる。その各々は1から16までの番号が付され、その
割当てられた番号を表示する。シフト・キーを使用する
と、これらのキーは32の可能なプログラム機能を提供す
る。更に、キーボード720は1つの入力キー906とスクリ
ーン位置マーカ制御キー908のパッドを提供する(スク
リーン位置マーカは更に一般的には「カーソル」と呼ば
れるが、この用語は、リレーショナル・データベースか
ら多くのレコードを取出す際に用いられる「カーソル」
との混乱を避けるため、この説明においてもこの要素に
対して用いない)。 記憶装置717 以降の記述においても、「@」で始まる単語はデータ
構造または記憶装置717内の諸要素に対するポインタ名
とし、「$」で始まる用語は特定のプログラム要素に対
するパラメータ名とし、「#」で終る単語はデータ構造
におけるリストまたはセット内の要素に対する標識名と
する約束に従う。あるデータ構造内の要素は、データ構
造名で始まる単語(またはその略号)の後にピリオドが
続くことにより命名され、例えば「qry.source」とは
「ソース」と呼ばれデータ構造「QUERY」内に置かれた
記憶要素(またはある場合には、このような記憶要素に
格納された信号)である。「DO」で始まる単語は呼出し
プログラム内のモジュールの名前であり、「WZ」で始ま
る単語は呼出しプログラムにより呼出される外部手続名
である。 データ処理システム710の記憶装置717は、プログラム
記憶装置およびデータ記憶装置に対して概念的に分割さ
れると考えられる。 記憶装置717のプログラム記憶装置(第19図)には、
この技術の一部を構成せずどんな所要の構成でもよい
が、記憶装置717の読出しおよび書込み(即ち、信号の
授受)の制御装置710に適する装置と、記憶装置717にお
けるデータベースからレコードの発生を検索し、データ
ベースにおけるレコードの発生を修正しあるいは削除
し、且つデータベースに対して新たなレコードを追加す
るためデータ処理システム710の制御に適するアクセス
方法802とを提供しなければならないオペレーティング
・システム800を表わす信号が提供される。更に、オペ
レーティング・システム800はディスプレイ718およびキ
ーボード720の制御のためのプログラムを含まねばなら
ず、また特に、キーボード720に対して格納されたスク
リーン像を表わす信号を送り、キーボード入力信号を受
取り、これに従って格納されたスクリーン像を修正し、
キーボード入力信号のあるものを更に格納することによ
り呼出しプログラムにおける適当な指令(「スクリーン
の書込み/読出し」)に応答できなければならない。 呼出しプログラム プログラムの記憶装置717は、更にデータ処理システ
ムの作動のためのプログラミング要素を呼だす「呼出し
プログラム」を表わす信号を提供する。第19図に示され
る実施態様においては、この呼出しプログラムは「PACE
RUN」と命名されるが、もし略々PACE RUNについて記
述される方法で呼出し機能を達成する手段を提供するな
らば、他のプログラムもまた呼出しプログラムとするこ
とができる。特に、第20図のDC定義プログラム・モジュ
ール500およびアプリケーション形成プログラム・モジ
ュール508もまたは呼出しプログラムである。 記憶スペースが第18図および第19図に割当てられた状
態で示されるデータ構造およびモジュールについては、
本文の(A)「データベース管理装置」において詳細に
記述されている。 検索技術の特徴 この検査技術の第1の特徴に従えば、(A)において
説明した関係オペレータ装置は、データベース保守アプ
リケーション・プログラムの会話的構築及び実行のため
に、1以上のスクリーン・ファイル及び1以上のデータ
ベースに関し順次採用される。 この検索技術の特質による動作については、最初に概
要を述べ、次いで更に詳細に記述することにする。第20
図を参照されたい。この概念図においては、あるプログ
ラム・モジュールの連続する制御下で、記憶装置717の
作業用記憶域およびデータベースの記憶装置に関してデ
ータ処理システム710の作動が示されている。このよう
な作動中、各プログラム・モジュールを表わす信号はプ
ログラム記憶装置からコピーされて、所望の物理的操作
を行なうためにシステム710の色々なハードウエア要素
の物理的状態を制御するために用いられる。同図におい
ては、簡単にするため、データ処理システムはそれ自体
明瞭に示されない。しかし、「アクセス」として示され
る線は記憶装置717において呈示された記憶構造を読出
す(即ち、それから信号を得る)ためのプロセッサ712
による操作を表わし、「構成」として示される線は記憶
装置717において呈示される記憶構造の割当ておよび書
込み(即ち、それに対する信号の授与)のためのプロセ
ッサ712による操作を表わしている。キーボード720から
入力される表示された入力は、キーボード720からプロ
セッサ712に対して入力された信号と理解される。パラ
メータ$screen−fileおよび$databaseは適当な方法で
プロセッサ712に対して入力されたこれらのパラメータ
の適当な値を表わす信号と考えられる。 概要 この技術によれば、DDスクリーン・ファイル502、メ
ータメータ(meta−meta)データベース504、ABスクリ
ーン・ファイル510および@Defaultスクリーン・セット
511を表わす信号が操作の開始前に記憶装置717に与えら
れる。第20図においては、データ処理システム710が最
初に、共に以下に述べる最初のスクリーン・ファイル
(DDスクリーン・ファイル)502と第1のデータベース5
04に関して第1のプログラム・モジュール(DD定義)の
制御下で作動する。このデータ処理システムは、(A)
の関係オペレータ装置を使用して、以下に述べる第2の
データベース506を表わす信号を取得してこれをデータ
ベースの記憶装置に格納するため、モジュール500に従
って作動するデータ処理システム710により解釈される
キーボード720からの入力信号に受取ることが望まし
い。 次に、データ処理システム710は、共に以下に説明す
る第2のスクリーン・ファイル(ABスクリーン・ファイ
ル)510に関して第2のプログラム・モジュール(アプ
リケーション・ビルダー(builder))508と、前のステ
ップの間に構成されるデータベース506に関して「@DEF
AULT」と呼ばばれるスクリーン・セット511の制御下で
作動する。データ処理システム710は、関係オペレータ
装置を用いて、以下に述べる第3のスクリーン・ファイ
ル512を表わす作業用記憶域信号において取得してこれ
を格納するためモジュール508に従って作動するデータ
処理システム710によって解釈されるキーボード720から
の入力信号を受取る。最後に、データ処理システムは71
0は、端末からのデータベース516の会話的な保守および
使用を可能にするため、関係オペレータ装置を用いて構
成されたスクリーン・ファイル512と第3のデータベー
ス516に関してPACE RUNモジュール514の如き解釈プロ
グラムに従って作動する。このように、構成されたスク
リーン・ファイル512は、以下に述べるようにデータベ
ース516の会話的使用のためのアプリケーション・プロ
グラムとして機能する。 第1のデータベース504はメータメータ・データベー
スであり、即ちこれは何れかのデータベース(メータ・
データベース)の定義の一般的な記述からなる。これ
は、そのレコードの発生があるデータベースの要素即ち
ファイル、表示、レコードおよび関係の一般的な定義で
ある関係を含んでいる。データ処理システム710の作動
中、ユーザは関係の名前、列即ち領域の名前、属性の定
義、フィールドの長さおよび種類、およびそのレコード
の発生が最終的にはアプリケーション・プログラムを用
いてユーザにより操作されることになる特定のデータベ
ース516についての全ての必要な情報を提供する。この
ようにユーザにより提供されてデータベース506を形成
する特定のデータベース516の定義は、「メータ・デー
タベース」即ちある特定のデータベースの記述と呼ばれ
る。このメータ・データベース506は、それ自体リレー
ショナル・データベースである。 関係オペレータ装置を用いることにより、本文に述べ
たように、データ定義プロセスは会話的かつ非手順的に
行なわれることが望ましい。ユーザは、データの定義言
語を習得してデータ項目即ち操作の名前を覚える必要が
ない。このため、プログラマでない人達がデータの定義
を行なうことができる。 更に、組込まれたスクリーン・ファイル512の定義も
また、関係オペレータ装置の使用により会話的および非
手順的に行なわれることが望ましくまたこのため非プロ
グラマによって実施することができる。このように、フ
ログラマでない者も実際にアプリケーション・プログラ
ムを作成することが可能となる。 更に、この技術の別の特質によれば、構成したアプリ
ケーション・プログラムが実行される時(即ち、構成し
たスクリーン・ファイル512を用いてデータベース516の
会話的な保守を可能にする時)、ディスプレイに示され
且つPFキー904によって選択可能である複数の操作は、
上記(A)に記載される操作に加えて、一般に「降順
の」操作と呼ばれる更に別の種類の操作を含んでいる。
この操作は、以下に述べるようにユーザが最初に表示さ
れたレコードの発生と関連したレコードの発生の表示を
容易に得ることを可能にする。 データ・ディクショナリ(DATA DICTIOANRY) データ
・ディクショナリ、即ちデータベースの説明は一般にデ
ータベースの管理技術において周知であり、多くの方法
で構成することができる。あるデータ・ディクショナリ
は、フィールドの名前およびフィールド長さの如きデー
タの属性の記述からなっている。特に、データベースの
基底テーブル、フィールド、キー、ファイルおよびビュ
ー(view)・テーブルがデータ・ディクショナリにおい
て定義される。更に、あるリレーショナル・データベー
スにおけるある従来技術のデータ・ディクショナリは、
データベースのテーブル(関係)間、あるいはある場合
にはレコード間の関係の記述を提供するものであった。 関係 次に、第26図においては、ある仮想データベースのあ
るレコードが事例として示されている。このデータベー
スは顧客、注文、品目および部品と呼ばれるテーブル
(関係)を提供する。他のテーブルも存在し得る。 顧客のテーブル(多くのこのような顧客のレコードか
らなる)からのあるレコードは、顧客の名前、住所およ
び残高、ならびに本例では関係のない他の項目を含んで
いる。顧客番号は顧客テーブルにおける一義的なキー
で、即ちその値がある顧客を一義的に識別するものとす
る。注文テーブル(多くのこのような注文レコードから
なる)からのあるレコードは顧客番号、注文番号および
日付のフィールドを含み、他のフィールドは本例とは関
連がない。もしある顧客のレコードの顧客番号の値があ
る注文レコードの顧客番号のそれと同じであるとすれ
ば、この事実を用いて顧客のレコードを注文のレコード
と関連付け、あるいはその逆に関連付けることができ
る。顧客番号のフィールドが各顧客のレコードに存在す
るという事実は、各注文レコードにおいて顧客のテーブ
ルを注文テーブルと関連付けることになる。ある1つの
顧客のレコードの発生と関連した多くの注文レコードの
発生があり得るため、顧客のレコードは「親」または
「オーナー」と定義され、注文レコードは「子」または
「メンバー」と定義される。 既に顧客テーブルを提供するデータベースを含むデー
タベース管理プログラムは、注文番号および日付のフィ
ールドを含む注文テーブルを想定することができる。注
文テーブルと顧客テーブル間の関係を与えるため、注文
レコードおは更にこの注文レコードが関連する顧客の顧
客番号を含むことが必要である。もしこのフィールドが
既に注文テーブルにおいて定義されない場合は、このフ
ィールドを関係の維持のため追加しなければならない。 更に第26図について考察すれば、品目レコードは2つ
のフィールド即ち顧客番号と注文番号によって注文レコ
ードと関連付けられる。もしある特定の品目レコードが
ある特定の注文レコードと関連付けられるならば、両方
の値は一致しなければならない。1つの注文レコードと
関連する多くの品目レコードがあり得る。部品レコード
は部品番号によって品目レコードと関連付けることがで
き、多くの品目レコードは1つの部品レコードと関連付
けることができる。 関係の属性 従来技術においては周知のように、1つの関係は下記
の如く属性によって定義される。即ち、 親のレコードの名前、子のレコードの名前、親の関係
のフィールドの組(一義的な定義されたキーでなければ
ならない)、 子の関係のフィールドの組、 保全規則(以下に述べる)、 例えば、第26図の注文レコードにおける親の関係のフ
ィールドが顧客番号および注文番号である。これらもま
た品目レコードにおける子の関係のフィールドである。 従って、ある関係の定義のプロセスは下記のステップ
を含んでいる。即ち、 1. 親の関係および子の関係のフィールドの定義 2. 各々の子の関係においてフィールドを定義するプロ
セスの間、この関係に対して親のテーブルを指示する。
親のテーブルは、各レコードの発生におけるある定義さ
れた一義的なキーを持たなければならない。 3. 親のテーブルのレコードの発生においてどの一義的
キーがその関係に対して用いられるべきかを指示する。
このキーのフィールドの定義は、子のテーブルの定義に
コピーされる。 4. 関係に対する保存規則の定義。これら規則は省略時
の解釈として提供することがある。 5. 関係に関与しない子のテーブルのフィールドの定義
の継続。 保全規則は、関連するテーブルにおけるレコードの追
加、修正または削除を支配する。例えば、もしあるデー
タベースにおける顧客と注文のテーブル間で関係が定義
されるならば、追加される注文レコードが関連付けられ
得る顧客のテーブルにおいて既にあるレコードの発生が
存在しなければ、1つのレコードの発生を注文テーブル
に追加することができないように、保全規則を定義する
ことができる。 本発明によれば、ある関係の2つの属性は定義され、
これら属性を表わす信号はデータ・ディクショナリ即ち
関係の昇順および降順の名前が格納される。この昇順の
名前は、ユーザが子のレコードを調べる時は関係を示
し、降順の名前はユーザが親のレコードを調べる時用い
られる。このため、注文のテーブルを調べている間、関
係の名前は 「顧客」となり、顧客のテーブルを調べている間、関係
の名前は「注文」となろう(関係は多岐にわたる顧客か
ら注文の1つであることに注意されたい)。 しかし、関係の名前は必ずしも関連するテーブルの名
前と同じとは限らない。例えば、もし被雇用者のテーブ
ルとマネージャーのテーブルが子と親として関連付けら
れるならば、昇順の関係の名前は「報告先」となるが、
降順の関係の名前は「監督」となろう。 本文における便宜のため、用語「降順」とはしばしば
何れかの方向から見た関係を含む実際のレコード発生に
関し実行時間において行なわれる操作を一般に意味する
ため用いられる。 第20図においては、この技術によれば、データベース
516における関係(基底テーブルまたはビュー(vie
w))毎に1つの関係記述子570が与えられ、これが関係
の名前と、それにおけるフィールドの種類、フィールド
の長さ等の如き他の関連情報を表わす信号を提供する。 全ての属性が定義されると、データ処理システム710
は1つの関係のID#を、定義された各関係の属性の組に
割当て、これらの属性を表わす信号が記憶装置717にお
けるデータ・ディクショナリ506内の関係の属性格納場
所520に格納されて関係のID#によって索引される。関
係が関与する各関係毎に、関係ID#がこの関係に対する
記述子570に含まれる。 データ定義モジュール500 この技術について更に詳細に考察するに際して次に第
20図を参照すれば、記憶装置717のプログラム格納部分
はDD定義と呼ばれるプログラム・モジュール500を提供
する。 このDD定義モジュールは、第19図に示される(PACE
RUN以外の)モジュールに対する呼出しプログラムとし
て構成することができる。即ち、データ処理システム71
0は、モジュール500の制御下で、選択可能な操作の1つ
の選択により列挙的に定義された結果関係の会話型な定
義を許容する(A)において記載したモジュールに従っ
て作動することができる。 特に、DD定義モジュール500により呼出される時、
(A)の関係オペレータ装置は、データ記憶装置717に
おけるスクリーン・ファイル502に関して作動し、これ
がメータ・ディクショナリ504に関してデータベース516
の定義を端末のユーザから引出すのに適する1組のスク
リーン・フォーマットを提供する。スクリーン・ファイ
ル502は、全て(A)に記載される如き関連した制御信
号505(POPテーブル、スクリーン・マップ等)と共にリ
スト、表示および修正のタイプのスクリーン・フォーマ
ット503を含む(1つのLISTスクリーンはレコード発生
のリストを表示するが、DISPLAYスクリーンは1つのレ
コードの発生に対して更に完全な情報(より多くのフィ
ールド)を表示する。 第21図は、各テーブルのコメント・フィールドの最初
の30字と共に、ある事例のデータベースにおける全ての
存在するテーブル(顧客、品目、順序および部品と命名
された)のリストを表示するため使用されるスクリーン
・ファイル502からのLISTスクリーン・ファイルを示し
ている。このスクリーンが表示される時、キーボード72
0上のPFキー904−10の操作は、表示フォーマットを用い
てある特定のテーブルに対する完全コメント・フィール
ドの表示への変換を生じる結果となるが、このような変
換を行なうための装置については(A)において記載さ
れている。PFキー904−6の操作は、これもまた(A)
において記載される手段によって、第22図に示される如
きスクリーン・ファイル502からのADD(加算)スクリー
ン・フォーマットの表示への変換を生じることになる。
第21図のLISTスクリーンが表示される時のPFキー904−
1(拡張機能)の操作は、別の複数の選択可能な操作と
関連したPFキー904の表示(第23図)と共に、拡張リス
ト(LIST)スクリーンの表示をもたらす結果となる。
(この変換は、(A)においては陽には記載されない
が、類似の変換について記述したものと類似の方法でWZ
PXIモジュール814によって行なわれる)。この複数の選
択可能な操作の内には、リストされたテーブルが関与す
る関係の定義と関連するいくつかの操作がある。特に、
1つの選択可能な操作が「関係の作成」について提供さ
れる。 拡張LISTテーブルのスクリーンの表示中の「関係の作
成」に対するPFキー904−6の操作にあるスクリーン・
フォーマット(図示せず)による表示への移行をもたら
し、これがユーザがこの関係の属性を定義することを許
容する(別の実施態様においては、この機能はLISTフィ
ールド・スクリーンからアクセスできよう)。このよう
な属性を表わす信号は、関係ID#によって索引される
「関係の属性」をデータ構造520内のデータ・ディクシ
ョナリ506においてデータ処理システム710によって格納
される。 DD定義モジュール500の命名モジュール526に従って作
動するデータ処理システム710は、データ・ディクショ
ナリ506内で2つの関連するテーブルの定義をアクセス
し、テーブルの名前を検索し、テーブルの名前を関係の
省略時の昇順および降順の名前として割当てる。 拡張LISTスクリーンの表示中のPFキー904−9の操作
は、関係表示(DISPLEYRELATIONSHIP)スクリーン(第2
4図)への変換を生じる結果となる。このスクリーン
は、関係の割当てられた昇順および降順の名前の文字の
表示を行なう。このスクリーンの表示中のPFキー904−
9(修正)の操作は、((A)に記載された装置によ
り)MODIFYスクリーン・フォーマットへの変換を生じ、
このフォーマットにおいては、昇順および降順の名前の
文字の表示が開放領域、即ちユーザによりキーボード72
0を介して修正可能な領域において表示される。従っ
て、ユーザは修正された関係の名前を表わす入力信号を
与えるためキーボード720のタイプライタ・キー900を使
用することができる。割当てされた(省略時の)名前ま
たは修正された名前の文字を表わす信号は、何かあるな
らば、データベース516に対するデータ・ディクショナ
リ506内の関係ID#によって索引されるデータ構造「関
係の属性」520のデータ要素524に格納される。属性520
によって関連付けられる関係の名前は527に格納され
る。 データ・ディクショナリ506の構成が完了すると、次
のモジュール508に従って操作を開始することができ
る。 アプリケーション・ビルダー・モジュール508 更に詳細な考察を続けるならば、アプリケーション作
成モジュール508が記憶装置717のプログラム記憶部分に
提供される。このモジュールに従って作動するデータ処
理システム710はまた、メータ・データベース506および
ABスクリーン・ファイル510に通して作動する関係オペ
レータ装置を使用できることが有利である。しかし、以
下に述べる諸機能の達成のためデータ処理システム710
によって行なわれる操作もまた、他の適当な手段によっ
て実施することができる。概要を述べれば、アプリケー
ション作成モジュールに従って作動するDPシステム710
はデータベース516内の特定の1つ以上の目標の関係の
保持のため誂らえた特定のスクリーン・ファイル512を
記憶装置717内に構成する。この操作については、次に
更に詳細に考察する。 モジュール508に従う作動は、端末のユーザがあるデ
ータベースを選択した後に開始する。このデータベース
は定義されなければならず、即ちそのメータ・データベ
ース即ちメータ・データベース506が定義されなければ
ならず、これを表わす信号が前に述べた方法で記録装置
717に格納され、特に全ての定義された関係の昇順およ
び降順の名前が定義され524に格納された名前の文字の
表示でなければならない。 アプリケーション・ビルダー・モジュール508の制御
下におけるデータ処理システム710は、入力のパラメー
タ$databaseおよび$screen−fileに関して作動する。
$databaseの特定の値は、アプリケーション・プログラ
ムにより管理されるべきデータベース516を指示し、こ
のデータベースに対するメータ・データベース506がア
クセスされる。$screen−fileの特定の値がABスクリー
ン・ファイル510を示す。 @Defaultスクリーン・セット511もまたアクセスされ
る。このスクリーン・セット511は、各スクリーン・タ
イプ(リスト、表示、選択、追加、修正)に対する原型
の(省略時)スクリーン・フォーマット521および各ス
クリーン・フォーマットと関連する原型のPOPテーブル5
09を提供する。この原型のスクリーン・フォーマット
は、第8図、第13図および第14図に示されるものと類似
するが、目標関係の名前および列即ち領域の名前および
PFキーに関する他の情報の特定の表示を欠いている。こ
のような表示は開放要素によって置換される。POPテー
ブル509は、どのPFキー204を特定のフォーマットにおい
て表わすことができるかを指示し、各PFキー毎に(A)
に記載される如きこのキーにより選択される操作を実施
するため必要な信号をふくむ。POPテーブルは完了せ
ず、この場合降順操作に対するPFキーは以下に述べるよ
うに後の段階において追加することができる。 スクリーン・セット511は個々にABスクリーンファイ
ル510から与えられるため、フォーマット523はユーザに
よって全体的に編集することができ、例えば、固定され
たテキストの言語を変更することができる。ある特定の
@Defaultスクリーン・セット511はある特定のメータ・
データベース506と関連付けられる。 アプリケーション・ビルダー・モジュール508から呼
出される時データ処理システム710が第4図のモジュー
ルに従って作動するスクリーン・ファイル510は、更に
詳細に係属中の(A)において記載される如きPOPテー
ブル、スクリーン・マップ、表示のためのリストおよび
他のデータ構造からなる関連した制御信号525をメータ
・データベース506から検索されたレコードの発生の表
示のため使用されたABスクリーン・フォーマット523に
提供する。 データベース516を示す入力パラメータ$databaseを
用いてアプリケーション・ビルダー・モジュール508の
表示モジュール550に従って最初に作動するデータ処理
システム710((A)の関係オペレータ装置を使用する
ことが望ましい)は、メータ・データベース506からデ
ータベース516における関係の名前(基底テーブルまた
はビュー)のリストを表わす信号を検索する。名前の表
示は、第27図に示されるようにABフォーマット523から
の最初のスクリーン・フォーマットにおいて表示され
る。スクリーン位置のマーカを置き入力キー906(第17
図)を操作することにより、ユーザは最初のテーブルを
選択することができる。 更にモジュール508のモジュール550に従って作動する
データ処理システム710は、選択された最初のテーブル
の名前を使用してこのテーブルに対する記述子570から
このテーブルが関与する関係に対する関係ID#のリスト
を得る。この関係ID#は、データ・ディクショナリ506
におけるデータ構造520を索引し、また527からの関連し
たテーブルの名前を表わし信号を検索するため使用され
る。これらの名前の表示は、第13図に示されるようにAB
フォーマット523からの第2のスクリーン・フォーマッ
トにおいて表示される。 入力キー206を操作しかつキー208(第17図)によりス
クリーン位置のマーカを定置することにより、ユーザは
アプリケーション・プログラムに含めるため1つ以上の
関連したテーブル(関係)を選択することができる。本
文の記述においては、最初に表示されるテーブル(また
は、最初に表示されるその名前は)は「初めの」関係と
呼ばれるが、その後表示される選択された関連テーブル
(または、その後表示されるその名前)は、「宛先」関
係と呼ばれる。 このプロセスは、選択されない関連したテーブルがな
くなるか、あるいは第28図のスクリーン・フォーマット
の表示中ユーザがPFキー904−6(プログラム作成)を
操作するまで反復される。 スクリーン・セット511における原型のスクリーン・
フォーマット521が次に修正のためコピーされる。前に
記述した表示中ユーザによって行なわれる選択を表わす
信号は、全ての選択されたテーブルに対するスクリーン
・セットを定義するためにコピーされた原型のスクリー
ン・フォーマット521を修正する目的で、この時スクリ
ーン・ファイル作成モジュール552に従って作動するデ
ータ処理システム710によって使用される。スクリーン
・セット522は「初めの」関係に対して提供され、スク
リーン・セット532は各「宛先の」関係に対して作成さ
れる。データ・ディクショナリ506に格納された信号
は、スクリーン・フィールド、列のヘッダ(見出し)、
指示メッセージおよび他の固定されたテキストの表示の
ため提供するためにこの時検索され使用される。522お
よび532の修正されたスクリーン・フォーマットは、構
成されたスクリーン・ファイル512の一部として格納さ
れる。 更に、スクリーン・ファイル作成モジュール552は、
スクリーン・ファイル512内の原型のPOP509およびデー
タ・ディクショナリ506を指示することにより、POP(プ
ロシジャの操作)テーブル、PSMPS(プロシジャ・スク
リーン・マップ)および定義されたスクリーン・セット
と関連しかつこのようなスクリーン・セットの適正な使
用のため必要とされる皿に詳細には(A)に記載された
他の要素からなる関連した制御信号530および534を構成
するための手段を提供する。例えば、フィールド種類お
よび長さを定義するものの如きデータ・ディクショナリ
が格納した信号は、適当なスクリーン・マップを構成す
るため検索され使用される。 この過程においては、520の関係の属性が3つの方法
で用いられる。最初に、初めの関係に対するスクリーン
・セットにおけるスクリーン・フォーマット522は、宛
先の関係に対する関係の名前(524からの)と関連してP
Fキー904の表示を行なうように修正される。初めの関係
の名前は既知であるため、適当な昇順/降順の名前が関
係の方向に対して選択することができる。更に、各スク
リーン・フォーマット522に対する制御信号530内のPOP
テーブルは、このPFキーに対して定義されたオペレータ
を表わす信号を含むように修正される。このオペレータ
の動作は「descend#via screen#」でり、このオペレ
ータの名前はデータ記憶要素524からコピーされた関係
の名前である。各降順の動作は、一義的なPDSCデータ構
造538(以下に述べる)を索引する「descend#」によっ
て一義的に識別される。あるスクリーン・フォーマット
には1つ以上の降順の変換を定義することができ、各々
はPOP・oper・actionにおける一義的なdescend#によっ
て識別されるのである。 第二に、別のスクリーン・セット532が、前に述べた
ように宛先の関係(スクリーン・フィールド、関係の名
前、列の名前等)を記述するデータディクショナリ506
における情報に従って原型のスクリーン・セット521の
コピーを修正することによりスクリーン・ファイル512
において構成される。適当なPOP、PSMPおよび他の制御
データ構造が定義され、これらを表わす信号がスクリー
ン・ファイル512の534に格納される。 第三に、アプリケーション・ビルダー・モジュール50
8に従って作動するデータ処理システム710は、スクリー
ン・ファイル512内でPDSCデータ構造538を作成する(格
納場所を割当てそれに信号を格納する)。第1の即ち
「初めの」関係から第2の即ち「宛先の」関係への選択
された変換毎に特定のPDSCデータ構造が構成され、上記
の如く一義的なdescend#によって識別される。次に第2
5図においては、PDSCデータ構造538は2つの部分540、5
42を含んでいる。部分540は制御情報を表わす信号を提
供し、第2の部分は宛先の関係に対して定義されるが完
全には指定されないカーソルを表わす信号を提供する。
このカーソルの選択領域即ち「但し、」はパラメータ@
1,@,2により識別される1つ以上の場所を含むが、パラ
メータに対する値を表わす場所に置かれる信号を得るた
め、データ処理システム710によって制御部分540の信号
が(以下に説明するように、後で)用いられる。特に、
親の関係のフィールドは、このカーソルを介して関連し
た構成のレコードの発生を検索するため、場所@1,@2,
においてカーソルにコピーされねばならない。PSDCデー
タ構造538の構成に際して、パラメータ@1,@2,により
識別されるフィールドおよび部分540における制御情報
信号の指示は、記憶装置717内のデータ・ディクショナ
リ506における520に格納された関係の属性から得られ
る。パラメータ@1,@2,の機能については以下において
明らかになるであろう。 PDSCデータ構造538は作成されたスクリーン・ファイ
ル512において格納される。 第27図の表示から最初のテーブルを選択することによ
り、ユーザはスクリーン・ファイル512におけるデータ
構造PDEF内の「最初のテーブル」に対する値を定義す
る。スクリーン・フォーマット表示の、省略時の順序
は、作成スクリーン・ファイル・モジュール552に従っ
て作動するデータ処理システム710によって定義され
る。 更に別のモジュール554「スクリーン編集」はアプリ
ケーショ作成モジュール508において与えられる。第12
図に示されるスクリーン・フォーマットの表示中のPFキ
ー204−9「編集スクリーン・セット」の操作は、この
モジュールに従ってデータ処理システム710を作動さ
せ、その制御下でスクリーン・フォーマット552,532の
表示が「原型」の形態で、即ちデータ・ディクショナリ
506から得た特定の見出しおよび関係の名前を以てユー
ザに対して行なわれるが、レコードの発生はXまたは他
の記号で示す。この時、実際にはデータベース516から
はレコードの発生は検索されない。スクリーン・フォー
マットの状態を編集するための適当な手段が提供され、
更にフォーマットの表示の順序はユーザによって変更す
ることができる。各フォーマットにおけるPFキーの表示
もまた編集ができ、例えば、後のある時点におけるレコ
ードの発生の削除を阻止するため、この削除の操作のた
めのPFキーをフォーマットから排除することができるの
である。 作成されたプログラムの解釈 作成スクリーン・ファイル512が完全に定義されこれ
を表わす信号が記憶装置717の作業用記憶域に格納され
た時、実際にこれが作成されたデータベース516の会話
的な非手順型の保守のためのアプリケーション・プログ
ラムを構成する。このアプリケーション・プログラムを
使用することが要求される時は、解釈プログラムを使用
しなければならず、またPACE RUNモジュールがこのよ
うな解釈プログラムとして働く。「降順」を表わす信号
を解釈する目的のため、2つの別のプログラム・モジュ
ール、即ちPXIDSCモジュール600とWZFETCH(qid)モジ
ュール602が記憶装置717のプログラム格納部分に与えら
れる。更に、呼出しプログラム内のDO DSCモジュール8
07はDO QUERYモジュール808を呼出す。 WZFETCHモジュール602は、データベース516から1つ
のレコードの発生を表示することなくこれを検索するた
めWZRETRIEVEモジュール818を呼出す。パラータ「qid」
は検索に使用されるべき照会を識別する。このFETCHモ
ジュールの他の特定の特徴についてはこの技術では関係
がない。 作成されたアプリケーション・プログラムが実行され
る時、(A)において記憶される方法においてPACE RU
Nモジュールに従って作動するデータ処理システム710は
スクリーン・ファイル512をアクセスしてこれを開放す
る。PDEF853に格納された信号は、データベース516から
最初のスクリーン・フォーマット522と最初の関係(テ
ーブル)をアクセスするため使用される。もしこのフォ
ーマットがこのようにアプリケーション・ビルダー・モ
ジュール508に従ってデータ処理システムの前の作動中
修正されるならば、最初のスクリーン・フォーマットは
関連する関係の表示への降順の変換のためのPFキー904
の表示を含んでいる。カーソル858により定義されたレ
コードの発生は最初の目標関係から検索され、格納され
たあるスクリーン映像を定義するため最初のスクリーン
・フォーマットと組合わされる。 (A)において記載したように、格納されたスクリー
ン映像が表示されかつ結果関係の列挙的または特徴的な
選択を表わす信号はキーボード720を介して入力され作
業用記憶域717に格納される。キーボード720におけるPF
キー904の操作による作動の選択を表わす入力信号はデ
ータ構造864内のfor.fpfに対するデータ要素に格納され
る。キーボード720を介してユーザにより入力される操
作の選択信号が特定の降順の移行と対応するPFキー904
の操作を表わす時、WZSCRIOモジュール720に従って作動
するデータ処理システム710は、(A)で説明したよう
に、このPFキーに対するpop.operを表わす信号をQUERY
operにコピーする。このPFキーに対するoper.action
は、前記の降順の変換と対応するスクリーン・ファイル
512内の特定のPDSC構造538を識別する「descend#via s
creen#」である。データ処理システム710はDOPXIモジ
ュール812へ戻り、信号はデータ構造ATAB812に格納され
たアクション(action)「descend#」を表わす。 DO PXIモジュール812に従って作動するデータ処理シ
ステム710は、(A)に記述したようにデータ構造ATAB8
72において信号をテストする。この場合、作動「descen
d#」を表わす信号に応答して、データ処理システム710
は更にモジュールPXIDSC600に従って作動してFETCH(pi
d)モジュール602を呼出し、これがRETRIEVEモジュール
818を呼出す。 WZRETRIEVEモジュール818に従って作動しかつ結果関
係((A)に記載されたように、$oper−name870にお
けるマークされたレコードまたはデータ構造858におけ
る修正されたカーソルの何れか)を定義する格納された
信号に従って作動するデータ処理システム710が、結果
関係における第1のレコードの発生を表わす信号をデー
タベース516からコピーする。結果関係が「初めの」関
係から定義されるため、FETCHに応答して検索されるレ
コードの発生はqidにより識別される修正された照会に
より定義される初めの関係の要素である。検索されたレ
コードは表示されず、システム・バッファ868(第18
図)に格納される。レコードが検索された時、PXIDSC60
0がDODSCモジュール807を呼出すのである。 DO DSCモジュール807に従って作動しかつPDSCデータ
構造538の最初の部分540をアクセスするデータ処理シス
テム710は、検索されたレコードの発生から第1の部分5
40により定義される如くPDSC538の第2の部分542内の対
応するパラメータ@1,@2,により表示される場所へ関係
のフィールドの値を表わす信号をコピーする。このコピ
ーされたフィールドは、前述の如く親のレコードおよび
関連する構成のレコードの双方に存在するキーである。
従って、これらフィールドの値は、どれが宛先の関係に
おける関連したレコードの発生であるかを定義する上で
有効である。この操作は、PDSC538によって与えられる
カーソルを完成する。このカーソルはこの時「宛先の」
関係に対して完全に定義される。PDSC538から完成した
カーソルを表わす信号はこの時、(A)に記載されるよ
うに、データ構造CURSOR858内に置かれ、モジュールDOQ
UERYはカーソルを開放して新たなカーソルと対応する新
たなデータ構造QUERY862を定義するため呼出される
(「初めの」関係に対して定義されたカーソルは開放状
態のままである)。この時のスクリーン・ファイルはア
クセスされ続け、新たなscreen#が降順の動作(descen
d#via screen#)から与えられる。このモジュールに
従うデータ処理システムのある特定のカーソルに関する
作動については、(A)において詳細に説明した。 本例の結果は(PDSC538により与えられ、かつ「初め
の」関係からの検索されたレコードの発生からの特定の
関係のフィールドの値で完成された)カーソルによって
定義される「宛先の」関係におけるレコードがデータベ
ース516から順次検索され、スクリーン・ファイル512内
のスクリーン・セット532のスクリーン・フォーマット
と組合わされ、ディスプレイ18上でユーザに対して表示
されることである。ユーザは、その表示が行なわれるレ
コードの発生を修正するため、前記(A)に記載された
方法でPFキー904を操作することができるが、例えば、
ユーザは発生の更新または削除が可能であり、あるいは
データベース516の「宛先の」関係に対して新たな発生
を追加することができる。 ユーザが必要とする数の「宛先の」関係内のレコード
の発生を調べてこれらについて所要の操作を行なった
時、戻りPFキー904−16の操作はDOQUERYモジュール808
をその呼出し側に戻させる。あるいはまた、宛先の関係
内の全てのレコードの発生が調べられた時は、このよう
な戻りはリカーション(recursion)をスタックしない
ことにより自動的に行なわれる。次に「初めの」関係の
次のレコードの発生がFETCHモジュール602によって検索
される。降順のプロセスはこの時、「初めの」関係の次
のレコードの発生と関連した「宛先の」関係からのレコ
ードの発生について反復される。初めの関係の全てのレ
コードの発生に対する全ての関連したレコードの発生が
調べられると、WZPXIモジュール114に従う初めの関係に
対するカーソルに関する作動が再開される。LISTスクリ
ーンがそれに表示された初めの関係のメンバーと共に再
び表示される。 動作 次の上記の作動の一例について、第26図に示された事
例のレコードに関して説明することにする。DD定義モジ
ュール500およびキーボード720から入力された信号に従
って作動するデータ処理システム710は、「売上」のデ
ータベース516に対するデータ・ディクショナリ506を構
成する。このような構成の間、1つの関係が顧客のレコ
ードと注文のレコード間でユーザによって定義される。
顧客のテーブルは親のテーブルとして定義され、顧客#
フィールドは親の関係のフィールドとして定義される。
これらの定義を表わす信号は属性の格納場所520に格納
され、更に、「顧客」は関係の昇順の名前として格納さ
れ、「注文」は降順の名前として格納され、これらの名
前の文字を表わす信号は524において格納される。関係I
D#はこれらの属性に割当てられて、関係の属性の格納
場所520に対する標識となる。このID#は顧客のテーブ
ルに対する記述子570に格納され、また注文テーブルに
対する記述子570に格納される。 次に、アプリケーション・ビルダー・モジュール508
およびキーボード720から入力された信号に従って作動
するデータ処理システム710は、「売上」データベース5
16を求めてABスクリーン・ファイル510およびデータ・
ディクショナリ506をアクセスする。モジュール550に従
って作動し(A)の関係オペレータを用いるデータ処理
システム710は、ABスクリーン・ファイル510からのフォ
ーマット(第27図のフォーマットの如き)においてデー
タ・ディクショナリ506から検索されたテーブル名のリ
スト(顧客、注文、品目および部品)を表示する。この
顧客テーブルは、最初のテーブルとしてユーザによって
選択され、このテーブルを表わす信号はデータ構造PDEF
853の「最初のテーブル」に格納される。 更にモジュール550に従って作動するデータ処理シス
テム710は、データ・ディクショナリ506における顧客テ
ーブルの記述子570をアクセスし、またその内に見出さ
れた関係ID#(単数または複数)を用いて関係の属性の
記憶装置520をアクセスする。顧客テーブルと関連する
データベース516における各テーブル(本例の場合は、
注文テーブルが1つしかない)の名前は、第28図のフォ
ーマットに似たフォーマットでディスプレイ720に表示
される。この注文テーブルは、アプリケーション・プロ
グラムに含まれるべき関連テーブルとしてユーザにより
選択される。 LISTスクリーン・フォーマットは、最初のスクリーン
としてユーザにより選択され、このフォーマットを表わ
す信号はデータ構造PDEF853の「最初のスクリーン」に
格納される。モジュール552に従って作動しかつデータ
・ディクショナリ506を参照するデータ処理システム710
は、@Defaultスクリーン・セット511をアクセスし、フ
ォーマット521およびPOP509を修正する(スクリーン・
マップの如き他の制御データ構造もまたこの時構成され
る)。特に、原型のリスト・フォーマットは関係のID#
により索引されるデータ要素524から検索される文字
「注文」と関連するPFキー(一例として、PFキー904−1
1)を提供するよう顧客テーブルに対して修正され、こ
のスクリーンに対するPOPテーブルはPOPオペレータ「de
scend#1 via screen#」を含むように修正される(s
creen#の値はユーザによって割当て可能であり、LIST
スクリーンは降順の操作のため選択されるものとす
る)。PDSCデータ構造538がdescend#1に対して構成さ
れる。その最初の部分540におけるこのPDSC構造は、対
「@1,customer,customer#」を含んでいる。即ち、顧
客のレコードのcustomer#は、関係ID#により索引され
る顧客と注文テーブル間の関係に対して属性に格納され
た信号から見出されるように、この関係に対する関係の
フィールドである。PDSC538の第2の部分542は、データ
ベース516の注文のテーブルに対して定義される関係の
フィールドが不完全であり@1により示されるカーソル
が与えられる。 最後に、原型のスクリーン・セット・フォーマット52
1および関連したPOP509が、フォーマット532および制御
信号534を宛先の関係に対して構成されるようにコピー
され修正される(もしあれば)。スクリーン・ファイル
512の残りが構成され、必要に応じてユーザによって編
集される。ある後の時点において、データ処理システム
の端末のユーザは、PACE RUN514および構成されたスク
リーン・ファイル512に従って操作を開始する。データ
構造PDEF853における信号に従って、(A)の関係オペ
レータを使用して、データ処理システム710は、顧客テ
ーブルからのレコードの発生と共にフォーマット522か
らのLISTスクリーン・フォーマットを表示するように作
動する。この表示は、選択可能な操作の表示の内文字
「11)注文」を含む。ユーザは、(A)に記載された方
法で特定のリストされた顧客レコードの発生を列挙し、
PFキー904−11を操作する。(A)において記載される
方法においては、このPFキーの操作を表わす信号を用い
て、qry.operにコピーされる対応するPOP operをLIST
スクリーン・フォーマット522に対するPOPテーブルから
検索される。qry.oper−actionは「descend#1 via
LIST screen」であり、これはデータ構造ATAB872に対
してコピーされる。PACE RUNに従って作動するデータ
処理システム710はdescend#1を表わす信号を用いてこ
の降順の操作に対して前に構成されたPDSCデータ構造53
8をアクセスする(最初のLISTスクリーンから)。列挙
された顧客のレコードの最初のものは、データベース51
6から取出されてシステム・バッファ168に格納される。
その顧客#のフィールドの値は、@1によって示される
PDSC部分542における場所に対してコピーされ、これに
よりカーソルを完成する。DO QUERYモジュール108はこ
の時(A)に述べた方法においてこのカーソルに関する
操作のため呼出される。顧客#の関係のフィールドがシ
ステム・バッファにおける顧客のレコードからコピーさ
れた値を要求する注文のレコードの発生が検索され、LI
STスクリーン・フォーマット532上でユーザに対して表
示される。 ユーザは、(A)に記載される方法でリストされた注
文のレコードの発生について操作することができる。特
に、ユーザはこのようなレコードの発生の修正または削
除ができ、あるいはユーザは新たなレコードの発生を追
加することができる(但し、本文には記述しない方法で
強制される関係の属性の記憶場所520における保全規則
に従う)。全てのこのような所要操作が行なわれると、
最初のLISTスクリーンからの次の列挙された顧客レコー
ドが取出され、その顧客#がデータ構造PDSC538のカー
ソル部分542の@1の場所に対してコピーされる。この
カーソルによって定義される注文のレコードの発生はこ
の時検索されることになる。この過程は、LISTスクリー
ンから列挙された全ての顧客レコードに関して実施され
るまで継続する。 このため、ユーザが最も頻繁にデータベースについて
行なうことを欲する操作は全て作成されたスクリーン・
ファイル512の形態におけるアプリケーション・プログ
ラムの操作を介して会話的かつ非手順的に行なうことが
てきる。 このように、本発明によるデータ処理システムの操作
は、最初に表示されるレコードと関連するどんなレコー
ドの表示への容易に達成される変換を含むリレーショナ
ル・データベースの会話的かつ非手順的な保守のための
アプリケーション・プログラムを作成するためプログラ
ムでない者のために特に簡単な手段を提供する。このよ
うな複雑かつ柔軟なアプリケーション・プログラムの作
成はこれまでかなりの時間にわたって習熟したプログラ
マの採用を必要とし、最終製品はしばしばこの技術の使
用によって達成できるような最終ユーザの実際の目的に
充分に適したものではない。 (C)本発明の好適な実施例の説明 次に図面特に第31図に関して、同図に示されるように
格納場所がプログラム記憶域に割当てられるプログラム
・モジュールについて、WZFETCHモジュール1602を除い
て詳細に記述することにする。このモジュールは以下本
文において更に詳細に説明する。 第32図においては、格納場所が第31図の作業用記憶域
が割当てられるデータ構造が以下に述べる点を除いて
(B)に記述した。特に、本発明によれば、TCOMデータ
構造1160は更に状態データ構造1700を領域信号を含み、
データ構造QUERY1162は更に1つの取出し位置(qry.fch
−pos1707)と1つのポインタ@pgm−bufを表わす信号
を含んでいる。プログラム・バッファ1703はデータ構造
QUERY1162における@pgmbufによって指示される作業用
記憶域において提供される。メッセージ・ファイルのデ
ータ構造1702は作業用記憶域において提供される。デー
タ・ディクショナリ1506は、データベースにおいて定義
される各関係に対する関係の属性1520とデータベースに
おける各関係(テーブル)に対する記述子1570を提供す
る。好適な実施態様においては、このデータ・ディクシ
ョナリはそれ自体1つのリレーショナル・データベース
であり、かつデータベースの記憶域に提供されるが、こ
れは本発明において必須のものではない。 次に第33図においては、WZFETCH装置1602の構造が更
に詳細に示されている。第29図のデータ処理システム10
10に対して必要な入力信号は、WZFETCHに従って作動す
る時、物理的なデータベース1150から得られる特定のレ
コードの発生(単数または複数)を(カーソルのインプ
リケーション(implication)により)指示するデータ
構造QUERY162(第32図)を識別するパラメータ$qidで
ある。このデータ処理システムは、このパラメータなし
にWZFETCHに従って作動することはできない。更に3つ
の任意のパラメータ、即ち#screen−file,screen#ま
たは#screen−name)および$errors−onlyがある。こ
れらのパラメータの最初の2つは、ディスプレイ1018の
制御のため使用される特定のスクリーン・フォーマット
信号(第32図の1166)を識別する。前記の$errors−on
lyは2つの値(yesまたはno)の一方を取り得、その意
味は以下において説明する。 WZFETCHは3つの構造、即ち主モジュール1704、会話
型モジュール1706および非会話型モジュール1708からな
る。 主モジュール1704に従って作動するデータ処理システ
ム1010は、パラメータ#screen−fileおよびscreen#を
表わす信号がWZFETCHに対して与えられたかどうか、ま
たパラメータ$errors−onlyが「yes」または「no」の
何れであるかをテストするように作動する。以下の条件
が認識される。 第一に、もしスクリーン・フォーマットが識別されな
ければ、データ処理システム1010は非会話型モジュール
1704に従って作動する。もしスクリーン・フォーマット
が識別されかつもし$erros−only=yesならば、主モジ
ュール1704の制御下で作動するデータ処理システム1010
は、TCOMデータ構造1160(第32図)のステータス(状
態)構造1700に与えられる信号をテストする。これらの
信号は以下に述べる方法で与えられる。もしこれらの信
号により表わされる値が以下に述べる方法で前に検出さ
れたエラーを示すならば、データ処理システム1010は更
に会話型モジュール1706に従って作動する。もし状態構
造信号により表わされる値がエラーでなければ、データ
処理システム1010は更に非会話型モジュール1708に従っ
て作動する。最後に、もしあるスクリーン・フォーマッ
トが識別され$errors−only=noであるならば、データ
処理システム1010は会話型モジュール1706の制御下で更
に作動する。 非会話型モジュール1706はWZRETRIEVEモジュール1118
(第31図)を呼出し、(A)で説明したようにモジュー
ル1118に従って作動するデータ処理ステム1010は、その
時のカーソルにより定義されるレコードの発生を表わす
データベース1150からコピーするためオペレーティング
・システムのアクセス法を呼出す。このコピーされた信
号はシステム・バッファ1168(第32図)に置かれる。非
会話型モジュール1704に戻ると同時に、データ処理シス
テム1010は検索された信号をプログラム・バッファ1703
(第32図)にコピーするよう作動して、1707においてqr
y.fch−posを増分する。システム1010はこの時以下に述
べるWZFETCHと呼ばれるモジュールによる作動に戻る。 あるいはまた、会話型モジュール11706に従って作動
するデータ処理システム1010は、ディスプレイ1018を制
御するため使用されるスクリーン・フォーマット信号11
66をアクセスするための入力パラメータ$screen−file
およびscreen#から信号を取得する。必要に応じて、こ
の時データ処理システム1010は、WZ OPEN SCREEN−FI
LEモジュール1106(第31図)を呼出す。次に、データ処
理システム1010はTCOMデータ構造1160におけるステータ
ス(状態)データ構造1700からなる信号をテストする。 もしこれらの信号がエラーが前に検出されたことを表
示しなければ(以下に説明する方法で)、データ処理シ
ステム1010はWZRETRIEVEモジュール1118を非会話型モジ
ュール1708におけるように呼出し、データベース1150か
ら$qidにより識別され且つqry.fch−posによって指示
される照会により指定されるレコードの発生を表わす信
号をコピーする。次にシステム1010は、信号がWZRETREI
VEに従って作動する間システム1010により置かれたシス
テム・バッファ1168からプログラム・バッファ1703に対
して信号をコピーし、qry.fch−pos1707からなる信号を
増分する。 もし1700における状態のデータ構造信号がエラーが前
に検出されたことを表示するならば、データ処理システ
ム1010はシステム・バッファ1168からプログラム・バッ
ファ1703に対して前に検索されたレコードの発生を表わ
す信号をコピーする。WZRETRIVEは呼出されない。 何れの場合にも、データ処理システム1010は次に、デ
ィスプレイ1810を含むデータ処理システムを制御してプ
ログラム・バッファ1703におけるレコードの発生の表示
を行なうモジュールWZSCRLOD1116および1120を詳細に前
に述べたようにスクリーン・サービスに従って作動す
る。 エラーの場合には、状態信号から1700から得られるエ
ラー・パラメータ信号が、スクリーン・サービス・モジ
ュールに従って作動するデータ処理システム1010によっ
て使用されて、特定のエラーに適するエラー・メッセー
ジを構成する表示可能な文字を表わす信号をメッセージ
・ファイル1702からコピーする。このため、レコードの
発生およびエラー・メッセージの表示は、フォーマット
1166に従ってディスプレイ1018上で行なわれる。 いずれの会話型の場合でも、(A)で説明したように
スクリーン映像を表わす信号が格納され、オペレーティ
ング・システム1100の制御下でデータ処理システム1010
によって用いられてディスプレイ1018を制御する。この
時、データ処理システムの会話型ユーザは、格納された
スクリーン映像の信号を修正して選択された操作を表わ
す操作選択信号を入力するように作用するキーボード10
20上のキーを操作することができる。 WZSCRIOモジュール1120およびこれから呼出されたWZF
ORMSモジュール122に従うデータ処理システムの作動
中、フィールドの制約の違反の如き上記の種類のエラー
が検出される。例えば、もしユーザが数字の如きレコー
ドに対する記述子1570において指定されるフィールドに
おける英字の表示を行なうためスクリーンを修正しよう
とするならば、メッセージ(メッセージ・ファイル1702
からの)の表示がユーザに対して行なわれることにな
る。このエラーが会話式で訂正されるまで、システム10
10はWZFORMSモジュール1122に従う作動から戻ることは
ない。 スクリーン・サービス・モジュールから戻ると同時
に、データ処理システムは状態データ構造1700の信号を
リセットして保全レベルのエラーを表示せず、会話型モ
ジュール1706へ戻る。この時、キーボード1020における
PFキー1204を表わす信号はqry.operに存在する。 会話型モジュール1706に従って更に作動するデータ処
理システム1010は、会話的ユーザによる操作の選択(操
作されたPFキー1204に入力される)を表わす信号をテス
トする。ある操作(表示、飛越し、再試行、継続および
本発明とは関連しない他の操作のスクロール動作)は、
会話型モジュール1706に従って作動するデータ処理シス
テム1010によって実施することができ、他の操作につい
ては、データ処理システム1010は前のあるモジュールへ
戻らなければならない。FETCHは常に$STATUS信号(照
会の終りまたは成功)を生じる。 WZFETCHに従う操作について以下に説明する。先ず第3
1図においては、本文において論述しない降順の操作と
は別に、データ処理システム1010がWZFETCHに従って作
動する文脈(context)は、(A)の関係オペレータに
よるデータ処理システムの前の操作の間にある修正され
たカーソルを形成したものと殆んど同じものである。こ
の修正されたカーソルは、レコードの発生のある結果関
係を指示する。更に、会話型のユーザは、第31図のモジ
ュールWZDISP,WZSELECTまたはWZPXIに従って作動するシ
ステム1010により取扱うことができない切換え操作の1
つを選択することができるキーボード1020上のPFキー12
04を操作することになる。特に、このような操作は、ス
クリーン・フォーマット1166の追加、修正または削除へ
の変換、もしくは本文の(B)に述べたように関連した
レコードの発生の表示へ降順の変換である。 作用においては、この文脈では、データ処理システム
1010はPACE RUNその他の呼出しプログラム内のDO PXI
モジュールへ戻り、修正されたカーソルおよび選択され
た操作を表わす信号が作業用記憶域において呈示され
る。 DO PXIモジュール1112に従って作動するデータ処理
システム1010は、選択された操作を表わす信号をテスト
する。もし操作が降順であれば、これは(B)において
述べたように取扱われる。もしこの動作がスクリーン・
フォーマットの追加、修正または削除への変換であるな
らば、モジュールDOPXIは依然としてPACE RUN内か他の
呼出しプログラム内のDO UPDATEモジュール1126を呼出
す。 ADDスクリーンの場合については本文では詳細には記
述しない。要約すれば、省略時のスクリーンの追加操作
はユーザにより会話的に有効に定義することができ、こ
れにおいてはある開放フィールドがそれに含まれる特徴
的な情報により表示される。この目的のため、データ処
理システム1010はWZFETCHに従って作動するが、データ
ベース1150からのレコードの発生の検索の代りに、省略
時の特徴的な情報を含むディフォールト・レコード1800
を検索する。 スクリーン・フォーマット1166の修正または削除の場
合には、DO UPDATEモジュール1126に従って作動するデ
ータ処理システム1010はWZFETCHを呼出す。もしステー
タスの値が「照会の終り」であれば、データ処理システ
ム1010はDO PXIモジュール1112へ戻る。 もし1つのレコードの発生の表示を行なうスクリーン
・フォーマット1166を見ている間にスクリーンの修正ま
たは削除への変換がユーザにより選択されたならば、デ
ータ処理システム1010は、スクリーン・フォーマットの
修正または削除に従って表示するため前記レコードの発
生を得るためWZFETCHに従って作動することになる。ス
クリーン・フォーマットの修正または削除は会話的モジ
ュール1706に従って作動するデータ処理システム1010に
よって用いられ、このレコードの発生の表示がユーザに
対して行なわれる。修正操作の場合には、ユーザは示さ
れたレコードの発生のフィールドを会話的に修正して、
データベースにおける対応するレコードの発生信号の修
正の操作を選択するように入力キー1206を操作すること
ができる(表示の修正はそれ自体データベースにおける
物理レコードを修正することはなく、この修正は以下に
述べるように妥当性検査の後、別の操作において行なわ
なければならない)。或いはまた、ユーザは、レコード
飛越しのためPFキー1204−1を操作することができ、あ
るいは戻りのPFキー1204−16を操作することができる。 データ処理システム1010はこの時、DO UPDATEモジュ
ール1126に戻り、これがWZUPDATEモジュール1115の呼出
しを行なう。本文の記述の目的のため、WZUPDATEモジュ
ール1115は修正と削除の両方の操作を行なうための手段
を提供するものとする。モジュール1126に従って作動す
るデータ処理システム1010は、関係の属性の記憶場所15
20からの、保全の制限を構成する信号をアクセスする
(このような信号は前に作業用記憶域にコピーされてい
ることが望ましい)。データ処理システム1010は、選択
された操作の妥当性を検査するためユーザの入力(修正
の操作のためのレコードの発生修正による操作の選択)
を表わす信号と共にこのような保全制限信号を使用す
る。プログラム・バッファ1703における信号は、それに
ついて操作が実施されることになるレコードの発生を含
んでいる。 もし選択された走査が妥当でなければ実行されない
が、エラー条件を表わす信号はシステム1010によって生
成されてTCOMデータ構造1160の状態データ構造1700に格
納され、その後システム1010はDO UPDATEに戻る。この
時検出されたエラーの種類については、関係の属性1520
が削除を禁止する時、子のレコードの発生がある関係に
より関連付けられる親のレコードの発生を除去しようと
する試みの事例により前に記述した。 更に望ましくは、他のエラーもまたこの時検出され
る。例えば、ある特定のレコードの発生を「固定する」
(別の会話的ユーザが別の端末を介してこれに関し操作
しつつある故に使用できない状態となる)ことができ、
その結果この操作は妥当であってもこの時実施すること
ができず、ある短い時間間隔の後操作を再び試みること
ができる。もしこの操作が妥当であり実施することがで
きる場合は、モジュールWZUPDATEに従って作動するシス
テム1010はこの操作を行なってDOUPDATEへ戻る。 DO UPDATEモジュール1126に従って作動するデータ処
理システム1010はWZFETCHを呼出す。前述の如くWZFETCH
に従って作動するシステム1010はまた状態のデータ構造
をテストして、エラー条件に応答して前に検索されたレ
コードの発生からなる信号をシステム・バッファ1168
(前のWZFETCH操作の間最初に検索された時信号が置か
れる)からプログラム・バッファ1703へコピーする。ス
クリーン・サービス・モジュール前述の如く呼出され
て、メッセージ・ファイル1702からのエラー・メッセー
ジと共に前に検索されたレコードの発生を表示するよう
ディスプレイ1018を制御する。望ましくは、エラー状態
にあったフィールド(単数または複数)がディスプレイ
において点滅される。 会話中のユーザはこのエラー・メッセージを読出して
入力を訂正することができる。ユーザが入力キーまたは
PFキー1204−1または1204−16の一方を操作した時、デ
ータ処理システム1010はWZFETCHに従う操作からのDO U
PDATEモジュール1126へ戻る。モジュール1126は前述の
如くWZ UPDATEモジュール115を呼出し、システム1010
は選択された操作(および修正操作のための修正された
レコードの発生信号)を検査し、もしエラーが訂正され
たならば、選択された操作を実行する。 パラメータ$errors−onlyは以下の方法で使用され
る。ある場合には、「全ての削除」の如く選択可能な操
作を会話ユーザに対して提供することが必要となり、こ
の場合複数のレコードの発生(望ましくは、前の操作に
おいて与えられる結果関係により定義される)が全てデ
ータベース1150から削除されることになる。もし操作が
このレコードの発生に関して妥当であるならばユーザは
各レコードの発生が削除される前にこれを調べる必要は
ないが、もしこの操作がレコードの発生のどれか1つに
ついて不当であるならば、操作がこのレコードに関して
訂正もしくは飛越し可能でありまたこの操作が残りのレ
コードについて行なえるように、ユーザがあるエラー・
メッセージによりこのレコードの発生を見ることができ
ることが望ましい。あるいはまた、前述の如く、あるデ
ータ処理システムにおいては多くの会話ユーザが同時に
データベース1150におけるレコードの発生をアクセス中
あるデータ処理システムにおいて特定のレコードの発生
がある特定の時点において検索できないことが生じる恐
れがある。このような場合には、もし成功すればシステ
ムが作動を継続することを許す再試行操作を会話ユーザ
が選択することが可能であることが望ましい。 この目的のため、選択された操作がカーソルによって
指示された全てのレコードの発生に関して実施されるま
で、DO UPDATEモジュール126は交互にWZ FETCHモジュ
ール602およびWZ UPDATEモジュール1115を呼出す。パ
ラメータ$errors−onlyの「yes」の値を表わす信号
は、WZFETCHモジュール602に従って作動する時、システ
ム1010によって用いられる。このような信号に応答して
主モジュール704に従って作動する時、システム1010はT
COM1160における状態の構造からなる信号を使用する。
もしこれら信号により表わされる値が前に検索されたレ
コードの発生について選択された操作を実行する際エラ
ーがないことを表示するならば、システム1010は非会話
型モジュール1708に従って作動して次のレコードの発生
を検索し、これを構成する信号をプログラム・バッファ
に置き、qry.fch−pos信号1707を増分する。この操作は
この時新たに取出されたレコードの発生に関して検査さ
れることになる。 しかし、もしステータス構造1700を構成する信号がWZ
UPDATE155によるシステム1010の前の操作から1つの
エラー条件を示すならば、主モジュール1704に従って作
動するシステム1010は会話型モジュール1706を呼出すこ
とになる。 前述の如く、前に検索されたレコードの発生を構成す
る信号はプログラム・バッファ1703へコピーされ、スク
リーン・サービス・モジュールは、screen#により指示
されるフォーマット1116に従ってこのようなレコードの
発生およびファイル1702からのエラー・メッセージの表
示を行なうためディスプレイ1018を制御する。 操作の選択信号を含む会話ユーザにより信号の入力と
同時にシステム1010は前に検索された保全レベルのエラ
ーの表示のステータス関係1700をクリアして、WZ UPDA
TEモジュール1115を呼出すDO UPDATEへ戻る。もし会話
ユーザの信号がエラーを訂正した(あるいは、再試行ま
たは飛越し、または他の適当な操作を選択した)場合に
は、システムは適当な動作を行ない残りのレコードの発
生による操作を継続することができる。もしそうでなけ
れば、システム1010は再びこの操作の検査に失敗し、適
当な進行をステータスの構造1700に置く。DO PXIまた
は他の呼出しプログラムへの戻りが生じない状態は、エ
ラーが訂正されるまであり得る。このため、DO PXIま
たは他の呼出しプログラムのどれも、このようなエラー
を取扱うための手段を必要としない。 本発明による装置および操作が多くの場合における入
力エラーの訂正を行なうため会話ユーザにとって特に便
利な手段を提供することが判るであろう。エラーの検出
およびこれを訂正する会話的な手段がデータ処理システ
ムの作動の照会アクセス・レベルにおいて提供される。
このため、プログラマがこのようなエラー・レベルに関
与する必要がないため、修正または削除操作を用いるデ
ータベースのレコードの発生と同時に行なわれる他の操
作を含む会話的なデータベースの保守プログラムをプロ
グラマが構成しつつある場合に特に利点をもたらすもの
である。
【図面の簡単な説明】 第1図は(A)に記載した技術が採用されたデータ処理
システムの簡単なブロック図、第2図および第3図はデ
ータベースを含む物理的なレコードとデータ処理システ
ムのユーザ間の関係を示す概念図、第4図はリレーショ
ナル・データベースの典型的な関係の構成要素を示す
図、第5図は第1図のデータ処理システムのキーボード
を示す図、第6図はデータ処理システムにおけるデータ
の格納の割当てを示す概念図、第7図はデータ処理シス
テムにおいてプログラムの格納の割当てを示す概念図、
第8a図および第8b図はスクリーン像を規定するためデー
タベースからのレコードの発生の表示と組合わされた特
定のスクリーンのフォーマットを示す図、第9図は本発
明の関係オペレータ装置を示す概念(ブラックボック
ス)図、第10図及び第11図は第6図の各部を更に詳細に
示す概念図、第12図はスクリーンのフォーマットの形式
を示す概略図、第13図および第14図はあるスクリーン・
フォーマットを更に詳細に示す図、第15図は第6図の一
部を更に詳細に示す図、第16図は(B)に記載した検索
技術が用いられるデータ処理システムのブロック図、第
17図は第16図のデータ処理システムのキーボードを更に
詳細に示す図、第18図はこの検索技術による第16図のデ
ータ処理システムの記憶装置のデータ格納場所の一部の
割当て状態を示す図、第19図はこの検索技術による第16
図のデータ処理システムの記憶装置のプログラムの格納
場所の一部の割当て状態を示す図、第20図は本装置のデ
ータ格納場所における信号に関してプログラム格納場所
に格納された特定の信号の制御下における第16図のデー
タ処理システムにより行なわれる諸操作を示す概念図、
第21図、第22図、第23図および第24図はこの検索技術に
よる操作において用いられるあるスクリーン・フォーマ
ットを詳細に示す図、第25図は第18図の一部を更に詳細
に示す図、第26図はある事例のデータベースのレコード
における関係を示す概念図、第27図および第28図は本検
索技術による操作において用いられる更に別のあるスク
リーン・フォーマットを詳細に示す図、第29図は本発明
が用いられるデータ処理システムの簡単なブロック図、
第30図は第1図のデータ処理システムのキーボードを示
す図、第31図はプログラムの格納場所の割当てを示す
図、第32図は作業用記憶域の割当てを示す図、および第
33図は第31図のWZFETCHモジュールを更に詳細に示す図
である。

Claims (1)

  1. (57)【特許請求の範囲】 1.関係型データベース(1150)を管理する際に用いる
    対話型エラー処理装置において、 a)ディスプレイ手段(1018)と、 b)入力手段(1020)と、 c)前記関係型データベース(1150)におけるレコード
    ・オカレンスを有するレコード・オカレンス信号と、状
    態信号(1700)と、フェッチ・カレンシー信号(1707)
    と、フォーマット信号(1151)と、表示可能なエラー・
    メッセージの文字を表すメッセージ・ファイル信号(17
    02)とを提供し、また、動作バッファ(1162)と第1及
    び第2のレコード・オカレンス・バッファ(1168、170
    3)とを定義する手段を提供する、記憶手段(1017)
    と、 d)呼び出し手段(126)と、 e)動作手段(1115)であって、 動作呼び出し信号に応答して、前記第2のレコード・オ
    カレンス・バッファにおける前記レコード・オカレンス
    信号に関して実現されるように選択される動作を有効化
    し、有効又は無効のどちらかの条件を表す出力信号を提
    供する手段と、 前記無効条件を表す前記出力信号に応答して、状態無効
    信号(1700)を発生し、動作リターン信号を提供する手
    段と、 前記有効条件を表す前記出力信号に応答して、前記レコ
    ード・オカレンス信号に関して前記選択された動作を実
    行し、動作リターン信号を提供する手段と、を有する動
    作手段(1115)と、 f)フェッチ手段(1602)であって、 フェッチ呼び出し信号、非対話型条件、及び前記カレン
    シー信号に応答して、前記関係型データベース(1150)
    から前記レコード・オカレンス信号を検索して、前記第
    1のレコード・オカレンス・バッファ(1168)の中に配
    置し、前記第1のレコード・オカレンス・バッファ(11
    68)の中の前記レコード・オカレンス信号を前記第2の
    レコード・オカレンス・バッファ(1703)にコピーし、
    前記フェッチ・カレンシー信号を増分させ、更に、フェ
    ッチ・リターン信号を提供する非対話型手段(1708)
    と、 フェッチ・カレンシー信号(1707)と対話型条件信号と
    に応答する対話型手段であって、 前記状態有効信号(1700)と前記カレンシー信号(170
    7)とに応答して、前記関係型データベース(1150)か
    ら前記レコード・オカレンス信号を検索して、前記第1
    のレコード・オカレンス・バッファ(1168)の中に配置
    し、前記第1のレコード・オカレンス・バッファ(116
    8)の中の前記レコード・オカレンス信号を前記第2の
    レコード・オカレンス・バッファ(1703)にコピーする
    手段と、 前記状態無効信号(1700)に応答して、前記第1のレコ
    ード・オカレンス・バッファ(1168)の中の前記レコー
    ド・オカレンス信号を、前記第2のレコード・オカレン
    ス・バッファ(1703)にコピーする手段と、 前記フォーマット信号(1151)と前記第2のレコード・
    オカレンス・バッファ(1703)における前記信号とに応
    答して、前記ディスプレイ手段(1018)を制御し、前記
    レコード・オカレンスの表現を表示し、前記入力手段
    (1020)からのオペレータ入力信号に応答して、動作選
    択信号を前記動作バッファ(1162)に配置し、更に、前
    記状態無効信号(1700)と前記メッセージ信号(1702)
    とに応答して、前記エラー・メッセージの表現を前記レ
    コード・オカレンス表現と共に表示するディスプレイ・
    モジュール手段と、を有する対話的手段(1706)と、 と備えており、更に、前記呼び出し手段(1126)は、前
    記動作リターン信号と前記状態無効信号(1700)とに応
    答して、フェッチ手段呼び出し信号を提供し、前記フェ
    ッチ・リターン信号に応答して動作呼び出し信号を提供
    することを特徴とする対話的エラー処理装置。 2.特許請求の範囲第1項記載のエラー処理装置におい
    て、前記ディスプレイ手段は、更に、オペレータ入力手
    段に応答して前記第2のレコード・オカレンス・バッフ
    ァ(1703)における前記信号を修正することを特徴とす
    るエラー処理装置。 3.特許請求の範囲第1項記載のエラー処理装置におい
    て、前記フェッチ手段(1602)は、更に、フォーマット
    識別信号、条件パラメータ信号の値、及び前記状態無効
    信号に応答して、前記対話的条件信号を1つ提供し、フ
    ォーマット識別信号、条件パラメータ信号の値、及び前
    記状態有効信号に応答して、前記非対話的条件信号を1
    つ提供する条件手段を備えていることを特徴とするエラ
    ー処理装置。
JP60299659A 1985-01-11 1985-12-27 関係型データベースの管理における対話型エラー処理装置 Expired - Lifetime JP2955289B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US69080085A 1985-01-11 1985-01-11
US690800 1985-01-11

Related Child Applications (4)

Application Number Title Priority Date Filing Date
JP6000061A Division JPH06282473A (ja) 1985-01-11 1994-01-04 関係型データベースにおけるレコード検索手段
JP6000060A Division JPH06236305A (ja) 1985-01-11 1994-01-04 関係型データベースにおけるカーソル機能実現方法
JP6000059A Division JPH06236304A (ja) 1985-01-11 1994-01-04 データ処理システム
JP6000058A Division JPH06236303A (ja) 1985-01-11 1994-01-04 データベースの操作手段及び操作モード遷移手段

Publications (2)

Publication Number Publication Date
JPS61221819A JPS61221819A (ja) 1986-10-02
JP2955289B2 true JP2955289B2 (ja) 1999-10-04

Family

ID=24774021

Family Applications (5)

Application Number Title Priority Date Filing Date
JP60299659A Expired - Lifetime JP2955289B2 (ja) 1985-01-11 1985-12-27 関係型データベースの管理における対話型エラー処理装置
JP6000059A Pending JPH06236304A (ja) 1985-01-11 1994-01-04 データ処理システム
JP6000061A Pending JPH06282473A (ja) 1985-01-11 1994-01-04 関係型データベースにおけるレコード検索手段
JP6000058A Pending JPH06236303A (ja) 1985-01-11 1994-01-04 データベースの操作手段及び操作モード遷移手段
JP6000060A Pending JPH06236305A (ja) 1985-01-11 1994-01-04 関係型データベースにおけるカーソル機能実現方法

Family Applications After (4)

Application Number Title Priority Date Filing Date
JP6000059A Pending JPH06236304A (ja) 1985-01-11 1994-01-04 データ処理システム
JP6000061A Pending JPH06282473A (ja) 1985-01-11 1994-01-04 関係型データベースにおけるレコード検索手段
JP6000058A Pending JPH06236303A (ja) 1985-01-11 1994-01-04 データベースの操作手段及び操作モード遷移手段
JP6000060A Pending JPH06236305A (ja) 1985-01-11 1994-01-04 関係型データベースにおけるカーソル機能実現方法

Country Status (4)

Country Link
EP (1) EP0187373B1 (ja)
JP (5) JP2955289B2 (ja)
CA (2) CA1268259C (ja)
DE (1) DE3588007T2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2711204B2 (ja) * 1992-03-09 1998-02-10 インターナショナル・ビジネス・マシーンズ・コーポレイション リレーショナルデータベースのユーザインターフェースを生成する方法
KR102195838B1 (ko) * 2019-04-10 2020-12-28 주식회사 티맥스 소프트 데이터 베이스 관리 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3533082A (en) * 1968-01-15 1970-10-06 Ibm Instruction retry apparatus including means for restoring the original contents of altered source operands
DE2523795C3 (de) * 1975-05-28 1979-11-22 Siemens Ag, 1000 Berlin Und 8000 Muenchen Verfahren zum wiederholten Ausführen von Maschinenbefehlen durch eine festverdrahtete Steuerung in einer Verarbeitungseinheit einer Datenverarbeitungsanlage
JPS54147747A (en) * 1978-05-12 1979-11-19 Hitachi Ltd Data processor
US4524415A (en) * 1982-12-07 1985-06-18 Motorola, Inc. Virtual machine data processor

Also Published As

Publication number Publication date
JPS61221819A (ja) 1986-10-02
EP0187373A3 (en) 1989-06-07
CA1268259C (en) 1990-04-24
JPH06236304A (ja) 1994-08-23
JPH06236303A (ja) 1994-08-23
EP0187373A2 (en) 1986-07-16
JPH06236305A (ja) 1994-08-23
EP0187373B1 (en) 1995-04-12
DE3588007T2 (de) 1995-10-26
CA1249375A (en) 1989-01-24
CA1301366C (en) 1992-05-19
DE3588007D1 (de) 1995-05-18
JPH06282473A (ja) 1994-10-07

Similar Documents

Publication Publication Date Title
US4888690A (en) Interactive error handling means in database management
US4791561A (en) Interactive construction of means for database maintenance
US4805099A (en) Retrieval of related records from a relational database
US6279006B1 (en) Structured data management system and computer-readable recording medium storing structured data management program
US5758062A (en) Method and apparatus for regression testing of application logic
US7725501B1 (en) System and method for rapid database application deployment and use
US5195178A (en) Adaptive window system for dynamically modeling information systems
US5212771A (en) System for establishing concurrent high level and low level processes in a diagram window through process explosion and implosion subsystems
US6964010B1 (en) Formatted-item list control
AU660451B2 (en) Database management system graphical query front end
US5179698A (en) System for transforming user data in accordance with an algorithm defined by design data and for evaluating the transformed data against logical criteria
US5193183A (en) System for accessing design data of modeler subsystems by reference to partnership set and for dynamically correlating design data of modeler subsystems
US5146591A (en) Dynamic information management system utilizing entity-relationship information model in which the attribute is independent of an entity
US20030154197A1 (en) Flexible relational data storage method and apparatus
JPH06208592A (ja) データベースシステム用インターフェースのための自動レイアウト・ジェネレータ及びその生成方法
US20110246535A1 (en) Apparatus and Method for Constructing Data Applications in an Unstructured Data Environment
JPH08305616A (ja) データ管理システム
US5940820A (en) GUI apparatus for generating an object-oriented database application
Alexander et al. Access 2013 Bible
US5097408A (en) Apparatus for specifying a result relation in a relational database system by selection of rows
JPH0895767A (ja) プログラム部品を用いたプログラム生成方法
JP2955289B2 (ja) 関係型データベースの管理における対話型エラー処理装置
JPH08503568A (ja) 複数のプログラムモジュールとコンピュータの記憶装置との間にファイルまたは他のデータエンティティの転送を集積するための順次情報集積サービス
US20230035835A1 (en) System and method of a modular framework for configuration and reuse of web components
JP2798118B2 (ja) データベース問合せ文作成装置