(57)【特許請求の範囲】
【請求項１】
メッセージキューにキューイングされる処理要求を順次取り出して処理を行う階層化されたプログラムを使って、データ処理を実行するデータ処理方法において、
所定の処理の実行契機に到達したのか否かを判断する過程と、
上記実行契機への到達を判断した場合に、上記メッセージキューを階層の上位に位置するプログラムのものから段階的に閉塞する過程と、
上記閉塞が完了した場合に、上記所定の処理を実行する過程と、
上記所定の処理が完了した場合に、上記メッセージキューの閉塞を階層の下位に位置するプログラムのものから段階的に解除する過程とを備えることを、
特徴とするデータ処理方法。
【請求項２】
請求項１に記載されるデータ処理方法において、
上記判断する過程では、日付変更の時刻に到達したのか否かを判断することで、上記所定の処理の実行契機に到達したのか否かを判断し、
上記実行する過程では、上記所定の処理として、日付データの更新を実行することを、
特徴とするデータ処理方法。
【請求項３】
請求項１に記載されるデータ処理方法において、
上記判断する過程では、日付変更の時刻に到達したのか否かを判断することで、上記所定の処理の実行契機に到達したのか否かを判断し、
上記実行する過程では、上記所定の処理として、ログファイルの切り替えを実行することを、
特徴とするデータ処理方法。
【請求項４】
請求項１ないし３のいずれか１項に記載されるデータ処理方法において、
上記閉塞する過程では、分散システムを構成する他の装置に対して、該装置の持つ上記メッセージキューの閉塞を指示し、
上記実行する過程では、上記装置で実行される上記メッセージキューの閉塞が完了することを条件にして、上記所定の処理を実行するとともに、上記装置に対して、上記所定の処理の実行を指示し、
上記解除する過程では、上記装置で実行される上記所定の処理が完了することを条件にして、上記メッセージキューの閉塞を解除するとともに、上記装置に対して、上記装置の持つ上記メッセージキューの閉塞解除を指示することを、
特徴とするデータ処理方法。
【請求項５】
メッセージキューにキューイングされる処理要求を順次取り出して処理を行う階層化されたプログラムを使って、データ処理を実行するデータ処理方法の実現に用いられるデータ処理用プログラムであって、
所定の処理の実行契機に到達したのか否かを判断する処理と、
上記実行契機への到達を判断した場合に、上記メッセージキューを階層の上位に位置するプログラムのものから段階的に閉塞する処理と、
上記閉塞が完了した場合に、上記所定の処理を実行する処理と、
上記所定の処理が完了した場合に、上記メッセージキューの閉塞を階層の下位に位置するプログラムのものから段階的に解除する処理とをコンピュータに実行させるためのデータ処理用プログラム。
【請求項６】
メッセージキューにキューイングされる処理要求を順次取り出して処理を行う階層化されたプログラムを使って、データ処理を実行するデータ処理方法の実現に用いられるプログラムを記録したデータ処理用プログラムの記録媒体であって、
所定の処理の実行契機に到達したのか否かを判断する処理と、
上記実行契機への到達を判断した場合に、上記メッセージキューを階層の上位に位置するプログラムのものから段階的に閉塞する処理と、
上記閉塞が完了した場合に、上記所定の処理を実行する処理と、
上記所定の処理が完了した場合に、上記メッセージキューの閉塞を階層の下位に位置するプログラムのものから段階的に解除する処理とをコンピュータに実行させるためのプログラムを記録したデータ処理用プログラムの記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メッセージキューにキューイングされる処理要求を順次取り出して処理を行うプログラムを使ってデータ処理を実行するデータ処理方法と、そのデータ処理方法の実現に用いられるデータ処理用プログラムと、そのプログラムを記録したデータ処理用プログラムの記録媒体とに関する。
【０００２】
オンライン業務の２４時間連続運転を実行する場合には、マシン日付を跨がってトランザクション処理を実行することが起こる。このような場合、業務処理で行う営業日付の更新を各トランザクション間で整合性をとりつつ実行できるようにする技術を構築していく必要がある。
【０００３】
【従来の技術】
従来のシステムでは、１日のシステム運用の中で、オンライン業務処理の時間帯とバッチ業務処理の時間帯とを区別して業務を行うようにしており、さらに、マシン日付を跨がって連続運転を行うというようなことはしていなかった。
【０００４】
したがって、オンライン業務プログラムで扱う営業日付は、ホストのマシン日付をトランザクション処理ごとに取得することで足りていた。
【０００５】
しかしながら、昨今の各企業では、業務取引件数の増加やオンラインサービスの時間延長に伴って、日付を跨がってオンライン業務を連続運転させるケースが増えてきた。この結果、１日のオンライン業務の取引の集計を行う場合、事前に集計対象となる営業日付をキーとして、取引ログの抽出を行うことが不可欠となってきた。
【０００６】
【発明が解決しようとする課題】
上述したように、従来技術では、オンライン業務の２４時間連続運転を行う場合、ホストのマシン日付に従って、各トランザクション処理の営業日付を取得するようにしていた。
【０００７】
これから、マシン日付が切り替わる際に、以下に示すような問題が発生していた。
【０００８】
すなわち、図１３に示すトランザクション処理を例にとると、トランザクションＡが取得した営業日付は２５日であるが、そのトランザクションの完結は２６日の日付となる。一方、営業日付が２６日となるトランザクションＢは、トランザクションＡよりも先にトランザクションが完結する。
【０００９】
このため、ログファイル上では、２６日付けのトランザクションＢのログデータの次に、２５日付けのトランザクションＡのログデータが格納されてしまうことになる。
【００１０】
このようなことが起こることから、当日のオンライン業務取引の集計を行うにあたり、事前に処理対象となる営業日付を持つログデータの抽出作業が必要となり、バッチ業務の運用効率が低下するという問題が発生する。
【００１１】
また、タイマスケジューラがマシン日付の変更を契機にしてログファイルの切り替えを行う２４時間連続運転システムでは、図１４の例で示すように、トランザクションＡの取得した営業日付が２５日であり、かつ、そのトランザクションの完了が翌日の２６日になる場合、トランザクションＡのログデータは本来であるならば２５日用のログファイルに格納されなければならないところ、２６日用のログファイルに格納されてしまうことになる。
【００１２】
このようなことが起こることから、２５日用のログファイルを入力として当日のオンライン業務取引の集計を行う処理では、処理対象のログデータに漏れが発生するという問題が発生する。
【００１３】
また、ロードシェア型の分散システムでは、各ホスト間でマシン日付および時刻の同期合わせに誤差が生ずると、各ホスト上のトランザクション間において時系列の取引シーケンスが保たれないケースが発生することから、２４時間連続運転を実現できない要因となっている。
【００１４】
すなわち、図１５に示すように、分散システム下のホスト間で時刻の誤差がある場合に、トランザクションＡの処理をホスト＃２で実行するとその営業日付は２６日となり、その後で、トランザクションＢの処理をホスト＃１で実行するとその営業日付は２５日になるというように、端末から依頼した業務処理の日付シーケンスに不整合が発生するという問題がある。
【００１５】
本発明はかかる事情に鑑みてなされたものであって、オンライン業務処理で行う営業日付の更新などの処理を各トランザクション間及び各ホスト間で整合性をとりつつ実行できるようにする新たなデータ処理技術の提供を目的とする。
【００１６】
【課題を解決するための手段】
図１に本発明の概要構成を図示する。
【００１７】
図中、１-i（ｉ＝1,２）は本発明を具備するホストであって、２４時間連続運転のオンライン業務処理を実行するもの、２は通信パスであって、ホスト１-1とホスト１-2との間を接続するもの、３-i（ｉ＝1,２）はホスト１-iの備える端末であって、ホスト１-iに対してオンライン業務処理の処理要求を発行するもの、４はホスト１-iで共用される外部記憶装置であって、当日の営業日付を管理する営業日付テーブル４０と、オンライン業務処理のトランザクションログを格納するログファイル４１とを備えるものである。
【００１８】
本発明を具備するホスト１-iは、２４時間連続運転のオンライン業務処理を実行する１つ又は複数の業務アプリ１０と、業務アプリ１０に対応付けて設けられて、処理要求メッセージをキューイングするメッセージキュー１１と、どのようなメッセージキュー１１が用意されていて、その内のどれが閉塞状態にあるのかという情報（メッセージキュー１１が業務アプリ１０に合わせて階層化されている場合は、各メッセージキュー１１がどの階層に属するのかという情報も加わる）を管理するメッセージキュー管理テーブル１２と、メッセージキュー１１の閉塞・閉塞解除を制御するメッセージキュー制御部１３と、ログデータの格納先となるログファイル４１の切り替えを制御するログファイル制御部１４と、主記憶装置に展開されて、当日の営業日付を管理する営業日付テーブル１５と、営業日付の切替処理などの所定の処理を実行する自動化制御部１６と、自動化制御部１６により実行される所定の処理の実行契機に到達したのか否かを判断する判断部１７とを備える。
【００１９】
この自動化制御部１６は、メッセージキュー制御部１３に対して、メッセージキュー１１の閉塞依頼を発行することでメッセージキュー１１を閉塞する閉塞手段１６０と、営業日付の切替制御などの所定の処理を実行する実行手段１６１と、メッセージキュー制御部１３に対して、メッセージキュー１１の閉塞解除依頼を発行することでメッセージキュー１１の閉塞を解除する解除手段１６２と、他のホスト１-iとの間の連携処理を実行する連携手段１６３とを備える。
【００２０】
このように構成される本発明では、判断部１７は、例えば、日付変更の時刻に到達したことを判断することなどにより、自動化制御部１６により実行される所定の処理の実行契機に到達したことを判断すると、自動化制御部１６を起動する。
【００２１】
このようにして起動されると、自動化制御部１６の閉塞手段１６０は、メッセージキュー管理テーブル１２を参照することで、閉塞状態にないメッセージキュー１１を特定し、メッセージキュー制御部１３に対して、その特定したメッセージキュー１１の閉塞依頼を発行する。
【００２２】
この閉塞依頼を受け取ると、メッセージキュー制御部１３は、図２（図中に示す▲１▼〜▲５▼は処理の順番を示す）に示すように、指定されたメッセージキュー１１を閉塞し、その指定されたメッセージキュー１１に新たにキューイングされる処理要求を保留状態に設定しつつ、その指定されたメッセージキュー１１にキューイングされている処理要求（仕掛かり中の処理要求）の処理が完了するときに、自動化制御部１６に対して、その指定されたメッセージキュー１１の閉塞が完了した旨を応答する。
【００２３】
このとき、閉塞手段１６０は、上位の業務アプリ１０が下位の業務アプリ１０を呼び出す形で業務アプリ１０が階層化されている場合には、図３に示すように、上位の階層のメッセージキュー１１から下位の階層のメッセージキュー１１へと段階的にメッセージキュー１１の閉塞依頼を発行することで、メッセージキュー１１を閉塞する処理を行う。
【００２４】
これは、全ての業務アプリ１０のメッセージキュー１１を一度に閉塞すると、閉塞のタイミングずれにより、仕掛かり中の上位の業務アプリ１０が連携先の下位の業務アプリ１０に対して処理要求を発行するときに、その連携先のメッセージキュー１１が閉塞状態に陥っていることで、その処理要求を受け付けてもらえなくなることが起こるからである。
【００２５】
自動化制御部１６の実行手段１６１は、全てのメッセージキュー１１の閉塞が完了すると、例えば、判断部１７の処理に従って日付変更の時刻の到達に応答して起動される場合には、図４に示すように、マシン日付やユーザの指定する日付に従って、主記憶装置に展開される営業日付テーブル１５や外部記憶装置４に展開される営業日付テーブル４０の管理する営業日付を更新するとともに、ログファイル制御部１４に対して切替依頼を発行することで、ログデータの格納先となるログファイル４１を切り替える。
【００２６】
そして、自動化制御部１６の解除手段１６２は、実行手段１６１の処理が完了すると、メッセージキュー制御部１３に対して、閉塞されているメッセージキュー１１を指定して、メッセージキュー１１の閉塞解除依頼を発行する。
【００２７】
この閉塞解除依頼を受け取ると、メッセージキュー制御部１３は、指定されたメッセージキュー１１の閉塞を解除して、自動化制御部１６に対して、その指定されたメッセージキュー１１の閉塞解除を完了した旨を応答する。
【００２８】
このとき、解除手段１６２は、上位の業務アプリ１０が下位の業務アプリ１０を呼び出す形で業務アプリ１０が階層化されている場合には、図３に示すように、下位の階層のメッセージキュー１１から上位の階層のメッセージキュー１１へと段階的にメッセージキュー１１の閉塞解除依頼を発行することで、メッセージキュー１１の閉塞を解除する処理を行う。
【００２９】
これは、全ての業務アプリ１０のメッセージキュー１１の閉塞を一度に解除すると、閉塞解除のタイミングずれにより、上位の業務アプリ１０が連携先の下位の業務アプリ１０に対して処理要求を発行するときに、その連携先のメッセージキュー１１が閉塞状態に陥っていることで、その処理要求を受け付けてもらえなくなることが起こるからである。
【００３０】
この構成を採るときに、自動化制御部１６の連携手段１６３は、自ホスト１-iの持つ閉塞手段１６０が発行する閉塞依頼に応答して、他のホスト１-iに対して、その他のホスト１-iの持つメッセージキュー１１の閉塞指示を送信して、その閉塞の完了応答を受信し、この受信により実行される自ホスト１-iの持つ実行手段１６１が実行する所定の処理に応答して、その他のホスト１-iに対して、その所定の処理の実行指示を送信して、その実行の完了応答を受信し、この受信により実行される自ホスト１-iの持つ解除手段１６２が発行する閉塞解除依頼に応答して、その他のホスト１-iに対して、その他のホスト１-iの持つメッセージキュー１１の閉塞解除指示を送信することで、分散システムを構成するホスト１-i間で同期のとれた営業日付切り替えなどの所定の処理を実行する。
【００３１】
このようにして、本発明では、メッセージキュー１１にキューイングされる処理要求を順次取り出して処理を行う業務アプリ１０を使ってデータ処理を実行するという構成を採るときにあって、営業日付変更などの所定の処理の実行契機に到達すると、メッセージキュー１１を閉塞してから、その所定の処理を行って、そのメッセージキュー１１の閉塞を解除するように処理することから、業務処理で行う営業日付の更新などの処理を各トランザクション間で整合性をとりつつ実行できるようになる。
【００３２】
そして、分散システムを構成するホスト間で、これらの処理を同期をとりつつ行うように処理することから、業務処理で行う営業日付の更新などの処理を各ホスト間で整合性をとりつつ実行できるようになる。
【００３３】
【発明の実施の形態】
以下、２４時間連続運転のオンライン銀行業務処理に適用した実施の形態に従って本発明を詳細に説明する。
【００３４】
図５に、本発明の一実施形態例を図示する。
【００３５】
図中、１-i（ｉ＝1,２）は本発明を具備するホストであって、２４時間連続運転のオンライン銀行業務処理を実行するもの、２は通信パスであって、ホスト１-1とホスト１-2との間を接続するもの、５はホスト１-i間で共有される口座データベースであって、ユーザの口座情報を管理するもの、６はホスト１-i間で共有される２５日用ログファイルであって、２５日に業務処理されたトランザクションログを格納するもの、７はホスト１-i間で共有される２６日用ログファイルであって、２６日に業務処理されたトランザクションログを格納するもの、８はユーザの操作するＡＴＭなどのような自動機端末、９はホスト１-iと自動機端末８との間を接続する通信制御装置である。
【００３６】
本発明を具備するホスト１-iは、第１階層（上位階層）の業務プログラムとして機能する預金プログラム１００と、第２階層（下位階層）の業務プログラムとして機能する融資プログラム１０１と、業務プログラム（この場合には、預金プログラム１００と融資プログラム１０１）に対応付けて設けられて、処理要求メッセージをキューイングするメッセージキュー１０２と、メッセージキュー１０２についての情報を管理するメッセージキュー管理テーブル１０３と、オペレーティングシステムに展開されて、メッセージキュー１０２の閉塞・閉塞解除を制御するメッセージキュー制御プログラム１０４と、オペレーティングシステムに展開されて、２５日用ログファイル６から２６日用ログファイル７への切り替えを制御するログファイル制御プログラム１０５と、主記憶装置に展開されて、当日の営業日付を管理する営業日付テーブル１０６と、営業日付の切替制御を実行する自動化制御プログラム１０７とを備える。
【００３７】
ここで、本発明を実現すべく用意されるメッセージキュー制御プログラム１０４とログファイル制御プログラム１０５と自動化制御プログラム１０７とは、計算機が読み取り可能な半導体メモリなどの適当な記録媒体に格納することができる。
【００３８】
このメッセージキュー管理テーブル１０３は、どの階層にどのようなメッセージキュー１０２が用意されていて、その内のどれが閉塞状態にあるのかという情報を管理する。ここで、閉塞状態にあるのか否かという情報については、メッセージキュー制御プログラム１０４が登録することになる。
【００３９】
すなわち、この実施形態例の場合には、メッセージキュー管理テーブル１０３は、図６に示すように、メッセージキュー１０２として、第１階層の預金プログラム１００が処理する処理要求メッセージをキューイングする第１階層のメッセージキュー１０２と、第２階層の融資プログラム１０１が処理する処理要求メッセージをキューイングする第２階層のメッセージキュー１０２という２つが用意されているという情報を管理するとともに、これらのメッセージキュー１０２がメッセージキュー制御プログラム１０４により閉塞状態に設定されているのか否かという情報を管理することになる。
【００４０】
預金プログラム１００は、第１階層の業務プログラムとして機能して預金業務処理を実行し、融資プログラム１０１は、第２階層の業務プログラムとして機能して融資業務処理を実行する。
【００４１】
この預金プログラム１００は、自動機端末８から例えば預金の引き下ろし取引が発生すると、図７に示すように、預金業務処理の開始に先立って営業日付を取得してから、口座データベース５を検索することで該当の口座に引き下ろし分の残高が存在するのか否かを判断して、残高が不足していることを判断する場合には、融資プログラム１０１に対して、不足金額に対する融資業務処理を指示する。
【００４２】
融資プログラム１０１は、この融資業務処理の指示を受け取ると、融資業務処理の開始に先立って営業日付を取得してから、融資業務処理を行い、その処理結果を取引ログとして当日の営業日のログファイルとなる２５日用ログファイル６に出力してから、預金プログラム１００に制御を戻す。
【００４３】
そして、預金プログラム１００は、融資プログラム１０１から制御が戻されると、該当の口座より出金処理を行い、その処理結果を取引ログとして当日の営業日のログファイルとなる２５日用ログファイル６に出力する。
【００４４】
このようにして、第１階層の業務プログラムとして機能する預金プログラム１００は、必要に応じて、第２階層の業務プログラムとして機能する融資プログラム１０１を呼び出していくことで、銀行業務処理を実行するように処理するのである。
【００４５】
この預金プログラム１００と融資プログラム１０１との間の連携処理についてさらに詳細に説明するならば、図８に示すように、自動機端末８の発行する処理要求が第１階層のメッセージキュー１０２にキューイングされ（図中の▲１▼）、これにより預金プログラム１００が処理を開始し、続いて、預金プログラム１００の発行する処理要求が第２階層のメッセージキュー１０２にキューイングされ（図中の▲３▼）、これにより融資プログラム１０１に処理が移り、続いて、融資プログラム１０１の発行する処理結果が第１階層のメッセージキュー１０２にキューイングされ（図中の▲５▼）、これにより預金プログラム１００に処理が戻されて、最終的な処理結果が自動機端末８に出力されることになる。
【００４６】
後述するように、自動化制御プログラム１０７は、メッセージキュー制御プログラム１０４に閉塞依頼を発行することで、メッセージキュー１０２を閉塞する処理を実行することになるが、このメッセージキュー１０２の閉塞にあたって、預金プログラム１００の持つ第１階層のメッセージキュー１０２から、融資プログラム１０１の持つ第２階層のメッセージキュー１０２へと、段階的にメッセージキュー１０２を閉塞する処理を行う。
【００４７】
これは、２つのメッセージキュー１０２を一度に閉塞すると、閉塞のタイミングずれにより、預金プログラム１００が自動機端末８からのメッセージを受け付けている状態のときに、融資プログラム１０１のメッセージキュー１０２が閉塞してしまうことが起こることで、取引不成立となってしまうという不都合が発生するからである。
【００４８】
また、後述するように、自動化制御プログラム１０７は、メッセージキュー制御プログラム１０４に閉塞解除依頼を発行することで、メッセージキュー１０２の閉塞を解除する処理を実行することになるが、このメッセージキュー１０２の閉塞解除にあたって、融資プログラム１０１の持つ第２階層のメッセージキュー１０２から、預金プログラム１００の持つ第１階層のメッセージキュー１０２へと、段階的にメッセージキュー１０２の閉塞を解除する処理を行う。
【００４９】
これは、２つのメッセージキュー１０２を一度に閉塞すると、閉塞解除のタイミングずれにより、預金プログラム１００が自動機端末８からのメッセージを受け付けたときに、融資プログラム１０１のメッセージキュー１０２の閉塞が解除されないことが起こることで、取引不成立となってしまうという不都合が発生するからである。
【００５０】
次に、図９に従って、銀行業務の自動機取引業務を２４時間連続運転にて運用するときに、自動化制御プログラム１０７が実行する営業日付の切替処理について詳細に説明する。
【００５１】
ホスト＃１の自動化制御プログラム１０７に対して、オペレータまたはタイマスケジューラより営業日付の切替依頼が発行されると、ホスト＃１の自動化制御プログラム１０７は、図９中の▲１▼に示すように、ホスト＃２の自動化制御プログラム１０７に対して、メッセージキュー１０２の閉塞通知を発行する。
【００５２】
続いて、ホスト＃１，＃２の自動化制御プログラム１０７は、メッセージキュー制御プログラム１０４に対して、預金プログラム１００及び融資プログラム１０１の持つメッセージキュー１０２の閉塞依頼を発行することで、図９中の▲２▼に示すように、預金プログラム１００及び融資プログラム１０１のメッセージキュー１０２を閉塞する。
【００５３】
続いて、ホスト＃１の自動化制御プログラム１０７は、図９中の▲３▼に示すように、ホスト＃１，＃２のメッセージキュー１０２の閉塞完了の待ち合わせを行い、その完了を確認すると、図９中の▲４▼に示すように、ホスト＃２の自動化制御プログラム１０７に対して、営業日付の切替通知を発行する。
【００５４】
続いて、ホスト＃１，＃２の自動化制御プログラム１０７は、図９中の▲５▼に示すように、マシン日付などに従って営業日付を切り替える処理を実行する。
【００５５】
続いて、ホスト＃１の自動化制御プログラム１０７は、図９中の▲６▼に示すように、ホスト＃１，＃２の営業日付の切替完了の待ち合わせを行い、その完了を確認すると、図９中の▲７▼に示すように、ホスト＃２の自動化制御プログラム１０７に対して、メッセージキュー１０２の閉塞解除通知を発行する。
【００５６】
続いて、ホスト＃１，＃２の自動化制御プログラム１０７は、メッセージキュー制御プログラム１０４に対して、預金プログラム１００及び融資プログラム１０１の持つメッセージキュー１０２の閉塞解除依頼を発行することで、図９中の▲８▼に示すように、預金プログラム１００及び融資プログラム１０１のメッセージキュー１０２の閉塞を解除する。
【００５７】
図１０に、図９中の▲２▼で実行するメッセージキュー１１の閉塞処理の詳細を図示し、図１１に、図９中の▲５▼で実行する営業日付の切替処理の詳細を図示し、図１２に、図９中の▲８▼で実行するメッセージキュー１１の閉塞解除処理の詳細を図示する。次に、これらの処理について説明する。
【００５８】
（１）ホスト＃１，＃２の自動化制御プログラム１０７は、図９中の▲２▼に示すメッセージキュー１１の閉塞処理に入ると、図１０に示すように、先ず最初に、メッセージキュー管理テーブル１０３を参照することで、第１階層のメッセージキュー１０２（具体的には、預金プログラム１００の持つメッセージキュー１０２）を抽出して、メッセージキュー制御プログラム１０４に対して、その抽出した第１階層のメッセージキュー１０２の閉塞依頼を発行（複数ある場合には順番に発行する）する。
【００５９】
続いて、第１階層のメッセージキュー１０２の閉塞完了の待ち合わせを行い、閉塞依頼した全てのメッセージキュー１０２の閉塞が完了したことを確認すると、メッセージキュー管理テーブル１０３を参照することで、第２階層のメッセージキュー１０２（具体的には、融資プログラム１０１の持つメッセージキュー１０２）を抽出して、メッセージキュー制御プログラム１０４に対して、その抽出した第２階層のメッセージキュー１０２の閉塞依頼を発行（複数ある場合には順番に発行する）する。
【００６０】
続いて、第２階層のメッセージキュー１０２の閉塞完了の待ち合わせを行い、閉塞依頼した全てのメッセージキュー１０２の閉塞が完了したことを確認すると、メッセージキュー１１の閉塞処理を終了する。
【００６１】
このようにして、ホスト＃１，＃２の自動化制御プログラム１０７は、図９中の▲２▼に示すメッセージキュー１１の閉塞処理を実行する。
【００６２】
（２）ホスト＃１，＃２の自動化制御プログラム１０７は、図９中の▲５▼に示す営業日付の切替処理に入ると、図１１に示すように、先ず最初に、営業日付の更新の要否を判断する。
【００６３】
営業日付テーブルを格納している資源が主記憶装置である場合には、各ホスト１-iごとに営業日付の更新が必要となる。一方、営業日付テーブルを格納している資源がホスト１-i間で共用する外部記憶装置である場合には、各ホスト１-iごとに営業日付の更新を行う必要はなく、ある１つのホスト１-i上の自動化制御プログラム１０７が営業日付の更新を行えばよい。
【００６４】
この実施形態例では、営業日付テーブル１０６を主記憶装置上に配置していることから、各ホスト１-i上の自動化制御プログラム１０７が営業日付の更新を行う必要がある。
【００６５】
これから、例えばマシン日付を取得して、それに従って、営業日付テーブル１０６に管理される営業日付を更新する。
【００６６】
続いて、ログファイルの切り替えの要否を判断する。各ホスト１-iがログファイルを固有の資源として保持している場合には、各ホスト１-iごとにログファイルの切り替えを行う。一方、ホスト１-i間でログファイルを共用している場合には、各ホスト１-iごとにログファイルの切り替えを行う必要はなく、ある１つのホスト１-i上の自動化制御プログラム１０７がログファイルの切り替えを行えばよい。
【００６７】
この実施形態例では、ホスト１-i間でログファイルを共用していることから、ある１つのホスト１-i上の自動化制御プログラム１０７がログファイルの切り替えを行うことになる。
【００６８】
これから、ログファイルの切り替えを担当する自動化制御プログラム１０７は、ログファイル制御プログラム１０５に対して、ログファイルの切替依頼を発行することでログファイルを切り替える。
【００６９】
このようにして、ホスト＃１，＃２の自動化制御プログラム１０７は、図９中の▲５▼に示す営業日付の切替処理を実行する。
【００７０】
（３）ホスト＃１，＃２の自動化制御プログラム１０７は、図９中の▲８▼に示すメッセージキュー１１の閉塞解除処理に入ると、図１２に示すように、先ず最初に、メッセージキュー管理テーブル１０３を参照することで、第２階層のメッセージキュー１０２（具体的には、融資プログラム１０１の持つメッセージキュー１０２）を抽出して、メッセージキュー制御プログラム１０４に対して、その抽出した第２階層のメッセージキュー１０２の閉塞解除依頼を発行（複数ある場合には順番に発行する）する。
【００７１】
続いて、第２階層のメッセージキュー１０２の閉塞解除完了の待ち合わせを行い、閉塞解除依頼した全てのメッセージキュー１０２の閉塞解除が完了したことを確認すると、メッセージキュー管理テーブル１０３を参照することで、第１階層のメッセージキュー１０２（具体的には、預金プログラム１００の持つメッセージキュー１０２）を抽出して、メッセージキュー制御プログラム１０４に対して、その抽出した第１階層のメッセージキュー１０２の閉塞解除依頼を発行（複数ある場合には順番に発行する）する。
【００７２】
続いて、第１階層のメッセージキュー１０２の閉塞解除完了の待ち合わせを行い、閉塞解除依頼した全てのメッセージキュー１０２の閉塞解除が完了したことを確認すると、メッセージキュー１０２の閉塞解除処理を終了する。
【００７３】
このようにして、ホスト＃１，＃２の自動化制御プログラム１０７は、図９中の▲８▼に示すメッセージキュー１１の閉塞解除処理を実行する。
【００７４】
図示実施形態例に従って本発明を説明したが、本発明はこれに限定されるものではない。例えば、実施形態例では、業務処理を行うプログラムが階層化されていることでメッセージキュー１０２が階層される場合を具体例にして本発明を説明したが、業務処理を行うプログラムが階層化されていない場合にも、本発明はそのまま適用できるものである。
【００７５】
【発明の効果】
以上説明したように、本発明では、メッセージキューにキューイングされる処理要求を順次取り出して処理を行うプログラムを使ってデータ処理を実行するという構成を採るときにあって、営業日付変更などの所定の処理の実行契機に到達すると、メッセージキューを閉塞してから、その所定の処理を行って、そのメッセージキューの閉塞を解除するように処理することから、業務処理で行う営業日付の更新などの処理を各トランザクション間で整合性をとりつつ実行できるようになる。
【００７６】
そして、分散システムを構成するホスト間で、これらの処理を同期をとりつつ行うように処理することから、業務処理で行う営業日付の更新などの処理を各ホスト間で整合性をとりつつ実行できるようになる。
【００７７】
更に具体的に説明するならば、本発明によれば、２４時間連続運転を行うオンライン業務において、各トランザクションで出力するログについて１日のログを抽出する場合に、タイムスタンプに依存することなく営業日付ごとのログの抽出が可能となり、これを入力とする日次処理などのバッチ業務の負荷を軽減することができるようになる。
【００７８】
また、本発明によれば、仕掛かり中の業務トランザクション（メッセージキューにキューイングされている業務トランザクション）を中断することなく営業日付の切り替えが可能となることから、オンライン業務プログラムを停止させる必要がなくなることで、オンライン業務の２４時間連続運転を実現することができるようになる。
【００７９】
また、本発明によれば、ロードシェアタイプの分散システムにおいては、各ホスト間で一元的に営業日付の切り替えを行うことが可能となることから、各ホスト間で営業日付の同期ずれを防止することができるようになる。
【００８０】
また、本発明によれば、２４時間連続運転システムにおける営業日付の切り替えの自動化を実現できることで、オペレータ介入などによる営業日付の切り替え時の人為的なミスを未然に防ぐことができるようになる。
【図面の簡単な説明】
【図１】本発明の概要構成図である。
【図２】本発明の説明図である。
【図３】本発明の説明図である。
【図４】本発明の説明図である。
【図５】本発明の一実施形態例である。
【図６】メッセージキュー管理テーブルの説明図である。
【図７】預金プログラムと融資プログラムの連携処理の説明図である。
【図８】預金プログラムと融資プログラムの連携処理の説明図である。
【図９】ホスト間の連携処理の説明図である。
【図１０】メッセージキューの閉塞処理の説明図である。
【図１１】営業日付の更新処理の説明図である。
【図１２】メッセージキューの閉塞解除処理の説明図である。
【図１３】従来技術の説明図である。
【図１４】従来技術の説明図である。
【図１５】従来技術の説明図である。
【符号の説明】
１      ホスト
２      通信パス
３      端末
４      外部記憶装置
１０    業務アプリ
１１    メッセージキュー
１２    メッセージキュー管理テーブル
１３    メッセージキュー制御部
１４    ログファイル制御部
１５    営業日付テーブル
１６    自動化制御部
１７    判断部
４０    営業日付テーブル
４１    ログファイル
１６０  閉塞手段
１６１  実行手段
１６２  解除手段
１６３  連携手段
【図１】
0004040846.tif 000002
【図２】
0004040846.tif 000003
【図３】
0004040846.tif 000004
【図４】
0004040846.tif 000005
【図５】
0004040846.tif 000006
【図６】
0004040846.tif 000007
【図７】
0004040846.tif 000008
【図８】
0004040846.tif 000009
【図９】
0004040846.tif 000010
【図１０】
0004040846.tif 000011
【図１１】
0004040846.tif 000012
【図１２】
0004040846.tif 000013
【図１３】
0004040846.tif 000014
【図１４】
0004040846.tif 000015
【図１５】
0004040846.tif 000016