(57)【要約】スクリーンプラグ（２２）は、ターゲットＡＰＬ（２３）から表示画面の画面イメージデータを取り込み、その画面イメージデータから連携するべきデータを取得する。そして、取り出したデータを連携ＡＰＬ（２１）へ出力する。これにより、スクリーンプラグ（２２）は、連携ＡＰＬ（２１）とターゲットＡＰＬ（２３）の間でのデータ連携を実現する。
2004068407.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが、プログラム間のデータ連携を支援するデータ連携支援方法であって、
第１のプログラムから表示画面の画面イメージデータを取り込み、
前記画面イメージデータから第２のプログラムへ出力すべき連携データを取得し、
前記連携データを前記第２のプログラムへ出力する、
ことを含むことを特徴とするデータ連携支援方法。
【請求項２】
表示画面中の領域を示す座標情報及び前記領域に表示されるイメージデータを含む画面種別判定情報に基づいて、前記画面イメージデータから前記領域に表示されるイメージデータを切り出し、切り出されたイメージデータと前記画面種別判定情報に含まれるイメージデータとが一致するか否か判定することにより表示画面を識別する、
ことを更に含み、
前記連携データは、認識された表示画面の画面イメージデータから取得される、
ことを特徴とする請求項１に記載のデータ連携支援方法。
【請求項３】
表示画面中の領域を示す座標情報及び前記領域に表示されるデータのデータ属性を示すデータ属性情報を含む認識認識項目情報に基づいて、前記画面イメージデータから前記領域に表示されるデータを切り出し、切り出されたデータを前記データ属性情報に基づいて認識する、
ことを更に含み、
前記連携データは、認識結果として取得される、
ことを特徴とする請求項１に記載のデータ連携支援方法。
【請求項４】
前記第２のプログラムによって処理された前記連携データは、前記第１のプログラムに出力される、
ことを更に含むことを特徴とする請求項１に記載のデータ連携支援方法。
【請求項５】
表示画面中の領域を示す座標情報を含む出力方法情報に基づいて、前記第２のプログラムによって処理された前記連携データは、前記第１のプログラムの表示画面中の前記領域に出力される、
ことを更に含むことを特徴とする請求項１に記載のデータ連携支援方法。
【請求項６】
コンピュータが、プログラム間のデータ連携を支援するデータ連携支援方法であって、
第１のプログラムから表示画面の画面イメージデータを取り込み、
前記画面イメージデータに基づいて前記表示画面を識別し、
第２のプログラムから連携データを取得し、
識別された前記表示画面に前記連携データを出力する、
ことを含むことを特徴とするデータ連携支援方法。
【請求項７】
コンピュータに、プログラム間のデータ連携を支援する制御を行わせるプログラムを記録する、前記コンピュータで読み取り可能な記録媒体であって、
第１のプログラムから表示画面の画面イメージデータを取得し、
前記画面イメージデータから第２のプログラムへ出力すべき連携データを取得し、
前記連携データを前記第２のプログラムへ出力する、
ことを含む制御を前記コンピュータに行わせるプログラムを格納する記録媒体。
【請求項８】
コンピュータに、プログラム間のデータ連携を支援する制御を行わせるプログラムであって、
第１のプログラムから表示画面の画面イメージデータを取得し、
前記画面イメージデータから第２のプログラムへ出力すべき連携データを取得し、
前記連携データを前記第２のプログラムへ出力する、
ことを含む制御を前記コンピュータに行わせるプログラム。
【請求項９】
プログラム間のデータ連携を支援するデータ連携支援装置であって、
第１のプログラムから表示画面の画面イメージデータを取得する表示画面取込手段と、
取得された前記画面イメージデータから第２のプログラムへ出力すべき連携データを取得する項目情報取得手段と、
取得された前記連携データを前記第２のプログラムへ出力する連携処理手段と、
を備えることを特徴とするデータ連携支援方法。
【発明の詳細な説明】
【技術分野】  本発明は、アプリケーション間でデータを連携させる技術に関する。
【背景技術】  あるアプリケーション（以下、ターゲットＡＰＬという）の表示画面に表示される情報を、更なる別のアプリケーション（以下、連携ＡＰＬという）において用いることができるようにシステムを改造することが必要になる場合がある。このような場合、従来技術によれば以下のような手順を行う。
１）まず、ターゲットＡＰＬのデータ項目を表示する画面を紙等に出力させ、人手を用いて、その画面中で必要なデータ項目を連携ＡＰＬに再入力する。
２）ターゲットＡＰＬと連携ＡＰＬとの間でデータ連携が可能となるように、両方のＡＰＬに改造を行う。
この従来技術によれば、手順１）では作業の際に人手が必要であるため、データ入力の負担が生じると共に誤入力が発生する可能性があるという問題があった。手順２）では、連携ＡＰＬのみならずターゲットＡＰＬを改造することが必要となるため、システム開発の規模が大きくなり、これに伴い、開発予算及び期間が増大するという問題があった。また、ターゲットＡＰＬの開発者が連携ＡＰＬのそれと異なる場合等には、機密情報の開示が必要となる場合もあり、開発者双方の合意が得られなければ、そもそも、ターゲットＡＰＬを改造する事ができない場合もあるという問題もあった。
なお、公開特許公報特開平８−８３２８５号によれば、スキャナを用いて紙に出力されたデータを画像データとして読みこみ、その画像データから文字を表示する領域を認識し、認識された領域中の画像データから文字コードを生成し、その文字コードをデータベースに登録するシステムが開示されている。
また、公開特許公報特開平１０−２４０９０１号によれば、予め文書構造のレイアウト規則を記憶し、さらに、文書の画像データを蓄積し、蓄積された画像データのレイアウトを上記レイアウト規則に基づいて解析し、解析結果に基づいて上記画像データから文字パターンを切り出し、その切り出された文字パターンから文字を認識し、文字認識の結果をファイルに格納するシステムを開示する。
両発明は、上記の手順１）における人手を用いた再入力を省くことを可能とする。しかし、両発明ともプログラム間のデータ連携を可能とするためには、画面を紙に出力すること、及び、ターゲットＡＰＬ及び連携ＡＰＬに改造を行う事が必要であるという問題を依然として有する。
【発明の開示】
本発明の目的は、ターゲットＡＰＬと連携ＡＰＬとの間でデータ連携ができるようにシステムを改造する際に、画面の紙媒体への出力、人手によるデータ項目の入力、及び、ターゲットＡＰＬ及び連携ＡＰＬの改造を不要とすることを目的とする。
上記目的を達成するために、本発明の１態様によれば、プログラム間のデータ連携を支援するデータ連携支援装置において、第１のプログラム（ターゲットＡＰＬ）から表示画面の画面イメージデータを取込む表示画面取込手段と、取込まれた前記画面イメージデータから第２のプログラム（連携ＡＰＬ）へ出力すべき連携データを取得する項目情報取得手段と、取得された前記連携データを前記第２のプログラムへ出力する項目情報出力手段とを備える。
上記構成において、第１のプログラム中の表示画面を紙等に出力するのではなく、第１のプログラムから画面イメージデータとして取込み、取込まれた画面イメージデータから連携データを取得し、取得された連携データを第２のプログラムに出力する。これにより、上記目的を達成する。
また、上記データ連携支援装置は、表示画面中の領域を示す座標情報及び前記領域に表示されるイメージデータを含む画面種別判定情報に基づいて、前記画面イメージデータから前記領域に表示されるイメージデータを切り出し、切り出されたイメージデータと前記画面種別判定情報に含まれるイメージデータとが一致するか否か判定することにより表示画面を識別する画面種別判定手段を更に含み、上記項目情報取得手段は、識別された表示画面の画面イメージデータから連携データを取得することとしてもよい。
これにより、表示画面の識別をイメージデータに基づいて自動的に行うことを可能とする。
また、上記項目情報取得手段は、表示画面中の領域を示す座標情報及び前記領域に表示されるデータの属性を示すデータ属性情報を含む認識項目情報に基づいて、前記画面イメージデータから前記領域に表示されるデータを切り出し、切り出されたデータを前記データ属性情報に基づいて認識し、前記連携データを認識結果として取得することとしてもよい。
また、上記データ連携支援装置は、前記第２のプログラムによって処理された前記連携データを前記第１のプログラムに出力する項目情報出力手段を更に備えることとしても良い。これにより、第２のプログラムによる連携データの処理結果を第１のプログラムに返すことが可能となる。
なお、上記項目情報出力手段は、表示画面中の領域を示す座標情報を含む出力方法情報に基づいて、前記第２のプログラムによって処理された前記連携データは、前記第１のプログラムの表示画面中の前記領域に出力することとしてもよい。
また、本発明の別の１態様によれば、プログラム間のデータ連携を支援するデータ連携支援装置において、第１のプログラムから表示画面の画面イメージデータを取り込む表示画面取込手段と、表示画面中の領域を示す座標情報及び前記領域に表示されるイメージデータを含む画面種別判定情報に基づいて、前記画面イメージデータから前記領域に表示されるイメージデータを切り出し、切り出されたイメージデータと前記画面種別判定情報に含まれるイメージデータとが一致するか否か判定することにより表示画面を識別する画面種別判定手段と、第２のプログラムによって処理された連携データを前記第１のプログラムに出力する項目情報出力手段を備える。
上記構成において、第１のプログラム中の表示画面を画面イメージデータとして取込み、取込まれた画面イメージデータに基づいて取込まれた表示画面を識別し、識別された表示画面に、第２のプログラムによって処理されたデータを出力させる事が可能となる。これによっても、第１及び第２のプログラムを改造しなくとも、第１及び第２のプログラムの間でデータ連携を実現することが可能となり、上記目的を達成する。
また、上記データ連携支援装置によって行われる処理と同様の手順を行うデータ連携支援方法によっても、上記コンピュータと同様の作用・効果が得られる。従って、上記データ連携支援方法も上記目的を達成することが可能である。
また、上記データ連携支援方法において行われる手順と同様の制御をプロセッサに行わせるプログラムも、そのプログラムをプロセッサに実行させることによって、上記目的を達成することが可能である。さらに、上記プログラムを記録した記録媒体（記録装置）から、そのプログラムをプロセッサに読み出させて実行させることによっても、上記目的を達成することができる。
【図面の簡単な説明】  図１は、コンピュータの構成図である。
図２は、第１実施形態に係わるシステムの構成図である。
図３は、スクリーンプラグの機能構成図である。
図４は、画面定義処理の概要を説明する図である。
図５は、データ連携処理の概要を説明する図である。
図６は、表示画面取込処理の手順を示すフローチャートである。
図７は、画面種別定義処理の手順を示すフローチャートである。
図８は、上記画面種別判定定義サブルーチンの手順を示すフローチャートである。
図９は、認識項目定義サブルーチンの手順を示すフローチャートである。
図１０は、連携方法定義サブルーチンの手順を示すフローチャートである。
図１１は、定義重複確認処理の手順を示すフローチャートである。
図１２は、画面種別判定処理の手順を示すフローチャートである。
図１３は、イメージ比較サブルーチンの手順を示すフローチャートである。
図１４は、項目情報取得・認識処理の手順を示すフローチャートである。
図１５は、連携処理の手順を示すフローチャートである。
図１６は、項目情報出力処理の手順を示すフローチャートである。
図１７は、ターゲットＡＰＬの表示画面の一例を示す図である。
図１８は、画面種別判定情報の一例を示す図である。
図１９は、認識項目情報の一例を示す図である。
図２０は、連携方法情報の一例を示す図である。
図２１は、出力方法情報の一例を示す図である。
図２２は、画面イメージデータ中から切り出される領域について説明する図である。
図２３は、イメージ比較サブルーチンにおいてマスクされる部分について説明する図である。
図２４は、画面イメージデータ中から連携すべきデータを取り出して認識する処理について説明する図である。
図２５は、図１９に示す認識項目情報に基づいて図２４に示す画面から取得された認識項目を示す図である。
図２６は、図２４に示す画面から取得された認識項目の確認画面の一例を示す図である。
図２７は、連携ＡＰＬによる印鑑照合処理の結果を示す画面の一例を示す図である。
図２８は、連携処理の結果の確認画面の一例を示す図である。
図２９は、ターゲットＡＰＬの画面に連携結果情報を出力した画面の一例を示す図である。
図３０は、第１実施形態の１変形例におけるデータ連携処理の概要を説明する図である。
図３１は、第２実施形態に係わるシステムの構成図である。
【発明を実施するための最良の形態】  本発明の実施形態について図面を参照しながら説明する。なお、同じ装置等には同じ参照番号をつけ、説明を省略する。
本発明は、コンピュータを用いて実現される。まず、図１を用いてコンピュータの構成について説明する。
図１に示すようにコンピュータは、ＣＰＵ１１、メモリ１２、入力装置１３、出力装置１４、外部記憶装置１５、媒体駆動装置１６、及びネットワーク接続装置１７を備え、それらはバス１８により互いに接続されている。
メモリ１２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等を含み、処理に用いられるプログラムとデータを格納する。プログラム間のデータ連携を支援する制御をコンピュータに行わせるデータ連携支援プログラム（後述）は、コンピュータのメモリ１２の特定のプログラムコードセグメントに格納される。また、メモリ１２は、後述の画面イメージ書き込み部２２８を実現する。
ＣＰＵ１１は、メモリ１２を利用して上述のプログラムを実行することにより、必要な処理を行う。メモリ１２に、データ連携支援プログラムを格納し、このプログラムをＣＰＵ１１に実行させることにより、コンピュータに、データ連携支援装置として機能させることが可能となる。
入力装置１３は、例えば、キーボード、ポインティングデバイス、タッチパネル等であり、ユーザからの指示や情報の入力に用いられる。出力装置１４は、例えば、ディスプレイやプリンタ等であり、コンピュータのユーザへの問い合わせ、処理結果等の出力に用いられる。
外部記憶装置１５は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置等である。外部記憶装置１５は、後述の画面情報ＤＢ２２９を実現する。さらに、上述のプログラムをコンピュータの外部記憶装置１５に保存しておき、必要に応じて、それらをメモリ１２にロードして使用することもできる。
媒体駆動装置１６は、可搬記録媒体１９を駆動し、その記録内容にアクセスする。可搬記録媒体１９としては、メモリカード、メモリスティック、フレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、光ディスク、光磁気ディスク、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等、任意のコンピュータ読み取り可能な記録媒体が用いられる。この可搬記録媒体１９に上述のデータ連携支援プログラムを格納しておき、必要に応じて、それをコンピュータのメモリ１２にロードして使用することもできる。
ネットワーク接続装置１７は、ＬＡＮ、ＷＡＮ等の任意のネットワーク（回線）を介して外部の装置と通信し、通信に伴うデータ変換を行う。また、必要に応じて、上述のプログラムを外部の装置から受け取り、それをコンピュータのメモリ１２にロードして使用することもできる。
次に、図２を用いて、本発明の第１実施形態に係わるシステムの構成について説明する。
図２に示すように、コンピュータ２０には、連携ＡＰＬ２１、データ連携支援プログラム（以下、スクリーンプラグという）２２、ターゲットＡＰＬ２３及びオペレーションシステム（以下、ＯＳ）２４がインストールされている。
連携ＡＰＬ２１は、スクリーンプラグ２２を介してターゲットＡＰＬ２３から連携すべきデータを受け取り、そのデータを用いて所定のアルゴリズムに基づいて処理を行う。
スクリーンプラグ２２は、ターゲットＡＰＬ２３から表示画面の画面イメージデータを取り込み、その画面イメージデータからデータを取得する。そして、取り出したデータを連携ＡＰＬ２１へ出力する。これにより、スクリーンプラグ２２は、連携ＡＰＬ２１とターゲットＡＰＬ２３との間のデータ連携を実現する。また、必要に応じて、スクリーンプラグ２２は、連携ＡＰＬ２１による処理結果をターゲットＡＰＬ２３に戻す。
ターゲットＡＰＬ２３は、所定のアルゴリズムに基づいてデータを処理する。ＯＳ２４は、連携ＡＰＬ２１、スクリーンプラグ２２及びターゲットＡＰＬ２３等のアプリケーションに対して、システム管理機能を提供する。
なお、スクリーンプラグ２２がデータを連携させる、連携ＡＰＬ２１及びターゲットＡＰＬ２３が行う処理は、どのようなものであってもよい。図２では、例として、コンピュータ２０とコンピュータ３０はネットワークを介して接続され、コンピュータ２０内のターゲットＡＰＬ２３は、コンピュータ３０のデータベース３１から検索システム３２を介してデータを取得し、そのデータを用いて処理を行う場合を示す。ここで、ネットワークＮは、１つのネットワークであっても、複数のネットワークの組み合わせであってもよい。ネットワークＮとして、インターネット、電話回線網、無線回線網等のＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）及びＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等が考えられる。
以下、図３を用いて、スクリーンプラグ２２の機能構成について説明する。
図３に示すようにスクリーンプラグ２２は、表示画面取込部２２１、画面種別定義部２２２、定義重複確認部２２３、画面種別判定部２２４、項目情報取得／認識部２２５、連携処理部２２６、項目情報出力部２２７、画面イメージ書き込み部２２８、画面情報データベース（以下、データベースをＤＢと略記する）２２９を備える。
スクリーンプラグ２２が行う処理には、大別して、画面定義処理とデータ連携処理とがある。前者は、データ連携を行う前に行う処理であり、ターゲットＡＰＬ２３から取得するべきデータが、どの表示画面のどの位置にどのようなデータ形式で存在するのか、取得したデータをどのプログラムにどのようにして出力するのか等を定義する処理である。表示画面取込部２２１、画面種別定義部２２２及び定義重複確認部２２３によってこの処理が行われ、この処理の結果は、画面情報ＤＢ２２９に書き込まれる。後者は、画面定義処理の結果に基づいて、ターゲットＡＰＬ２３から取り出したデータを連携ＡＰＬ２１に連携させる処理である。表示画面取込部２２１、画面種別判定部２２４、項目情報取得／認識部２２５、連携処理部２２６及び項目情報出力部２２７によってこの処理が行われる。この処理の際には、画面情報ＤＢ２２９に書きこまれた画面定義処理の結果が用いられる。
以下、各部が行う処理について説明する。
表示画面取込部２２１は、ターゲットＡＰＬ２３から表示画面の画面イメージデータを取り込み、画面イメージ書き込み部２２８に書き込む。
画面種別定義部２２２は、画面イメージ書き込み部２２８に書きこまれた画面イメージデータに基づいて、ターゲットＡＰＬ２３から取り出すべきデータの画面における位置及びデータの属性等を定義する画面定義情報を作成する。画面定義情報に含まれる情報について詳しくは後述する。定義重複確認部２２３は、、画面種別定義部２２２によって作成された画面定義情報が、画面情報ＤＢ２２９に格納されている画面定義情報と重複しているか否か確認し、重複していないことを確認した場合、作成された画面定義情報を画面情報ＤＢ２２９に格納させる。
画面種別判定部２２４は、画面情報ＤＢ２２９に格納された画面定義情報と画面イメージ書き込み部２２８に書きこまれた画面イメージデータとに基づいて、取り込まれた画面を識別する。画面が識別された場合、項目情報取得／認識部２２５は、画面定義情報に基づいて、画面イメージデータから連携ＡＰＬ２１で連携させるべきデータを取り出す。
連携処理部２２６は、取り出されたデータをデータの連携先となる連携ＡＰＬ２１の所定のデータ領域に所定の連携方法で出力する。なお、データの連携先となる連携ＡＰＬは連携先識別情報によって予め指定され、データの連携方法は連携方法指定情報によって予め定義されている。連携先識別情報及び連携方法指定情報は共に、画面定義情報に含まれる。また、連携処理部２２６は、連携ＡＰＬ２１から処理されたデータを受け取り、項目情報出力部２２７に出力する。項目情報出力部２２７は、連携ＡＰＬ２１によって処理されたデータをターゲットＡＰＬ２３又は、他のアプリケーションに出力する。連携ＡＰＬ２１による処理結果の出力先は、画面定義情報に含まれる出力先定義情報によって指定される。なお、図２では、連携ＡＰＬ２１による処理結果がターゲットＡＰＬ２３に戻される場合を示している。
画面イメージ書き込み部２２８には、表示画面取込部２２１によって取り込まれた画面イメージデータが書き込まれる。この画面イメージ書き込み部２２８は、原則的に、現在、画面定義処理又はデータ取り出し処理の対象となっている画面の画面イメージデータが書き込まれる。
画面情報ＤＢ２２９には、画面種別定義部２２２によって作成された画面定義情報が格納される。
以下、図４及び図５を用いて、上記画面定義処理及びデータ連携処理の概要について説明する。図４及び図５において、スクリーンプラグ２２によって行われる処理は、点線で囲まれている。各処理について、詳しくは後述する。
まず、画面定義処理の概要について説明する。キーボード等の入力装置１３からの入力を契機として画面定義処理が開始されると、まず、表示画面取込部２２１は、ターゲットＡＰＬ２３から表示画面を取り込む表示画面取込処理を行う。取り込まれた画面の画面イメージデータは画面イメージ書き込み部２２８に書き込まれる。画面種別定義部２２２は、画面イメージ書き込み部２２８に書きこまれた画面イメージデータ及びユーザの指示に基づいて画面定義情報を作成し、作成された画面定義情報を画面情報ＤＢ２２９に書き込む。定義重複確認部２２３は、画面情報ＤＢ２２９に格納されている画面定義情報のうちで互いに重複しているものがあるか否か確認する定義重複確認処理を行う。確認の結果、重複している場合、定義重複確認部２２３は、重複している旨を示す情報を出力する。
次に、データ連携処理の概要について説明する。キーボード等の入力装置１３からの入力を契機としてデータ連携処理が開始されると、まず、表示画面取込部２２１は、ターゲットＡＰＬ２３から表示画面を取り込む表示画面取込処理を行う。取り込まれた画面の画面イメージデータは画面イメージ書き込み部２２８に書き込まれる。画面種別判定部２２４は、画面情報ＤＢ２２９から画面定義情報を読み出して、その画面定義情報に基づいて画面イメージ書き込み部２２８に画面イメージデータが書きこまれた画面を識別する。項目情報取得／認識部２２５は、識別結果及びその画面に対応する画面定義情報に基づいて、画面イメージデータから連携ＡＰＬ２１に出力するべきデータを取り出し、取り出したデータを確認するための確認画面を出力装置１４に表示させる。ユーザは、この確認画面に基づいて取り出されたデータを確認することができる。なお、この確認画面の表示処理は、省略する事が可能である。
続いて、連携処理部２２６は、画面定義情報に含まれる連携方法情報に基づいて、取り出されたデータを所定の連携ＡＰＬ２１に所定の連携方法で出力する。さらに、連携処理部２２６は、連携ＡＰＬ２１から処理されたデータを受け取り、そのデータを確認する連携結果の確認画面を出力装置１４に表示させる。なお、この連携結果の確認画面の表示処理は省略可能である。
項目情報出力部２２７は、画面定義情報に含まれる出力方法情報に基づいて、連携結果として得られたデータをターゲットＡＰＬ２３の所定の領域に出力する。さらに、項目情報出力部２２７は、このデータ連携処理の結果を確認する結果確認画面を出力装置１４に表示させる。なお、連携結果として得られたデータの出力処理及びその確認画面の表示処理は省略可能である。また、図２と同様に、図５でも、連携ＡＰＬ２１による処理結果がターゲットＡＰＬ２３に戻される場合を示している。
以下、図６から図２９を用いて各処理について詳しく説明する。なお、以下の説明において、ターゲットＡＰＬ２３を金融送金業務用プログラムであると仮定し、連携ＡＰＬ２１を印鑑照合プログラムであると仮定する。そして、ターゲットＡＰＬ２３の「送金処理」画面から取り出されたデータ項目に基づいて連携ＡＰＬ２１に印鑑照合処理を行わせ、その照合結果をターゲットＡＰＬ２３に戻させる場合を例とする。また、説明にあたり、具体的な送金処理画面の例を用いる。これらの仮定は、説明を具体的にすることにより理解を容易にするためであり、ターゲットＡＰＬ２３及び連携ＡＰＬ２１を限定したり、本発明の応用範囲を限定したりする趣旨ではない。
まず、図６を用いて、表示画面取込処理の手順について説明する。図６に示すように、まず、表示画面取込部２２１は、ターゲットＡＰＬ２３から表示画面を取り込み、その画面中のキャレット或いはカーソルを非表示状態にする（ステップＳ１）。続いて、表示画面取込部２２１は、その画面の画面イメージデータが存在するメモリ中の領域を取得し（ステップＳ２）、その領域からその画面の画面イメージデータをコピーする（ステップＳ３）。その後、表示画面取込部２２１は、その表示画面中のキャレット或いはカーソルを表示状態に戻す（ステップＳ４）。表示画面取込部２２１は、コピーされた画目イメージデータを、画面イメージ書き込み部２２８に書き込む（ステップＳ５）。
図１７に、表示画面取込部２２１によって取り込まれた表示画面の一例を示す。図１７に示す表示画面は、金融送金業務用プログラムによる送金処理において表示される。この画面には、この画面で行われる処理を示す文字情報として図１７の向かって左上に「送信処理」が表示され、さらに、画面識別番号として図１７の向かって右上に「Ｍｅｎｕ  ００２０１」が表示されている。なお、画面識別番号は、画面種別定義部２２２が設定する画面ＩＤと一致する必要はない。
また、この画面には、取引情報として、顧客データベース番号（ＣＩＦ番号、ＣＩＦ：Ｃｕｓｔｏｍｅｒ  Ｉｎｔｅｒａｃｔｉｏｎ  Ｆｉｌｅ）、顧客名、送金金額、印鑑照合の結果を入力する欄、及び送金処理の申し込み用紙から読取られた印鑑（以下、読取印という）の画像イメージ（以下、読取印）が表示されている。
以下、図１７に示すこの表示画面の画面イメージデータを参照しながら、図７から図１０を用いて、画面種別定義処理の手順について説明する。この画面種別定義処理は、画面定義処理に含まれる。まず、図７に示すように、画面種別定義処理において、画面種別定義部２２２は、画面イメージ書き込み部２２８から画面イメージデータを読み出す（ステップＳ１１）。続いて、画面種別定義部２２２は、画面を識別する画面ＩＤを設定する（ステップＳ１２）。さらに、画面種別定義部２２２は、画面種別判定定義サブルーチン（ステップＳ１３）、認識項目定義サブルーチン（ステップＳ１４）、及び連携方法定義サブルーチン（ステップＳ１５）を行い、処理を終了する。各サブルーチンについて詳しくは後述する。
画面定義情報は、連携させるべきデータを含む画面に対応して作成される。画面定義情報は、画面種別判定情報、認識項目情報及び連携方法情報を含む。連携ＡＰＬ２１による処理結果を所定のアプリケーションに出力する場合、画面定義情報は、更に、出力方法情報を含む。画面種別判定情報は画面種別判定定義サブルーチンにおいて、認識項目定義情報は認識項目定義サブルーチンにおいて、連携方法情報と出力方法情報は連携方法定義サブルーチンにおいて、それぞれ作成される。
以下、図８及び図１８を用いて、上記画面種別判定定義サブルーチンの手順について説明する。図８に示すように、画面種別定義部２２２は、取り込まれた画面から画面種別判定情報として取り出すべき項目の指定を受けると、その項目に項目ＩＤを付す（ステップＳ２１）。続いて、画面種別定義部２２２は、画面イメージ中で取り出すべき項目が表示されている領域（識別部分）の指定を受けると（ステップＳ２２）、その座標に基づいて画面イメージデータからイメージデータを切り出す（ステップＳ２３）。画面種別定義部２２２は、項目ＩＤ、座標及び切り出したイメージデータを含む画面識別判定情報を作成する。ステップＳ２１からＳ２３を画面種別判定情報として取り出すべき全ての項目について行った場合（ステップＳ２４：Ｙｅｓ）、処理を終了する。そうでない場合（ステップＳ２４：Ｎｏ）、ステップＳ２１にもどる。
図１８に、図１７に示す画面についての画面種別判定情報の一例を示す。図１８に示すように、図１７に示す画面についての画面種別判定情報は、２つある。１つは、図１７の向かって左上に表示される「送信処理」という文字が表示される画面中の領域を示す座標情報及びその座標情報に基づいて切り出されたイメージデータを含む画面種別判定情報であり、１つは、「Ｍｅｎｕ  ００２０１」という番号が表示される画面中の領域を示す座標情報及びその座標情報に基づいて切り出されたイメージデータを含む画面種別判定情報である。なお、図１８において、例として、領域は、矩形を形成する４つの頂点のうち相対する２つの頂点の座標を用いて示されている。また、図１８において画面種別判定情報には「項目ＩＤ」の代わりに「項目名」が含まれているが、いずれであってもよい。画面種別判定情報は、後述のデータ連携処理において、ターゲットＡＰＬ２３から取り込まれた画面を識別する際に用いられる。
次に、図９及び図１９を用いて、認識項目定義サブルーチンの手順について説明する。図９に示すように、まず、画面種別定義部２２２は、表示画面取込部２２１によって取り込まれた画面から認識項目として取り出すべきデータの項目名の指定を受ける。なお、この項目名は、画面中の項目名と一致させることとしても良い（ステップＳ３１）。続いて、画面種別定義部２２２は、その画面中において、認識項目が表示される領域の指定を受ける（ステップＳ３２）。さらに、画面種別定義部２２２は、その領域に表示されるデータの属性の指定を受ける（ステップＳ３３）。画面種別定義部２２２は、ステップＳ３１からＳ３３の指定に基づいて、画面種別定義部２２２は、項目名、指定された領域を示す座標情報、及びデータ属性を示すデータ属性情報を含む認識項目情報を作成する。データ属性として、例えば、文字データ、エディット・コントロール、スタティック・コントロール及びイメージデータ等が挙げられる。ステップＳ３１からＳ３３を認識項目として取り出すべき全ての項目について行った場合（ステップＳ３４：Ｙｅｓ）、処理を終了する。そうでない場合（ステップＳ３４：Ｎｏ）、ステップＳ３１にもどる。認識項目情報は、後述のデータ連携処理において、ターゲットＡＰＬ２３から取り込まれた画面から連携ＡＰＬ２１に連携させるべきデータを取り出す際に用いられる。
図１９に、図１７に示す画面についての認識項目情報の一例を示す。図１９に示すように、図１７に示す画面についての認識項目情報は、４つある。１つ目は、ＣＩＦ番号の入力欄に対応する認識項目情報であり、２つ目は、顧客名の入力欄に対応する認識項目情報であり、３つ目は、送金金額の入力欄に対応する認識項目情報であり、４つ目は、読取印の画像イメージに対応する認識項目情報である。また、図１９に示すように、各認識項目情報は、項目名、その項目が画面上に表示されている領域を示す座標情報、及びその項目のデータ属性情報を含む。図１８と同様に、図１９においても、領域は、矩形を形成する相対する２つの頂点の座標を用いて示されている。
次に、図１０、図２０及び図２１を用いて、連携方法定義サブルーチンの手順について説明する。図１０に示すように、まず、画面種別定義部２２２は、連携ＡＰＬ２１の指定と連携方法の指定を受ける（ステップＳ４１）。画面種別定義部２２２は、指定に基づいて、連携ＡＰＬ２１を識別する連携先識別情報と連携方法を指定する連携方法指定情報を含む連携方法情報を作成する。連携方法として、例えば、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｐｒｏｔｏｃｏｌ）、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）、ＤＬＬ（Ｄｙｎａｍｉｃ  Ｌｉｎｋ  Ｌｉｂｒａｒｙ）等が挙げられる。
図２０に、連携方法情報の一例を示す。図２０に示す例では、連携方法情報には、連携ＡＰＬ２１を識別する連携先識別情報として連携ＡＰＬ２１のプログラム名が含まれている。また、連携ＡＰＬ２１とターゲットＡＰＬ２３間のデータの連携方法としてＴＣＰ／ＩＰ、ソケット通信が指定されている。
続いて、画面種別定義部２２２は、連携ＡＰＬ２１が連携されたデータを処理した結果として得られた情報（以下、連携結果情報）を連携ＡＰＬ２１からターゲットＡＰＬ２３へ出力するか否かを指定する情報を受ける（ステップＳ４２）。指定に基づいて、連携結果情報をターゲットＡＰＬ２３へ出力すると判定した場合（ステップＳ４２：Ｙｅｓ）、ステップＳ４３に進む。そうでない場合（ステップＳ４２：Ｎｏ）、ステップＳ４６に進む。
ステップＳ４２でＹｅｓの場合、ステップＳ４３において、画面種別定義部２２２は、ユーザの指定に基づいて連携結果情報の項目名及びその連携結果情報を表示するべき画面中の出力先領域を示す座標情報を含む出力方法情報を作成する（ステップＳ４３及びＳ４４）。なお、連携結果情報として複数の項目を出力する場合、各項目に対応して複数の出力方法情報が作成される。
画面種別定義部２２２は、連携結果情報を出力するべき全ての項目についてステップＳ４１からＳ４３を行った場合（ステップＳ４５：Ｙｅｓ）、処理を終了する。そうでない場合（ステップＳ４５：Ｎｏ）、ステップＳ４３にもどる。この出力方法情報は、後述のデータ連携処理において、連携結果情報をターゲットＡＰＬ２３の画面に出力する際に用いられる。
ステップＳ４２でＮｏの場合、ステップＳ４６において、出力方法情報を作成する必要はないため、処理を終了する。
図２１に、出力方法情報の一例を示す。図２１に示すように、出力方法情報は、連携結果情報の項目名とその連携結果情報を出力するべき画面上の出力先領域を示す座標情報を含む。図２１の場合、連携結果情報として出力される項目は１つであるため、作成される出力方法情報も１つである。この出力方法情報に基づいて、連携結果情報は、図１７に示す画面中の照合結果の入力欄に表示される。
上記の画面種別定義処理において作成された画面定義情報は、画面情報ＤＢ２２９に書き込まれる。続いて、定義重複確認処理において、作成された画面定義情報が、先に作成された画面定義情報と重複しているか否か確認される。この定義重複確認処理は、画面定義処理に含まれる。以下、図１１を用いて、定義重複確認処理の手順について説明する。図１１に示すように、まず、定義重複確認部２２３は、まだ重複確認処理を行っていない画面定義情報を画像情報ＤＢ２２９から読み出す（ステップＳ５１）。画像情報ＤＢ２２９中の全ての画面定義情報について重複確認処理を既に行っていた場合（ステップＳ５２：Ｙｅｓ）、ステップＳ５８に進む。そうでない場合（ステップＳ５２：Ｎｏ）、ステップＳ５３以降を行う。
画面定義情報には１以上の画面種別判定情報が含まれる。各画面種別判定情報には、画面上の領域を示す座標情報及びイメージデータが含まれる。ステップＳ５３において、定義重複確認部２２３は、ステップＳ５１で読み出した画面定義情報から、まだ重複判定処理が行われていない画面種別判定情報からイメージデータを取得する。ステップＳ５１で読み出した画面定義情報中の全ての画面種別判定情報について重複確認処理を既に行っていた場合（ステップＳ５４：Ｙｅｓ）、ステップＳ５７に進む。そうでない場合（ステップＳ５４：Ｎｏ）、ステップＳ５５及びＳ５６を行う。
ステップＳ５５において、定義重複確認部２２３は、ステップＳ５３で取得したイメージデータに対応する座標情報に基づいて、画面イメージ書き込み部２２８に書き込まれている画面イメージデータからイメージデータを切り出す。そして、定義重複確認部２２３は、ステップＳ５３で取得したイメージデータと、切り出したイメージデータとを比較し、イメージデータの比較結果に基づいて、両者が一致するか否か判定する。このイメージを比較する手順については、イメージ比較サブルーチンとして、詳しくは後述する。そして、定義重複確認部２２３は、ステップＳ５３で取得したイメージデータについての判定結果を一時記憶格納領域に記録し（ステップＳ５６）、ステップＳ５３に戻る。
ステップＳ５７において、定義重複確認部２２３は、一時記憶格納領域に記録された判定結果が、「全ての判定において一致」を示すか否か判定し、ステップＳ５１で読み出された画面定義情報についての判定結果を「一致」として一時記憶格納領域に格納し、ステップＳ５３にもどる。
ステップＳ５８において、定義重複確認部２２３は、判定結果が「一致」となっている画面定義情報の数をカウントする。さらに、定義重複確認部２２３は、その数が「１」である場合「重複なし」と判定し、その数が「２以上」である場合「重複有り」と判定する。定義重複確認部２２３は、判定結果をユーザに通知し、処理を終了する。
なお、上記において、画面定義情報を作成するごとに定義重複確認処理を行うとして説明した。しかし、定義するべき全ての画面についての画面定義情報を作成し、画面情報ＤＢ２２９に書き込んだ後、定義重複確認処理をおこなって、画面情報ＤＢ２２９に重複した画面定義情報が格納されているか否か判定することとしてもよい。
以下、図１２及び図２２を用いて、画面種別判定処理の手順について説明する。この画面種別判定処理は、データ連携処理に含まれる。まず、画面種別判定処理に先立って、図６を用いて説明したようにして表示画面取込処理が行われる。その後、画面種別判定部２２４は、画面イメージ書き込み部２２８から画面イメージデータを取得し（ステップＳ６１）、さらに、画面情報ＤＢ２２９から、まだ画面種別判定処理が行われていない画面定義情報を１つ取り出す（ステップＳ６２）。
画像情報ＤＢ２２９中の全ての画面定義情報について画面種別処理を既に行っていた場合（ステップＳ６３：Ｙｅｓ）、ステップＳ６９に進む。そうでない場合（ステップＳ６３：Ｎｏ）、ステップＳ６４以降を行う。
画面定義情報には、１以上の画面種別判定情報が含まれ、各画面種別判定情報には、画面イメージデータ中の領域を示す座標情報及びイメージデータが含まれる。ステップＳ６４からＳ６６は、ステップＳ６２で取得した画面定義情報に含まれる全ての画面種別判定情報について行われる。
ステップＳ６４において、画面種別判定部２２４は、ステップＳ６２で取得した画面定義情報から１つの画面種別判定情報を取得する。さらに、画面種別判定部２２４は、その画面種別判定情報中の座標情報に基づいて、ステップＳ６１で取得した画面イメージデータからイメージデータを切り出す。
以下、図２２を用いて、画面イメージデータ中から切り出される領域について説明する。
図２２には、図１８に示す画面種別判定情報中の座標によって示される領域が矢印で示されている。図２２に示すように、画面イメージデータから、文字「送金処理」が表示される領域及び画面識別番号「Ｍｅｎｕ  ００２０１」が表示される領域が、画面種別判定処理のために図１８に示す画面種別判定情報に基づいて切り出される。
続いて、画面種別判定部２２４は、ステップＳ６４で取得した画面種別判定情報中のイメージデータと、画面イメージデータから切り出したイメージデータとを比較するイメージ比較サブルーチンを行う（ステップＳ６５）。このイメージ比較サブルーチンについて、詳しくは後述する。
続いて、画面種別判定部２２４は、イメージ比較サブルーチンの結果に基づいて、画面種別判定情報に含まれるイメージデータとステップＳ６４で切り出されたイメージデータとが一致するか否か判定する（ステップＳ６６）。両者が一致しない場合（ステップＳ６６：Ｎｏ）、ステップＳ６２にもどる。両者が一致する場合（ステップＳ６６：Ｙｅｓ）、ステップＳ６７に進む。
ステップＳ６７において、画面種別判定部２２４は、ステップＳ６２で取得された画面定義情報中の全ての画面種別判定情報についてステップＳ６４からＳ６６を行ったか否か判定する。全ての画面種別判定情報についてステップＳ６４からＳ６６を行った場合（ステップＳ６７：Ｙｅｓ）、ステップＳ６８に進む。そうでない場合（ステップＳ６７：Ｎｏ）、ステップＳ６４に戻る。
ステップＳ６８において、画面種別判定部２２４は、ステップＳ６２で取得した画面定義情報は、ステップＳ６１で取得した画面イメージデータに対応すると判定し（ステップＳ６８）、処理を終了する。
ステップＳ６９において、画面種別判定部２２４は、画面情報ＤＢ２２９には、ステップＳ６１で取得された画面イメージデータに対応する画面定義情報は格納されていないと判定する。画面種別判定部２２４は、取り込まれたその画面は、データベースに登録されていないため処理エラーが発生した旨をユーザに通知し、処理を終了する。
以下、図１３及び図２３を用いてイメージ比較サブルーチンの手順について説明する。図１３に示すように、まず、画面種別判定部２２４は、ステップＳ６４で取得した画面種別判定情報中のイメージデータと、画面イメージデータから切り出したイメージデータとについて、１画素ごとの色の分布を検出する（ステップＳ７１）。続いて、画面種別判定部２２４は、、画面種別判定情報中のイメージデータと画面イメージデータから切り出したイメージデータのそれぞれについて、色の分布に基づいて背景色となっている色を決定し、その色をマスクする（ステップＳ７２）。
さらに、画面種別判定部２２４は、画面種別判定情報中のイメージデータにおいてマスクされずに残った部分の画像パターンと、画面イメージデータから切り出したイメージデータにおけるマスクされずに残った部分の画像パターンとを比較し、両者のマッチングを行う（ステップＳ７３）。そのマッチング結果は、上記ステップＳ６６の判定に用いられる（ステップＳ７４）。
以下、図２３を用いて、イメージ比較サブルーチンにおいてマスクされる部分について説明する。
図２３には、図１８に示す２つの画面種別判定情報中に含まれるイメージデータと、各画面種別判定情報に含まれる座標に基づいて切り出されたイメージデータとが示されている。例えば、項目名が「処理名」である２つのイメージデータは、文字「送金処理」を表示する。これらのイメージデータにおいて、網掛け部分が背景色として判定され、マスクされる。この結果、両イメージデータ中、文字「送金処理」を表示する画像パターンがマスクされずに残り、画面種別判定部２２４によって互いに比較される。
次に、図１４及び図２４を用いて、項目情報取得・認識処理の手順について説明する。この項目情報取得・認識処理は、データ連携処理に含まれる。画面定義情報には、１以上の認識項目情報が含まれる。以下のステップＳ８１からＳ９３は、ステップＳ６１で取得した画面イメージデータに対応する画面定義情報に含まれる認識項目情報それぞれについて行われる。
まず、項目情報取得／認識部２２５は、１つの認識項目情報を画面定義情報から取得し、その認識項目情報に含まれるデータ属性を示す情報に基づいて、項目認識の処理モードを判定する（ステップＳ８１）。例えば、データ属性が「文字データ」を示す場合、項目情報取得／認識部２２５は、処理モードをＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）等を用いた文字認識であると判定し（ステップＳ８１：認識）、ステップＳ８２に進む。また、例えば、データ属性が「エディット・コントロール」や「スタティック・コントロール」を示す場合、項目情報取得／認識部２２５は、処理モードをデータ項目の読み出しであると判定し（ステップＳ８１：項目読み出し）、ステップＳ８９に進む。データ属性が「イメージデータ」を示す場合（ステップＳ８１：イメージ）、ステップＳ９３に進む。
ステップＳ８２において、項目情報取得／認識部２２５は、その認識項目情報に含まれる座標情報に基づいて、取り込まれた画面イメージデータからイメージデータを切り出して、そのイメージデータを構成する画素１つ１つを走査して色の判定を行う事により、文字を示す色と背景を示す色とを判定する（ステップＳ８２）。
続いて、項目情報取得／認識部２２５は、背景画像と文字を分離する閾値を用いてイメージデータを２値化することにより、文字を示す色と背景を示す色とを分離する（ステップＳ８３）。２値化することによって文字を示す色が白、背景画像を示す色が黒となってしまった場合、項目情報取得／認識部２２５は、両者の色を示す値（ビット）を反転させる（ステップＳ８４）。
さらに、項目情報取得／認識部２２５は、連続する黒画素群（ラベル情報）を取得することにより、１文字ずつのラベル情報を抽出する（ステップＳ８５）。項目情報取得／認識部２２５は、ラベル情報を抽出した結果に基づいて１文字のサイズを判定し、その１文字のサイズが文字認識処理のために適当ではない場合、適当なサイズになるように文字を拡大又は縮小する（ステップＳ８６）。
続いて、項目情報取得／認識部２２５は文字の認識を行い（ステップＳ８７）、その認識結果をユーザに通知する。なお、２以上の認識項目情報が画面定義情報に含まれる場合、全ての認識認識項目情報についての認識処理が終了した後に、確認画面を表示させることにより認識結果をユーザに通知する事としても良い。
ステップＳ８９において、項目情報取得／認識部２２５は、認識項目情報に含まれる座標に基づいて認識すべきデータ項目のコントロールハンドルを取得する。さらに、認識項目情報に含まれるデータ属性を示す情報に基づいて、コントロールがエディット・コントロールであるのか、スタティック・コントロールであるのか判定する（ステップＳ９０）。
コントロールがエディット・コントロールである場合（ステップＳ９０：エディット・コントロール）、項目情報取得／認識部２２５は、例えば、クラスメンバ関数ＧｅｔＬｉｎｅ（）等を用いて、コントロールからデータを読み出し、認識結果として取得し（ステップＳ９１）、ステップＳ８８に進む。コントロールがスタティック・コントロールである場合（ステップＳ９０：スタティック・コントロール）、項目情報取得／認識部２２５は、例えば、クラスメンバ関数ＧｅｔＴｅｘｔ（）等を用いて、コントロールからデータを読み出して、認識結果として取得し（ステップＳ９２）、ステップＳ８８に進む。
ステップＳ９３において、項目情報取得／認識部２２５は、認識項目情報に含まれる座標情報に基づいて、画面イメージデータからイメージデータを切り出して、ステップＳ８８に進む。
以下、図２４を用いて、画面イメージデータ中から連携すべきデータを取り出して認識する処理について説明する。
図２４には、図１９に示す４つの認識項目情報に基づいて取り出される画面イメージデータ中の４つの認識項目を示す。例えば、項目名が「ＣＩＦ番号」である認識項目は、画像イメージデータからイメージデータとして切り出され、文字認識処理を経て文字データとして取得される。また、例えば、項目名が「顧客名」である認識項目及び項目名が「送金金額」である認識項目は、それぞれ画像イメージデータ中の入力欄から直接にデータとして取得される。また、項目名が「読取印」である認識項目は、画像イメージデータからイメージデータとして切り出され、そのまま取得される。なお、図２４において、具体的なクラスメンバ関数が記載されているが、これは例示に過ぎない。図２５に、図１９に示す認識項目情報に基づいて図２４に示す画面から取得された認識項目を示す。
図２６に、図２４に示す画面から取得された認識項目の確認画面の一例を示す。図２６において、データ属性が「イメージデータ」である認識項目以外の認識項目については、画面イメージデータから切り出され、まだ認識処理がされていないデータ、及び、認識処理の結果得られたデータの両方が比較可能なように表示される。図中、認識項目毎に、切り出されたままで認識処理がされていないデータが上段に表示され、認識処理の結果得られたデータが下段に表示される。データ属性が「イメージデータ」である認識項目については、画面イメージデータから切り出されたイメージデータが表示される。ユーザは、この確認画面に基づいて、認識処理が適切に行われているか否か判定し、必要に応じて、この確認画面において認識結果を修正する。確認及び修正の結果、データ連携処理を行ってよいと判定した場合、ユーザは、図２６に示す「連携開始」ボタンを押下する。これにより、項目情報取得／認識部２２５から認識結果が連携処理部２２６に出力され連携処理が開始される。なお、ユーザへの認識結果の通知及び確認画面の表示は省略可能である。
以下、図１５を用いて連携処理の手順について説明する。この連携処理は、データ連携処理に含まれる。図１５に示すように、まず、連携処理部２２６は、項目情報取得／認識部２２５から認識結果を連携すべきデータとして受け取る（ステップＳ１０１）。さらに、連携処理部２２６は、取り込まれた画像イメージデータに対応する画像定義情報から連携方法情報を取り出す（ステップＳ１０２）。
連携方法情報には、連携すべきデータの出力先となる連携ＡＰＬ２１を識別する連携先識別情報及び連携方法を指定する連携方法指定情報を含む。連携処理部２２６は、連携方法情報に基づいて、指定された連携ＡＰＬ２１に、指定された連携方法で、連携すべきデータを出力する（ステップＳ１０３）。その応答として、連携処理部２２６は、連携ＡＰＬ２１から処理されたデータ（連携結果情報）を受け、その連携処理の結果の確認画面を出力する（ステップＳ１０４）。その後、処理を終了する。なお、連携処理の結果の確認画面の出力は省略可能である。
以下、図２７及び図２８を用いて、この説明において連携ＡＰＬ２１として仮定されている印鑑照合プログラムによって行われる処理について説明する。上記のように、ターゲットＡＰＬ２３である金融送金業務用プログラムの画面から、４つの項目、「ＣＩＦ番号」、「顧客名」、「送金金額」及び「読取印」が取得され、連携ＡＰＬ２１に出力される。連携ＡＰＬ２１は、そのＣＩＦ番号及び顧客名に対応する届出印の画像イメージを不図示の届出印を記録するＤＢから取得し、その届出印の画像イメージとターゲットＡＰＬ２３から取得された読取印の画像イメージが一致するか否か判定する。なお、印鑑の照合処理について詳しくは省略する。
図２７に、連携ＡＰＬ２１による印鑑照合処理の結果を示す画面の一例を示す。図２７に示す画面には、ターゲットＡＰＬ２３の画面から取得されたＣＩＦ番号、顧客名及び読取印の画像イメージ、並びに、ＤＢから取得された届出印の画像イメージが表示されている。さらに、画面には照合結果として、両者を重ね合わせた画像が表示されている。図２７に示す画面によると、印鑑照合の結果、読取印と届出印の画像データは一致していると判定されている事が分かる。
図２８に、連携処理の結果の確認画面の一例を示す。図２８は、連携処理の結果、読取印と届出印の画像データは一致していると判定されていた場合の確認画面を示す。ユーザは、この確認画面に基づいて、連携処理が良好に実行されたか否か判定し、連携処理が良好に実行された場合、「処理継続」ボタンを押下することにより、後続する処理の実行を指示することができる。
以下、図１６及び図２９を用いて、項目情報出力処理の手順について説明する。なお、この項目情報出力処理は、連携結果情報をターゲットＡＰＬ２３に出力することが必要な場合に行われる。連携結果情報をターゲットＡＰＬ２３に出力することが不要な場合は、省略可能である。
まず、図１６に示すように、項目情報出力部２２７は、連携処理部２２６から連携結果情報を受け取り（ステップＳ１１１）、さらに、現在処理中の画面に対応する画面定義情報から出力方法情報を取得する（ステップＳ１１２）。画面定義情報には、１以上の出力方法情報が含まれ、各出力方法情報には、連携結果情報の項目名及びその連携結果情報を表示するべき画面中の出力先領域を示す座標情報が含まれる。
以下の処理は、出力方法情報毎に行われる。
まず、項目情報出力部２２７は、１つの出力方法情報を取り出し、出力方法情報に含まれる座標情報に基づいて、出力先領域についてのコントロール情報を、ターゲットＡＰＬ２３中の出力先となる画面の画面データから取得し（ステップＳ１１３）、このコントロール情報に基づいて、画面中の出力先領域に、その連携結果情報を表示させる（ステップＳ１１４）。
さらに、項目情報出力部２２７は、全ての出力方法情報についての出力処理を終了したか否か判定する（ステップＳ１１５）。全ての出力方法情報について出力処理が終了していない場合（ステップＳ１１５：Ｎｏ）、項目情報出力部２２７は、出力処理が済んだ出力方法情報の数を１インクリメントし、未処理の出力方法情報を１つ取り出す（ステップＳ１１６）。さらに、項目情報出力部２２７は、まだ出力処理が済んでいない項目を連携結果情報から取り出し（ステップＳ１１７）、ステップＳ１１４にもどる。
カウント数が、出力方法情報の総数と同じ値になった場合、項目情報出力部２２７は全ての出力方法情報について出力処理が終了したと判定し（ステップＳ１１５：Ｙｅｓ）、処理を終了する。
図２９に、ターゲットＡＰＬ２３の画面に連携結果情報を出力した画面の一例を示す。図２９において、「照合結果」と記載された入力欄に連携結果情報として「印鑑の照合を確認」が出力されている。
次に、第１実施形態の変形例について説明する。第１実施形態では、ターゲットＡＰＬ２３の画面から連携すべきデータを取り出し、取出したデータを連携ＡＰＬ２１に出力するとして説明した。しかし、ターゲットＡＰＬ２３の画面を識別し、その識別された画面に、連携ＡＰＬ２１で処理されたデータを連携すべきデータとして出力させることも可能である。以下、この場合について説明する。
この変形例によれば、ターゲットＡＰＬ２３の画面を識別するが、その識別された画面から連携すべきデータを取り出す必要はなく、そのデータを連携ＡＰＬ２１に出力する必要もない。従って、上記第１実施形態と第１実施形態の変形例とは、以下の点が異なる。
・第１実施形態の変形例によれば、スクリーンプラグ２２は、項目情報取得／認識部２２５を備える必要はない。従って、第１実施形態の変形例に係わるスクリーンプラグ２２は、図３の機能構成図から項目情報取得／認識部２２５を除いた構成を有することとしてもよい。
・第１実施形態の変形例によれば、画面定義情報は、認識項目情報を含まない。
・第１実施形態の変形例によれば、画面種別定義部２２２は、画面種別定義処理において認識項目定義サブルーチンを行わない。
・第１実施形態の変形例によれば、データ連携処理において項目情報取得・認識処理は行われない。
以下、図３０を用いて、第１実施形態の変形例の場合のデータ連携処理の概要について説明する。なお、第１実施形態において既に説明したため、ここでは改めて各処理について詳しく説明することを省略する。
図３０に示すように、第１実施形態の変形例によれば、キーボード等の入力装置１３からの入力を契機としてデータ連携処理が開始されると、まず、表示画面取込部２２１は、ターゲットＡＰＬ２３から表示画面を取り込む表示画面取込処理を行う。取り込まれた表示画面の画面イメージデータは画面イメージ書き込み部２２８に書き込まれる。画面種別判定部２２４は、画面情報ＤＢ２２９から画面定義情報を読み出して、その画面定義情報に基づいて画面イメージ書き込み部２２８に画面イメージデータが書きこまれた画面を識別する。画面種別判定部２２４は、画面の識別結果を確認するための確認画面を出力装置１４に表示させる。ユーザは、この確認画面に基づいて取り出されたデータを確認することができる。なお、この確認画面の表示処理は、省略する事が可能である。連携処理部２２６は、連携方法情報に基づいて、指定された連携方法で指定された連携ＡＰＬ２１から処理されたデータを受け取り、そのデータを確認する連携結果の確認画面を出力装置１４に表示させる。なお、この連携結果の確認画面の表示処理は省略可能である。項目情報出力部２２７は、画面定義情報に含まれる出力方法情報に基づいて、得られたデータをターゲットＡＰＬ２３の所定の領域に出力する。さらに、項目情報出力部２２７は、このデータ連携処理の結果を確認する結果確認画面を出力装置１４に表示させる。なお、確認画面の表示処理は省略可能である。このように、第１実施形態と異なり、第１実施形態の変形例では、ターゲットＡＰＬ２３の画面から情報を取得する項目情報取得・認識処理が行われない。この両者の相違点は、図５と図３０を比較すると明確である。
以下、ターゲットＡＰＬ２３を金融送金業務用プログラムであると仮定し、連携ＡＰＬ２１を伝票処理及び印鑑照合プログラムであると仮定して、第１実施形態の変形例について具体的に説明する。連携ＡＰＬ２１は、口座番号及び送金金額が記載され、読取印が押印された預金入金票を、スキャナを用いて画像イメージデータとして読みこみ、その画像イメージデータから読取印の画像イメージを切り出し、口座番号及び送金金額を文字データとして認識する。さらに、連携ＡＰＬ２１は、口座番号に対応するＣＩＦ番号、顧客名及び届出印の画像イメージを不図示のＤＢから取得し、読取印の画像イメージと届出印の画像イメージに基づいて印鑑を照合する。
一方、スクリーンプラグ２２は、ターゲットＡＰＬ２３の「送金処理」画面を識別し、ＣＩＦ番号、顧客名、送金金額、照合結果及び読取印の画像イメージを連携ＡＰＬ２１から受け取り、受け取ったこれらの情報を識別された画面に出力させる。「送金処理」画面の例は、図１７に示される。第１実施形態の変形例の場合、ターゲットＡＰＬ２３の「送金処理」画面中の「ＣＩＦ番号」、「顧客名」、「送金金額」、「照合結果」及び「読取印」の各入力欄は、画面の識別当初は「空（から）」であり、スクリーンプラグ２２が、連携ＡＰＬ２１による処理データをこの画面に出力させる。
これにより、スキャナを用いて預金入金伝票を画像データとして読みこみ、その画像データから必要な情報を取得する機能を有していないターゲットＡＰＬ２３に、その機能を有する連携ＡＰＬ２１による処理結果を与える事が可能となる。延いては、ターゲットＡＰＬ２３に改造を行わずに、ターゲットＡＰＬ２３に新たな機能を組み込むことが可能となる。
なお、これらの仮定は、説明を具体的にすることにより理解を容易にするためであり、ターゲットＡＰＬ２３及び連携ＡＰＬ２１を限定したり、本発明の応用範囲を限定したりする趣旨ではない。  次に、第１実施形態の更なる変形例について説明する。第１実施形態では、ターゲットＡＰＬ２３と連携ＡＰＬ２１は、同じコンピュータにインストールされているが、両者を異なるコンピュータにインストールする事としても良い。この場合、スクリーンプラグ２２は、ターゲットＡＰＬ２３がインストールされるコンピュータに備えられることとなる。この場合も、処理の手順は上記の通りである。
また、上記説明において、連携結果情報は、ターゲットＡＰＬ２３から連携すべきデータを取り出した画面と同一画面上に出力されるとして説明したが、ターゲットＡＰＬ２３中のデータを取り出した画面と異なる画面に出力される事としても良い。この場合、連携結果情報を出力する画面を予め定義する必要がある。
また、連携結果情報は、ターゲットＡＰＬ２３以外の第３のプログラムに出力されることとしてもよい。この場合、出力方法情報は、第３のプログラムを識別する情報を更に含むこととなる。また、連携結果情報は、そのプログラムにおいてさらに処理される事としても良い。
次に、第２実施形態について説明する。第１実施形態において、ターゲットＡＰＬ２３から取り出されたデータが連携ＡＰＬ２１に出力されて連携処理され、その連携処理結果がターゲットＡＰＬ２３に戻される場合について説明した。この場合、データは、ターゲットＡＰＬ２３から連携ＡＰＬ２１の方向に出力される。第２実施形態では、ターゲットＡＰＬと連携ＡＰＬとが双方向にデータを取り出し、連携することを可能とする構成について説明する。
図３１に、第２実施形態に係わるシステムの構成を示す。図３１に示すように、ターゲットＡＰＬ２３−１と２３−２が同じコンピュータにインストールされている。スクリーンプラグ２２−１は、ターゲットＡＰＬ２３−１の画面上から連携すべきデータを取り出し、そのデータをターゲットＡＰＬ２３−２に出力する。その応答として、スクリーンプラグ２２−１は、ターゲットＡＰＬ２３−２から連携処理の結果を受け、ターゲットＡＰＬ２３−１に出力する。一方、スクリーンプラグ２２−２は、ターゲットＡＰＬ２３−２の画面上から連携すべきデータを取り出し、そのデータをターゲットＡＰＬ２３−１に出力する。その応答として、スクリーンプラグ２２−２は、ターゲットＡＰＬ２３−１から連携処理の結果を受け、ターゲットＡＰＬ２３−２に出力する。つまり、ターゲットＡＰＬ２３−２は、ターゲットＡＰＬ２３−１の連携ＡＰＬとなっており、ターゲットＡＰＬ２３−１は、ターゲットＡＰＬ２３−２の連携ＡＰＬとなっている。これにより、２つのプログラム間で双方向にデータを連携させることが可能となる。この場合も、データ連携のために両プログラムを改造する事は不要である。
なお、第１実施形態の変形例と同様に、ターゲットＡＰＬ２３−１及びターゲットＡＰＬ２３−２は、異なる２つのコンピュータにインストールされる事としてもよい。この場合、ターゲットＡＰＬ２３−１とスクリーンプラグ２２−１は、一方のコンピュータにインストールされ、ターゲットＡＰＬ２３−２とスクリーンプラグ２２−２は、他方のコンピュータにインストールされる。
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されるものではなく、その他の様々な変更が可能である。
上記のように、本発明に係わるデータ連携技術によれば、既存のアプリケーションを改造することなく、既存のアプリケーションの表示画面に表示される情報を、更なる別のアプリケーションにおいて用いることを可能とするという効果を奏する。さらに、データの紙媒体への出力及び人手を用いた入力作業も不要となるという効果を奏する。
【産業上の利用可能性】  以上のように、本発明に係わるデータ連携技術は、コンピュータを用いて処理を行うシステムに有用である。
【図１】
2004068407.tif 000003
【図２】
2004068407.tif 000004
【図３】
2004068407.tif 000005
【図４】
2004068407.tif 000006
【図５】
2004068407.tif 000007
【図６】
2004068407.tif 000008
【図７】
2004068407.tif 000009
【図８】
2004068407.tif 000010
【図９】
2004068407.tif 000011
【図１０】
2004068407.tif 000012
【図１１】
2004068407.tif 000013
【図１２】
2004068407.tif 000014
【図１３】
2004068407.tif 000015
【図１４】
2004068407.tif 000016
【図１５】
2004068407.tif 000017
【図１６】
2004068407.tif 000018
【図１７】
2004068407.tif 000019
【図１８】
2004068407.tif 000020
【図１９】
2004068407.tif 000021
【図２０】
2004068407.tif 000022
【図２１】
2004068407.tif 000023
【図２２】
2004068407.tif 000024
【図２３】
2004068407.tif 000025
【図２４】
2004068407.tif 000026
【図２５】
2004068407.tif 000027
【図２６】
2004068407.tif 000028
【図２７】
2004068407.tif 000029
【図２８】
2004068407.tif 000030
【図２９】
2004068407.tif 000031
【図３０】
2004068407.tif 000032
【図３１】
2004068407.tif 000033
【国際調査報告】
2004068407.tif 000034
2004068407.tif 000035
2004068407.tif 000036
2004068407.tif 000037
2004068407.tif 000038
2004068407.tif 000039