(57)【特許請求の範囲】
【請求項１】
データベースサーバに記憶されているデータベースに格納されているデータを、通信ネットワークを介して受信するインターフェースと、
前記インターフェースにより受信されたデータを、ディスプレイ装置に表示されるウィンドウに表示し、前記データベースの操作を行うための第１のアプリケーションプログラムのために記憶するバッファと、
前記バッファに記憶されているデータを、時間間隔を置いて第２のアプリケーションプログラムにより変更可能な形式のファイルに格納することを、前記ウィンドウが前記ディスプレイ装置に表示されることをトリガーとして開始する制御部とを有する端末装置。
【請求項２】
前記第２のアプリケーションプログラムは、前記データベースサーバからデータが受信できないときに実行される請求項１に記載の端末装置。
【請求項３】
前記バッファは、前記データベースに格納されているデータの一部を記憶することを特徴とする請求項１に記載の端末装置。
【請求項４】
前記データベースに格納されているデータは、前記端末装置の操作者の識別番号と関連付けられ、
前記バッファは、前記データベースに格納されているデータの一部のうち、前記端末装置の操作者の識別番号と関連付けられているデータを記憶することを特徴とする請求項３に記載の端末装置。
【請求項５】
前記制御部は、前記ウィンドウがクローズされると、前記バッファに記憶されているデータを、時間間隔を置いて前記ファイルに格納することを停止することを特徴とする請求項１に記載の端末装置。
【請求項６】
前記制御部は、前記バッファに記憶されているデータを、時間間隔を置いて前記第２のアプリケーションプログラムにより変更可能な形式のファイルに格納する際に、前記バッファに記憶されるデータをロックし前記データの変更操作の排他制御を行なうことを特徴とする請求項１に記載の端末装置。
【請求項７】
前記制御部は、定期的に前記バッファに記憶されているデータを前記第２のアプリケーションプログラムにより変更可能な形式のファイルに格納することを特徴とする請求項１に記載の端末装置。
【請求項８】
前記データベースに格納されるデータは、外国為替の指し値注文を表し、
前記制御部は、前記外国為替のレートの変動の程度に応じて、前記バッファに記憶されているデータを前記第２のアプリケーションプログラムにより変更可能な形式のファイルに格納する時間間隔を調整することを特徴とする請求項１に記載の端末装置。
【請求項９】
コンピュータに、
通信ネットワークを介して接続されているデータベースサーバに記憶されているデータベースに格納されているデータを前記コンピュータの通信ネットワークを介して受信させ、
前記受信されたデータを、前記コンピュータに接続されているディスプレイ装置に表示されるウィンドウに表示し、前記データベースの操作を行うための第１のアプリケーションプログラムのためにバッファに記憶させ、
前記バッファに記憶されているデータを、時間間隔を置いて第２のアプリケーションプログラムにより変更可能な形式のファイルに格納することを前記ウィンドウが前記ディスプレイ装置に表示されることをトリガーとして開始させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースを操作するための端末装置およびプログラムなどに関する。特に、本発明はデータベースに格納されたデータを提供するサーバに障害が発生しても処理を続行することが可能な端末装置およびプログラムなどに関する。
【背景技術】
【０００２】
データベースを管理するサーバが、ネットワークを介して接続された端末装置に対して、そのデータベースに格納されたデータを提供し、端末装置において、データを操作してサーバのデータベースに格納されているデータを変更するシステムが広く使用されている。
【０００３】
このようなシステムを使用する場合には、サーバが障害などにより停止してしまうと端末での業務を停止せざるを得なくなる。そのため、通常時に使用するサーバとは別に、バックアップ用のサーバを設けて、障害などが発生した場合には、バックアップ用のサーバに切り替えることが行なわれている（例えば、特許文献１、２参照。）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−１８１７７０号公報
【特許文献２】特許第２７９０３７８号公報
【特許文献３】特開２００４−０３８４１９号公報
【特許文献４】特開平７−１４１３０８号公報
【特許文献５】特開平１１−０８５５９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来技術におけるようにバックアップ用のサーバを設けると、当然複数のサーバが必要となりハードウェアのコストが嵩み、また、バックアップを行なうためなどのソフトウェアのコストも嵩むという課題がある。さらに、通常時に使用しているサーバとバックアップ用のサーバとの間に常時通信が発生するなどし、通信などのメンテナンスのコストなども発生するという課題がある。
【課題を解決するための手段】
【０００６】
本発明の一実施形態として、データベースサーバに記憶されているデータベースに格納されているデータを、通信ネットワークを介して受信するインターフェースと、前記インターフェースにより受信されたデータを、ディスプレイ装置に表示されるウィンドウに表示するために記憶するバッファと、前記バッファに記憶されているデータを、時間間隔を置いてファイルに格納することを前記ウィンドウが前記ディスプレイ装置に表示されることをトリガーとして開始する制御部とを有する端末装置を提供する。
【０００７】
本発明の一実施形態として、コンピュータに、通信ネットワークを介して接続されているデータベースサーバに記憶されているデータベースに格納されているデータを前記コンピュータの通信ネットワークを介して受信させ、前記インターフェースにより受信されたデータを、前記コンピュータに接続されているディスプレイ装置に表示されるウィンドウに表示するためのバッファに記憶させ、前記バッファに記憶されているデータを、時間間隔を置いてファイルに格納することを前記ウィンドウが前記ディスプレイ装置に表示されることをトリガーとして開始させるためのコンピュータプログラムを提供する。
【発明の効果】
【０００８】
本発明の一実施形態によれば、サーバに障害が発生しても端末装置での処理を続行することができる。また、本発明の一実施形態によれば、従来技術におけるようにバックアップ用のサーバなどにコストをかける必要がなくなる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態に係るシステムの機能ブロック図
【図２】本発明の一実施形態に係る端末装置を実現する一例としての計算機の機能ブロック図
【図３】本発明の一実施形態に係るデータベースサーバの管理するテーブルの一例図
【図４】本発明の一実施形態に係る端末装置に表示されるウィンドウの一例図
【図５】本発明の一実施形態に係る端末装置に表示されるウィンドウの一例図
【図６】本発明の一実施形態に係る端末装置における処理のフローチャート
【図７】本発明の一実施形態に係る端末装置における処理のフローチャート
【図８】本発明の一実施形態に係る端末装置に格納されるファイルの一例図
【図９】本発明の一実施形態に係る端末装置における処理のフローチャート
【発明を実施するための形態】
【００１０】
以下に本発明の実施形態を説明する。なお、本発明は、以下に説明される実施形態に限定されることはない。本発明は、以下に説明される実施形態を種々変形して実施することができる。
【００１１】
図１は、本発明の一実施形態に係るシステムの機能ブロック図を示す。システム１００は、データベースサーバ１０１とデータベース端末１０２とを備え、データベースサーバ１０１とデータベース端末１０２とは通信ネットワーク１０３により接続されている。なお、図１においては、データベースサーバとデータベース端末とのそれぞれが一台ずつ示されている。本実施形態においては、システム１００は、複数のデータベースサーバと複数のデータベース端末とを備えていてもよい。また、データベースサーバ１０１以外のサーバ、データベース端末以外の端末装置がシステム１００に備えられていてもよい。
【００１２】
データベースサーバ１０１は、サーバの一種である。データベースサーバ１０１は、記憶部１０４を備えている。記憶部１０４は、ハードディスク、メモリなどを用いてデータベースを記憶する。データベースにはデータが格納される。図１においては、データベースに格納されるデータは、テーブル（表）の形式にテーブル１０５、１０６などに記憶される。したがって、図１は、関係データベースが用いられることにより、データが格納される場合を例示している。ただし、本実施形態は、関係データベースが用いられることに限定されることはない。例えば、ネットワーク型データベース、階層型データベースなど種々のデータモデルによるデータベースを用いることができる。
【００１３】
データベース端末１０２は、データベースサーバ１０１の記憶部１０４に記憶されるデータベースに格納されているデータを、通信ネットワーク１０３を介して受信し、データの表示および／または変更するための端末装置である。データベース端末は、入出力インターフェース１１０と、データ送受信インターフェース１０７と、制御部１０９と、一時記憶メモリ１０８と、エクスポート部１１１と、不揮発性メモリ１１２とを備える。
【００１４】
入出力インターフェース１１０は、データベース端末１０２の操作者に対して、データベースサーバ１０１の記憶部１０４に記憶されるデータベースに格納されているデータを表示および／または操作するためのインターフェースを提供する。例えば、入出力インターフェース１１０には、表示装置、キーボード、マウスなどが接続される。入出力インターフェース１１０は、表示装置に、データベースに格納されるデータを表示および／または操作するためのデータベース操作画面を表示し、キーボードにより入力された情報を読み取り、また、マウスによる操作を検出し、それを制御部１０９に伝達する。なお、データベース操作画面は、入出力インターフェース１１０に接続された表示装置のスクリーンに一対一に対応する必要はなく、マルチウィンドウ環境におけるウィンドウとして表示されてもよい。
【００１５】
データ送受信インターフェース１０７は、入出力インターフェース１１０を介して検出された操作などに応じて、データベースサーバ１０１と情報通信を行なう。すなわち、データベースサーバ１０１の記憶部１０４に記憶されているデータベースに格納されているデータの送信要求を、入出力インターフェース１１０を介した操作などに応じて、通信ネットワーク１０３を介してデータベースサーバ１０１に対して送信する。また、データ送受信インターフェース１０７は、データの送信要求に応じて返信されるデータを受信し一時記憶メモリ１０８に記憶する。
【００１６】
また、データ送受信インターフェース１０７は、一時記憶メモリ１０８に記憶されているデータを、入出力インターフェース１１０を介して検出された操作などに応じて、データベースサーバ１０１に送信し、データベースを更新するための更新要求を送信する。ここに、データベースの変更としては、データベースサーバ１０１の記憶部１０４に記憶されているデータベースに対する、データの挿入、データの更新、データの削除を挙げることができる。データの挿入により、データベーステーブルに対して新たな行が追加され、データの更新により、データベーステーブルに格納されている行の列に格納されている情報が変更され、データの削除により、データベーステーブルから行が削除される。また、データベースの変更には、データベーステーブルの生成、削除、変更、アクセス権の変更などの管理操作も含めることができる。
【００１７】
一時記憶メモリ１０８は、データ送受信インターフェース１０７により受信されたデータを記憶する。特に、一時記憶メモリ１０８は、データベース操作画面にデータを表示するためにデータを記憶するバッファを有する。したがって、データベースサーバ１０１の記憶部１０４に記憶されているデータベースに格納されているデータが、データベース操作画面に表示されるためには、データベースサーバ１０１より通信ネットワーク１０３を介してデータがデータ送受信インターフェース１０７により受信され、バッファに記憶される。バッファは、データベース操作画面に表示されるデータのみを記憶するのではなく、現在のデータベース操作画面に表示されていなくても、スクロールなどの操作によって新たに表示されることとなるデータを記憶してもよい。すなわち、スクロールなどの操作によって新たに表示されることとなるデータが前もって受信され（言い換えればデータの先読みがされ）、バッファに記憶されてもよい。これにより、スムーズなスクロールなどが実現される。
【００１８】
また、一時記憶メモリ１０８は、入出力インターフェース１１０に接続されたキーボードなどを用いてデータベース操作画面に入力された情報を記憶する。このように記憶された情報は、データベースサーバ１０１の記憶部１０４に記憶されているデータベースに格納されているデータを変更するために用いられる。例えば、データベース操作画面に入力された情報が、データベーステーブルに挿入されるデータとして一時記憶メモリ１０８に記憶される。また、データベース操作画面上で変更された情報が、更新するデータとして一時記憶メモリ１０８に記憶される。また、マウスなどによりデータベース操作画面でクリックなどがされたデータを特定する情報が、データベーステーブルより削除するデータを特定する情報として一時記憶メモリ１０８に記憶される。また、これらの情報は、上述したバッファに記憶されてもよい。
【００１９】
一時記憶メモリ１０８は、主に不揮発性のメモリにより構成される。ただし、仮想記憶が用いられる場合などには、ハードディスクなどの不揮発性の記憶装置の記憶領域により構成されてもよい。
【００２０】
不揮発性メモリ１１２は、データベース端末１０２の電源が切断されても、記憶データを保持することができるメモリである。例えば、ハードディスクドライブ、ソリッドステートドライブなどにより実現することができる。なお、ハードディスクドライブ、ソリッドステートドライブに対する入出力を効率化するために、不揮発性メモリ１１２の一部に、情報のキャッシュを行なうための揮発性メモリが使用されてもよい。
【００２１】
エクスポート部１１１は、一時記憶メモリ１０８に記憶されているデータを不揮発性メモリ１１２に転送して記憶する。エクスポート部１１１は、一時記憶メモリ１０８に記憶されている全てのデータを不揮発性メモリ１１２に転送して記憶する必要はない。例えば、バッファに記憶されているデータのみを不揮発性メモリ１１２に転送して記憶してもよい。
また、エクスポート部１１１が一時記憶メモリ１０８に記憶されているデータを不揮発性メモリ１１２に記憶する際には、バイナリ形式のデータではなく、テキストデータなどの汎用的な形式で記憶するのが好ましい。特に、データをカンマで区切り、一連のデータの終わりを改行により示すＣＳＶ（Ｃｏｍｍａ  Ｓｅｐａｒａｔｅｄ  Ｖａｌｕｅｓ）形式で記憶するのが好ましい。これにより、データベースサーバ１０１に障害が発生しても、揮発性メモリ１１２に記憶されたデータを、表計算アプリケーションなどの汎用的なアプリケーションを用いて操作することが可能となり、業務を継続することができる。
【００２２】
エクスポート部１１１は、後述するように、制御部１０９があらかじめ定められた条件が成立したと判断した場合に起動される。
【００２３】
制御部１０９は、データベース端末１０２の各部を制御する。例えば、入出力インターフェース１１０を介してデータベース端末１０２の操作者による操作を検出し、それに応じた制御を行なう。特に、データベースサーバ１０１の記憶部１０４に記憶されているデータベースに格納されているデータが必要であると判断された場合には、データ送受信インターフェース１０７を制御し、データの送信要求をデータベースサーバ１０１に対して送信し、送信要求に対して返信されるデータを一時記憶メモリ１０８に記憶する。データベースサーバ１０１の記憶部１０４に記憶されているデータベースに格納されているデータが必要であると判断される場合の一例としては、データベース端末１０２の操作者により、データの検索の操作が行なわれる場合がある。
【００２４】
また、制御部１０９は、バッファに記憶されたデータを入出力インターフェース１１０に接続されている表示装置のデータベース操作画面内に表示する。また、入出力インターフェース１１０により、表示装置のウィンドウ内などに表示されているデータの操作が検出されると、一時記憶メモリ１０８に記憶されているデータを変更し、データの変更要求をデータ送受信インターフェース１０７を制御して送信する。
【００２５】
また、制御部１０９は、あらかじめ定められた条件が成立したと判断すると、エクスポート部１１１を起動する。あらかじめ定められた条件としては、（１）入出力インターフェース１１０により検出される操作に関する条件、（２）一時記憶メモリ１０８に記憶されるデータに関する所定の条件が成立すること、（３）時間の経過に関する条件、などを挙げることができる。より具体的には、マウスなどにより、データベース操作画面を表示装置に表示するための操作が行なわれたことが入出力インターフェース１１０により検出されたことを条件とすることができる。またさらに、データベース操作画面が表示装置に表示され、データベースサーバ１０１の記憶部１０４に記憶されているデータベースに格納されているデータの送信要求に応じて返信されるデータが一時記憶メモリ１０８のバッファに記憶されたことを条件とすることができる。また、データベース操作画面が表示装置に表示されてから所定の時間、例えば５分、が経過することを条件とすることができる。また、所定の時間経過した時点からさらに所定の時間が経過することを条件とすることができる。
【００２６】
このようなデータベース端末１０２は、図２に機能ブロック図を示す計算機により実現することも可能である。図２を参照すると、計算機２００は、ネットワークインターフェース２０７と、ＲＡＭ２０８と、ＣＰＵ２０９と、ＨＤＤ２１２と、Ｉ／Ｏインターフェース２１０とを備えている。ネットワークインターフェース２０７は、データ送受信インターフェース１０７に対応し、通信ネットワーク１０３を介したデータの送受信を行なうためのハードウェアである。ＲＡＭ２０８は、一時記憶メモリ１０８に対応し、データを一時的に記憶する。ＣＰＵ２０９は、プログラムを実行することにより、ネットワークインターフェース２０７、ＲＡＭ２０８、ＨＤＤ２１２およびＩ／Ｏインターフェース２１０を制御し、制御部１０９とエクスポート部１１１とに対応する。ＨＤＤ２１２は、ハードディスクドライブなどにより実現されるハードウェアであり、不揮発性メモリ１１２に対応する。Ｉ／Ｏインターフェース２１０は、入出力インターフェース１１０に対応し、マウス、キーボード、表示装置を制御するハードウェアである。なお、ＨＤＤ２１２は、ソリッドステートドライブ、光ディスクドライブなどによっても実現が可能である。
【００２７】
図３、図４および図５を用いて、本実施形態に係るシステムが、銀行業務における外国為替取引に用いられる場合の一例を説明する。
【００２８】
図３は、データベースサーバ１０１の記憶部１０４に記憶されるデータベースに格納されるデータの一例を示す。図３（ａ）は、指し値による通貨の買い注文のデータを格納するテーブルの一例である。このテーブルは、「注文ＩＤ」、「通貨１」、「通貨２」、「金額」、「レート」、「担当ＩＤ」の列を有し、それぞれの列には、注文を識別する情報、買いの対象である通貨の単位、通貨１の買いの決済のための通貨の単位、買いの対象とである通貨の量、指し値、注文を処理する担当者の識別情報が格納される。例えば、注文ＩＤの列に０１０が格納されている行には、日本円（ＪＰＹ）を決済に用い、米国ドル（ＵＳＤ）について１米国ドルあたり１００．００円の指し値で０．９単位の買い注文を表し、この買い注文は、Ｕ３４５という識別情報の担当者により処理されることを示すデータが格納されている。
【００２９】
図３（ｂ）は、注文を行なった顧客に関する情報を格納するテーブルの一例である。このテーブルは、「注文ＩＤ」、「顧客ＩＤ」、「口座ＩＤ」の列を有し、それぞれの列には、注文を識別する情報、注文を行なった顧客の識別情報、決済を行なう口座の識別情報が格納される。例えば、０１０により識別される注文は、Ｃ０１２３の識別情報を有する顧客によりされ、決済の口座がＡＢ１２３４５６の識別情報を有する口座であることが示される。また、Ｃ０１２３の識別情報を有する顧客は、０３５により識別される注文を行なったことも示されている。
【００３０】
図４、図５は、データベース端末１０２の入出力インターフェース１１０に接続された表示装置によるウィンドウ表示の例を示す。
【００３１】
図４（ａ）は、注文を処理する担当者がデータベース端末１０２にログインを行なった後に表示されるウィンドウの一例を示す。この例は、アプリケーションのランチャーウィンドウを示し、「ＯＲＤＥＲ  ＣＨＥＣＫＥＲ」、「ＯＲＤＥＲ  ＴＲＡＮＳＦＥＲ」、「ＳＥＴＴＩＮＧＳ」に対応する３種類のアプリケーションが起動可能となっている。「ＯＲＤＥＲ  ＣＨＥＣＫＥＲ」は、例えば、通貨の指し値注文を処理するためのアプリケーションに対応し、「ＯＲＤＥＲ  ＴＲＡＮＳＦＥＲ」は、例えば、不揮発性メモリ１１２に記憶されたデータを表計算アプリケーションにより操作された結果を、データベースに反映するためのアプリケーションに対応する。「ＳＥＴＴＩＮＧＳ」は、例えば、「ＯＲＤＥＲ  ＣＨＥＣＫＥＲ」、「ＯＲＤＥＲ  ＴＲＡＮＳＦＥＲ」の環境設定を行なうアプリケーションに対応する。
【００３２】
図４（ｂ）は、図４（ａ）のアプリケーションの中から「ＳＥＴＴＩＮＧＳ」が選択された場合に起動されるアプリケーションにより表示されるウィンドウの一例を示す。図４（ｂ）は、エクスポート部１１１による処理を行なうためのファイルの名前、フォルダあるいはディレクトリを設定するためのウィンドウの一例を示す。「Ｓａｖｅ  Ｉｎ：」の右側には、不揮発性メモリ１１２に構築されたファイルシステムにおけるフォルダ名として「Ｍｙ  Ｗｏｒｋｓ」が示され、その下のサブウィンドウに、「Ｍｙ  Ｗｏｒｋｓ」内のフォルダ、ファイルが示される。その下には、「Ｆｉｌｅ  Ｎａｍｅ：」の右側に「ＧＬＯ＿ＯＲＤＥＲ＿ｅｘ．ｃｓｖ」が入力されている。この場合、「ＧＬＯ＿ＯＲＤＥＲ＿ｅｘ．ｃｓｖ」が、一時記憶メモリ１０８に記憶されているデータが、エクスポート部１１１により記憶されるファイル名となる。
【００３３】
図５は、「ＯＲＤＥＲ  ＣＨＥＣＫＥＲ」が選択された場合に起動されるアプリケーションがデータベース操作画面を表示するウィンドウの一例を示す。この場合のアプリケーションは、起動がされると、データベースサーバ１０１に対して、図３（ａ）のテーブルに格納されているデータのうち、データベース端末１０２にログインをしている操作者の識別情報が「担当ＩＤ」の列に格納されているデータの検索を要求し、この要求に対する返信として受信される指し値注文に関するデータを一時記憶メモリ１０８のバッファに記憶する。
【００３４】
また、この場合のアプリケーションは、図３（ｂ）のテーブルから、バッファに記憶された指し値注文を行なった顧客に関する顧客データの送信要求を送信し、返信される顧客データを一時記憶メモリ１０８のバッファなどに記憶してもよい。要求される顧客データは、バッファに記憶された指し値注文に関するデータに含まれる注文ＩＤを有する。例えば、データベース端末１０２にログインをしている操作者の識別情報がＵ３４５であれば、図３（ａ）より、注文ＩＤが０１０のデータが一時記憶メモリ１０８に記憶されるので、図３（ｂ）のテーブルから、顧客ＩＤとしてＣ０１２３、口座ＩＤとしてＡＢ１２３４５６を有する第２データがデータベース端末１０２からデータベースサーバ１０１に要求される。したがって、図３（ｂ）のテーブルに対して、データベース端末１０２より、注文ＩＤが、一時記憶メモリ１０８のバッファに記憶されている値である０１０を有するデータの検索の要求が、データ送受信インターフェース１０７より送信される。
【００３５】
一方、図３（ａ）のテーブルを見ると、注文ＩＤが０２１のデータの担当ＩＤは、Ｆ６７８であるので、顧客ＩＤとしてＣ０９８７、口座ＩＤとしてＺＢ９８７６５４を有するデータについては検索の要求をする必要がない。これにより、一時記憶メモリ１０８および不揮発性メモリ１１２に記憶されるデータ量を小さくすることができる。
【００３６】
図５において、図３（ａ）のテーブルに格納されているデータの一部がウィンドウ内に表示されている。ここに「データの一部」とは、図３（ａ）のテーブルに格納されているデータのうち、データベース端末１０２にログインをしている操作者の識別情報を「担当ＩＤ」の列に格納しているデータであるという第１の意味と、データベース端末１０２にログインをしている操作者の識別情報を「担当ＩＤ」の列に格納しているデータのうち「通貨１」、「通貨２」、「金額」、「レート」の列に格納されている情報が表示されているという第２の意味とを有する。
【００３７】
このため、バッファには、図３（ａ）のテーブルに格納されているデータの一部が記憶されることが好ましい。図３（ａ）のテーブルに格納されているデータの一部をバッファに記憶することにより、バッファに割り当てる記憶領域のサイズを小さくすることができる。
【００３８】
上述したように、図３（ａ）のテーブルに格納されているデータのうち、データベース端末１０２の操作者の識別情報と関連付けられているデータがバッファに記憶される。あるいは、取扱通貨ごとに操作者が定められている場合には、図３（ａ）のテーブルに格納されているデータのうち、特定の通貨についてのデータがバッファに記憶されるようになっていてもよい。
【００３９】
また、図５においては「市場」という列が表示されているが、これは、外国為替市場での現在の交換レートを示している。現在の交換レートの情報は、データベースサーバ１０１より受信されてもよいし、図示されていない他のサーバより受信されてもよい。データベース端末１０２の操作者は、ウィンドウ内のレートの列の値と市場の列の値とを比較し、注文の処理が適していれば、マウスのクリックなどを行ない、注文の処理を行なう。例えば、図５において、１米国ドルの１００．００円の指し値の買い注文が表示され、市場での現在の交換レートが９８．７０であるので、この注文を処理する。注文が処理された情報は、データベース端末１０２よりデータベースサーバ１０１へ送信され、記録される。
【００４０】
本実施形態では、図５に示されるウィンドウ内に表示されているデータが、エクスポート部１１１により不揮発性メモリ１１２に記憶される。具体的には、図４（ｂ）において指定された名前のフォルダとファイルに格納される。この場合、実際にウィンドウ内に表示されているデータのみならず、表示はされていないが、一時記憶メモリ１０８のバッファに記憶されており、スクロールバー５０１を操作することにより表示がされるデータもエクスポート部１１１により不揮発性メモリ１１２に記憶されてもよい。
【００４１】
また、エクスポート部１１１は、時間間隔をおいてデータを不揮発性メモリ１１２に記憶してもよい。例えば、エクスポート部１１１は、図５のウィンドウが表示されてから５分毎に、定期的にデータを不揮発性メモリ１１２に記憶する。このために、制御部１０９は、データベース操作画面のウィンドウが表示されている間は、タイマを起動し、５分の時間の経過を検出する。５分は一例であって、任意の値を選択することができる。また、市場での交換レートの変動に応じて変化させることができる。例えば、市場での交換レートの変動がより頻繁に起きていれば、より短い時間の値を選択し、市場での交換レートの変動がより緩慢であれば、より長い時間の値を選択し、データを不揮発性メモリ１１２に格納する時間間隔を調整してもよい。また、交換レートの変動幅が大きいほど、より短い時間の値を選択してもよい。
【００４２】
図６は、本実施形態に係るデータベース端末１０２の処理のフローチャートの一例である。図６（ａ）に示すフローチャートはデータベース操作画面が表示されるまでの処理を示す。また、図６（ｂ）に示すフローチャートは、データベース操作画面が表示されてから、データベース操作画面がクローズされるまで（データベース操作画面が非表示となるまで）の処理を示す。
【００４３】
図６（ａ）に示すフローチャートにおいて、ステップＳ６０１の処理として、データベース操作画面が表示されたかどうか判断し、表示がされていなければ、表示されるまでウェイトする。データベース操作画面が表示されると、ステップＳ６０２に処理を移行し、タイマを起動する。タイマは所定の長さの時間が経過したことを制御部１０９、ＣＰＵ２０９に知らせる。所定の時間が経過したことが知らされると、図７のフローチャートのＳ７０２の処理が行なわれ、所定の時間の経過毎に、すなわち定期的に、エクスポート部１１１が制御部１０９により起動される。
【００４４】
図６（ｂ）に示すフローチャートにおいて、ステップＳ６０３の処理として、データベース操作画面がクローズされたかどうか判断し、クローズされていなければ、クローズされるまでウェイトする。データベース操作画面がクローズされると、ステップＳ６０４の処理に移行し、タイマが停止する。これにより、エクスポート部１１１が起動されなくなり、一時記憶メモリ１０８に記憶されているデータが不揮発性メモリ１１２に記憶されなくなる。データベース操作画面がクローズされたということは、データベースに対する操作が行なわれないことである。その間にデータベースサーバ１０１に障害が発生しても、影響を受けることがない。したがって、データベース操作画面がクローズされているときには、エクスポート部１１１の動作は無駄であるので、データベース端末１０２において、無駄な処理が行なわれなくなることになる。
【００４５】
図７は、エクスポート部１１１の処理のフローチャートの一例である。ステップＳ７０１の処理として、所定時間が経過したことがタイマにより通知されるまでウェイトする所定時間が経過すると、ステップＳ７０２に処理を移行し、一時記憶メモリ１０８に記憶されているデータを不揮発性メモリ１１２に格納する。その後、ステップＳ７０３に処理を移行し、タイマが停止したかどうかを判断し、タイマが停止していなければＳ７０１に処理を戻す。
【００４６】
図８は、ステップＳ７０２により、不揮発性メモリ１１２に格納されたデータの一例を示す。この例では、図５のデータベース操作画面に表示されているデータに対応するデータであって、図３（ａ）のテーブルに格納されているデータと、図３（ｂ）のテーブルのデータのうち、注文ＩＤにより関連付けられているデータとがＣＳＶ形式で格納されている。もし、データベースサーバ１０１が障害などで停止したとしても、データベース端末１０２の操作者は、このようなＣＳＶ形式で格納されているデータを、例えば表計算アプリケーションなどに読み込ませ、表計算アプリケーションなどで業務を継続することが可能となる。例えば、指し値注文を処理したこと、および処理したときの市場での交換レートを記入し、デーベースサーバ１０１が復旧すると、記入したデータをアップロードする。
【００４７】
図９は、ステップＳ７０１の処理をより詳細に示すフローチャートの一例である。ステップＳ９０１において、ファイルが指定されているかどうかを判断する。もし、ファイルが指定されていなければ、ステップＳ９０２に処理を移行させ、図４（ｂ）に示される設定画面の表示を行なう。ファイルが指定されていれば、ステップＳ９０３へ処理を移行させ、指定されたファイルが書込可であるかどうかを判断する。例えば、ファイルを書き込む権限があるかどうかを判断する。指定されたファイルが書込可でなければ、ステップＳ９０２に移行する。指定されたファイルが書込可であれば、ステップＳ９０４の処理へ移行し、ロックが完了しているかどうかを判断する。
【００４８】
このロックは、エクスポート部１１１が一時記憶メモリ１０８からデータを読み出している間に、操作者によって一時記憶メモリ１０８に記憶されているデータが変更されたり、データ送受信インターフェース１０７がデータベースサーバより受信したデータを一時記憶メモリに記憶したりすることを防ぐために行なう。すなわち、エクスポート部１１１が一時記憶メモリ１０８からデータを読み出すことと、一時記憶メモリ１０８に記憶されているデータが変更されることとの排他制御を実現する。
【００４９】
ロックが完了すると、ステップＳ９０５の処理としてエクスポートを行なう。エクスポートが終了すると、ステップＳ９０６の処理として、ステップＳ９０４に対応するアンロックを行なう。アンロックにより、一時記憶メモリ１０８に記憶されているデータの変更が可能となる。
【００５０】
以上のように、本実施形態に係るシステムを、銀行業務における外国為替取引の処理に用いる場合を主に説明したが、本実施形態に係るシステムの用途はデータベースを用いる様々な業務に用いることができる。例えば、商品の受注管理、図書館管理、電子カルテ管理などの様々な業務に用いることができる。
【符号の説明】
【００５１】
１００  システム、１０１  データベースサーバ、  １０２  データベース端末、１０３  通信ネットワーク、１０４  記憶部、１０５  データベーステーブル、１０６  データベーステーブル、１０７  データ送受信ネットワーク、１０８  一時記憶メモリ、１０９  制御部、１１０  入出力インターフェース、１１１  エクスポート部、１１２  不揮発性メモリ
【図１】
0005329602.tif 000002
【図２】
0005329602.tif 000003
【図３】
0005329602.tif 000004
【図４】
0005329602.tif 000005
【図５】
0005329602.tif 000006
【図６】
0005329602.tif 000007
【図７】
0005329602.tif 000008
【図８】
0005329602.tif 000009
【図９】
0005329602.tif 000010