JP4672870B2 - ホストシステムにある情報に直接トランザクションアクセスを行うための方法および装置 - Google Patents

ホストシステムにある情報に直接トランザクションアクセスを行うための方法および装置 Download PDF

Info

Publication number
JP4672870B2
JP4672870B2 JP2000611171A JP2000611171A JP4672870B2 JP 4672870 B2 JP4672870 B2 JP 4672870B2 JP 2000611171 A JP2000611171 A JP 2000611171A JP 2000611171 A JP2000611171 A JP 2000611171A JP 4672870 B2 JP4672870 B2 JP 4672870B2
Authority
JP
Japan
Prior art keywords
transaction
host
client
mapped
field
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2000611171A
Other languages
English (en)
Other versions
JP2002541583A (ja
Inventor
ローゼンバーガー、ジョエル・エル
フラナガン、ジェームス・ティー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Webmethods Inc
Original Assignee
Webmethods 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 Webmethods Inc filed Critical Webmethods Inc
Publication of JP2002541583A publication Critical patent/JP2002541583A/ja
Application granted granted Critical
Publication of JP4672870B2 publication Critical patent/JP4672870B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • 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/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は一般に、ホストシステム中にある情報を検索する方法に関し、とくに、ホストシステム中にある情報への直接トランザクションアクセスを行うための方法に関する。
【0002】
【従来の技術】
多くの企業は、かなりの割合の企業情報を主フレームのような大型ホストシステム中に記憶している。企業は、情報の生成および情報に対する常時連続アクセスを行うホストシステムのメインテナンスに対して相当な投資をしている。ホストシステムに影響を与える変更は、その変更が経済的であるか否かを決定するために注意深く監視される。
【0003】
インターネットの人気の上昇により、多くの企業は、彼等のホスト記憶企業情報およびビジネスロジックをワールド・ワイド・ウェブ(ウェブ)上に存在する新しい顧客に提供することがいかに最良であるかを評価している。企業は、そのホストシステムにおける既存の投資と、新しい配信プラットフォームおよびインターネットを使用することにより彼等の法人取引を拡張したいという彼等の要求のバランスをとるという難題に直面している。
【0004】
【発明が解決しようとする課題】
ホストシステム中にある情報をインターネットによって、とくにウェブを使用して顧客に提供する種々の方法が提唱されている。代表的な解決方法は、ウェブベースのユーザとインターフェースする新しいソフトウェアコードをホストシステム上に追加することを含んでいる。この方法の1つの欠点は、熟練したプログラミングのエキスパートが最初にソフトウェアコードを書込まなければならないことである。その後、ソフトウェアコードはホストシステムにロードされてテストされる。このプロセス中、ホストシステムはオフライン状態にされるため、法人取引の処理に利用できない。さらに、新しく生成されたソフトウェアコードのメインテナンスでも、ホストシステムをオフライン状態にする必要がある。情報に大きく依存する取引の中でホストシステムをオフライン状態にすることは、結果的に莫大な財政的な損失を生じさせる。
【0005】
別の方法は、コンポーネントオブジェクトモジュール(COM)を使用することである。この方法のために、クライアントアプリケーションは、アプリケーションまたはデータ用のプレゼンテーション層を提供する。クライアントアプリケーションは、マイクロソフトトランザクションサーバ(MTS)コンポーネントを呼出すことのできるアクティブサーバページ、ビジュアルベーシック(VB)アプリケーション、またはマイクロソフトオフィスアプリケーションであってもよい。MTSコンポーネントは、主フレームトランザクションプロセス(TP)用の機能をCOMインターフェースメソッドとして提供するCOMオブジェクトである。したがって、MTSコンポーネントには、そのコンポーネントを処理するトランザクション論理装置が含まれている。この方法の欠点は、ホストコードがクライアント側でアクセス可能でなければならず、そのマッピングが1対1であることである。
【0006】
別の方法は、ホストシステムに記憶されている企業情報にアクセスするために端末エミュレータを使用する。端末エミュレータは、所望の情報を獲得するためにホスト表示をナビゲートする。この方法の欠点は、ホストシステム上の各表示によってナビゲートする速度が非常に遅いことである。別の欠点は、ホストシステム中の情報へのアクセスを所望する各ウェブベースのユーザが論理端末を有していなければならないことである。論理端末では、ホストシステムがリソース(すなわち、メモリ)をその論理端末に割当てることが要求される。この方法にはホストシステムからのリソースが必要とされるため、この方法では、ウェブベースのユーザの増加に対して限られた拡張性しか得られない。一般に、企業情報に対して一度にアクセスしているユーザは250人程度である。もちろん、サポートされるウェブベースユーザの人数は、ホストシステムのメモリリソースに依存する。
【0007】
これらの方法の欠点を想定して、ホストシステムにソフトウェアプログラミングおよびテストを追加する必要がなく、ホストシステムのメモリリソースの追加を必要とせず、多数のウェブベースユーザにアクセスを提供できるほど拡張可能であるホストシステム中にある情報にアクセスする方法が必要とされている。
【0008】
【課題を解決するための手段】
本発明によると、ホストシステム中にある情報への直接トランザクションアクセスを行うための方法、コンピュータ読出し可能な媒体およびシステムが提供される。1以上の入力フィールドおよび1以上の出力フィールドを含んでいるクライアントトランザクションが生成される。各クライアントトランザクションについて、クライアントトランザクションは1以上のホストトランザクションにマップされる。ホストトランザクションは1以上のホスト入力フィールドおよび1以上の出力フィールドを含んでいる。ホスト入力フィールドはマッピングにしたがってアドレス可能な参照に分解される。特定のクライアントトランザクションに対するホストトランザクションは、別のクライアントトランザクションに対する別のトランザクションと同時に処理するためにホストシステムに実行依頼される。特定のクライアントトランザクションに対するホストトランザクションからの全ての出力が受取られると、出力はクライアント装置に転送される。
【0009】
あるプログラム命令により符号化されるシステムおよびコンピュータ読出し可能な媒体は、それら両者がおおむね上述のように機能するものであり、本発明の別の特徴を表している。
【発明の実施の形態】
以下の詳細な説明および添付図面を参照することよって、本発明がさらによく理解され、上記の特徴および付随する多数の利点がさらに容易に認識されるであろう。
以下の説明からさらによく認識されるように、本発明はホストシステム上に存在する情報を検索し、そのホストシステムに悪影響を及ぼすことなくその情報をクライアントコンピュータまたは他の装置に提供する。以下さらに詳細に説明するように、本発明は、ホストシステムとクライアント装置(たとえば、ウェブベースのクライアントコンピュータ)との間のトランザクションを実時間で経路設定する。トランザクションは、たとえば顧客の預金額をクライアントコンピュータにより入力した結果、顧客の預金残高がホストシステムにより更新される等の、特定のアクションまたは結果を達成するホストシステムとクライアント装置との間における情報の交換である。本発明はホスト記憶データに対する直接アクセスを行い、ホストシステムの表示装置をナビゲートする必要性をなくす。したがって、ホストシステムからの追加のメモリを必要とせず、また、追加のアプリケーションソフトウェアがホストシステム上にロードされてテストされる必要なしに、所望の情報がさらに適切な時期に獲得される。
【0010】
図1および以下の説明は、本発明が実施されることのできる適切なコンピュータ環境10の簡単で一般的な説明を示している。コンピュータ環境10には、トランザクションサーバ12に接続されたホストシステム14が含まれている。トランザクションサーバ12はまた、相互接続されて構内ネットワーク(LAN)18を形成している複数のコンピュータおよび電子装置(22,24および26) に接続されている。図1に示されている本発明の実施形態では、ホストシステム14は主フレームコンピュータとして示されている。当業者は、主フレームコンピュータが図1に示されているLAN18を形成する他のコンピュータ装置により使用される任意の数のプログラムおよび、またはオペレーティング環境を構成することが可能なことを認識するであろう。たとえば、主フレームコンピュータは、遠隔地のコンピュータで入力されたトランザクションがユーザ書込みアプリケーションプログラムによって同時に処理されることを可能にする顧客情報制御システム(CICS)、または複雑なデータベースおよびネットワーク中のデータの記憶および検索を管理する情報管理システム(IMS)を構成することができる。図1には1つの主フレームコンピュータしか示されていないが、本発明が実施されることのできるコンピュータ環境10には複数のホストシステム14が含まれていてもよいことが認識されるであろう。
【0011】
上述したように、ホストシステム14はトランザクションサーバ12に対して通信リンクを介して直接的に、あるいは他のあるネットワークを介して接続されており、このトランザクションサーバ12は、種々のコンピュータおよび電子装置(22,24および26) により発生されたクライアントトランザクションを、ホストシステム14への経路設定を実時間で行う直接トランザクションマッピングプログラム38を含んでいる。図1に示されている本発明の実施形態において、LAN18はオフィスクライアント22のような種々のクライアントコンピュータ、アプリケーションサーバ24のようなサーバ、およびコールセンター26のような他の電子装置を相互接続するバスネットワークである。当業者によって認識されるように、任意の数または任意のタイプの電子装置および、またはコンピュータシステムがLAN18に接続可能であり、したがって、必要なハードウェアを備えているならばトランザクションサーバ12に接続可能である。このような電子装置およびコンピュータシステムは、ワークステーション、パーソナルコンピュータ、ラップトップコンピュータ、パーソナルデジタルアシスタント、汎用記帳端末、電話機、販売時点情報管理コンピュータシステム、ウェブサーバ、電子カタログサーバ等を含むことができる。しかしながら、本発明を説明するために以下このような全ての電子装置およびコンピュータシステムを包括的に“クライアント装置20”と呼ぶ。
【0012】
LAN18は、ガラスまたはプラスチックの光ファイバケーブル、同軸ケーブル撚線対ケーブル、リボンケーブル等の種々の結合媒体から形成されてもよい。さらに、当業者は、結合媒体には無線周波数結合媒体または他の結合媒体もまた含まれることが可能なことを認識するであろう。現在の商用環境に予め設置された配線の有用性を考慮して、以下に説明する本発明の実施形態ではLAN18を形成するために撚線対の銅ケーブルが使用されている。
【0013】
さらに、当業者は、LAN18がゲートウェイまたはルータを含んでいる場合には、LAN18がさらに別の構内または広域ネットワークと相互接続されてインターネットに接続することが可能であることを認識するであろう。当業者によく知られているように、大文字で始まる“インターネット”という用語は、伝送制御プロトコル/インターネットプロトコル(TCP/IP)を使用して互いに通信するネットワークおよびルータの集合体を示す。LAN18は単一の企業または組織内においてイントラネットとして構成されることができることも認識されるであろう。イントラネットは通常、ウェブページ、ウェブブラウザ、FTPサイト、メール等のインターネットと関連したアプリケーションを使用する。しかしながら、これらのアプリケーションへのアクセスは、その企業または組織内部の者だけに制限される。最後に、当業者は、LAN18がイントラネットとして構成された場合にはウェブテクノロジーを使用してエクストラネットとして外部参与者に拡張されることもまた可能であることを認識するであろう。エクストラネットにより、外部参与者はイントラネットへの限られたアクセスが可能になる。
【0014】
以上本発明が実施されることのできるコンピュータ環境10を説明してきたが、以下においてトランザクションサーバ12をさらに詳細に説明する。図2はトランザクションサーバ12の重要なコンポーネントのいくつかを示している。当業者はトランザクションサーバ12が図2に示されているより多数のコンポーネントを含んでいることを認識するであろう。しかしながら、本発明を実施するために例示的な実施形態を開示するために、これら通常の一般的なコンポーネントを全て図示する必要はない。図2に示されているように、トランザクションサーバ12には、トランザクションサーバ12をクライアント装置20およびホストシステム14に接続するためのネットワークインターフェース32が含まれている。当業者は、ネットワークインターフェース32には、トランザクションサーバ12をLAN18およびホストシステム14に(直接的に、あるいは、おそらく別のネットワーク接続またはネットワーク間接続によって)接続するために必要な回路が含まれていることを認識するであろう。さらに、ネットワークインターフェース32はまたTCP/IPプロトコルおよび特定のタイプの結合媒体により使用されるために構成されていることが認識されるであろう。
【0015】
トランザクションサーバ12はまた、中央処理装置(CPU)30、表示装置34およびマスメモリ36を含んでいる。マスメモリ36には、ランダムアクセスメモリ(RAM)、読出し専用メモリ(ROM)、およびハードディスクドライブ、テープドライブ、光学ドライブ、フロッピーディスクドライブのような永久大容量記憶装置、あるいはその組合せが含まれる。マスメモリ36は、本発明にしたがってホスト記憶データを獲得するためにクライアントトランザクションをホストトランザクションにマッピングするために必要なプログラムコードおよびデータを記憶している。とくに、マスメモリは直接トランザクションマッピングプログラム38と、ホストシステム情報への直接トランザクションアクセスを実施するトランザクション構成データベース40とを記憶する。
【0016】
図3は、直接トランザクションマッピングプログラム38を含んでいるモジュールを示すブロック図である。直接トランザクションマッピングプログラム38は、グラフィックユーザインターフェース(GUI)モジュール42と、構成モジュール44と、クライアント接続モジュール46と、ランタイムトランザクションモジュール48と、ホスト接続モジュール50と、およびホストプールモジュール52とを含んでいる。これらのモジュールは、コンピュータ読出し可能な媒体上に記憶され、フロッピーまたは光学(すなわち、CD−ROM)ドライブのようなコンピュータ読出し可能な媒体に関連したドライブ機構を使用してトランザクションサーバ12のマスメモリ36中にロードされてもよい。これらのモジュール間のトランザクションは図4を参照して最もよく説明される。
【0017】
図4に示されている実施形態において、GUIモジュール42はトランザクションサーバ12を使用する管理者にグラフィック表示またはウインドウを提供する命令を含んでおり、そのグラフィック表示またはウインドウによって管理者は構成モジュール44により使用されるデータおよび命令を入力または選択する。構成モジュール44は管理者により入力されたデータおよび命令を使用して、所望のクライアント・ホスト間トランザクションマッピングを予め構成する。以下さらに詳細に説明するように、これらのマッピングはその後、クライアント装置20によってなされたホストシステム14中のデータに対するリクエストに応答してこのようなデータをホストシステム14から獲得するために使用される。
【0018】
構成プロセス中に生じたクライアントトランザクションとホストトランザクションの間のマッピングは、ランタイムトランザクションモジュール48によるアクセスのためにマスメモリ36内に存在するトランザクション構成データベース40中に記憶される。ランタイムトランザクションモジュール48は、クライアント装置20からのクライアントトランザクションリクエストに応答してクライアントとホストとの間のトランザクションマッピングをトランザクション構成データベース40からロードする。その後、ランタイムトランザクションモジュール48は、リクエストされたクライアントトランザクションにマッピングされたホストトランザクションをホストシステム14に実行依頼し、その結果実行依頼されたホストトランザクションによってリクエストされたデータをホストシステム14が提供する。
【0019】
クライアント装置20からクライアントトランザクションリクエストを受取るために、ランタイムトランザクションモジュール48は、クライアント接続モジュール46とインターフェースしなければならない。クライアント接続モジュール46は、クライアント装置20とクライアント接続モジュール46との間で送られるデータメッセージのフォーマットを記述したトランザクションメッセージプロトコル(TxMsg)を使用することにより異なったタイプのクライアント装置20への標準的なインターフェースを提供する命令を含んでいる。当業者により認識されるように、メッセージのフォーマットは、クライアント接続モジュール46およびクライアント装置20の両者が同じフォーマットを使用している限り、種々の方法で構成されることができる。本発明の1実施形態では、TCP/IPのような任意の既存のプロトコル上にTxMsgが構成されている。
【0020】
TxMsgは、ヘッダおよびオプションデータ部分を含んでいる。図21に示されているように、TxMsg500 のヘッダ502 は、命令コードフィールド504 と、フラッグフィールド506 と、システムフィールド508 と、sessidフィールド510 と、および長さフィールド512 とを含んでいる。命令コードフィールド504 は、メッセージのタイプを特定するパラメータを記憶している。サポートされるメッセージのタイプは、クライアントトランザクションを示す管理者規定コードであってもよいし、あるいはトランザクション識別子を獲得するというリクエストを示すコードのようなシステムコードであってもよい。フラッグフィールド506 は、エラーのようなTxMsg500 の特徴を規定するパラメータを記憶している。システムフィールド508 は一般に、クライアントトランザクションをホストシステム14上のセッションと相関させるタグを示すパラメータを記憶している。このタグは、後続するクライアントトランザクションリクエストが同じセッションを使用できるようにホストシステム14から戻されてもよい。sessidフィールド510 は、ホストトランザクションリクエストのホストプール識別子またはセッション識別子を特定するパラメータを記憶している。このパラメータは、あるホストシステム呼出し時に使用される。長さフィールド512 は、オプションデータ部分514 のサイズを示すパラメータを記憶している。オプションデータ部分514 を含まないメッセージに関して、そのパラメータはゼロである。
【0021】
新しいタイプのクライアント装置20がホストシステム14上の情報にアクセスすることを所望した場合、この新しいタイプのクライアント装置20をサポートするために新しいクライアント接続インターフェースモジュール49がクライアント接続モジュール46に追加される。クライアント接続インターフェースモジュール49の追加はクライアント接続モジュール46に対するソフトウェアコードの追加に過ぎないので、新しいタイプのクライアント装置20がサポートされたときに、別の直接トランザクションマッピングプログラムモジュールは影響を受けない。これは、新しいクライアント装置20をサポートする効率的な方法を提供する。典型的なクライアント接続インターフェースモジュール49には、コンポーネントオブジェクトモジュール(COM),JAVA,アクチブサーバページ(ASP),およびTCP/IPソケットインターフェースが含まれる。当業者により認識されるように、本発明の技術的範囲を逸脱することなくその他のクライアント接続インターフェースモジュール49が追加されることができる。クライアント接続モジュール46に対して任意の数の種々のクライアント接続インターフェースモジュール49が追加されることが可能であり、また、このようなモジュールの内容およびプログラミングは当業者によって容易に行われることができるため、本発明を実施するための例示的な実施形態を開示するためにこれらのインターフェースモジュールをさらに説明する必要はない。
【0022】
ホストトランザクションをホストシステム14に実行を依頼し、その代わりにデータを受取るために、ランタイムトランザクションモジュール48はまた、手続き呼出しおよびプログラミング技術でよく知られている他の標準的な方法によってホスト接続モジュール50とインターフェースしている。ホスト接続モジュール50は、ランタイムトランザクションモジュール48に標準的なインターフェースを提供する1以上のホストコネクタインターフェースモジュール51を含んでいる。示されているように、典型的なホストコネクタインターフェースモジュール51は、たとえば顧客情報制御システム(CICS)、情報管理システム(IMS)、およびトランザクション処理ファシリティ(TPF)等の種々のトランザクションショシステムに対するサポートを、一般的な端末インターフェース(3270,5250,ALC)または直接トランザクションインターフェース(LU0,LU6.2,MQシリーズ)を介して含んでいる。
【0023】
ホスト接続モジュール50はまたホストプールモジュール52とインターフェースし、次にこのホストプールモジュール52は、トランザクション処理のためにホストシステム14中のメモリ領域を提供するホストシステム14とインターフェースする。ホストプールモジュール52は、システムネットワークアーキテクチャ(SNA)/論理装置(LU)カップラ、アドバンスト・プログラム・ツー・プログラム・コミュニケーション(APPC)、MQシリーズおよびトランザクション処理ファシリティ(TPF)/ALCカップラのような1以上のホストプールインターフェース53を含んでいる。ホストプールインターフェースモジュール53は、ホストシステム14とトランザクションサーバ12との間の通信リンクのタイプに依存したインターフェースを提供する。
【0024】
別のタイプのホストシステム14がトランザクションサーバ12に接続することを所望した場合、新しいタイプのホストシステムとそのトランザクションサーバ12への通信リンクとをサポートする新しいホストプールインターフェースモジュール53および対応したホストコネクタモジュール51(必要ならば)がそれぞれホストプールモジュール52およびホスト接続モジュール50に追加される。ホストプールインターフェースモジュール53の追加はホストプールモジュール52に対するコードの追加に過ぎないので、別の直接トランザクションマッピングプログラムモジュールは影響を受けない。これは、新しいホストシステムをサポートする効率的な方法を提供する。ホストプールモジュール52に対して任意の数の種々のホストプールインターフェースモジュール53が追加可能であり、このようなモジュールの内容およびプログラミングは当業者によって容易に行われることができるため、本発明を実施するための例示的な実施形態を開示するためにこれらのインターフェースモジュールをさらに説明する必要はない。
【0025】
先に述べたように、直接トランザクションマッピングプログラム38により、管理者はクライアントトランザクションを1以上のホストトランザクションに直接マッピングすることが可能になる。したがって、本発明はランタイム中にホストスクリーンによるナビゲーションを必要としない。図5は、本発明によるホストトランザクション90にマッピングしているクライアントトランザクション70を示す概略図である。以下、クライアントトランザクション70をマッピングするために使用される構成モジュール44は図6乃至11を参照して説明されている。概略的に説明すると、クライアントトランザクション70はクライアント入力72とクライアント出力74を含んでいる。クライアント入力72は1以上のクライアント入力(CI)フィールド86を含んでおり、クライアント出力74は1以上のクライアント出力(CO)フィールド88を含んでいる。図5に示されている例では、クライアントトランザクション1には2つのクライアント入力フィールド(CI−1およびCI−2)と、3つのクライアント出力フィールド(CO−1,CO−2およびCO−3)が存在する。しかしながら、当業者はクライアントトランザクション70には任意の数の入力および出力フィールドが存在してもよいをことを認識するであろう。
【0026】
他方、ホストトランザクション90はホスト入力92およびホスト出力94を含んでいる。ホスト入力92は1以上のホスト入力フィールド96を含んでおり、ホスト出力94は1以上のホスト出力フィールド98を含んでいる。示されている例では、2つのホストトランザクション:ホストトランザクションAおよびホストトランザクションBが認められる。ホストトランザクションAには3つのホスト入力フィールド(HAI−1,HAI−2およびHAI−3)と、1つのホスト出力フィールド(HAO−1)が存在する。第2のホストトランザクションであるホストトランザクションBには、2つのホスト入力フィールド(HBI−1およびHBI−2)と、2つのホスト出力フィールド(HBO−1およびHBO−2)が存在する。ここでも、当業者はホストトランザクション90には任意の数の入力および出力フィールドが存在してもよいことを認識するであろう。
【0027】
クライアントトランザクション70のクライアント出力フィールド88は、クライアント装置20がホストシステム14から獲得することを所望した情報を記憶する。クライアント出力フィールド88を使用することにより、トランザクションサーバ12の管理者は、所望の結果を得るためにどのホストトランザクション90がクライアントトランザクション70にマッピングされなければならないかを決定することができる。たとえば、図5に示されているように、クライアントトランザクション1のCO−1で示されているクライアント出力フィールドはホストトランザクションAから獲得可能な情報を所望する。クライアント出力フィールドCO−2およびCO−3はホストトランザクションBから獲得可能な情報を所望する。それ故、ホストトランザクションAおよびBの両者がクライアントトランザクション1にマッピングされなければならない。以下において構成モジュール44によるクライアントトランザクションのマッピングは、図6乃至11を参照してさらに詳細に説明されている。
【0028】
図6は、トランザクションサーバ12の管理者がクライアント・ホスト間トランザクションマッピングを構成することを可能にする本発明の構成モジュール44により実施される論理の概要を示すフロー図である。図20A乃至20Gは、構成モジュール44にしたがってクライアント・ホスト間トランザクションマッピングを構成するために管理者により使用される直接トランザクションマッピングプログラム38のGUIモジュール42により生成されるウインドウを示している。当業者は、テキストベースのユーザインターフェースまたは他のインターフェースもまた本発明の技術的範囲を逸脱することなく使用可能であることを認識するであろう。
【0029】
図6中の論理動作は、ブロック100 から始まり、管理者が図20Aに示されているGUI42により発生された新しいホストトランザクションウインドウ700 の中のトランザクションタブ702 を選択することによりホストトランザクション90を生成すると決めたか否かが決定される決定ブロック102 に進む。GUI42はトランザクションサーバ12の表示装置34上に新しいホストトランザクションウインドウ700 を発生するので、管理者は必要なフィールドに容易に進むことができる。トランザクションタブ702 、ホスト入力フィールドタブ704 およびホスト出力フィールドタブ706 という3つのタブが新しいホストトランザクションウインドウ700 のナビゲーションを支援している。示されているように、トランザクションタブ702 は、データをトランザクション氏名フィールド708 中に入力するためのフィールドと、トランザクションIDフィールド710 と、およびホストプールフィールド712 とを提供する。入力フィールドウインドウ707 および出力フィールドウインドウ709 は、異なったグラフィック表示から入力されたデータを示す。新しいホストトランザクションウインドウ700 には、標準的なOKボタン714 および取消しボタン716 も設けられている。さらに、適用ボタン718 は将来のエンハンスメントのために設けられているが、この時点では使用されていない。クライアントトランザクション70がマッピングすることができるように、少なくとも1つのホストトランザクション90が存在していなければならないことが認識されるであろう。したがって、図6中の決定ブロック102 の結果がノーである場合、この決定ブロックは、管理者がホストトランザクション90を生成することを選択するまで単に繰返される。しかしながら、決定ブロック102 の結果がイエスの場合、論理動作は、、管理者により新しいホストトランザクションウインドウ700 中に入力されたトランザクション名(フィールド708 )およびトランザクションID(フィールド710 )を使用してホストトランザクション90が生成されるブロック104 に進む。以下において、このデータを使用することによるホストトランザクション90の生成が図7、20Bおよび20Cを参照してさらに詳細に説明されている。
【0030】
ホストトランザクション90が生成されると、論理動作は、、管理者が別のホストトランザクション90を生成することを選択したか否かが決定される決定ブロック106 に進む。イエスならば、論理動作は、、管理者が所望するように別のホストトランザクション90が生成されるブロック104 に戻る。その後、ブロック104 および106 は、管理者により所望された全てのホストトランザクション90が生成されるまで繰返される。その結果、多数のホストトランザクション90が生成される可能性もあるし、あるいは管理者により所望された場合には1つしか生成されない可能性もある。当業者は、トランザクションサーバ12に接続された各ホストシステム14がある情報へのアクセスを含んでいることを認識するであろう。その情報は、どのホストトランザクション90が入手可能であるかを決定する。一般に、管理者は、クライアントトランザクション70を生成する前にトランザクションサーバ12に接続されたホストシステム14から入手可能な全てのホストトランザクション90を生成することが望ましい。このようにして処理を進めることにより、管理者は、クライアントトランザクション70を生成するときには入手可能な全てのホストトランザクション90を知っていることができる。
【0031】
決定ブロック106 に戻り、別のホストトランザクションがこの時点では生成されないと決定された場合、論理動作は、決定ブロック108 に進む。決定ブロック108 では、生成されたばかりのホストトランザクション90がマップされるべきクライアントトランザクション70を生成することを管理者が選択したか否かが決定される。とくに、図20Dに示されている実施形態では、GUI42により発生された新しいクライアントトランザクションウインドウ800 の中のトランザクションタブ802 を管理者が選択したか否かが決定される。GUI42はトランザクションサーバ12の表示装置34上に新しいクライアントトランザクションウインドウ800 を発生するので、管理者は必要なフィールドに容易に進むことができる。クライアントトランザクションタブ802 、クライアント入力フィールドタブ804 およびクライアント出力フィールドタブ806 という3つのタブが新しいクライアントトランザクションウインドウ800 のナビゲーションを支援している。示されているように、クライアントトランザクションタブ802 は、データをクライアントトランザクション名称フィールド808 中に入力するためのフィールドと、クライアントトランザクションIDフィールド810 とを提供する。クライアント入力フィールドウインドウ807 およびクライアント出力フィールドウインドウ809 は、異なったグラフィック表示から入力されたデータを示す。新しいクライアントトランザクションウインドウ800 には、標準的なOKボタン814 および取消しボタン816 も設けられている。さらに、将来のエンハンスメントのために適用ボタン818 が設けられているが、現時点では使用されていない。
【0032】
管理者がクライアントトランザクション70を生成しないと決めた場合、論理動作は、管理者がそうしようと決めるまで決定ブロック108 の処理を繰返す。他方、管理者がクライアントトランザクション70を生成することを選んだ場合には、論理動作は、管理者により新しいクライアントトランザクションウインドウ800 中に入力されたトランザクション名称(フィールド808 )およびトランザクションID(フィールド810 )を使用してクライアントトランザクション70が生成されるブロック110 に進む。以下において、この情報を使用することによる実際のクライアントトランザクション70の生成が図8、20Eおよび20Fを参照してさらに詳細に説明されている。
【0033】
クライアントトランザクション70を生成した後、論理動作は、管理者がGUIにより発生された図20Gに示されているTxMapperウインドウ900 によってクライアントトランザクション70を1以上のホストトランザクション90にマップすることを可能にされるブロック112 に進む。以下において、クライアントトランザクション70をマップするプロセスが図9および20Gを参照してさらに詳細に説明されている。その後、論理動作は、管理者が別のクライアントトランザクション70を生成すると決めたか否かが決定される決定ブロック114 に進む。イエスならば、論理動作は、ブロック110 に戻って、管理者が所望する数のクライアントトランザクション70を生成してマップするまで、ブロック110 乃至114 が繰返される。
【0034】
しかしながら、この時点で別のクライアントトランザクション70が生成されない場合でも、論理動作は決定ブロック114 から、クライアントトランザクションマップがトランザクション構成データベース40に保存されるブロック116 に進む。クライアントトランザクションマップにはクライアント入力フィールドが含まれ、これらのクライアント入力フィールドは、それらがマップされているホストトランザクション入力フィールドを参照する。この参照は、ホスト名およびトランザクション名を示すテキストストリングまたは任意の他のインジケータによって表されてもよい。同様に、クライアント出力フィールドは、それらがマップされているホストトランザクション出力フィールドを参照する。クライアントトランザクションマップが保存されると、構成モジュールはブロック117 で終了する。当業者は、図6が構成モジュール44の概要を示しており、また、ブロック中の処理が本発明の技術的範囲を逸脱することなく任意の順序で行われてもよいことを認識するであろう。
【0035】
図7は、図6のブロック104 において要求されるホストトランザクション90を生成するために使用される論理手順を示すフロー図である。論理動作はブロック118 から始まり、ホストトランザクションマップがすでに存在しているか否かが決定される決定ブロック120 に進む。ホストトランザクションマップは、特定のホストトランザクションに対する入力および出力表示データを規定するファイルである。たとえば、いくつかのホストシステムはアプリケーションプログラムと、入力および出力表示データが種々の端末により使用される制御文字に無関係にフォーマットされることを可能にするホストアプリケーションとの間のインターフェースをサポートする。一例はインターナショナル・ビジネス・マシンズ(IBM)社により生成されたベイシック・マッピング・サポート(BMS)マップである。ホストトランザクションマップが存在している場合、論理動作はブロック126 に進み、このブロック126 では、予め存在しているホストトランザクションマップがホストシステム14からインポートされ、ホストトランザクション90に対する新しい入力および出力フィールドを生成するのではなく、むしろそのマップが使用される。
【0036】
決定ブロック120 に戻り、ホストトランザクションマップが存在しない場合、論理動作は、ホストトランザクション90の入力フィールド92が管理者により生成されるブロック122 に進む。とくに、図20Bに示されている本発明の1実施形態において、管理者がホストトランザクション90のトランザクション名(DPL LU)およびトランザクションIDを入力し、図20Aに示されている新しいホストトランザクションウインドウ700 中のホスト入力フィールドタブ704 を選択した後に、編集ホストトランザクションウインドウ701 が発生される。それによって、管理者は、生成されている特定のホスト入力に対する特有の名称をホスト入力名フィールド720 中に入力することによってホスト入力92を生成することができる。
【0037】
その後、管理者は、ホスト入力名フィールド720 において特定される入力フィールドに対するデータの内容を記述する別のフィールド中に追加情報を入力してもよい。たとえば、ホスト入力サイズフィールド722 は、特定のホスト入力フィールドのサイズをバイトまたはその他の単位で示す。ホスト入力フィールドタイプフィールド724 は、ホスト入力フィールド中に記憶されるデータのタイプを指定するために使用される。代表的なタイプには、ストリング、整数またはバイト流が含まれる。ホスト入力フォーマットフィールド726 は、ホスト入力フィールドタイプフィールド724 で指定されたホスト入力フィールドタイプに対するフォーマットのタイプを示す。ストリングフィールドタイプに対する代表的なフォーマット入力にはASCII,EBCDIC,パック10進数および2進化10進法(BCD)が含まれ、整数およびバイトの両者について、フィールドタイプにはバイトの数が含まれる。
【0038】
ホスト入力タイプフィールド728 もまた設けられており、このフィールド728 は、入力フィールドが要求される(データのソースへの参照を必要とする)か、あるいはデフォルト(静的データ)であるかを示す値を記憶する。ホスト入力値フィールド730 は、入力タイプがデフォルトである場合には入力フィールドに記憶される値を指定する。ホスト入力値フィールド730 は、入力フィールドに記憶される値が別のソースから獲得されなければならない場合には使用できない。ホスト入力フィールドタイプフィールド724 、ホスト入力フォーマットフィールド726 およびホスト入力タイプフィールド728 はそれぞれ、管理者が選択を行うことのできるプルダウンメニューとして構成されていることが認識されるであろう。適切なフィールドが全て管理者によって完成される(完成がOKボタン734 の選択によって通知される)と、完成したホスト入力フィールド92がホスト入力ウインドウ732 中に示される。たとえば、名称“TX”を有するホスト入力フィールド92は、デフォルトを指定した入力タイプと、L002の値と、ストリングのフィールドタイプと、EBCDIDのフォーマットと、および4のサイズとを有するものとして示されている。
【0039】
図7に戻ると、ホストトランザクション90のホスト入力フィールド96が生成された後、論理手順は、ホストトランザクション90の出力フィールド98が管理者によって生成されるブロック124 に進む。とくに、図20Cに示されている1実施形態において、管理者が図20Aに示されている新しいホストトランザクションウインドウ700 中の出力フィールドタブ706 を選択した後に、編集ホストトランザクションウインドウ703 が発生される。それによって、管理者は、図20Bに示されている入力フィールドに類似したフィールド中に情報を入力することによってホスト出力94を生成することができる。そのフィールドの符号はプライム“´”を付けて示されており、それによって説明は同じであるが、入力フィールドではなく出力フィールドに関するものであることを表している。したがって、上述した図20Bに対する説明は図20Cにも該当する。認識されるように、入力および出力フィールドを生成する別の方法が本発明の技術的範囲を逸脱することなく使用されることができる。
【0040】
図7に戻ると、ブロック122 および124 で入力フィールド96および出力フィールド98がそれぞれ生成された後、あるいはホストトランザクションマップがホストシステム14からインポートされた後、論理手順は、ホストトランザクション90をホストシステム14に実行依頼するためにホストプール、すなわち、ホスト記憶領域が利用可能か否かが決定されるブロック128 に進む。ホストプールは各ホストトランザクション90をホストシステム14上の特定の文脈と関連付けて処理を可能にする。当業者は、ある文脈が、ポインタによってシステムオブジェクトへのアクセスを可能にするシステムオブジェクトであることを認識するであろう。利用可能なホストプールが全くない場合、論理動作は、ホストシステム14の適切な領域に対するホストプール接続が生成されるブロック130 に進む。論理動作は、セッション、すなわち、トランザクションサーバ12とホストシステム14との間の通信の期間がホストプールに割当てられるブロック132 に進む。その後、論理動作は、ブロック133 で終了する。
【0041】
ホストシステム14は、LU0およびLU2領域のようなすでに規定された領域を有している。これらの領域は、処理が行われることを可能にし、特有のジョブまたはシステムタスクに割当てられる動的領域の可変サイズの細分化されたものである。本発明は、各ホストトランザクションを適切な領域に割当てる。たとえば、図4に示されているように、LU0インターフェースに対する“CICS”ホストコネクタインターフェースモジュール51はホストシステム14のLU0領域に割当てられる。各領域は動作している複数の作業スレッドを有しており、ホストトランザクション90に割当てられてもよい。特定の領域に割当てられたホストトランザクション90は、非同期的な方法で作業スレッドを共有してもよい。作業スレッドの割当てはそのトランザクションの実行の持続期間中行われているが、しかしながらそのトランザクションはある事象を待ちながらそのスレッドを放棄してもよい。これによって、本発明はホストシステム14の性能に影響を与えずに付加的なクライアント装置20を追加することが可能になる。図7の決定ブロック128 に戻ると、ホストプールがホストトランザクション90に対して利用可能である場合、ホストプールを生成してセッションを割当てるために追加の処理は必要ない。したがって、論理動作は、ブロック133 で直ちに終了する。
【0042】
図6を参照して上述したように、所望のホストトランザクション90が生成されると(ブロック102 乃至106 )、ホストトランザクション90にマップすべき少なくとも1つのクライアントトランザクション70が生成されなければならない。これら関して、図8は、図6のブロック110 で要求されるクライアントトランザクション70を生成するために使用される論理動作を示している。この論理動作はブロック138 から始まり、クライアントトランザクション70に対する入力フィールド86が管理者によって生成されるブロック140 に進む。図20Eにさらに詳細に示されているように、管理者が新しいクライアントトランザクションウインドウ800 中の入力フィールドタブ804 を選択した後に、GUI42は編集クライアントトランザクションウインドウ801 を発生する。それから、管理者は、生成されている特定のクライアント入力に対する特有の名称をクライアント入力名フィールド820 中に入力することによってクライアント入力フィールドを生成することができる。
【0043】
その後、管理者は、クライアント入力名称フィールド820 において特定される入力フィールドに対するデータの内容を記述する別のフィールド中に追加情報を入力してもよい。クライアント入力サイズフィールド822 は、特定のクライアント入力フィールドのサイズをバイトまたはその他の単位で示す。クライアント入力フィールドタイプフィールド824 は、クライアント入力フィールド中に記憶されるデータのタイプを指定するために使用される。代表的なタイプには、ストリング、整数またはバイト流が含まれる。クライアント入力フォーマットフィールド826 は、クライアント入力フィールドタイプフィールド824 で指定されたクライアント入力フィールドタイプに対するフォーマットのタイプを示す。ストリングフィールドタイプに対する代表的なフォーマット入力にはASCII,EBCDIC,パック10進数および2進化10進法(BCD)が含まれ、整数およびバイト流の両者について、フィールドタイプにはバイトの数を表す数が含まれる。クライアント入力タイプフィールド828 は、入力フィールドが要求される(データのソースへの参照を必要とする)か、あるいはデフォルト(静的データ)であるかを示す値を記憶する。クライアント入力値フィールド830 は、入力タイプがデフォルトである場合には入力フィールドに記憶される値を指定する。クライアント入力値フィールド830 は、入力フィールドに記憶される値が別のソースから獲得されなければならない場合には使用できない。フィールドタイプフィールド824 、フォーマットフィールド826 および入力タイプフィールド828 はそれぞれプルダウンメニューとして構成されていることが認識されるであろう。適切なフィールドが全て管理者によって完成されると、完成したクライアント入力フィールド86がクライアント入力ウインドウ832 中に示される。たとえば、名称“AccountNumber”を有するクライアント入力フィールド86は、要求を指定した入力タイプと、ストリングのフィールドタイプと、そのストリングに対してEBCDIDのフォーマットと、14バイトのサイズとを有するものとして示されている。
【0044】
図8に戻ると、クライアント入力フィールド86が生成された後、論理動作はクライアントトランザクション70の出力フィールド88が管理者によって生成されるブロック142 に進む。図20Fに詳細に示されているように、管理者が新しいクライアントトランザクションウインドウ800 から出力フィールドタブ806 を選択した後、GUI42が編集クライアントトランザクションウインドウ803 を発生する。それによって、管理者は、図20Eに示されているクライアント入力フィールドに類似したフィールド中に情報を入力することによってクライアント入力フィールド86を生成することができる。そのフィールドに付けられている符号はプライム“´”を付けて示されており、それによって説明は同じであるが、入力フィールドではなく出力フィールドに関するものであることを表している。したがって、上述した図20Eに対する説明は図20Fにも該当する。クライアントトランザクション70の出力フィールド88および入力フィールド86が生成された後、図8の論理動作はブロック143 で終了する。
【0045】
図6を参照して上述したように、所望のクライアントトランザクション70が生成される(ブロック110 )と、管理者はクライアントトランザクション70を前に生成されたホストトランザクションにマップすることが可能になる(ブロック112 )。図9は、図6のブロック112 で要求されるように1以上のホストトランザクションにクライアントトランザクション70をマップすることを可能にするために構成モジュール44によって使用される論理手順を示すフロー図である。一般に、マッピングプロセスは、ホストシステム14からデータを獲得することを要求されたホストトランザクション90にクライアントトランザクション70を関連付ける。関連付けられたホストトランザクション90は“依存ホストトランザクション”と呼ばれる。これは、クライアントトランザクション70がそれらに依存しているからである。
【0046】
図9の論理動作はブロック148 から始まり、依存ホストトランザクション90が所定のクライアントトランザクション70に対して存在するか否かが決定されるブロック150 に進む。イエスならば、論理動作は、第1の依存ホストトランザクションが獲得されるブロック153 に進む。1つの依存ホストトランザクションも存在しない場合は、論理動作は、、図7に示されている上述のプロセスにしたがってホストトランザクションが生成されるブロック152 に進む。
【0047】
少なくとも1つの依存ホストトランザクション90が存在すると、論理動作は、所定のクライアントトランザクション70のクライアント入力フィールド86が依存ホストトランザクション90の適切なホスト入力フィールド96にマップされるブロック154 に進む。図20Gにさらに詳細に示されているように、管理者がマップトランザクションタブ902 を選択したときに、GUI42がTxMapperウインドウ900 を発生する。TxMapperウインドウ900 を使用することによって、管理者は入力および出力フィールドをドラッグして互いの上にドロップするためにドラッグおよびドロップ特徴を使用して、クライアントとホストとの間のトランザクションマッピングを容易に生成することができる。以下において、このプロセスは図10および図20Gを参照してさらに詳細に説明されている。
【0048】
図9に戻ると、クライアント入力フィールド86がホスト入力フィールド96にマップされると、論理手順は、以下図11および図20Gを参照してさらに詳細に説明するように、管理者がTxMapperウインドウ900 によって現在の依存ホストトランザクション90のホスト出力フィールド98を所定のクライアントトランザクション70のクライアント出力フィールド88にマップすることを可能にされるブロック156 に進む。次に、決定ブロック158 において、現在の依存ホストトランザクション90がクライアントトランザクション70を適当にマップするために必要とされる最後の依存ホストトランザクションであるか否かが論理により決定される。ノーならば、論理動作は、次の依存ホストトランザクション90が検索されるブロック160 に進む。その後論理動作は、ブロック154 に戻り、所定のクライアントトランザクション70に関連付けられた全ての依存ホストトランザクション90がそのクライアントトランザクション70にマップされるまで、ブロック154 乃至160 が繰返される。したがって、現在の依存ホストトランザクション90が最後の依存ホストトランザクションである場合には、クライアントトランザクション70のマッピングは完了し、論理動作は、ブロック159 で終了する。
【0049】
図10は、図9のブロック154 において要求されるように所定のクライアントトランザクション70のクライアント入力フィールド86を依存ホストトランザクション90のホスト入力フィールド96にマップするために構成モジュール44により使用される論理手順を示すフロー図である。論理動作はブロック161 から始まり、第1のホスト入力フィールド96(現在のホスト入力フィールド)(図5中のHAI−1を参照)がホストトランザクション90から検索されるブロック162 に進む。その後、論理動作は、管理者が依存ホストトランザクション90の現在のホスト入力フィールド96に対するデータのソースを指定するブロック164 に進む。図7および図20Bを参照して上述したように、管理者がホスト入力タイプフィールド728 において“デフォルト”を選択した場合、その管理者はまたホスト入力値フィールド730 において値を指定する。しかしながら、管理者がホスト入力タイプフィールド728 において“要求”を選択した場合には、ホスト入力をシステム設定、異なったトランザクションからのホスト入力またはクライアント入力にマップしなければならない。このマッピングは以下において図20Gを参照して説明される。データのソースは、ホスト出力データ(すなわち、別のホストトランザクション90のホスト出力フィールドに記憶されたデータ)、静的データ(たとえば、デフォルト値またはシステム設定のような)、またはクライアント入力データ(すなわち、マップされているクライアントトランザクション70のクライアント入力フィールドに記憶されたデータ)であってもよい。その後、論理動作は、管理者がドラッグ・ドロップ操作を使用してデータのソースを現在のホスト入力フィールド96にマップするブロック166 に進む。
【0050】
とくに図20Gに示されているように、クライアントトランザクションプルダウンメニュー914 により、管理者はマップされるべきクライアントトランザクション70(C DPL LU0)を選択することが可能になる。クライアントトランザクションが選択されると、クライアント入力フィールド96(第1,第2)がクライアントトランザクション入力フィールドウインドウ918 内に現れ、クライアント出力フィールド98(結果)がクライアントトランザクション出力フィールドウインドウ920 内に現れる。その後、管理者はホストトランザクションのドロップダウンメニュー916 を使用して第1の依存ホストトランザクション(AMAI)を選択する。再び、第1の依存ホストトランザクションが選択されると、ホスト入力フィールドウインドウ922 が選択されたホストトランザクションに対して要求されるホスト入力フィールド96を表示し、ホスト出力フィールドウインドウ924 がホストトランザクションを処理した後でホストシステム14から得られたホスト出力フィールド98を表示する。たとえば、管理者はクライアント入力フィールド“第1”をホスト入力フィールド“AMRT029”上にドラッグし、所望のホスト入力フィールド“AMRT029”と関連付けられたマップフィールド923 中にこの“第1”をドロップすることができる。当業者は、ホスト入力フィールド“ TXCODE”が、マップされたデータが静的であるデフォルトにマップされていることを認識するであろう。
【0051】
第1のホスト入力フィールド96がマップされた後、論理動作は、依存ホストトランザクション90中の最後のホスト入力フィールド96が処理されたか否かを決定する決定ブロック168 に進む。ノーならば、論理動作は、次のホスト入力フィールド96が検索されて現在のホスト入力フィールドになるブロック170 に進む。その後、論理動作はブロック164 に戻り、依存ホストトランザクション90の全てのホスト入力フィールド96がマップされるまで、ブロック164 乃至170 が繰返される。したがって、決定ブロック168 において、依存ホストトランザクションの現在のホスト入力フィールドが最後のホスト入力フィールドである場合、ホスト入力フィールドに対するクライアント入力フィールドのマッピングは完了し、論理動作はブロック169 で終了する。
【0052】
図11は、図9のブロック154 において要求されるようにホスト出力フィールド98をクライアント出力フィールド88にマップするために構成モジュール44により使用される論理手順を示すフロー図である。論理手順は、ブロック171 から始まり、第1のクライアント出力フィールド88(現在のクライアント出力フィールド)(図5のCO−1参照)がマップされているクライアントトランザクション70から検索されるブロック172 に進む。その後、論理動作は、管理者が現在のクライアント出力フィールド88に対するデータ(すなわち、上述したように、データ出力、静的またはクライアント入力)のソースを指定するブロック174 に進む。これもまた、管理者がクライアント入力タイプフィールド828 において“デフォルト”または“要求”をどのようにして選択することができるかを示している図20Eを参照して上述された。その後、論理動作は、管理者がドラッグ・ドロップ操作を使用してデータのソースを現在のクライアント出力フィールド88(図5におけるCO−1に記憶された“HAO−1”参照)にマップするブロック176 に進む。
【0053】
とくに図20Gに示されているように、クライアントトランザクションのプルダウンメニュー914 およびホストトランザクションのプルダウンメニュー916 が上述のようにクライアントトランザクション70およびマップされるべきホストトランザクション90を選択するために管理者により使用される。しかしながら、この場合、管理者はホストトランザクション出力フィールド96(AMRT215)を選択し、それをクライアントトランザクション出力フィールドウインドウ920 上にドラッグして、所望のクライアント出力88と関連付けられたクライアントマップフィールド921 中にドロップしている。
【0054】
クライアント出力フィールド88がマップされた後、論理動作は、現在のクライアント出力フィールド88が所定のクライアントトランザクション70の中の最後のクライアント出力フィールドであるか否かが決定される決定ブロック178 に進む。ノーである場合、論理動作は、クライアントトランザクション70の次のクライアント出力フィールド88が検索されて現在のクライアント出力フィールドになるブロック180 に進む。その後、論理動作はブロック174 に戻り、所定のクライアントトランザクション70の全てのクライアント出力フィールド88がマップされるまで、ブロック174 乃至180 が繰返される。したがって、決定ブロック178 において、クライアントトランザクション70の現在のクライアント出力フィールド88が最後のクライアント出力フィールドである場合、クライアント出力フィールド88のマッピングは完了し、論理動作は、ブロック179 で終了する。
【0055】
再び図20Gを参照すると、TxMapperウインドウ900 にはシステムフィールドウインドウ926 およびステージフィールドウインドウ928 も含まれている。システムフィールドウインドウ926 は、現在の日付、時刻およびサーバ名のようなシステム情報927 のための参照を含んでいる。システム情報927 は同様に、上述したようにドラッグされて、ホスト入力フィールドウインドウ922 またはクライアント出力フィールドウインドウ920 のいずれにドロップされてもよいことが認識されるであろう。他方、ステージフィールドウインドウ928 は、別のホストトランザクション90ではホストトランザクションの入力フィールド96用のデータソース(図5におけるHAI−3に記憶される“HBO−1”参照)として使用されるホスト出力フィールド98のための一時記憶域として管理者によって使用されることができる。管理者は最初にホストトランザクションのプルダウンメニュー916 を使用してホストトランザクションを選択し、所望のホスト出力フィールド98を選択して、それをステージフィールドウインドウ928 中にドロップする。その後、管理者は別のホストトランザクション選択し、ステージフィールドウインドウ928 中の出力を別のホストトランザクションのホスト入力フィールドウインドウ922 にドラッグすることができる。上述したように、この実施形態により、ユーザはグラフィック手順を使用して、基礎をなすコードを全く書込まずにクライアントトランザクションを生成しマップすることが可能になる。
【0056】
図6を参照して上述したように、管理者が所望のクライアントトランザクション70を全て生成してマップすると、クライアントトランザクションマップは、ランタイムトランザクションモジュール48によるアクセスのためにトランザクションデータベース40中に記憶される。このようにしてデータが記憶されると、ランタイムトランザクションモジュール48をスタートさせて、ホストシステム14上に存在するデータに対する直接トランザクションアクセスを行うために十分な情報が利用できる。
【0057】
図12は、直接トランザクションマッピングプログラム36のランタイムトランザクションモジュール48により使用される論理の概要を示すフロー図である。論理動作手順はブロック181 からスタートし、ブロック182 に進み、このブロック182 においてランタイムトランザクションモジュール48が初期化される。この初期化プロセス48は以下において図13を参照してさらに詳細に説明される。簡単に述べると、初期化プロセスはトランザクションデータベース40を開いて、そこに記憶されている各クライアントとホストとの間のトランザクションマッピングのテンプレートを構成する。その後、これらのテンプレートは、適切なホスト情報を獲得するためにクライアント装置20によりホストシステム14に対してなされたクライアントトランザクションリクエストの経路を設定するために使用される。ランタイムトランザクションモジュール48を初期化した後、論理動作は、クライアント通信のサーバ側がソケットを開いてリソースをチェックし、クライアントトランザクションが処理できるように割当てられたワーカースレッドをスタートさせること等により初期化されるブロック184 に進む。次にブロック186 において、トランザクションサーバ12とホストシステム14との間のセッションが始まるように、ホストプールモジュール52が初期化される。ホストシステム14との通信を設定するために必要な初期化は当業者により容易に認識されるので、ここではさらに説明しない。
その後、論理動作はブロック188 に進み、ここで論理動作はクライアントトランザクションリクエストをクライアント装置20から受信するために待っている。クライアントトランザクションリクエストが受信されると、論理動作は、リクエストされたトランザクションに対応したテンプレートが存在することを確実にするためにクライアントトランザクションリクエストがランタイムトランザクションモジュール48によりその妥当性を検査されるブロック190 に進む。この妥当性検査プロセスは、以下において図15を参照してさらに詳細に説明される。
【0058】
その後、論理手順はブロック192 に進み、このブロック192 においてクライアントトランザクションリクエストの経路が設定され、リクエストされたクライアントトランザクション70にマップされるホストトランザクション90が適切なデータを得るためにホストシステム14に実行依頼される。以下、クライアントトランザクションリクエストの処理は図17を参照してさらに詳細に説明されている。その後、論理動作は、管理者がランタイム動作の停止をリクエストしたか否かが決定される決定ブロック194 に進む。答えがノーならば、論理動作は、そのプロセスが別のクライアントトランザクションリクエストを待っているブロック188 に戻り、したがってブロック188 乃至194 が繰返される。ランタイム動作が停止された場合、論理動作はブロック195 で終了する。ランタイム動作が停止されると、トランザクションサーバ12はもはやトランザクションの経路設定をせず、リソースの割当てを解除することのできるプロセスを行う。
【0059】
図13は、図12のブロック182 において要求されるようにランタイムトランザクションモジュールを初期化するためにそのランタイムトランザクションモジュール48によって使用される論理手順を示すフロー図である。一般に、初期化プロセスは、トランザクションデータベース40に記憶されているクライアント出力フィールドおよびホスト入力フィールド中の参照(代表的に、本分の参照)をランタイム動作中に実行されるアドレス可能な参照(ポインタ)に分解することによって、トランザクションデータベース40に記憶されている各クライアントとホストとの間のトランザクションマッピングのテンプレートを生成する。この時点で参照をアドレス可能な参照に分解することによって、トランザクションの処理がさらに速くなる。
【0060】
図13中の論理手順はブロック199 から始まり、構成モジュール44によって生成されたトランザクションデータベース40が開かれるブロック200 に進む。次にブロック202 において、トランザクションデータベース40に記憶された第1のクライアントトランザクション70が検索される。当業者は、トランザクションデータベース40全体の内容がトランザクションサーバ12のマスメモリ36中に一時にロードされるか、あるいは必要とされたときにその内容全体より少ない量の部分がロードされることが可能であることを認識するであろう。その後、論理動作は、検索されたクライアントトランザクション70の第1のクライアント出力フィールド88(現在のクライアント出力フィールド)の内容が読出されるブロック204 に進む。決定ブロック206 において、現在のクライアント出力フィールド88(図5中のCO−1参照)がホスト出力フィールド98にマップされているか否かが決定される。ノーならば、クライアント出力フィールド88はローカルデータソース(たとえば、システム時間、システム日付)にマップされなければならず、論理動作は、ブロック208 に進み、このブロック208 においてローカルデータソースからのデータがクライアント出力フィールド中にコピーされる。
【0061】
現在のクライアント出力フィールド88がホスト出力フィールド98にマップされている(たとえば、図5中のHAO−1にマップされたCO−1参照)場合、論理動作は、ブロック210 に進み、このブロック210 において、ホスト出力フィールド(図5中のHAO−1参照)に対する内容、すなわち同じホストトランザクション90のホスト入力フィールド96を発生するホスト入力フィールド(図5中のHAI−1,HAI−2,HAI−3参照)は、ポインタのようなアドレス可能な参照に分解される。ホスト入力フィールド96を分解するプロセスは、図14を参照して以下さらに詳細に説明する。ホスト入力フィールド96を分解した後、論理手順はブロック212 に進み、このブロック212 において、現在のクライアント出力フィールド88が検索されたクライアントトランザクション70の最後のクライアント出力フィールドであるか否かが決定される。ノーならば、論理動作は、次のクライアント出力フィールド88が検索されたクライアントトランザクション70から検索されて、現在のクライアント出力フィールドになるブロック214 に進む。その後、論理動作はブロック206 に戻り、ブロック206 乃至214 が各クライアント出力フィールド88に対して繰返される。ブロック206 ,208 ,210 ,212 および214 において行われた処理によって、妥当性検査中に使用され、図15において説明されるクライアントトランザクションに対するテンプレートが生成されることが認識されるであろう。
【0062】
現在のクライアント出力フィールド88(図5中のCO−3参照)が検索されたクライアントトランザクション70の中の最後のクライアント出力フィールドである場合、論理動作は決定ブロック216 に進み、現在のクライアントトランザクション70がトランザクションデータベース40中の最後のクライアントトランザクションであるか否かが決定される。ノーならば、ブロック218 において次のクライアントトランザクション70が検索され、トランザクションデータベース40に記憶されている各クライアントトランザクション70に対してブロック204 乃至218 が繰返される。決定ブロック216 において、現在のクライアントトランザクション70が最後のクライアントトランザクションである場合、ランタイムトランザクションモジュール48を初期化するプロセスは完了し、ブロック219 において論理処理が終了する。
【0063】
図14は、図13のブロック210 で要求されるようにホスト入力フィールドを分解するために使用される論理手順を示すフロー図である。論理手順はブロック220 からはじまり、前にマップされたホストトランザクション90がトランザクションデータベース40からロードされるブロック221 に進む。ホストトランザクション90は、上述したように構成モジュール44により現在のクライアントトランザクション70にマップされたことが認識されるであろう。その後、論理動作は、第1のマップされたホスト入力フィールド96(現在のマップされたホスト入力フィールド)(図5中のHAI−1参照)がホストトランザクション90から獲得されるブロック222 に進む。その後、論理動作は、現在のホスト入力フィールド96が別のホストトランザクション90からのホスト出力フィールド98にマップされるか否かを決定する決定ブロック224 に進む。ノーならば、論理動作は、ブロック226 に進み、このブロック226 において、ローカルデータソースからのデータまたはクライアント入力データへのアドレス可能な参照が現在のホスト入力フィールド(図5におけるHAI−1およびHAI−2参照)中に記憶される。
【0064】
決定ブロック224 に戻って、現在のホスト入力フィールド96が別のホストトランザクション90からのホスト出力フィールド98にマップされている(たとえば、図5中のHAI−3参照)場合、論理動作はブロック228 に進み、このブロック228 において、現在のホストトランザクションがマップされている別のホストトランザクションのホスト入力フィールド96が最初に分解される。したがって、図14に示されている同じ論理動作に対して再帰呼出しが行われ、ロードされて分解されたホストトランザクション90は、ホスト入力フィールドにマップされたホスト出力フィールドを有するホストトランザクションである。
【0065】
このような処理の一例は、ホストトランザクションAの入力フィールドHAI−3がホストトランザクションBの出力フィールドHBO−1にマップされている図5に示されている。したがって、ホストトランザクションAの入力フィールドHAI−3が分解されることができる前に、ホストトランザクションBのホスト入力フィールド(HBI−1およびHBI−2)が分解されていなければならない。したがって、ホストトランザクションが別のホストトランザクションを参照するホスト入力フィールド96を有しなくなるまでホストトランザクション90を分解するためにプロセスが続行する。この再帰プロセスが完了すると、論理動作は図14において、現在のホスト入力フィールド96がロードされたホストトランザクション90の中の最後のマップされたホスト入力フィールドであるか否かが決定される決定ブロック230 に進む。ノーならば、論理動作はブロック232 に進み、このブロックにおいて次のマップされたホスト入力フィールド96が検索されて現在のマップされたホスト入力フィールドになる。その後、論理動作は、決定ブロック224 に戻り、ブロック224 乃至232 がロードされたホストトランザクション90中の各マップされたホスト入力フィールド96に対して繰返される。決定ブロック230 において、現在のホスト入力フィールド96が最後のマップされたホスト入力フィールドである(例えば、図5中のHBI−2参照)場合、ホスト入力フィールドの分解は完了し、ブロック233 において論理動作が終了する。
【0066】
図15は、図12のブロック190 において要求されるようにクライアント装置20により実行依頼されたクライアントトランザクションリクエストの妥当性を検査するために使用される論理手順を示すフロー図である。クライアントトランザクションリクエストのクライアント出力フィールド88の妥当性検査は、ホスト入力フィールド96を分解するために図14に示されたものに類似した論理処理を使用する。この論理処理はブロック239 から始まり、ブロック240 に進み、このブロックにおいて、クライアントトランザクションがリクエストされたときにクライアントトランザクション70およびホストトランザクション90のクライアントおよびホスト入力および出力フィールドが再度分解されなくてもよいように、ランタイムトランザクションモジュール48を初期化しながら生成されたクライアントトランザクションテンプレートがコピーされる。そのテンプレートを使用することによって、本発明は、処理前の適時にクライアントトランザクションリクエストの妥当性を検査することができる。別の実施形態において、テンプレートを使用する代りに、妥当性検査プロセスが、クライアントトランザクションリクエストが受信されたときに各クライアントトランザクションリクエストに対する入力および出力を分解する。しかしながら、テンプレートを使用する実施形態では、クライアントトランザクションテンプレートをコピーした後、論理動作は決定ブロック242 に進み、このブロックにおいて、リクエストされたテンプレートが存在するか否かが決定される。テンプレートが存在しない場合、論理動作は、エラーメッセージがクライアント装置20に送られるブロック244 に進む。その後、ブロック245 で論理処理が終了する。
【0067】
決定ブロック242 に戻って、リクエストされたテンプレートが存在する場合、論理処理は、ブロック246 に進み、このブロック246 で、リクエストされたクライアントトランザクションテンプレートの第1のクライアント出力フィールド88(現在のクライアント出力フィールド)が検索される。その後、論理処理は、現在のクライアント出力フィールド88がホスト出力フィールド98にマップされたか否かが決定される決定ブロック248 に進む。ノーならば、論理処理はブロック250 に進み、このブロックにおいてローカルデータソースからのデータが現在のクライアント出力フィールド88に記憶される。ローカルデータソースには、静的データまたはシステム呼出しからのデータが含まれていてもよい。決定ブロック248 を再び参照すると、一般的には、現在のクライアント出力フィールド88はホスト出力フィールド98にマップされるので、論理処理はブロック252 に進み、このブロックで、ホスト出力フィールド98を発生するホスト入力フィールド96が処理される。ホスト入力フィールドの処理は、以下において図16を参照してさらに詳細に説明する。その後、論理処理は決定ブロック254 に進み、このブロックにおいて、現在のクライアント出力フィールド88がテンプレート中の最後のクライアント出力フィールドであるか否かが決定される。ノーならば、論理処理は、次のクライアント出力フィールドが検索されて現在のクライアント出力フィールドになるブロック256 に進む。その後、論理処理は決定ブロック248 に戻り、クライアント出力フィールド88の全てが処理されるまでブロック248 乃至256 が繰返される。
【0068】
決定ブロック254 に戻ると、現在のクライアント出力フィールド88が最後のクライアント出力フィールドである場合、クライアントトランザクションリクエストの妥当性検査が完了し、ブロック257 において論理処理が終了する。妥当性検査プロセスは、クライアント・ホストマッピングが正しく、クライアント出力フィールド88が実在するホスト出力フィールド98に適切に分解されることを確実にするために付加的なチェックを行うことが認識されるであろう。マッピングが誤って分解された(すなわち、実在しないアドレスに分解された)場合、ランタイムトランザクションモジュール48に障害が生じる。
【0069】
図16は、図15のブロック252 において要求されるようにホスト入力フィールドを処理するために使用される論理手順を示すフロー図である。概して、クライアントトランザクションリクエストの妥当性検査には、ホストシステム14から所望のデータを得るために必要とされる参照が存在し、クライアント出力フィールド88に適切にマップされていることの妥当性の検査が含まれる。上述したように、参照はホスト名、トランザクション名および入力名を示すテキストストリングであってもよいし、あるいは任意の他のタイプのインジケータであってもよい。クライアントトランザクション出力フィールド88は適切にマップされなければならず、また、そのクライアントトランザクション出力フィールド88に対するデータを発生する任意のホストトランザクション90もまたその入力フィールド96が適切にマップされなければならない。図16は、ホスト入力フィールド96が適切にマップされることを確実にすることを説明している。
【0070】
論理処理は、ブロック258 から始まり、ブロック260 に進み、このブロックにおいて第1のマップされたホスト入力フィールド98(現在のマップされたホスト入力フィールド)がクライアントトランザクション70にマップされたホストトランザクション90から検索される。その後、論理処理は、現在のホスト入力フィールド88がホスト出力フィールド98にマップされているか否かが決定される決定ブロック262 に進む。ノーならば、論理動作は、ブロック264 に進み、ローカルデータソースからのデータを現在のホスト入力フィールド(たとえば、図5におけるHAI−2参照)にコピーする。他方において、ホスト入力フィールド96が別のホストトランザクション90のホスト出力フィールド98にマップされた(たとえば、図5におけるHAI−3参照)場合、図16に示されている同じ論理処理に対して再帰呼出しが行われ、マップされたホスト入力フィールド96は、ホスト入力フィールドにマップされたホスト出力フィールドを有するホストトランザクション(図5のトランザクションB参照)である。上述したように、図5のホストトランザクションAに対するホスト入力フィールドHAI−3はホストトランザクションBのホスト出力フィールドHBO−1にマップされる。したがって、ホストトランザクションAの妥当性が検査されることができる前に、ホストトランザクションBのホスト入力フィールド96が処理されていなければならない。図17に示されているようにホストシステム14上で処理するために、ホストトランザクション90が依頼されることができるか否かを決定する場合に、類似した論理処理が使用される。
【0071】
その後、論理動作は、ブロック268 に進み、このブロックにおいて、現在のマップされたホスト入力フィールド98が所定のホストトランザクション中の最後のマップされたホスト入力フィールドであるか否かが決定される。ノーならば、論理処理はブロック270 に進み、次のマップされたホスト入力フィールド98を獲得する。その後、論理処理は決定ブロック262 に戻り、ブロック262 乃至270 が各ホスト入力フィールドに対して繰返される。決定ブロック268 に戻って、現在のマップされたホスト入力フィールドが最後のマップされたホスト入力フィールドである場合、ホスト入力フィールドの処理は完了し、ブロック271 において論理処理が終了する。
【0072】
図17は、上述した妥当性検査プロセスが完了した後で、図12のブロック192 において要求されるようにクライアントトランザクションリクエストを処理するためにランタイムトランザクションモジュール48により使用される論理手順を示すフロー図である。示されているように、クライアントトランザクション70の処理は反復プロセスである。本発明は、多数のクライアントトランザクション70が種々の完了段階にあるように、クライアントトランザクション70を同時に処理する。各クライアントトランザクション70が多数のホストトランザクション90にマップできるようにすることにより、ホストトランザクション90は、クライアント装置20のウェブベースのユーザがトランザクションの調整を認識することなく異なった情報へのアクセスにより異なったホストシステム4 において実行することができる。クライアント装置20は、所望の結果を得るためにただ1つのトランザクションをリクエストすればよい。図17に示されている処理の各反復によって、各依存ホストトランザクション90がホストシステム14によって完了されたか否かを決定するためにクライアントトランザクション70が再検討される。特定のクライアントトランザクション70に対する全ての依存ホストトランザクション90が完了すると、クライアントトランザクション出力フィールドはクライアント装置20に戻される。
【0073】
再び図5を参照すると、図17中の処理ループの1回の反復で、ホストトランザクションBはホストシステム14に実行依頼される。それ以降の反復中に、ホストトランザクションBが完了し、ホストトランザクションAが実行依頼されなければならないことが論理により決定される。各クライアントトランザクション70に対する処理は、以下において図17を参照してさらに詳細に説明される。認識されるように、各クライアントトランザクション70は、そのクライアントトランザクションを処理する作業スレッドに割当てられている。クライアントトランザクションの処理は非同期的に行われ、事象駆動型である。クライアントトランザクションは、別のクライアントトランザクションが同じ作業スレッドを使用することができるように、事象を待っているときに、その作業スレッドを放棄してもよい。したがって、図17に示されている処理は、別のクライアントトランザクションと同時に発生している可能性がある。
【0074】
論理処理は、ブロック272 から始まってブロック273 に進み、このブロックにおいて、所定のクライアントトランザクションに対する第1のマップされたホストトランザクション90が検索される。その後、論理処理は、第1のマップされたホストトランザクション90が完了したか否か、すなわち、それが所望のデータを含んでいるホストシステム14によって戻されたか否かが決定される決定ブロック274 に進む。ノーならば、論理処理は決定ブロック276 に進み、このブロックにおいて、ホストトランザクション90が完了のためにホストシステム14に実行依頼されることができるか否かが決定される。全てのホスト入力フィールドが利用できる場合、ならびに作業スレッドが利用可能である場合に、ホストトランザクション90が実行依頼されることができる。答えがイエスならば、論理処理はブロック278 に進み、このブロックで、ホストトランザクション90はホスト接続モジュール50を介してホストシステム14に実行依頼される。ホストトランザクションの実行依頼は以下において図18を参照してさらに詳細に説明されている。ランタイムトランザクションモジュール48がホストトランザクションをホスト接続モジュール50に実行依頼した後、論理動作は、以下に説明する決定ブロック286 に進む。
【0075】
決定ブロック276 に戻って、ホストトランザクション90が実行依頼されることができない(すなわち、それが別のホストトランザクションに依存している)場合、論理処理は再び決定ブロック286 に進む。ここで決定ブロック274 に戻ると、ホストトランザクション90が完了した場合、論理処理は決定ブロック280 に進み、このブロックで、そのトランザクションが失敗したか否かが決定される。イエスならば、論理動作は、決定ブロック284 に進み、このブロックにおいて、エラーメッセージがクライアント装置20に送られて、クライアントトランザクションをリクエストする。その後、論理動作は、ブロック285 で終了する。
【0076】
決定ブロック286 において、現在のホストトランザクション90がこのクライアントトランザクションに対する最後のホストトランザクションであるか否かが決定される。ノーならば、論理処理は、現在のクライアントトランザクションにマップされた次のホストトランザクション90が検索されるブロック288 に進む。その後、論理処理は決定ブロック274 に戻り、ブロック274 −288 は現在のクライアントトランザクションにマップされた各ホストトランザクションに対して繰返される。
【0077】
決定ブロック286 に戻ると、ホストトランザクション90が特定のクライアントトランザクションリクエストに対する最後のホストトランザクションである場合には、論理処理はこの特定のクライアントトランザクションリクエストに対するホストトランザクション90が全て完了したか否か、すなわち、ホストトランザクションの全てが、適切なデータを完備したホストシステム14によって実行依頼され、戻されたか否かが決定される決定ブロック290 に進む。イエスならば、論理処理はブロック292 に進み、このブロックで、クライアントトランザクションにより所望された完了したホスト出力フィールド98からのデータ(すなわち、クライアント出力フィールド88にマップされたデータ)がクライアントトランザクションリクエストを行ったクライアント装置20に戻される。その後、論理処理はブロック293 で終了する。
【0078】
決定ブロック290 に戻って、完了される必要のある、すなわちホストシステム14によって実行依頼されて戻される必要のあるホストトランザクションがまだ存在している場合、論理処理は決定ブロック294 に進む。決定ブロック294 において、論理処理は、現在のクライアントトランザクション12にマップされる少なくとも1つのホストトランザクション90がホストシステム14に実行依頼されたか否かを決定する。ノーならば、論理処理はブロック296 に進み、このブロックにおいてエラーメッセージがクライアント装置20に送られ、ブロック297 で論理処理が終了する。
【0079】
決定ブロック294 に戻ると、少なくとも1つの依存ホストトランザクション90がホストシステム14に実行依頼された場合、論理処理は、前に実行依頼されたホストトランザクション90がホストシステム14によって戻されるまで、処理は休眠状態になる(すなわち、その作業スレッドを放棄する)ブロック298 に進む。ホストトランザクション90が戻されると、論理処理はブロック272 に戻り、完了した依存ホストトランザクション90により現在のクライアントトランザクション70を再処理するためにブロック272 乃至298 が繰返される。現在のクライアントトランザクションにマップされた各ホストトランザクション90がホストシステムによって実行依頼され、完了され、戻されるまで(あるいは、あるエラー状態が発生するまで)、図17の論理処理が繰返されることが認識されるであろう。さらに、各クライアントトランザクションリクエストは、別のクライアントトランザクションリクエストと同時に上記の論理処理を使用していることが認識されるであろう。
【0080】
図18は、図17のブロック278 において要求されるようにホストトランザクション90をホストシステム14に実行依頼するためにホスト接続モジュール50により使用される論理手順を示すフロー図である。論理処理はブロック301 から始まり、ブロック302 に進み、このブロックにおいて、ホストトランザクション90のホスト入力フィールド96は、管理者によって構成プロセス中に新しいホストトランザクションウインドウ700 の中で指定されたホストシステム14に対する要求にしたがってフォーマットされる。その後、論理処理はブロック304 に進み、このブロックにおいて、フォーマットされたホスト入力フィールド98は、ホストプールモジュール52によりそれに割当てられたセッション中にホストシステム14への実行依頼のためにホストプール待ち行列中に挿入される。ホストプール待ち行列の処理は、以下において図19を参照してさらに詳細に説明する。
【0081】
フォーマットされたホスト入力フィールド98がホストシステム14への実行依頼のためにホストプール待ち行列中に挿入された後、論理処理はブロック306 に進み、エラーまたは完了したホストトランザクションをホストシステム14からホストプールモジュール52を介して受取るまで、このプロセスは休眠状態になる。したがって決定ブロック308 で、ホスト入力フィールド96をホストシステムに実行依頼した時にシステムエラーが存在したか否かが決定される。システムエラーは、ホストシステム14への接続が作動状態ではないことを示す。イエスならば、失敗したトランザクションがブロック310 でランタイムトランザクションモジュール48に戻されて、ブロック311 で論理処理が終了する。その後、ランタイムトランザクションモジュールは何等かのクリーンアップ動作を行って、クライアント装置20に知らせる(図17中のブロック280 乃至284 参照)。
【0082】
決定ブロック308 に戻って、システムエラーが存在しなかった場合、論理処理は決定ブロック312 に進み、このブロックにおいてプレリミナリ(preliminary) アプリケーションエラーが発生したか否かが決定される。プレリミナリアプリケーションエラーは、ホストシステムがホストトランザクションリクエストを拒否したときに発生する。このエラーが発生した場合、失敗したトランザクションがランタイムトランザクションモジュール48に戻され(図17中のブロック280 乃至284 参照)、その後、ホストトランザクション90を実行依頼する論理処理がブロック315 で終了する。そのエラーがプレリミナリアプリケーションエラーではない場合、論理動作はブロック316 に進み、このブロックにおいて、完了したホストトランザクション90がランタイムトランザクションモジュール48に戻される。ホストトランザクションをランタイムトランザクションモジュール48に送った後、ホストトランザクションを実行依頼する論理処理がブロック317 で終了する。
【0083】
図19は、図18のブロック304 において要求されるようにホストプールモジュール中の処理に対して使用される論理手順を示すフロー図である。簡単に述べると、ホストプールモジュール52は、完了のためにホストシステム14に送られる必要のあるホストトランザクション90を管理する。ホストプールモジュール52は、ホストトランザクション90に関連したセッションを決定する。1実施形態において、ホストプールモジュール52はセッションに関する統計を集めて、ホストトランザクション90を実行依頼するために使用すべき最良のセッションを決定する。決定ブロック322 において、新しいホストトランザクション90がホストプールモジュール52の待ち行列において受取られたか否かが決定される。図18のブロック304 に示されているようにフォーマットされたホスト入力フィールドがホストプール待ち行列中に挿入された後、新しいホストトランザクション90が待ち行列において受取られる。論理処理は、指定されたホストプールセッションが利用可能か否かが決定される決定ブロック324 に進む。ホストプールセッションは管理者によって構成中に特定される。そのホストプールセッションが利用できない場合、論理処理は、エラーメッセージが直接トランザクションマッピングプログラム38のホスト接続モジュール50に送られるブロック326 に進む。その後、論理処理はブロック306 において図18へ戻る。
【0084】
決定ブロック324 に戻って、ホストプールセッションが利用可能である場合、論理処理はブロック328 に進み、このブロックにおいて最良のホストプールセッションが識別される。最良のホストプールセッションは、セッションに関する統計を評価し、各セッションにおいて生じる故障をカウントすることによって決定される。最小量のエラーおよび障害を有するセッションが最良のセッションとみなされる。その後、論理処理はブロック330 に進み、フォーマットされたホスト入力フィールド96が最良のホストプールセッションでホストシステム14に送られる。その後、ホストプール待ち行列は、ブロック332 に示されているように、完了したホストトランザクションすなわちホスト出力の全てがホストシステムから受取られるまで休眠状態になる。ホストトランザクション90を完了するためにホストシステム14上で行われた処理は技術的によく知られているので、ここでは詳しくは説明しない。完了したホストトランザクション90をホストシステム14から受取ると、論理処理は、エラーがあるか否かが決定される決定ブロック334 に進む。イエスならば、論理処理は、上述したようにエラーメッセージが50に送られる決定ブロック326 に進む。エラーがなかった場合には、論理処理はブロック336 に進んで、完了したホストトランザクションをホスト接続モジュールに戻す。
【0085】
本発明の好ましい実施形態が例示および説明されているが、本発明の技術的範囲を逸脱することなく種々の変更が可能であることが認識されるであろう。
【図面の簡単な説明】
【図1】 本発明が実施されることのできるホストシステム/クライアントコンピュータ環境の概略図。
【図2】 本発明にしたがってホストシステム上に存在する情報への直接トランザクションアクセスをクライアントコンポーネントに行わせる直接トランザクションマッピングプログラムを実施するために使用される図1に示されているトランザクションのいくつかのコンポーネントのブロック図。
【図3】 トランザクションサーバにより実施される図2に示されている直接トランザクションマッピングプログラムを含んでいる複数のモジュールのブロック図。
【図4】 図3に示されている直接トランザクションマッピングプログラムの動作ブロック図。
【図5】 サンプルクライアントとホスト間のトランザクションマッピングの一例を示すブロック図。
【図6】 トランザクションサーバ12の管理者が図5に示されているようなクライアントとホスト間のトランザクションマッピングを構成することを可能にするために直接トランザクションマッピングプログラムの構成モジュールにより使用される論理の概要を示すフロー図。
【図7】 クライアントトランザクションがマッピングされることのできるホストトランザクションを生成するために構成モジュールにより使用される論理手順を示すフロー図。
【図8】 1以上のホストトランザクションがマッピングされることのできるクライアントトランザクションを生成するために構成モジュールにより使用される論理手順を示すフロー図。
【図9】 前に生成されたホストトランザクションにクライアントトランザクションをマッピングするために構成モジュールにより使用される論理手順を示すフロー図。
【図10】 クライアントトランザクションに含まれているクライアント入力フィールドを前に生成されたホストトランザクションに含まれているホスト入力フィールドにマッピングするために構成モジュールにより使用される論理手順を示すフロー図。
【図11】 クライアントトランザクションに含まれているクライアント出力フィールドを前に生成されたホストトランザクションに含まれているホスト入力フィールドにマッピングするために構成モジュールにより使用される論理手順を示すフロー図。
【図12】 クライアント装置により行われたクライアントトランザクションリクエストに応答してホスト記憶データを獲得するために直接トランザクションマッピングプログラムのランタイムトランザクションモジュールにより使用される論理の概要を示すフロー図。
【図13】 ランタイムトランザクションモジュール自身を初期化するためにそのランタイムトランザクションモジュールにより使用される論理手順を示すフロー図。
【図14】 マッピングされたホスト入力フィールドを分解するためにランタイムトランザクションモジュールにより使用される論理手順を示すフロー図。
【図15】 クライアントトランザクションリクエストの妥当性を検査するためにランタイムトランザクションモジュールにより使用される論理手順を示すフロー図。
【図16】 クライアントトランザクションリクエストに応答してホスト入力フィールドを処理するためにランタイムトランザクションモジュールにより使用される論理手順を示すフロー図。
【図17】 クライアントトランザクションリクエストに応答してクライアント入力フィールドを処理するためにランタイムトランザクションモジュールにより使用される論理手順を示すフロー図。
【図18】 ホストプールモジュールを介してホストトランザクションをホストシステムに実行依頼するためにホスト接続モジュールにより使用される論理手順を示すフロー図。
【図19】 ホストトランザクションをホストシステムに実行依頼するためにホストプールモジュールにより使用される論理手順を示すフロー図。
【図20A】 クライアントとホストの間のトランザクションをマッピングするために使用されるグラフィックユーザインターフェースモジュールにより生成されるウインドウ図。
【図20B】 クライアントとホストの間のトランザクションをマッピングするために使用されるグラフィックユーザインターフェースモジュールにより生成されるウインドウ図。
【図20C】 クライアントとホストの間のトランザクションをマッピングするために使用されるグラフィックユーザインターフェースモジュールにより生成されるウインドウ図。
【図20D】 クライアントとホストの間のトランザクションをマッピングするために使用されるグラフィックユーザインターフェースモジュールにより生成されるウインドウ図。
【図20E】 クライアントとホストの間のトランザクションをマッピングするために使用されるグラフィックユーザインターフェースモジュールにより生成されるウインドウ図。
【図20F】 クライアントとホストの間のトランザクションをマッピングするために使用されるグラフィックユーザインターフェースモジュールにより生成されるウインドウ図。
【図20G】 クライアントとホストの間のトランザクションをマッピングするために使用されるグラフィックユーザインターフェースモジュールにより生成されるウインドウ図。
【図21】 トランザクションメッセージフォーマットを示す概略図。

Claims (35)

  1. ホストシステム中にあるデータに、トランザクションを介してアクセスすることをクライアント装置に与え、ホストシステムの表示をナビゲートする必要性をなくす方法において、
    a)トランザクションサーバが1以上のホストトランザクションにクライアントトランザクションをマッピングし、
    b)クライアントトランザクションにマッピングされたホストトランザクションを、トランザクションサーバが、処理のためにホストシステムに実行依頼し、
    c)トランザクションサーバがホストシステムからデータを受信し、その受信されたデータは処理を完了したホストトランザクション内に記憶されているものであり、
    d)トランザクションサーバが前記受信されたデータに基づいて、全ての実行依頼されたホストトランザクションに対する処理をホストシステムが完了したか否かを決定し、
    e)トランザクションサーバが、ホストトランザクションがマッピングされるクライアントトランザクション中に前記受信されたデータの一部を記憶することを特徴とする方法。
  2. 前記クライアントトランザクションは複数のクライアントトランザクションの1つである請求項1記載の方法。
  3. クライアントトランザクションにマッピングされたホストトランザクションを処理のためにホストシステムに実行依頼するのは、他のホストトランザクションを処理のためにホストシステムに実行依頼するのと同時に行なわれ、前記他のホストトランザクションは複数のクライアントトランザクションの中の他のクライアントトランザクションにマッピングされる請求項1記載の方法。
  4. 前記クライアントトランザクションは1以上のクライアント出力フィールドに対応するデータを含み、各ホストトランザクションは1以上のホスト入力フィールドに対応するデータを含んでいる請求項1記載の方法。
  5. 1以上のホストトランザクションにクライアントトランザクションをマッピングするステップにおいて、さらに、
    a)各マッピングされたホストトランザクションの1以上のホスト入力フィールドのそれぞれに第1のデータソースに関連する第1の識別子を記憶し、
    b)1以上のクライアント出力フィールドのそれぞれに第2の識別子を記憶し、1以上のクライアント出力フィールドの少なくとも1つに対するこの第2の識別子は、少なくとも1つのマッピングされたホストトランザクションと、クライアントトランザクションを関連づける、ステップを含んでいる請求項4記載の方法。
  6. 前記ホスト入力フィールドの少なくとも1つに対する第1の識別子は、クライアントトランザクションと、マッピングされたホストトランザクションを関係づける請求項5記載の方法。
  7. 1以上のホストトランザクションに対するクライアントトランザクションのマッピングは、前記ホストトランザクションの1つの一部分を表している第2のフィールド前記クライアントトランザクションの一部分を表している第1のフィールドをドラッグしてドロップするステップを含んでいる請求項5記載の方法。
  8. さらに、
    a)第1のデータソースの内容がホストトランザクションを実行依頼する前に検索されて関係するホスト入力フィールドに記憶され、その第1のデータソースを指している第1のアドレス指定可能な参照に各第1の識別子を分解し、
    b)検索されたデータの一部分が記憶される第2のデータソースを指している第2のアドレス指定可能な参照に各第2の識別子を分解する、請求項4記載の方法。
  9. 第1のデータソースは静的変数を含んでいる請求項8記載の方法。
  10. ホストトランザクションはさらに1以上のホスト出力フィールドに対応するデータを含み、第1のデータソースは別のホストトランザクションのホスト出力フィールドの1つを含んでいる請求項8記載の方法。
  11. クライアントトランザクションはさらに1以上のクライアント入力フィールドに対応するデータを含み、第1のデータソースはクライアント入力フィールドの1つを含んでいる請求項8記載の方法。
  12. ホストトランザクションはさらに1以上のホスト出力フィールドに対応するデータを含み、第2のデータソースはマッピングされたホストトランザクションのホスト出力フィールドの1つを含んでいる請求項8記載の方法。
  13. ホストトランザクションはさらに1以上のホスト出力フィールドに対応するデータを含み、第2のデータソースは別のホストトランザクションのホスト出力フィールドの1つを含んでいる請求項8記載の方法。
  14. さらに、クライアントトランザクション中の受信されたデータの一部分をクライアント装置に転送する請求項1記載の方法。
  15. ホストシステム中にあるデータに、トランザクションを介してアクセスすることをクライアント装置に提供し、ホストシステムの表示をナビゲートする必要性をなくすコンピュータ読取り可能な媒体において、
    このコンピュータ読取り可能な媒体は
    a)1以上のホストトランザクションにクライアントトランザクションをマッピングする動作をトランザクションサーバによって行わせるように構成されている構成モジュールと、
    b)クライアントトランザクションによってリクエストされたデータを検索するためにクライアントトランザクションにマッピングされるホストトランザクションをホストシステムに対して実行依頼し、ホストトランザクションがマッピングされるクライアントトランザクションに検索されたデータの一部分を記憶する動作をトランザクションサーバによって行わせるように構成されているランタイムトランザクションモジュールとを備えているコンピュータ読取り可能な媒体。
  16. 前記クライアントトランザクションは複数のクライアントトランザクションの1つであり、ランタイムトランザクションモジュールは、他のホストトランザクションを処理のためにホストシステムに対して実行依頼するのと同時にクライアントトランザクションにマッピングされたホストトランザクションをホストシステムに対して実行依頼し、前記他のホストトランザクションは複数のクライアントトランザクションの中の別のクライアントトランザクションにマッピングされる請求項15記載のコンピュータ読取り可能な媒体。
  17. クライアントトランザクションは1以上のクライアント出力フィールドに対応するデータを含み、各ホストトランザクションは1以上のホスト入力フィールドを含んでいる請求項15記載のコンピュータ読取り可能な媒体。
  18. 構成モジュールは、
    a)マッピングされた各ホストトランザクションの1以上のホスト入力フィールドのそれぞれの中に第1のデータソースに関連する第1の識別子を記憶し、
    b)1以上のクライアント出力フィールドのそれぞれの中に第2の識別子を記憶し、1以上のクライアント出力フィールドの少なくとも1つに対するこの第2の識別子は少なくとも1つのマッピングされたホストトランザクションと、クライアントトランザクションを関連させている、ことによりクライアントトランザクションを1以上のホストトランザクションにマッピングする請求項17記載のコンピュータ読取り可能な媒体。
  19. さらに、前記ホストトランザクションの1つの一部分を表している第2のフィールド前記クライアントトランザクションの一部分を表している第1のフィールドをドラッグしてドロップすることをユーザに可能にするためのグラフィックユーザインターフェースを具備し、それによって前記ホストトランザクションに前記クライアントトランザクションをマッピングする請求項17記載のコンピュータ読取り可能な媒体。
  20. 構成モジュールはさらに、少なくとも1つのマッピングされたホストトランザクションとクライアントトランザクションとを構成データベースに記憶している請求項15記載のコンピュータ読取り可能な媒体。
  21. ランタイムトランザクションモジュールは、
    a)第1のデータソースの内容がホストトランザクションを実行依頼する前に検索されて関係するホスト入力フィールドに記憶され、その第1のデータソースを指している第1のアドレス指定可能な参照に各第1の識別子を分解し、
    b)検索されたデータの一部分が記憶される第2のデータソースを指している第2のアドレス指定可能な参照に各第2の識別子を分解することによって、クライアントトランザクションにマッピングされたホストトランザクションを実行依頼する請求項15記載のコンピュータ読取り可能な媒体。
  22. 第1のデータソースは静的変数を含んでいる請求項21記載のコンピュータ読取り可能な媒体。
  23. 各ホストトランザクションはさらに1以上のホスト出力フィールドに対応するデータを含み、ホストトランザクションの第1のデータソースは別のホストトランザクションのホスト出力フィールドの1つを含んでいる請求項21記載のコンピュータ読取り可能な媒体。
  24. クライアントトランザクションはさらに1以上のクライアント入力フィールドに対応するデータを含み、第1のデータソースはクライアント入力フィールドの1つを含んでいる請求項21記載のコンピュータ読取り可能な媒体。
  25. 各ホストトランザクションはさらに1以上のホスト出力フィールドに対応するデータを含み、第2のデータソースはマッピングされたホストトランザクションのホスト出力フィールドの1つを含んでいる請求項21記載のコンピュータ読取り可能な媒体。
  26. 各ホストトランザクションはさらに1以上のホスト出力フィールドに対応するデータを含み、第2のデータソースは別のホストトランザクションのホスト出力フィールドの1つを含んでいる請求項21記載のコンピュータ読取り可能な媒体。
  27. さらに、クライアントトランザクション中の受信されたデータの一部分をクライアント装置に転送するためのクライアント接続モジュールを具備している請求項15記載のコンピュータ読取り可能な媒体。
  28. ホストシステム中にあるデータにアクセスすることをクライアント装置に提供し、ホストシステムの表示をナビゲートする必要性をなくすトランザクションサーバにおいて、
    a)処理ユニットと、
    b)この処理ユニットに結合され、処理ユニット中の命令の実行を制御する命令を記憶している主メモリとを具備し、
    処理ユニットは、
    i)トランザクションサーバによりクライアントトランザクションを1以上のホストトランザクションにマッピングし、
    ii)クライアントトランザクションにマッピングされたホストトランザクションを、トランザクションサーバにより処理のためにホストシステムに対して実行依頼し、
    iii)トランザクションサーバによりホストシステムからデータを受信し、受信されたデータは処理を完了したホストトランザクション内に記憶されているものであり、
    iv)トランザクションサーバにより、前記受信されたデータに基づいてホストシステムが実行依頼された全てのホストトランザクションに対する処理を完了したか否かを決定し、
    v)トランザクションサーバにより、ホストトランザクションがマッピングされたクライアントトランザクションに前記受信されたデータの一部を記憶するトランザクションサーバ。
  29. 前記クライアントトランザクションは複数のクライアントトランザクションの1つである請求項28記載のトランザクションサーバ。
  30. クライアントトランザクションへマッピングされたホストトランザクションを処理のためにホストシステムに実行依頼するのは、他のホストトランザクションを処理のためにホストシステムに実行依頼するのと同時に行なわれ、前記他のホストトランザクションは複数のクライアントトランザクションの中の他のクライアントトランザクションにマッピングされる請求項29記載のトランザクションサーバ。
  31. クライアントトランザクションは1以上のクライアント出力フィールドに対応するデータを含み、各ホストトランザクションは1以上のホスト入力フィールドを含んでいる請求項28記載のトランザクションサーバ。
  32. クライアントトランザクションの1以上のホストトランザクションへのマッピングは、
    a)マッピングされた各ホストトランザクションの1以上のホスト入力フィールドのそれぞれに第1のデータソースに関連する第1の識別子を記憶し、
    b)1以上のクライアント出力フィールドのそれぞれに第2の識別子を記憶し、1以上のクライアント出力フィールドの少なくとも1つに対するこの第2の識別子は少なくとも1つのマッピングされたホストトランザクションとクライアントトランザクションを関連させている、ことを含んでいる請求項31記載のトランザクションサーバ。
  33. 1以上のホスト入力フィールドの少なくとも1つに対する第1の識別子は、クライアントトランザクションと、マッピングされたホストトランザクションを関連させている請求項32記載のトランザクションサーバ。
  34. 1以上のホストトランザクションへのクライアントトランザクションのマッピングは、前記ホストトランザクションの1つの一部分を表している第2のフィールド前記クライアントトランザクションの一部分を表している第1のフィールドをドラッグしてドロップする処理を含んでいる請求項31記載のトランザクションサーバ。
  35. さらに、クライアントトランザクション中の受信されたデータの一部をクライアント装置に転送する請求項28記載のトランザクションサーバ。
JP2000611171A 1999-04-09 2000-04-07 ホストシステムにある情報に直接トランザクションアクセスを行うための方法および装置 Expired - Lifetime JP4672870B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/289,786 1999-04-09
US09/289,786 US6243737B1 (en) 1999-04-09 1999-04-09 Method and apparatus for providing direct transaction access to information residing on a host system
PCT/US2000/009260 WO2000062170A1 (en) 1999-04-09 2000-04-07 Method and apparatus for providing direct transaction access to information residing on a host system

Publications (2)

Publication Number Publication Date
JP2002541583A JP2002541583A (ja) 2002-12-03
JP4672870B2 true JP4672870B2 (ja) 2011-04-20

Family

ID=23113092

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000611171A Expired - Lifetime JP4672870B2 (ja) 1999-04-09 2000-04-07 ホストシステムにある情報に直接トランザクションアクセスを行うための方法および装置

Country Status (6)

Country Link
US (1) US6243737B1 (ja)
EP (1) EP1203295A4 (ja)
JP (1) JP4672870B2 (ja)
KR (1) KR100652482B1 (ja)
AU (1) AU4210300A (ja)
WO (1) WO2000062170A1 (ja)

Families Citing this family (99)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6714219B2 (en) * 1998-12-31 2004-03-30 Microsoft Corporation Drag and drop creation and editing of a page incorporating scripts
US6813636B1 (en) * 1999-03-01 2004-11-02 Aspect Communications Corporation Method and apparatus for routing a transaction within a network environment
US7607572B2 (en) * 1999-03-19 2009-10-27 Bigfix, Inc. Formalizing, diffusing, and enforcing policy advisories and monitoring policy compliance in the management of networks
US6920475B1 (en) * 1999-04-23 2005-07-19 Oracle International Corporation Communication architecture for distributed computing environment
WO2002087112A2 (en) 2001-04-18 2002-10-31 Space Data Corporation Unmanned lighter-than-air safe termination and recovery methods
US7356390B2 (en) 1999-06-29 2008-04-08 Space Data Corporation Systems and applications of lighter-than-air (LTA) platforms
US6594695B1 (en) * 1999-12-08 2003-07-15 Covad Communitions Group, Inc. Network profiling system
US6938256B2 (en) 2000-01-18 2005-08-30 Galactic Computing Corporation System for balance distribution of requests across multiple servers using dynamic metrics
US6757291B1 (en) 2000-02-10 2004-06-29 Simpletech, Inc. System for bypassing a server to achieve higher throughput between data network and data storage system
US20020019797A1 (en) * 2000-02-16 2002-02-14 Rocky Stewart Message routing system for enterprise wide electronic collaboration
US6832238B1 (en) * 2000-05-24 2004-12-14 Sun Microsystems, Inc. Local transaction management
US8538843B2 (en) * 2000-07-17 2013-09-17 Galactic Computing Corporation Bvi/Bc Method and system for operating an E-commerce service provider
US6816905B1 (en) * 2000-11-10 2004-11-09 Galactic Computing Corporation Bvi/Bc Method and system for providing dynamic hosted service management across disparate accounts/sites
US7559066B2 (en) * 2000-08-08 2009-07-07 International Business Machines Corporation CICS BMS (basic message service) meta model
US7207046B1 (en) * 2000-08-23 2007-04-17 Agilent Technologies, Inc. Method and system for providing string-over-socket scripting language access to distributed object model interfaces
US20020124083A1 (en) 2000-09-06 2002-09-05 Sun Microsystems, Inc. Method and apparatus for increasing the efficiency of transactions and connection sharing in an enterprise environment
US20020082927A1 (en) * 2000-11-22 2002-06-27 Borenstein Nathaniel S. Intelligent caching routers
US7246344B1 (en) * 2000-12-11 2007-07-17 Microsoft Corporation Drag and drop stateless data class specification and programming
US9908608B2 (en) 2001-04-18 2018-03-06 Space Data Corporation Systems and applications of lighter-than-air (LTA) platforms
US9632503B2 (en) 2001-04-18 2017-04-25 Space Data Corporation Systems and applications of lighter-than-air (LTA) platforms
US9643706B2 (en) 2001-04-18 2017-05-09 Space Data Corporation Systems and applications of lighter-than-air (LTA) platforms
US7047522B1 (en) * 2001-04-30 2006-05-16 General Electric Capital Corporation Method and system for verifying a computer program
US20020188951A1 (en) * 2001-06-06 2002-12-12 Telepaq Technology Inc. Data active on-demand-transmission system
US7080119B2 (en) * 2001-07-17 2006-07-18 Bea Systems, Inc. System and method for transaction processing with delegated commit feature
US7213049B2 (en) * 2001-07-17 2007-05-01 Bea Systems, Inc. System and method for transaction processing with transaction property feature
US7337441B2 (en) * 2001-07-17 2008-02-26 Bea Systems, Inc. System and method for prepreparing a transaction process involving a chain of servers in a circular flow
US7774435B2 (en) * 2001-07-26 2010-08-10 Oracle America, Inc. System and method for batch tuning intelligent devices
US20040006745A1 (en) * 2001-08-31 2004-01-08 Van Helden Wico Methods, apparatuses, system, and articles for associating metadata with datastream
US20030097424A1 (en) * 2001-09-26 2003-05-22 Jean-Christophe Pautrat Method to construct a technology roadmap
US7152204B2 (en) * 2001-10-18 2006-12-19 Bea Systems, Inc. System and method utilizing an interface component to query a document
US7552222B2 (en) * 2001-10-18 2009-06-23 Bea Systems, Inc. Single system user identity
US9231827B2 (en) * 2001-11-09 2016-01-05 International Business Machines Corporation Formalizing, diffusing and enforcing policy advisories and monitoring policy compliance in the management of networks
US7516447B2 (en) 2002-02-22 2009-04-07 Bea Systems, Inc. Methods and apparatus for building, customizing and using software abstractions of external entities
US7257645B2 (en) * 2002-05-01 2007-08-14 Bea Systems, Inc. System and method for storing large messages
US8135772B2 (en) * 2002-05-01 2012-03-13 Oracle International Corporation Single servlets for B2B message routing
US7526519B2 (en) * 2002-05-01 2009-04-28 Bea Systems, Inc. High availability application view deployment
US20040078440A1 (en) * 2002-05-01 2004-04-22 Tim Potter High availability event topic
US7424717B2 (en) * 2002-05-01 2008-09-09 Bea Systems, Inc. Systems and methods for business process plug-in development
US7155438B2 (en) * 2002-05-01 2006-12-26 Bea Systems, Inc. High availability for event forwarding
US7627631B2 (en) * 2002-05-02 2009-12-01 Bea Systems, Inc. Systems and methods for collaborative business plug-ins
US7222148B2 (en) * 2002-05-02 2007-05-22 Bea Systems, Inc. System and method for providing highly available processing of asynchronous service requests
US7493628B2 (en) 2002-05-02 2009-02-17 Bea Systems, Inc. Shared common connection factory
US7350184B2 (en) 2002-05-02 2008-03-25 Bea Systems, Inc. System and method for enterprise application interactions
US7676538B2 (en) * 2002-05-02 2010-03-09 Bea Systems, Inc. Systems and methods for application view transactions
US7484224B2 (en) 2002-05-02 2009-01-27 Bae Systems, Inc. Adapter deployment without recycle
US6988099B2 (en) * 2002-06-27 2006-01-17 Bea Systems, Inc. Systems and methods for maintaining transactional persistence
US7743065B2 (en) * 2002-06-27 2010-06-22 Siebel Systems, Inc. System and method for cross-referencing information in an enterprise system
US7099954B2 (en) * 2002-06-27 2006-08-29 Microsoft Corporation Congestion control mechanism for streaming media
US20040127256A1 (en) * 2002-07-30 2004-07-01 Scott Goldthwaite Mobile device equipped with a contactless smart card reader/writer
US20040230489A1 (en) * 2002-07-26 2004-11-18 Scott Goldthwaite System and method for mobile payment and fulfillment of digital goods
US20040054969A1 (en) * 2002-09-16 2004-03-18 International Business Machines Corporation System and method for generating web services definitions for MFS-based IMS applications
US7130893B2 (en) 2003-05-19 2006-10-31 International Business Machines Corporation System and method for representing MFS control blocks in XML for MFS-based IMS applications
US7421701B2 (en) 2002-09-16 2008-09-02 International Business Machines Corporation System for facilitating transactions between thin-clients and message format service (MFS)-based information management system (IMS) applications
US20040103370A1 (en) * 2002-11-27 2004-05-27 International Business Machines Corporation System and method for rendering MFS XML documents for display
US8145759B2 (en) * 2002-11-04 2012-03-27 Oracle America, Inc. Dynamically configurable resource pool
US7650591B2 (en) 2003-01-24 2010-01-19 Bea Systems, Inc. Marshaling and un-marshaling data types in XML and Java
US7165061B2 (en) * 2003-01-31 2007-01-16 Sun Microsystems, Inc. Transaction optimization of read-only data sources
US20040153349A1 (en) * 2003-01-31 2004-08-05 K. Venugopal Rao Delayed creation of global transactions
US7293038B2 (en) 2003-02-25 2007-11-06 Bea Systems, Inc. Systems and methods for client-side filtering of subscribed messages
US20040167915A1 (en) * 2003-02-25 2004-08-26 Bea Systems, Inc. Systems and methods for declaratively transforming data objects between disparate representations
US7774697B2 (en) * 2003-02-25 2010-08-10 Bea Systems, Inc. System and method for structuring distributed applications
US7584474B2 (en) * 2003-02-25 2009-09-01 Bea Systems, Inc. Systems and methods for transaction chaining
US20050022164A1 (en) * 2003-02-25 2005-01-27 Bea Systems, Inc. Systems and methods utilizing a workflow definition language
US7752599B2 (en) 2003-02-25 2010-07-06 Bea Systems Inc. Systems and methods extending an existing programming language with constructs
US7299454B2 (en) * 2003-02-26 2007-11-20 Bea Systems, Inc. Method for multi-language debugging
US8032860B2 (en) * 2003-02-26 2011-10-04 Oracle International Corporation Methods for type-independent source code editing
US7650276B2 (en) 2003-02-26 2010-01-19 Bea Systems, Inc. System and method for dynamic data binding in distributed applications
US20050108682A1 (en) * 2003-02-26 2005-05-19 Bea Systems, Inc. Systems for type-independent source code editing
US7539985B2 (en) * 2003-02-26 2009-05-26 Bea Systems, Inc. Systems and methods for dynamic component versioning
US20040230955A1 (en) * 2003-02-26 2004-11-18 Bea Systems, Inc. System for multi-language debugging
US7076772B2 (en) * 2003-02-26 2006-07-11 Bea Systems, Inc. System and method for multi-language extensible compiler framework
US7707564B2 (en) 2003-02-26 2010-04-27 Bea Systems, Inc. Systems and methods for creating network-based software services using source code annotations
US20040225995A1 (en) * 2003-02-28 2004-11-11 Kyle Marvin Reusable software controls
US20050044173A1 (en) * 2003-02-28 2005-02-24 Olander Daryl B. System and method for implementing business processes in a portal
US7444620B2 (en) * 2003-02-28 2008-10-28 Bea Systems, Inc. Systems and methods for a common runtime container framework
US7636722B2 (en) * 2003-02-28 2009-12-22 Bea Systems, Inc. System and method for describing application extensions in XML
US7650592B2 (en) 2003-03-01 2010-01-19 Bea Systems, Inc. Systems and methods for multi-view debugging environment
US7743083B2 (en) * 2003-04-24 2010-06-22 Oracle America, Inc. Common transaction manager interface for local and global transactions
US7082432B2 (en) * 2003-04-24 2006-07-25 Sun Microsystems, Inc. Specifying transaction manager type at various application levels
US7610305B2 (en) * 2003-04-24 2009-10-27 Sun Microsystems, Inc. Simultaneous global transaction and local transaction management in an application server
US7640545B2 (en) * 2003-07-14 2009-12-29 Sun Microsytems, Inc. Transaction manager freezing
US7739252B2 (en) * 2003-07-14 2010-06-15 Oracle America, Inc. Read/write lock transaction manager freezing
US7134008B2 (en) * 2003-09-04 2006-11-07 Sun Microsystems, Inc. Utility for configuring and verifying data sources
US8521875B2 (en) 2003-09-04 2013-08-27 Oracle America, Inc. Identity for data sources
US7370280B2 (en) * 2003-09-23 2008-05-06 International Business Machines Corporation Apparatus, system, and method for defining a web services interface for MFS-based IMS applications
US20050165912A1 (en) * 2004-01-23 2005-07-28 Colbeck Scott J. GUI-based grid computing data management apparatus method and system
US7418508B2 (en) 2004-01-26 2008-08-26 International Machines Corporation System and method to facilitate XML enabled IMS transactions between a remote client and an IMS application program
US7617459B2 (en) 2004-01-28 2009-11-10 International Business Machines Corporation Apparatus, system, and method for automatically generating a web interface for an MFS-based IMS application
US8521687B2 (en) * 2004-08-03 2013-08-27 International Business Machines Corporation Apparatus, system, and method for selecting optimal replica sources in a grid computing environment
US20110071949A1 (en) * 2004-09-20 2011-03-24 Andrew Petrov Secure pin entry device for mobile phones
US20060064391A1 (en) * 2004-09-20 2006-03-23 Andrew Petrov System and method for a secure transaction module
US7702746B2 (en) * 2005-04-21 2010-04-20 International Business Machines Corporation Web services response templates
US20080025232A1 (en) * 2006-07-26 2008-01-31 International Business Machines Corporation Method and system for network connection
US20090119415A1 (en) * 2007-11-02 2009-05-07 Chiang Chenhuei J System and method for representing mfs control blocks in xml for mfs-based ims applications
GB2513532A (en) * 2012-12-05 2014-11-05 Ibm Distributed transaction routing
US20160094491A1 (en) * 2014-09-30 2016-03-31 Genesys Telecommunications Laboratories, Inc. Pattern-controlled automated messaging system
CA2972348C (en) 2014-12-24 2023-03-14 Space Data Corporation Breaking apart a platform upon pending collision
CA2972381A1 (en) 2014-12-24 2016-06-30 Space Data Corporation Techniques for intelligent balloon/airship launch and recovery window location
US10059421B2 (en) 2014-12-30 2018-08-28 Space Data Corporation Multifunctional balloon membrane

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2025131A1 (en) * 1989-09-28 1991-03-29 John W. White Portable and dynamic distributed applications architecture
US5706429A (en) * 1994-03-21 1998-01-06 International Business Machines Corporation Transaction processing system and method
JPH07262109A (ja) * 1994-03-23 1995-10-13 Mitsubishi Electric Corp ホストエミュレーション方式
US5634127A (en) * 1994-11-30 1997-05-27 International Business Machines Corporation Methods and apparatus for implementing a message driven processor in a client-server environment
US5678041A (en) * 1995-06-06 1997-10-14 At&T System and method for restricting user access rights on the internet based on rating information stored in a relational database
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
US5956489A (en) * 1995-06-07 1999-09-21 Microsoft Corporation Transaction replication system and method for supporting replicated transaction-based services
US5923846A (en) * 1995-11-06 1999-07-13 Microsoft Corporation Method of uploading a message containing a file reference to a server and downloading a file from the server using the file reference
US5802299A (en) * 1996-02-13 1998-09-01 Microtouch Systems, Inc. Interactive system for authoring hypertext document collections
US6058393A (en) * 1996-02-23 2000-05-02 International Business Machines Corporation Dynamic connection to a remote tool in a distributed processing system environment used for debugging
US5862327A (en) * 1996-06-10 1999-01-19 Tactica Corporation Activity based long-lived transaction system
JPH10161976A (ja) * 1996-11-27 1998-06-19 Hitachi Ltd オンライン業務処理システム
WO1998025376A2 (en) * 1996-12-02 1998-06-11 First Data Corporation Method and apparatus for improved transaction processing in a distributed computing environment
US5781739A (en) * 1996-12-31 1998-07-14 International Business Machines Corp. IMS/WWW mapping system
US5987426A (en) * 1997-10-14 1999-11-16 Ncr Corporation Point-of-sale system including isolation layer between client and server software

Also Published As

Publication number Publication date
US6243737B1 (en) 2001-06-05
EP1203295A4 (en) 2006-11-15
KR20020019011A (ko) 2002-03-09
WO2000062170A1 (en) 2000-10-19
AU4210300A (en) 2000-11-14
JP2002541583A (ja) 2002-12-03
KR100652482B1 (ko) 2006-11-30
EP1203295A1 (en) 2002-05-08

Similar Documents

Publication Publication Date Title
JP4672870B2 (ja) ホストシステムにある情報に直接トランザクションアクセスを行うための方法および装置
US7716061B2 (en) Method and apparatus for obtaining status information in a grid
US8495136B2 (en) Transaction-initiated batch processing
US6993562B2 (en) Method and system to print via email
KR101104008B1 (ko) 업무 처리를 위한 데이터 입력을 지원하기 위한 방법 및 프로그램
US20080209392A1 (en) Systems and Methods for Definition and Execution of Batch Processing Services
US20080228781A1 (en) Method and Apparatus for Managing Data Center Using Web Services
US20070089047A1 (en) Visualization of collaborative portlet sequences
US9299055B2 (en) Delegation of data entry tasks
US7996822B2 (en) User/process runtime system trace
JP4233635B2 (ja) アプリケーション・インタフェースに持続性を提供するための装置および方法
US20080104080A1 (en) Method and apparatus to access heterogeneous configuration management database repositories
US8326966B2 (en) Efficient, centralized management of application log configuration settings
US20090172107A1 (en) Proxy content for submitting web service data in the user's security context
JP2023070148A (ja) ロボティックプロセスオートメーション(rpa)ロボットをリソースへ動的にバインドさせるためのシステムおよび方法
AU2019478487A1 (en) Virtual workspace experience visualization and optimization
US7552168B2 (en) Method and apparatus for exchanging data using programmatic conversion to emulated HTML form data
US20230266862A1 (en) Optical fiber web application
JP4049099B2 (ja) リソース・アダプタの機能強化
EP1061445A2 (en) Web-based enterprise management with transport neutral client interface
US20090106322A1 (en) Two-set method for avoiding data loss when multiple users simultaneously edit the same data
US20230376284A1 (en) User interface help content document generation
WO2023230797A1 (zh) 一种跨系统测试方法及装置
CN113706209A (zh) 运营数据处理方法及相关装置
CN116974882A (zh) 接口测试方法及相关装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20060524

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060524

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090915

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091006

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100202

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100408

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100415

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100831

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101126

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101221

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110120

R150 Certificate of patent or registration of utility model

Ref document number: 4672870

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140128

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term