(57)【要約】【課題】マルチウィンドウで利用するアプリケーションにつきメッセージ出力のためのメンテナンス性を向上すること。【解決手段】解析手段１ｄは、所定の通知要求を受け付けると、変換情報記憶手段１ａと通知情報記憶手段１ｂとを参照して、通知情報２に含まれる第１，第２の参照用情報ＲＡ１，ＲＢ１およびＲＡ２，ＲＢ２の組合せの集合から、表示装置に表示されたウィンドウＷ１，Ｗ２の識別情報Ａ１，Ａ２および各ウィンドウに対する入力情報Ｂ１，Ｂ２を特定する。解析手段１ｄは、特定した入力情報Ｂ１，Ｂ２をウィンドウＷ１，Ｗ２に対する入力情報の履歴から検出すると、通知情報２において第１，第２の参照用情報ＲＡ１，ＲＢ１およびＲＡ２，ＲＢ２の組合せの集合に対応付けられた出力情報Ｍ１を取得する。出力手段１ｅは、取得した出力情報Ｍ１を出力する。【選択図】図１
2012073869.tif 000002
【特許請求の範囲】
【請求項１】
所定の通知要求を受け付けると、表示装置に表示された複数のウィンドウそれぞれの種別を示す識別情報に対応付けて所定の第１の参照用情報を定義した第１の変換情報および前記複数のウィンドウに対して入力される入力情報に対応付けて所定の第２の参照用情報を定義した第２の変換情報を記憶する変換情報記憶手段と、ウィンドウごとの前記第１の参照用情報および前記第２の参照用情報の組合せの集合に対応付けて出力情報を定義した通知情報を記憶する通知情報記憶手段と、を参照して、前記組合せの集合に含まれる前記第１の参照用情報に対応する前記識別情報と前記第２の参照用情報に対応する前記入力情報とを前記複数のウィンドウそれぞれにつき特定し、
前記複数のウィンドウにつき特定した複数の入力情報を、前記複数のウィンドウそれぞれに対する前記入力情報を前記識別情報に対応付けて記録した履歴情報を記憶する履歴情報記憶手段に格納された前記履歴情報から検出すると、前記組合せの集合に対応する前記出力情報を取得し、
取得した前記出力情報を出力する、
処理をコンピュータに実行させることを特徴とする通知プログラム。
【請求項２】
前記通知要求には、前記表示装置に表示された複数のウィンドウのうちの何れかを選択する情報が含まれ、
前記通知情報記憶手段に格納された前記通知情報には、前記出力情報に対応付けて、前記選択されたウィンドウに対して入力された前記入力情報に対応する第３の参照用情報が定義されており、
当該通知要求を受け付けると、前記履歴情報記憶手段に格納された前記履歴情報を参照して、前記通知要求を受け付ける直前に前記選択されたウィンドウに対して入力された入力情報を取得し、前記変換情報記憶手段を参照して、当該入力情報に対応する第２の参照用情報を特定し、前記通知情報記憶手段に格納された前記通知情報のうち、特定した当該第２の参照用情報と前記第３の参照用情報とが一致するレコードに含まれる前記組合せの集合に基づいて、前記出力情報を取得する、
ことを特徴とする請求項１記載の通知プログラム。
【請求項３】
前記履歴情報記憶手段に格納された前記履歴情報には、記録された前記入力情報に対応付けて、当該入力情報の入力された時間が設定されており、
前記複数のウィンドウそれぞれにつき特定した前記入力情報を前記履歴情報から検出する際に、当該履歴情報を参照して、前記選択されたウィンドウに対する最新の入力情報に対応する時間よりも前の時間が対応付けられた入力情報を検出対象とする、
ことを特徴とする請求項２記載の通知プログラム。
【請求項４】
前記通知要求に含まれる前記複数のウィンドウのうちの何れかを選択する情報は、非アクティブのウィンドウを選択する情報を含むことを特徴とする請求項２または３の何れか一項に記載の通知プログラム。
【請求項５】
前記履歴情報記憶手段に格納された前記履歴情報には、記録された前記入力情報に対応付けて、当該入力情報の入力された時間が設定され、
前記履歴情報記憶手段は、前記複数のウィンドウそれぞれにつき前記履歴情報から前記入力情報を検出する所定の検索順序を定義した検索情報を記憶しており、
前記出力情報を出力する際に、前記履歴情報記憶手段に格納された前記検索情報を参照して前記検索順序の最後に設定されたウィンドウにつき、前記履歴情報から検出した前記入力情報に対応する時間を前記出力情報とともに出力する、
ことを特徴とする請求項１乃至４の何れか一項に記載の通知プログラム。
【請求項６】
所定の通知要求を受け付けると、表示装置に表示された複数のウィンドウそれぞれの種別を示す識別情報に対応付けて所定の第１の参照用情報を定義した第１の変換情報および前記複数のウィンドウに対して入力される入力情報に対応付けて所定の第２の参照用情報を定義した第２の変換情報を記憶する変換情報記憶手段と、ウィンドウごとの前記第１の参照用情報および前記第２の参照用情報の組合せの集合に対応付けて出力情報を定義した通知情報を記憶する通知情報記憶手段と、を参照して、前記組合せの集合に含まれる前記第１の参照用情報に対応する前記識別情報と前記第２の参照用情報に対応する前記入力情報とを前記複数のウィンドウそれぞれにつき特定し、前記複数のウィンドウにつき特定した複数の入力情報を、前記複数のウィンドウそれぞれに対する前記入力情報を前記識別情報に対応付けて記録した履歴情報を記憶する履歴情報記憶手段に格納された前記履歴情報から検出すると、前記組合せの集合に対応する前記出力情報を取得する解析手段と、
取得した前記出力情報を出力する出力手段と、
を有することを特徴とする情報処理装置。
【請求項７】
情報処理装置が、
所定の通知要求を受け付けると、表示装置に表示された複数のウィンドウそれぞれの種別を示す識別情報に対応付けて所定の第１の参照用情報を定義した第１の変換情報および前記複数のウィンドウに対して入力される入力情報に対応付けて所定の第２の参照用情報を定義した第２の変換情報を記憶する変換情報記憶手段と、ウィンドウごとの前記第１の参照用情報および前記第２の参照用情報の組合せの集合に対応付けて出力情報を定義した通知情報を記憶する通知情報記憶手段と、を参照して、前記組合せの集合に含まれる前記第１の参照用情報に対応する前記識別情報と前記第２の参照用情報に対応する前記入力情報とを前記複数のウィンドウそれぞれにつき特定し、
前記複数のウィンドウにつき特定した複数の入力情報を、前記複数のウィンドウそれぞれに対する前記入力情報を前記識別情報に対応付けて記録した履歴情報を記憶する履歴情報記憶手段に格納された前記履歴情報から検出すると、前記組合せの集合に対応する前記出力情報を取得し、
取得した前記出力情報を出力する、
ことを特徴とする通知方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報の通知を行う通知プログラム、情報処理装置および通知方法に関する。
【背景技術】
【０００２】
従来、端末装置を利用するユーザに対して、操作ガイダンスを提供する機能が利用されている。例えば、端末装置で実行するアプリケーションの利用方法を知りたいときには、ユーザはアプリケーションが提供するヘルプ機能から所望の情報を参照できる。具体的には、ユーザは参照したい事象を示す文字列等をキーワードとしてヘルプ機能に入力すれば、当該キーワードに関連するガイダンス文書の一覧がユーザに提示される。ユーザは、一覧からガイダンス文書を選択すれば、その内容を閲覧できる。
【０００３】
また、ユーザに対して、状況に応じたより適切なガイダンスを行う方法が考えられている。例えば、操作ログや画面表示履歴等により、現操作中の画面に対して適切な次画面を表示し、操作者の操作支援を行う技術がある（例えば、特許文献１参照）。また、マルチウィンドウシステムにおいてアクティブウィンドウの変遷と、入力操作の内容や操作対象等の履歴情報から次の入力操作案を提示する技術がある（例えば、特許文献２参照）。
【０００４】
なお、ガイダンスとして出力する基本メッセージを予めイベントの種類ごとに用意しておき、イベント固有の情報を基本メッセージに挿入してメッセージを生成することで、新規イベント追加時にも対応するメッセージを簡易に生成可能とした技術もある（例えば、特許文献３参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２７７２９０号公報
【特許文献２】特開２００７−５８７３７号公報
【特許文献３】特開平８−２８６８７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、マルチウィンドウで利用中の複数のアプリケーションを連携させて、所定のサービスを提供する業務アプリケーションにおいても、新たな操作を追加した際のメッセージのメンテナンス性が問題となる。
【０００７】
例えば、新たに業務用の操作入力を受け付けるためのウィンドウを追加する場合を考える。この場合、ウィンドウの追加のたびに当該ウィンドウでの操作用に個別に新規メッセージを追加することは作業コストを要し、効率が悪い。この問題は、ウィンドウの追加・変更が多い業務アプリケーションほど顕著となる。
【０００８】
一方、個々のアプリケーションのイベントに応じて基本メッセージからメッセージを生成したとしても、他のアプリケーションとの関係によるガイダンスの提供が困難であるという問題がある。
【０００９】
本発明はこのような点に鑑みてなされたものであり、マルチウィンドウで利用するアプリケーションにつきメッセージ出力のためのメンテナンス性を向上した通知プログラム、情報処理装置および通知方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために通知プログラムが提供される。この通知プログラムを実行するコンピュータは、所定の通知要求を受け付けると、表示装置に表示された複数のウィンドウそれぞれの種別を示す識別情報に対応付けて所定の第１の参照用情報を定義した第１の変換情報および複数のウィンドウに対して入力される入力情報に対応付けて所定の第２の参照用情報を定義した第２の変換情報を記憶する変換情報記憶手段と、ウィンドウごとの第１の参照用情報および第２の参照用情報の組合せの集合に対応付けて出力情報を定義した通知情報を記憶する通知情報記憶手段と、を参照して、組合せの集合に含まれる第１の参照用情報に対応する識別情報と第２の参照用情報に対応する入力情報とを複数のウィンドウそれぞれにつき特定する。複数のウィンドウにつき特定した当該複数の入力情報を、複数のウィンドウそれぞれに対する入力情報を識別情報に対応付けて記録した履歴情報を記憶する履歴情報記憶手段に格納された履歴情報から検出すると、組合せの集合に対応する出力情報を取得する。そして、取得した出力情報を出力する。
【００１１】
また、上記課題を解決するために情報処理装置が提供される。この情報処理装置は、解析手段と出力手段とを有する。解析手段は、所定の通知要求を受け付けると、表示装置に表示された複数のウィンドウそれぞれの種別を示す識別情報に対応付けて所定の第１の参照用情報を定義した第１の変換情報および複数のウィンドウに対して入力される入力情報に対応付けて所定の第２の参照用情報を定義した第２の変換情報を記憶する変換情報記憶手段と、ウィンドウごとの第１の参照用情報および第２の参照用情報の組合せの集合に対応付けて出力情報を定義した通知情報を記憶する通知情報記憶手段と、を参照して、組合せの集合に含まれる第１の参照用情報に対応する識別情報と第２の参照用情報に対応する入力情報とを複数のウィンドウそれぞれにつき特定し、複数のウィンドウにつき特定した当該複数の入力情報を、複数のウィンドウそれぞれに対する入力情報を識別情報に対応付けて記録した履歴情報を記憶する履歴情報記憶手段に格納された履歴情報から検出すると、組合せの集合に対応する出力情報を取得する。出力手段は、解析手段が取得した出力情報を出力する。
【００１２】
また、上記課題を解決するために通知プログラムを実行するコンピュータの通知方法が提供される。
【発明の効果】
【００１３】
上記通知プログラム、情報処理装置および通知方法によれば、マルチウィンドウで利用するアプリケーションにつきメッセージ出力のためのメンテナンス性を向上できる。
【図面の簡単な説明】
【００１４】
【図１】第１の実施の形態の情報処理装置を示す図である。
【図２】第２の実施の形態の金融窓口システムを示す図である。
【図３】第２の実施の形態の端末装置のハードウェア構成を示す図である。
【図４】第２の実施の形態の端末装置の機能を示すブロック図である。
【図５】第２の実施の形態のメッセージ生成部の機能を示すブロック図である。
【図６】ウィンドウ履歴テーブルのデータ構造例を示す図である。
【図７】キー操作履歴テーブルのデータ構造例を示す図である。
【図８】検索テーブルのデータ構造例を示す図である。
【図９】仮想業務コード変換テーブルのデータ構造例を示す図である。
【図１０】仮想キーコード変換テーブルのデータ構造例を示す図である。
【図１１】第２の実施の形態の業務条件定義テーブルのデータ構造例を示す図である。
【図１２】第２の実施の形態の業務条件定義テーブルのデータ構造例を示す図である。
【図１３】第２の実施の形態のメッセージ出力処理を示すフローチャートである。
【図１４】第２の実施の形態のメッセージ抽出処理を示すフローチャートである。
【図１５】第２の実施の形態のメッセージ抽出処理を示すフローチャートである。
【図１６】第２の実施の形態のメッセージ出力の具体例を示す図である。
【図１７】第３の実施の形態のキーボードの事象キーを示す図である。
【図１８】第３の実施の形態のメッセージ出力処理を示すフローチャートである。
【図１９】第３の実施の形態のメッセージ出力の具体例を示す図である。
【図２０】第４の実施の形態の業務条件定義テーブルのデータ構造例を示す図である。
【図２１】第４の実施の形態の業務条件定義テーブルのデータ構造例を示す図である。
【図２２】第４の実施の形態のメッセージ抽出処理の手順を示すフローチャートである。
【図２３】第４の実施の形態のメッセージ抽出処理の手順を示すフローチャートである。
【図２４】第４の実施の形態のメッセージ出力の具体例を示す図である。
【発明を実施するための形態】
【００１５】
以下、本実施の形態を図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態の情報処理装置を示す図である。情報処理装置１は、ユーザにマルチウィンドウシステムを提供する。すなわち、情報処理装置１は、表示装置（図示を省略）に複数のウィンドウを表示させて、各ウィンドウで表示したアプリケーションに対するユーザの操作入力を受け付ける。情報処理装置１は、変換情報記憶手段１ａ、通知情報記憶手段１ｂ、履歴情報記憶手段１ｃ、解析手段１ｄおよび出力手段１ｅを有する。
【００１６】
変換情報記憶手段１ａは、複数のウィンドウそれぞれの種別を示す識別情報に対応付けて所定の第１の参照用情報を定義した第１の変換情報を記憶する。ここで、各ウィンドウの種別とは、例えば当該ウィンドウで表示したアプリケーションの種別を示すものである。より具体的には、当該アプリケーションを用いて行う業務処理等を識別する種別である。当該種別に対応付けた識別情報は予め定義される。第１の変換情報には、識別情報Ａ１，Ａ２に対応付けて第１の参照用情報ＲＡ１，ＲＡ２が定義されているとする。
【００１７】
また、変換情報記憶手段１ａは、複数のウィンドウに対して入力される入力情報に対応付けて所定の第２の参照用情報を定義した第２の変換情報を記憶する。入力情報とは、例えば情報処理装置１に接続された入力装置に設けられた何れかのキーを示す情報である。ユーザは、入力装置のキーを押下することで、情報処理装置１に入力情報を入力できる。第２の変換情報には、入力情報Ｂ１，Ｂ２に対応付けて第２の参照用情報ＲＢ１，ＲＢ２が定義されているとする。
【００１８】
通知情報記憶手段１ｂは、ウィンドウごとの第１の参照用情報および第２の参照用情報の組合せの集合に対応付けて出力情報を定義した通知情報２を記憶する。通知情報２には、例えば（１）第１の参照用情報ＲＡ１および第２の参照用情報ＲＢ１の組合せが設定されている。また、通知情報２には、例えば（２）第１の参照用情報ＲＡ２および第２の参照用情報ＲＢ２の組合せが設定されている。更に、通知情報２には、例えば上記（１）および（２）の組合せの集合に対して、出力情報Ｍ１が定義されている。出力情報Ｍ１は、例えば所定のコンテンツである。コンテンツの内容は、例えば、操作ガイドを行う文字列、画像、音声および動画等である。
【００１９】
履歴情報記憶手段１ｃは、複数のウィンドウそれぞれに対する入力情報を識別情報に対応付けて記録した履歴情報３を記憶する。履歴情報３には、例えば表示装置に表示されたウィンドウＷ１，Ｗ２の履歴が含まれている。ウィンドウＷ１，Ｗ２の種別は、それぞれ種別Ａ１，Ａ２であるとする。
【００２０】
解析手段１ｄは、所定の通知要求を受け付けると、変換情報記憶手段１ａと通知情報記憶手段１ｂとを参照して、上記組合せの集合に含まれる第１の参照用情報に対応する識別情報と第２の参照用情報に対応する入力情報とを複数のウィンドウそれぞれにつき特定する。解析手段１ｄは、例えば変換情報記憶手段１ａに格納された第１の変換情報と通知情報記憶手段１ｂに格納された通知情報２とを参照して、上記（１）および（２）の組合せの集合に含まれる第１の参照用情報ＲＡ１，ＲＡ２につき識別情報Ａ１，Ａ２を特定できる。同様に、解析手段１ｄは、第２の変換情報と通知情報２とを参照して、上記（１）および（２）の組合せの集合に含まれる第２の参照用情報ＲＢ１，ＲＢ２につき入力情報Ｂ１，Ｂ２を特定できる。このようにして、解析手段１ｄは、識別情報と入力情報とを含む情報群４を取得する。
【００２１】
解析手段１ｄは、複数のウィンドウにつき特定した複数の入力情報を履歴情報記憶手段１ｃに格納された履歴情報３から検出すると、上記組合せの集合に対応する出力情報を取得する。具体的には、解析手段１ｄは履歴情報３と情報群４とを比較する。この場合、解析手段１ｄは、識別情報Ａ１に対応するウィンドウＷ１の入力情報の履歴から入力情報Ｂ１を検出し、かつ、識別情報Ａ２に対応するウィンドウＷ２の入力情報の履歴から入力情報Ｂ２を検出する。すると、解析手段１ｄは、通知情報記憶手段１ｂに格納された通知情報２を参照して、上記（１）および（２）の組合せに対応付けて定義された出力情報Ｍ１を取得する。
【００２２】
出力手段１ｅは、解析手段１ｄが取得した出力情報Ｍ１を出力する。
情報処理装置１によれば、解析手段１ｄにより、所定の通知要求が受け付けられると、変換情報記憶手段１ａと通知情報記憶手段１ｂとが参照されて、通知情報２に定義された第１，第２の参照用情報の組合せの集合に対応する識別情報および入力情報が、複数のウィンドウそれぞれにつき特定される。解析手段１ｄにより、複数のウィンドウにつき特定された複数の入力情報が履歴情報記憶手段１ｃに格納された履歴情報３から検出されると、上記第１，第２の参照用情報の組合せの集合に対応する出力情報が取得される。出力手段１ｅにより、解析手段１ｄが取得した出力情報が出力される。
【００２３】
このように、情報処理装置１は、通知情報２に設定された第１，第２の参照用情報および第１，第２の変換情報に基づいて、表示装置に表示中のウィンドウに対する入力情報の履歴を照会する。このため、例えば新たにウィンドウを追加した際にも、当該新規ウィンドウに対する操作につき、第１，第２の変換情報への設定の追加のみで容易に出力情報の設定を行える。また、各ウィンドウでの操作の関係に応じた適切な情報を通知できる。
【００２４】
例えば、ウィンドウＷ２と同時に表示装置に表示させて操作するウィンドウＷ３（識別情報をＡ３とする）を追加する場合を考える。その場合、ウィンドウＷ２に対する入力情報Ｂ２とウィンドウＷ３に対する入力情報Ｂ３とのセットに対して、出力情報Ｍ１を出力させたい場合、第１の変換情報においてウィンドウＷ３の識別情報Ａ３を第１の参照用情報ＲＡ１に対応付ければよい。また、第２の変換情報において、入力情報Ｂ３に対し、第２の参照用情報ＲＢ１を対応付ければよい。このように、ウィンドウＷ２，Ｗ３における操作状態に応じた適切な出力情報を容易に設定できる。
【００２５】
また、このようにして出力情報の設定を容易に行うことができるので、各ウィンドウのアプリケーションを開発した後に出力情報を設定したい場合にも容易に対応することができる。すなわち、独立に開発された複数のアプリケーションにつき、事後的な出力情報の設定を容易に行える。この場合、開発時において出力情報を意識しなくてもよいので、開発のコストを低減できる。
【００２６】
また、運用開始後にも出力情報の設定変更が容易に行えるので、ユーザによる実際の操作傾向に応じて、臨機応変に出力情報を設定できる。例えば、開発段階では不明であったが、運用開始後に操作ミスの生じ易い業務が判明し得る。そのような場合にも、適切な出力情報の提供を容易に開始できる。
【００２７】
以上のように、情報処理装置１は、マルチウィンドウで利用するアプリケーションにつきメッセージ出力のためのメンテナンス性を向上できる。このような効果は、利用するウィンドウが多く、また、操作用のウィンドウの追加・更新が多い業務アプリケーションに対して特に有用である。
【００２８】
以下に示す第２の実施の形態では、情報処理装置１を金融機関の窓口システム（以下、金融窓口システムと称する）に適用した場合を例に採り、更に具体的に説明する。ただし、情報処理装置１を適用可能な情報処理システムは金融窓口システムに限らない。例えば、マルチウィンドウで提供される生産・販売・物流等の種々の管理システムに情報処理装置１を適用することもできる。
【００２９】
［第２の実施の形態］
図２は、第２の実施の形態の金融窓口システムを示す図である。この金融窓口システムは、端末装置１００および取引サーバ２００がネットワーク１０を介して接続されている。ネットワーク１０は、例えばインターネット、イントラネット、ＶＰＮ（Virtual Private Network）、または、この金融窓口システムのために設けられたその他の専用通信網等である。
【００３０】
端末装置１００は、金融機関の窓口に設けられたコンピュータである。端末装置１００は、窓口のオペレータによって操作される。オペレータは、端末装置１００で読み取った帳票の情報に基づいて、金融取引（例えば、入金・出金・取引照会等）の要求を取引サーバ２００に送信する。端末装置１００は、当該要求に応じた取引サーバ２００の処理結果（ホスト通信にて処理された結果）を取得して、オペレータに提示する。また、取引サーバ２００から受信した処理結果のデータに基づいて、金融取引の処理を行う。端末装置１００にはモニタ１１が接続されている。
【００３１】
モニタ１１は、オペレータが金融取引のための操作を受け付けるＧＵＩ（Graphical User Interface）を含む所定のウィンドウを表示する。モニタ１１には、ウィンドウ３１０，３２０，３３０が表示されている。
【００３２】
ウィンドウ３１０は、アクティブなウィンドウである。すなわち、入力デバイスによるオペレータの操作入力を受付可能な状態のウィンドウである。ウィンドウ３１０は、出金取引のための操作を受け付けるＧＵＩを含むものとする。
【００３３】
ウィンドウ３２０，３３０は、非アクティブなウィンドウである。すなわち、入力デバイスによるオペレータの操作入力を受け付けていない状態のウィンドウである。ウィンドウ３２０，３３０は、入力デバイスによって何れかのウィンドウが選択されれば、当該選択されたウィンドウがアクティブ状態となり、入力デバイスによるオペレータの操作入力を受付可能な状態となり得る。例えば、ウィンドウ３２０が選択されれば、アクティブ状態のウィンドウ３１０が非アクティブ状態となり、ウィンドウ３２０が非アクティブ状態からアクティブ状態となる。ここで、ウィンドウ３２０は、印鑑照合のための操作を受け付けるＧＵＩを含むものとする。ウィンドウ３３０は、取引照会のための操作を受け付けるＧＵＩを含むものとする。
【００３４】
ウィンドウ３１０で行う出金取引のためには、ウィンドウ３２０での印鑑照合を行わなければならない場合がある。このため、オペレータは、ウィンドウ３１０，３２０のアクティブ／非アクティブ状態を切り替えて業務操作を行うことがある。このような切り替えにより現在アクティブの状態となっているウィンドウを以下ではアクティブウィンドウと称する。また、アクティブウィンドウの直前に操作されていたウィンドウの取引を以下では前取引と称する。
【００３５】
また、ウィンドウ３３０での取引照会は、取引の状態を照会するための処理（例えば、承認依頼中の取引が承認されたか否かなどの確認）であり、出金取引および印鑑照合と並行して利用できる。このように並行して利用できる取引を以下では並行取引と称する。
【００３６】
ここで、ウィンドウ３１０，３２０，３３０は、それぞれ異なるアプリケーションのウィンドウであるものとする。すなわち、出金取引のアプリケーション、印鑑照合のアプリケーションおよび取引照会のアプリケーションである。これらを含む複数のアプリケーションが連携して、金融窓口システムの業務アプリケーションを構成する。ただし、これらの機能は単一のアプリケーションにより提供されてもよい。すなわち、当該アプリケーションが出金取引のプロセス（タスク）、印鑑照合のプロセス（タスク）および取引照会のプロセス（タスク）をマルチウィンドウシステムにより動作させるものであってもよい。
【００３７】
取引サーバ２００は、端末装置１００から受けた要求に応じて金融取引の業務処理を行う。取引サーバ２００は、例えば、金融機関に開設された顧客の口座につき入出金を管理する。また、取引サーバ２００は、例えば印鑑の印影画像を記憶し、印鑑照合用のデータとして端末装置１００に提供する。
【００３８】
図３は、第２の実施の形態の端末装置のハードウェア構成を示す図である。ＣＰＵ（Central Processing Unit）１０１、ＲＯＭ（Read Only Memory）１０２、ＲＡＭ（Random Access Memory）１０３、ＨＤＤ（Hard Disk Drive）１０４、グラフィック処理装置１０５、入力インタフェース１０６、記録媒体読取装置１０７および通信インタフェース１０８を有する。
【００３９】
ＣＰＵ１０１は、ＯＳ（Operating System）プログラムやアプリケーションプログラムを実行して、端末装置１００全体を制御する。
ＲＯＭ１０２は、端末装置１００の起動時に実行されるＢＩＯＳ（Basic Input / Output System）プログラムなどの所定のプログラムを記憶する。ＲＯＭ１０２は、書き換え可能な不揮発性メモリであってもよい。
【００４０】
ＲＡＭ１０３は、ＣＰＵ１０１が実行するＯＳプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、ＲＡＭ１０３は、ＣＰＵ１０１の処理に用いられるデータの少なくとも一部を一時的に記憶する。
【００４１】
ＨＤＤ１０４は、ＯＳプログラムやアプリケーションプログラムを記憶する。また、ＨＤＤ１０４は、ＣＰＵ１０１の処理に用いられるデータを記憶する。なお、ＨＤＤ１０４に代えて（または、ＨＤＤ１０４と併せて）、ＳＳＤ（Solid State Drive）など他の種類の不揮発性の記憶装置を用いてもよい。
【００４２】
グラフィック処理装置１０５は、モニタ１１に接続される。グラフィック処理装置１０５は、ＣＰＵ１０１からの命令に従って、画像をモニタ１１に表示させる。
入力インタフェース１０６は、キーボード１２やマウス１３などの入力デバイスに接続される。入力インタフェース１０６は、入力デバイスから送られる入力信号をＣＰＵ１０１に出力する。キーボード１２には、事象キー１２ａが設けられている。事象キー１２ａは、端末装置１００へガイダンスの出力要求（ガイダンス要求）を行うボタンである。
【００４３】
記録媒体読取装置１０７は、記録媒体１４に格納されたデータを読み取る読取装置である。記録媒体１４には、例えば、端末装置１００に実行させるプログラムが記録されている。端末装置１００は、例えば、記録媒体１４に記録された通知プログラムを実行することで、後述するようなメッセージの通知機能を実現することができる。すなわち、メッセージ通知の処理内容を記述したプログラムは、コンピュータ読み取り可能な記録媒体１４に記録して配布することが可能である。なお、金融端末においては、通常運用中の記録媒体からの読み取りは行われないため、配布後、記録媒体１４は取り外される。
【００４４】
記録媒体１４としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリを使用できる。磁気記録装置には、ＨＤＤ、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＣＤ（Compact Disc）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−Ｒ／ＲＷ／ＲＡＭなどがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。半導体メモリには、ＵＳＢ（Universal Serial Bus）メモリなどのフラッシュメモリがある。
【００４５】
通信インタフェース１０８は、ネットワーク１０に接続される。通信インタフェース１０８は、ネットワーク１０を介して取引サーバ２００とデータ通信を行える。
なお、ネットワーク１０に接続された他のサーバ装置（例えば、取引サーバ２００）にメッセージの通知プログラムを格納しておいてもよい。その場合、端末装置１００は、当該サーバ装置からプログラムをダウンロードして実行することもできる。取引サーバ２００も端末装置１００と同様のハードウェア構成により実現できる。
【００４６】
図４は、第２の実施の形態の端末装置の機能を示すブロック図である。端末装置１００は、ＯＳ１１０、アプリケーション１２０，１２０ａ，１２０ｂ、イベントハンドラ１３０およびガイダンスプロセス１４０を有する。これらのユニットの機能は、ＣＰＵ１０１がＯＳプログラムや通知プログラム等を実行することにより、端末装置１００上に実現される。特に、ガイダンスプロセス１４０は、通知プログラムによって実現されるユニットである。ただし、これらのユニットの機能の全部または一部を専用のハードウェアで実装してもよい。
【００４７】
ＯＳ１１０は、アプリケーション１２０，１２０ａ，１２０ｂ、イベントハンドラ１３０およびガイダンスプロセス１４０の動作を管理する。ＯＳ１１０は、アプリケーション１２０，１２０ａ，１２０ｂ、イベントハンドラ１３０およびガイダンスプロセス１４０によるＲＡＭ１０３やＨＤＤ１０４等のハードウェアの利用を調停する。
【００４８】
アプリケーション１２０，１２０ａ，１２０ｂは、業務アプリケーションの機能を実現するアプリケーション群である。アプリケーション１２０は、出金処理に用いる機能を実現する。アプリケーション１２０ａは、印鑑照合に用いる機能を実現する。アプリケーション１２０ｂは、取引照会に用いる機能を実現する。以下では、アプリケーション１２０に関して説明するが、アプリケーション１２０ａ，１２０ｂに関しても同様の構成である。アプリケーション１２０は、業務画面生成部１２１および業務画面情報出力部１２２を有する。
【００４９】
業務画面生成部１２１は、オペレータの操作入力を受け付けて、当該操作入力に応じて業務画面（ウィンドウ３１０内に表示させる内容）を生成・更新・消去する。例えば、操作入力によって指示された業務画面を新たに生成する。また、操作入力によって入力された情報を業務画面に反映させる、操作入力によって消去された情報を業務画面から消去する等の制御を行う。
【００５０】
業務画面情報出力部１２２は、業務画面の生成・更新等を指示する業務画面情報をＯＳ１１０を介してモニタ１１に出力する。モニタ１１は、業務画面情報出力部１２２から受け付けた業務画面情報に基づいて、ウィンドウ３１０の表示、情報の追加・更新等を行う。また、業務画面情報出力部１２２は、ガイダンスプロセス１４０に対しても業務画面情報を出力する。業務画面情報には、その業務を識別するための業務コードが含まれる。
【００５１】
イベントハンドラ１３０は、キーボード１２やマウス１３によるオペレータの操作入力を受け付け、ガイダンスプロセス１４０に出力する。イベントハンドラ１３０は、キーボード１２で入力されたキーを示す情報（以下、キーコードと称する）をガイダンスプロセス１４０に出力する。また、イベントハンドラ１３０は、事象キー１２ａが押下されると、事象キー１２ａが押下された旨を示すガイダンス要求をガイダンスプロセス１４０に出力する。ガイダンス要求は、第１の実施の形態の通知要求の一例である。
【００５２】
ガイダンスプロセス１４０は、端末装置１００を利用するオペレータに対して操作ガイダンスを提供する。ガイダンスプロセス１４０は、イベントハンドラ登録部１５０およびメッセージ生成部１６０を有する。
【００５３】
イベントハンドラ登録部１５０は、ＨＤＤ１０４に格納されたイベントハンドラ１３０のプログラムを取得してＯＳ１１０上にイベントハンドラ１３０の機能を実現し、常駐させる。
【００５４】
メッセージ生成部１６０は、イベントハンドラ１３０から受け付ける業務コードやキーコードの履歴を取得する。また、メッセージ生成部１６０は、イベントハンドラ１３０からガイダンス要求を受け付けると、当該履歴に基づいてガイダンスのメッセージをモニタ１１に表示させる。
【００５５】
次に、このようなメッセージ生成部１６０の機能を更に詳細に説明する。
図５は、第２の実施の形態のメッセージ生成部の機能を示すブロック図である。メッセージ生成部１６０は、履歴情報記憶部１６１、変換情報記憶部１６２、通知情報記憶部１６３、業務画面情報取得部１６４、イベント取得部１６５、履歴管理部１６６、操作解析処理部１６７、メッセージ出力部１６８および解除条件検出部１６９を有する。
【００５６】
履歴情報記憶部１６１は、モニタ１１に表示されアクティブ状態となったウィンドウの業務コードの履歴を記録したウィンドウ履歴テーブルを記憶する。履歴情報記憶部１６１は、モニタ１１に表示されたウィンドウ３１０，３２０，３３０に対して入力されたキーコードの履歴を記録したキー操作履歴テーブルを記憶する。更に、履歴情報記憶部１６１は、キー操作履歴テーブルの各レコードが何れの業務コードに対応しているか、および、メッセージの検索処理を制御するための検索テーブルを記憶する。
【００５７】
変換情報記憶部１６２は、業務コードと仮想業務コードとを対応付けた仮想業務コード変換テーブルを記憶する。仮想業務コードは第１の実施の形態で説明した第１の参照用情報の一例である。仮想業務コード変換テーブルは、第１の実施の形態で説明した第１の変換情報の一例である。変換情報記憶部１６２は、キーコードと仮想キーコードとを対応付けた仮想キーコード変換テーブルを記憶する。仮想キーコードは第１の実施の形態で説明した第２の参照用情報の一例である。仮想キーコード変換テーブルは、第１の実施の形態で説明した第２の変換情報の一例である。
【００５８】
通知情報記憶部１６３は、ウィンドウごとの仮想業務コードおよび仮想キーコードの組合せの集合（以下、コードセットと称する）に対応付けて、モニタ１１に表示させるメッセージを定義した業務条件定義テーブルを記憶する。業務条件定義テーブルは第１の実施の形態で説明した通知情報の一例である。
【００５９】
業務画面情報取得部１６４は、アプリケーション１２０，１２０ａ，１２０ｂが出力した業務画面情報を取得する。業務画面情報取得部１６４は、取得したキーコードを履歴管理部１６６に出力する。
【００６０】
イベント取得部１６５は、イベントハンドラ１３０が出力したキーコードを取得する。イベント取得部１６５は、取得したキーコードをアプリケーション１２０，１２０ａ，１２０ｂに出力するとともに履歴管理部１６６に出力する。
【００６１】
履歴管理部１６６は、業務画面情報取得部１６４から業務コードを取得すると、履歴情報記憶部１６１に格納されたウィンドウ履歴テーブルに記録する。履歴管理部１６６は、イベント取得部１６５からキーコードを取得すると、履歴情報記憶部１６１に格納されたキー操作履歴テーブルに記録する。
【００６２】
操作解析処理部１６７は、イベントハンドラ１３０からガイダンス要求を受け付けると、履歴情報記憶部１６１、変換情報記憶部１６２および通知情報記憶部１６３を参照してメッセージ生成処理を実行する。操作解析処理部１６７は、生成したメッセージをメッセージ出力部１６８に出力する。
【００６３】
メッセージ出力部１６８は、操作解析処理部１６７が生成したメッセージをＯＳ１１０（図５では図示を省略）を介してモニタ１１に表示させる。
解除条件検出部１６９は、イベントハンドラ１３０から所定のガイダンス解除のイベントを検出すると、メッセージ出力部１６８によりモニタ１１に表示させたメッセージを消去させる。
【００６４】
図６は、ウィンドウ履歴テーブルのデータ構造例を示す図である。ウィンドウ履歴テーブル１６１ａは、履歴管理部１６６により生成、更新され、履歴情報記憶部１６１に格納される。ウィンドウ履歴テーブル１６１ａには、項番、時間および業務コードの項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、１つのウィンドウの履歴を示す。
【００６５】
項番の項目には、レコードを識別する情報が設定される。時間の項目には、当該レコードで示されるウィンドウがアクティブになった時間が設定される。業務コードの項目には、アクティブになったウィンドウに対応する業務コードが設定される。ここで、以下では出金取引には業務コード“１１０００１”が、印鑑照合には業務コード“１２０００２”が、取引照会には業務コード“１３０００３”が定義されているとする。
【００６６】
ウィンドウ履歴テーブル１６１ａには、例えば、項番が“１０１”、時間が“２０１０／８／１８  １０：００：００”、業務コードが“１３０００３”という情報が設定される。これは、業務コード“１３０００３”に対応するウィンドウ３３０が２０１０年８月１８日１０時００分００秒にアクティブ状態となったことを示している。
【００６７】
ここで、履歴管理部１６６は、ウィンドウ履歴テーブル１６１ａに記録される履歴がモニタ１１に現在表示中のウィンドウについてのみとなるよう管理する。履歴管理部１６６は、モニタ１１から消去されたウィンドウの履歴をウィンドウ履歴テーブル１６１ａから削除する。
【００６８】
図７は、キー操作履歴テーブルのデータ構造例を示す図である。キー操作履歴テーブル１６１ｂは、履歴管理部１６６により生成、更新され、履歴情報記憶部１６１に格納される。キー操作履歴テーブル１６１ｂには、項番、時間およびキーコードの項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、１つのキー操作の履歴を示す。
【００６９】
項番の項目には、レコードを識別する情報が設定される。時間の項目には、当該キーコードが入力された時間が設定される。キーコードの項目には、入力されたキーコードが設定される。
【００７０】
キー操作履歴テーブル１６１ｂには、例えば、項番が“１００１”、時間が“２０１０／８／１８  １０：００：０５”、キーコードが“１５”という情報が設定される。これは、キーボード１２上のキーコード“１５”に対応するキーが２０１０年８月１８日１０時００分０５秒に押下されたことを示している。
【００７１】
ここで、履歴管理部１６６は、キー操作履歴テーブル１６１ｂに記録される履歴がモニタ１１に現在表示中のウィンドウについてのみとなるよう管理する。履歴管理部１６６は、モニタ１１から消去されたウィンドウの履歴をキー操作履歴テーブル１６１ｂから削除する。
【００７２】
図８は、検索テーブルのデータ構造例を示す図である。検索テーブル１６１ｃは、履歴管理部１６６により生成、更新され、履歴情報記憶部１６１に格納される。検索テーブル１６１ｃには、検索順序、業務画面属性、業務コードおよびキー操作履歴へのポインタの項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、１つの検索用レコードを構成する。
【００７３】
検索順序の項目には、後述する業務条件定義テーブル１６３ａの検索処理の制御に用いる検索の優先順を示す情報が設定される。業務画面属性の項目には、業務画面の属性が設定される。業務コードの項目には、業務コードが設定される。キー操作履歴へのポインタの項目には、キー操作履歴テーブル１６１ｂにおいて、当該業務コードのウィンドウにつきキー操作履歴の記録を開始した時点のレコードが設定される。
【００７４】
検索テーブル１６１ｃには、例えば、検索順序が“３”、業務画面属性が“並行取引”、業務コードが“１３０００３”、キー操作履歴へのポインタが“１３ｆｄｆ１”という情報が設定される。これは、並行取引である業務コード“１３０００３”で示される取引照会については、キー操作履歴の検索処理を３番目に行うことを示している。更に、取引照会のウィンドウ３３０に対するキー操作履歴がキー操作履歴テーブル１６１ｂに割り当てられたメモリアドレスのうち“１３ｆｄｆ１”から開始していることを示している。
【００７５】
ここで、出金取引、印鑑照合および取引照会等の各ウィンドウの処理に対して、所定のサイズのメモリ領域がＯＳ１１０により予め割り当てられる。上記メモリアドレスから、所定サイズ分のメモリ領域に各ウィンドウの処理のキー操作履歴を示す情報が格納される。各ウィンドウの処理のキー操作履歴は、割り当てられたメモリ領域に循環的に記録される。例えば、履歴管理部１６６は当該メモリ領域の最後のアドレスへの記録を行うと、当該メモリ領域の最初のアドレスから上書きして記録する。
【００７６】
ここで、以下の説明では、ポインタ“１３ｆｄｆ１”は、キー操作履歴テーブル１６１ｂの項番“１００１”のレコードのメモリアドレスを示すものとする。同様に、ポインタ“１２ｆｄｆ１”は項番“２００１”のレコードのメモリアドレスを、ポインタ“１１ｆｄｆ１”は項番“３００１”のレコードのメモリアドレスを示すものとする。
【００７７】
また、検索順序は業務画面属性によって決定される。具体的には、事象キー１２ａが押下された際にアクティブであったウィンドウ３１０、すなわち、オペレータがガイダンスを希望しているアクティブウィンドウの検索の優先度が１番高い。ここで、オペレータがガイダンスを希望しているウィンドウの業務画面属性を以下では選択対象と称する。第２の実施の形態では、アクティブウィンドウの業務画面属性が選択対象となる。そして、選択対象のウィンドウの直前に操作されていた前取引のウィンドウの検索の優先度が２番目に高い。また、並行取引のウィンドウの検索の優先度が３番目に高い。このような検索の優先度は、適宜変更できる。
【００７８】
更に、並行取引のウィンドウがアクティブウィンドウである場合や並行取引のウィンドウが前取引のウィンドウに該当する場合も考えられる。その場合には、並行取引のウィンドウにつき業務画面属性の項目を“並行取引”に代えて、“選択対象”や“前取引”と設定すればよい。
【００７９】
図９は、仮想業務コード変換テーブルのデータ構造例を示す図である。仮想業務コード変換テーブル１６２ａは、変換情報記憶部１６２に予め格納される。仮想業務コード変換テーブル１６２ａには、業務コードおよび仮想業務コードの項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、１つの変換ルールを構成する。
【００８０】
業務コードの項目には、業務コードが設定される。仮想業務コードの項目には、仮想業務コードが設定される。
仮想業務コード変換テーブル１６２ａには、業務コードが“１１０００１”、仮想業務コードが“ＶＤ＿ＳＹＵＫＫＩＮ０１”という情報が設定される。これは、業務コード“１１０００１”と仮想業務コード“ＶＤ＿ＳＹＵＫＫＩＮ０１”とが相互に対応付けられていることを示している。
【００８１】
図１０は、仮想キーコード変換テーブルのデータ構造例を示す図である。仮想キーコード変換テーブル１６２ｂは、変換情報記憶部１６２に予め格納される。仮想キーコード変換テーブル１６２ｂには、キーコードおよび仮想キーコードの項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、１つの変換ルールを示す。
【００８２】
キーコードの項目には、キーコードが設定される。仮想キーコードの項目には、仮想キーコードが設定される。
仮想キーコード変換テーブル１６２ｂには、キーコードが“１”、仮想キーコードが“ＶＫ＿ＩＮＰＵＴ０１”という情報が設定される。これは、キーコード“１”と仮想キーコード“ＶＫ＿ＩＮＰＵＴ０１”とが相互に対応付けられていることを示している。
【００８３】
図１１，１２は、第２の実施の形態の業務条件定義テーブルのデータ構造例を示す図である。業務条件定義テーブル１６３ａは、通知情報記憶部１６３に予め格納される。業務条件定義テーブル１６３ａには、項番、選択対象仮想業務コード、最終仮想キーコード、選択対象仮想キーコード、前取引仮想業務コード、前取引仮想キーコード、並行取引仮想業務コード、並行取引仮想キーコードおよびメッセージの項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、１つの業務条件定義レコードを構成する。
【００８４】
項番の項目には、レコードを識別するための情報が設定される。選択対象仮想業務コードの項目には、選択対象のウィンドウの仮想業務コードが設定される。最終仮想キーコードの項目には、選択対象のウィンドウで最後に入力されたキーコードに対応する仮想キーコードが設定される。選択対象仮想キーコードの項目には、選択対象のウィンドウに入力されたキーコードに対応する仮想キーコードが設定される。前取引仮想業務コードの項目には、前取引のウィンドウの仮想業務コードが設定される。前取引仮想キーコードの項目には、前取引のウィンドウに入力されたキーコードに対応する仮想キーコードが設定される。並行取引仮想業務コードの項目には、並行取引のウィンドウの仮想業務コードが設定される。並行取引仮想キーコードの項目には、並行取引のウィンドウに入力されたキーコードに対応する仮想キーコードが設定される。メッセージの項目には、ガイダンスの内容を示す文字列が設定される。
【００８５】
業務条件定義テーブル１６３ａには、例えば、項番が“１”、選択対象仮想業務コードが“ＶＤ＿ＳＹＵＫＫＩＮ０１”、最終仮想キーコードが“ＶＫ＿ＩＮＰＵＴ０１”、選択対象仮想キーコードが“ＶＫ＿ＩＮＰＵＴ０１”、前取引仮想業務コードが“ＶＤ＿ＩＮＫＡＮ０１”、前取引仮想キーコードが“ＶＫ＿ＩＮＰＵＴ１１”、並行取引仮想業務コードが“ハイフン（−）”、並行取引仮想キーコードが“ハイフン（−）”、メッセージが“印鑑照合が未完了のため、出金取引の完了キーは押下無効です。”という情報が設定される。これは、コードセットが次の（１）および（２）の条件を満たす場合に当該メッセージを出力することを示している。
【００８６】
（１）選択対象のウィンドウ
仮想業務コード“ＶＤ＿ＳＹＵＫＫＩＮ０１”に対応する業務コードのウィンドウにて、事象キー１２ａが押下された時点の最終の仮想キーコード“ＶＫ＿ＩＮＰＵＴ０１”に対応するキーコードの入力がある。
【００８７】
（２）前取引のウィンドウ
仮想業務コード“ＶＤ＿ＩＮＫＡＮ０１”に対応する業務コードのウィンドウにて、仮想キーコード“ＶＫ＿ＩＮＰＵＴ１１”に対応するキーコードの入力がある。
【００８８】
ここで、並行取引に関する“ハイフン（−）”の設定は、並行取引については条件を問わない（未定義である）ことを示している。
なお、最終仮想キーコードを検索条件に加えることで、検索対象とするレコードの絞り込みによる処理効率の向上を図れる。また、最終仮想キーコードを検索条件として追加することで、オペレータの現在の操作状況に一層即したメッセージの定義が可能となる。項番“１”のレコードでは、最終仮想キーコードと選択対象仮想キーコードとが同一の場合を例示している。次に示す項番“２”のレコードは、最終仮想キーコードと選択対象仮想キーコードとが異なり、かつ、並行取引についても条件を課す場合を例示している。
【００８９】
業務条件定義テーブル１６３ａには、例えば、項番が“２”、選択対象仮想業務コードが“ＶＤ＿ＳＹＵＫＫＩＮ０１”、最終仮想キーコードが“ＶＫ＿ＩＮＰＵＴ０１”、選択対象仮想キーコードが“ＶＫ＿ＩＮＰＵＴ０２”、前取引仮想業務コード“ＶＤ＿ＩＮＫＡＮ０２”、前取引仮想キーコードが“ＶＫ＿ＩＮＰＵＴ１２”、並行取引仮想業務コードが“ＶＤ＿ＳＹＯＫＡＩ０３”、並行取引仮想キーコードが“ＶＫ＿ＩＮＰＵＴ２１”およびメッセージが“承認中の依頼が未承認のため、出金取引の完了キーは押下無効です。”という情報が設定される。これは、コードセットが次の（１）〜（４）の条件を満たす場合に当該メッセージを出力することを示している。
【００９０】
（１）選択対象のウィンドウ
仮想業務コード“ＶＤ＿ＳＹＵＫＫＩＮ０１”に対応する業務コードのウィンドウにて、事象キー１２ａが押下された時点の最終の仮想キーコードとして“ＶＫ＿ＩＮＰＵＴ０１”に対応するキーコードの入力がある。
【００９１】
（２）選択対象のウィンドウ
仮想業務コード“ＶＤ＿ＳＹＵＫＫＩＮ０１”に対応する業務コードのウィンドウにて、事象キー１２ａが押下された時点の最終の仮想キーコード以外に仮想キーコード“ＶＫ＿ＩＮＰＵＴ０２”に対応するキーコードの入力がある。
【００９２】
（３）前取引のウィンドウ
仮想業務コード“ＶＤ＿ＩＮＫＡＮ０２”に対応する業務コードのウィンドウにて、仮想キーコード“ＶＫ＿ＩＮＰＵＴ１２”に対応するキーコードの入力がある。
【００９３】
（４）並行取引のウィンドウ
仮想業務コード“ＶＤ＿ＳＹＯＫＡＩ０３”に対応する業務コードのウィンドウにて、仮想キーコード“ＶＫ＿ＩＮＰＵＴ２１”に対応するキーコードの入力がある。
【００９４】
次に、以上の構成を備える端末装置１００の処理手順を説明する。
図１３は、第２の実施の形態のメッセージ出力処理を示すフローチャートである。以下、図１３に示す処理をステップ番号に沿って説明する。なお、以下の説明では、図２で示したようにウィンドウ３１０がアクティブウィンドウ、ウィンドウ３２０が前取引のウィンドウ、ウィンドウ３３０が並行取引のウィンドウである場合を想定する。
【００９５】
［ステップＳ１１］操作解析処理部１６７は、イベントハンドラ１３０を介して事象キー１２ａが押下された旨を示すガイダンス要求を受け付ける。
［ステップＳ１２］操作解析処理部１６７は、アクティブウィンドウの業務コードを特定する。業務コードは、例えばＯＳ１１０が管理する各ウィンドウのウィンドウ識別子に対応付けて管理されている。具体的には、アプリケーション１２０，１２０ａ，１２０ｂは各ウィンドウ用の業務画面を生成する際に、ＯＳ１１０が管理する各ウィンドウの識別子に当該業務画面の業務コードを対応付けたテーブルをＲＡＭ１０２等に格納する。このため、操作解析処理部１６７は、アクティブウィンドウを示すウィンドウ識別子をＯＳ１１０から取得すれば、アクティブウィンドウの業務コードを特定できる。その結果、操作解析処理部１６７は、ウィンドウ３１０の業務コード“１１０００１”を特定する。
【００９６】
［ステップＳ１３］操作解析処理部１６７は、履歴情報記憶部１６１に格納されたウィンドウ履歴テーブル１６１ａおよびキー操作履歴テーブル１６１ｂに基づいて、検索テーブル１６１ｃを生成する。操作解析処理部１６７は、ウィンドウ３１０，３２０，３３０の業務画面属性に応じて検索順序を決定する。その方法は、図８で説明した通りである。
【００９７】
［ステップＳ１４］操作解析処理部１６７は、変換情報記憶部１６２に格納された仮想業務コード変換テーブル１６２ａを参照して、アクティブウィンドウの業務コードに対応する仮想業務コードを取得する。仮想業務コード変換テーブル１６２ａの例では、業務コード“１１０００１”に対して、仮想業務コード“ＶＤ＿ＳＹＵＫＫＩＮ０１”を取得できる。
【００９８】
［ステップＳ１５］操作解析処理部１６７は、キー操作履歴テーブル１６１ｂを参照して、最終操作キーコードを取得する。最終操作キーコードは、アクティブウィンドウにおいて最後に入力されたキーコードである。キー操作履歴テーブル１６１ｂの例では、項番“３００３”のレコードのキーコード“１”が該当する。
【００９９】
［ステップＳ１６］操作解析処理部１６７は、変換情報記憶部１６２に格納された仮想キーコード変換テーブル１６２ｂを参照して、最終操作キーコードに対応する仮想キーコード（最終仮想キーコード）を取得する。仮想キーコード変換テーブル１６２ｂの例では、キーコード“１”に対して、最終仮想キーコード“ＶＫ＿ＩＮＰＵＴ０１”を取得できる。
【０１００】
［ステップＳ１７］操作解析処理部１６７は、選択対象仮想業務コードおよび最終仮想キーコードをキーとして、通知情報記憶部１６３に格納された業務条件定義テーブル１６３ａを検索する。上記の例では、選択対象仮想業務コード“ＶＤ＿ＳＹＵＫＫＩＮ０１”および最終仮想キーコード“ＶＫ＿ＩＮＰＵＴ０１”が具体的なキーの値となる。
【０１０１】
［ステップＳ１８］操作解析処理部１６７は、ステップＳ１７の検索の結果、業務条件定義テーブル１６３ａ中に該当するレコードが存在するか否かを判定する。存在する場合、処理をステップＳ１９に進める。存在しない場合、処理を完了する。
【０１０２】
［ステップＳ１９］操作解析処理部１６７は、ステップＳ１７で検索にヒットしたレコード群を抽出する。抽出したレコード群を処理対象レコード群と称する。なお、検索にヒットしたレコードが１つの場合もあり得るので、処理対象レコード群に含まれるレコードが１つの場合もある。業務条件定義テーブル１６３ａの例では、選択対象仮想業務コード“ＶＤ＿ＳＹＵＫＫＩＮ０１”および最終仮想キーコード“ＶＫ＿ＩＮＰＵＴ０１”を含むレコードとして、項番“１”〜“３”のレコードが存在する。よって、操作解析処理部１６７は、これらのレコードを処理対象レコード群として抽出する。
【０１０３】
［ステップＳ２０］操作解析処理部１６７は、処理対象レコード群の各レコードに含まれるコードセットに基づいて、メッセージ抽出処理を実行する。
［ステップＳ２１］操作解析処理部１６７は、抽出したメッセージをメッセージ出力部１６８に出力する。メッセージ出力部１６８は、ＯＳ１１０を介してモニタ１１に当該メッセージを表示させる。
【０１０４】
このようにして、操作解析処理部１６７は、選択対象仮想業務コードおよび最終仮想キーコードに基づいて、業務条件定義テーブル１６３ａから処理対象レコード群を抽出する。そして、処理対象レコード群に含まれる各レコードのコードセットに基づいて、ガイダンスとして出力するメッセージを抽出する。
【０１０５】
なお、上記ステップＳ１８において該当レコードが存在しない場合には、メッセージの出力が行われない。その場合、ガイダンスメッセージがない旨を示すメッセージをモニタ１１に表示させてもよい。
【０１０６】
次に、上記ステップＳ２０で示した操作解析処理部１６７のメッセージ抽出処理の手順を説明する。
図１４，１５は、第２の実施の形態のメッセージ抽出処理を示すフローチャートである。以下、図１４，１５に示す処理をステップ番号に沿って説明する。
【０１０７】
［ステップＳ３１］操作解析処理部１６７は、処理対象レコード群からチェック対象とするレコード（以下、チェック対象レコードと称する）を１つ選択する。操作解析処理部１６７は、チェック対象レコードに含まれる仮想業務コードや仮想キーコードのコードセットに対応する業務コードやキーコードを履歴情報記憶部１６１から検出できるか否かを以降の処理によりチェックする。なお、以下の処理手順は検索テーブル１６１ｃの検索順序の設定内容に準ずる。すなわち、選択対象（アクティブウィンドウ）、前取引、並行取引のウィンドウの順にチェックを行う。
【０１０８】
［ステップＳ３２］操作解析処理部１６７は、チェック対象レコードに選択対象仮想キーコードが定義されているか否かを判定する。定義されている場合、処理をステップＳ３３に進める。定義されていない場合、処理をステップＳ３７に進める。
【０１０９】
［ステップＳ３３］操作解析処理部１６７は、チェック対象レコードを参照して選択対象仮想キーコードを取得する。例えば、ステップＳ３１において業務条件定義テーブル１６３ａのうちの項番“１”のレコードをチェック対象レコードとして選択している場合、選択対象仮想キーコードは“ＶＫ＿ＩＮＰＵＴ０１”である。
【０１１０】
［ステップＳ３４］操作解析処理部１６７は、変換情報記憶部１６２に格納された仮想キーコード変換テーブル１６２ｂを参照して、ステップＳ３３で取得した仮想キーコードに対応するキーコードを取得する。仮想キーコード変換テーブル１６２ｂの例では、仮想キーコード“ＶＫ＿ＩＮＰＵＴ０１”に対してキーコード“１”を取得する。
【０１１１】
［ステップＳ３５］操作解析処理部１６７は、履歴情報記憶部１６１に格納されたキー操作履歴テーブル１６１ｂに含まれる選択対象のウィンドウのキー操作履歴からステップＳ３４で取得したキーコードを検索する。ここで、操作解析処理部１６７は、選択対象のウィンドウのキー操作履歴を履歴情報記憶部１６１に格納された検索テーブル１６１ｃを参照して特定する。例えば、ステップＳ３１において業務条件定義テーブル１６３ａのうちの項番“１”のレコードをチェック対象レコードとして選択している場合は次の通りである。操作解析処理部１６７は、変換情報記憶部１６２に格納された仮想業務コード変換テーブル１６２ａを参照して、チェック対象レコードに含まれる選択対象仮想業務コード“ＶＤ＿ＳＹＵＫＫＩＮ０１”に対応する業務コード“１１０００１”を特定する。そして、検索テーブル１６１ｃを参照して、業務コード“１１０００１”に対応するキー操作履歴へのポインタ“１１ｆｄｆ１”を特定する。これにより、キー操作履歴テーブル１６１ｂの項番“３００１”以降のキー操作履歴を選択対象のウィンドウのキー操作履歴と特定できる。その範囲は、ポインタ“１１ｆｄｆ１”〜“１２ｆｄｆ０”の間と特定できる。
【０１１２】
［ステップＳ３６］操作解析処理部１６７は、ステップＳ３５の検索の結果、ヒットするキー操作履歴のレコードが存在するか否かを判定する。存在する場合、処理をステップＳ３７に進める。存在しない場合、処理をステップＳ４８に進める。
【０１１３】
［ステップＳ３７］操作解析処理部１６７は、チェック対象レコードに前取引仮想キーコードが定義されているか否かを判定する。定義されている場合、処理をステップＳ３８に進める。定義されていない場合、処理をステップＳ４２に進める。
【０１１４】
［ステップＳ３８］操作解析処理部１６７は、チェック対象レコードを参照して前取引仮想キーコードを取得する。例えば、ステップＳ３１において業務条件定義テーブル１６３ａのうちの項番“１”のレコードをチェック対象レコードとして選択している場合、前取引仮想キーコードは“ＶＫ＿ＩＮＰＵＴ１１”である。
【０１１５】
［ステップＳ３９］操作解析処理部１６７は、仮想キーコード変換テーブル１６２ｂを参照して、ステップＳ３８で取得した仮想キーコードに対応するキーコードを取得する。仮想キーコード変換テーブル１６２ｂの例では、仮想キーコード“ＶＫ＿ＩＮＰＵＴ１１”に対してキーコード“５１”を取得する。
【０１１６】
［ステップＳ４０］操作解析処理部１６７は、キー操作履歴テーブル１６１ｂに含まれる前取引のウィンドウのキー操作履歴からステップＳ３９で取得したキーコードを検索する。ここで、操作解析処理部１６７は、前取引のウィンドウのキー操作履歴を検索テーブル１６１ｃを参照して特定する。
【０１１７】
例えば、ステップＳ３１において業務条件定義テーブル１６３ａのうちの項番“１”のレコードをチェック対象レコードとして選択している場合は次の通りである。操作解析処理部１６７は、仮想業務コード変換テーブル１６２ａを参照して、チェック対象レコードに含まれる前取引仮想業務コード“ＶＤ＿ＩＮＫＡＮ０１”に対応する業務コード“１２０００１”を特定する。そして、検索テーブル１６１ｃを参照して、業務コード“１２０００１”に対応するキー操作履歴へのポインタを特定する。ここで、検索テーブル１６１ｃには、業務コード“１２０００１”に対応するキー操作履歴へのポインタが設定されていない。この場合には、操作解析処理部１６７は、当該キーコードの検索を行っても、履歴から一致するキーコードを得られないこととなる。
【０１１８】
一方、例えば、ステップＳ３１において業務条件定義テーブル１６３ａのうちの項番“２”のレコードをチェック対象レコードとして選択している場合は次の通りである。操作解析処理部１６７は、仮想業務コード変換テーブル１６２ａを参照して、チェック対象レコードに含まれる前取引仮想業務コード“ＶＤ＿ＩＮＫＡＮ０２”に対応する業務コード“１２０００２”を特定する。そして、検索テーブル１６１ｃを参照して、業務コード“１２０００２”に対応するキー操作履歴へのポインタ“１２ｆｄｆ１”を特定する。これにより、キー操作履歴テーブル１６１ｂの項番“２００１”以降のキー操作履歴を前取引のウィンドウのキー操作履歴と特定できる。その範囲は、ポインタ“１２ｆｄｆ１”〜“１３ｆｄｆ０”の間と特定できる。
【０１１９】
［ステップＳ４１］操作解析処理部１６７は、ステップＳ４０の検索の結果、ヒットするキー操作履歴のレコードが存在するか否かを判定する。存在する場合、処理をステップＳ４２に進める。存在しない場合、処理をステップＳ４８に進める。
【０１２０】
［ステップＳ４２］操作解析処理部１６７は、チェック対象レコードに並行取引仮想キーコードが定義されているか否かを判定する。定義されている場合、処理をステップＳ４３に進める。定義されていない場合、処理をステップＳ４７に進める。
【０１２１】
［ステップＳ４３］操作解析処理部１６７は、チェック対象レコードを参照して並行取引仮想キーコードを取得する。例えば、ステップＳ３１において業務条件定義テーブル１６３ａのうちの項番“２”のレコードをチェック対象レコードとして選択している場合、並行取引仮想キーコードは“ＶＫ＿ＩＮＰＵＴ２１”である。
【０１２２】
［ステップＳ４４］操作解析処理部１６７は、仮想キーコード変換テーブル１６２ｂを参照して、ステップＳ４３で取得した仮想キーコードに対応するキーコードを取得する。仮想キーコード変換テーブル１６２ｂの例では、仮想キーコード“ＶＫ＿ＩＮＰＵＴ２１”に対してキーコード“１０１”を取得する。
【０１２３】
［ステップＳ４５］操作解析処理部１６７は、キー操作履歴テーブル１６１ｂに含まれる並行取引のウィンドウのキー操作履歴からステップＳ４４で取得したキーコードを検索する。ここで、操作解析処理部１６７は、並行取引のウィンドウのキー操作履歴を検索テーブル１６１ｃを参照して特定する。例えば、ステップＳ３１において業務条件定義テーブル１６３ａのうちの項番“２”のレコードをチェック対象レコードとして選択している場合は次の通りである。操作解析処理部１６７は、仮想業務コード変換テーブル１６２ａを参照して、チェック対象レコードに含まれる並行取引仮想業務コード“ＶＤ＿ＳＹＯＫＡＩ０３”に対応する業務コード“１３０００３”を特定する。そして、検索テーブル１６１ｃを参照して、業務コード“１３０００３”に対応するキー操作履歴へのポインタ“１３ｆｄｆ１”を特定する。これにより、キー操作履歴テーブル１６１ｂの項番“１００１”以降のキー操作履歴を並行取引のウィンドウのキー操作履歴と特定できる。その範囲は、ポインタ“１３ｆｄｆ１”〜“１４ｆｄｆ０”の間と特定できる。
【０１２４】
［ステップＳ４６］操作解析処理部１６７は、ステップＳ４５の検索の結果、ヒットするキー操作履歴のレコードが存在するか否かを判定する。存在する場合、処理をステップＳ４７に進める。存在しない場合、処理をステップＳ４８に進める。
【０１２５】
［ステップＳ４７］操作解析処理部１６７は、ステップＳ３１で選択したチェック対象レコードに設定されたメッセージを抽出する。
［ステップＳ４８］操作解析処理部１６７は、現在選択中のチェック対象レコードを処理済とする。そして、操作解析処理部１６７は、処理対象レコード群に含まれるレコードの全てが処理済であるか否かを判定する。全て処理済の場合、処理を完了する。未処理のレコードが存在する場合、処理をステップＳ３１に進める。処理対象レコード群に含まれるレコードを全て処理済であるために本処理を完了する場合、操作解析処理部１６７はガイダンスのためのメッセージがない旨を示すメッセージを生成する。
【０１２６】
このようにして、操作解析処理部１６７は、通知情報記憶部１６３に格納された業務条件定義テーブル１６３ａからメッセージを抽出する。
なお、上記ステップＳ４５では、特定したキー操作履歴のうち、ステップＳ４１でヒットしたレコードの時間よりも前の時間が設定されたレコードのみを検索対象としてもよい。
【０１２７】
図１６は、第２の実施の形態のメッセージ出力の具体例を示す図である。図１６（Ａ）は、ウィンドウ３１０の操作中にエラーが発生した場合を例示している。オペレータは、ウィンドウ３１０，３２０，３３０をモニタ１１に表示させて業務処理を行う。そして、ウィンドウ３１０の出金取引において、ウィンドウ３１０内に表示された取引確定のボタンをマウス１３により押下したとする。すると、ウィンドウ３１０あるいはポップアップウィンドウなどの他のウィンドウに出金取引確定エラーを通知するメッセージが表示される。この時、端末装置１００は、事象キー１２ａの押下を受け付けることで、ウィンドウ３２０，３３０の状態を解析し、その結果を反映したガイダンスメッセージの提供を行える。
【０１２８】
図１６（Ｂ）は、図１６（Ａ）の状態において事象キー１２ａが押下された場合を例示している。端末装置１００は、事象キー１２ａの押下を受け付けると、ウィンドウ３１０の業務コードから仮想業務コードを取得し、ウィンドウ３１０で最後に入力されたキーコードから最終仮想キーコードを取得する。そして、端末装置１００は業務条件定義テーブル１６３ａを参照して、チェック対象とするレコードの絞込を行う。更に、絞り込んだ各レコードのコードセットに含まれる仮想業務コード、仮想キーコードに対応する業務コード、キーコードの、ウィンドウ履歴テーブル１６１ａおよびキー操作履歴テーブル１６１ｂからの検出を試みる。
【０１２９】
図１６（Ｂ）では、業務条件定義テーブル１６３ａの項番“１”のレコードに対応するメッセージが出力される場合を示している。具体的には、出金取引のウィンドウ３１０において、最後に入力されたキーコードが“１”であり、前取引のウィンドウ３２０において、キーコード“５１”が入力された後にエラーが発生している場合である。なお、取引照会のウィンドウ３３０における操作はウィンドウ３１０でのエラーとは無関係であるとする。
【０１３０】
この場合、ウィンドウ３１０で発生したエラーにつき、ガイダンスメッセージを含むウィンドウ３４０がモニタ１１に表示される。
ウィンドウ３４０には、業務条件定義テーブル１６３ａの項番“１”のレコードに設定されたメッセージ“印鑑照合が未完了のため出金取引の完了キーは押下無効です。”が表示されている。当該メッセージによって、オペレータは印鑑照合の処理が未完了であり、出金取引の完了キーの押下を印鑑照合の処理が完了するまで待機すればよいと認識できる。更に、ウィンドウ３４０には端末装置１００にガイダンス解除の要求を入力するためのボタン３４１が表示されている。オペレータは、マウス１３によりボタン３４１を押下操作することでガイダンス解除の要求を端末装置１００に入力できる。端末装置１００は、ガイダンス解除の要求を受け付けると、モニタ１１にウィンドウ３４０を消去させる。
【０１３１】
このように、端末装置１００はアクティブウィンドウと、それ以外のウィンドウとの関係を考慮したガイダンスメッセージをオペレータに提示することができる。
そして、新規ウィンドウを追加した際に、そのウィンドウでの操作に対してガイダンスの提供を行いたい場合には、仮想業務コード変換テーブル１６２ａおよび仮想キーコード変換テーブル１６２ｂに新規ウィンドウに関する情報を定義しさえすればよい。具体的には、仮想業務コード変換テーブル１６２ａに新規ウィンドウの業務コードと仮想業務コードとの対応関係を定義する。また、仮想キーコード変換テーブル１６２ｂに新規ウィンドウで入力され得るキーコードと仮想キーコードとの対応関係を定義する。これにより、業務条件定義テーブル１６３ａを更新することなく、新規ウィンドウに対しても他のウィンドウにおける操作との関係に応じたガイダンスメッセージの提供が可能となり、メンテナンスを効率的に行えるようになる。
【０１３２】
また、このようにしてガイダンスメッセージの設定を容易に行うことができるので、各ウィンドウのアプリケーションを開発した後にメッセージを設定したい場合にも容易に対応することができる。すなわち、独立に開発された複数のアプリケーションにつき事後的なガイダンスメッセージの設定を容易に行える。この場合、開発時においてガイダンスの機能を意識しなくてもよいので、各アプリケーションの開発工数を低減できる。
【０１３３】
また、運用開始後にもメッセージの設定変更が容易に行えるので、オペレータによる実際の操作傾向に応じて、臨機応変にメッセージの内容を設定できる。例えば、開発段階では不明であったが、運用開始後に操作ミスの生じ易い業務が判明した場合にも、適切なガイダンスの提供を容易に開始できる。
【０１３４】
また、仮想業務コード変換テーブル１６２ａおよび仮想キーコード変換テーブル１６２ｂを用意しさえすれば、業務コードやキーコードの異なる情報処理システムに対しても同様にメッセージの設定が可能である。すなわち、様々な業務アプリケーションに適用可能な汎用性の高い通知プログラム、通知方法を実現できるという利点もある。
【０１３５】
なお、業務条件定義テーブル１６３ａにエラー時以外のガイダンスメッセージを予め設定しておくことも考えられる。このようにすれば、オペレータが操作に迷った場合にも、事象キー１２ａの押下を受け付けることで、次の操作手順等を適切にガイドすることができる。
【０１３６】
また、メッセージの表示方法もウィンドウ３４０に表示させる方法に限らず種々の方法を採れる。例えば、アクティブウィンドウ内の所定の領域に当該メッセージを表示させてもよい。
【０１３７】
更に、ガイダンスとしてメッセージをモニタ１１に表示させる例を示したがこれに限らない。例えば、ガイダンスの音声を端末装置１００に接続されたスピーカーから出力してもよい。また、ガイダンスの画像や動画をモニタ１１に表示させてもよい。その場合、業務条件定義テーブル１６３ａに設けられたメッセージの項目に代えて、各コンテンツのデータを格納するための項目を設ければよい。そして、当該項目に各コンテンツのデータを格納し、対応する条件に合致する場合に、当該コンテンツのデータを読み出せばよい。
【０１３８】
［第３の実施の形態］
以下、第３の実施の形態を図面を参照して詳細に説明する。前述の第２の実施の形態との相違点について主に説明し、同様の事項に関しては説明を省略する。
【０１３９】
第２の実施の形態では、キーボード１２に事象キー１２ａを設けてアクティブウィンドウに対するガイダンス要求を受け付け、アクティブウィンドウでの操作に対するガイダンスを提供する機能を説明した。これに対し、オペレータが非アクティブなウィンドウについてのガイダンスの提供を受けたい場合も考えられる。そこで、第３の実施の形態では、非アクティブなウィンドウに対するガイダンス要求を受け付けて、非アクティブなウィンドウに対するガイダンスの提供を行う機能を提供する。
【０１４０】
ここで、第３の実施の形態に係る金融窓口システムの全体構成は、図２で説明した第２の実施の形態の金融窓口システムの全体構成と同様であるため説明を省略する。また、第３の実施の形態の端末装置のハードウェア構成および機能構成は、図３〜５で説明した第２の実施の形態の端末装置１００のハードウェア構成および機能構成と同様であるため説明を省略する。
【０１４１】
なお、以下の説明では、便宜的に第２の実施の形態の端末装置１００の構成を用いて第３の実施の形態の機能を説明する。
図１７は、第３の実施の形態のキーボードの事象キーを示す図である。キーボード１２には、事象キー１２ａ，１２ｂ，１２ｃが設けられている。ここで、キーボード１２の他のキーは図示を省略している。
【０１４２】
事象キー１２ａは、アクティブウィンドウに対するガイダンス要求を受け付けるためのボタンである。事象キー１２ｂは、前取引のウィンドウに対するガイダンス要求を受け付けるためのボタンである。事象キー１２ｃは、並行取引のウィンドウに対するガイダンス要求を受け付けるためのボタンである。
【０１４３】
イベントハンドラ１３０は、事象キー１２ａ，１２ｂ，１２ｃの何れかが押下されると、何れの事象キーが押下されたかを示す情報を含めたガイダンス要求を操作解析処理部１６７に出力する。操作解析処理部１６７は、イベントハンドラ１３０から取得したガイダンス要求に基づいて、アクティブウィンドウ、前取引のウィンドウあるいは並行取引のウィンドウの何れかに対するメッセージの抽出を行う。
【０１４４】
次に、第３の実施の形態におけるメッセージ出力処理の手順を説明する。
図１８は、第３の実施の形態のメッセージ出力処理を示すフローチャートである。以下、図１８に示す処理をステップ番号に沿って説明する。なお、以下の説明では、図２で示したようにウィンドウ３１０がアクティブウィンドウ、ウィンドウ３２０が前取引のウィンドウ、ウィンドウ３３０が並行取引のウィンドウである場合を想定する。
【０１４５】
［ステップＳ５１］操作解析処理部１６７は、イベントハンドラ１３０を介して事象キー１２ａ，１２ｂ，１２ｃの何れかが押下された旨を示すガイダンス要求を受け付ける。
［ステップＳ５２］操作解析処理部１６７は、押下された事象キーを特定する。例えば、事象キー１２ｂ（前取引のウィンドウ用の事象キー）が押下されたとする。
【０１４６】
［ステップＳ５３］操作解析処理部１６７は、事象キーによって選択された選択対象ウィンドウの業務コードを特定する。業務コードは、例えばＯＳ１１０が管理する各ウィンドウのウィンドウ識別子に対応付けて管理されている。具体的には、アプリケーション１２０，１２０ａ，１２０ｂは各ウィンドウ用の業務画面を生成する際に、ＯＳ１１０が管理する各ウィンドウの識別子に当該業務画面の業務コードを対応付けたテーブルをＲＡＭ１０２等に格納する。このため、操作解析処理部１６７は、選択対象ウィンドウを示すウィンドウ識別子をＯＳ１１０から取得すれば、選択対象ウィンドウの業務コードを特定できる。その結果、操作解析処理部１６７は、ウィンドウ３２０の業務コード“１２０００２”を特定する。
【０１４７】
［ステップＳ５４］操作解析処理部１６７は、履歴情報記憶部１６１に格納されたウィンドウ履歴テーブル１６１ａおよびキー操作履歴テーブル１６１ｂに基づいて、検索テーブルを生成する。操作解析処理部１６７は、ウィンドウ３１０，３２０，３３０の業務画面属性に応じて検索順序を決定する。ここで、ステップＳ５３では選択対象のウィンドウ３２０の業務コードとして“１２０００２”が特定されている。このため、ウィンドウ履歴テーブル１６１ａにおいて、項番“１０２”のレコードを基準に前取引および並行取引の判断を行う。ウィンドウ履歴テーブル１６１ａの例によれば、項番“１０１”に並行取引に該当する取引照会の業務コード“１３０００３”が存在している。よって、操作解析処理部１６７は、検索テーブルの業務画面属性“並行取引”のレコードの業務コードに“１３０００３”、検索順序に“３”、キー操作履歴へのポインタに“１３ｆｄｆ１”を設定する。更に、ウィンドウ履歴テーブル１６１ａには、選択対象取引の直前の取引として項番“１００”に出金処理の業務コード“１１０００１”が存在している。よって、操作解析処理部１６７は、検索テーブルの業務画面属性“前取引”のレコードの業務コードに“１１０００１”、検索順序に“２”、キー操作履歴へのポインタに“１１ｆｄｆ１”を設定する。なお、検索テーブルの業務画面属性“選択対象”のレコードの業務コードには“１２０００２”、検索順序は“１”、キー操作履歴へのポインタは“１２ｆｄｆ１”を設定する。
【０１４８】
［ステップＳ５５］操作解析処理部１６７は、変換情報記憶部１６２に格納された仮想業務コード変換テーブル１６２ａを参照して、選択対象ウィンドウの業務コードに対応する仮想業務コードを取得する。仮想業務コード変換テーブル１６２ａの例では、業務コード“１２０００２”に対して、仮想業務コード“ＶＤ＿ＩＮＫＡＮ０２”を取得できる。
【０１４９】
［ステップＳ５６］操作解析処理部１６７は、キー操作履歴テーブル１６１ｂを参照して、選択対象ウィンドウにおける最終操作キーコードを取得する。第３の実施の形態における最終操作キーコードは、選択対象ウィンドウにおけるものであり、アクティブウィンドウにおけるものではない場合がある点が第２の実施の形態と異なる。本例では、ウィンドウ３２０における最終操作キーコードを取得する。例えば、キー操作履歴テーブル１６１ｂにおいて、ウィンドウ３２０につきポインタ“１２ｆｄｆ１”に対応する項番“２００１”からのレコードのうち、最新のレコードに設定されたキーコードを最終操作キーコードとして取得する。例えば、ウィンドウ３２０における最終操作キーコード“５２”を取得したとする。
【０１５０】
［ステップＳ５７］操作解析処理部１６７は、変換情報記憶部１６２に格納された仮想キーコード変換テーブル１６２ｂを参照して、最終操作キーコードに対応する仮想キーコード（最終仮想キーコード）を取得する。仮想キーコード変換テーブル１６２ｂの例では、最終操作キーコード“５２”に対応する最終仮想キーコードとして“ＶＫ＿ＩＮＰＵＴ１２”を取得する。
【０１５１】
［ステップＳ５８］操作解析処理部１６７は、選択対象仮想業務コードおよび最終仮想キーコードをキーとして、通知情報記憶部１６３に格納された業務条件定義テーブル１６３ａを検索する。上記の例では、選択対象仮想業務コード“ＶＤ＿ＩＮＫＡＮ０２”および最終仮想キーコード“ＶＫ＿ＩＮＰＵＴ１２”が具体的なキーの値となる。
【０１５２】
［ステップＳ５９］操作解析処理部１６７は、ステップＳ５８の検索の結果、業務条件定義テーブル１６３ａ中に該当するレコードが存在するか否かを判定する。存在する場合、処理をステップＳ６０に進める。存在しない場合、処理を完了する。
【０１５３】
［ステップＳ６０］操作解析処理部１６７は、ステップＳ５８で検索にヒットしたレコード群を抽出する。抽出したレコード群を処理対象レコード群と称する。なお、検索にヒットしたレコードが１つの場合もあり得るので、処理対象レコード群に含まれるレコードが１つの場合もある。
【０１５４】
［ステップＳ６１］操作解析処理部１６７は、処理対象レコード群の各レコードに含まれるコードセットに基づいて、メッセージ抽出処理を実行する。
［ステップＳ６２］操作解析処理部１６７は、抽出したメッセージをメッセージ出力部１６８に出力する。メッセージ出力部１６８は、ＯＳ１１０を介してモニタ１１に当該メッセージを表示させる。
【０１５５】
このようにして、操作解析処理部１６７は、選択対象仮想業務コードおよび最終仮想キーコードに基づいて、業務条件定義テーブル１６３ａから処理対象レコード群を抽出する。そして、処理対象レコード群に含まれる各レコードのコードセットに基づいて、ガイダンスとして出力するメッセージを抽出する。
【０１５６】
なお、上記ステップＳ５９において該当レコードが存在しない場合には、メッセージの出力が行われない。その場合、ガイダンスメッセージがない旨を示すメッセージをモニタ１１に表示させてもよい。
【０１５７】
ここで、上記ステップＳ６１で述べた操作解析処理部１６７によるメッセージ抽出処理の手順は図１４，１５で説明した第２の実施の形態のメッセージ抽出処理と同様であるため説明を省略する。ただし、操作解析処理部１６７は、キー操作履歴テーブル１６１ｂにおいて選択対象ウィンドウ以外のウィンドウにつきキー操作履歴を参照する場合、選択対象ウィンドウの最終操作キーコードが入力された時間よりも前に記録されたキー操作履歴の参照を行う。これにより、第２の実施の形態のメッセージ抽出処理と同様の手順で、通知情報記憶部１６３に格納された業務条件定義テーブル１６３ａから適切なメッセージを抽出できる。
【０１５８】
図１９は、第３の実施の形態のメッセージ出力の具体例を示す図である。図１９（Ａ）は、ウィンドウ３１０において、オペレータが出金取引の操作中である状態を示している。このとき、ウィンドウ３２０，３３０はウィンドウ３１０の背後に隠れており、アクティブ状態に切り替えない限りウィンドウ３２０，３３０の内容を閲覧できない状態となっている。
【０１５９】
図１９（Ｂ）は、図１９（Ａ）の状態において、事象キー１２ｂが押下された場合を例示している。端末装置１００は、事象キー１２ｂの押下を受け付けると、ウィンドウ３２０の業務コードから選択対象仮想業務コードを取得し、ウィンドウ３２０で最後に入力されたキーコードから最終仮想キーコードを取得する。そして、端末装置１００は業務条件定義テーブル１６３ａを参照して、取得した選択対象仮想業務コードおよび最終仮想キーコードによりチェック対象とするレコードの絞込を行う。更に、絞り込んだ各レコードのコードセットに含まれる仮想業務コード、仮想キーコードに対応する業務コード、キーコードの、ウィンドウ履歴テーブル１６１ａおよびキー操作履歴テーブル１６１ｂからの検出を試みる。ここで、ウィンドウ履歴テーブル１６１ａおよびキー操作履歴テーブル１６１ｂのうち、参照対象とするキー操作履歴は、上述したように上記ウィンドウ３２０で最後に入力されたキーコードよりも前の時間の履歴である。
【０１６０】
図１９（Ｂ）では、ウィンドウ３２０における印鑑照合の処理の状態をメッセージとして出力している場合を示している。具体的には、ウィンドウ３２０の状態を示すガイダンスメッセージを含むウィンドウ３４０ａがモニタ１１に表示される。
【０１６１】
ウィンドウ３４０ａには、“印鑑照合にて、照合データを取得中です。”というメッセージが表示されている。当該メッセージによって、オペレータは印鑑照合の処理が未完了であり、現在取引サーバ２００から照合データの取得中であることを認識できる。更に、ウィンドウ３４０ａには端末装置１００にガイダンス解除の要求を入力するためのボタン３４１が表示されている。オペレータは、マウス１３によりボタン３４１を押下操作することでガイダンス解除の要求を端末装置１００に入力できる。端末装置１００は、ガイダンス解除の要求を受け付けると、モニタ１１にウィンドウ３４０ａを消去させる。
【０１６２】
これにより、図１６で説明した第２の実施の形態の効果と同様の効果を奏することができる。
更に、オペレータは、例えばアクティブウィンドウでの作業中にアクティブウィンドウ以外のウィンドウの状態を確認したい場合がある。具体的には、出金取引の確定につき印鑑照合が完了していなければならない場合、アクティブウィンドウで出金取引のための入力を終えた後、当該入力を確定とする操作を行う直前のタイミングが考えられる。しかし、ウィンドウ３１０がウィンドウ３２０，３３０に重なって表示されている場合には、アクティブウィンドウの切り替えを行わない限り、アクティブ状態のウィンドウ３１０に覆われたウィンドウ３２０，３３０の状態を閲覧できない場合もある。
【０１６３】
第３の実施の形態の端末装置１００によれば、そのような場合にもアクティブウィンドウを表示しながら、背後のウィンドウでの処理状況を表示できる。このため、背後のウィンドウをアクティブにした後に、再度元のウィンドウをアクティブにして元の業務操作を続行する等、アクティブウィンドウの切替操作を行う煩わしさを軽減できる。その結果、業務操作を効率的に行えるようになる。
【０１６４】
また、オペレータに対して非アクティブであるウィンドウでの処理状況を適切に通知できるので、例えば、印鑑照合の処理が完了していないにも関わらず出金取引が確定されてしまうような事態を抑制できる。このため、当該操作によって発生する無用なエラーを未然に防ぐことができる。
【０１６５】
［第４の実施の形態］
以下、第４の実施の形態を図面を参照して詳細に説明する。前述の第２，第３の実施の形態との相違点について主に説明し、同様の事項に関しては説明を省略する。
【０１６６】
第２，第３の実施の形態では、キーボード１２に設けた事象キー１２ａ，１２ｂ，１２ｃの押下を受け付け、事象キーに対応するウィンドウでの操作に対するガイダンスを提供する機能を説明した。これに対し、第４の実施の形態では、事象キーの押下を受け付けた場合に、アクティブウィンドウおよびその他のウィンドウにおける現在までの操作履歴を出力する機能を提供する。以下では、そのための端末装置の構成等につき詳細に説明する。
【０１６７】
ここで、第４の実施の形態に係る金融窓口システムの全体構成は、図２で説明した第２の実施の形態の金融窓口システムの全体構成と同様であるため説明を省略する。また、第４の実施の形態の端末装置のハードウェア構成および機能構成は、図３〜５で説明した第２の実施の形態の端末装置１００のハードウェア構成および機能構成と同様であるため説明を省略する。
【０１６８】
なお、以下の説明では、便宜的に第２の実施の形態の端末装置１００の構成を用いて第３の実施の形態の機能を説明する。
図２０，２１は、第４の実施の形態の業務条件定義テーブルのデータ構造例を示す図である。業務条件定義テーブル１６３ｂは、通知情報記憶部１６３に予め格納される。業務条件定義テーブル１６３ｂには、項番、選択対象仮想業務コード、最終仮想キーコード、選択対象仮想キーコード、前取引仮想業務コード、前取引仮想キーコード、並行取引仮想業務コード、並行取引仮想キーコードおよびメッセージの項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、１つの業務条件定義レコードを構成する。
【０１６９】
ここで、項番、選択対象仮想業務コード、最終仮想キーコード、選択対象仮想キーコード、前取引仮想業務コード、前取引仮想キーコード、並行取引仮想業務コードおよび並行取引仮想キーコードの項目は、図１１，１２で説明した第２の実施の形態の業務条件定義テーブル１６３ａにおける同一名称の項目と同一である。
【０１７０】
メッセージの項目には、履歴として出力するメッセージの内容を示す文字列が設定される。
業務条件定義テーブル１６３ｂには、例えば、項番が“１”、選択対象仮想業務コードが“ＶＤ＿ＳＹＵＫＫＩＮ０１”、最終仮想キーコードが“ＶＫ＿ＩＮＰＵＴ０１”、選択対象仮想キーコードが“ＶＫ＿ＩＮＰＵＴ０１”、前取引仮想業務コードが“ＶＤ＿ＩＮＫＡＮ０１”、前取引仮想キーコードが“ＶＫ＿ＩＮＰＵＴ１１”、並行取引仮想業務コードが“ハイフン（−）”、並行取引仮想キーコードが“ハイフン（−）”、メッセージが“印鑑照合完了（照合ＯＫ）”という情報が設定される。これは、コードセットが次の（１）および（２）の条件を満たす場合に当該メッセージを履歴として出力することを示している。
【０１７１】
（１）選択対象のウィンドウ
仮想業務コード“ＶＤ＿ＳＹＵＫＫＩＮ０１”に対応する業務コードのウィンドウにて、事象キー１２ａが押下された時点の最終の仮想キーコード“ＶＫ＿ＩＮＰＵＴ０１”に対応するキーコードの入力がある。
【０１７２】
（２）前取引のウィンドウ
仮想業務コード“ＶＤ＿ＩＮＫＡＮ０１”に対応する業務コードのウィンドウにて、仮想キーコード“ＶＫ＿ＩＮＰＵＴ１１”に対応するキーコードの入力がある。
【０１７３】
ここで、並行取引に関する“ハイフン（−）”の設定は、並行取引については条件を問わない（未定義である）ことを示している。
また、業務条件定義テーブル１６３ｂには、例えば、項番が“２”、選択対象仮想業務コードが“ＶＤ＿ＳＹＵＫＫＩＮ０１”、最終仮想キーコードが“ＶＫ＿ＩＮＰＵＴ０１”、選択対象仮想キーコードが“ＶＫ＿ＩＮＰＵＴ０２”、前取引仮想業務コード“ＶＤ＿ＩＮＫＡＮ０２”、前取引仮想キーコードが“ＶＫ＿ＩＮＰＵＴ１２”、並行取引仮想業務コードが“ＶＤ＿ＳＹＯＫＡＩ０３”、並行取引仮想キーコードが“ＶＫ＿ＩＮＰＵＴ２１”およびメッセージが“印鑑照合データを取得中”という情報が設定される。これは、コードセットが次の（１）〜（４）の条件を満たす場合に当該メッセージを出力することを示している。
【０１７４】
（１）選択対象のウィンドウ
仮想業務コード“ＶＤ＿ＳＹＵＫＫＩＮ０１”に対応する業務コードのウィンドウにて、事象キー１２ａが押下された時点の最終の仮想キーコードとして“ＶＫ＿ＩＮＰＵＴ０１”に対応するキーコードの入力がある。
【０１７５】
（２）選択対象のウィンドウ
仮想業務コード“ＶＤ＿ＳＹＵＫＫＩＮ０１”に対応する業務コードのウィンドウにて、事象キー１２ａが押下された時点の最終の仮想キーコード以外に仮想キーコード“ＶＫ＿ＩＮＰＵＴ０２”に対応するキーコードの入力がある。
【０１７６】
（３）前取引のウィンドウ
仮想業務コード“ＶＤ＿ＩＮＫＡＮ０２”に対応する業務コードのウィンドウにて、仮想キーコード“ＶＫ＿ＩＮＰＵＴ１２”に対応するキーコードの入力がある。
【０１７７】
（４）並行取引のウィンドウ
仮想業務コード“ＶＤ＿ＳＹＯＫＡＩ０３”に対応する業務コードのウィンドウにて、仮想キーコード“ＶＫ＿ＩＮＰＵＴ２１”に対応するキーコードの入力がある。
【０１７８】
次に、第４の実施の形態におけるメッセージ出力処理の手順を説明する。ここで、第４の実施の形態におけるメッセージ出力処理の手順は、図１３で説明した第２の実施の形態のメッセージ出力処理の手順と同様である。ただし、操作解析処理部１６７は業務条件定義テーブル１６３ａに代えて業務条件定義テーブル１６３ｂを参照して処理を行う点が異なる。また、第２の実施の形態の当該手順で説明したメッセージ抽出処理の手順が、第２の実施の形態の手順と第４の実施の形態の手順とでは異なる。このため、以下では、第４の実施の形態におけるメッセージ抽出処理の手順について説明する。
【０１７９】
図２２，２３は、第４の実施の形態のメッセージ抽出処理の手順を示すフローチャートである。以下、図２２，２３に示す処理をステップ番号に沿って説明する。なお、以下の説明では、図２で示したようにウィンドウ３１０がアクティブウィンドウ、ウィンドウ３２０が前取引のウィンドウ、ウィンドウ３３０が並行取引のウィンドウである場合を想定する。また、メッセージ出力処理において、処理対象レコード群として、通知情報記憶部１６３に格納された業務条件定義テーブル１６３ｂのうちの項番“１”〜“３”のレコードが抽出されているとする。
【０１８０】
［ステップＳ７１］操作解析処理部１６７は、処理対象レコード群からチェック対象レコードを１つ選択する。操作解析処理部１６７は、チェック対象レコードに含まれる仮想業務コードや仮想キーコードのコードセットに対応する業務コードやキーコードを履歴情報記憶部１６１から検出できるか否かを以降の処理によりチェックする。なお、以下の処理手順は検索テーブルの検索順序の設定内容に準ずる。すなわち、選択対象（アクティブウィンドウ）、前取引、並行取引のウィンドウの順にチェックを行う。
【０１８１】
［ステップＳ７２］操作解析処理部１６７は、チェック対象レコードに選択対象仮想キーコードが定義されているか否かを判定する。定義されている場合、処理をステップＳ７３に進める。定義されていない場合、処理をステップＳ７７に進める。
【０１８２】
［ステップＳ７３］操作解析処理部１６７は、チェック対象レコードを参照して選択対象仮想キーコードを取得する。例えば、ステップＳ７１において業務条件定義テーブル１６３ｂのうちの項番“１”のレコードをチェック対象レコードとして選択している場合、選択対象仮想キーコードは“ＶＫ＿ＩＮＰＵＴ０１”である。
【０１８３】
［ステップＳ７４］操作解析処理部１６７は、変換情報記憶部１６２に格納された仮想キーコード変換テーブル１６２ｂを参照して、ステップＳ７３で取得した選択対象仮想キーコードに対応するキーコードを取得する。仮想キーコード変換テーブル１６２ｂの例では、仮想キーコード“ＶＫ＿ＩＮＰＵＴ０１”に対してキーコード“１”を取得する。
【０１８４】
［ステップＳ７５］操作解析処理部１６７は、履歴情報記憶部１６１に格納されたキー操作履歴テーブル１６１ｂに含まれる選択対象のウィンドウのキー操作履歴からステップＳ７４で取得したキーコードを検索する。ここで、操作解析処理部１６７は、選択対象のウィンドウのキー操作履歴を履歴情報記憶部１６１に格納された検索テーブルを参照して特定する。その具体的な方法は、図１４のステップＳ３５で説明した通りである。
【０１８５】
［ステップＳ７６］操作解析処理部１６７は、ステップＳ７５の検索の結果、ヒットするキー操作履歴のレコードが存在するか否かを判定する。存在する場合、処理をステップＳ７７に進める。存在しない場合、処理をステップＳ８９に進める。
【０１８６】
［ステップＳ７７］操作解析処理部１６７は、チェック対象レコードに前取引仮想キーコードが定義されているか否かを判定する。定義されている場合、処理をステップＳ７８に進める。定義されていない場合、処理をステップＳ８２に進める。
【０１８７】
［ステップＳ７８］操作解析処理部１６７は、チェック対象レコードを参照して前取引仮想キーコードを取得する。例えば、ステップＳ７１において業務条件定義テーブル１６３ｂのうちの項番“１”のレコードをチェック対象レコードとして選択している場合、前取引仮想キーコードは“ＶＫ＿ＩＮＰＵＴ１１”である。
【０１８８】
［ステップＳ７９］操作解析処理部１６７は、仮想キーコード変換テーブル１６２ｂを参照して、ステップＳ３８で取得した仮想キーコードに対応するキーコードを取得する。仮想キーコード変換テーブル１６２ｂの例では、仮想キーコード“ＶＫ＿ＩＮＰＵＴ１１”に対してキーコード“５１”を取得する。
【０１８９】
［ステップＳ８０］操作解析処理部１６７は、キー操作履歴テーブル１６１ｂに含まれる前取引のウィンドウのキー操作履歴からステップＳ７９で取得したキーコードを検索する。ここで、操作解析処理部１６７は、前取引のウィンドウのキー操作履歴を検索テーブルを参照して特定する。その具体的な方法は、図１４のステップＳ４０で説明した通りである。
【０１９０】
［ステップＳ８１］操作解析処理部１６７は、ステップＳ８０の検索の結果、ヒットするキー操作履歴のレコードが存在するか否かを判定する。存在する場合、処理をステップＳ８２に進める。存在しない場合、処理をステップＳ８９に進める。
【０１９１】
［ステップＳ８２］操作解析処理部１６７は、チェック対象レコードに並行取引仮想キーコードが定義されているか否かを判定する。定義されている場合、処理をステップＳ８３に進める。定義されていない場合、処理をステップＳ８７に進める。
【０１９２】
［ステップＳ８３］操作解析処理部１６７は、チェック対象レコードを参照して並行取引仮想キーコードを取得する。例えば、ステップＳ７１において業務条件定義テーブル１６３ｂのうちの項番“２”のレコードをチェック対象レコードとして選択している場合、並行取引仮想キーコードは“ＶＫ＿ＩＮＰＵＴ２１”である。
【０１９３】
［ステップＳ８４］操作解析処理部１６７は、仮想キーコード変換テーブル１６２ｂを参照して、ステップＳ８３で取得した仮想キーコードに対応するキーコードを取得する。仮想キーコード変換テーブル１６２ｂの例では、仮想キーコード“ＶＫ＿ＩＮＰＵＴ２１”に対してキーコード“１０１”を取得する。
【０１９４】
［ステップＳ８５］操作解析処理部１６７は、キー操作履歴テーブル１６１ｂに含まれる並行取引のウィンドウのキー操作履歴からステップＳ８４で取得したキーコードを検索する。ここで、操作解析処理部１６７は、並行取引のウィンドウのキー操作履歴を検索テーブルを参照して特定する。その具体的な方法は、図１５のステップＳ４５で説明した通りである。
【０１９５】
［ステップＳ８６］操作解析処理部１６７は、ステップＳ８５の検索の結果、ヒットするキー操作履歴のレコードが存在するか否かを判定する。存在する場合、処理をステップＳ８７に進める。存在しない場合、処理をステップＳ８９に進める。
【０１９６】
［ステップＳ８７］操作解析処理部１６７は、ステップＳ７１で選択したチェック対象レコードに設定されたメッセージを抽出する。
［ステップＳ８８］操作解析処理部１６７は、抽出したメッセージに時間を付与して保持する。ここで、操作解析処理部１６７は、当該メッセージに付与する時間として、キー操作履歴のうち上記ステップＳ７２〜ステップＳ８６中、最後に検索したレコードに設定された時間を取得する。例えば、前取引のキー操作履歴での検索が最後だった場合（すなわち、ステップＳ７２〜ステップＳ８２を実行後、ステップＳ８７に進んだ場合）、前取引のキー操作履歴でヒットしたレコードに設定された時間を取得する。同様に、例えば並行取引のキー操作履歴での検索が最後だった場合（すなわち、ステップＳ７２〜ステップＳ８６を経てステップＳ８７に進んだ場合）、並行取引のキー操作履歴でヒットしたレコードに設定された時間を取得する。
【０１９７】
［ステップＳ８９］操作解析処理部１６７は、現在選択中のチェック対象レコードを処理済とする。そして、操作解析処理部１６７は、処理対象レコード群に含まれるレコードの全てが処理済であるか否かを判定する。全て処理済の場合、処理をステップＳ９０に進める。未処理のレコードが存在する場合、処理をステップＳ７１に進める。
【０１９８】
［ステップＳ９０］操作解析処理部１６７は、ステップＳ８８において保持したメッセージを付与された時間の情報とともに抽出する。
このようにして、操作解析処理部１６７は、処理対象レコード群に含まれる各チェック対象レコードにつきキー操作履歴テーブル１６１ｂとの照会を行う。そして、照会の結果に基づいて、チェック対象レコードに含まれるメッセージを順次取得して保持する。更に、全てのチェック対象レコードにつき照会を終えると、保持したメッセージを抽出して、メッセージ出力部１６８に出力する。
【０１９９】
メッセージ出力部１６８は、操作解析処理部１６７から取得したメッセージ群を時系列に並べてモニタ１１に表示させる。
図２４は、第４の実施の形態のメッセージ出力の具体例を示す図である。図２４（Ａ）は、ウィンドウ３１０において、オペレータが出金取引の操作中である状態を示している。このとき、ウィンドウ３２０，３３０はウィンドウ３１０の背後に隠れており、アクティブ状態に切り替えない限りウィンドウ３２０，３３０の内容を閲覧できない状態となっている。
【０２００】
図２４（Ｂ）は、図２４（Ａ）の状態において、事象キー１２ａが押下された場合を例示している。端末装置１００は、事象キー１２ａの押下を受け付けると、ウィンドウ３１０の業務コードから選択対象仮想業務コードを取得し、ウィンドウ３１０で最後に入力されたキーコードから最終仮想キーコードを取得する。そして、端末装置１００は業務条件定義テーブル１６３ｂを参照して、取得した選択対象仮想業務コードおよび最終仮想キーコードによりチェック対象とするレコードの絞込を行う。更に、絞り込んだ各レコードのコードセットに含まれる仮想業務コード、仮想キーコードに対応する業務コード、キーコードの、ウィンドウ履歴テーブル１６１ａおよびキー操作履歴テーブル１６１ｂからの検出を順次試みる。
【０２０１】
図２４（Ｂ）では、操作履歴を示すメッセージを含むウィンドウ３４０ｂがモニタ１１に表示されている。このように、端末装置１００はアクティブウィンドウを表示しながら前取引や並行取引での操作に応じた履歴を表示させる。また、第２，第３の実施の形態と同様、ウィンドウ３４０ｂには端末装置１００にガイダンス解除の要求を入力するためのボタン３４１が表示されている。
【０２０２】
これにより、図１６で説明した第２の実施の形態の効果と同様の効果を奏することができる。
更に、オペレータはウィンドウ３４０ｂに表示された履歴を参照して、自身の操作を一括して把握できるので、以降に行う操作の可否等を、それまでの操作を踏まえて容易に判断することができる。また、アクティブなウィンドウの切替操作を行うことなく各ウィンドウの状態を把握でき、当該切替操作を行う煩わしさを軽減できる。その結果、業務操作を効率的に行えるようになる。
【０２０３】
なお、第４の実施の形態で説明した機能は、第２，第３の実施の形態で説明した機能と併存させることができる。例えば、通知情報記憶部１６３に業務条件定義テーブル１６３ａ，１６３ｂを予め格納しておく。そして、操作解析処理部１６７は、受け付けた事象キーに応じて表示内容を変更するよう制御してもよい。その場合、例えばキーボード１２には、第２，第３の実施の形態で説明した事象キー１２ａ，１２ｂ，１２ｃに加えて、履歴表示用の事象キーを更に設けてもよい。
【０２０４】
以上、本発明の通知プログラム、情報処理装置および通知方法を図示の実施の形態に基づいて説明したが、これらに限定されるものではなく、各部の構成は同様の機能を有する任意の構成のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。更に、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【符号の説明】
【０２０５】
１  情報処理装置
１ａ  変換情報記憶手段
１ｂ  通知情報記憶手段
１ｃ  履歴情報記憶手段
１ｄ  解析手段
１ｅ  出力手段
２  通知情報
３  履歴情報
４  情報群
【図１】
2012073869.tif 000003
【図２】
2012073869.tif 000004
【図３】
2012073869.tif 000005
【図４】
2012073869.tif 000006
【図５】
2012073869.tif 000007
【図６】
2012073869.tif 000008
【図７】
2012073869.tif 000009
【図８】
2012073869.tif 000010
【図９】
2012073869.tif 000011
【図１０】
2012073869.tif 000012
【図１１】
2012073869.tif 000013
【図１２】
2012073869.tif 000014
【図１３】
2012073869.tif 000015
【図１４】
2012073869.tif 000016
【図１５】
2012073869.tif 000017
【図１６】
2012073869.tif 000018
【図１７】
2012073869.tif 000019
【図１８】
2012073869.tif 000020
【図１９】
2012073869.tif 000021
【図２０】
2012073869.tif 000022
【図２１】
2012073869.tif 000023
【図２２】
2012073869.tif 000024
【図２３】
2012073869.tif 000025
【図２４】
2012073869.tif 000026