JP2002140193A - 情報処理装置及びその方法、コンピュータ可読メモリ - Google Patents

情報処理装置及びその方法、コンピュータ可読メモリ

Info

Publication number
JP2002140193A
JP2002140193A JP2000336528A JP2000336528A JP2002140193A JP 2002140193 A JP2002140193 A JP 2002140193A JP 2000336528 A JP2000336528 A JP 2000336528A JP 2000336528 A JP2000336528 A JP 2000336528A JP 2002140193 A JP2002140193 A JP 2002140193A
Authority
JP
Japan
Prior art keywords
database
application
information processing
processing
value
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.)
Withdrawn
Application number
JP2000336528A
Other languages
English (en)
Inventor
Masanori Wakai
聖範 若井
Naoko Yamamoto
直子 山本
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2000336528A priority Critical patent/JP2002140193A/ja
Priority to EP01309239A priority patent/EP1204041A3/en
Priority to US09/984,705 priority patent/US20020065838A1/en
Publication of JP2002140193A publication Critical patent/JP2002140193A/ja
Withdrawn 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/21Design, administration or maintenance of 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)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 アプリケーションの開発効率を向上すること
ができる情報処理装置及びその方法、コンピュータ可読
メモリを提供する。 【解決手段】 データを格納するデータベースと56
5、アプリケーションプログラム561により参照され
るアプリケーションオブジェクト562を用いてデータ
ベース565を操作する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データを管理する
データベースを処理する情報処理装置及びその方法、コ
ンピュータ可読メモリに関するものである。
【0002】
【従来の技術】従来技術では、永続的なデータを扱うた
めにデータベースを利用することがあったが、データベ
ースモジュール特有のコーディング手順を含んだ複雑な
ノウハウを必要としていた。
【0003】図43は、オブジェクト指向言語で使用さ
れるリレーショナルデータベースのインターフェースの
一例である。オブジェクト指向言語の目的に忠実であれ
ば、属性情報は個々のオブジェクトが持つべきものであ
り、オブジェクトから独立すべきでないと考えられる。
つまり、具体的な問題として、データベースを扱うため
に、多くのインターフェースを理解する必要があり、ア
プリケーションプログラム開発をより複雑化する一因と
なっている。
【0004】そこで、いくつかの開発ツールや特開平1
1−224184号では、特定の開発環境を提供し、プ
ログラミングコードを自動生成させることで、プログラ
マの作業を軽減している。また、いくつかのデータベー
スエンジンでは、特定のClassを継承して必要なM
ethodを実装することで、あるいは対象となるCl
assファイルをツールにより変換することでデータベ
ースを扱えるようにしている。
【0005】
【発明が解決しようとする課題】図44は、前述のアプ
リケーションプログラム開発の複雑化を少しでも解消す
るために行われている、ウィザードを用いた開発ツール
の一例である。同図のように、アプリケーションプログ
ラマは、開発ツールが提供するユーザインターフェース
に従って操作することで、目的とするプログラムのフレ
ームワークを作成することが可能である。しかし、この
場合は、開発ツール及びウィザードの使用方法を理解し
ておく必要があり、デバッグ時には自動生成されたプロ
グラムをある程度理解しておかなければならなかった。
【0006】図45は、前述のアプリケーションプログ
ラム開発の複雑化を少しでも解消するために行われてい
る、リレーショナルデータベースをオブジェクト指向デ
ータベースのインターフェースで隠蔽した一例である。
アプリケーションプログラマは、データベースをオブジ
ェクト指向データベースとして使用することができる。
そのため、複雑化を多少改善することができるが、実際
には同図のように、リレーショナルデータベースを隠蔽
するためのプログラミングコードをアプリケーションプ
ログラマ自身が作成する必要があった。
【0007】図46は、前述のアプリケーションプログ
ラム開発の複雑化を少しでも解消するために行われてい
る、ポストプロセッサを用いた一例である。アプリケー
ションプログラマは、作成されたプログラミングコード
を、ポストプロセッサを用いて変換することで、データ
ベースをアクセスするように拡張することができる。こ
の場合、ポストプロセッサの使用方法を理解しておく必
要があり、同じ拡張子のファイルであっても、データベ
ースアクセス機能が拡張後のものかどうか意識的に区別
しておく必要があった。更に、クラス単位で処理される
ため、同一のクラスから生成されるインスタンスをデー
タベースに格納するかどうか使い分けることはできなか
った。
【0008】このように、いずれの方法を用いても、特
定の制限の中で、特有のノウハウを必要としているた
め、開発効率の低下を避けることができなかった。
【0009】本発明は上記の課題に鑑みてなされたもの
であり、アプリケーションの開発効率を向上することが
できる情報処理装置及びその方法、コンピュータ可読メ
モリを提供することを目的とする。
【0010】
【課題を解決するための手段】上記の目的を達成するた
めの本発明による情報処理装置は以下の構成を備える。
即ち、データを管理するデータベースを処理する情報処
理装置であって、前記データを格納するデータベース
と、アプリケーションプログラムにより参照されるアプ
リケーションオブジェクトを用いて前記データベースを
操作するデータベース操作手段と、を備える。
【0011】また、好ましくは、前記データベースは、
オブジェクト指向データベースである。
【0012】また、好ましくは、前記データベースは、
更に、データベースオブジェクトを格納し、前記データ
ベース操作手段は、前記データベースオブジェクトを用
いて処理される。
【0013】また、好ましくは、前記アプリケーション
オブジェクト定義情報を取得するアプリケーションオブ
ジェクト定義情報取得手段とを更に備え、前記データベ
ース操作手段は、前記アプリケーションオブジェクト定
義情報を用いて処理される。
【0014】また、好ましくは、前記アプリケーション
オブジェクト定義情報取得手段は、指定されたクラス名
を用いて前記アプリケーションオブジェクト定義情報と
取得する。
【0015】また、好ましくは、前記アプリケーション
オブジェクト定義情報に対応する前記データベースオブ
ジェクト定義情報を決定する決定手段とを更に備え、前
記データベース操作手段は、前記データベースオブジェ
クト定義情報を用いて処理される。
【0016】また、好ましくは、前記データベース操作
手段は、前記データベースオブジェクト定義情報を満た
す前記データベースオブジェクトを取得するデータベー
スオブジェクト取得手段と、前記アプリケーションオブ
ジェクト定義情報に対応するアプリケーションオブジェ
クトを生成するアプリケーションオブジェクト生成手段
と、前記データベースオブジェクト定義情報に対応する
前記データベースオブジェクトの値を取得するデータベ
ースオブジェクト値取得手段と、前記生成手段で生成さ
れた空のアプリケーションオブジェクトに前記データベ
ースオブジェクトの値を格納するアプリケーションオブ
ジェクト値格納手段とを備える。
【0017】また、好ましくは、前記アプリケーション
オブジェクト値格納手段は、前記アプリケーションオブ
ジェクトのフィールド名を取得するフィールド名取得手
段と、前記アプリケーションオブジェクトのフィールド
名に対応する前記データベースオブジェクトのフィール
ド名を決定するデータベースオブジェクトフィールド名
決定手段とを備え、前記データベースオブジェクト値取
得手段は、前記アプリケーションオブジェクトのフィー
ルド名に対応する前記データベースオブジェクトのフィ
ールドからのみ、該データベースオブジェクトの値を取
得する。
【0018】また、好ましくは、前記アプリケーション
オブジェクト定義情報に対応する前記アプリケーション
オブジェクトの値を取得するアプリケーションオブジェ
クト値取得手段とを更に備え、前記データベース操作手
段は、前記アプリケーションオブジェクトの値を用いて
処理される。
【0019】また、好ましくは、前記データベースオブ
ジェクト定義情報に対応する前記データベースオブジェ
クトを生成するデータベースオブジェクト生成手段と、
前記データベースオブジェクトに前記アプリケーション
オブジェクトの値を格納するデータベースオブジェクト
値格納手段と、前記データベースオブジェクトを前記デ
ータベースに追加するデータベースオブジェクト追加手
段と、を更に備える。
【0020】また、好ましくは、前記アプリケーション
オブジェクトと前記データベースオブジェクト間の関連
を示すオブジェクト間関連情報を記憶するオブジェクト
対応テーブルとを更に備え、前記データベース操作手段
は、前記オブジェクト対応テーブルを用いて処理され
る。
【0021】また、好ましくは、前記オブジェクト対応
テーブルを更新するオブジェクト対応テーブル更新手段
と、を更に備える。
【0022】また、好ましくは、前記オブジェクト対応
テーブル更新手段は、前記アプリケーションオブジェク
トを取得した場合の前記データベースオブジェクト間関
連情報を前記オブジェクト対応テーブルに追加する。
【0023】また、好ましくは、前記オブジェクト対応
テーブル更新手段は、前記アプリケーションオブジェク
トを追加した場合の前記データベースオブジェクト間関
連情報を前記オブジェクト対応テーブルに追加する。
【0024】また、好ましくは、前記オブジェクト対応
テーブル更新手段は、前記アプリケーションオブジェク
トを削除した場合の前記データベースオブジェクト間関
連情報を前記オブジェクト対応テーブルから削除する。
【0025】また、好ましくは、前記オブジェクト間関
連情報により前記アプリケーションオブジェクトに対応
する前記データベースオブジェクトを取得する関連デー
タベースオブジェクト取得手段とを更に備える。
【0026】また、好ましくは、前記データベースオブ
ジェクトに前記アプリケーションオブジェクトの値を格
納するデータベースオブジェクト値格納手段と、前記デ
ータベースオブジェクトを前記データベースに追加する
データベースオブジェクト更新手段と、を更に備える。
【0027】また、好ましくは、前記データベースオブ
ジェクトを前記データベースから削除するデータベース
オブジェクト削除手段とを更に備える。
【0028】また、好ましくは、前記データベースオブ
ジェクト値格納手段は、前記アプリケーションオブジェ
クトのフィールド名を取得するフィールド名取得手段
と、前記アプリケーションオブジェクトのフィールド名
に対応する前記データベースオブジェクトのフィールド
名を決定するデータベースオブジェクトフィールド名決
定手段とを備え、前記アプリケーションオブジェクトの
フィールド名に対応する前記データベースオブジェクト
のフィールドにのみ、該アプリケーションオブジェクト
の値を格納する。
【0029】上記の目的を達成するための本発明による
情報処理方法は以下の構成を備える。即ち、データを管
理するデータベースを処理する情報処理方法であって、
前記データを格納するデータベースを保持する保持工程
と、アプリケーションプログラムにより参照されるアプ
リケーションオブジェクトを用いて前記データベースを
操作するデータベース操作工程と、を備える。
【0030】上記の目的を達成するための本発明による
コンピュータ可読メモリは以下の構成を備える。即ち、
データを管理するデータベースを処理する情報処理のプ
ログラムコードが格納されたコンピュータ可読メモリで
あって、前記データを格納するデータベースを保持する
保持工程のプログラムコードと、アプリケーションプロ
グラムにより参照されるアプリケーションオブジェクト
を用いて前記データベースを操作するデータベース操作
工程のプログラムコードとを備える。
【0031】
【発明の実施の形態】以下、図面を参照して本発明の好
適な実施形態を詳細に説明する。
【0032】図1は本実施形態の情報処理装置のハード
ウェア構成を示すブロック図である。
【0033】同図において、1は情報(データ)を入力
するための入力部である。2はCPUであり、各種処理
のための演算、論理判断等を行ない、バス6に接続され
た各構成要素を制御する。3は情報(データ)を出力す
る出力部である。出力部3としては、LCDやCRT等
のディスプレイや、プリンタ等の記録装置がある。
【0034】4はプログラムメモリであり、後述するフ
ローチャートの処理手順を含むCPU2による制御のた
めのプログラムを格納するメモリである。プログラムメ
モリ4は、ROMであってもよいし、外部記憶装置等か
らプログラムがロードされるRAMであってもよい。
【0035】5はデータメモリであり、各種処理で生じ
たデータを格納するほか、後述するデータベース(D
B)のデータを格納する。データメモリ5は、例えば、
RAMとするが、データベースのデータは、不揮発な外
部記憶媒体から、処理に先立ってロードしておく、ある
いは必要があるごとに参照するものとする。
【0036】6はCPU2の制御の対象とする各構成要
素を指示するアドレス信号、各構成要素を制御するため
のコントロール信号、各構成要素間で相互にやりとりさ
れるデータの転送を行なうためのバスである。
【0037】図2は本実施形態の情報処理装置で実行さ
れる処理を示すフローチャートである。
【0038】同図に示すように、システムが起動される
と、ステップs201で、システム起動処理が実行さ
れ、各種データが初期化される。次に、ステップs20
2で、イベント待ち処理を実行し、ユーザの操作に対応
するイベントや、各種状態の変化に対応するイベント等
の発生を待機する。
【0039】続く、ステップs203で、発生したイベ
ントが電源OFFの指示であるか否かを判定する。イベ
ントが電源OFFの指示でない場合(ステップs203
でNO)、ステップs204に進む。ステップs204
で、データベース処理操作の指示であるか否かを判定す
る。データベース処理操作の指示でない場合(ステップ
s204でNO)、ステップs202に戻る。一方、デ
ータベース処理操作の指示である場合(ステップs20
4でYES)、ステップs205に進み、データベース
処理を実行後、ステップs202に戻り、処理を繰り返
す。
【0040】一方、ステップs203で、イベントが電
源OFFの指示である場合(ステップs203でYE
S)、ステップs206に進み、システム終了処理を実
行後、処理を終了する。
【0041】次に、ステップs205のデータベース処
理において表示されるデータベース処理画面の一例につ
いて、図3を用いて説明する。
【0042】図3は本実施形態のデータベース処理画面
の一例を示す図である。
【0043】31はデータベースサーバーサービスの開
始を指示するためのボタンである。32はデータベース
の作成を指示するためのボタンである。33はトランザ
クション(取引)の生成を指示するためのボタンであ
る。34はクラスの定義情報の表示を指示するためのボ
タンである。35はオブジェクトの格納情報の表示を指
示するためのボタンである。36はデータベース処理の
終了を指示するためのボタンである。
【0044】次に、ステップs205のデータベース処
理の詳細について、図4を用いて説明する。
【0045】図4は本実施形態のステップs205のデ
ータベース処理の詳細を示すフローチャートである。
【0046】データベース処理が起動されると、ステッ
プs401で、初期化処理を実行し、各種内部データを
初期化する。
【0047】次に、ステップs402の画面表示処理を
実行し、図3で説明したデータベース処理画面を表示す
る。続く、ステップs403で、イベント待ち処理を実
行し、ユーザの操作に対応するイベントを待機する。
【0048】次に、ステップs404で、ユーザが行っ
た操作に対して発生したイベントが終了の指示であるか
否かを判定する。イベントが終了の指示である場合(ス
テップs404でYES)、ステップs411に進み、
終了処理を実行後、処理を終了する。一方、イベントが
終了の指示でない場合(ステップs404でNO)、ス
テップs405に進む。
【0049】ステップs405で、イベントがトランザ
クション生成の指示であるか否かを判定する。イベント
がトランザクション生成の指示でない場合(ステップs
405でNO)、ステップs410に進み、そのイベン
トに対応する処理を実行後、ステップs402に戻り、
処理を繰り返す。一方、イベントがトランザクション生
成の指示である場合(ステップs405でYES)、ス
テップs406に進む。
【0050】ステップs406で、トランザクション生
成処理を実行し、ユーザが指示した条件に対応したトラ
ンザクションを生成する。続く、ステップs407で、
トランザクションの生成が成功したか否かを判定する。
トランザクション生成が成功しなかった場合(ステップ
s407でNO)、ステップs402に戻り、処理を繰
り返す。一方、トランザクションの生成に成功した場合
(ステップs407でYES)、ステップs408に進
む。
【0051】ステップs408で、ユーザの指示に従っ
たトランザクション処理を実行する。続く、ステップs
409で、トランザクション廃棄処理を実行し、処理済
の不要となったトランザクションを廃棄し、ステップs
402に戻り、処理を繰り返す。
【0052】次に、ステップs406のトランザクショ
ン生成処理において表示されるトランザクション生成画
面の一例について、図5を用いて説明する。
【0053】図5は本実施形態のトランザクション生成
画面の一例を示す図である。
【0054】51はユーザ名の入力エリアである。52
はユーザ名に対応するパスワードの入力エリアである。
53はデータベースの種類を指定するコンボボックスで
ある。54はデータベースへの接続サービスを提供する
サーバ名の入力エリアである。55は前述のサーバ名の
入力エリアに入力するサーバ名が不明な場合に利用され
るサーバ名選択ダイアログを表示するためのボタンであ
る。56はデータベース名の入力エリアである。57は
前述のデータベース名の入力エリアに入力するデータベ
ース名が不明な場合に利用されるデータベース名選択ダ
イアログを表示するためのボタンである。
【0055】また、58は上記の各エリアで指定された
値を用いてトランザクション生成を指示する場合のボタ
ンである。59はトランザクション生成をキャンセルす
るためのボタンである。
【0056】次に、ステップs406のトランザクショ
ン生成処理の詳細について、図6を用いて説明する。
【0057】図6は本実施形態のステップs406のト
ランザクション生成処理の詳細を示すフローチャートで
ある。
【0058】トランザクション生成処理が起動される
と、ステップs601で、生成パラメータ入力処理を実
行し、図5で説明したトランザクション生成処理画面を
表示し、ユーザにより各種パラメータが指定される。
【0059】続く、ステップs602で、上記生成パラ
メータ入力処理において、ユーザがトランザクションの
生成を指示したか否かを判定する。トランザクション生
成が指示された場合(ステップs602でYES)、ス
テップs603に進み、DBトランザクション生成処理
を実行し、ユーザにより指定された各種パラメータに対
応したトランザクションを生成する。
【0060】続く、ステップs604で、DBトランザ
クション生成処理が成功したか否かを判定する。DBト
ランザクション生成処理が成功した場合(ステップs6
04でYES)、「成功」として処理を終了する。
【0061】一方、ステップs604で、DBトランザ
クション生成処理が成功しなかった場合(ステップs6
04でNO)、あるいはステップs602で、トランザ
クション生成が指示されなかった場合(ステップs60
2でNO)、「失敗」として処理を終了する。
【0062】次に、ステップs408のトランザクショ
ン処理において表示されるトランザクション処理画面の
一例について、図7を用いて説明する。
【0063】図7は本実施形態のトランザクション処理
画面の一例を示す図である。
【0064】71はオブジェクトの追加を指示するメニ
ューアイテムである。72はオブジェクトの削除を指示
するメニューアイテムである。73はオブジェクトの編
集を指示するメニューアイテムである。
【0065】次に、ステップs408のトランザクショ
ン処理の詳細について、図8を用いて説明する。
【0066】図8は本実施形態のステップs408のト
ランザクション処理の詳細を示すフローチャートであ
る。
【0067】トランザクション処理が起動されると、ス
テップs801で、初期化処理を実行し、各種内部デー
タを初期化する。
【0068】次に、ステップs802で、画面表示処理
を実行し、図7で説明したトランザクション処理画面を
表示する。続く、ステップs803で、イベント待ち処
理を実行し、ユーザの操作に対応したイベントを待機す
る。
【0069】次に、ステップs804で、ユーザが行っ
た操作に対して発生したイベントが終了の指示であるか
否かを判定する。イベントが終了の指示である場合(ス
テップs804でYES)、ステップs806に進み、
終了処理を実行後、処理を終了する。一方、イベントが
終了の指示でない場合(ステップs804でNO)、ス
テップs805に進み、イベント対応処理を実行し、イ
ベントに対応する処理を実行後、ステップs802に戻
り、処理を繰り返す。
【0070】次に、ステップs805のイベント対応処
理において、オブジェクトの追加の指示に対応したオブ
ジェクト選択追加処理により表示される追加オブジェク
ト選択画面の一例について、図9を用いて説明する。
【0071】図9は本実施形態の追加オブジェクト選択
画面の一例を示す図である。
【0072】91はクラス名の入力エリアである。92
はクラス名の入力エリアで指定されたクラスの情報を表
示するクラス情報ダイアログを表示するためのボタンで
ある。93はクラス名の入力エリアに入力するクラス名
が不明な場合に利用されるクラス情報が格納されたファ
イルを選択・ロードするクラスファイル選択ダイアログ
を表示するためのボタンである。
【0073】94はクラス名の入力エリアで指定された
クラスに対応したオブジェクトを生成するためのボタン
である。95は既存のオブジェクトファイルを選択・ロ
ードするオブジェクトファイル選択ダイアログを表示す
るためのボタンである。
【0074】また、96は上記各ボタンで生成又はロー
ドされたオブジェクトの追加を指示する場合のボタンで
ある。97はオブジェクトの追加をキャンセルするため
のボタンである。
【0075】次に、ステップs805のイベント対応処
理において、オブジェクトの追加の指示に対応したオブ
ジェクト選択追加処理の詳細について、図10を用いて
説明する。
【0076】図10は本実施形態のイベント対応処理に
おけるオブジェクトの追加の指示に対応したオブジェク
ト選択追加処理の詳細を示すフローチャートである。
【0077】オブジェクト選択追加処理が起動される
と、ステップs1001で、初期化処理を実行し、各種
内部データを初期化する。
【0078】次に、ステップs1002で、画面表示処
理を実行し、図9で説明した追加オブジェクト選択画面
を表示する。続く、ステップs1003で、イベント待
ち処理を実行し、ユーザの操作に対応したイベントを待
機する。
【0079】次に、ステップs1004で、ユーザが行
った操作に対して発生したイベント種別を判定し、対応
する処理に分岐する。
【0080】イベント種別がオブジェクト生成の指示で
ある場合、ステップs1006に進み、オブジェクト生
成処理を実行して、オブジェクトを生成後、ステップs
1002に戻り、処理を繰り返す。
【0081】イベント種別が上記で生成又はロードされ
たオブジェクトの追加の指示である場合、ステップs1
007に進み、オブジェクト追加確定処理を実行し、オ
ブジェクトをデータベースに追加後、変更を確定する。
その結果、続く、ステップs1008で、オブジェクト
の変更が成功したか否かを判定する。オブジェクトの変
更が成功した場合(ステップs1008でYES)、ス
テップs1009に進み、終了処理を実行後、「成功」
として処理を終了する。一方、オブジェクトの変更が成
功しなかった場合(ステップs1008でNO)、ステ
ップs1010の終了処理を実行後、「失敗」として処
理を終了する。
【0082】イベント種別が上記以外である場合、ステ
ップs1005に進み、その他イベント対応処理によ
り、その他イベントに対応する処理を実行後、ステップ
s1002に戻り、処理を繰り返す。
【0083】次に、ステップs1006のオブジェクト
生成処理において表示されるオブジェクト新規作成時の
オブジェクト編集画面の一例について、図11を用いて
説明する。
【0084】図11は本実施形態のオブジェクト新規作
成時のオブジェクト編集画面の一例を示す図である。
【0085】111は編集対象となるオブジェクトのク
ラス名を示すエリアである。112はオブジェクトのク
ラスが持つフィールド名のリストを示すエリアである。
113はフィールド名のリストの中から選択されている
フィールドのクラス名を示すエリアである。114は同
フィールドの属性を示すエリアである。
【0086】115は同フィールドに格納される値の入
力エリアである。116は入力エリアに直接入力するこ
とが困難なオブジェクトを指定するためのオブジェクト
指定ダイアログを表示するためのボタンである。117
は前記オブジェクトのクラスが持つメソッド名のリスト
を示すエリアである。
【0087】また、118は上記で編集されたオブジェ
クトの編集内容の確定を指示する場合のボタンである。
119はオブジェクトの編集内容をキャンセルするため
のボタンである。
【0088】次に、ステップs1006のオブジェクト
生成処理の詳細について、図12を用いて説明する。
【0089】図12は本実施形態のステップs1006
のオブジェクト生成処理の詳細を示すフローチャートで
ある。
【0090】オブジェクト生成処理が起動されると、ス
テップs1201で、空オブジェクト生成処理を実行
し、指定されたクラスに対応するデフォルトインスタン
スを生成する。
【0091】空オブジェクト生成処理の結果、続く、ス
テップs1202で、デフォルトインスタンスの生成に
成功したか否かを判定する。デフォルトインスタンスの
生成に成功した場合(ステップs1202でYES)、
ステップs1203に進み、オブジェクト編集処理を実
行し、図11で説明したオブジェクト編集画面を表示
し、ユーザの操作を受け付ける。
【0092】オブジェクト編集処理の結果、続く、ステ
ップs1204で、オブジェクトの編集内容の確定が指
示されたか否かを判定する。オブジェクトの編集内容の
確定が指示された場合(ステップs1204でYE
S)、「成功」として処理を終了する。
【0093】一方、ステップs1204で、オブジェク
トの編集内容の確定が指示されなかった場合(ステップ
s1204でNO)、あるいはステップs1202で、
デフォルトインスタンスの生成に成功しなかった場合
(ステップs1202でNO)、「失敗」として処理を
終了する。
【0094】次に、ステップs805のイベント対応処
理において、オブジェクトの編集の指示に対応したオブ
ジェクト選択編集処理により表示されるクラス選択画面
の一例について、図13を用いて説明する。
【0095】図13は本実施形態のクラス選択画面の一
例を示す図である。
【0096】131はクラス名の選択リストである。
【0097】また、132は上記で選択されたクラスに
対応するオブジェクトの編集を指示する場合のボタンで
ある。133はオブジェクトの編集をキャンセルするた
めのボタンである。
【0098】次に、ステップs805のイベント対応処
理において、オブジェクトの編集の指示に対応したオブ
ジェクト選択編集処理により表示される、既存オブジェ
クト編集時のオブジェクト編集画面の一例について、図
14を用いて説明する。
【0099】図14は本実施形態の既存オブジェクト編
集時のオブジェクト編集画面の一例を示す図である。
【0100】同図では、ユーザ操作により、図11で示
した新規作成時の状態から、142のフィールド名「n
ame」の値が、145のように「日本 太郎」から
「日本太郎1」に変更された様子を表している。
【0101】次に、ステップs805のイベント対応処
理において、オブジェクトの編集の指示に対応したオブ
ジェクト選択編集処理の詳細について、図15を用いて
説明する。
【0102】図15は本実施形態のオブジェクト選択編
集処理の詳細を示すフローチャートである。
【0103】オブジェクト選択編集処理が起動される
と、ステップs1501で、クラス選択処理を実行し、
図13で説明したクラス選択画面を表示し、ユーザの選
択操作を受け付ける。
【0104】クラス選択処理の結果、続く、ステップs
1502で、クラスに対応するオブジェクトの編集が指
示されたか否かを判定する。オブジェクトの編集が指示
されなかった場合(ステップs1502でNO)、「失
敗」として処理を終了する。一方、オブジェクトの編集
が指示された場合(ステップs1502でYES)、ス
テップs1503に進む。
【0105】次に、ステップs1503で、全オブジェ
クト取得確定処理を実行し、選択されたクラスに対応す
る全てのオブジェクトを取得する。
【0106】全オブジェクト取得確定処理の結果、続
く、ステップs1504で、オブジェクトの取得が成功
したか否かを判定する。オブジェクトの取得が成功しな
かった場合(ステップs1504でNO)、「失敗」と
して処理を終了する。一方、オブジェクトの取得が成功
した場合(ステップs1504でYES)、ステップs
1505に進む。
【0107】次に、ステップs1505で、処理対象を
前記取得された全オブジェクトの先頭に初期化し、次ス
テップ以降でそれぞれのオブジェクトに対する処理を繰
り返す。
【0108】続く、ステップs1506で、全処理対象
のオブジェクトに対する処理が終了である否か判定す
る。全処理対象のオブジェクトに対する処理が終了であ
る場合(ステップs1506でYES)、「成功」とし
て処理を終了する。一方、全処理対象のオブジェクトに
対する処理が終了でない場合(ステップs1506でN
O)、ステップs1507に進む。
【0109】ステップs1507で、オブジェクト編集
処理を実行し、図14で説明したオブジェクト編集画面
を表示し、ユーザの操作を受け付ける。
【0110】オブジェクト編集処理の結果、続く、ステ
ップs1508で、オブジェクトの編集内容の確定が指
示されたか否かを判定する。オブジェクトの編集内容の
確定が指示されなかった場合(ステップs1508でN
O)、ステップs1511に進む。一方、オブジェクト
の編集内容の確定が指示された場合(ステップs150
8でYES)、ステップs1509に進む。
【0111】ステップs1509で、オブジェクト更新
確定処理を実行し、確定した編集内容でデータベース内
のデータを更新し、その結果を確定する。
【0112】オブジェクト更新確定処理の結果、続く、
ステップs1510で、データの更新が成功したか否か
を判定する。データの更新が成功しなかった場合(ステ
ップs1510でNO)、「失敗」として処理を終了す
る。一方、データの更新が成功した場合(ステップs1
510でYES)、ステップs1511に進む。
【0113】ステップs1511で、処理対象のオブジ
ェクトを次に進め、ステップs1506に戻り、処理を
繰り返す。
【0114】次に、ステップs805のイベント対応処
理において、オブジェクトの削除の指示に対応したオブ
ジェクト選択削除処理により表示される、既存オブジェ
クト参照時のオブジェクト参照画面の一例について、図
16を用いて説明する。
【0115】図16は本実施形態の既存オブジェクト参
照時のオブジェクト参照画面の一例を示す図である。
【0116】同図に示したように、図11の新規作成時
や、図14の編集時の状態とは、165のフィールドに
格納される値の入力エリアが、入力不可能な状態になっ
ている点が異なっている。
【0117】次に、ステップs805のイベント対応処
理において、オブジェクトの削除の指示に対応したオブ
ジェクト選択削除処理の詳細について、図17を用いて
説明する。
【0118】図17は本実施形態のオブジェクト選択削
除処理の詳細を示すフローチャートである。
【0119】オブジェクト選択削除処理が起動される
と、ステップs1701のクラス選択処理を実行し、図
13で説明したクラス選択画面を表示し、ユーザの選択
操作を受け付ける。
【0120】クラス選択処理の結果、続く、ステップs
1702で、クラスに対応するオブジェクトの削除が指
示されたか否かを判定する。オブジェクトの削除が指示
された場合(ステップs1702でNO)、「失敗」と
して処理を終了する。一方、オブジェクトの削除が指示
された場合(ステップs1702でYES)、ステップ
s1703に進む。
【0121】次に、ステップs1703で、全オブジェ
クト取得確定処理を実行し、選択されたクラスに対応す
る全てのオブジェクトを取得する。
【0122】全オブジェクト取得確定処理の結果、続
く、ステップs1704で、オブジェクトの取得が成功
したか否かを判定する。オブジェクトの取得が成功しな
かった場合(ステップs1704でNO)、「失敗」と
して処理を終了する。一方、オブジェクトの取得が成功
した場合(ステップs1704でYES)、ステップs
1705に進む。
【0123】次に、ステップs1705で、処理対象を
前記取得された全オブジェクトの先頭に初期化し、次ス
テップ以降でそれぞれのオブジェクトに対する処理を繰
り返す。
【0124】続く、ステップs1706で、全処理対象
のオブジェクトに対する処理が終了であるか否かを判定
する。全処理対象のオブジェクトに対する処理が終了で
ある場合(ステップs1706でYES)、「成功」と
して処理を終了する。一方、全処理対象のオブジェクト
に対する処理が終了でない場合(ステップs1706で
NO)、ステップs1707に進む。
【0125】ステップs1707で、オブジェクト参照
処理を実行し、図16で説明したオブジェクト参照画面
を表示し、ユーザの操作を受け付ける。
【0126】オブジェクト参照処理の結果、続く、ステ
ップs1708で、オブジェクトの削除が指示されたか
否かを判定する。オブジェクトの削除が指示されなかっ
た場合(ステップs1708でNO)、ステップs17
11に進む。一方、オブジェクトの削除が指示された場
合(ステップs1708でYES)、ステップs170
9に進む。
【0127】ステップs1709で、オブジェクト削除
確定処理を実行し、データベース内のデータを削除し、
その結果を確定する。
【0128】オブジェクト削除確定処理の結果、続く、
ステップs1710で、データの削除が成功したか否か
を判定する。データの削除が成功しなかった場合(ステ
ップs1710でNO)、「失敗」として処理を終了す
る。一方、データの削除が成功した場合(ステップs1
710でYES)、ステップs1711に進む。
【0129】ステップs1711で、処理対象のオブジ
ェクトを次に進め、ステップs1706に戻り、処理を
繰り返す。
【0130】次に、ステップs1503、ステップ17
03の全オブジェクト取得確定処理の詳細について、図
18を用いて説明する。
【0131】図18は本実施形態のステップs150
3、ステップ1703の全オブジェクト取得確定処理の
詳細を示すフローチャートである。
【0132】全オブジェクト取得確定処理が起動される
と、ステップs1801で、DBトランザクション開始
処理を実行し、トランザクションの開始を宣言する。続
く、ステップs1802で、全オブジェクト取得処理を
実行し、指定されたクラスに対応する全てのオブジェク
トを取得する。
【0133】全オブジェクト取得処理の結果、続く、ス
テップs1803で、全てのオブジェクトの取得が成功
したか否かを判定する。全てのオブジェクトの取得が成
功した場合(ステップs1803でYES)、ステップ
s1804に進む。一方、全てのオブジェクトの取得が
成功しなかった場合(ステップs1803でNO)、ス
テップs1805に進む。
【0134】ステップs1804で、DBトランザクシ
ョン確定処理を実行し、これまでのデータベースに対す
る処理を確定し、「成功」として処理を終了する。
【0135】ステップs1805で、DBトランザクシ
ョン取消処理を実行し、これまでのデータベースに対す
る処理を取り消し、「失敗」として処理を終了する。
【0136】次に、ステップs1007のオブジェクト
追加確定処理の詳細について、図19を用いて説明す
る。
【0137】図19は本実施形態のステップs1007
のオブジェクト追加確定処理の詳細を示すフローチャー
トである。
【0138】オブジェクト追加確定処理が起動される
と、ステップs1901で、DBトランザクション開始
処理を実行し、トランザクションの開始を宣言する。続
く、ステップs1902で、オブジェクト追加処理を実
行し、指定されたオブジェクトをデータベースに追加す
る。
【0139】オブジェクト追加処理の結果、続く、ステ
ップs1903で、オブジェクトの追加が成功したか否
かを判定する。オブジェクトの追加が成功した場合(ス
テップs1903でYES)、ステップs1904に進
む。一方、オブジェクトの追加が成功しなかった場合
(ステップs1903でNO)、ステップs1905に
進む。
【0140】ステップs1904で、DBトランザクシ
ョン確定処理を実行し、これまでのデータベースに対す
る処理を確定し、「成功」として処理を終了する。
【0141】ステップs1905で、DBトランザクシ
ョン取消処理を実行し、これまでのデータベースに対す
る処理を取り消し、「失敗」として処理を終了する。
【0142】次に、ステップs1509のオブジェクト
更新確定処理の詳細について、図20を用いて説明す
る。
【0143】図20は本実施形態のステップs1509
のオブジェクト更新確定処理の詳細を示すフローチャー
トである。
【0144】オブジェクト更新確定処理が起動される
と、ステップs2001で、DBトランザクション開始
処理を実行し、トランザクションの開始を宣言する。続
く、ステップs2002で、オブジェクト更新処理を実
行し、指定されたオブジェクトでデータベースを更新す
る。
【0145】オブジェクト更新処理の結果、続く、ステ
ップs2003で、オブジェクトの更新が成功したか否
かを判定する。オブジェクトの更新が成功した場合(ス
テップs2003でYES)、ステップs2004に進
む。一方、オブジェクトの更新が成功しなかった場合
(ステップs2003でNO)、ステップs2005に
進む。
【0146】ステップs2004で、DBトランザクシ
ョン確定処理を実行し、これまでのデータベースに対す
る処理を確定し、「成功」として処理を終了する。
【0147】ステップs2005で、DBトランザクシ
ョン取消処理を実行し、これまでのデータベースに対す
る処理を取り消し、「失敗」として処理を終了する。
【0148】次に、ステップs1709のオブジェクト
削除確定処理の詳細について、図21を用いて説明す
る。
【0149】図21は本実施形態のステップs1709
のオブジェクト削除確定処理の詳細を示すフローチャー
トである。
【0150】オブジェクト削除確定処理が起動される
と、ステップs2101で、DBトランザクション開始
処理を実行し、トランザクションの開始を宣言する。続
く、ステップs2102で、オブジェクト削除処理を実
行し、指定されたオブジェクトをデータベースから削除
する。
【0151】オブジェクト削除処理の結果、続く、ステ
ップs2103で、オブジェクトの削除が成功したか否
かを判定する。オブジェクトの削除が成功した場合(ス
テップs2103でYES)、ステップs2104に進
む。一方、オブジェクトの削除が成功しなかった場合
(ステップs2103でNO)、ステップs2105に
進む。
【0152】ステップs2104で、DBトランザクシ
ョン確定処理を実行し、これまでのデータベースに対す
る処理を確定し、「成功」として処理を終了する。
【0153】ステップs2105で、DBトランザクシ
ョン取消処理を実行し、これまでのデータベースに対す
る処理を取り消し、「失敗」として処理を終了する。
【0154】図22は本実施形態の情報処理装置の機能
構成を示す図である。
【0155】DBマネージャー508は、1つ以上のア
プリケーションプログラムA501、アプリケーション
プログラムX502からの要求に対応したデータベース
(DB)506、507との間の一連のトランザクショ
ン(取引)を扱うDBトランザクション503、50
4、505を生成・廃棄する。
【0156】同図において、アプリケーションプログラ
ムA501からの2つの要求に対応して、2つのDBト
ランザクション503、504が生成され、それぞれデ
ータベース506、507が対応付けられている。ま
た、アプリケーションプログラムX502からの要求に
対応したDBトランザクション505は、DBトランザ
クション504と同じデータベース507が対応付けら
れている。
【0157】次に、DBトランザクションの内部データ
について、図23を用いて説明する。
【0158】図23は本実施形態のDBトランザクショ
ンの内部データを示す図である。
【0159】DBトランザクションは、511に示すよ
うに、トランザクションが実行中かどうかを示す実行ス
テータスと、トランザクション対象のデータベース情報
512と、トランザクション実行中に行われた未確定の
処理リスト513と、トランザクション生成後に処理対
象となったアプリケーションオブジェクトとDBオブジ
ェクトの関連を記憶するオブジェクト対応テーブル51
4の内部データを構成する。
【0160】次に、ステップs603のDBトランザク
ション生成処理の詳細について、図24を用いて説明す
る。
【0161】図24は本実施形態のステップs603の
DBトランザクション生成処理の詳細を示すフローチャ
ートである。
【0162】DBトランザクション生成処理が起動され
ると、ステップs5201で、初期化処理を実行し、図
23で説明したDBトランザクションの内部データを初
期化する。
【0163】続く、ステップs5202で、DB接続処
理を実行し、指定された条件でデータベースに接続す
る。
【0164】DB接続処理の結果、続く、ステップs5
203で、データベースの接続が成功したか否かを判定
する。接続が成功しなかった場合(ステップs5203
でNO)、「失敗」として処理を終了する。一方、接続
が成功した場合(ステップs5203でYES)、ステ
ップs5204に進む。
【0165】ステップs5204で、接続に関連した情
報をDBトランザクションの内部データに格納し、「成
功」として処理を終了する。
【0166】次に、図18の全オブジェクト取得確定処
理、図19のオブジェクト追加確定処理、図20のオブ
ジェクト更新確定処理、図21のオブジェクト削除確定
処理それぞれにおけるステップs1801、ステップs
1901、ステップs2001、ステップs2101の
DBトランザクション開始処理の詳細について、図25
を用いて説明する。
【0167】図25は本実施形態のステップs180
1、ステップs1901、ステップs2001、ステッ
プs2101のDBトランザクション開始処理の詳細を
示すフローチャートである。
【0168】DBトランザクション開始処理が起動され
ると、ステップs5301で、前述のDBトランザクシ
ョンの内部データの実行ステータスを参照し、実行ステ
ータスが「停止」であるか否かを判定する。実行ステー
タスが「停止」でない場合(ステップs5301でN
O)、「失敗」として処理を終了する。一方、実行ステ
ータスが「停止」である場合(ステップs5301でY
ES)、ステップs5302に進む。
【0169】次に、ステップs5302で、未確定処理
リストを初期化する。続く、ステップs5303で、実
行ステータスを「実行中」に変更し、「成功」として処
理を終了する。
【0170】次に、図18の全オブジェクト取得確定処
理、図19のオブジェクト追加確定処理、図20のオブ
ジェクト更新確定処理、図21のオブジェクト削除確定
処理それぞれにおけるステップs1804、ステップs
1904、ステップs2004、ステップs2104の
DBトランザクション確定処理の詳細について、図26
を用いて説明する。
【0171】図26は本実施形態のステップs180
4、ステップs1904、ステップs2004、ステッ
プs2104のDBトランザクション確定処理の詳細を
示すフローチャートである。
【0172】DBトランザクション確定処理が起動され
ると、ステップs5401で、前述のDBトランザクシ
ョンの内部データの実行ステータスを参照し、実行ステ
ータスが「実行中」であるか否かを判定する。実行ステ
ータスが「実行中」でない場合(ステップs5401で
NO)、「失敗」として処理を終了する。一方、実行ス
テータスが「実行中」である場合(ステップs5401
でYES)、ステップs5402に進む。
【0173】次に、ステップs5402で、処理対象を
未確定処理リストの先頭にセット後、次ステップ以降で
全ての処理対象に対する処理を繰り返す。
【0174】続く、ステップs5403で、全処理対象
に対する処理が終了であるか否かを判定する。全処理対
象に対する処理が終了でない場合(ステップs5403
でNO)、ステップs5404に進み、処理対象確定処
理を実行し、処理対象となるデータベースで行われた処
理内容を確定し、ステップs5403に戻る。一方、全
処理対象に対する処理が終了である場合(ステップs5
403でYES)、ステップs5405に進み、実行ス
テータスを「停止」に変更し、「成功」として処理を終
了する。
【0175】次に、図18の全オブジェクト取得確定処
理、図19のオブジェクト追加確定処理、図20のオブ
ジェクト更新確定処理、図21のオブジェクト削除確定
処理それぞれにおけるステップs1805、ステップs
1905、ステップs2005、ステップs2105の
DBトランザクション取消処理の詳細について、図27
を用いて説明する。
【0176】図27は本実施形態のステップs180
5、ステップs1905、ステップs2005、ステッ
プs2105のDBトランザクション取消処理の詳細を
示すフローチャートである。
【0177】DBトランザクション取消処理が起動され
ると、ステップs5501で、前述のDBトランザクシ
ョンの内部データの実行ステータスを参照し、実行ステ
ータスが「実行中」であるか否かを判定する。実行ステ
ータスが「実行中」でない場合(ステップs5501で
NO)、「失敗」として処理を終了する。一方、実行ス
テータスが「実行中」である場合(ステップs5501
でYES)、ステップs5502に進む。
【0178】次に、ステップs5502で、実行ステー
タスを「停止」に変更し、「成功」として処理を終了す
る。
【0179】次に、本実施形態の情報処理装置で用いら
れるオブジェクト間の関係について、図28を用いて説
明する。
【0180】図28は本実施形態の情報処理装置で用い
られるオブジェクト間の関係を示す図である。
【0181】同図において、アプリケーションプログラ
ムA561が、生成・あるいは取得したアプリケーショ
ンオブジェクト562を、永続的なデータとするため
に、データベース565が利用される。
【0182】その際、アプリケーションプログラムA5
61は、直接データベース565をアクセスせずに、図
22の機能構成で説明したように、データベース565
への接続条件を指定した上で生成されたDBトランザク
ション563を介してアクセスする。
【0183】具体的には、アプリケーションプログラム
A561により生成されたアプリケーションオブジェク
ト562は、DBトランザクション563が提供するサ
ービスにより、内部的にDBオブジェクト566に変換
された後、データベース565に格納される。同時に、
アプリケーションオブジェクト562とDBオブジェク
ト566間の関連を記憶する、オブジェクト対応テーブ
ル564が更新される。
【0184】逆に、DBトランザクション563が提供
するサービスにより、データベース565に格納された
DBオブジェクト566を、内部的にアプリケーション
オブジェクト562に変換した上で扱うことが可能とな
る。同時に、アプリケーションオブジェクト562とD
Bオブジェクト566間の関連を記憶する、オブジェク
ト対応テーブル564が更新される。
【0185】上記処理により、アプリケーションプログ
ラムA561は、データベース565内のオブジェクト
の構造を意識せずに、データベース565に格納された
データを、アプリケーションオブジェクト562として
取得・追加・更新・削除することが可能となる。
【0186】次に、本実施形態の情報処理装置で用いら
れるアプリケーションオブジェクトのプログラミングコ
ードについて、図29を用いて説明する。
【0187】図29は本実施形態のアプリケーションオ
ブジェクトのプログラミングコードを示す図である。
【0188】同図において、571はプログラミングコ
ードから生成されるクラス群のまとまりを示すパッケー
ジ名である。572は前記パッケージ内におけるクラス
名である。実際に、プログラミングコードから生成され
たクラスのクラス名は、前記パッケージ名と組み合わせ
た"com.xxxx.ks.KSPerson"とな
る。
【0189】573から578は前記クラスが持つフィ
ールドの定義及び初期値を示している。例えば、同図の
定義ではクラス外から参照可能な$MALE,$FEM
ALE,name,age,sex,contacts
の6フィールドが存在する。これらの内、$MALE,
$FEMALEは、書き換え不可能であると定義されて
いる。
【0190】尚、本実施形態の情報処理装置のアプリケ
ーションオブジェクトは、前述のとおり、前記プログラ
ミングコードから生成されたクラスをインスタンス化し
たものであり、逆にアプリケーションオブジェクトのサ
ービスを利用することで、前記定義情報を取得すること
ができる。
【0191】次に、本実施形態の情報処理装置で用いら
れるデータベースオブジェクトの一覧について、図30
を用いて説明する。
【0192】図30は本実施形態のデータベースオブジ
ェクトの一覧を示す図である。
【0193】同図において、581はデータベース内で
のクラス名である。582は各データベースオブジェク
ト固有の識別IDである。583は前記アプリケーショ
ンオブジェクトの各フィールドに対応するフィールド名
である。同図では、name,age,sex,con
tactsの4つのフィールドを持っている。
【0194】584から587は実際の各データオブジ
ェクトの値を示している。
【0195】ここで、前記データベース内のクラス名
は、同図のように必ずしもアプリケーションオブジェク
トのクラス名とは一致していない。
【0196】また、同図のように、アプリケーションオ
ブジェクトが持つ全てのフィールドの値が、データベー
スオブジェクトに格納されるとは限らない。例えば、ア
プリケーションオブジェクトのフィールドのうち、書き
込み不可能なフィールドの値をデータベースオブジェク
トに格納していたとしても、アプリケーションオブジェ
クトに書き込むことができないため、あるいはアプリケ
ーションオブジェクトのデフォルトインスタンスの作成
時に自動的に初期化されるため、データベースオブジェ
クト内に持つ必要はないと判断できる。
【0197】次に、ステップs1802の全オブジェク
ト取得処理の詳細について、図31を用いて説明する。
【0198】図31は本実施形態のステップs1802
の全オブジェクト取得処理の詳細を示すフローチャート
である。
【0199】全オブジェクト取得処理が起動されると、
ステップs5901で、前述のDBトランザクションの
内部データの実行ステータスを参照し、実行ステータス
が「実行中」であるか否かを判定する。実行ステータス
が「実行中」でない場合(ステップs5901でN
O)、「失敗」として処理を終了する。一方、実行ステ
ータスが「実行中」である場合(ステップs5901で
YES)、ステップs5902に進む。
【0200】次に、ステップs5902で、全DBオブ
ジェクト取得処理を実行し、指定したクラスに対応した
データベース内の全オブジェクトを取得する。
【0201】DBオブジェクト取得処理の結果、続く、
ステップs5903で、全オブジェクトの取得が成功し
たか否かを判定する。全オブジェクトの取得が成功しな
かった場合(ステップs5903でNO)、「失敗」と
して処理を終了する。一方、全オブジェクトの取得が成
功した場合(ステップs5903でYES)、ステップ
s5904に進む。
【0202】ステップs5904で、処理対象を取得さ
れたデータベースのオブジェクトの先頭にセットした
後、次ステップ以降で全ての処理対象のオブジェクトに
対する処理を繰り返す。
【0203】続く、ステップs5905で、全処理対象
のオブジェクトに対する処理が終了であるか否かを判定
する。全処理対象のオブジェクトに対する処理が終了で
ある場合(ステップs5905でYES)、「成功」と
して処理を終了する。一方、全処理対象のオブジェクト
に対する処理が終了でない場合(ステップs5905で
NO)、ステップs5906に進む。
【0204】ステップs5906で、オブジェクト生成
処理を実行し、前記指定されたクラスのデフォルトイン
スタンスを生成する。次に、ステップs5907で、オ
ブジェクト値セット処理を実行し、処理対象のデータベ
ースオブジェクトの値を参照して、上記生成されたアプ
リケーションオブジェクトの各フィールドに値をセット
する。更に、続く、ステップs5908で、前述のオブ
ジェクト対応テーブルに前記生成されたアプリケーショ
ンオブジェクトと、前記取得されたデータベースオブジ
ェクトの組み合わせを追加する。その後、ステップs5
909で処理対象を次のオブジェクトに進め、再びステ
ップs5905に戻り、処理を繰り返す。
【0205】次に、ステップs1902のオブジェクト
追加処理の詳細について、図32を用いて説明する。
【0206】図32は本実施形態のステップs1902
のオブジェクト追加処理の詳細を示すフローチャートで
ある。
【0207】オブジェクト追加処理が起動されると、ス
テップs6001で、前述のDBトランザクションの内
部データの実行ステータスを参照し、実行ステータスが
「実行中」であるか否かを判定する。実行ステータスが
「実行中」でない場合(ステップs6001でNO)、
「失敗」として処理を終了する。一方、実行ステータス
が「実行中」である場合(ステップs6001でYE
S)、ステップs6002に進む。
【0208】次に、ステップs6002で、DBオブジ
ェクト生成追加処理を実行し、与えられたアプリケーシ
ョンオブジェクトのクラスに対応したデータベース内の
クラスのデータベースオブジェクトを生成追加する。
【0209】続く、ステップs6003で、DBオブジ
ェクト値セット処理を実行し、与えられたアプリケーシ
ョンオブジェクトの値を参照して、上記生成追加された
データベースオブジェクトの各フィールドに値をセット
する。
【0210】その後、ステップs6004で、前述の未
確定処理リストに、前記処理に対応した情報を追加す
る。続く、ステップs6005で、前述のオブジェクト
対応テーブルに、前記与えられたアプリケーションオブ
ジェクトと、前記生成追加されたデータベースオブジェ
クトの組み合わせを追加し、「成功」として処理を終了
する。
【0211】次に、ステップs2002のオブジェクト
更新処理の詳細について、図33を用いて説明する。
【0212】図33は本実施形態のステップs2002
のオブジェクト更新処理の詳細を示すフローチャートで
ある。
【0213】オブジェクト更新処理が起動されると、ス
テップs6101で、前述のDBトランザクションの内
部データの実行ステータスを参照し、実行ステータスが
「実行中」であるか否かを判定する。実行ステータスが
「実行中」でない場合(ステップs6101でNO)、
「失敗」として処理する。一方、実行ステータスが「実
行中」である場合(ステップs6101でYES)、ス
テップs6102に進む。
【0214】ステップs6102で、前述のオブジェク
ト対応テーブルを参照し、与えられたアプリケーション
オブジェクトに対応するデータベースオブジェクトを検
索する。
【0215】検索の結果、続く、ステップs6103
で、検索が成功したか否かを判定する。検索が成功しな
かった場合(ステップs6103でNO)、「失敗」と
して処理を終了する。一方、検索が成功した場合(ステ
ップs6103でYES)、ステップs6104に進
む。
【0216】ステップs6104で、DBオブジェクト
値セット処理を実行し、与えられたアプリケーションオ
ブジェクトの値を参照して、上記検索されたデータベー
スオブジェクトの各フィールドに値をセットする。
【0217】その後、ステップs6105で、前述の未
確定処理リストに、前記処理に対応した情報を追加し、
「成功」として処理を終了する。
【0218】次に、ステップs2102のオブジェクト
削除処理の詳細について、図34を用いて説明する。
【0219】図34は本実施形態のステップs2102
のオブジェクト削除処理の詳細を示すフローチャートで
ある。
【0220】オブジェクト削除処理が起動されると、ス
テップs6201で、前述のDBトランザクションの内
部データの実行ステータスを参照し、実行ステータスが
「実行中」であるか否かを判定する。実行ステータスが
「実行中」でない場合(ステップs6201でNO)、
「失敗」として処理を終了する。一方、実行ステータス
が「実行中」である場合(ステップs6201でYE
S)、ステップs6202に進む。
【0221】次に、ステップs6202で、前述のオブ
ジェクト対応テーブルを参照し、与えられたアプリケー
ションオブジェクトに対応するデータベースオブジェク
トを検索する。
【0222】検索の結果、続く、ステップs6203
で、検索が成功したか否かを判定する。検索が成功しな
かった場合(ステップs6203でNO)、「失敗」と
して処理を終了する。一方、検索が成功した場合(ステ
ップs6203でYES)、ステップs6204に進
む。
【0223】次に、ステップs6204で、DBオブジ
ェクト削除処理を実行し、上記検索されたデータベース
オブジェクトを削除する。
【0224】その後、ステップs6205で、前述の未
確定処理リストに、前記処理に対応した情報を追加す
る。続く、ステップs6206で、前述のオブジェクト
対応テーブルに、前記与えられたアプリケーションオブ
ジェクトと、前記削除されたデータベースオブジェクト
の組み合わせを削除し、「成功」として処理を終了す
る。
【0225】次に、ステップs5902の全DBオブジ
ェクト取得処理の詳細について、図35を用いて説明す
る。
【0226】図35は本実施形態のステップs5902
の全DBオブジェクト取得処理の詳細を示すフローチャ
ートである。
【0227】全DBオブジェクト取得処理が起動される
と、ステップs7001で、DBクラス名決定処理を実
行し、与えられたアプリケーションクラスのアプリケー
ションクラス名に対応するデータベース内のデータベー
スクラス名を決定する。
【0228】本実施形態で用いられるデータベースのよ
うに、クラス名に"."を使用できない場合、"___"の
ようなデータベース内で利用可能な文字列に置換した結
果を、データベースクラス名として利用する。例えば、
アプリケーションクラス名"com.xxxx.ks.
KSPerson"から、データベースクラス名"com
___xxxx___ks___KSPerson"が
決定される。
【0229】DBクラス名決定処理の結果、続く、ステ
ップs7002で、データベースクラス名の決定が成功
したか否かを判定する。データベースクラス名の決定が
成功しなかった場合(ステップs7002でNO)、
「失敗」として処理を終了する。一方、データベースク
ラス名の決定が成功した場合(ステップs7002でY
ES)、ステップs7003に進む。
【0230】ステップs7003で、出力用の全データ
ベースオブジェクトリストを初期化する。続く、ステッ
プs7004で、処理対象をデータベース内の前記デー
タベースクラスに対応するデータベースオブジェクト群
の先頭にセットした後、次ステップ以降で全ての処理対
象のデータベースオブジェクトに対する処理を繰り返
す。
【0231】続く、ステップs7005で、全処理対象
のデータベースオブジェクトに対する処理が終了である
か否かを判定する。全処理対象のデータベースオブジェ
クトに対する処理が終了である場合(ステップs700
5でYES)、「成功」として処理を終了する。一方、
全処理対象のデータベースオブジェクトに対する処理が
終了でない場合(ステップs7005でNO)、ステッ
プs7006に進む。
【0232】次に、ステップs7006で、全データベ
ースオブジェクトリストに処理対象のデータベースオブ
ジェクトを追加する。その後、ステップs7007で、
処理対象を次のデータベースオブジェクトに進め、再
び、ステップs7005に戻り、処理を繰り返す。
【0233】次に、ステップs6002のDBオブジェ
クト生成追加処理の詳細について、図36を用いて説明
する。
【0234】図36は本実施形態のステップs6002
のDBオブジェクト生成追加処理の詳細を示すフローチ
ャートである。
【0235】DBオブジェクト生成追加処理が起動され
ると、ステップs7101で、アプリケーションクラス
名取得処理を実行し、与えられたアプリケーションオブ
ジェクトのアプリケーションクラス名を取得する。次
に、ステップs7102で、DBクラス名決定処理を実
行し、前記アプリケーションクラス名に対応するデータ
ベース内のデータベースクラス名を決定する。
【0236】DBクラス名決定処理の結果、続く、ステ
ップs7103で、データベースクラス名の決定が成功
したか否かを判定する。データベースクラス名の決定が
成功しなかった場合(ステップs7103でNO)、
「失敗」として処理を終了する。一方、データベースク
ラス名の決定が成功した場合(ステップs7102でY
ES)、ステップs7104に進む。
【0237】ステップs7104で、前記データベース
クラスに対応するデフォルトデータベースオブジェクト
を生成追加し、「成功」として処理を終了する。
【0238】次に、ステップs6204のDBオブジェ
クト削除処理の詳細について、図37を用いて説明す
る。
【0239】図37は本実施形態のステップs6204
のDBオブジェクト削除処理の詳細を示すフローチャー
トである。
【0240】DBオブジェクト削除処理が起動される
と、ステップs7201で、DBクラス取得処理を実行
し、与えられたデータベースオブジェクトに対応するデ
ータベースクラスを取得する。
【0241】DBクラス取得処理の結果、次に、ステッ
プs7202で、データベースクラスの取得が成功した
か否かを判定する。データベースクラスの取得が成功し
なかった場合(ステップs7202でNO)、「失敗」
として処理を終了する。一方、データベースクラスの取
得が成功した場合(ステップs7202でYES)、ス
テップs7203に進む。
【0242】ステップs7203で、前記データベース
クラスのサービスを用いて、与えられたデータベースオ
ブジェクトを削除し、「成功」として処理を終了する。
【0243】次に、図31のオブジェクト追加処理及び
図32のオブジェクト更新処理それぞれにおけるステッ
プs5907、ステップs6003のDBオブジェクト
値セット処理の詳細について、図38を用いて説明す
る。
【0244】図38は本実施形態のステップs590
7、ステップs6003のDBオブジェクト値セット処
理の詳細を示すフローチャートである。
【0245】DBオブジェクト値セット処理が起動され
ると、ステップs7301で、全書き込み可能フィール
ド名取得処理を実行し、与えられたアプリケーションオ
ブジェクトの各フィールド定義を参照し、書き込み可能
な全てのフィールド名を取得する。
【0246】全書き込み可能フィールド名取得処理の結
果、続く、ステップs7302で、フィールド名の取得
が成功したか否かを判定する。フィールド名の取得が成
功しなかった場合(ステップs7302でNO)、「失
敗」として処理を終了する。一方、フィールド名の取得
が成功した場合(ステップs7302でYES)、ステ
ップs7303に進む。
【0247】次に、ステップs7303で、処理対象を
前述の取得された全書き込み可能フィールド名リストの
先頭にセットした後、次ステップ以降で全ての処理対象
のフィールドに対する処理を繰り返す。
【0248】続く、ステップs7304で、全処理対象
のフィールドに対する処理が終了であるか否かを判定す
る。全処理対象のフィールドに対する処理が終了である
場合(ステップs7304でYES)、「成功」として
処理を終了する。一方、全処理対象のフィールドに対す
る処理が終了でない場合(ステップs7304でN
O)、ステップs7305に進む。
【0249】次に、ステップs7305で、処理対象の
フィールドが配列であるか否かを判定する。フィールド
が配列でない場合(ステップs7305でNO)、ステ
ップs7306に進む。
【0250】ステップs7306で、フィールド値取得
処理を実行し、与えられたアプリケーションオブジェク
トの処理対象のフィールド名に対応する値を取得する。
続くステップs7307で、DBフィール値セット処理
を実行し、データベースオブジェクトの対応するフィー
ルドに格納する。そして、ステップs7308で、処理
対象のフィールドを次に進め、再びステップs7304
に戻り、処理を繰り返す。
【0251】一方、ステップs7305で、処理対象の
フィールドが配列である場合(ステップs7305でY
ES)、ステップs7309に進む。
【0252】ステップs7309で、配列フィールド値
取得処理を実行し、与えられたアプリケーションオブジ
ェクトの処理対象のフィールド名に対応する値を取得す
る。続く、ステップs7310で、DB配列フィール値
セット処理を実行し、データベースオブジェクトの対応
するフィールドに格納する。そして、ステップs730
8で、処理対象のフィールドを次に進め、再びステップ
s7304に戻り、処理を繰り返す。
【0253】次に、ステップs5906のオブジェクト
生成処理の詳細について、図39を用いて説明する。
【0254】図39は本実施形態のステップs5906
のオブジェクト生成処理の詳細を示すフローチャートで
ある。
【0255】オブジェクト生成処理が起動されると、ス
テップs7401で、DBクラス名取得処理を実行し、
与えられたデータベースオブジェクトのデータベースク
ラス名を取得する。次に、ステップs7402で、アプ
リケーションクラス名決定処理を実行し、前記データベ
ースクラス名に対応するアプリケーションクラス名を決
定する。
【0256】アプリケーションクラス名決定処理の結
果、続く、ステップs7403で、アプリケーションク
ラス名の決定が成功したか否かを判定する。アプリケー
ションクラス名の決定が成功しなかった場合(ステップ
s7403でNO)、「失敗」として処理を終了する。
一方、アプリケーションクラス名の決定が成功した場合
(ステップs7403でYES)、ステップs7404
に進む。
【0257】次に、ステップs7404で、前記アプリ
ケーションクラスに対応するデフォルトアプリケーショ
ンオブジェクトを生成し、「成功」として処理を終了す
る。
【0258】次に、ステップs5907のオブジェクト
値セット処理の詳細について、図40を用いて説明す
る。
【0259】図40は本実施形態のステップs5907
のオブジェクト値セット処理の詳細を示すフローチャー
トである。
【0260】オブジェクト値セット処理が起動される
と、ステップs7501で、全書き込み可能フィールド
名取得処理を実行し、与えられたアプリケーションオブ
ジェクトの各フィールド定義を参照し、書き込み可能な
全てのフィールド名を取得する。
【0261】全書き込み可能フィールド名取得処理の結
果、続く、ステップs7502で、フィールド名の取得
が成功したか否かを判定する。フィールド名の取得が成
功しなかった場合(ステップs7502でNO)、「失
敗」として処理を終了する。一方、フィールド名の取得
が成功した場合(ステップs7502でYES)、ステ
ップs7503に進む。
【0262】ステップs7503で、処理対象のフィー
ルド名を前述の取得された全書き込み可能フィールド名
リストの先頭にセットした後、次ステップ以降で全ての
処理対象のフィールドに対する処理を繰り返す。
【0263】続く、ステップs7504で、全処理対象
のフィールドに対する処理が終了であるか否かを判定す
る。全処理対象のフィールドに対する処理が終了である
場合(ステップs7504でYES)、「成功」として
処理を終了する。一方、全処理対象のフィールドに対す
る処理が終了でない場合(ステップs7504でN
O)、ステップs7505に進む。
【0264】次に、ステップs7505で、処理対象の
フィールドが配列であるか否かを判定する。フィールド
が配列でない場合(ステップs7505でNO)、ステ
ップs7506に進む。
【0265】ステップs7506で、DBフィールド値
取得処理を実行し、与えられたデータベースオブジェク
トの処理対象のフィールド名に対応する値を取得する。
続く、ステップs7507で、フィールド値セット処理
を実行し、アプリケーションオブジェクトの対応するフ
ィールドに格納する。ステップs7508で、処理対象
のフィールドを次に進め、再びステップs7504に戻
り、処理を繰り返す。
【0266】一方、ステップs7505で、フィールド
が配列である場合(ステップs7505でYES)、ス
テップs7509に進む。
【0267】ステップs7509で、DB配列フィール
ド値取得処理を実行し、与えられたデータベースオブジ
ェクトの処理対象のフィールド名に対応する値を取得す
る。続く、ステップs7510で、配列フィール値セッ
ト処理を実行し、アプリケーションオブジェクトの対応
するフィールドに格納する。ステップs7508で、処
理対象のフィールドを次に進め、再びステップs750
4に戻り、処理を繰り返す。
【0268】次に、図38のDBオブジェクト値セット
処理及び図40のオブジェクト値セット処理それぞれに
おけるステップ7301、ステップs7501の全書き
込み可能フィールド名取得処理の詳細について、図41
を用いて説明する。
【0269】図41は本実施形態のステップs730
1、ステップs7501の全書き込み可能フィールド名
取得処理の詳細を示すフローチャートである。
【0270】全書き込み可能フィールド名取得処理が起
動されると、ステップs7601で、全フィールド情報
取得処理を実行し、与えられたアプリケーションオブジ
ェクトの各フィールド情報を取得する。
【0271】全フィールド情報取得処理の結果、続く、
ステップs7602で、フィールド情報の取得が成功し
たか否かを判定する。フィールド情報の取得が成功しな
かった場合(ステップs7602でNO)、「失敗」と
して処理を終了する。一方、フィールド情報の取得が成
功した場合(ステップs7602でYES)、ステップ
s7603に進む。
【0272】ステップs7603で、出力用の全書き込
み可能フィールド名リストを初期化する。続く、ステッ
プs7604で、処理対象を前述の取得された全フィー
ルド情報の先頭にセットした後、次ステップ以降で全て
の処理対象に対する処理を繰り返す。
【0273】続く、ステップs7605で、全処理対象
のフィールド情報に対する処理が終了であるか否かを判
定する。全処理対象のフィールド情報に対する処理が終
了した場合(ステップs7605でYES)、「成功」
として処理を終了する。一方、全処理対象のフィールド
情報に対する処理が終了でない場合(ステップs760
5でNO)、ステップs7606に進む。
【0274】次に、ステップs7606で、フィールド
情報のフィールド属性が外部参照可能(Public)
であるか否かを判定する。フィールド属性が外部参照可
能でない場合(ステップs7606でNO)、ステップ
s7609に進む。一方、フィールド属性が外部参照可
能である場合(ステップs7606でYES)、ステプ
s7607に進む。
【0275】ステップs7607で、フィールド情報の
フィールド属性が書き込み不可能(Final)である
か否かを判定する。フィールド属性が書き込み不可能で
ある場合(ステップs7607でYES)、ステップs
7609に進む。一方、フィールド属性が書き込み不可
能でない場合(ステップs7607でNO)、ステップ
s7608に進む。
【0276】ステップs7608で、全書き込み可能フ
ィールド名リストに処理対象のフィールド名を追加す
る。その後、ステップs7609で、処理対象のフィー
ルド情報が次に進められ、再びステップs7605に戻
り、処理を繰り返す。
【0277】以上説明したように、本実施形態によれ
ば、永続的なデータを格納するデータベースに対し、ア
プリケーションプログラムにより参照されるアプリケー
ションオブジェクトの定義情報を取得し、そのアプリケ
ーションオブジェクト及び取得したアプリケーションオ
ブジェクト定義情報を用いてデータベースを操作する。
【0278】これにより、データベースモジュール特有
のコーディング手順及び複雑なノウハウを習得すること
なく、永続的なデータを扱うためにデータベースを利用
でき、開発者は独自のビジネスロジックの開発に集中す
ることが可能となり、開発効率の飛躍的な向上を実現で
きる。
【0279】ここで、図42は、前述のアプリケーショ
ンプログラム開発の複雑化を少しでも解消するために行
われた、本発明におけるプログラミングコードの一例で
ある。このように、アプリケーションプログラマは、単
純にデータベースアクセス用のクラスが提供するサービ
スを用いるだけで、特殊な知識の習得や前処理や後処理
をすることなく、データの取得・追加・更新・削除が可
能となる。
【0280】尚、本発明は、複数の機器(例えばホスト
コンピュータ、インターフェース機器、リーダ、プリン
タなど)から構成されるシステムに適用しても、一つの
機器からなる装置(例えば、複写機、ファクシミリ装置
など)に適用してもよい。
【0281】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体を、システムあるいは装置に供給し、そ
のシステムあるいは装置のコンピュータ(またはCPU
やMPU)が記憶媒体に格納されたプログラムコードを
読出し実行することによっても、達成されることは言う
までもない。
【0282】この場合、記憶媒体から読出されたプログ
ラムコード自体が前述した実施形態の機能を実現するこ
とになり、そのプログラムコードを記憶した記憶媒体は
本発明を構成することになる。
【0283】プログラムコードを供給するための記憶媒
体としては、例えば、フロッピディスク、ハードディス
ク、光ディスク、光磁気ディスク、CD−ROM、CD
−R、磁気テープ、不揮発性のメモリカード、ROMな
どを用いることができる。
【0284】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOS(オペレ
ーティングシステム)などが実際の処理の一部または全
部を行い、その処理によって前述した実施形態の機能が
実現される場合も含まれることは言うまでもない。
【0285】更に、記憶媒体から読出されたプログラム
コードが、コンピュータに挿入された機能拡張ボードや
コンピュータに接続された機能拡張ユニットに備わるメ
モリに書込まれた後、そのプログラムコードの指示に基
づき、その機能拡張ボードや機能拡張ユニットに備わる
CPUなどが実際の処理の一部または全部を行い、その
処理によって前述した実施形態の機能が実現される場合
も含まれることは言うまでもない。
【0286】本発明を上記記憶媒体に適用する場合、そ
の記憶媒体には、先に説明した図2、図8、図12、図
15、図17〜図21、図24〜図27、図31〜図4
1に示すフローチャートに対応するプログラムコードが
格納されることになる。
【0287】
【発明の効果】以上説明したように、本発明によれば、
アプリケーションの開発効率を向上することができる情
報処理装置及びその方法、コンピュータ可読メモリを提
供できる。
【図面の簡単な説明】
【図1】本実施形態の情報処理装置のハードウェア構成
を示すブロック図である。
【図2】本実施形態の情報処理装置で実行される処理を
示すフローチャートである。
【図3】本実施形態のデータベース処理画面の一例を示
す図である。
【図4】本実施形態のステップs205のデータベース
処理の詳細を示すフローチャートである。
【図5】本実施形態のトランザクション生成画面の一例
を示す図である。
【図6】本実施形態のステップs406のトランザクシ
ョン生成処理の詳細を示すフローチャートである。
【図7】本実施形態のトランザクション処理画面の一例
を示す図である。
【図8】本実施形態のステップs408のトランザクシ
ョン処理の詳細を示すフローチャートである。
【図9】本実施形態の追加オブジェクト選択画面の一例
を示す図である。
【図10】本実施形態のイベント対応処理におけるオブ
ジェクトの追加の指示に対応したオブジェクト選択追加
処理の詳細を示すフローチャートである。
【図11】本実施形態のオブジェクト新規作成時のオブ
ジェクト編集画面の一例を示す図である。
【図12】本実施形態のステップs1006のオブジェ
クト生成処理の詳細を示すフローチャートである。
【図13】本実施形態のクラス選択画面の一例を示す図
である。
【図14】本実施形態の既存オブジェクト編集時のオブ
ジェクト編集画面の一例を示す図である。
【図15】本実施形態のオブジェクト選択編集処理の詳
細を示すフローチャートである。
【図16】本実施形態の既存オブジェクト参照時のオブ
ジェクト参照画面の一例を示す図である。
【図17】本実施形態のオブジェクト選択削除処理の詳
細を示すフローチャートである。
【図18】本実施形態のステップs1503、ステップ
1703の全オブジェクト取得確定処理の詳細を示すフ
ローチャートである。
【図19】本実施形態のステップs1007のオブジェ
クト追加確定処理の詳細を示すフローチャートである。
【図20】本実施形態のステップs1509のオブジェ
クト更新確定処理の詳細を示すフローチャートである。
【図21】本実施形態のステップs1709のオブジェ
クト削除確定処理の詳細を示すフローチャートである。
【図22】本実施形態の情報処理装置の機能構成を示す
図である。
【図23】本実施形態のDBトランザクションの内部デ
ータを示す図である。
【図24】本実施形態のステップs603のDBトラン
ザクション生成処理の詳細を示すフローチャートであ
る。
【図25】本実施形態のステップs1801、ステップ
s1901、ステップs2001、ステップs2101
のDBトランザクション開始処理の詳細を示すフローチ
ャートである。
【図26】本実施形態のステップs1804、ステップ
s1904、ステップs2004、ステップs2104
のDBトランザクション確定処理の詳細を示すフローチ
ャートである。
【図27】本実施形態のステップs1805、ステップ
s1905、ステップs2005、ステップs2105
のDBトランザクション取消処理の詳細を示すフローチ
ャートである。
【図28】本実施形態の情報処理装置で用いられるオブ
ジェクト間の関係を示す図である。
【図29】本実施形態のアプリケーションオブジェクト
のプログラミングコードを示す図である。
【図30】本実施形態のデータベースオブジェクトの一
覧を示す図である。
【図31】本実施形態のステップs1802の全オブジ
ェクト取得処理の詳細を示すフローチャートである。
【図32】本実施形態のステップs1902のオブジェ
クト追加処理の詳細を示すフローチャートである。
【図33】本実施形態のステップs2002のオブジェ
クト更新処理の詳細を示すフローチャートである。
【図34】本実施形態のステップs2102のオブジェ
クト削除処理の詳細を示すフローチャートである。
【図35】本実施形態のステップs5902の全DBオ
ブジェクト取得処理の詳細を示すフローチャートであ
る。
【図36】本実施形態のステップs6002のDBオブ
ジェクト生成追加処理の詳細を示すフローチャートであ
る。
【図37】本実施形態のステップs6204のDBオブ
ジェクト削除処理の詳細を示すフローチャートである。
【図38】本実施形態のステップs5907、ステップ
s6003のDBオブジェクト値セット処理の詳細を示
すフローチャートである。
【図39】本実施形態のステップs5906のオブジェ
クト生成処理の詳細を示すフローチャートである。
【図40】本実施形態のステップs5907のオブジェ
クト値セット処理の詳細を示すフローチャートである。
【図41】本実施形態のステップs7301、ステップ
s7501の全書き込み可能フィールド名取得処理の詳
細を示すフローチャートである。
【図42】本実施形態のプログラミングコードの一例を
示す図である。
【図43】従来技術におけるリレーショナルデータベー
スのインターフェースの一例を示すである。
【図44】従来技術におけるウィザード画面の一例を示
す図である。
【図45】従来技術におけるリレーショナルデータベー
スを隠蔽したプログラミングコードの一例を示す図であ
る。
【図46】従来技術におけるポストプロセッサを用いた
一例を示す図である。
【符号の説明】
501、502 アプリケーションプログラム 503〜505 DBトランザクション 506、507 データベース 508 DBマネージャー

Claims (39)

    【特許請求の範囲】
  1. 【請求項1】 データを管理するデータベースを処理す
    る情報処理装置であって、 前記データを格納するデータベースと、 アプリケーションプログラムにより参照されるアプリケ
    ーションオブジェクトを用いて前記データベースを操作
    するデータベース操作手段と、 を備えることを特徴とする情報処理装置。
  2. 【請求項2】 前記データベースは、オブジェクト指向
    データベースであることを特徴とする請求項1に記載の
    情報処理装置。
  3. 【請求項3】 前記データベースは、更に、データベー
    スオブジェクトを格納し、 前記データベース操作手段は、前記データベースオブジ
    ェクトを用いて処理されることを特徴とする請求項1又
    は請求項2に記載の情報処理装置。
  4. 【請求項4】 前記アプリケーションオブジェクト定義
    情報を取得するアプリケーションオブジェクト定義情報
    取得手段とを更に備え、 前記データベース操作手段は、前記アプリケーションオ
    ブジェクト定義情報を用いて処理されることを特徴とす
    る請求項1乃至請求項3のいずれか1項に記載の情報処
    理装置。
  5. 【請求項5】 前記アプリケーションオブジェクト定義
    情報取得手段は、指定されたクラス名を用いて前記アプ
    リケーションオブジェクト定義情報と取得することを特
    徴とする請求項4に記載の情報処理装置。
  6. 【請求項6】 前記アプリケーションオブジェクト定義
    情報に対応する前記データベースオブジェクト定義情報
    を決定する決定手段とを更に備え、 前記データベース操作手段は、前記データベースオブジ
    ェクト定義情報を用いて処理されることを特徴とする請
    求項4に記載の情報処理装置。
  7. 【請求項7】 前記データベース操作手段は、前記デー
    タベースオブジェクト定義情報を満たす前記データベー
    スオブジェクトを取得するデータベースオブジェクト取
    得手段と、 前記アプリケーションオブジェクト定義情報に対応する
    アプリケーションオブジェクトを生成するアプリケーシ
    ョンオブジェクト生成手段と、 前記データベースオブジェクト定義情報に対応する前記
    データベースオブジェクトの値を取得するデータベース
    オブジェクト値取得手段と、 前記生成手段で生成された空のアプリケーションオブジ
    ェクトに前記データベースオブジェクトの値を格納する
    アプリケーションオブジェクト値格納手段とを備えるこ
    とを特徴とする請求項6に記載の情報処理装置。
  8. 【請求項8】 前記アプリケーションオブジェクト値格
    納手段は、 前記アプリケーションオブジェクトのフィールド名を取
    得するフィールド名取得手段と、 前記アプリケーションオブジェクトのフィールド名に対
    応する前記データベースオブジェクトのフィールド名を
    決定するデータベースオブジェクトフィールド名決定手
    段とを備え、 前記データベースオブジェクト値取得手段は、前記アプ
    リケーションオブジェクトのフィールド名に対応する前
    記データベースオブジェクトのフィールドからのみ、該
    データベースオブジェクトの値を取得することを特徴と
    する請求項7に記載の情報処理装置。
  9. 【請求項9】 前記アプリケーションオブジェクト定義
    情報に対応する前記アプリケーションオブジェクトの値
    を取得するアプリケーションオブジェクト値取得手段と
    を更に備え、 前記データベース操作手段は、前記アプリケーションオ
    ブジェクトの値を用いて処理されることを特徴とする請
    求項4乃至請求項6のいずれか1項に記載の情報処理装
    置。
  10. 【請求項10】 前記データベースオブジェクト定義情
    報に対応する前記データベースオブジェクトを生成する
    データベースオブジェクト生成手段と、 前記データベースオブジェクトに前記アプリケーション
    オブジェクトの値を格納するデータベースオブジェクト
    値格納手段と、 前記データベースオブジェクトを前記データベースに追
    加するデータベースオブジェクト追加手段と、 を更に備えることを特徴とする請求項9に記載の情報処
    理装置。
  11. 【請求項11】 前記アプリケーションオブジェクトと
    前記データベースオブジェクト間の関連を示すオブジェ
    クト間関連情報を記憶するオブジェクト対応テーブルと
    を更に備え、 前記データベース操作手段は、前記オブジェクト対応テ
    ーブルを用いて処理されることを特徴とする請求項1乃
    至請求項6及び請求項9のいずれか1項に記載の情報処
    理装置。
  12. 【請求項12】 前記オブジェクト対応テーブルを更新
    するオブジェクト対応テーブル更新手段と、 を更に備えることを特徴とする請求項11に記載の情報
    処理装置。
  13. 【請求項13】 前記オブジェクト対応テーブル更新手
    段は、前記アプリケーションオブジェクトを取得した場
    合の前記データベースオブジェクト間関連情報を前記オ
    ブジェクト対応テーブルに追加することを特徴とする請
    求項12に記載の情報処理装置。
  14. 【請求項14】 前記オブジェクト対応テーブル更新手
    段は、前記アプリケーションオブジェクトを追加した場
    合の前記データベースオブジェクト間関連情報を前記オ
    ブジェクト対応テーブルに追加することを特徴とする請
    求項12に記載の情報処理装置。
  15. 【請求項15】 前記オブジェクト対応テーブル更新手
    段は、前記アプリケーションオブジェクトを削除した場
    合の前記データベースオブジェクト間関連情報を前記オ
    ブジェクト対応テーブルから削除することを特徴とする
    請求項12に記載の情報処理装置。
  16. 【請求項16】 前記オブジェクト間関連情報により前
    記アプリケーションオブジェクトに対応する前記データ
    ベースオブジェクトを取得する関連データベースオブジ
    ェクト取得手段とを更に備えることを特徴とする請求項
    11に記載の情報処理装置。
  17. 【請求項17】 前記データベースオブジェクトに前記
    アプリケーションオブジェクトの値を格納するデータベ
    ースオブジェクト値格納手段と、 前記データベースオブジェクトを前記データベースに追
    加するデータベースオブジェクト更新手段と、 を更に備えることを特徴とする請求項9又は請求項16
    に記載の情報処理装置。
  18. 【請求項18】 前記データベースオブジェクトを前記
    データベースから削除するデータベースオブジェクト削
    除手段とを更に備えることを特徴とする請求項16に記
    載の情報処理装置。
  19. 【請求項19】 前記データベースオブジェクト値格納
    手段は、 前記アプリケーションオブジェクトのフィールド名を取
    得するフィールド名取得手段と、 前記アプリケーションオブジェクトのフィールド名に対
    応する前記データベースオブジェクトのフィールド名を
    決定するデータベースオブジェクトフィールド名決定手
    段とを備え、 前記アプリケーションオブジェクトのフィールド名に対
    応する前記データベースオブジェクトのフィールドにの
    み、該アプリケーションオブジェクトの値を格納するこ
    とを特徴とする請求項10又は請求項17に記載の情報
    処理装置。
  20. 【請求項20】 データを管理するデータベースを処理
    する情報処理方法であって、 前記データを格納するデータベースを保持する保持工程
    と、 アプリケーションプログラムにより参照されるアプリケ
    ーションオブジェクトを用いて前記データベースを操作
    するデータベース操作工程と、 を備えることを特徴とする情報処理方法。
  21. 【請求項21】 前記データベースは、オブジェクト指
    向データベースであることを特徴とする請求項20に記
    載の情報処理方法。
  22. 【請求項22】 前記データベースは、更に、データベ
    ースオブジェクトを格納し、 前記データベース操作工程は、前記データベースオブジ
    ェクトを用いて処理されることを特徴とする請求項20
    又は請求項21に記載の情報処理方法。
  23. 【請求項23】 前記アプリケーションオブジェクト定
    義情報を取得するアプリケーションオブジェクト定義情
    報取得工程とを更に備え、 前記データベース操作工程は、前記アプリケーションオ
    ブジェクト定義情報を用いて処理されることを特徴とす
    る請求項20乃至請求項22のいずれか1項に記載の情
    報処理方法。
  24. 【請求項24】 前記アプリケーションオブジェクト定
    義情報取得工程は、指定されたクラス名を用いて前記ア
    プリケーションオブジェクト定義情報と取得することを
    特徴とする請求項23に記載の情報処理方法。
  25. 【請求項25】 前記アプリケーションオブジェクト定
    義情報に対応する前記データベースオブジェクト定義情
    報を決定する決定工程とを更に備え、 前記データベース操作工程は、前記データベースオブジ
    ェクト定義情報を用いて処理されることを特徴とする請
    求項23に記載の情報処理方法。
  26. 【請求項26】 前記データベース操作工程は、前記デ
    ータベースオブジェクト定義情報を満たす前記データベ
    ースオブジェクトを取得するデータベースオブジェクト
    取得工程と、 前記アプリケーションオブジェクト定義情報に対応する
    アプリケーションオブジェクトを生成するアプリケーシ
    ョンオブジェクト生成工程と、 前記データベースオブジェクト定義情報に対応する前記
    データベースオブジェクトの値を取得するデータベース
    オブジェクト値取得工程と、 前記生成工程で生成された空のアプリケーションオブジ
    ェクトに前記データベースオブジェクトの値を格納する
    アプリケーションオブジェクト値格納工程とを備えるこ
    とを特徴とする請求項25に記載の情報処理方法。
  27. 【請求項27】 前記アプリケーションオブジェクト値
    格納工程は、 前記アプリケーションオブジェクトのフィールド名を取
    得するフィールド名取得工程と、 前記アプリケーションオブジェクトのフィールド名に対
    応する前記データベースオブジェクトのフィールド名を
    決定するデータベースオブジェクトフィールド名決定工
    程とを備え、 前記データベースオブジェクト値取得工程は、前記アプ
    リケーションオブジェクトのフィールド名に対応する前
    記データベースオブジェクトのフィールドからのみ、該
    データベースオブジェクトの値を取得することを特徴と
    する請求項26に記載の情報処理方法。
  28. 【請求項28】 前記アプリケーションオブジェクト定
    義情報に対応する前記アプリケーションオブジェクトの
    値を取得するアプリケーションオブジェクト値取得工程
    とを更に備え、 前記データベース操作工程は、前記アプリケーションオ
    ブジェクトの値を用いて処理されることを特徴とする請
    求項23乃至請求項25のいずれか1項に記載の情報処
    理方法。
  29. 【請求項29】 前記データベースオブジェクト定義情
    報に対応する前記データベースオブジェクトを生成する
    データベースオブジェクト生成工程と、 前記データベースオブジェクトに前記アプリケーション
    オブジェクトの値を格納するデータベースオブジェクト
    値格納工程と、 前記データベースオブジェクトを前記データベースに追
    加するデータベースオブジェクト追加工程と、 を更に備えることを特徴とする請求項28に記載の情報
    処理方法。
  30. 【請求項30】 前記保持工程は、前記アプリケーショ
    ンオブジェクトと前記データベースオブジェクト間の関
    連を示すオブジェクト間関連情報を記憶するオブジェク
    ト対応テーブルを更に保持し、 前記データベース操作工程は、前記オブジェクト対応テ
    ーブルを用いて処理されることを特徴とする請求項20
    乃至請求項25及び請求項28のいずれか1項に記載の
    情報処理方法。
  31. 【請求項31】 前記オブジェクト対応テーブルを更新
    するオブジェクト対応テーブル更新工程と、 を更に備えることを特徴とする請求項30に記載の情報
    処理方法。
  32. 【請求項32】 前記オブジェクト対応テーブル更新工
    程は、前記アプリケーションオブジェクトを取得した場
    合の前記データベースオブジェクト間関連情報を前記オ
    ブジェクト対応テーブルに追加することを特徴とする請
    求項31に記載の情報処理方法。
  33. 【請求項33】 前記オブジェクト対応テーブル更新工
    程は、前記アプリケーションオブジェクトを追加した場
    合の前記データベースオブジェクト間関連情報を前記オ
    ブジェクト対応テーブルに追加することを特徴とする請
    求項31に記載の情報処理方法。
  34. 【請求項34】 前記オブジェクト対応テーブル更新工
    程は、前記アプリケーションオブジェクトを削除した場
    合の前記データベースオブジェクト間関連情報を前記オ
    ブジェクト対応テーブルから削除することを特徴とする
    請求項31に記載の情報処理方法。
  35. 【請求項35】 前記オブジェクト間関連情報により前
    記アプリケーションオブジェクトに対応する前記データ
    ベースオブジェクトを取得する関連データベースオブジ
    ェクト取得工程とを更に備えることを特徴とする請求項
    30に記載の情報処理方法。
  36. 【請求項36】 前記データベースオブジェクトに前記
    アプリケーションオブジェクトの値を格納するデータベ
    ースオブジェクト値格納工程と、 前記データベースオブジェクトを前記データベースに追
    加するデータベースオブジェクト更新工程と、 を更に備えることを特徴とする請求項28又は請求項3
    5に記載の情報処理方法。
  37. 【請求項37】 前記データベースオブジェクトを前記
    データベースから削除するデータベースオブジェクト削
    除工程とを更に備えることを特徴とする請求項35に記
    載の情報処理方法。
  38. 【請求項38】 前記データベースオブジェクト値格納
    工程は、 前記アプリケーションオブジェクトのフィールド名を取
    得するフィールド名取得工程と、 前記アプリケーションオブジェクトのフィールド名に対
    応する前記データベースオブジェクトのフィールド名を
    決定するデータベースオブジェクトフィールド名決定工
    程とを備え、 前記アプリケーションオブジェクトのフィールド名に対
    応する前記データベースオブジェクトのフィールドにの
    み、該アプリケーションオブジェクトの値を格納するこ
    とを特徴とする請求項29又は請求項36に記載の情報
    処理方法。
  39. 【請求項39】 データを管理するデータベースを処理
    する情報処理のプログラムコードが格納されたコンピュ
    ータ可読メモリであって、 前記データを格納するデータベースを保持する保持工程
    のプログラムコードと、 アプリケーションプログラムにより参照されるアプリケ
    ーションオブジェクトを用いて前記データベースを操作
    するデータベース操作工程のプログラムコードとを備え
    ることを特徴とするコンピュータ可読メモリ。
JP2000336528A 2000-11-02 2000-11-02 情報処理装置及びその方法、コンピュータ可読メモリ Withdrawn JP2002140193A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2000336528A JP2002140193A (ja) 2000-11-02 2000-11-02 情報処理装置及びその方法、コンピュータ可読メモリ
EP01309239A EP1204041A3 (en) 2000-11-02 2001-10-31 Database management system and method
US09/984,705 US20020065838A1 (en) 2000-11-02 2001-10-31 Information processing apparatus and method, and computer readable memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000336528A JP2002140193A (ja) 2000-11-02 2000-11-02 情報処理装置及びその方法、コンピュータ可読メモリ

Publications (1)

Publication Number Publication Date
JP2002140193A true JP2002140193A (ja) 2002-05-17

Family

ID=18812072

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000336528A Withdrawn JP2002140193A (ja) 2000-11-02 2000-11-02 情報処理装置及びその方法、コンピュータ可読メモリ

Country Status (3)

Country Link
US (1) US20020065838A1 (ja)
EP (1) EP1204041A3 (ja)
JP (1) JP2002140193A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005301985A (ja) * 2004-02-26 2005-10-27 Ricoh Co Ltd 情報処理装置、オブジェクト生成方法、オブジェクト変換方法、オブジェクト生成プログラム、オブジェクト変換プログラム及び記録媒体

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020053000A1 (en) * 2000-11-02 2002-05-02 Masanori Wakai Information processing apparatus and method, and computer readable memory
GB2382890B (en) * 2001-12-06 2005-04-20 Ibm Computer storage subsystem, method, software program and data carrier

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0562822B1 (en) * 1992-03-24 2000-06-07 Canon Kabushiki Kaisha Method of managing data structure containing both persistent data and transient data
JP3553991B2 (ja) * 1993-05-27 2004-08-11 キヤノン株式会社 プログラム制御方法
WO1995004960A2 (en) * 1993-08-02 1995-02-16 Persistence Software, Inc. Method and apparatus for managing relational data in an object cache
US5873093A (en) * 1994-12-07 1999-02-16 Next Software, Inc. Method and apparatus for mapping objects to a data source
JPH08272744A (ja) * 1995-03-30 1996-10-18 Canon Inc 情報処理方法及び装置
US6198553B1 (en) * 1995-07-19 2001-03-06 Canon Kabushiki Kaisha Image processing apparatus and method
US6330085B1 (en) * 1995-07-20 2001-12-11 Canon Kabushiki Kaisha Image processing apparatus and method
US6052693A (en) * 1996-07-02 2000-04-18 Harlequin Group Plc System for assembling large databases through information extracted from text sources
US5956733A (en) * 1996-10-01 1999-09-21 Fujitsu Limited Network archiver system and storage medium storing program to construct network archiver system
US5835908A (en) * 1996-11-19 1998-11-10 Microsoft Corporation Processing multiple database transactions in the same process to reduce process overhead and redundant retrieval from database servers
US6324565B1 (en) * 1997-07-28 2001-11-27 Qwest Communications International Inc. Dynamically generated document cache system
JP3534596B2 (ja) * 1997-12-05 2004-06-07 富士通株式会社 インテリジェントネットワーク内のデータベースの同期方法と装置
US6067548A (en) * 1998-07-16 2000-05-23 E Guanxi, Inc. Dynamic organization model and management computing system and method therefor
US6499036B1 (en) * 1998-08-12 2002-12-24 Bank Of America Corporation Method and apparatus for data item movement between disparate sources and hierarchical, object-oriented representation
US6275957B1 (en) * 1998-09-21 2001-08-14 Microsoft Corporation Using query language for provider and subscriber registrations
US6633926B1 (en) * 1998-11-30 2003-10-14 Matsushita Electric Industrial Co., Ltd. DMA transfer device capable of high-speed consecutive access to pages in a memory
US6366926B1 (en) * 1998-12-31 2002-04-02 Computer Associates Think, Inc. Method and apparatus for the dynamic filtering and routing of events
US6529921B1 (en) * 1999-06-29 2003-03-04 Microsoft Corporation Dynamic synchronization of tables

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005301985A (ja) * 2004-02-26 2005-10-27 Ricoh Co Ltd 情報処理装置、オブジェクト生成方法、オブジェクト変換方法、オブジェクト生成プログラム、オブジェクト変換プログラム及び記録媒体

Also Published As

Publication number Publication date
US20020065838A1 (en) 2002-05-30
EP1204041A2 (en) 2002-05-08
EP1204041A3 (en) 2004-01-07

Similar Documents

Publication Publication Date Title
US6651240B1 (en) Object-oriented software development support apparatus and development support method
JP3272281B2 (ja) データアイテム表示方法及び表示装置、データアイテムの表示を制御するプログラムを格納した記憶媒体
US6167405A (en) Method and apparatus for automatically populating a data warehouse system
JP2927180B2 (ja) 情報処理プログラムのデバッグ方法およびそのためのデバッガ
CN113971037A (zh) 应用处理方法、装置、电子设备及存储介质
US5781905A (en) Program generating method combining data item part with database manipulation part
US6275828B1 (en) Method of providing persistence to object in C++ object oriented programming system
CN113377497A (zh) 一种基于服务虚拟化的服务开发系统
JP2002140193A (ja) 情報処理装置及びその方法、コンピュータ可読メモリ
JPH07200312A (ja) ディジタルデータ処理システムとエラー処理方法
JPH08503568A (ja) 複数のプログラムモジュールとコンピュータの記憶装置との間にファイルまたは他のデータエンティティの転送を集積するための順次情報集積サービス
US7849442B2 (en) Application requirement design support system and method therefor
JPH11265395A (ja) データベースアクセスシステム
JP3449256B2 (ja) クライアント/サーバアプリケーション作成方法及びその装置並びに情報記録媒体
JP2002140221A (ja) 情報処理装置、情報処理方法、及び、記憶媒体
JP2003015922A (ja) データ処理方法及び装置及び記憶媒体
US5724559A (en) Method for displaying ISPF panels in a VM non-ISPF environment
JP2000276338A (ja) 視覚プログラミング方法およびシステムならびに視覚プログラミングのための記録媒体
JP2821220B2 (ja) 地図利用システムにおける情報検索方法
JP2002140327A (ja) 情報処理装置及びその方法、コンピュータ可読メモリ
JP2002140223A (ja) 情報処理装置及びその方法、コンピュータ可読メモリ
KR100428710B1 (ko) 모델링 객체 조립을 통한 모델링 시스템 및 그 방법
JPH06110733A (ja) プログラムのテストケース生成装置
US20060184550A1 (en) Information processing apparatus and method, and computer readable memory
JPH11338686A (ja) プログラム開発支援装置及びプログラム開発支援方法並びにプログラム開発支援プログラムを記録した記録媒体

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080108