(57)【要約】【課題】様々な処理シーケンスの設定、変更を容易に行なうことができるアプリケーションプログラム処理装置および方法を提供する。【解決手段】プロセス定義テーブルにプログラム実行部品ＩＤを設定し、プロセス定義テーブルに設定された部品ＩＤに対応する部品によるプログラム実行処理を行なう。本構成により、プロセス定義テーブルを新たに作成したり、変更することにより、様々な処理シーケンスの設定を容易に行なうことができる。個々のプログラムを格納した部品は任意に組合せることが可能であり、また、様々なプロセス定義テーブルにおいて再利用することが可能であり、各部品ＩＤをプロセス定義テーブルに設定するのみで、様々な処理が実行可能となる。【選択図】　図１
2004102436.tif 000002
【特許請求の範囲】
【請求項１】
予め定められた処理シーケンスに従った処理を実行するアプリケーションプログラム処理装置であり、
所定単位の処理プログラムを保持したプログラム部品を格納したプログラム部品格納部と、
トランザクションデータ項目と、該トランザクションデータを適用した処理を実行するプログラム部品の識別子（ＩＤ）とを対応付けたプロセス定義テーブルと、
前記プロセス定義テーブルに設定されたプログラム部品識別子（ＩＤ）に対応するプログラム部品を前記プログラム部品格納部から取得し、取得したプログラム部品を適用した処理を実行する制御部と、
を有することを特徴とするアプリケーションプログラム処理装置。
【請求項２】
前記プロセス定義テーブルは、
複数のトランザクションデータ項目と、該トランザクションデータを適用した処理を実行する複数のプログラム部品の識別子（ＩＤ）とを対応付けたテーブルであり、
前記制御部は、前記プロセス定義テーブルに設定された複数のプログラム部品識別子（ＩＤ）に対応する複数のプログラム部品を適用した処理を順次、または並列に実行する構成であることを特徴とする請求項１に記載のアプリケーションプログラム処理装置。
【請求項３】
前記制御部は、入力部からの入力データをＸＭＬデータまたはＨＴＭＬデータに変換し、各プログラム部品に対して変換データを入力して、部品対応のプログラムを実行する構成であることを特徴とする請求項１に記載のアプリケーションプログラム処理装置。
【請求項４】
前記プログラム部品は、
部品対応プログラムの実行において適用する値を格納した他の部品に対応するデータ項目を識別するためのテーブルデータとして関連プロパティ定義テーブルを有し、該関連プロパティ定義テーブルのエントリに従って、他部品に対応するデータ取得処理を実行する構成であることを特徴とする請求項１に記載のアプリケーションプログラム処理装置。
【請求項５】
予め定められた処理シーケンスに従った処理を実行するアプリケーションプログラム実行方法であり、
トランザクションデータ項目と、該トランザクションデータを適用した処理を実行するプログラム部品の識別子（ＩＤ）とを対応付けたプロセス定義テーブルに設定されたプログラム部品識別子（ＩＤ）に対応するプログラム部品を取得する部品取得ステップと、
前記部品取得ステップにおいて、取得したプログラム部品を適用した処理を実行するプログラム実行ステップと、
を有することを特徴とするアプリケーションプログラム実行方法。
【請求項６】
前記プロセス定義テーブルは、
複数のトランザクションデータ項目と、該トランザクションデータを適用した処理を実行する複数のプログラム部品の識別子（ＩＤ）とを対応付けたテーブルであり、
前記部品取得ステップ、およびプログラム実行ステップは、
前記プロセス定義テーブルに設定された複数のプログラム部品識別子（ＩＤ）に対応する複数のプログラム部品の取得処理、および取得した部品を適用した処理を順次、または並列に実行することを特徴とする請求項５に記載のアプリケーションプログラム実行方法。
【請求項７】
アプリケーションプログラム生成方法であり、
アプリケーションプログラム処理シーケンスに従った処理を実行するために必要となるプログラム部品を選択する部品選択ステップと、
前記部品選択ステップにおいて選択したプログラム部品の識別子（ＩＤ）と、アプリケーションプログラム処理シーケンスに従ったトランザクションデータ項目とを対応付けたプロセス定義テーブルを生成するステップと、
を有することを特徴とするアプリケーションプログラム生成方法。
【請求項８】
予め定められた処理シーケンスに従ったアプリケーションプログラム処理を実行するコンピュータ・プログラムであって、
トランザクションデータ項目と、該トランザクションデータを適用した処理を実行するプログラム部品の識別子（ＩＤ）とを対応付けたプロセス定義テーブルに設定されたプログラム部品識別子（ＩＤ）に対応するプログラム部品を取得する部品取得ステップと、
前記部品取得ステップにおいて、取得したプログラム部品を適用した処理を実行するプログラム実行ステップと、
を有することを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、アプリケーションプログラム処理装置、アプリケーションプログラム実行方法、およびアプリケーションプログラム生成方法、並びにコンピュータ・プログラムに関する。さらに詳細には、再利用可能なプログラム部品と、プロセス定義との組み合わせに基づいて、効率的に様々な業務処理等に適用可能なアプリケーションプログラムを実行または生成することを可能としたアプリケーションプログラム処理装置、アプリケーションプログラム実行方法、およびアプリケーションプログラム生成方法、並びにコンピュータ・プログラムに関する。
【０００２】
【従来の技術】
アプリケーションプログラムを効率的に作成するための手法として、再コンパイルの不要なプログラム部品を用意し、これらを適宜、組み合わせてプログラムを生成する手法がある。このような部品の組み合わせによるアプリケーションプログラム生成を行なうプログラム言語として、Ｓｕｎ　Ｍｉｃｒｏｓｙｓｔｅｍｓ，Ｉｎｃ．により配布されているＪａｖａが知られている。
【０００３】
Ｊａｖａ言語で書かれたプログラムは、コンピュータ、プラットフォームに依存しないＪａｖａ実行ファイル形式としてのバイトコード（Ｂｙｔｅ　Ｃｏｄｅ）に変換され、Ｊａｖａ仮想マシン（ＪａｖａＶＭ）により読み取られて機械語変換（インタプリタ）がなされ様々な装置上において実行される。
【０００４】
Ｊａｖａにおいては、アプリケーションソフトウェアを容易に短時間で製作するために、再コンパイルの不要なソフトウェア部品（コンポーネント）をあらかじめ用意しておき、その部品を組み合わせてプログラムを作成する。Ｊａｖａにおいては、これらの部品の再利用化技術（Ｊａｖａ　Ｂｅａｎｓ）が構築されている。
【０００５】
部品は、例えば、ディスプレイに表示するウィンドウ、ボタン、リスト、コンボボックス、テキスト入力フィールド等の様々なコンポーネントを単位として設定されるものや、データベース接続処理、データ検証処理、演算処理等の様々な処理が定義された部品等がある。
【０００６】
これら部品（コンポーネント）は、例えばディスプレイに表示するボタン形状、配置情報等、部品の属性情報としての「プロパティ」、部品に対するアクションの結果としての処理としての「メソッド」、さらに、部品に対するアクション、例えばデータ到着、割り込み発生、プロパティ変更、メソッド呼び出し等が発生した際に、別の部品に事象を連絡する機能としての「イベント」が規定される。これら、「プロパティ」、「メソッド」、「イベント」は、Ｊａｖａ　ｂｅａｎｓにおける部品の構成要件とされる。
【０００７】
Ｊａｖａの実行最小プログラム単位は、「クラス（ｃｌａｓｓ）」と呼ばれ、１以上のクラスによってＪａｖａプログラムが生成される。クラスはデータとしての変数（Ｖａｒｉａｂｌｅ）と、動作としてのメソッド（Ｍｅｔｈｏｄ）を持つ。このクラスとして設定されるプログラムコンポーネントを、例えばインターネット、ＬＡＮのようなネットワークを介して接続されたＰＣに転送し、格納することが可能であり、クラスファイルを格納した装置側では、プラットフォームに依存しないＪａｖａ仮想マシンが、クラスファイル内に格納されたプログラムを実行することができる。
【０００８】
【発明が解決しようとする課題】
上述したＪａｖａを適用したプログラミングにおいて、部品を組み合わせることによって効率的なプログラム生成が可能となったが、生成されたプログラムの一部の設定や処理を変更したり、新たな処理プログラムを追加するなどの処理は、プログラミング自体を再度実行することが要請され、必ずしも容易な作業とは言い難いものであった。
【０００９】
本発明は、上述の問題点に鑑みてなされたものであり、再利用可能なプログラム部品と、プロセス定義との組み合わせに基づいて、効率的に様々な業務処理等に適用可能なアプリケーションプログラムを実行または生成することを可能としたアプリケーションプログラム処理装置、アプリケーションプログラム実行方法、およびアプリケーションプログラム生成方法、並びにコンピュータ・プログラムを提供することを目的とする。具体的には、エントリデータを容易に変更、追加、削除可能なプロセス定義テーブルを適用して、テーブルに基づいて適用部品を決定して、様々な処理を実行することを可能としたアプリケーションプログラム処理装置、アプリケーションプログラム実行方法、およびアプリケーションプログラム生成方法、並びにコンピュータ・プログラムを提供する。
【００１０】
【課題を解決するための手段】
本発明の第１の側面は、
予め定められた処理シーケンスに従った処理を実行するアプリケーションプログラム処理装置であり、
所定単位の処理プログラムを保持したプログラム部品を格納したプログラム部品格納部と、
トランザクションデータ項目と、該トランザクションデータを適用した処理を実行するプログラム部品の識別子（ＩＤ）とを対応付けたプロセス定義テーブルと、
前記プロセス定義テーブルに設定されたプログラム部品識別子（ＩＤ）に対応するプログラム部品を前記プログラム部品格納部から取得し、取得したプログラム部品を適用した処理を実行する制御部と、
を有することを特徴とするアプリケーションプログラム処理装置にある。
【００１１】
さらに、本発明のアプリケーションプログラム処理装置の一実施態様において、前記プロセス定義テーブルは、複数のトランザクションデータ項目と、該トランザクションデータを適用した処理を実行する複数のプログラム部品の識別子（ＩＤ）とを対応付けたテーブルであり、前記制御部は、前記プロセス定義テーブルに設定された複数のプログラム部品識別子（ＩＤ）に対応する複数のプログラム部品を適用した処理を順次、または並列に実行する構成であることを特徴とする。
【００１２】
さらに、本発明のアプリケーションプログラム処理装置の一実施態様において、前記制御部は、入力部からの入力データをＸＭＬデータまたはＨＴＭＬデータに変換し、各プログラム部品に対して変換データを入力して、部品対応のプログラムを実行する構成であることを特徴とする。
【００１３】
さらに、本発明のアプリケーションプログラム処理装置の一実施態様において、前記プログラム部品は、部品対応プログラムの実行において適用する値を格納した他の部品に対応するデータ項目を識別するためのテーブルデータとして関連プロパティ定義テーブルを有し、該関連プロパティ定義テーブルのエントリに従って、他部品に対応するデータ取得処理を実行する構成であることを特徴とする。
【００１４】
さらに、本発明の第２の側面は、
予め定められた処理シーケンスに従った処理を実行するアプリケーションプログラム実行方法であり、
トランザクションデータ項目と、該トランザクションデータを適用した処理を実行するプログラム部品の識別子（ＩＤ）とを対応付けたプロセス定義テーブルに設定されたプログラム部品識別子（ＩＤ）に対応するプログラム部品を取得する部品取得ステップと、
前記部品取得ステップにおいて、取得したプログラム部品を適用した処理を実行するプログラム実行ステップと、
を有することを特徴とするアプリケーションプログラム実行方法にある。
【００１５】
さらに、本発明のアプリケーションプログラム実行方法の一実施態様において、前記プロセス定義テーブルは、複数のトランザクションデータ項目と、該トランザクションデータを適用した処理を実行する複数のプログラム部品の識別子（ＩＤ）とを対応付けたテーブルであり、前記部品取得ステップ、およびプログラム実行ステップは、前記プロセス定義テーブルに設定された複数のプログラム部品識別子（ＩＤ）に対応する複数のプログラム部品の取得処理、および取得した部品を適用した処理を順次、または並列に実行することを特徴とする。
【００１６】
さらに、本発明の第３の側面は、
アプリケーションプログラム生成方法であり、
アプリケーションプログラム処理シーケンスに従った処理を実行するために必要となるプログラム部品を選択する部品選択ステップと、
前記部品選択ステップにおいて選択したプログラム部品の識別子（ＩＤ）と、アプリケーションプログラム処理シーケンスに従ったトランザクションデータ項目とを対応付けたプロセス定義テーブルを生成するステップと、
を有することを特徴とするアプリケーションプログラム生成方法にある。
【００１７】
さらに、本発明の第４の側面は、
予め定められた処理シーケンスに従ったアプリケーションプログラム処理を実行するコンピュータ・プログラムであって、
トランザクションデータ項目と、該トランザクションデータを適用した処理を実行するプログラム部品の識別子（ＩＤ）とを対応付けたプロセス定義テーブルに設定されたプログラム部品識別子（ＩＤ）に対応するプログラム部品を取得する部品取得ステップと、
前記部品取得ステップにおいて、取得したプログラム部品を適用した処理を実行するプログラム実行ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【００１８】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、ＣＤやＦＤ、ＭＯなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【００１９】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【００２０】
【発明の実施の形態】
以下、図面を参照して本発明のプログラミング装置、およびプログラミング方法の実施形態について、詳細に説明する。
【００２１】
［システム構成］
図１は、本発明の構成を示すブロック図である。表示部１０１は、Ｗｅｂブラウザにより各種のデータ入力画面、プログラム実行後の出力データの表示画面等をＷｅｂページとして表示する。ユーザは、入力部１０２から表示部１０１に表示されたＷｅｂページを介して、処理要求を制御部１０３に送信する。
【００２２】
制御部１０３は、処理要求に対応するサーブレットを起動し、各種の処理を実行する。サーブレットは、Ｊａｖａの実行環境としてのＪａｖａ仮想マシン（ＪａｖａＶＭ）上で動作する。制御部１０３では、ブラウザからのリクエストに基づいて、プロセス定義テーブル１０４を参照してＨＴＭＬ（ＨｙｐｅｒｔｅｘｔＭａｒｋｕｐ　Ｌａｎｇｕａｇｅ）またはＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ）データを生成し、生成したＨＴＭＬまたはＸＭＬデータに基づいてプログラム部品格納部１０５の有する各種のプログラム部品に基づいて、Ｊａｖａプログラムの実行単位としてのＪａｖａクラスが実行される。この処理の詳細については、後述する。
【００２３】
プログラム部品格納部１０５の有する部品は、Ｊａｖａ−Ｂｅａｎｓに相当するプログラム部品であり、例えば、表示部に表示するウィンドウ、ボタン、リスト、テキスト入力フィールド等の様々なコンポーネントを単位として設定されるプログラム部品（コンポーネント）や、データベース接続処理、データ抽出処理、データ検証処理、演算処理等の様々な処理が定義された部品（コンポーネント）等であり、部品の属性情報としての「プロパティ」、部品に対するアクションの結果としての処理としての「メソッド」、さらに、部品に対するアクション、例えばデータ到着、割り込み発生、プロパティ変更、メソッド呼び出し等が発生した際に、別の部品に事象を連絡する機能としての「イベント」等が規定されたプログラム部品である。
【００２４】
制御部１０３は、プロセス定義テーブルによって決定される部品をプログラム部品格納部１０５から取得し、ＸＭＬデータを入力として、１以上の部品を適用した処理として部品対応のプログラムを実行する。処理結果は、データベース１０７に格納されたり、あるいは画面制御テーブル１０８を適用して表示態様が設定され、表示処理部１０６における処理の後、表示部１０１において表示される。
【００２５】
表示処理部１０６は、例えばＪａｖａプログラムとして実行可能なＪＳＰ（Ｊａｖａ　Ｓｅｒｖｅｒ　Ｐａｇｅｓ）プログラムを実行する。ＪＳＰ（ＪａｖａＳｅｒｖｅｒ　Ｐａｇｅｓ）は、ＨＴＭＬ形式の文書にＪａｖａプログラムを埋め込み、リクエストに応じてＪａｖａプログラムを実行可能とし、必要に応じてＪａｖａ　Ｂｅａｎｓを呼び出して処理を実行させたり、サーブレットから値を受け取る等の処理が可能である。
【００２６】
なお、図１に示すシステムは、例えば特定の企業内の閉じられたローカルネットワークとして構築するか、あるいは、インターネット等の外部ネットワークからのアクセス可能な構成のいずれも可能であるが、外部ネットワークとの接続構成とする場合は、個人の秘密情報の漏洩を防止するため、ファイアウォールの構築、またデータアクセス時のパスワード入力要求、あるいはデータ通信に際して認証処理を実行する構成とすることが好ましい。
【００２７】
図２に、図１に示すシステムを実現する基本的なハードウェア構成としてのＰＣの構成例を示す。ＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）３０１は、バス３１１を介して、入出力インタフェース３１２に接続されており、ＣＰＵ３０１は、通信部３０７、またはキーボードやマウス等の入力部３０６の操作により指令が入力されると、入出力インタフェース３１２を介して指令を入力し、入力指令にしたがって、ＲＯＭ（Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）３０２、ハードディスク３０４等のメモリ手段に格納されているプログラムを実行する。
【００２８】
ＣＰＵ（Ｃｅｎｔｒａｌ　ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）３０１は、各種プログラムや、ＯＳ（Ｏｐｅｒａｔｉｎｇ　Ｓｙｓｔｅｍ）を実行するプロセッサである。ＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ−Ｍｅｍｏｒｙ）３０２は、ＣＰＵ３０１が実行するプログラム、あるいは演算パラメータとしての固定データを格納する。ＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）３０３は、ＣＰＵ３０１の処理において実行されるプログラム、およびプログラム処理において適宜変化するパラメータの格納エリア、ワーク領域として使用される。
【００２９】
ＣＰＵ３０１は、ハードディスク３０４にインストールされたプログラム、またはドライブ３０８に装着されたリムーバブル記録媒体３０９から読み出されてハードディスク３０４にインストールされたプログラムを、ＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）３０３にロードして実行することも可能である。
【００３０】
これにより、ＣＰＵ３０１は、様々なプログラムの実行処理を行う。ＣＰＵ３０１は、必要に応じて、入出力インタフェース３１２を介して、画像または音声出力手段によって構成される出力部３０５への出力処理、あるいは、通信部３０７からの送信処理、さらには、ハードディスク３０４に対する記録処理を実行する。
【００３１】
なお、図１に示す処理構成は、１つのＰＣ等のハードウェアによって実現することも、あるいはネットワーク接続された複数のＰＣ、サーバー等の情報処理装置による協同的処理として実行する構成とすることも可能である。
【００３２】
［処理の詳細について］
次に、図１、図２を用いて説明したシステムによって実行される処理の詳細について説明する。
【００３３】
まず、図３を参照してプロセス定義テーブルについて説明する。プロセス定義テーブルは、トランザクションデータ項目を定義したデータベース表であり、図３に示すように、プロセスＩＤ、項目ＩＤ、部品ＩＤの各項目を対応付けたテーブルとして構成される。
【００３４】
プロセスＩＤは、各処理に対応した識別子として設定されるＩＤである。例えばアプリケーション業務処理としての交通費申請処理、交通費清算処理、給与算出処理、伝票精算処理、データ登録処理等、様々な処理に対応して設定される識別子である。項目ＩＤは、図３に示すように、会社ＩＤ、部門ＩＤ、金額等、トランザクションデータ項目の識別子としてのＩＤであり、例えばユーザがＷｅｂページに入力するデータ項目（図４参照）等に対応して設定される。部品ＩＤは、トランザクションデータ項目に対応する処理を実行するプログラムを格納した部品、すなわち、例えばＪａｖａ−Ｂｅａｎｓ等のプログラム部品を識別するＩＤである。
【００３５】
図３に示すプロセス定義テーブル例では、トランザクションデータ項目［会社ＩＤ］に対しては、会社部品が対応付けられ、ユーザ入力値から［会社ＩＤ］に対応する値を取得して会社部品を適用した処理、すなわち、会社部品プログラムを実行する設定がなされていることを示す。会社部品の適用処理の後、トランザクションデータ項目［部門ＩＤ］、［金額］、・・に対応するユーザ入力値を取得して、それぞれ部門部品、金額部品に対応するプログラムが実行される。
【００３６】
このように、プロセス定義テーブルに設定された部品を適用した処理により、プロセス［ＴＲＥＸ０１］によって指定された処理、例えば［ＴＲＥＸ０１］＝交通費申請処理であれば、交通費申請処理のプロセスが実行されることになる。
【００３７】
このように、プロセス定義テーブルは、交通費申請処理、交通費清算処理等、様々な処理毎に必要な項目ＩＤと部品ＩＤとを対応付け、テーブルに定義された部品を順次実行することによって処理が行なわれるように設定したテーブルである。従って、新たなアプリケーションプログラム処理が定義された場合には、新たなプロセス定義テーブルを生成し、そのテーブルに従って処理が実行される。なお、プロセス定義テーブルの変更、項目追加、削除によりプロセスの変更が容易に実行される。これらの処理については後述する。
【００３８】
次に、図４を参照して、図１に示す制御部１０３において実行するプロセス実行用ＸＭＬデータの生成処理について説明する。前述したように、制御部１０３は、ブラウザからのリクエストに基づいて、プロセス定義テーブル１０４を参照してＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ）またはＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ）データを生成し、プロセス定義テーブルに設定された部品ＩＤに基づいて、対応する部品をプログラム部品格納部１０５から取得し、取得した部品を適用して、ＨＴＭＬまたはＸＭＬデータを入力値として各種のプログラム部品に基づく処理を実行する。
【００３９】
図４には、制御部が参照可能な（ａ）プロセス定義テーブルと、ユーザがデータ入力可能な（ｂ）Ｗｅｂ入力画面イメージと、制御部がこれら（ａ）、（ｂ）に基づいて生成する（ｃ）プロセス実行用データとしてのＸＭＬデータを示している。本実施例においては、ＸＭＬデータを部品を適用した処理における入力データとしている。
【００４０】
図４に示すように、Ｗｅｂページとしてユーザに提示される画面は、処理、例えば交通費申請処理等の処理に応じて設定された画面であり、これは、その処理に対応するプロセス定義テーブルの項目に対応するデータ項目を持つ構成となっている。
【００４１】
これらのＷｅｂページ構成は、図１に示すシステム構成の画面制御テーブル１０８を適用して設定される。図５（ａ）に画面制御テーブルの構成例を示し、図５（ｂ）にＷｅｂページ構成例を示す。画面制御テーブルは、図５（ａ）に示すように、オブジェクト、属性、テキスト、位置、項目の各データが対応付けられ、これらの定義に基づいて、図５（ｂ）に示すＷｅｂページが表示される。
【００４２】
図５（ａ）の画面制御テーブル中の項目データは、実際のプログラム処理を規定した図５（ｃ）に示すプロセス定義テーブルに設定された「項目」に対応付けられている。図４を参照して説明したように、ユーザが図５（ｂ）に示すＷｅｂページに入力した各項目に対応するデータを制御部１０３（図１参照）が受領し、受領データと、プロセス定義テーブルに基づいてＸＭＬデータ（図４（ｃ）参照）を生成し、生成したＸＭＬデータに基づいて、プログラム部品格納部１０５（図１参照）の部品を適用した処理を実行する。
【００４３】
プログラム部品には、例えば図５（ｄ）に示すように、部門部品、科目部品等、プロセス定義テーブルに設定された部品ＩＤに対応するプログラム部品であり、データベース接続処理、データ抽出処理、データ検証処理、演算処理等の様々な処理が定義された部品（コンポーネント）等である。
【００４４】
制御部１０３（図１参照）は、プロセス定義テーブルに設定された部品ＩＤに対応する部品によるプログラム処理を、生成したＸＭＬデータを入力として、順次実行する。
【００４５】
プログラム部品を適用した処理例について、図６、図７を参照して説明する。図６は、部品を適用した入力値妥当性検証処理であり、図７は、各部品に定義された伝票の採番や、データ格納処理等の実質的な各伝票に従った実行処理である。これらの処理は、いずれも、プロセス定義テーブルに定義された部品ＩＤに対応する部品を適用した処理として実行される。
【００４６】
まず、図６は、入力値妥当性検証処理であり、ユーザがＷｅｂページに構成されたデータ入力画面に入力したデータの妥当性を各部品に定義された検証処理プログラムを適用して実行する。例えば会社部品においては、入力データが予め定められたテキストデータであるか、登録済みの名称であるか、また、金額部品においては、入力データが数値データであるか等、それぞれの部品に格納された検証処理プログラムの検証シーケンスに従って入力値妥当性検証処理が実行される。
【００４７】
この入力値妥当性検証処理において、いずれかの部品の検証処理にエラーが発生した場合は、エラーメッセージを生成しＷｅｂページに提示する等の処理が実行される。
【００４８】
なお、プロセス定義テーブルに設定された複数のプログラム部品識別子（ＩＤ）に対応する複数のプログラム部品を適用した処理は、図６に示すように順次シーケンシャルに実行してもよいが、処理機能が許容すれば、並列処理として実行してもよい。
【００４９】
図６に示す入力値妥当性検証処理により、すべての入力値の妥当性が検証されると、図７に示すプロセス定義に従った部品の実行処理が行なわれる。ここに示す例では、図６に示す入力値妥当性検証処理は、すべての対応部品の実行プログラムとして定義されているが、図７に示す入力値妥当性検証後の処理は、伝票処理部品、および交通費部品においてのみ処理が定義され、処理の定義された部品を適用した処理のみが行われる。会社部品〜適用部品については、図６の入力値妥当性検証処理のみが実行され、その他の実行プログラムは定義されていないので、図７に示す処理シーケンス中では、実質的な処理は行われない。
【００５０】
伝票処理部品には、新規伝票番号、ここでは交通費申請処理を例として示しており、交通費申請処理に必要な新規伝票番号が採番される。次に、交通費部品を適用して、関連プロパティの交通費トランザクションテーブルへの格納処理が実行される。この処理については後述する。
【００５１】
すなわち、伝票処理部品には、交通費申請処理に必要な新規伝票番号の採番プログラムが格納され、交通費部品には、関連プロパティの交通費トランザクションテーブルへの格納処理プログラムが格納され、それぞれの部品格納プログラムが順次実行される。
【００５２】
図８を参照して、交通費部品を適用した関連プロパティの交通費トランザクションテーブルへの格納処理について説明する。交通費トランザクションテーブルは、図８（ａ）に示すように、交通費申請データをそれぞれ個別に登録したデータであり、会社ＩＤ、伝票番号等の登録必要項目に入力値を格納したテーブルとして構成される。
【００５３】
関連プロパティ定義は、図８（ｂ）に示すように、部品対応プログラムの実行において適用する値を格納した他の部品に対応するデータ項目を識別するためのテーブルデータであり、関連プロパティ定義テーブルのエントリに従って、他部品に対応するデータ取得処理を実行することが可能となる。
【００５４】
図８（ｂ）に示す例は、交通費部品が、交通費トランザクションテーブルに格納すべきデータを定義した関連プロパティ定義テーブルである。交通費部品のプログラムは、関連プロパティ定義に基づいて、ユーザ入力データをそれぞれの部品、あるいはユーザ入力値としてのＸＭＬデータから取得して、交通費トランザクションテーブルに格納する。例えば会社ＩＤに対応する値「ＢＢＳ」は会社ＩＤに対応するデータ領域から取得して交通費トランザクションテーブルに格納する。各値が格納された交通費トランザクションテーブルは、必要に応じてデータベース１０７（図１参照）に格納される。また、必要に応じて表示処理部１０６を介して表示データが生成され、表示部１０１において表示される。
【００５５】
上述したように、一連の処理は、プロセス定義テーブルに設定された部品を適用した処理として実行される。様々な処理のシーケンスは、プロセス定義テーブルの構成により決定されるものであり、プロセス定義テーブルを新たに作成したり、変更したりすることにより、様々な処理シーケンスを容易に設定し、実行することができる。また、プロセス定義テーブルは、各項目に対応する部品ＩＤを設定する構成であり、各部品において定義されたプログラムが実行される構成であるので、様々なプログラムを格納した部品を再利用することが可能であり、プログラムの変更等を行なうことなく、それぞれの部品ＩＤをプロセス定義テーブルに設定するのみで、様々な処理が実行可能となる。
【００５６】
また、各部品において実行する処理の変更は、個々の部品の変更、あるいは新規部品の追加処理によって対応可能であり、プロセス定義テーブルにおいて設定する部品ＩＤを変更する、あるいは追加するなどの処理も可能であり、他の部品に対する影響を発生させることなく、処理シーケンスを自在に変更することが可能である。
【００５７】
部品の処理変更例として、先に図８を参照して説明した交通費部品の処理の変更例について、図９を参照して説明する。
【００５８】
図８を参照して説明したように、交通費部品は、関連プロパティ定義に基づいて、交通費トランザクションテーブルにユーザ入力値を格納する処理を実行するプログラムを有する。ここで、図９（ａ）に示す関連プロパティ定義に新たな項目を追加する処理を行なう。ここでは、（ａ）関連プロパティ定義の下３段に追加プロパティとして、出張日、出張先、訪問者の各項目を追加した。
また、これらのデータを交通費トランザクションテーブルに格納するため、（ｂ）交通費トランザクションテーブルにデータ項目を追加するか、あるいは図（ｃ）に示すように、新たなトランザクションデータ格納テーブルとしての交通費トランザクション情報テーブルを生成する。
【００５９】
交通費部品のプログラムの実行により、関連プロパティ定義テーブルにの定義情報に従って、会社ＩＤ〜適用に対応する値が取得されるとともに、追加された出張日、出張先、訪問者の各項目に対応する値が取得され、各トランザクションテーブルに格納される。
【００６０】
これらの（ｂ）交通費トランザクションテーブル、（ｃ）交通費トランザクション情報テーブルの格納情報は、必要に応じてデータベース登録され、また必要に応じて表示部に表示される。
【００６１】
上述した部品変更処理は、部品の有する関連プロパティ定義の変更処理であるが、その他にもプログラムの変更が可能であり、これらの変更は、他の部品に影響をおよぼすことなく実行される。
【００６２】
次に、新たな部品の追加による処理シーケンスの変更例を図１０および図１１を参照して説明する。
【００６３】
図１０は、図６〜図８を参照して説明した処理に対応し、会社部品５０１、部門部品５０２、伝票処理部品５０３における処理を説明している
【００６４】
例えば会社部品５０１は、図６を参照して説明したように、入力値妥当性検証処理を実行する。会社部品は、入力データとしてのＸＭＬデータから、ユーザ入力値としての会社ＩＤ＝ＢＢＳを取得し、入力値が会社部品の検証処理プログラムにより検証される。検証は、データが予め定められたデータ形式であるか否か、データベースに登録済みのデータであるか否か等の検証処理として実行される。会社部品５０１は、データベース５１０中の会社マスタテーブルを参照し、入力データと登録済みデータとの照合を実行する。
【００６５】
同様に、部門部品５０２も入力値妥当性検証処理を実行する。部門部品は、入力データとしてのＸＭＬデータから、ユーザ入力値としての会社ＩＤ＝ＢＢＳ、部門ＩＤ＝００１を取得し、データが予め定められたデータ形式であるか否か、データベースに登録済みのデータであるか否か等の検証を実行する。部門部品５０２は、データベース５１０中の会社マスタテーブル、および部門マスタテーブルを参照し、入力データと登録済みデータとの照合を実行する。
【００６６】
また、伝票処理部品５０３は、図７を参照して説明したように、採番処理を実行する。伝票処理部品５０３は、部門部品おいて検証済みのユーザ入力値［会社ＩＤ＝ＢＢＳ、部門ＩＤ＝００１］に対応付けて伝票番号を設定する処理を行なう。
【００６７】
この図１０に示す処理は、図３に示すプロセス定義テーブルに従って、プロセス定義テーブルに設定された部品ＩＤに対応する部品が読み出されて、読み出された部品を適用して実行される処理であり、図６〜図９を参照して説明した処理の一部である。
【００６８】
これらの処理に新たな部品追加を行ない、追加部品を適用して新たな処理を実行させる処理変更例を図１１を参照して説明する。
【００６９】
図１１に示すように、新規部品として、ＢＢＳ部門部品５２２と、ＢＢＳ経費自動配布部品５２３を追加する。また、データベース５３０中に会社情報テーブルとして、会社ＩＤと、プロパティＩＤと、値を対応付けたテーブルを新規設定し、会社ＩＤとして［ＢＢＳ］、プロパティＩＤとして［部門経費自動配布］、値として［行なう］を設定したとする。
【００７０】
会社部品５２１は、図１０を参照して説明したと同様の入力値妥当性検証処理を実行する。次に、ＢＢＳ部門部品５２２による処理が実行される。ＢＢＳ部門部品５２２は、入力値妥当性検証処理を実行するプログラムとともに、ＢＢＳ経費自動配布部品からのプロパティ要求［ｇｅｔ　ｐｒｏｐｅｒｔｙ（部門経費自動配布）］に応答する処理を実行するプログラムを有する。
【００７１】
ＢＢＳ経費自動配布部品５２３は、プロパティ要求［ｇｅｔ　ｐｒｏｐｅｒｔｙ（部門経費自動配布）］をＢＢＳ部門部品に出力し、ＢＢＳ部門部品からの応答に応じて、部門経費自動配布処理を実行するプログラムを有する。
【００７２】
会社部品５２１、ＢＢＳ部門部品５２２における入力値妥当性検証処理が済むと、ＢＢＳ経費自動配布部品による処理が開始され、プロパティ要求［ｇｅｔ　ｐｒｏｐｅｒｔｙ（部門経費自動配布）］をＢＢＳ部門部品５２２に出力する。プロパティ（部門経費自動配布）の値は、データベース中の会社情報テーブルに格納され、アクセス権は、会社部品が持っているため、ＢＢＳ部門部品５２２は、会社部品からプロパティ（部門経費自動配布）の値「行なう」を取得する。
【００７３】
ＢＢＳ部門部品５２２は、プロパティ（部門経費自動配布）の値「行なう」を取得し、さらに処理対象の勘定科目が「経費」であるかを判定し、プロパティ（部門経費自動配布）の値が「行なう」であり、かつ処理対象の勘定科目が「経費」であることを条件として、ＢＢＳ経費自動配布部品５２３に、プロパティ要求［ｇｅｔ　ｐｒｏｐｅｒｔｙ（部門経費自動配布）］に対する応答として「Ｙｅｓ」を返す。
【００７４】
ＢＢＳ経費自動配布部品５２３は、ＢＢＳ部門部品５２２からのＹｅｓの応答に基づいて、部門経費自動配布処理を実行する。
【００７５】
伝票処理部品５２４は、図７を参照して説明したように、採番処理を実行する。伝票処理部品５２４は、ＢＢＳ部門部品、ここと経費自動配布部品を適用して検証済みのユーザ入力値［会社ＩＤ＝ＢＢＳ、部門ＩＤ＝００１］等に対応付けて伝票番号を設定する処理を行なう。
【００７６】
なお、図１１を参照して説明した処理を実行するためには、プロセス定義テーブルにＢＢＳ部門部品ＩＤ、ＢＢＳ経費自動配布部品ＩＤを設定したエントリを追加して設定することが必要となる。
【００７７】
上述したように、プロセス定義テーブルに設定した部品に対応する部品ＩＤを追加設定することで、新たな処理を実行させることが可能であり、部品の変更、追加、削除に対応させて、プロセス定義テーブルに設定する部品ＩＤを変更、追加、削除することで、新たな処理シーケンスを設定し、また実行させることが可能となる。
【００７８】
最後に、プロセス定義テーブルを生成する処理を含むアプリケーションプログラムの生成処理手順と、生成したプロセス定義テーブルを適用したアプリケーションプログラム実行処理手順について、図１２に示すフローチャートを参照して説明する。
【００７９】
図１２（ａ）は、プロセス定義テーブルを生成する処理を含むアプリケーションプログラムの生成処理手順を示すフローチャートである。ステップＳ１０１において、アプリケーションプログラム処理シーケンスに従った処理を実行するために必要となるプログラム部品を選択する。なお、必要な部品が無い場合には、新たに部品生成処理を実行する。ステップＳ１０２において、ステップＳ１０１の部品選択ステップにおいて選択したプログラム部品の識別子（ＩＤ）と、アプリケーションプログラム処理シーケンスに従ったトランザクションデータ項目とを対応付けたプロセス定義テーブルを生成する。
【００８０】
プロセス定義テーブルは、図３他を参照して説明したように、トランザクション項目の項目ＩＤと、部品ＩＤとを対応付けたテーブルである。プロセス定義テーブルが生成されると、ステップＳ１０３において、これを記憶部に格納する。
【００８１】
図１２（ｂ）は、生成したプロセス定義テーブルを適用したアプリケーションプログラム実行処理手順を示すフローチャートである。ステップＳ２０１において、プロセス定義テーブルに設定された部品ＩＤを読み出し、ステップＳ２０２において、プログラム部品識別子（ＩＤ）に対応するプログラム部品を前記プログラム部品格納部から取得し、ステップＳ２０３において、取得したプログラム部品を適用した処理を実行する。
【００８２】
ステップＳ２０４において、プロセス定義テーブルに設定された部品ＩＤに対応する部品適用処理が全て完了したかを判定し、Ｎｏの場合は、未処理の部品について、ステップＳ２０１以下の処理を実行し、プロセス定義テーブルに設定された部品ＩＤに対応する部品適用処理が全て完了したことを条件として処理を終了する。
【００８３】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【００８４】
なお、上述の実施例で述べた一連の処理は、ハードウェアおよびソフトウェアの複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、サーバ内のメモリにインストールして実行させる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、例えばサーバとしてのコンピュータや１チップのマイクロコンピュータ等にインストールされる。
【００８５】
各種処理の実行プログラムは、システムに内蔵されている記録媒体としてのハードディスクやＲＯＭに予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ　Ｄｉｓｃ　Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ），ＭＯ（Ｍａｇｎｅｔｏ　ｏｐｔｉｃａｌ）ディスク，ＤＶＤ（Ｄｉｇｉｔａｌ　Ｖｅｒｓａｔｉｌｅ　Ｄｉｓｃ）、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【００８６】
また、プログラムは、１つのコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【００８７】
【発明の効果】
以上、述べたように、本発明の構成によれば、プロセス定義テーブルに設定された部品ＩＤに対応する部品を適用して様々な処理プログラムを実行する構成としたので、プロセス定義テーブルを新たに作成したり、変更することにより、様々な処理シーケンスの設定を容易に行なうことができる。また、プロセス定義テーブルに設定する部品ＩＤは任意の組合せが可能であり、また、様々なプロセス定義テーブルにおいて再利用することが可能であり、個々のプログラムの変更等を行なうことなく、それぞれの部品ＩＤをプロセス定義テーブルに設定するのみで、様々な処理が実行可能となる。
【００８８】
また、本発明の構成によれば、プロセス定義テーブルに設定した部品の追加、削除による新たな処理シーケンスの設定のみならず、新たな部品を生成して追加する処理も、他の部品に影響を与えることなく実行可能であるので、処理シーケンスの変更、再構築等などが容易に実行可能となる。
【図面の簡単な説明】
【図１】本発明のプログラム実行装置のシステム構成を説明する図である。
【図２】本発明のプログラム実行装置のハードウェア構成を説明する図である。
【図３】本発明のプログラム実行装置において適用されるプロセス定義テーブルの構成例を示す図である。
【図４】制御部において実行されるＸＭＬデータ生成処理例を説明する図である。
【図５】画面制御テーブル、画面構成、プロセス定義テーブル、および部品群の対応について説明する図である。
【図６】部品を適用した入力値妥当性検証処理について説明する図である。
【図７】部品を適用した各実行処理について説明する図である。
【図８】部品を適用した処理において、関連プロパティ定義を適用したトランザクションテーブル生成処理ついて説明する図である。
【図９】部品を適用した処理の変更例について説明する図である。
【図１０】部品を適用した処理における部品追加処理ついて説明する図である。
【図１１】部品を適用した処理における部品追加処理ついて説明する図である。
【図１２】プロセス定義テーブルを生成する処理を含むアプリケーションプログラムの生成処理手順と、生成したプロセス定義テーブルを適用したアプリケーションプログラム実行処理手順について示すフローチャートである。
【符号の説明】
１０１　表示部
１０２　入力部
１０３　制御部
１０４　プロセス定義テーブル
１０５　プログラム部品格納部
１０６　表示処理部
１０７　データベース
３０１　ＣＰＵ
３０２　ＲＯＭ
３０３　ＲＡＭ
３０４　ハードディスク
３０５　出力部
３０６　入力部
３０７　通信部
３０８　ドライブ
３０９　リムーバブル記憶媒体
３１１　バス
３１２　入出力インタフェース
５０１　会社部品
５０２　部門部品
５０３　伝票処理部品
５１０　データベース
５２１　会社部品
５２２　ＢＢＳ部門部品
５２３　ＢＢＳ経費自動配布部品
５２４　伝票処理部品
５３０　データベース
【図１】
2004102436.tif 000003
【図２】
2004102436.tif 000004
【図３】
2004102436.tif 000005
【図４】
2004102436.tif 000006
【図５】
2004102436.tif 000007
【図６】
2004102436.tif 000008
【図７】
2004102436.tif 000009
【図８】
2004102436.tif 000010
【図９】
2004102436.tif 000011
【図１０】
2004102436.tif 000012
【図１１】
2004102436.tif 000013
【図１２】
2004102436.tif 000014