(57)【要約】本発明は、トランザクション情報を処理するためのトランザクションシステムに関するものである。前記トランザクションシステムは、少なくとも一つのトランザクション処理モジュールを具備し、前記トランザクション処理モジュールは、トランザクションを生成し、及び／又は、処理し、前記トランザクション処理モジュールは、セッションマネージャと接続されることが可能であり、前記セッションマネージャは、セッションの形で前記トランザクション情報を蓄積及び管理することが可能なように構成され、前記セッションマネージャは、蓄積するための記憶場所に接続され、記憶場所内の、個別のセッションを識別するためのセッション識別情報と、前記個別のセッションのデータ値と、に関する情報の記憶を制御することを特徴とする。
2008533555.tif 000002
【特許請求の範囲】
【請求項１】
トランザクション情報を処理するトランザクションシステムであって、
少なくとも一つのトランザクション処理モジュールを具備し、
前記トランザクション処理モジュールは、トランザクション情報を生成し、及び／又は、処理し、前記トランザクション処理モジュールは、セッションマネージャと接続されることが可能であり、前記セッションマネージャは、セッションの形で前記トランザクション情報を蓄積及び管理することが可能なように構成され、前記セッションマネージャは、蓄積するための記憶要素と接続されるとともに、
前記セッションマネージャは、
前記記憶要素において、個別のセッションを識別するためのセッション識別情報および、
前記個別のセッションのデータ値の記憶を制御する、
ことを特徴とするトランザクションシステム。
【請求項２】
前記セッション識別情報は、連続番号の形で構成される、ことを特徴とする請求項１に記載のトランザクションシステム。
【請求項３】
前記セッションは、データ要素のための変数を具備する、ことを特徴とする請求項１または請求項２に記載のトランザクションシステム。
【請求項４】
前記データコンポーネントは、個別のトランザクション情報に関連する、ことを特徴とする請求項３に記載のトランザクションシステム。
【請求項５】
一つのセッションに属する前記データ要素が複数のトランザクションからのトランザクション情報を具備する、ことを特徴とする請求項３に記載のトランザクションシステム。
【請求項６】
前記セッションマネージャは、結合した生データレコードを管理するためのモジュールを具備する、ことを特徴とする請求項１から請求項５のうち一項以上に記載のトランザクションシステム。
【請求項７】
前記セッションマネージャは、生データコンポーネントに接続される、ことを特徴とする請求項６に記載のトランザクションシステム。
【請求項８】
前記コンテキストマネージャは、前記セッションマネージャと前記生データコンポーネントとの間のデータ送信を許可するインターフェースを具備する、ことを特徴とする請求項７に記載のトランザクションシステム。
【請求項９】
少なくともいくつかの前記トランザクション処理モジュールと、少なくとも一つのサービスコンポーネントとは、少なくとも二つの送信チャンネルを介して通知コンポーネントにより接続されるとともに、前記通知コンポーネントは、前記送信チャンネルのうちの一つを割り当てる手段を具備し、前記送信チャンネルを割り当てる手段は、送信されるデータに関する情報に基づいて割り当てるように構成される、ことを特徴とする請求項１から請求項８のうち一項以上に記載のトランザクションシステム。
【請求項１０】
トランザクション情報を処理する方法であって、
前記トランザクション情報は、少なくとも一つのトランザクション処理モジュールで処理され、前記トランザクション情報がセッションの形で蓄積され、それによって、前記記憶が個別のセッションに含まれるデータコンポーネントに関するデータ値のみならず特定のセッションを識別するセッション識別情報を具備する、ことを特徴とする方法。
【請求項１１】
前記トランザクション処理が、少なくとも一つのビジネスオブジェクトの組込を使用して実行され、前記ビジネスオブジェクトは、セッションオブジェクトを生成し、前記セッションオブジェクトは、データベースで少なくとも一つのデータ値をアップデートする、ことを特徴とする請求項１１に記載の方法。
【請求項１２】
前記データ値は、インターフェースを介してアップデートされる、ことを特徴とする請求項１１に記載の方法。
【請求項１３】
前記ビジネスオブジェクトは、セッションマネージャへセッションオブジェクトを生成する要求を送信する
ことを特徴とする請求項１０から請求項１２のうち一項以上に記載の方法
【請求項１４】
前記ビジネスオブジェクトはセッションマネージャへ他のセッションオブジェクトインスタンスを生成する要求を送信する、ことを特徴とする請求項１３に記載の方法。
【請求項１５】
コンテキストマネージャが始動コマンドを送信することによりトランザクション処理モジュールを始動し、前記トランザクション処理モジュールがビジネスオブジェクトを生成する、ことを特徴とする請求項１０から請求項１４のうち一項以上に記載の方法。 
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トランザクション情報を処理するためのトランザクションシステムに関する。
また、本発明はトランザクションを処理する方法に関する。
【背景技術】
【０００２】
従来のトランザクションシステムならびに方法は特許文献１及び前記特許文献１のドイツ語の翻訳文である特許文献２によって公知となっている。
従来のトランザクションシステムは複数の差出人と輸送会社とに、トランザクション情報を処理するための環境を提供している。該トランザクションシステムは、トランザクション情報を処理し、認証プロフィール基準を記憶し、前記トランザクション情報が該認証プロフィール基準と一致するか否かを確認する中央演算処理装置を有することで、前記認証プロフィール基準は許可されたユーザーについての情報を含んでいる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
特に高い汎用性を有し、それにより、多様な要件を処理することに適したトランザクションシステムを提供することが望まれている。特に、多様なサービスへ素早く支払いができることが望まれる。
ここで「サービス」とは、決して限定的な方法を意味するわけではなく、販売、貸出、貸与にわたる商品の提供や、提供されるサービスのみならず例えばコミュニケーションシステム及び情報へのアクセスといった仮想空間上のサービスからなる。
ここで「サービスプロバイダ」とは、一般的に意味するところと同様であり、前記サービスを提供することのできるユニットを具備する。特に、前記サービスプロバイダは例えば商品若しくはサービスを提供する自動販売機のような物理的な装置であっても良いし、例えばサービスプロバイダ会社若しくは会社の支店、好ましくは複数の支店のような組織的なユニットであっても良い。
【特許文献１】欧州特許第９３８７１５号明細書
【特許文献２】独国特許第６９７０７００９号明細書
【課題を解決するための手段】
【０００４】
本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段を説明する。
【０００５】
本発明は、特に、少なくとも一つのトランザクション処理モジュールを具備し、前記トランザクション処理モジュールは、トランザクション情報を生成し、及び／又は、処理し、前記トランザクション処理モジュールは、セッションマネージャと接続されることが可能であり、前記セッションマネージャは、セッションの形で前記トランザクション情報を蓄積及び管理することが可能なように構成され、前記セッションマネージャは、蓄積するための記憶要素と接続されるとともに、前記セッションマネージャは、前記記憶要素において、個別のセッションを識別するためのセッション識別情報および、前記個別のセッションのデータ値と、に関する情報の記憶を制御するものである。
【０００６】
本発明は、個別のセッションの記憶及び生成を備える。さらに、セッションを識別するセッション識別情報は、それぞれのセッションに記憶され、少なくとも、問題となっているセッションについての関連したデータ値となる。
【０００７】
本発明は、トランザクションを実行する方法も含む。
【０００８】
本発明は、あらゆる所望のトランザクションでの使用に適している。本発明に係るトランザクションは、当該トランザクションにおいては一連の演算が完全に実行されるのみである又は全く実行されない従来のトランザクションだけでなく、情報のみが提供される、及び／又は、関数だけが実行される、新規のトランザクションをも含む。本発明に係るトランザクションシステムは、従来のトランザクションだけでなく新規のトランザクションに対しても使用可能である点で優れている。
【０００９】
トランザクションの完全性を確保する必要がある場合は、従来のトランザクションに対して本発明を適用することが好ましい。この場合、データストックでのトランザクションの変更はトランザクションが完全に実行された時点で恒久的に記憶される。
【００１０】
前記トランザクション及びトランザクション情報の処理方法の特に好ましい実施形態は、前記セッション識別情報が連続番号の形で構成されるものである。
【００１１】
さらに、前記セッションはデータ要素のための変数を具備するものであれば好ましい。
【００１２】
特に、本発明は、データ要素の変数を格納するセッションを使用するものである。本発明に係る特に好ましいセッションは一連のデータ要素である。前記データ要素は、多様な特性を有することができ、好ましい実施形態では、個別のトランザクション、例えばトランザクションの一部分に関連することができ、複数のトランザクションを具備することができる。
【００１３】
従って、本発明の特に好ましい実施形態は、前記データ要素は個別のトランザクション情報に関連したものである。
【００１４】
他に、本発明の同様に好ましい実施形態は、セッションに属する前記データ要素が複数のトランザクションからのトランザクション情報を具備したものである。
【００１５】
複数のトランザクションを含むセッションの例として、予め定義された時間内で生成された全てのトランザクション情報を含むアカウンティングセッションがある。
【００１６】
同様にセッションが、他のセッションをコンポーネントとして含むことは特に好ましい。
【００１７】
前記アカウンティングセッションの場合、例えば、一つのクライアントのために処理している多種の商品及び／又はサービスについての支払いのような複数のトランザクションが、一つのセッションに集約されることが可能となる。
【００１８】
分割処理ステップでは、個別のクライアントのセッションは、セッションマネージャによって個別のセッションを含む一つのアカウンティングセッションに集約される。
【００１９】
このように、構築されたセッションによって、付随する識別情報が存在する場合に、セッションの個別の成分を識別することが可能である。
【００２０】
トランザクション処理モジュール内にデータ蓄積部を具備することが特に好ましい。これによって、トランザクション処理する処理プログラムが当該トランザクション処理に必要なデータに直接アクセスすることが可能である。
【００２１】
さらに、本発明に係るトランザクションシステムは、本発明に応じて具備され、かつ、シェアされた処理シークエンスが不要である新しいトランザクションに対して使用可能である。この一例は、データストック内で変更のないアカウントバランスクエリである。特に、本発明に係るトランザクションは、情報の、及び、データを変更する関数並びにトランザクションの、及びデータを変更しない関数並びにトランザクションのあらゆる種類のプレゼンテーションを具備する。さらに、状態を維持しないトランザクションだけでなく、状態を維持するトランザクションをも具備する。
【００２２】
本発明によれば、複数の有利技術的効果を奏する。
【００２３】
本発明においては、トランザクションはデータ処理トランザクションの中断の後もデータ損失なしに再開することができる。
【００２４】
このために、チェックポイントを使用することが特に好ましい。前記チェックポイントは個別のセッションに包含されたデータ要素へのアクセスを単純化する。
【００２５】
また、前記発明は処理しているトランザクションを中断し、その後、前記トランザクションを好きな時点で再開することができる。
【００２６】
これにより、処理している多数のトランザクションが原則的に同時に生成するシステムにおいて特に有利な効果が生じる。
【００２７】
本発明が分岐システムに対して使用される場合には、例えば処理シーケンス中の顧客の個別処理トランザクションを優先することができる。
【００２８】
さらに、例えば、分割妥当性検討ステップにてクライアントについての識別情報の妥当性を検討するため、又はハードウェア構成要素の故障により発生した中断に対応するため、体系的に一つの処理しているトランザクションを中断し、故障が修復された後、前記トランザクションをデータ損失なしに再開することができる。
【００２９】
前記技術的効果は個別の手段のみならず、特に有利になる複数の手段の組み合わせによって得られるものである。
【００３０】
例えば、本発明に係るトランザクションシステムは、新しいトランザクションに迅速に適用可能であり、労力も少なくて済む。
【００３１】
このような汎用性は、さらに、個別のトランザクションを個別のトランザクション処理モジュールと関連付けることによって向上される。
【００３２】
さらに、多種のトランザクションを処理することの相互の影響は回避される。
【００３３】
特に、定義され、かつ、制御されるデータ送信チャンネルを介した間接的なデータ送信により、前記相互の影響はさらに減少させることができる。
【００３４】
さらに、前記個別のモジュールが、それぞれ特定のトランザクションを実行するために具備されるものであれば好ましい。
【００３５】
前記トランザクション処理モジュールは、それぞれ独立して異なる関数を実行可能に構成されていれば特に好ましい。
【００３６】
より良くは、本発明に係るシステムは、前記モジュールを自在に置き換え、取り外し、又は、付け加え可能に構成されるものである。
【００３７】
前記トランザクション処理モジュールは、「プラグアンドプレイ」によって、修正が必要な他の構成物を用いることなしに簡単に接続することができる。このトランザクション処理モジュールは、システム内の他の様々なモジュールにアクセス可能である。
【００３８】
前記モジュール構造によって、新しいトランザクションをデータ処理システムへ簡単に統合することが可能である。
【００３９】
本発明の特に好ましい実施形態は、前記コンテキストマネージャは、前記トランザクション処理モジュールに対する中央制御手段であるとともに、前記トランザクション処理モジュールに対する中央サービスプロバイダである、ことを特徴とする。
【００４０】
さらに、前記トランザクションシステムは、データ送信を可能とする通知コンポーネントを具備することが好ましい。
【００４１】
本発明の特に好ましい実施形態は、前記通知コンポーネントは、通知を送信するための送信パスを選択するセレクションモジュールを具備することを特徴とする。
【００４２】
このように、異なる種類の通知を異なる送信パスに関連付けるとともに、送信容量を特に効率的に利用することが可能である。
【００４３】
本発明の特に好ましい実施形態は、前記トランザクションシステムは、結合した生データレコードを管理するモジュールを具備するセッションマネージャを具備するとともに、前記セッションマネージャは、結合した生データレコードを管理するモジュールを具備することを特徴とする。
【００４４】
本発明の特に好ましい変形例は、前記セッションマネージャは、生データコンポーネントと接続されることを特徴とする。
【００４５】
さらに、前記コンテキストマネージャは、前記セッションマネージャと前記生データコンポーネントとの間のデータ送信を可能とする複数のインターフェースを具備することが好ましい。
【００４６】
本発明のその他の効果、技術的特徴、および実用的な改良については、以下の、従属項の請求項、および図面を参照した好ましい実施形態の説明のとおりである。
【発明を実施するための最良の形態】
【００４７】
本発明に係るトランザクションシステムは、トランザクション処理の特に効果的な実行を可能とするように、複数の相互に関連するコンポーネントを備えている。
【００４８】
本発明に係る複数のコンポーネントの実行は特に好ましいが、個別のコンポーネントはすでに有利な効果を奏している。
【００４９】
図では、複雑なデータベースシステムのデータの生成、管理及び送信が示されている。データ処理システムは、それぞれが（好ましくは個別に）データを受信及び／又は送信する複数のトランザクション処理モジュールを具備する。
【００５０】
ここで、異なる属性を伴う処理すべきデータ容量が特に大きいので、複雑なシステムにおいて本発明を使用することは有効であり、本発明の積極的効果により優位な結果を得ることができる。
【００５１】
しかし、同様に本発明をより複雑でないシステムにも使用することができ、同様により効果的なネットワーク資源の利用という効果を得ることができる。
【００５２】
本発明は、特に、一つ以上のサーバを具備するネットワークでの使用に好適である。最初に、クライアントはアプリケーションのフレームワークを初期化する。これにより、クライアントは、例えば、データベースや支払のモジュールといった他のフレームワークのコンポーネントを伴うプラットフォームを使用することができる。本発明の好ましい実施形態では、ＣＡＲＢＯＮ（Ｃｏｍｐｏｎｅｎｔ  ＡＲｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｂｕｓｉｎｅｓｓ  ＯｐｔｉｍｉｚａｔｉｏＮ）プラットフォームと呼ばれるプラットフォームを使用することができる。このＣＡＲＢＯＮプラットフォームは適当なハードウェア装置（例えば、プログラム可能な電気的要素に基づく装置）のみならず、ソフトウェアを使用することによって実行され、データ処理システムにインストールされている。
ここで、前記フレームワークは、ＣＬＲ（Ｃｏｍｍｏｎ  Ｌａｎｇｕａｇｅ  Ｒｕｎｔｉｍｅ）と呼ばれる前記プラットフォームの作動時間ライブラリを具備する。前記クライアントによるアプリケーションのフレームワークの初期化後、該クライアントがフレームワークのカーネルを初期化して始動することが好ましい。前記カーネルの初期化の前に、例えばプログラムの完全性に関連するテストが実行される。さらに、始動か、もしくは、トランザクションの中断によって生まれた修復の場合か、をチェックすることが可能となる。
【００５３】
データコンポーネントを伴うトランザクション処理モジュールは、クライアント側に配置されることが好ましい。ここで、特に、使用されているフレームワークに関する付加的なコンポーネント又は機能ユニットは、データコンポーネントとトランザクション処理モジュールとの間にインストールされることによって、間接的な接続が可能となる。前記データコンポーネントはコンピュータシステムの入力側に配置されることが好ましいが、システムの構成によっては、出力側にも接続可能である。前記トランザクション処理モジュールは電気的に該トランザクション処理モジュールによって処理される、トランザクション若しくはビジネスプロセスをマップする。これらのトランザクションは、例えば保険、金融または物流部門において使用される小売システムに関するトランザクションである。さらに、複数の異なるトランザクション処理モジュールのバージョンがクライアント側にインストールされている。トランザクション処理モジュールが始動されたとき、最も高いバージョン番号を有するバージョンが自動的に選択される。これを可能にするため、トランザクション処理モジュールは、特定の順序でトランザクション処理モジュールディレクトリに格納されていることが好ましい。
【００５４】
本発明の好ましい実施形態では、トランザクション処理モジュールは同様にフレームワークに接続されており、該フレームワークはオブジェクト指向及びコンポーネント指向で構成されていることが好ましい。前記フレームワークはアプリケーションプログラミングインターフェース（ＡＰＩ）であり、該ＡＰＩは多様なサポートを基礎としたトランザクションのために生成するクライアントの機能を提供する。前記フレームワークによって提供される機能性は、例えば、クライアントもしくはトランザクション処理モジュールの始動／終了を行うカーネルの機能を具備する。
前記フレームワークは、トランザクション処理モジュールを始動するための共有の始動モジュールを具備する。さらに、前記フレームワークは、データ管理及びシーケンス制御においてトランザクション処理モジュールを支援し、データにアクセスするための、又は印刷するためのコンポーネントを具備する。さらに、記録すること若しくはエラー処理することのような基礎的な機能が提供される。
【００５５】
Ｃ＃は、例えば完全に前記フレームワークにおいてオブジェクト指向のプログラミング言語として使用され得るものである。オブジェクト指向プログラミングはオブジェクト−クラスの関係を要求する。ここで、クラスは共有された構造及び／又は共通の振る舞いを有するオブジェクトに対する抽象的な一般名称である。ここで、オブジェクトはクラスのインスタンスであり、前記クラスのために記憶領域が用意され、前記クラスはプログラムの実行時間中に存在するものである。一つのオブジェクトは一つのクラスのインスタンスである。このように、一つのクラス及び該クラスのオブジェクトは、属性、操作性、信頼性、関連性によって特徴付けられており、前記クラスは前記属性及びメソッドを統合してユニットとするものである。標準的な特徴として、前記属性は前記クラスのメソッドを使用してのみアクセスすることができるので、カプセル化又はアクセス制限を実現するものである。さらに、一つのクラスは明示のインターフェース若しくは一つ以上の明示のインターフェースを有することができず、前記カプセル化によって前記インターフェースから実装環境を別離することとなる。
【００５６】
本発明の特に好ましい実施形態では、前記トランザクション処理モジュールは、自立型プログラムではなく、むしろ実行されるためのクライアントの基盤を要求する。しかし、前記トランザクション処理モジュールは、例えばトランザクション処理モジュール自身の停止及び／又は他のトランザクション処理モジュールの始動を引き起こす能動的なコンポーネントである。ワークプレースのスタックにおける停止は別のレイヤーを適用することによってより好ましい効果を与えられる。
【００５７】
さらに、個々のトランザクション処理モジュールは前記クライアント側の入力側に配置されることが可能となり、別の領域が出力側に、つまり、中央サーバアプリケーションに、又はサードパーティのシステムに位置することが可能となる。ここでいう「サードパーティのシステム」とは、分岐システムの外側のシステムを意味する。
【００５８】
好ましくは、いくつかのトランザクション処理モジュールが、それぞれがトランザクションをマップする計算手段にインストールされていることが好ましい。この場合、前記トランザクション処理モジュールは、コンピュータシステムの入力側又は出力側に配置される。前記データコンポーネントのような前記トランザクション処理モジュールは入力側に配置されることが好ましい。さらに、コンピュータシステムが、いくつかのコンポーネントによって構成されるのは好ましい。
【００５９】
本発明の特に好ましい実施形態を以下に示す。
【００６０】
［アダプタコンポーネント］
前記インターフェースのようなアダプタコンポーネントは、アクセスコンポーネントと多様なデータシステムの間の接続を構築する。前記アダプタコンポーネントは、前記アクセスを、サポートされたデータシステムのネイティブインターフェースにカプセル化し、特にオンライン及びオフラインによるデータシステムの接続を許可する。前記アダプタコンポーネントは、好ましくは直接データシステム又は使用されるミドルウェアによって構築されるものであれば好ましい。
【００６１】
例えば、多種のデータベースに接続するための適切なアダプタが具備される。使用されるフレームワークによって、例えば、ＯＬＥＤＢ（Ｏｐｅｎ  ＤａｔａＢａｓｅ  Ｃｏｎｎｅｃｔｉｖｉｔｙ）アダプタ、ＳＱＬ（Ｓｔａｎｄａｒｄ  Ｑｕｅｒｙ  Ｌａｎｇｕａｇｅ）アダプタ、及びＥＤＢＣ（Ｅｎｈａｎｃｅｄ  ＤａｔａＢａｓｅ  Ｃｏｎｔａｉｎｅｒ）アダプタのような周知のアダプタは、ローカルデータベースアクセスのためのアダプタとして使用される。好ましくは、適切なデータ動作がそれぞれのアダプタに具備されるべきである。
【００６２】
前記アダプタコンポーネントは、また、オンライン及びオフラインによるデータシステムへの接続のための適切なアダプタも具備している。例えば、もしデータシステムがオンラインで接続可能な場合は、適切なアダプタが提供される。逆に、データシステムがオフラインで接続されている場合は、アダプタはオフラインに接続できることが必要となる。データ接続のために、例えば、ミドルウェアは、前記アダプタが直接前記ミドルウェア上で構築されるように使用される。図１に示すように、出力側のデータシステムは通知コンポーネントＫＩＳＳを経由して、入力側に接続されており、専用のアダプタが前記データシステムに接続するためのアダプタコンポーネントに具備されている。ここでは、ミドルウェアも同様に使用されている。
【００６３】
［アプリケーションマネージャ  ＡＭ］
システム始動の間、前記アプリケーションマネージャはＣＡＲＢＯＮの操作に必要な全てのオブジェクトを生成及び初期化する。さらに、前記アプリケーションマネージャは、付随する制御メカニズムを伴ってメインウィンドウという形式でグラフィックアプリケーションフレームワークを提供する。
【００６４】
［ライブラリ］
ライブラリはＣＡＲＢＯＮフレームワークの基礎的な機能を具備する。前記基礎的な機能は、例えば、記録すること、エラーを処理すること、システム情報へのアクセスなどの機能である。
【００６５】
ライブラリの機能は、クライアント側の通信基盤を必要としない。特に、それぞれ適切に構築されたプログラムは、ライブラリの機能にアクセスすることができる。ライブラリはユーザーへの直接のダイアログではなく、確実にユーザーインターフェースと関連付けられるコンポーネントを具備することが好ましい。前記コンポーネントはＣＡＲＢＯＮフレームワーク、クライアント、又はトランザクション処理モジュールによって使用される補助機能（メッセージ表示）である。
【００６６】
［ＣＡＲＢＯＮ］
ＣＡＲＢＯＮは、好適に次の構成要素を具備するプラットフォームに関するものである。
（１）クライアント
（２）トランザクション処理モジュール
（３）コンポーネント
（４）ライブラリ
【００６７】
［ＣＡＲＢＯＮクライアント］
ＣＡＲＢＯＮクライアントは、個別の機能／アプリケーションを始動する。いくつかのＣＡＲＢＯＮクライアントはお互いに隣接して存在する。
【００６８】
基本的に、全てのプログラムは、ＣＡＲＢＯＮネットワーク全体、又はＣＡＲＢＯＮネットワークの一部のどちらかを使用するクライアントとして参照することができる。大部分において、前記プログラムはいくつかのトランザクションを実行することを目的とするプログラムである。しかし、ＣＡＲＢＯＮホストのような、他のＣＡＲＢＯＮクライアントにサービスを提供する他のプログラムもまたクライアントとして参照することができる。
【００６９】
［ＣＡＲＢＯＮフレームワーク  ＣＦ］
ＣＡＲＢＯＮフレームワークは、いくつかのモジュールをまとめて有することが好ましい。ＣＡＲＢＯＮフレームワークは、アシスタントを基礎とするトランザクションタイプのためのクライアントを生成する機能を具備するＡＰＩであることが好ましい。
【００７０】
ＣＡＲＢＯＮフレームワークの範囲において提供される前記機能は四つの作業エリアにグループ化されることが好ましい。
（１）コア機能−前記クライアントの始動／終了、トランザクションの始動／終了、又は管理
（２）トランザクション補助（マスク、データ管理、シーケンス制御等）
（３）コンポーネント（データへのアクセス、印刷等）
（４）基礎的機能の供給（ログの記録、エラー処理等）
【００７１】
生データの送信は、ＣＡＲＢＯＮフレームワークの有利な使用を構成する。入力側で取得される全てのデータは、ＣＡＲＢＯＮフレームワークによって生データレコードの形で出力側へ送信されれば好ましい。
【００７２】
さらに、例えば自動切手販売機等の販売機を制御するためのコンピュータは、データ処理システムとして使用されることが可能であり、前記販売機は、同様に記憶ユニット及び処理ユニットを備えたコンピュータに接続された表示及び入力手段を具備することが好ましい。
【００７３】
ＣＡＲＢＯＮプラットフォームに基づいて、トランザクションは、例えばローカルネットワークやインターネットなどのネットワークを経由して実行される。前記プラットフォームは、前記ネットワーク内でサーバーコンピュータに接続されるクライアント側のコンピュータを介して、当業者に公知の方法で操作される、サーバーコンピュータにインストールされる。
【００７４】
処理を実行するため又は遂行するために、ＣＡＲＢＯＮプラットフォームは、様々なデータ資源及びデータシンクへのアクセスを制御し、かつ、例えば、トランザクションの実行に必要な、顧客データのようなデータを提供する、データコンポーネントと、例えば、印刷サービス、又は、手持ちスキャナ若しくはＩＣカードリーダのような基礎的なサービスを提供する、所謂ＣＡＲＢＯＮホストＣＨと、トランザクションの処理中に要求され、かつ、処理される、ダウンストリームデータを、アカウンティングシステム又はデータ管理システムなどのシステムに送信する、コンポーネントと、を具備する。
【００７５】
処理は、ＣＡＲＢＯＮプラットフォームにおいて、前記トランザクションを実行するためのモジュールを処理するトランザクションと関連付けられるトランザクションによってマップされる。前記モジュール構造は、処理を膨大な処理の構成要素である部分的処理に分解できる。この当業者に知られている原則により、部分的処理は一度トランザクションとして実行されるだけで、全体処理でのそれぞれの実行の必要なく、全体処理を処理する間、要求されることが可能となる。
【００７６】
従って、処理の実行において、一般に、部分的処理をマップする複数のトランザクションが実行され、それぞれがトランザクション処理モジュールに関する方法によって処理される。多種のトランザクション処理モジュールを管理するため、ＣＡＲＢＯＮプラットフォームは、トランザクション処理モジュールを初期化するためにも使用されるコンテキストマネージャを有する。
【００７７】
ＣＡＲＢＯＮフレームワークＣＦの特に好ましい実施形態は図１に示される。
【００７８】
図１は、ＣＡＲＢＯＮフレームワークを三つの部分へ分割する好ましい形態を示す。
【００７９】
図１は、好ましくは並行操作されるトランザクション処理モジュールＶＧＡがＣＡＲＢＯＮカーネル（図２中段参照）の構成要素を介して最下段に位置するＣＡＲＢＯＮフレームワークと接続していることを示す。
【００８０】
ＣＡＲＢＯＮフレームワークの最上段の階層についての好ましい構成要素は、トランザクション処理モジュールＶＧＡであり、該トランザクション処理モジュールＶＧＡは、相互に独立して操作されることが好ましい他のプログラムモジュールと同様に、並行操作されることが好ましい。
しかし、前記トランザクション処理モジュールＶＧＡはまた、プログラムやプログラムモジュールのインターフェースともなり得る。前記プログラムモジュールは、例えば、別のトランザクションシステム（ＥＰＯＳ）又は事前定義可能なＰｆｉｆｆやＰＤＬルーチンを生成するプログラム要素に関するものである。
【００８１】
図２の中段に位置するコンテキストマネージャＣＭは、トランザクション処理モジュールが個別のコンポーネントに接続することを許可するインターフェースとして構成されることが好ましい。本発明の特に好ましい実施形態では、前記コンテキストマネージャは前記セッションマネージャが付加的なインターフェースを包含するように構成される。
【００８２】
システムの最下段に位置する前記コンポーネントの周辺への前記データ接続は、コンテキストマネージャ又は更なるシステム構成要素の付加的な組込を介して直接的に効果を与えられることも可能である。
【００８３】
リカバリーマネージャＲＭの組込は、データの蓄積を許可するのに有利であり、その結果、トランザクションの処理が早急に回復され得るものである。
【００８４】
前記セッションマネージャの使用は、該セッションマネージャが付加的なデータの組込を許可するのに好ましい。前記セッションマネージャの好ましい実施形態では、該セッションマネージャは、結合した生データレコードを管理するためのモジュールを有する状態で実行される。
【００８５】
さらに、前記カーネルが、ＡＭインターフェースモジュールＣＩのみならずアプリケーションマネージャを具備することも好ましい。
【００８６】
コンポーネント層は、例えば、印刷コンポーネントＤＲ、周辺コンポーネントＰＫ、データアクセスコンポーネントＤＫ、アカウンティングモジュールＮＫＭ、及び基礎サービスＢＤ等の複数のコンポーネントを有することが好ましい。
【００８７】
上述の実施形態はまた、既存のコンポーネントの統合を可能にする利点を有する。
【００８８】
そして、例えば、上述のプログラムによって最上段の階層（ＥＰＯＳ；Ｐｆｉｆｆ／ＰＤＬ）及び／又はアカウンティングモジュールＮＫＭのような個別のコンポーネントが、他のアプリケーションより引き継がれることが可能となる。
【００８９】
［ＣＲＡＢＯＮホストＣＨ］
ＣＡＲＢＯＮホストは、他のモジュール若しくはサービスを起動、終了、若しくは停止することができるホストモジュールである。
【００９０】
［ＣＡＲＢＯＮカーネル］
ＣＡＲＢＯＮカーネルの機能が実装された領域は、ＣＡＲＢＯＮカーネルと呼ばれる。
【００９１】
ＣＡＲＢＯＮカーネルは複数のコンポーネントで構成することが好ましい。前記コンポーネントの一例を以下に示す：
すなわち、Ｅｐｏｓ．アプリケーション、ＣＡＲＢＯＮ．コンテキスト、ＣＡＲＢＯＮ．リカバリー、及びＣＡＲＢＯＮ．セッションである。
【００９２】
特に、前記コンポーネントは次の機能を実行するために構成されることが好ましい。
（１）Ｅｐｏｓ．アプリケーション−アプリケーションの始動、アプリケーションフレームワークの初期化及び管理、
（２）ＣＡＲＢＯＮ．コンテキスト−トランザクションタイプの始動、停止、管理、ホスティングサービス、バックアップ、回復の制御、
（３）ＣＡＲＢＯＮ．リカバリー−バックアップ、回復のためのデータ記録、管理、
（４）ＣＡＲＢＯＮ．セッション−セッションの管理。
【００９３】
このように、前記カーネルは、ＣＡＲＢＯＮフレームワーク及びクライアントの基礎的機能を構成する。前記フレームワークは多数の受動的アセンブリから構成されていることが好ましいので、前記フレームワークを読み込んでインスタンス化する中央エントリーポイントが存在する。
【００９４】
この作業は、クライアントによって実行されることが好ましい。
【００９５】
Ｅｐｏｓ．ｅｘｅは、ＥＰＯＳクライアント（ＥＰＯＳ．ＥｎｔｒｙＰｏｉｎｔクラス）への前記エントリーポイントを定義する。前記アプリケーションマネージャはインスタンス化され、フレームワークの始動が開始され、更なる処理進行の間に始動トランザクションが読み込まれる。
【００９６】
［ＣＡＲＢＯＮカーネルの構造］
図２は、ＥＰＯＳクライアントの基礎的な構造を示す図である。中段は前記フレームワークのカーネルで構成されている。
【００９７】
［ＣＡＲＢＯＮトランザクションタイプ］
トランザクションタイプは、処理手順についてのシステム技術的マップを構成する。ＣＡＲＢＯＮフレームワークでは、境界条件や規則がトランザクションタイプの指定及び生成と効果的にリンクしている。
【００９８】
前記トランザクションタイプの特に好ましい実施形態は、一つの又は複数の次のような特徴の存在によって特徴付けられている。
（１）利用可能となっているＣＡＲＢＯＮコンポーネント（例：トランザクションタイプ制御）、
（２）トランザクションタイプが複数のバージョンでクライアント上に存在すること、
（３）ＣＡＲＢＯＮフレームワークは最も高い番号を有するバージョンによって常に応答すること、
（４）ユーザーインターフェースはトランザクションタイプにおいてビジネスロジックから厳密に分割され、前記ＭＶＣモデルはＣＡＲＢＯＮフレームワークに使用されること。
【００９９】
原則として、トランザクションタイプは複数のマスクから構成される。前記マスク間のナビゲーションは線形及び非線形である。
【０１００】
ＣＡＲＢＯＮフレームワークからのＧＵＩ制御は、ユーザー側のインターフェースを構成することを目的として、トランザクションタイププログラマーにより取得できる。
【０１０１】
トランザクションタイプは、他のトランザクションタイプから呼び出されることも可能である。双方向でのデータ交換はトランザクションタイプ間で行うことができる。
【０１０２】
ＣＡＲＢＯＮフレームワークのバックアップ／回復システムがバックアップできるように、前記トランザクションタイプを直列化できる。
【０１０３】
前記トランザクションタイプは基礎サービスに利用できる。
【０１０４】
トランザクション処理モジュールについてのシーケンスの計画が、トランザクション処理モジュールが始動される際に読み込まれる構成ファイルに記憶されるという方式を実行することが特に好ましい。
【０１０５】
データとトランザクション処理モジュールとの直接の接続によって、新しいモジュールが加えられる、又は、個別のトランザクション処理モジュールが他のトランザクション処理モジュールの操作性を損なうことなく除去されることが可能である。
【０１０６】
本発明の特に好ましい実施形態においては、トランザクション処理モジュールは少なくとも一つの付加的データモジュールと接続されている。
【０１０７】
付加的データモジュールは、複数のトランザクション処理モジュールにおけるデータ処理に使用可能な種類のデータを具備することが好ましい。
【０１０８】
複数のトランザクション処理モジュールがトランザクションを個別処理することを相互に実行できることが特に好ましい。
【０１０９】
そのようなトランザクションの並行処理の一例は、図１を参照して以下に説明される。
【０１１０】
図１に示す実施形態では、複数の処理モジュールＶＧＡ１からＶＧＡｎまでが並行に操作される。
【０１１１】
各トランザクション処理モジュールは該モジュール自身のデータコンテナＤＣを具備する。データオブジェクトはデータコンテナＤＣに配置される。
【０１１２】
処理状態を維持しない適宜のオブジェクトによって、データはデータコンテナＤＣに送信される。
【０１１３】
前記データコンテナ内のデータを送受信もしくは記憶するオブジェクトは、ビジネスロジックＢＬを有するビジネスオブジェクトであることが好ましいが、前記データコンテナは、出力側のビジネスロジックＢＥＢを具備し、出力側と接続された他のビジネスオブジェクトでもよい。
【０１１４】
前記オブジェクトは、プレゼンターモジュールＰＭを介して、問題となっているトランザクション処理モジュールのワークスペースＷへ接続される。さらに、前記プレゼンターモジュールは対応する制御装置Ｃに接続されている。
【０１１５】
前記ビジネスオブジェクトは、ワークスペースによって開始されるログオンコマンドを処理する。ログオン（）の方式は、前記ログオンの範囲内で行われる行動の全てを実行する。アプリケーションセッション及びユーザーセッションは、前記アプリケーションセッション及びユーザーセッションがまだ存在していない場合には、ＳｅｓｓｉｏｎＩｄＣｒｅａｔｏｒ  Ｐｌｕｇ−Ｉｎによって生成される。使用されるＳｅｓｓｉｏｎ−ＩＤは、Ｃｌｉａｎｔ−ＩＤの機能としてここで生成される。セッションタイプはＣｏｍｍｏｎ−ＤａｔａＡｃｃｅｓｓ  Ｐｌｕｇ−ＩｎのＥｐｏｓ．ＰｌｕｇＩｎ．ＳｅｓｓｉｏｎＣｏｎｓｔａｎｔｓクラスから取得される。前記アプリケーションセッションは、ユーザーセッションの親セッションである。
【０１１６】
それぞれの個別のセッションが確立された後、データが充填される。前記データ充填のキーは、Ｅｐｏｓ．ＰｌｕｇＩｎ．ＳｅｓｓｉｏｎＣｏｎｓｔａｎｔｓクラスによって決定される。前記アプリケーションセッションのためのデータは、ＤａｔａＡｃｔｉｏｎｓを介してＡｐｐｌｉｃａｔｉｏｎＳｅｓｓｉｏｎＶａｌｕｅｓＤａｔａＳｅｒｖｉｃｅによって確認される。前記データは、分岐キー、分岐タイプ、クライアントＩＤ及びワークスペースタイプである。前記ユーザーセッションは、ユーザーの役割のみで充填される。前記ユーザーの役割は、トランザクションタイプの構成ファイルにある文字ストリングに記憶される。構成／設定セクションではＵｓｅｒＲｏｌｅｓというキーのもとに位置付けられている。コンマによって分割された個別の役割はここで示される。前記文字ストリングはユーザーセッションにて記憶される。
【０１１７】
そして、アプリケーションセッション及びユーザーセッションが生成され初期充填された後、前記トランザクションタイプが終了し、次のトランザクションタイプが開始する（ＳｔｏｐＮｅｗ  ｍｅｔｈｏｄ  ｏｆ  ｔｈｅ  ＩＣｏｎｔｅｎｔ  Ｉｎｔｅｒｆａｃｅ）。次のトランザクションタイプのトランザクションタイプキーは、該トランザクションタイプの構成ファイルより読み取られる。前記キーは構成／設定下のＮｅｘｔＶｇａキーにある。
【０１１８】
ほとんどの前記トランザクション処理モジュールの選択された領域、特にＶＧＡワークスペースＷがアプリケーションマネージャＡＭに接続されていないことが有利である。
【０１１９】
［コンテキストマネージャＣＭ］
前記コンテキストマネージャは、出力側のトランザクション処理モジュールＶＧＡ１からＶＧＡｎの間でのデータ送受信を許可するインターフェースを提供する。
【０１２０】
コンテキストマネージャＣＭの特に好ましい実施形態は、セッションマネージャと生データコンポーネントとの間のデータ送信を許可するインターフェースを提供する、ことを特徴とする。
【０１２１】
［データコンテナＤＣ］
前記データコンテナは、実行される処理手順のコンポーネントを具備する。換言すれば、トランザクションタイプの状態が前記データコンテナＤＣのコンポーネント上の具体的な値に影響される。データコンテナＤＣはフィールドコンテンツの変化がＧＵＩにおいて発生した場合に、ビジネスオブジェクトへの修正及びフィードバックを許可する。前記データコンテナＤＣは、更なる値が好ましいために、該更なる値に常に占められる。
【０１２２】
本発明の特に好ましい実施形態は、データコンテナＤＣでのコンポーネントにおける小口顧客の入力データを具備する。
【０１２３】
本発明は、トランザクションシステムの大量の構成を許可する。分散化されたデータ蓄積部を有する実施形態は、汎用性及びフェイルセーフにおける向上のために好ましい。
【０１２４】
本発明に係るデータ蓄積部は、システムの汎用性およびシステムのフェイルセーフの点において向上する。
【０１２５】
本発明の好ましい実施形態はデータオブジェクトを記憶するデータコンテナがトランザクション処理モジュールにて生成される、ことを特徴とする。
【０１２６】
特に、データオブジェクトが前記データの値を具備することが好ましい。
【０１２７】
取得する及び／又は処理する、一つ若しくは複数のコンポーネントを除いて、トランザクション処理モジュールは、特に、データの値を含むデータオブジェクトを記憶するデータコンテナを備えている。前記データオブジェクトの形で存在する、前記トランザクション処理モジュールのデータストックは、例えば、システムの破壊があった後に、容易に記憶され、回復することができる。
【０１２８】
本発明の好ましい実施形態では、トランザクション処理モジュールによって取得され及び／又は処理されるそれぞれのデータ要素がデータオブジェクトと関連付けられることにより、単純で信頼性のあるデータの回復のみならず包括的なデータのバックアップが達成される。
【０１２９】
さらに、データコンテナが、トランザクションの全体の状態を含むことが特に好ましい。
【０１３０】
より良くは、トランザクション処理モジュールによって取得され及び／又は処理されるそれぞれの前記データ要素は、データオブジェクトに関連付けられるものである。これにより、前記データコンテナはトランザクションの全体の「状態」を含むこととなる。これにより、全体のトランザクションは、特に単純にバックアップされ、必要であれば、回復されることが可能となる。データセキュリティの更なる向上のために、データオブジェクトがデータ自身に付随するデータのプロパティを含むことも好ましい。
【０１３１】
前記データの値に加え、前記データオブジェクトも、許容値の制約を説明する前記データのプロパティを含む。前記データのプロパティは、数値のフォーマット、例えば、値の幅、所定の離散数値、若しくは、所定の最小及び／又は最大の表示可能な文字ストリングの長さ、でのデータとなり得る。
【０１３２】
データについて作成されたコメントも個別のデータ要素に適用する。これにより、「データ」という語が複数形で用いられるかもしくは単数形で用いられるかに関わらず、一つの個別データ要素を意味する事例を明確に包含する。
【０１３３】
これにより、データ処理モジュールは迅速に、単純にデータオブジェクトに記憶されたプロパティが適用される環境の変化に適用されることが可能である。
【０１３４】
データコンテナに含まれるデータオブジェクトに基づいて、トランザクションの挙動は規定される。該挙動の構成は、大部分はトランザクション処理モジュールの機能ユニットにおけるセッティングから切り離され、これにより、機能ユニットは大いにトランザクションの大部分で実行される通常操作にアクセスできる。
【０１３５】
データ収集は、存在するデータオブジェクトの値が変更されるトランザクション処理モジュールにおいて達成されることが可能である。しかし、同じように、新たなデータオブジェクトを確立すること及び該データオブジェクトに値を入れることも可能である。データを表示するために、データコンテナの値にアクセスすることも同様に可能である。
【０１３６】
コンピュータシステムは、少なくとも二つのデータ資源若しくはデータシンクを具備する。データ資源は、データを供給する発生場所であり、データシンクはデータの目的地であり、受信する場所である。データの受領は標準化されたインターフェースを経由して行われ、データ資源及びデータシンクは、例えば局所的データベース、サーバ支援データベース、アプリケーションサーバ、もしくはサードパーティシステムとして存在し得る。単純化のため、以下、データ資源及びデータシンクを一般的にデータシステムという。すなわち、前記データシステムは出力側だけでなく入力側にも位置しており、図１に示す実施形態では、第一のデータシステムは出力側ＢＥに接続される一方、二つの付加的なデータシステムが入力側ＦＥに接続される。
【０１３７】
［データコンポーネントＤＫ］
前記データコンポーネントは、構成ファイルに接続されるデータレコードを参照する。前記構成ファイルは局所的に記憶されたデータへの中央アクセスを許可する。
【０１３８】
特に好ましい実施形態では、前記データコンポーネントは、ビジネスレイヤー、技術管理レイヤー、技術適用レイヤーによって構成されている。データコンポーネントは局所的であって、出力側に位置するデータ資源への接続を制御する。この目的のために、ＫＩＳＳへのインターフェースが存在する。
【０１３９】
生データコンポーネントを使用することで、トランザクションタイプが生データレコードを生成する。コンテキストマネージャは仲介として働き、生データコンポーネントのサービスをＩＲＤＳＭａｎａｇｅｒインターフェースを介して、トランザクションタイプへと転送する。
【０１４０】
前記データコンポーネントは、他のコンポーネントによって使用されることのできるフレームワークのコンポーネントであることが好ましい。例えば、前記データコンポーネントがデータ素材の最初の収集を生データリストの形で処理する生データコンポーネントによって使用される。
【０１４１】
さらに、トランザクションシステムが、データコンテナを始動及び／又は終了できるように構成された制御モジュールを具備することが好ましい。
【０１４２】
本発明によるデータコンポーネントＤＫは、少なくとも一つの機能コンポーネントＦＫ、一つの接続コンポーネントＺＫ及び一つのアダプタコンポーネントＡＫを具備することが好ましい。
【０１４３】
特に好ましい実施形態では、好ましいデータコンポーネントが三つのレイヤー階層を有する。上部のレイヤー階層はビジネスレイヤー（ＢＬＡ）として構成され、その下には、技術管理レイヤー（データサービスレイヤーＳＬ）が存在する。
【０１４４】
このようなデータコンポーネントを使用することで、前記方法は次のように実行される。
すなわち、分岐システムの分岐点において、前記分岐点において提供される全ての単独のサービスは、ビジネストランザクションと関連付けられ、該ビジネストランザクションに対応するプログラムがＩＴシステム内において提供される。
【０１４５】
支店での従業者は、顧客の要求を受け、例えば従業者が必要な情報全てを完璧に入力することを補助する画像ユーザーインターフェースを使用することで、顧客データや、顧客の要求など、を取得できる。
【０１４６】
このような顧客の要求及び取得された顧客のデータは、例えば、データ処理システムの通信基盤にかかるレイヤーのようなより深いコンポーネントに転送される。前記通信基盤のレイヤーは、操作シーケンスにおいて介在する必要がある従業者を使わず、自立的に周辺のコンポーネントを制御することを担当する。例えば、印刷作業を自動的にチケットもしくは受領証のプリンターに転送する、又は、ある金額を支払うことを現金自動預払機に示すことがあげられる。
【０１４７】
これらのトランザクション全ては予備的（出力側）システムに記録され、顧客データが記憶される。さらに、分岐出力側としても参照される前記予備的システムでは、適正な割り当ての原則に従いデータがミラーリングされ、かつ、取得される。入力側、通信基盤のレイヤー、及び前記分岐出力側は、分岐システムの重要な構成要素である。
【０１４８】
最後に、ビジネストランザクションの数によって、実際に顧客から要求される現金引出し口座で充分な資金が取得できるか否かを確認するために、例えば、銀行用コンピュータのデータベースのような他のシステムとデータを交換する分岐システムが必要となる。分岐点の外側のシステムは、サードパーティシステムの一例である。そのようなクエリの送信は、同様に、従業者側の一切の介入無しに分岐出力によって自立的に実行される。
【０１４９】
データがサードパーティシステムから返信された場合、該データは分岐出力側、通信基盤のレイヤーから従業者の入力側に送信され、これにより、前記従業員はデータのコンテンツをもとに行動することができる。
【０１５０】
分岐システムの個別レイヤーとサードパーティシステムとの間のデータ交換は、図２の矢印によって示される。
【０１５１】
［ＫＩＳＳ］
通知コンポーネントＫＩＳＳ（コンポーネント通信基盤サービス）
【０１５２】
前記通知コンポーネントは、送受信通知の送信パスの選択を許可する。
【０１５３】
前記通知コンポーネントは、当該送信目的に適したデータ転送速度の送信チャンネルを選択する手段、及び／又は、例えば入手可能なデータセキュリティのような他の送信関連プロパティを選択する手段を具備することが好ましい。
【０１５４】
通知コンポーネントＫＩＳＳの効果的な改良は、送信チャンネルが既に比較的重要度の高いデータの送信のために空けられているときに比較的重要度の低いデータを「移動する」ことにある。
【０１５５】
送信チャンネルは、送信される予定のデータについての情報に基づいて割り当てられることが好ましい。
【０１５６】
二つの送信チャンネルが少なくとも一つの特徴点によって互いに異なることは特に好ましい。
【０１５７】
例えば、送信チャンネルのうちの一つが、例えば、対応するより速い技術的送信手段との高速オンライン接続（例えばＤＳＬチャンネル、光ファイバーネットワーク、ＷＬＡＮネットワーク、ＧＰＲＳ接続もしくはＵＭＴＳ接続等のオンラインデータ通信が好ましい）によって、他の送信チャンネルのうち少なくとも一つより速いものである。
【０１５８】
送信チャンネルのうちの少なくとも一つがその他の基準によって特徴付けられ、当該その他の基準は、例えば、送信可能なデータの量又は使用する通知方法を含む。
【０１５９】
前記通知コンポーネントＫＩＳＳの特に有効な点は、他の目標となるアーキテクチャのコンポーネントが、ＫＩＳＳの操作についての内的モードから独立して、ＫＩＳＳの機能を使用できることである。
【０１６０】
前記トランザクションシステムの特に好ましい実施形態は、少なくともいくつかの前記トランザクション処理モジュールと、少なくとも一つのサービスコンポーネントとは、少なくとも二つの送信チャンネルを介して通知コンポーネントにより接続されるとともに、前記通知コンポーネントは、前記送信チャンネルのうちの一つを割り当てる手段を具備し、前記送信チャンネルを割り当てる手段は、送信されるデータに関する情報に基づいて割り当てるように構成される、ことを特徴とする。
【０１６１】
前記通知コンポーネントの好ましい実施形態は、データを（遠隔で；オフラインパスで；オンライン要求で）送るための複数の（例えば三つの）可能性が存在すること、及び、ＫＩＳＳが送信パスを最適化することを特徴とする。このように、大量の送信費用が抑制される。これにより、オンライン要求の間オフラインパスのあるデータが「持ち運ばれる」こととなる。
【０１６２】
これは、データ送信の間に、割り当てられた送信チャンネルが、最初に割り当てられたデータより多いデータの並列送信を許可する、そのような特徴を有するか否かについてチェックが行われることによって実行されることが好ましい。
【０１６３】
これにより、本当は送信を対象としていないデータが持ち運ばれるという利点がある。それによって、並列に持ち運ぶことは、送信チャンネル及び／又は該送信チャンネルの送信パラメータ（送信容量、データ量）が並列送信を許可する限りにおいて、他のデータの送信のためにすでに開けられている送信チャンネルを最大限に使用するものである。
【０１６４】
ここで、重要度の高いデータ送信の間、当該データ送信のために、優先度の低い、かつ、同様に優先度の高いデータ送信のために割り当てられた送信チャンネルによって送信されるデータが存在するか否かをチェックすることが特に好ましい。
【０１６５】
送信チャンネルが少なくとも一つの特徴点によって互いに異なることは、特に好ましい。例えば、送信チャンネルのうちの一つが、例えば、対応するより速い技術的送信手段との高速オンライン接続（例えばＤＳＬチャンネル、光ファイバーネットワーク、ＷＬＡＮネットワーク、ＧＰＲＳ接続もしくはＵＭＴＳ接続等のオンラインデータ通信様式が好ましい）によって、他の送信チャンネルのうち少なくとも一つより速いものである。
【０１６６】
本発明の本実施形態は、異なるデータが異なった方法により処理される及び／又は送信されるという点で有利である。
【０１６７】
採用された通知コンポーネントの別の利点としては、異なったデータのプロパティへの汎用性のある適合が可能となることがあげられる。
【０１６８】
特に、これにより、特別な汎用性を持って前記手段を実行すること、又は通知コンポーネント及び／又はデータ送信システムを適用するために構成することも可能となる。
【０１６９】
特に、前記送信チャンネルを割り当てる手段のプロパティを変化させることによって、つまり、送信チャンネルを割り当てるための一つの単純な手段若しくは極少数の選択された手段を変化させることによって、データ送信システムのトランザクション、及び、多くのターミナル装置（例えば、いくつかのターミナル装置及び／又はいくつかの分岐点においては、時々数千若しくは数万の）のデータトランザクションに関するトランザクションパラメータを変化させることが可能となる。
【０１７０】
データ送信システム、通知コンポーネント、及びデータを送信する方法の好ましい実施形態は、データを割り当てられた送信チャンネルの要求についての情報に関連付ける手段が、選択基準についての情報を前記データとリンクされ得る構成ファイルに組み込むことを特徴とする。
【０１７１】
このように、データ送信による要求に素早く、かつ、均一化できるようにアクセスすること、及び、これらの要求にしたがってデータ送信を達成すること、又は、時間内でのより遅れた時点で目標とするデータの送信について、もしくは、他の送信チャンネルを介して決定すること、が可能となる。
【０１７２】
データ送信システム、通知コンポーネント、及びデータを送信する方法の好ましい実施形態は、データを割り当てられる予定の送信チャンネルのための選択基準についての情報にリンクさせる手段が、前記データを仮想エンベロープに配置し、かつ、このデータを割り当てられる予定の送信チャンネルのための選択基準についての情報にリンクさせることを特徴とする。
【０１７３】
前記仮想エンベロープはデータコンテンツがデータ送信による外的要求から容易に切り離されるという利点を伴う。また、このようにデータセキュリティはさらに向上する。
【０１７４】
データ送信システム、通知コンポーネント、及びデータを送信する方法の有効な実施形態は、通知コンポーネントがデータを割り当てられる予定の送信チャンネルのための選択基準についての情報を取得する手段を備えること、前記通知コンポーネントは、送信チャンネルを介してデータ送信を達成するように構成されること、及び、前記通知コンポーネントは、データを割り当てられる予定の送信チャンネルのための選択基準についての情報に基づいて送信チャンネルを割り当てるように構成されること、を特徴とする。
【０１７５】
データ送信システム、通知コンポーネント、及びデータを送信する方法の好ましい実施形態はデータについての送信のための送信チャンネルの割り当てがデータのプロパティに基づいて作成されることを特徴とする。
【０１７６】
本発明によれば、多種のデータ区分間で差別化が図れる。
【０１７７】
多種のデータ区分間での差別化は、例えば、複雑なデータベースシステム、又はネットワーク化された多数のターミナル装置、例えば輸送チケット発券機や現金自動預払機のようなターミナル装置を有するシステムにおいて、データを使用する発展性を向上させることができる。
【０１７８】
通知コンポーネントＫＩＳＳは分岐入力側と分岐出力側とをリンクすることを許可し、分岐出力側では、相互間のサービスの接続を可能とする。分岐入力側において、ＫＩＳＳは、ＣＡＲＢＯＮデータコンポーネントへのインターフェースによって接続された他の場所の間にも位置する。分岐出力側はＫＩＳＳに対応するコンポーネントを有する。ＫＩＳＳ内部のデータ送信はＸＭＬ及び／又はＳＯＡＰに基づくことが好ましい。コンピュータのネットワーク化は基本的に遅い通信パス若しくは高速接続を介して確立されている。ＫＩＳＳの特徴は、共生関係を得られることに立脚している。ＫＩＳＳは、着信データをソートすることが可能であり、すなわち、データを一つのパス又は別のパスに割り当てることが可能である。より早い接続は遠隔送信システムによって確立されている一方、遅い通信パスのためにＫＩＳＳは、例えばＣｏｍｍｕｎｉｃａｔｉｏｎＭｉｄｄｌｅｗａｒｅ  Ｒｉｐｏｓｔｅを使用する。
【０１７９】
本発明は、異なるデータレコードの送信においての使用について特に適する。好ましい実施形態はデータコンポーネントである。
【０１８０】
前記データコンポーネントは、データ記録を参照するものであり、前記データ記録は構成ファイルに接続されている。前記構成ファイルは、局地的に蓄積されたデータへの中央アクセスを許可する。
【０１８１】
好ましい実施形態においては、前記データコンポーネントは、業務レイヤー、技術管理レイヤー、及び技術適用レイヤーから構成される。前記データコンポーネントは、出力側に位置するデータ資源への局地的なアクセスを制御するものである。この目的のためにＫＩＳＳへのインターフェースが存在する。
【０１８２】
［コンポーネント］
コンポーネントは、好ましくは分割されたプログラムユニットとしてセットアップされる、機能の集合である。コンポーネントは、ある作業（例えば、顧客データの管理）を実行するために、ＣＡＲＢＯＮカーネル、トランザクションタイプ、及び他のコンポーネントによって使用されるものである。コンポーネント使用の目的は、複数のトランザクションタイプが同一のコンポーネントにアクセスできる機能の冗長な開発を避けることにある。
【０１８３】
コンポーネントは、好ましくは自立型のプログラムでは無く、実行されるためのクライアント側の基礎的構造である必要がある。好ましくは、コンポーネントは、ユーザーインターフェースと接続されるコンポーネントを全く持っていないものである。さらに好ましくは、コンポーネントは、直接にはユーザーのダイアログ内にはなく、むしろトランザクションタイプもしくは他のコンポーネントを介して呼び出されるものである。
【０１８４】
ＣＡＲＢＯＮコンポーネントは、機能及び一つのファクトリを有する展開ユニットであることが好ましい。ＣＡＲＢＯＮコンポーネントは、他のコンポーネントから独立するものとしてみなされることとなる。前記ファクトリは、ＣＡＲＢＯＮコンポーネントについての情報を具備し、ＣＡＲＢＯＮコンポーネントが一貫性、及び、必要条件のチェックを実行することを許可し、そして要求されたタイプについてのオブジェクトインスタンスを具備する。
【０１８５】
この構造は、一定の方法でオブジェクトインスタンスを生成することを可能とする。原則として、インターフェースはファクトリによって要求されることから、インスタンスによって生成されたクラスは全く問題なく改良若しくは交換され得る。
【０１８６】
前記ファクトリは、コンポーネントのクラスについてのインスタンスを生成せずにコンポーネントを使用するための必要条件をチェックすることを可能とする。この目的のために、一貫性及び必要条件のチェックメソッドを実装する。
【０１８７】
「バージョン」プロパティは、前記コンポーネントのバージョンを具備する。「ドメイン」プロパティは前記コンポーネントのドメインを具備する。ＣｈｅｃｋＣｏｎｓｉｓｔｅｎｃｙメソッドは一貫性をチェックし、ＣｈｅｃｋＰｒｅｒｅｑｕｉｓｉｔｅｓメソッドは必要条件をチェックする。オブジェクトインスタンスは、転送されるタイプに応じて、ＧｅｔＩｎｓｔａｎｃｅメソッドによって生成される。ＩＣｍｐＦａｃｔｏｒｙインターフェースを実装するクラスは、アセンブリ内のＣｍｐＦａｃｔｏｒｙＡｔｔｒｉｂｕｔｅを使用することを示す。前記属性を介して、ＩＣｍｐＦａｃｔｏｒｙインターフェースのインスタンスを、リフレクションを用いて取得できる。ＩＣｍｐＦａｃｔｏｒｙインターフェースを実装する抽象的なＳｔａｎｄａｒｄＣｍｐＦａｃｔｏｒｙクラスが存在する。単純化されたコンポーネントのオブジェクトインスタンスへのアクセスは、ＣｍｐＳｕｐｐｏｒｔクラスを用いて可能となる。
【０１８８】
［構成ファイル］
本発明によれば、構成ファイルは、機能コンポーネントに読み込まれ、これにより、前記構成ファイルはデータシステムへのアクセスのためのプロシージャの情報を具備する。前記構成ファイルは、ＸＭＬフォーマットの形で存在することが好ましく、全てのデータアクセスをカプセル化するためのＤａｔａＳｅｒｖｉｃｅクラスを初期化する。機能コンポーネントは、トランザクション処理モジュールのプロシージャのコンテンツを形成し、これにより、例えば、情報は、トランザクション処理モジュールによって必要とされるデータが蓄積されているデータ資源、又は、トランザクション処理モジュールによって取得されるデータがファイルされているデータシンクを示す構成ファイルにファイリングされる。さらに、入力値及び出力値の妥当性の検討は、機能コンポーネントによって実行される。複数のデータシステムからのデータの合併は、機能コンポーネントによって実行される。データシステムへのアクセスの技術的詳細は、機能コンポーネントには含まれないことが好ましい。
【０１８９】
［ミドルウェア］
ミドルウェアは、アプリケーションの間を仲介するためのサービスを提供するアプリケーション独立コンポーネントである。ミドルウェアは複雑なソフトウェアシステムにおける水準であり、更なる他の離間したソフトウェアコンポーネントのサービスプロバイダとして、相互間の通信を許可する。
【０１９０】
［モデルビューコントローラ］
前記モデルビューコントローラは、ユーザーインターフェースと、データと、処理とを確実に分割するものである。
【０１９１】
［周辺コンポーネントＰＫ］
周辺コンポーネントを介して、ＣＡＲＢＯＮは周辺を直接制御する。特別にプログラムされたインターフェースは、ＣＡＲＢＯＮによって規定されたプロパティを具備するいかなる装置への接続も許可する。
【０１９２】
［リカバリーマネージャＲＭ］
リカバリーマネージャは、一定の間隔を置いてクライアントの状態を記憶する。
【０１９３】
［生データコンポーネント］
生データコンポーネントを使用することにより、トランザクションタイプは生データレコードを生成する。前記コンテキストマネージャは、仲介手段としての役割を果たす、つまり、生データコンポーネントのサービスをＩＲＤＳＭａｎａｇｅｒインターフェースを介してトランザクションタイプに転送するものである。
【０１９４】
［セッションマネージャＳＭ］
セッションマネージャＳＭは、生データレコードを管理するためのモジュールを具備することが好ましい。生データレコードは結合されていることが好ましい。セッションマネージャＳＭの使用により付加的データ、特に生データの包含を許可するように機能することが好ましい。
【０１９５】
セッションマネージャＳＭは、ＣＡＲＢＯＮにおいて作成され、ネストされ、かつ、一般に取得可能とされる、結合された生データレコードを管理する。
【０１９６】
［セッションオブジェクト］
セッションオブジェクトは、データを伴う全ての種類の異なるプロシージャのセッションのためのＶＧＡジェネラルオブジェクトとしての役割を果たす。前記セッションオブジェクトは、一義的にセッションＩＤによって識別される；ＶＧＡは、ＳｅｓｓｉｏｎＩＤＣｒｅａｔｏｒ−ｐｌｕｇ−ｉｎを介して、セッションマネージャにより間接的に自由に定義可能なタイプ（例えば、顧客、請求書、現金支払い等）を伴うＶＧＡ自身のために生成されるセッションオブジェクトを有している。このオブジェクトは、他のＶＧＡによって読み込まれ得る全てのセッションデータ（名前値の組）を拾い出すことができる。
【０１９７】
前記セッションデータは、データベースにおいて持続される。セッションデータが変更されると、それに付随する記録がすぐに更新される。この結果、トランザクションを読み込む前記セッションデータは、セッションオブジェクト内に蓄積される。
【０１９８】
［ＤＢＡｃｃｅｓｓ］
ＤＢＡｃｃｅｓｓクラスは全てのセッションデータベースへのアクセスをカプセル化し、セッションレコードを生成する、書き込む、読み込む及び消去するための包括的な機能を提供する。
【０１９９】
前記クラスは、ＤａｔａＳｅｒｖｉｃｅｓから構成能力を継承し、実際のデータ資源から独立性を継承する。全てのデータベースアクセスは、ＤａｔａＳｅｒｖｉｃｅｓ（ＷＩＰ参照）を介して達成される。
【０２００】
［セッションデータの持続］
セッションデータは、表セッションの局所的データベースの中にファイルされている。セッションデータ全てが流れの中で連続化され、ＢＬＯＢフィールドに蓄積される；ＢＬＯＢフィールドは、データベース内でイメージタイプを有する。
【０２０１】
表の好ましい実施形態を次の表１に示す。
【０２０２】
【表１】
2008533555.tif 000003
【０２０３】
それぞれのセッションオブジェクトが関連するデータレコードを有する。セッションデータが変更されると、前記データレコードはすぐに更新される。セッションオブジェクト（同一のセッションＩＤ）の他のインスタンスは、存在しているレコードに基づいて常に生成されている。
【０２０４】
［シーケンスダイアグラム］
図３、図４及び図５に示すシーケンスダイアグラムは、それぞれセッションデータへのアクセス中のシーケンス、別のセッションオブジェクトインスタンスの生成、セッション実行時のトランザクションサポートである。
【０２０５】
［セッションデータへのアクセス］
セッションデータが書かれた時、データベースは常にすぐ更新される。
【０２０６】
セッションデータが読み込まれたとき、セッションオブジェクトは蓄積されたデータを使用する。
【０２０７】
［生データ］
生データの送信がＣＡＲＢＯＮフレームワークの最も重要な作業の一つである。入力側で取得される、できる限り多くのデータは、ＣＡＲＢＯＮフレームワークによって出力側に生データの形で送られる。特にこのように、全てのデータが生データレコードの形で送られることが好ましい。生データの送信についての制御は、ＢｕｓｉｎｅｓｓＯｂｊｅｃｔでのトランザクションタイプにおいて実行される。生データを送信することの機能は、本質的に以下の構成の相互作用によって実現される。
ＲｄＩｔｅｍＦｉｌｔｅｒ、ＲｄＳｅｎｄｅｒ、ＳｅｎｄＤａｔａＭａｎａｇｅｒ、ＲｄＭａｎａｇｅｒ、ＲｄＩｔｅｍＬｉｓｔ、ＲｄＩｔｅｍＦｒａｇｍｅｎｔ、及びＲｄＩｔｅｍ。
【０２０８】
ＣＡＲＢＯＮにおける全てのサービス（サービスパターン）のように、生データの送信は、また、サービスを介したトランザクションタイプの取得を可能とする。前記トランザクションタイプへのアクセスを提供するインターフェースは、ＩＲｄＭａｎａｇｅｒであり、ＲｄＭａｎａｇｅｒもしくはＲｄＩｔｅｍＦｉｌｔｅｒに実装される。
【０２０９】
生データを送信するオブジェクトの特に好ましい実施形態は、以下においてより詳細に説明される。
【０２１０】
構成：
［ＲｄＭａｎａｇｅｒ（ＩＲｄＭａｎａｇｅｒ、ＩＲｄＣｏｌｌｅｃｔｉｏｎＨａｎｄｌｅｒ）］
ＲｄｓＭａｎａｇｅｒは、直接インスタンス化されず、前記生データを送信する範囲で使用される。ＲｄｓＭａｎａｇｅｒは、ＩＲｄｓＭａｎａｇｅｒ及びＩＲｄＣｏｌｌｅｃｔｉｏｎＨａｎｄｌｅｒインターフェース（サービスパターン）を介して、トランザクションタイプを入手する機能を達成する。ＲｄｓＭａｎａｇｅｒは、ＤａｔａＳｅｒｖｉｃｅｓを介して出力側との接続を確立することにより、実際の生データの送信を実行する。データが送信される前に、生データレコードのテンポラリーキーは、データベース内で存続する永続的なキー（ＧＯＢケイパビリティ）に変更されなければならない。
【０２１１】
［ＲｄＩｔｅｍＬｉｓｔ］
ＲｄＩｔｅｍＬｉｓｔは、セッション及びＲｄＩｔｅｍｓへのインターフェースを形成する。このクラスを介して、生データレコードはＸＭＬ要素として蓄積され、同時にＲｄｓＭａｎａｇｅｒを使用する出力側へ送信される。ＲｄＩｔｅｍＬｉｓｔを使用することにより、セッションへのアクセス、及びＲｄＩｔｅｍを実行する際の詳細は、トランザクションタイプの開発者により隠される。
【０２１２】
［ＲｄＩｔｅｍ］
ＲｄＩｔｅｍはクラスである。何よりもまず、ＲｄＩｔｅｍは、実際の生データレコードを示すＸＭＬ要素を管理する役割を担う。前記クラスのパブリックインターフェースは、ＸＭＬコンテンツを読みこみ／セットすること、生データレコードのキー情報を読みこみ／セットすること、及びカプセル化された生データレコードに属するＸＭＬスキームに対する妥当性確認を許可する。
【０２１３】
［ＲｄＩｔｅｍＢａｓｅ］
ＲｄＩｔｅｍＢａｓｅクラスは、ＲｄＩｔｅｍ及びＲｄＩｔｅｍＦｒａｇｍｅｎｔクラスの共有の基礎クラスである。ＲｄＩｔｅｍＢａｓｅクラスは、ＸＰａｔｈローカライゼーションを経由して、生データのＸＭＬ構造内での値の読みこみ及び書き込みのためのメソッドを提供する。コンストラクタは、テンプレートファイルからＸＭＬ構造に読みこむ。
【０２１４】
［ＲｄＩｔｅｍＦｒａｇｍｅｎｔ］
ＲｄＩｔｅｍＦｒａｇｍｅｎｔはクラスである。第一に、ＲｄＩｔｅｍＦｒａｇｍｅｎｔは、生データレコードのトランザクションタイプ固有の部分を示すＸＭＬエレメントを管理する役割を担う。前記クラスのパブリックインターフェースは、ＸＭＬコンテンツを読みこみ／セットすること、生データレコードフラグメントのトランザクションタイプについてのセッションＩＤを読みこみ／セットすることを許可する。
【０２１５】
［ＲｄＩｔｅｍＦｉｌｔｅｒ（ＩＲｄＭａｎａｇｅｒ）］
ＲｄＭａｎａｇｅｒのように、ＲｄＩｔｅｍＦｉｌｔｅｒは、ＩＲｄＭａｎａｇｅｒインターフェースを実装する。ＲｄＩｔｅｍＦｉｌｔｅｒは、送信されるデータからあるトランザクションタイプの生データを除外する可能性を提供する。ＩＲｄＭａｎａｇｅｒのサービスが要求され、ＲｄＭａｎａｇｅｒより上流側にあるときには、ＲｄＩｔｅｍＦｉｌｔｅｒは、フィードバックされる。ＲｄＩｔｅｍＦｉｌｔｅｒは、処理される予定の無い生データを取り消し、残りのデータを実際の処理が現在行われているＲｄＭａｎａｇｅｒへと転送する。
【０２１６】
［ＲｄＳｅｎｄｅｒ］
ＲｄＳｅｎｄｅｒは、ＫＩＳＳを介して送信するためのＲｄＭａｎａｇｅｒによって処理されているＲｄＩｔｅｍｓの準備を可能にするものである、すなわち、ＲｄｓｅｎｄｅｒはＲｄｓｅｎｄｅｒに転送されてきたＲｄｉｔｅｍをＫｉｓｓＥｎｖｅｌｏｐｅへと圧縮し、これを優先度と経路情報とともに増加させるものである。その後、ＫｉｓｓＥｎｖｅｌｏｐｅは、ＫＩＳＳを介して送信されるようにＳｅｎｄＤａｔａＭａｎａｇｅｒに転送される。
【０２１７】
［ＳｅｎｄＤａｔａＭａｎａｇｅｒ］
ＳｅｎｄＤａｔａＭａｎａｇｅｒは、ＫＩＳＳを介して出力側に生データの送信を制御することを可能とする。さらに、ＳｅｎｄＤａｔａＭａｎａｇｅｒは、与えられた時間において預けられたＫｉｓｓＥｎｖｅｌｏｐｅを返送することを可能とする。ＫｉｓｓＥｎｖｅｌｏｐｅは、ＲｄＳｅｎｄｅｒによってＳｅｎｄＤａｔａＭａｎａｇｅｒへ転送される。
【０２１８】
ＳｅｎｄＤａｔａＭａｎａｇｅｒへ転送された前記エンベロープは、直接送信されるのではなく初めにクライアントのデータベースにファイリングされる。一旦送信されなかったある数がデータベースに溜まったとき、又は優先度「すぐ送信」を伴うエンベロープが預けられたときは、いまだ送信されていないデータベース内の全てのエンベロープがＫＩＳＳを介してＫｉｓｓＢｕｎｄｌｅＥｎｖｅｌｏｐｅとして送られる。
【０２１９】
ＳｅｎｄＤａｔａＭａｎａｇｅｒは、技術的基礎サービスとして、また、他のトランザクションタイプを取得するものとして実装されている。
【０２２０】
ＳｅｎｄＤａｔａＭａｎａｇｅｒは、トランザクションタイプによって作動される、これにより、例えばＩＣｏｎｔｅｎｔサービスのように、ＳｅｎｄＤａｔａＭａｎａｇｅｒは、技術的基礎サービスとして実現される。
【０２２１】
前記技術的基礎サービスは、それぞれトランザクションタイプの場所に関するＧｅｔＳｅｒｖｉｃｅメソッドを介して得られる。前記技術的基礎サービスへのアクセスは直接効果を与えられるものではなく、むしろ付随するインターフェースを介して効果を与えられるものである。この場合インターフェースの名前は、ＩＳｅｎｄＤａｔａＭａｎａｇｅｒである。
【０２２２】
ＫＩＳＳエンベロープはＲｄＳｅｎｄｅｒによってＳｅｎｄＤａｔａＭａｎａｇｅｒに転送された後、ＫＩＳＳエンベロープは表「ＫｉｓｓＥｎｖｅｌｏｐｅｓ」の中のＥＰＯＳ．ｎｅｗクライアントに関するＣＡＲＢＯＮデータベースに預けられ、預けた日によって提供される。一旦ＣＡＲＢＯＮデータベースにおいて送信しなかったＫｉｓｓＥｎｖｅｌｏｐｅが一定量（バイトで）に到達した場合、データベースにおけるまだ送信されていない全てのＫｉｓｓＥｎｖｅｌｏｐｅｓがＫＩＳＳを介してＫｉｓｓＢｕｎｄｌｅＥｎｖｅｌｏｐｅとして送信される。ＫＩＳＳエンベロープの送信は個別に行われるのではなく、むしろ複数の個別のエンベロープを包含したバンドルエンベロープにおいて行われる（ＫｉｓｓＨｅｌｐｅｒを使用すると表示されている）。ＫＩＳＳエンベロープはＣＡＲＢＯＮデータベースに優先度「すぐ送信」を伴って預けられていれば、同様に全ての未だ送信されていないＫＩＳＳエンベロープはＫＩＳＳを介してＫｉｓｓＢｕｎｄｌｅＥｎｖｅｌｏｐｅとして送信される。
【０２２３】
バンドルエンベロープの生成及び／又は通知コンポーネントを介しての送信が、少なくとも次のイベントが発生した場合に起動される場合には好ましい。
（１）前記表に蓄積された全てのエンベロープについての全体のバイトでの規模が構成閾値量を上回る。
（２）エンベロープがすぐ送信の優先度を伴って前記表に蓄積される。
（３）ＳｅｎｄＤａｔａＭａｎａｇｅｒが明確に他の機能ユニット（例えば、会計バランストランザクションタイプ）によって蓄積されたデータを送信するように明確に指示される。
【０２２４】
上述のイベントの一つが起こった場合、「送信しない」と付けられたエンベロープ全てがＢｕｎｄｌｅＥｎｖｅｌｏｐｅに結合され、ＫＩＳＳを介して送信される。
【０２２５】
ＫｉｓｓＨｅｌｐｅｒクラスを使用することにより、「送信しない」状態のエンベロープ全てはＢｕｎｄｌｅＥｎｖｅｌｏｐｅへ圧縮される。ＢｕｎｄｌｅＥｎｖｅｌｏｐｅは、ＫｉｓｓＤａｔａＡｃｔｉｏｎを用いてＫＩＳＳに転送される。ＢｕｎｄｌｅＥｎｖｅｌｏｐｅは、クライアントでの待ち時間を防ぐために非同期式で実行される。イベント制御された場合のみ、ＢｕｎｄｌｅＥｎｖｅｌｏｐｅの送信は、同期式で実行されるトランザクションである。なぜなら結果としてエンベロープが送信されたかどうかを示す情報がフィードバックされるからである。
【０２２６】
ＫＩＳＳがエラーメッセージを生成しない場合は、送信されたエンベロープは「送信」されているというタイムスタンプを付けられる。しかし、ＫＩＳＳがエラーメッセージを生成した場合には、エンベロープの状態は「送信されていない」にセットされる。エンベロープがＫＩＳＳへ転送されている間、転送されたエンベロープは「転送中」の状態を受信する。
【０２２７】
ＳｅｎｄＤａｔａＭａｎａｇｅｒクラスは、ＳｅｎｄＤａｔａＭａｎａｇｅｒ．ｃｏｎｆｉｇｆｉｌｅ．における構成によって構成される。
【０２２８】
ＳｅｎｄＤａｔａＭａｎａｇｅｒは、それ自身の処理内では実行されないほうが好ましいため、既に送信されたエンベロープの削除は、前記表（構成された日数も考慮に入れた）に預けられた新しいエンベロープによってのみ行われる。
【０２２９】
［メソッド］
ＳｅｎｄＤａｔａＭａｎａｇｅｒクラスは、ＩＳｅｎｄＤａｔａＭａｎａｇｅｒ、ＩＳｕｐｐｏｒｔＳｅｒｖｉｃｅ、及びＤａｔａＳｅｒｖｉｃｅインターフェースから派生される。ＩＳｅｎｄＤａｔａＭａｎａｇｅｒインターフェースは、ＳｅｎｄＤａｔａＭａｎａｇｅｒクラスへのインターフェースを形成し、ＩＳｕｐｐｏｒｔＳｅｒｖｉｃｅインターフェースは、サービスへのインターフェースを形成し、ＤａｔａＳｅｒｖｉｃｅクラスは、ＤａｔａＳｅｒｖｉｃｅｓを生成する役割を担う。
【０２３０】
ＳｅｎｄＤａｔａＭａｎａｇｅｒクラスが個別に風数の若しくは全ての次のようなメソッドを提供することが特に好ましい。
（１）ＰｕｔＥｎｖｅｌｏｐｅ：ＣＡＲＢＯＮデータベースからの古いエンベロープを消去し、データベースに転送されたエンベロープを書き込み、エンベロープを送信する。
（２）ＧｅｔＥｎｖｅｌｏｐｅｓ：与えられた時間内に入力されたエンベロープを取得する。
（３）ＳｅｎｄＥｎｖｅｏｐｅｓ：未だ送信されていない全てのエンベロープを送信する。
（４）ＧｅｔＳｅｒｖｉｃｅｓ：ＳｅｎｄＤａｔａＭａｎａｇｅｒの現在のインスタンスをパラメータとして転送されたＳｅｒｖｉｃｅＨａｎｄｌｅｒに付加する。
【０２３１】
このように、高い汎用性の長所を完全自動化の可能性に関連付けることが可能となる。
【０２３２】
本発明の別実施形態は、低いメンテナンス要求、高い汎用性、及び高い若しくは完全自動化の可能性を特徴とする。
【０２３３】
［アプリケーション］
生データを送信することを可能とするため、第一に、ＲｄＭａｎａｇｅｒによって実装されるＩＲｄＭａｎａｇｅｒインターフェースは、ＳｅｒｖｉｃｅＰａｔｔｅｒｎを介して要求されるべきである。この要求は次のようなものである。
IRdManager manager = 
(IRdManager)
this.site.GetService(type of(IRdManager));
【０２３４】
その後、ＲｄＩｔｅｍＬｉｓｔが生成される。ＲｄＩｔｅｍＬｉｓｔの生成は次のように実行される。
RdItemList list = new RdItemList() ;
【０２３５】
前記生データレコードは、ＲｄＩｔｅｍインスタンスを生成することにより生成される。この処理において、ＸＭＬ構造を生成するためにテンプレートのＩＤはＲｄＩｔｅｍクラスのコンストラクタに転送される。
RdItem someItem = new RdItem( templateID) ;
【０２３６】
ＸＭＬ構造において、セッションＩＤを伴うｒｄＦｒａｇｍｅｎｔ要素が発生する。
＜rdFragment＞471146104509＜/rdFragment＞
【０２３７】
これと並行して、ＲｄＩｔｅｍＦｒａｇｍｅｎｔインスタンスが生成されて、セッションＩＤがコンストラクタに転送される。
RdItemFragment fragment = new RdItemFragment (“471146104509”, templateID);
【０２３８】
ＩＲｄＭａｎａｇｅｒのＡｄｄＲｄＩｔｅｍ及びＡｄｄＲｄＩｔｅｍＦｒａｇｍｅｎｔメソッドを使用することにより、生データはＲｄＭａｎａｇｅｒへ転送される。
【０２３９】
一旦全ての生データが生成されれば、ＩＲｄＭａｎａｇｅｒインターフェースのＣｌｏｓｅＡｎｄＳｅｎｄメソッドが呼び出される。生データレコードの技術的完了の目的のために、前記インターフェースは次のステップを実行する。
【０２４０】
（１）ＲｄＩｔｅｍＦｒａｇｍｅｎｔインスタンスからのカプセル化された生データレコードのフラグメントを個別のＲｄＩｔｅｍインスタンスに統合し、
（２）ＲｄＩｔｅｍインスタンスをテンポラリーキーに基づいてソートし、
（３）最終の生データキーを割り当て、
（４）カプセル化された生データレコードに具備される、満たされていないコンポーネント削除プロセスを管理及び起動し、
（５）個別の生データレコードのＸＭＬスキームに対する妥当性検討の処理を管理及び起動し、
（６）終了されたＲｄＩｔｅｍインスタンスをＲｄＳｅｎｄｅｒへ転送する。
【０２４１】
［Ｉｎｔｅｒｆａｃｅｓ］
次に、生データコンポーネントのプログラムを行うインターフェースについて述べる。ここでは、生データクラスの個別のプロパティ及びメソッドが描かれ、使用方法が述べられる。
【０２４２】
［Ｐｒｏｐｅｒｔｉｅｓ］
［ＲｄＳｅｎｄｅｒクラス］
ＲｄＳｅｎｄｅｒクラスはプロパティを全く具備しない。
［ＲｄＩｔｅｍＦｉｌｔｅｒクラス］
ＲｄＩｔｅｍＦｉｌｔｅｒクラスはプロパティを全く具備しない。
［ＳｅｎｄＤａｔａＭａｎａｇｅｒクラス］
ＳｅｎｄＤａｔａＭａｎａｇｅｒクラスはプロパティを全く具備しない。
【０２４３】
［ＲｄＩｔｅｍクラス］
ＡｐｐＩＤ
−インスタンスのための生データキーのＡｐｐＩＤを読みこみセットする。
ＢｒａｎｃｈＩＤ
−インスタンスのための生データキーのＢｒａｎｃｈＩＤを読みこみセットする。
ＣｌｉｅｎｔＩＤ
−インスタンスのための生データキーのＣｌｉｅｎｔＩＤを読みこみセットする。
ＩＤＥｌｅｍｅｎｔ
−生データキーを読みこむ。
Ｐｒｉｏｒｉｔｙ
−送信優先度をセットし読みこむ。
ＳｉｎｋＬｉｓｔ
−ＫＩＳＳ受信装置のリストをセットし読みこむ。
ＴｅｍｐｏｒａｒｙＩＤ
−ＴｅｎｐｏｒａｒｙＩＤを読みこむ。
【０２４４】
［ＲｄＩｔｅｍＢａｓｅクラス］
Ｄｏｃｕｍｅｎｔ
−カプセル化されたＸＭＬ文書へアクセスする。
【０２４５】
［ＲｄＩｔｅｍＦｒａｇｍｅｎｔクラス］
ＳｅｓｓｉｏｎＩＤ
−フラグメントを生成する基礎トランザクションタイプのＳｅｓｓｉｏｎＩＤをフィードバックする。
【０２４６】
［ＲｄＭａｎａｇｅｒクラス］
ＲｄｓＭａｎａｇｅｒクラスはプロパティを全く具備しない。
【０２４７】
［ＲｄＳｅｓｓｉｏｎＡｄａｐｔｅｒクラス］
ＲｄｓＳｅｓｓｉｏｎＡｄａｐｔｅｒクラスはプロパティを全く具備しない。
【０２４８】
［Ｍｅｔｈｏｄｓ］
［ＲｄＩｔｅｍＦｉｌｔｅｒクラス］
ＡｄｄＲｄＩｔｅｍ（ｉｔｅｍ）
−転送されたアイテムが除去されているかどうかをチェックし、除去されていなければ、前記アイテムをＲｄＭａｎａｇｅｒへ転送する。
［Ｓｙｎｔａｘ］
ｐｕｂｌｉｃ  ｖｏｉｄ  ＡｄｄＲｄＩｔｅｍ（ＲｄＩｔｅｍ  ｉｔｅｍ）
【０２４９】
ＡｄｄＲｄＩｔｅｍＦｒａｇｍｅｎｔ（ｆｒａｇｍｅｎｔ）
−ＲｄＩｔｅｍＦｒａｇｍｅｎｔがフィルタリングされなかった場合、自動的に直接ＲｄＭａｎａｇｅｒに転送される。
［Ｓｙｎｔａｘ］
ｐｕｂｌｉｃ  ｖｏｉｄ  ＡｄｄＲｄＩｔｅｍＦｒａｇｍｅｎｔ（ＲｄＩｔｅｍＦｒａｇｍｅｎｔ  ｆｒａｇｍｅｎｔ）
【０２５０】
ＣｌｏｓｅＡｎｄＳｅｎｄ（）
−同じ名前を持つＲｄＭａｎａｇｅｒのメソッドを呼び出す。
［Ｓｙｎｔａｘ］
ｐｕｂｌｉｃ  ＨａｓｈＴａｂｌｅ  ＣｒｏｓｓＡｎｄＳｅｎｄ（）
【０２５１】
［ＲｄＳｅｎｄｅｒクラス］
ＰｕｔＲｄＩｔｅｍ（ｉｔｅｍ，ｖａｌｉｄａｔｉｏｎＳｕｃｃｅｓｓｆｕｌ）
−転送されたＲｄＩｔｅｍをＫｉｓｓＥｎｖｅｌｏｐｅに圧縮し、ＲｄＩｔｅｍをＤａｔａＭａｎａｇｅｒへ転送する。
［Ｓｙｎｔａｘ］
ｐｕｂｌｉｃ  ｖｏｉｄ  ＰｕｔＲｄＩｔｅｍ（ＰｕｔＲｄＩｔｅｍ，  ｂｏｏｌ  ｖａｒｉｄａｔｉｏｎ  ｓｕｃｃｅｓｓｆｕｌ）
【０２５２】
［ＳｅｎｄＤａｔａＭａｎａｇｅｒクラス］
ＰｕｔＥｎｖｅｌｏｐｅ（ｓｏａｐＥｎｖｅｌｏｐｅ，ｐｒｉｏｒｉｔｙ）
−データベースから古いエンベロープを削除し、転送されたエンベロープをデータベースに預け、前記エンベロープが送信されるか否かをチェックする。もし、エンベロープが送信されていれば、非同期式で行われる。
［Ｓｙｎｔａｘ］
ｐｕｂｌｉｃ  ｖｏｉｄ  ＰｕｔＥｎｖｅｌｏｐ（ＸＭＬＥｌｅｍｅｎｔ  ｓｏａｐＥｎｖｅｌｏｐ，  ｂｏｏｌ  ｐｒｉｏｒｉｔｙ）
【０２５３】
［ＲｄＩｔｅｍクラス］
ＩｎｓｅｒｔＲｄＩｔｅｍＦｒａｇｍｅｎｔ
−転送されたＲｄＩｔｅｍＦｒａｇｍｅｎｔのＸＭＬを、転送されたＲｄＩｔｅｍＦｒａｇｍｅｎｔのＳｅｓｓｉｏｎＩＤを伴うｒｄＦｒａｇｍｅｎｔコンポーネントが位置するＸＭＬＤｏｃｕｍｅｎｔ内の場所に、挿入する。
ＲｅｍｏｖｅＮｏｎＤｅｆｉｎｅｄＥｌｅｍｅｎｔｓ
−定義されていないコンポーネントを前記文書から取り除く。
ＲｅｐｌａｃｅＫｅｙＩｎＲｅａｓｏｎ
−このメソッドは、生データレコードのテンポラリーキーを転送された最終の生データキーに取り替える。
ＳｅｔＦｉｎａｌＩＤ
−生データレコードのキー部分での最終の連続番号を入力する。
Ｖａｌｉｄａｔｅ
−ＲｄＩｔｅｍのＸＭＬＤｏｃｕｍｅｎｔのスキームに対する妥当性を確認する。
【０２５４】
［ＲｄＩｔｅｍＢａｓｅクラス］
ＧｅｔＶａｌｕｅＢｙＸＰａｔｈ
−Ｘｐａｔｈ式によって値を作成する。
ＳｅｔＶａｌｕｅＢｙＸＰａｔｈ
−Ｘｐａｔｈ式によって値を書き出す。
【０２５５】
［ＲｄＭａｎａｇｅｒクラス］
ＡｄｄＲｄＩｔｅｍ
−一つ（若しくはそれ以上）のＲｄＩｔｅｍインスタンスを付加する役割を担う。
ＡｄｄＲｄＩｔｅｍＦｒａｇｍｅｎｔ
−一つ（若しくはそれ以上）のＲｄＩｔｅｍＦｒａｇｍｅｎｔインスタンスを付加する役割を担う。
ＣｌｏｓｅＡｎｄＳｅｎｄ
−第一に、ＲｄＩｔｅｍＦｒａｇｍｅｎｔインスタンスは、ＲｄＩｔｅｍインスタンス内の適宜位置に配置される。そして、ＲｄＩｔｅｍインスタンスは、ＲｄＩｔｅｍインスタンスの一時的な認証によってソートされ、最終の生データキーが発行される。これにより、一時的な認証は、最終の生データキーと取り替えられる。満たされない要素は生データより除去される。ＲｄＩｔｅｍインスタンスはＲｄＳｅｎｄｅｒへ転送される。
【０２５６】
［ＲｄＳｅｓｓｉｏｎＡｄａｐｔｅｒクラス］
ＳｔｏｒｅＲｄＩｔｅｍＬｉｓｔ
−セッション内のＲｄＩｔｅｍＬｉｓｔインスタンスを蓄積する。
ＬｏａｄＲｄＩｔｅｍＬｉｓｔ
−セッション外のＲｄＩｔｅｍＬｉｓｔインスタンスを読みこみ該インスタンスを返信する。
ＳｔｏｒｅＲｄＩｎＲｄＭａｎａｇｅｒ
−セッション内のＲｄＩｔｅｍＬｉｓｔをＩＲｄＭａｎａｇｅｒインターフェースを実装するクラスのインスタンスへと転送する。
【０２５７】
［Ｅｘｃｅｐｔｉｏｎｓ］
生データコンポーネントが例えば実行時間内の次の表２に示すような例外を起動させる。
【表２】
2008533555.tif 000004
【０２５８】
［Ｃｏｎｆｉｇｕｒａｔｉｏｎ］
生データコンポーネントによってサービスの形でトランザクションタイプが取得可能となる。前記サービスは、中央構成ファイルＡｐｐ．ｃｏｎｆｉｇにおいて構成され、ＡｐｐｌｉｃａｔｉｏｎＭａｎａｇｅｒ（Ａｒｃｈｉｔｅｃｔｕｒｅ／ＡｐｐｌｉｃａｔｉｏｎＭａｎａｇｅｒの部分に示す）によって読み込まれる。
【０２５９】
さらに、データシンク内の生データを蓄積するために、生データコンポーネントは、ＤａｔａＳｅｒｖｉｃｅｓを使用する。
【０２６０】
ＲｄｓＭａｎａｇｅｒによって使用されるＩＤＧｅｎｅｒａｔｏｒｓは、同様にＲａｗＤａｔａ．ＸＭＬファイル内のクライアントの構成ディレクトリにファイルされたフィールド構成を要求する。ＩＤＧｅｎｅｒａｔｏｒｓのためのセクションは、以下に示すように構成される。
＜SequenceGenerators＞
＜SequenceGenerator ID=”FinalIDs”＞
＜IsPersisted＞true＜/IsPersisted＞
＞LowerBorder＞1＜/LowerBorder＞
＜UpperBorder＞999＜/UpperBorder＞
＜RestartSequence＞true＜/RestartSequence＞
＜PersistenceKey＞FinalID＜ /PersistenceKey＞
＜/ SequenceGenerator＞
＜/ SequenceGenerators＞
＜UUIDGenerator＞
＜IsPersisted＞true＜/IsPersisted＞
＜PersistenceKey＞PersistedGuid＜ /PersistenceKey＞
＜UUIDGenerator＞ 
【０２６１】
その後、個別のノードについての詳細な考察が実行される。
ＩｓＰｅｒｓｉｓｔｅｄ
−ＩＤが持続されるべきかどうかを表示する。
ＬｏｗｅｒＢｏｒｄｅｒ
−ＩＤ（ドメイン）の低めの境界を表示する。
ＵｐｐｅｒＢｏｒｄｅｒ
−ＩＤ（ドメイン）の高めの境界を表示する。
ＲｅｓｔａｒｔＳｅｑｕｅｎｃｅ
−オーバーフローの場合に最初から始動する必要があるかどうかを表示する。
ＰｅｒｓｉｓｔａｎｃｅＫｅｙ
−ＩＤがデータシンクにおいて書き出されるのに伴うキーを定義する。
【０２６２】
さらに、ＲｄＩｔｅｍｓは構成されなければならない。このセクションを以下に示す。
＜RDItem＞
＜SessionID＞/Rd_Record/SessionID＜/SessionID＞
＜BranchID＞/Rd_Record/Key/BranchID＞/BranchID＞
＜ClientID＞/Rd_Record/Key/ClientID＞/ClientID＞
＜Number＞/Rd_Record/Key/Number＜/Number＞
＜ReasonNumber＞/Rd_Record/Transaction/Reason/Key/Number＜/ReasonNumber＞
＜/RDItem＞
【０２６３】
前記部分において全てのノードは、要素データが生データスキームの外で読み込まれるような手段でＸＰａｔｈ式を記述している。
【０２６４】
［ＲｄＩｔｅｍＦｉｌｔｅｒ］
ＲｄＩｔｅｍＦｉｌｔｅｒは、「ＲｄＩｔｅｍＦｉｌｔｅｒ．ｃｏｎｆｉｇ」ファイルによって構成されている。ここでは、生データレコードにおけるＶＧＡキーに関するＸＰａｔｈ式が定義される。さらに、生データレコードは、該生データレコードのＶＧＡキーに基づいて構成される。
【０２６５】
構成ファイルの構造は以下のとおりである。
＜RdItemFilter＞
＜VgaKeyXPath＞RdRecord/RdBody/Vga/VgaDesignation＜/VgaKeyXPath＞
＜VgaList＞
＜Vga key= "1355" type="A" ejo="1" raw data="0" /＞
＜Vga key= "4711" type="B" ejo="1" raw data="1" /＞
＜Vga key= "1234" type="A" ejo="0" raw data="0" /＞
＜Vga key= "9876" type="B" ejo="0" raw data="1" /＞
＜Vga key= "9968" type="A" ejo="1" raw data="1" /＞
＜/VgaList＞
＜RdItemFilter＞
【０２６６】
ＴＲＡＮＳＡＣＴＩＯＮ  ＴＹＰＥが除去されるか否かは、「生データ」属性の値によって決定される。前記「生データ」属性の値に、値「０」が入力されたときは、前記ＴＲＡＳＡＣＴＩＯＮ  ＴＹＰＥの生データは除去される。
【０２６７】
［ＲｄＳｅｎｄｅｒ］
ＲｄＳｅｎｄｅｒは、「ＲｄＳｅｎｄｅｒ．ｃｏｎｆｉｇ」ファイルによって構成されている。ここでは、どのデータのタイプが、生成されたＫｉｓｓＥｎｖｅｌｏｐｅｓに関する外的ヘッダで入力される予定なのかによって特定される。さらに、生成されたエンベロープのための標準的な経路指定はここで構成される。
【０２６８】
構成ファイルは以下のように構成される。
＜RdSender＞
＜DataType＞RD＜/DataType＞
＜StandardRoutingInformation＞R＜/StandardRoutingInformation
＜/RdSender＞
【０２６９】
［ＳｅｎｄＤａｔａＭａｎａｇｅｒ］
ＳｅｎｄＤａｔａＭａｎａｇｅｒは、「ＳｅｎｄＤａｔａＭａｎａｇｅｒ．ｃｏｎｆｉｇ」ファイルによって構成されている。ＫｉｓｓＥｎｖｅｌｏｐｅｓを送信しファイリングするために必要とされるＤａｔａＡｃｔｉｏｎｓはここで生成される。ＤａｔａＳｅｒｖｉｃｅｓの構成は、比較的複雑であり、送信されなかったエンベロープのバイト単位での最大の全体のサイズ及び送信されたエンベロープのための数日中の最大経過時間を拡大する。
【０２７０】
前記構成のこの部分の好ましい構造は以下のとおりである。
＜/SendDataManager＞
＜DueTime＞30＜/DueTime＞
＜MaxBytes＞1000＜/MaxBytes＞
＜/SendDataManager＞
【０２７１】
［Ｉｎｔｅｇｒａｔｉｏｎ］
生データコンポーネントの多くの機能、特に全ての機能としてトランザクション処理モジュールへサービスを介して供給することは特に好ましい。
【０２７２】
［Ｃｏｎｓｉｔｕｅｎｔｓ］
［Ｓｅｓｓｉｏｎ  Ｍａｎａｇｅｒ］
前記セッションマネージャＳＭは、アプリケーションマネージャＡＭによってシステム起動の時点でインスタンスが作成され、ＳｅｒｖｉｃｅＨａｎｄｌｅｒを介してトランザクションタイプを入手可能にする。
前記セッションマネージャは、セッションオブジェクトを生成、変更若しくは消去するための及びトランザクション制御のためのメソッドを提供する。
【０２７３】
前記セッションマネージャは、セッションオブジェクトの存在への参照を具備しないことが好ましい。本発明の特に好ましい実施形態では、セッションオブジェクトの存在はトランザクション処理モジュールにおいてのみ参照される。
【０２７４】
図３は、本発明の好ましい実施形態を示し、この実施形態は、トランザクション処理が少なくとも業務オブジェクトＢＯの組み込みを伴い実行されること、業務オブジェクトＢＯはセッションオブジェクトＳＯを生成すること、及びセッションオブジェクトＳＯはデータベースの中の少なくとも一つのデータ値をアップデートすることを特徴とする。
【０２７５】
ここでは、データ値がＤＢＡインターフェースを介してアップデートされていることが好ましい。
【０２７６】
［別のセッションオブジェクトインスタンスの生成］
別のセッションオブジェクトインスタンスの生成は、データベースからセッションレコードに基づいて実行される。
【０２７７】
図４は、本発明の有利な改良を示し、この本発明の効果的な改良点は、図３で示された処理ステップと組み合わせることが好ましいが、ビジネスオブジェクトＢＯがセッションマネージャＳＭへセッションオブジェクトを生成する要求を送信することを特徴とする。
【０２７８】
図４に示す実施形態と、図３に示す実施形態とを組み合わせることが好ましいが、これらの実施形態を分割して実装することも可能である。
【０２７９】
図４に示されるシーケンスダイアグラムは、すなわち、ビジネスオブジェクトＢＯがセッションマネージャＳＭへ他のセッションオブジェクトインスタンスを生成する要求を送信するという効果的な手段を示す。
【０２８０】
このように、さらなるデータ処理及び／又はデータバックアップのために、様々なトランザクション処理状態を使用することが可能となる。
【０２８１】
さらに、停止されたトランザクションを再開することができる。
【０２８２】
ＣＡＲＢＯＮは、セッションが実行している間トランザクションを支援する。トランザクションで生成されたセッションオブジェクトは、トランザクションが異常終了した場合に削除される。
【０２８３】
トランザクションタイプがトランザクションをサポートしていれば、前記トランザクションタイプで生成されたセッションオブジェクトは、トランザクションブラケットにおいて管理される。前期トランザクションは、コンテキストマネージャによって管理される。トランザクションをサポートしたトランザクションタイプが異常終了された場合は、コンテキストマネージャはセッションマネージャの終了メソッドを要求し、ＴｒａｎｓａｃｔｉｏｎＩｎｆｏオブジェクトが引数として転送される。プロパティとして、前記オブジェクトはＴｒａｎｓａｃｔｉｏｎＩＤを具備し、ＩＤに基づいて、トランザクションタイプと関連するセッションレコードは、確認され、セッションテーブルから消去される。
【０２８４】
図５は、セッション実行時のトランザクションサポートを伴うシーケンスダイアグラムを示す。
【０２８５】
このトランザクションサポートは、トランザクション処理モジュールＶＧＡを始動コマンドＳｔａｒｔＶＧＡを送信することにより始動させるコンテキストマネージャＣＭと、業務オブジェクトＢＯを生成するトランザクション処理モジュールＶＧＡと、を具備することが好ましい。
【０２８６】
図５に示されたシーケンスダイアグラムは、コンテキストマネージャＣＭが少なくとも一つのトランザクション処理モジュールＶＧＡを始動させることを示している。
【０２８７】
トランザクションをサポートし、実行するトランザクション処理モジュールＶＧＡは、少なくとも一つの業務オブジェクトＢＯを生成する。
【０２８８】
ここで、トランザクション処理も業務オブジェクトＢＯの組込を用いて実行されることが好ましい。
【０２８９】
セッションオブジェクトの生成は、セッションマネージャＳＭを介して実行されることが好ましい。
【０２９０】
クライアント側のアプリケーションプログラム始動のために、自立型トランザクション処理モジュールは、同様にシステム全体の好適で高度なモジュール構造の範囲内で具備される。本発明の特に好ましい実施形態では、このようなログオン用のトランザクション処理モジュールは、アプリケーションセッション及びユーザーセッションからセッションヒエラルキーを生成する作業を担う。トランザクション処理モジュールは、前記セッションへ前記トランザクション処理モジュールによって決定された値を充填する。前記アプリケーションセッションには、少なくとも表示手段の識別値が充填される。このＷｏｒｋｐｌａｃｅＴｙｐｅは、例えばクライアントのデータベースより読み出される。
【０２９１】
さらに、前記アプリケーションセッションには、ＣｌｉａｎｔＩＤ、ＢｒａｎｃｈＴｙｐｅ、物理的なＢｒａｎｃｈＫｅｙ、及びデータ関連のＢｒａｎｃｈＫｅｙが充填される。本発明の特に好ましい実施形態では、これらの値は、同様にデータベースから読み出される。ＢｒａｎｃｈＴｙｐｅも、また、データベースから読み出される。ユーザーセッションでは、ＵｓｅｒＲｏｌｅｓの値が生成され、この値は、トランザクション処理モジュールＶＧＡのコントローラ構成ファイルから文字ストリングとして読み込まれる。
【０２９２】
ログオン用のトランザクション処理モジュールは、ログオンを実行するための多様な機能を想定する複数のクラスを具備する。例えば、ＤａｔａＡｃｔｉｏｎｓを利用し、ＷｏｒｋｐｌａｃｅＴｙｐｅ、ＣｌｉｅｎｔＩＤ、ＢｒａｎｃｈＫｅｙ、及びＢｒａｎｃｈＴｙｐｅを決定するＤａｔａＳｅｒｖｉｃｅクラスが具備される。前記クラスは、ＶＧＡの機能ユニットによってのみ使用されることが好ましい。別のログオン用のクラスは、マスク作業域によって起動されたログオンコマンドを処理する。ここで、メソッドＬｏｇｏｎ（）は、ログオンの範囲内において行われる全ての処理を実現する。前記アプリケーションセッション及びユーザーセッションは、例えば、ＳｅｓｓｉｏｎＣｒｅａｔｏｒＰｌｕｇＩｎによって生成される。ＳｅｓｓｉｏｎＣｒｅａｔｏｒＰｌｕｇＩｎはＳｅｓｓｉｏｎＩＤを生成し、付随するセッションを生成する。前記セッションが上述の値によって充填された後、ログオン用のトランザクション処理モジュールは自己終了し、次のモジュールが始動される。この次のモジュールのキーは、ログオンしたトランザクション処理モジュールの構成ファイルから読み出される。
【０２９３】
［Ａｃｃｅｓｓ  Ｃｏｍｐｏｎｅｎｔ］
データコンポーネントのアクセスコンポーネントは、データシステムにおける挙動の技術情報を具備し、技術的管理レイヤーを構成する。前記アクセスコンポーネントは、データシステムへの技術的アクセスを生成し、かつ、パラメータ化するためのロジックを具備するが、手順的なロジックは具備しない。データシステムへのアクセスは、ＤａｔａＡｃｔｉｏｎｓの形でインターフェースを介して、かつ、技術的アダプタクラスを介して達成されることが好ましい。
【０２９４】
前記アクセスコンポーネントは、抽象的なＤａｔａＳｅｒｖｉｃｅクラスとして構成されることが好ましい。前記アクセスコンポーネントは、全てのＤａｔａＡｃｔｉｏｎｓのためのファクトリーとして機能する。一つのＤａｔａＡｃｔｉｏｎは、一つのＩＤａｔａＡｃｔｉｏｎインターフェースを実装する一つのクラスによって実装される。ＤａｔａＡｃｔｉｏｎとして機能するそれぞれのクラスは、ＩＤａｔａＡｃｔｉｏｎインターフェースを実装する必要がある。全ての局地的、かつ、サーバにサポートされる、データアクセスは、ＩＤａｔａＡｃｔｉｏｎインターフェースを介して実行される。ＩＤａｔａＡｃｔｉｏｎインターフェースは読みこみ、書きこみ、操作などの一般的なデータオペレーションの全てを実行することが好ましい。第一のＩＤａｔａＡｃｔｉｏｎは、サーバーアクセスに対して具備され、第二のＩＤａｔａＡｃｔｉｏｎは、データベースアクセスに対して具備されることが好ましい。
【図面の簡単な説明】
【０２９５】
【図１】本発明に係るトランザクションシステムを示す概略図。
【図２】本発明に係るトランザクションシステムの特に好ましい構成を示す概略図。
【図３】セッションデータへのアクセスシーケンスを示す図。
【図４】他のセッション−オブジェクトインスタンスの生成シーケンスを示す図。
【図５】セッション処理中のトランザクションサポートシーケンスを示す図。
【符号の説明】
【０２９６】
ＡＭ      アプリケーションマネージャ
ＡＰ      ワークスペース
ＡＰＩ    アプリケーションプログラミングインターフェース
Ｂ        ユーザー
ＢＤ      基礎サービス
ＢＥＢ    出力側ビジネスロジック
ＢＬ      ビジネスロジック
ＢＬＡ    業務レイヤー
ＢＰ      許可プラグイン
Ｃ        コントローラ
ＣＦ      ＣＡＲＢＯＮフレームワーク
ＣＨ      ＣＡＲＢＯＮホスト
ＣＩ      インターフェースモジュール
ＣＭ      コンテキストマネージャ
ＤＣ      データコンテナ
ＤＫ      データコンポーネント
ＤＫＭ    データコンポーネントモジュール
ＤＲ      印刷コンポーネント
ＦＴ      分岐タイプ
ＫＩＳＳ  通知コンポーネント
ＮＫＭ    割り当てモジュール
ＰＫ      周辺コンポーネント
ＰＭ      プレゼンターモジュール
ＲＤＭ    生データモジュール
ＲＫＭ    生データコンポーネントモジュール
ＲＭ      リカバリーマネージャ
ＳＬ      データサービスレイヤー
ＳＭ      セッションマネージャ
ＶＧＡ    トランザクション処理モジュール
Ｗ        ワークスペース 
【図１】
2008533555.tif 000005
【図２】
2008533555.tif 000006
【図３】
2008533555.tif 000007
【図４】
2008533555.tif 000008
【図５】
2008533555.tif 000009
【国際調査報告】
2008533555.tif 000010
2008533555.tif 000011
2008533555.tif 000012
2008533555.tif 000013