(57)【特許請求の範囲】
【請求項１】
業務管理を行うための複数のデータを関連づけて記憶する記憶手段の記憶内容を管理するデータベース装置であって、
前記記憶手段に記憶されているいずれかのデータに対する更新情報と、業務の発令日および任命日とを含んだ更新データを入力する入力手段と、
前記入力手段により入力された更新データに含まれる発令日および任命日と、現在日とを比較する比較手段と、
前記比較手段の比較結果に基づいて、前記更新データの状態を示す状態データとして、前記現在日が前記発令日前である場合には未確定未来を示す状態データを、前記現在日が前記発令日以降で前記任命日前である場合には確定未来を示す状態データを、前記現在日が前記任命日以降である場合には現在を示す状態データを生成する状態データ生成手段と、
前記状態データ生成手段により生成された状態データと前記更新データを関連づけて格納する管理テーブルを生成する管理テーブル生成手段と、
前記管理テーブル生成手段により生成された管理テーブルに格納されている発令日および任命日と、現在日とを比較し、前記状態データが変更されると、当該変更後の状態データを前記管理テーブルに反映させるとともに、当該変更後の状態データが前記更新データを反映させることを示す場合には、前記更新データの内容に従って前記記憶手段の記憶内容を更新する状態管理手段と
を備えることを特徴とするデータベース装置。
【請求項２】
業務管理を行うための複数のデータを関連づけて記憶する記憶手段の記憶内容を管理するデータベース装置であって、
業務管理を行う上で相互に関連するデータを取り扱う各々の個別データベース装置から供給される、前記記憶手段に記憶されているいずれかのデータに対する更新情報と、業務の発令日および任命日とを含んだ更新データを入力する入力手段と、
前記入力手段により入力された更新データを格納する格納手段と、
前記格納手段から読み出した更新データに含まれる発令日および任命日と、現在日とを比較する比較手段と、
前記比較手段の比較結果に基づいて、前記更新データの状態を示す状態データとして、前記現在日が前記発令日前である場合には未確定未来を示す状態データを、前記現在日が前記発令日以降で前記任命日前である場合には確定未来を示す状態データを、前記現在日が前記任命日以降である場合には現在を示す状態データを生成する状態データ生成手段と、
前記状態データ生成手段により生成された状態データと前記更新データを関連づけて格納する管理テーブルを生成する管理テーブル生成手段と、
前記管理テーブル生成手段により生成された管理テーブルに格納されている発令日および任命日と、現在日とを比較し、前記状態データが変更されると、当該変更後の状態データを前記管理テーブルに反映させるとともに、当該変更後の状態データが前記更新データを反映させることを示す場合には、前記更新データの内容に従って前記記憶手段の記憶内容を更新する状態管理手段と、
前記個別データベース装置毎に定められた規則に従って、前記管理テーブルに格納されている状態データを参照することにより、前記記憶手段および前記格納手段から必要とされるデータを抽出して抽出データを生成する抽出手段と、
前記抽出手段により抽出された抽出データを対応する前記個別データベース装置に転送する転送手段と
を備えたことを特徴とするデータベース装置。
【請求項３】
前記抽出手段は、前記個別データベース装置毎に定められた規則に従って、前記管理テーブルに格納されている状態データを参照することにより、現在日が任命日前であっても前記格納手段から必要とされるデータを抽出して抽出データを生成する
ことを特徴とする請求項２に記載のデータベース装置。
【請求項４】
請求項２に記載した、データベース装置および各々の個別データベース装置と、前記データベース装置と前記各々の個別データベース装置とを接続する通信網とを備えたことを特徴とするデータベースシステム。
【請求項５】
業務管理を行うための複数のデータを関連づけて記憶する記憶手段の記憶内容を管理するデータベース装置の制御方法であって、
前記記憶手段に記憶されているいずれかのデータに対する更新情報と、業務の発令日および任命日とを含んだ更新データを入力する入力ステップと、
前記入力ステップにて入力された更新データに含まれる発令日および任命日と、現在日とを比較する比較ステップと、
前記比較ステップにおける比較結果に基づいて、前記更新データの状態を示す状態データとして、前記現在日が前記発令日前である場合には未確定未来を示す状態データを、前記現在日が前記発令日以降で前記任命日前である場合には確定未来を示す状態データを、前記現在日が前記任命日以降である場合には現在を示す状態データを生成する状態データ生成ステップと、
前記状態データ生成ステップにて生成された状態データと前記更新データを関連づけて格納する管理テーブルを生成する管理テーブル生成ステップと、
前記管理テーブル生成ステップにて生成された管理テーブルに格納されている発令日および任命日と、現在日とを比較し、前記状態データが変更されると、当該変更後の状態データを前記管理テーブルに反映させるとともに、当該変更後の状態データが前記更新データを反映させることを示す場合には、前記更新データの内容に従って前記記憶手段の記憶内容を更新する状態管理ステップと
を有することを特徴とするデータベース装置の制御方法。
【請求項６】
業務管理を行うための複数のデータを関連づけて記憶する記憶手段の記憶内容を管理するデータベース装置の制御方法であって、
業務管理を行う上で相互に関連するデータを取り扱う各々の個別データベース装置から供給される、前記記憶手段に記憶されているいずれかのデータに対する更新情報と、業務の発令日および任命日とを含んだ更新データを入力する入力ステップと、
前記入力ステップにて入力された更新データを格納手段に格納する格納ステップと、
前記格納手段から読み出した更新データに含まれる発令日および任命日と、現在日とを比較する比較ステップと、
前記比較ステップにおける比較結果に基づいて、前記更新データの状態を示す状態データとして、前記現在日が前記発令日前である場合には未確定未来を示す状態データを、前記現在日が前記発令日以降で前記任命日前である場合には確定未来を示す状態データを、前記現在日が前記任命日以降である場合には現在を示す状態データを生成する状態データ生成ステップと、
前記状態データ生成ステップにて生成された状態データと前記更新データを関連づけて格納する管理テーブルを生成する管理テーブル生成ステップと、
前記管理テーブル生成ステップにて生成された管理テーブルに格納されている発令日および任命日と、現在日とを比較し、前記状態データが変更されると、当該変更後の状態データを前記管理テーブルに反映させるとともに、当該変更後の状態データが前記更新データを反映させることを示す場合には、前記更新データの内容に従って前記記憶手段の記憶内容を更新する状態管理ステップと、
前記個別データベース装置毎に定められた規則に従って、前記管理テーブルに格納されている状態データを参照することにより、前記記憶手段および前記格納手段から必要とされるデータを抽出して抽出データを生成する抽出ステップと、
前記抽出ステップにて抽出された抽出データを対応する前記個別データベース装置に転送する転送ステップと
を有することを特徴とするデータベース装置の制御方法。
【請求項７】
請求項５または６に記載のデータベース装置の制御方法をコンピュータ装置に実行させるプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、更新データの状態を自律的に管理するデータベース装置、データベースシステム、データベース装置の制御方法および記録媒体に関する。
【０００２】
【従来の技術】
近年の情報化社会にあっては、企業の活動を支援するために各種の情報処理装置が用いられる。例えば、大企業においては、人事システム、給与システムあるいは社宅システムといった個別のデータベースによって業務管理が行われることが多い。
【０００３】
このようなシステムにおいては、相互に関連するデータに基づいて処理を行っているので、一つのアプリケーションでデータの更新が行われると他のアプリケーションに更新されたデータをファイル化して転送する必要が生じることがある。例えば、従業者が昇進に伴いある事業所から別の事業所に異動になり、この異動に関する情報が、まず、人事システムに入力されたとする。この場合、昇進に伴って給与は昇給するのでこの情報を給与システムに渡す必要があり、また、勤務先が変更になるので社宅に関する情報を社宅システムに渡す必要が生じる。このため、人事システムでは、従業者の異動に係わるデータを相手方のシステムで読み取れるようにデータ形式を変換してファイルを作成する。そして、ファイルを格納した磁気ディスクを相手先のシステムで読み込んだり、あるいは、通信網を介してファイルを転送していた。
【０００４】
ここで、Ｎ個のシステムが相互に関連して動作しているとすれば、システム全体の変換アプリケーション数はＮ（Ｎ−１）個となるので、全体を構成するシステム数が増加すると、必要とされる変換アプリケーション数が飛躍的に増加してしまう。このため、変換アプリケーションを開発する工数、変換処理に要する工数、あるいは、変換アプリケーションを記憶するコンピュータ資源を消費してしまうといった問題がある。そこで、各システムで共通的に扱うデータを共有する共用データベースシステムが開発されている。
【０００５】
共用データベースシステムは、個々のデータベースと共用データベースとから構成され、個々のデータベースは共用データベースに各々接続される。個々のデータベースでデータの更新が生じると、更新されたデータが標準化されて共用データベースに蓄積される。そして、共用データベースから他のデータベースに標準化したデータを必要に応じて転送するようになっている。
【０００６】
あるデータベースにおいて更新されたデータは、他の全てのデータベースで必要とされるわけではないので、共用データベースは、あるデータベースからの更新データを記憶内容に反映させると、他のデータベース毎に更新データの抽出処理を行って、その抽出結果を他のデータベースに転送する処理を実行する。
【０００７】
【発明が解決しようとする課題】
ところで、上述した業務管理システムにおいては、更新すべきデータが前もってわかっている場合がある。例えば、ある社員の異動に関する情報は、異動を発令する発令日や現実に異動が行われる任命日より前に発生している。この場合、当該社員の所属を検索可能なデータベースでは、検索日が任命日前であれば検索結果として旧所属が出力され、検索日が任命日以降であれば検索結果として新所属が出力されるべきである。したがって、従来の業務管理システムでは、更新データが前もって生成されていても、任命日以降に更新データをデータベースに取り込む作業が必要とされていた。
【０００８】
また、異動や採用あるいは昇進といった業務が発生すると、あるデータベースでは発令日を基準にデータの更新を行い、また、他のデータベースでは任命日を基準にデータの更新を行うこともある。したがって、従来の業務管理システムにおいては、データ種類やデータベースの種別に応じて更新データを取り込む必要があり作業が煩雑であった。
【０００９】
本発明は、上述した事情に鑑みてなされたものであり、更新データの状態を管理して、更新データを必要なタイミングで自動的に記憶内容に反映させることができるデータベース装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
上記課題を解決するため請求項１に記載の発明にあっては、業務管理を行うための複数のデータを関連づけて記憶する記憶手段の記憶内容を管理するデータベース装置であって、前記記憶手段に記憶されているいずれかのデータに対する更新情報と、業務の発令日および任命日とを含んだ更新データを入力する入力手段と、前記入力手段により入力された更新データに含まれる発令日および任命日と、現在日とを比較する比較手段と、前記比較手段の比較結果に基づいて、前記更新データの状態を示す状態データとして、前記現在日が前記発令日前である場合には未確定未来を示す状態データを、前記現在日が前記発令日以降で前記任命日前である場合には確定未来を示す状態データを、前記現在日が前記任命日以降である場合には現在を示す状態データを生成する状態データ生成手段と、前記状態データ生成手段により生成された状態データと前記更新データを関連づけて格納する管理テーブルを生成する管理テーブル生成手段と、前記管理テーブル生成手段により生成された管理テーブルに格納されている発令日および任命日と、現在日とを比較し、前記状態データが変更されると、当該変更後の状態データを前記管理テーブルに反映させるとともに、当該変更後の状態データが前記更新データを反映させることを示す場合には、前記更新データの内容に従って前記記憶手段の記憶内容を更新する状態管理手段とを備えたことを特徴とする。
【００１１】
また、請求項２記載の発明にあっては、業務管理を行うための複数のデータを関連づけて記憶する記憶手段の記憶内容を管理するデータベース装置であって、業務管理を行う上で相互に関連するデータを取り扱う各々の個別データベース装置から供給される、前記記憶手段に記憶されているいずれかのデータに対する更新情報と、業務の発令日および任命日とを含んだ更新データを入力する入力手段と、前記入力手段により入力された更新データを格納する格納手段と、前記格納手段から読み出した更新データに含まれる発令日および任命日と、現在日とを比較する比較手段と、前記比較手段の比較結果に基づいて、前記更新データの状態を示す状態データとして、前記現在日が前記発令日前である場合には未確定未来を示す状態データを、前記現在日が前記発令日以降で前記任命日前である場合には確定未来を示す状態データを、前記現在日が前記任命日以降である場合には現在を示す状態データを生成する状態データ生成手段と、前記状態データ生成手段により生成された状態データと前記更新データを関連づけて格納する管理テーブルを生成する管理テーブル生成手段と、前記管理テーブル生成手段により生成された管理テーブルに格納されている発令日および任命日と、現在日とを比較し、前記状態データが変更されると、当該変更後の状態データを前記管理テーブルに反映させるとともに、当該変更後の状態データが前記更新データを反映させることを示す場合には、前記更新データの内容に従って前記記憶手段の記憶内容を更新する状態管理手段と、前記個別データベース装置毎に定められた規則に従って、前記管理テーブルに格納されている状態データを参照することにより、前記記憶手段および前記格納手段から必要とされるデータを抽出して抽出データを生成する抽出手段と、前記抽出手段により抽出された抽出データを対応する前記個別データベース装置に転送する転送手段とを備えたことを特徴とする。
【００１２】
また、請求項３記載の発明にあっては、前記抽出手段は、前記個別データベース装置毎に定められた規則に従って、前記管理テーブルに格納されている状態データを参照することにより、現在日が任命日前であっても前記格納手段から必要とされるデータを抽出して抽出データを生成することを特徴とする。
【００１３】
また、請求項４記載の発明にあっては、請求項２に記載した、データベース装置および各々の個別データベース装置と、前記データベース装置と前記各々の個別データベース装置とを接続する通信網とを備えたデータベースシステムであることを特徴とする。
【００１４】
また、請求項５記載の発明にあっては、業務管理を行うための複数のデータを関連づけて記憶する記憶手段の記憶内容を管理するデータベース装置の制御方法であって、前記記憶手段に記憶されているいずれかのデータに対する更新情報と、業務の発令日および任命日とを含んだ更新データを入力する入力ステップと、前記入力ステップにて入力された更新データに含まれる発令日および任命日と、現在日とを比較する比較ステップと、前記比較ステップにおける比較結果に基づいて、前記更新データの状態を示す状態データとして、前記現在日が前記発令日前である場合には未確定未来を示す状態データを、前記現在日が前記発令日以降で前記任命日前である場合には確定未来を示す状態データを、前記現在日が前記任命日以降である場合には現在を示す状態データを生成する状態データ生成ステップと、前記状態データ生成ステップにて生成された状態データと前記更新データを関連づけて格納する管理テーブルを生成する管理テーブル生成ステップと、前記管理テーブル生成ステップにて生成された管理テーブルに格納されている発令日および任命日と、現在日とを比較し、前記状態データが変更されると、当該変更後の状態データを前記管理テーブルに反映させるとともに、当該変更後の状態データが前記更新データを反映させることを示す場合には、前記更新データの内容に従って前記記憶手段の記憶内容を更新する状態管理ステップとを有することを特徴とする。
【００１５】
また、請求項６記載の発明にあっては、業務管理を行うための複数のデータを関連づけて記憶する記憶手段の記憶内容を管理するデータベース装置の制御方法であって、業務管理を行う上で相互に関連するデータを取り扱う各々の個別データベース装置から供給される、前記記憶手段に記憶されているいずれかのデータに対する更新情報と、業務の発令日および任命日とを含んだ更新データを入力する入力ステップと、前記入力ステップにて入力された更新データを格納手段に格納する格納ステップと、前記格納手段から読み出した更新データに含まれる発令日および任命日と、現在日とを比較する比較ステップと、前記比較ステップにおける比較結果に基づいて、前記更新データの状態を示す状態データとして、前記現在日が前記発令日前である場合には未確定未来を示す状態データを、前記現在日が前記発令日以降で前記任命日前である場合には確定未来を示す状態データを、前記現在日が前記任命日以降である場合には現在を示す状態データを生成する状態データ生成ステップと、前記状態データ生成ステップにて生成された状態データと前記更新データを関連づけて格納する管理テーブルを生成する管理テーブル生成ステップと、前記管理テーブル生成ステップにて生成された管理テーブルに格納されている発令日および任命日と、現在日とを比較し、前記状態データが変更されると、当該変更後の状態データを前記管理テーブルに反映させるとともに、当該変更後の状態データが前記更新データを反映させることを示す場合には、前記更新データの内容に従って前記記憶手段の記憶内容を更新する状態管理ステップと、前記個別データベース装置毎に定められた規則に従って、前記管理テーブルに格納されている状態データを参照することにより、前記記憶手段および前記格納手段から必要とされるデータを抽出して抽出データを生成する抽出ステップと、前記抽出ステップにて抽出された抽出データを対応する前記個別データベース装置に転送する転送ステップとを有することを特徴とする。
【００１６】
また、請求項７記載の発明にあっては、請求項５または６に記載のデータベース装置の制御方法をコンピュータ装置に実行させるプログラムを記録した記録媒体であることを特徴とする。
【００１７】
【発明の実施の形態】
以下、図面を参照しつつ、本発明の一実施形態に係わる共用データベースシステムについて説明する。
【００１８】
１．実施形態の構成
１−１．全体構成
まず、共用データベースシステムの全体構成を説明する。図１は共用データベースシステム１の全体構成を示すブロック図である。なお、共用データベースシステム１は各種の情報処理に応用できるが、ここでは、業務管理に適用したものを一例として説明する。
【００１９】
図において、共用データベースシステム１は、相異なるロケーションに配置される目的別データベースＳ１〜Ｓ７、標準化されたデータを蓄積する共用データベースＤＢ、および各目的別データベースＳ１〜Ｓ７と共用データベースＤＢを接続するローカルエリアネットワークＬＡＮから構成されている。
【００２０】
各目的別データベースＳ１〜Ｓ７は、例えばパーソナルコンピュータで構成され、そこには個別のデータベースが構築されている。例えば、人事システムＳ１は従業者の人事異動、勤怠、評価、家族構成等を管理し、給与システムＳ２は従業者の給与を管理し、年金システムは退職者への年金の支給等を管理し、社宅システムは社宅の入居状況を管理し、退職手当システムＳ５は各社員の退職金を管理し、物流システムＳ６は物流を管理し、経理システムＳ７は企業全体の経理を管理している。
【００２１】
このような各目的別データベースＳ１〜Ｓ７は、相互に密接な関連を持っている。例えば、人事システムＳ１に蓄積される従業者の勤怠データは、当該従業者の給与に反映させるため給与システムＳ２においても必要とされる。また、従業者が社宅を希望する場合には、家族構成を考慮して社宅を斡旋する必要があるため、家族データが社宅システムＳ４で必要となる。このため、各目的別データベースＳ１〜Ｓ７に蓄積されるデータに更新があると、更新データをファイル形式で転送することによって共用データベースＤＢが更新データを一旦集約し、共用データベースＤＢにおいて各目的別データベースＳ１〜Ｓ７に更新に用いるファイルが転送されるようになっている。
【００２２】
次に、共用データベースＤＢの主要部は、原本データベース１０とデータベース管理機構２０から構成される。ところで、各目的別データベースＳ１〜Ｓ７のデータ型式（例えば、１データの文字数）は、それらのアプリケーションに依存する。このため、データベース管理機構２０は各目的別データベースＳ１〜Ｓ７からの転送ファイルを標準化して標準データを生成し、これを原本データベース１０に蓄積する。各目的別データベースＳ１〜Ｓ７にデータを転送する際には、データベース管理機構２０によって原本データベース１０から必要とされる標準データの抽出処理が行われるようになっている。このため、原本データベース１０のデータ構造は抽出処理を効率良く実行できるようにグルーピングされている。具体的には、社員、学歴あるいは所属といった各種のテーブルから構成されており、テーブル名を指定して検索が行えるようになっている。
【００２３】
１−２：機能構成
次に、共用データベースＤＢの主要部の機能構成について説明する。図２は共用データベースＤＢの機能構成を示す機能ブロック図である。図に示すように共用データベースＤＢは、原本データベース１０とデータベース管理機構２０から構成されている。
【００２４】
原本データベース１０に格納されるデータは、受入データ、現在データ、および過去データに大別される。現在データは、現在のデータを示し現在データベースに格納され、過去データは直前のデータを示し直前データベースに格納される。また、各データベースは、複数のテーブルから構成されており、例えば、社員コードを所属する部署名と対応づけて格納した所属テーブル、社員コードと学歴を対応づけて格納した学歴テーブル、あるいは、社員コードと家族情報を対応づけて格納した家族テーブル等の各種のテーブルから構成されている。
これに対して、受入データは、何らかの業務の発生に伴って生成されるデータであって、現在データの状態を管理やあるいは任命日前のデータとして用いられ、ステータス管理テーブル、受入データ構成テーブル、およびイベントテーブルから構成されている。なお、これらのテーブルについては後述する。
【００２５】
データベース管理機構２０は、各目的別データベースＳ１〜Ｓ７から転送されてくる更新ファイルを原本データベース１０に反映させる反映処理機構１００と原本データベース１０から更新されたデータを抽出して各目的別データベースＳ１〜Ｓ７に転送するファイルを生成する抽出処理機構２００から構成される。
【００２６】
まず、反映処理機構１００は、前処理部１１０、標準化処理部１２０、中間ファイル生成部１３０および状態遷移管理部１４０から構成されている。前処理部１１０は、各目的別データベースＳ１〜Ｓ７から転送されてくる更新ファイルに対して、通信経路で発生するエラーを検出し訂正するとともに、ヘッダ・トレイラの削除を行う。標準化処理部１２０は、データ型式の標準化とグルーピングの標準化を行う。データ型式の標準化では、上述したように例えば、１データの文字数が揃えられ、標準データが生成される。また、グルーピングの標準化では、原本データベース１０のデータ構造に適合するようにデータをグルーピングして標準化済ファイルを生成する。
【００２７】
次に、中間ファイル生成部１３０は、原本データベース１０に格納される各種のテーブルとそのカラムの内容を指定するテーブルカラム情報を参照しつつ、中間ファイルを生成する。この中間ファイルは、ステータス管理テーブル、受入データ構成テーブル、およびイベントテーブルから構成される。これらのテーブルは、原本データベース１０の更新に関するなんらかのイベントが発生すると生成される。
【００２８】
ところで、人材管理システムにおいては、時間の管理が重要である。例えば、人事異動においては、人事異動があったことを本人に伝える発令日と実際に異動がある任命日が存在するが、発令日と任命日では意味することが異なるため、人事異動に関する項目であっても各目的別データベースＳ１〜Ｓ７によっては、データを更新する日が相違する。そこで、ステータス管理テーブルには、更新に関するデータの状態を示すデータが格納されるようになっており、これを参照することによって、反映抽出処理が行われるようになっている。
【００２９】
次に、状態遷移管理部１４０は、現在の日付とステータス管理テーブルに格納されている発令日および任命日を比較することによって、状態を管理する。
【００３０】
次に、抽出処理機構２００は、各目的別データベースＳ１〜Ｓ７毎に設けられた抽出アプリケーション２１１〜２１７、これらの起動を制御するスケジュール部２２０、抽出アプリケーション２１１〜２１７によって作成された１次抽出ファイルの項目からのセキュリティ上の理由から適切でない項目をマスクするマスク部２３０、ヘッダ・トレイラを付加する後処理部２４０から構成されている。
【００３１】
スケジュール部２２０は、カレンダ機能を有しており、予め設定された日付で所定の抽出アプリケーション２１１〜２１７が起動するように、起動日時を設定できるようになっている。給与の締日が毎月１５日で支給日が２５日であるとすれば、２５日に間に合うように、例えば、毎月１７日に給与システムＳ２に対応する抽出アプリケーション２１１〜２１７が起動するように設定すればよい。
【００３２】
抽出アプリケーション２１１〜２１７は、各目的別データベースＳ１〜Ｓ７向けに転送するデータを抽出して一次抽出ファイルを生成するようになっており、抽出の対象となる対象キーを特定する対象データ特定部Ｍ１と、対象キーを用いて抽出したテーブルを結合して各目的別データベースＳ１〜Ｓ７毎に一次抽出ファイルを生成する接続データ生成部Ｍ２とを各々備えている。
【００３３】
ここで、各抽出アプリケーション２１１〜２１７は、各目的別データベースＳ１〜Ｓ７の仕様に適合したデータを抽出するため、基本的には独立したものである。したがって、抽出アプリケーション２１１〜２１７を別個独立したものとして構成することもできる。
【００３４】
しかし、そのように抽出アプリケーション２１１〜２１７を構成すると、プログラム量が膨大となり、また、各目的別アプリケーションＳ１〜Ｓ７の仕様が変更されると、変更された仕様に合わせて抽出アプリケーション２１１〜２１７を始めから作成し直す必要がある。さらに、新たな目的別データベースが追加された場合には、新規な抽出アプリケーションを始めから作成する必要がある。したがって、抽出アプリケーション２１１〜２１７を別個独立して構成すると、プログラム量が膨大となり、開発の工数が大きく、しかも稼働中の目的別データベースＳ１〜Ｓ７に変更があった場合や新規な目的別データベースを増設する場合に工数と時間がかかるという問題がある。
【００３５】
そこで、本実施形態にあっては、抽出処理に用いられる複数の機能を各々モジュール化し、機能モジュールの共用化を図っている。具体的には、各抽出アプリケーション２１１〜２１７の対象データ特定部Ｍ１と接続データ生成部Ｍ２の機能がモジュール化されており、複数の機能モジュールの中から必要なものを読み出して、これにパラメータを与えるようになっている。この機能モジュールを共用化により、プログラム量を削減でき、しかも、機能モジュールの組み合わせによって、目的別データベースＳ１〜Ｓ７の仕様の変更や、その増設にも柔軟に対応することが可能となる。
【００３６】
次に、各抽出アプリケーション２１１〜２１７の対象データ特定部Ｍ１は、以下の観点から、抽出の対象となる対象キーを特定する。なお、対象キーは、抽出すべきデータを検索する際に手掛かりとなる項目であって、例えば、氏名コードが該当する。
▲１▼抽出期間範囲
まず、データの抽出期間範囲は、変化があったデータを抽出する範囲を示すものであり、その種別としては、１）一日単位、２）前回抽出日以降現在まで、３）特定日あるいは特定時点、４）一定期間がある。
一日単位の処理としては、例えば、経理システムＳ７に用いられる売り上げ高の集計等が該当する。また、前回抽出日以降現在までの処理は、最も一般的な処理であり、例えば、社宅システムＳ４で必要とされる住所変更に伴う更新に用いられる。また、一定期間の処理としては、例えば、人事システムに用いられる勤怠データの集計が該当する。
以上１）〜４）の各処理は期間指定モジュールとしてモジュール化されており、各抽出アプリケーション２１１〜２１７は、必要とされる期間指定モジュールを実行することによって期間を指定できるようになっている。
【００３７】
▲２▼抽出可能なテーブルの判別
次に、抽出可能なテーブルの判別する処理としては、以下のものがモジュール化されている。１）受信・反映後に直ちに抽出を実行、２）現在値データが変更後に抽出を実行、３）条件が発生した時に抽出を実行
受信・反映後に直ちに抽出を実行するものとしては、例えば、膨大な給与計算を効率よく行うため社員の昇進に伴うデータを給与システムＳ２に転送する場合が該当する。また、条件が発生した時に抽出を実行するの機能モジュールを設けたのは、例えば、発令日を基準に更新を行う目的別データベースや任命日を基準に更新を行うデータベースに対して適切なタイミングで更新ファイルを転送するためである。
【００３８】
▲３▼関連するテーブルの抽出
次に、関連するテーブルを抽出する処理としては、以下のものがモジュール化されている。１）変化に関わらない特定キー範囲の抽出、２）特定の業務発生に関わる抽出、３）特定データの変更発生に関わる抽出がある。
変化に関わらない特定キー範囲の抽出としては、例えば、関東あるいは東北といった地域による限定を行う。特定イベント発生に関わる抽出としては、例えば、人事異動によって特定人の職場が変更する場合が該当する。また、特定データの変更とは、例えば、休職あるいは在職といった在職状況の変更が該当する。
このように、対象データ特定部Ｍ１は、抽出期間範囲、抽出可能なテーブルの判別、関連するテーブルの抽出といった観点から、モジュール化された機能モジュールを読み出してこれにパラメータを与えることによって対象キーを生成する。
【００３９】
次に、接続データ生成部Ｍ２は、対象キーに基づいて原本データベース１０から該当するテーブルを読み出すとともにこれらを結合して、一次抽出ファイルを生成する。テーブルの結合の態様としては、以下のものがある。
▲１▼テーブル単位の結合
これは、原本データベース１０に格納されている各種のテーブルをテーブル単位で抽出するものである。
▲２▼関連する現在値テーブルの結合
これは、原本データベース１０に格納されている現在データベースのテーブルを抽出し結合するものであり、最も一般的な結合の態様である。
【００４０】
▲３▼関連する現在値テーブルと直前テーブルの結合
これは、原本データベース１０に格納されている現在データベースと直前データベースの同一テーブル名のテーブルを抽出し結合するものである。
▲４▼同一テーブルの複数オカレンスの結合
例えば、同一氏名コードの複数家族を含めて抽出し結合する場合や、複数の資格を有する場合にそれらの資格データを抽出し結合する場合である。
【００４１】
▲５▼キー検索結果の外部キーによる結合
これは、氏名コード等の抽出キー情報によって、テーブルを検索した後、抽出したテーブルの項目をキーとして、更に検索を行って所定の項目値を取得し、これを出力テーブルに埋め込む場合である。例えば、氏名コードや所属組織コードを格納する第１のテーブルと、所属組織コードを所属組織名と対応づけて格納した第２のテーブルとがある場合において、氏名コードを抽出キー情報として第１のテーブルを検索しそこから所属組織コードを取得し、この所属組織コードをキーとして第２のテーブルを検索して所属組織名を取得し、これを第１のテーブルの所属組織コードの替わりに埋め込む場合が該当する。
【００４２】
▲６▼過去、未来も含めた関連テーブルの結合
これは、関連するテーブルを過去、未来も含めて抽出し結合するものであって、例えば、過去の所属や前職などの情報を抽出し結合する場合が該当する。
これらのテーブルの結合処理もモジュール化されており、各機能モジュールを適宜選択・組み合わせることによって、各目的別データベースＳ１〜Ｓ７の仕様を満足する転送ファイルを生成することが可能となる。なお、各機能モジュールにおいて、結合の対象となるテーブルは、抽出パラメータとして与えられる。
このように、抽出プログラム２１１〜２１７を、対象データ特定部Ｍ１と接続データ生成部Ｍ２で構成しているのは、１）対象データの特定（抽出キー情報の生成）は、後述する状態管理が中心であり、一方、接続データの生成はデータ抽出処理（テーブルアクセス処理）の共通化であり、性質が異なること、２）２ブロックとしてその間にファイルインターフェースを設けてもオーバーヘッドはごくわずかであること等の理由による。
【００４３】
次に、マスク部２３０は、各目的別データベースＳ１〜Ｓ７毎にどのような項目をマスクするかを定めたマスクパラメータを格納しており、このマスクパラメータを用いて不要な項目をマスクするマスク処理を行う。また、後処理部２４０は、送信に適した文字コードに変換するとともに、ヘッダ・トレイラを付加して各目的別データベースＳ１〜Ｓ７に向けた転送ファイルを生成する。
【００４４】
２．実施形態の動作
次に、実施形態の動作を説明する。
２−１：目的別データベースから共用データベースへのファイル転送処理
各目的別データベースＳ１〜Ｓ７にデータの更新が生じると、各目的別データベースＳ１〜Ｓ７は更新されたデータに関わるテーブルを共用データベースＤＢに転送する。ここでは、人事システムＳ１が転送するテーブルを例に挙げ説明する。なお、この例では、人事システムＳ１に構築されているデータベースのデータ構造（テーブルの持ち方）は、原本データベース１０のデータ構造と共通しており、また、人事システムＳ１から転送されるファイルを構成するデータは標準データの型式になっているものとする。
【００４５】
人事システムＳ１において、ある社員に人事異動が生じたとすると、人事システムＳ１は、当該社員の氏名コード、人事異動の発令日と任命日、および更新情報を組にした更新テーブルを生成する。この場合、異動という業務（イベント）の発生に伴って、当該社員の所属や勤務先等が変更になるので、原本データベース１０に格納されている異動テーブル、所属テーブル、勤務先テーブルといった各種のテーブルを更新する必要が生じる。このため、更新テーブルは、原本データベース１０に格納されている各種のテーブルのうち、変更が必要となるテーブルの種類だけ生成される。例えば、ｎ個のテーブルを更新する必要があるとすれば、人事システムＳ１では、図３（ａ）に示すようにテーブルTBL1〜TBLnを生成するとともに、図３（ｂ）に示すイベント管理テーブルTBLa1〜TBLanを生成する。
【００４６】
イベント管理テーブルTBLa1〜TBLanは、氏名コード、データ種別コード、および関連するテーブル名から構成されている。ここで、データ種別コードは、どのような業務の発生によってデータの更新が生じたかを示すものであり、例えば、異動であれば「０１」、退職であれば「０２」といったように業務が区別できるようにコードが割り当てられている。また、テーブル名の欄には、当該業務によって変更が生じる原本データベース１０のテーブル名が格納されている。この例では、更新に係わるテーブルはTBL1〜TBLnであるから、これらがテーブル名として格納される。
【００４７】
上述したテーブルTBL1〜TBLnおよびイベント管理テーブルTBLa1〜TBLanがＬＡＮを介して共用データベースＤＢに転送されると、データベース管理機構２０の中間ファイル生成部１３０は、各テーブルTBL1〜TBLnにこれらを受け入れた日を業務発生日として加え、図３（ａ）に示すようにイベントテーブルTBL1'〜TBLn'を各々生成するとともに、図４（ａ）に示す受入データ構成テーブルTBLb1〜TBLbnを生成する。受入データ構成テーブルTBLb1〜TBLbnは、イベント管理テーブルTBLa1〜TBLanに業務発生日を追加したものである。したがって、受入データ構成テーブルTBLb1〜TBLbnを参照することによって、どのテーブルが更新されたのかを知ることができる。
【００４８】
また、中間ファイル生成部１３０は、イベント管理テーブルTBLa1〜TBLanに業務発生日を加えると共に、当該業務の状態に関する情報（現状態、状態遷移実施日時）を加えたステータス管理テーブルTBLcを生成する。なお、業務の状態に関する情報の書込については状態遷移処理で詳細に説明する。
こうして、生成されたイベントテーブルTBL1'〜TBLn'、受入データ構成テーブルTBLb1〜TBLbn、ステータス管理テーブルTBLcは、原本データベース１０の所定の格納領域に格納される。
【００４９】
ところで、各目的別データベースＳ１〜Ｓ７におけるデータの更新は、原則として任命日以降に行われる。したがって、各目的別データベースＳ１〜Ｓ７から共用データベースＤＢに更新データを転送するのが通常である。しかしながら、本実施形態では、発令日および任命日を格納したイベント管理テーブルTBLa1〜TBLanを更新データに含ませて共用データベースＤＢに転送しているので、任命日前に更新データを共用データベースＤＢに転送することができ、共用データベースＤＢにおいて発令日および任命日を参照して、原本データベース１０に更新データを反映させたり、あるいは、抽出処理を適切な時期に実行することができるようになる。
【００５０】
２−２：状態遷移処理
この共用データベースシステム１は、運用日（現在の日付）と発令日および任命日の関係から、データの状態を、（１）未確定未来、（２）確定未来、（３）現在、（４）過去といった４つの段階に分けて管理しており、状態遷移管理部１４０は、これらの状態をステータス管理テーブルTBLcに反映させる。具体的には、（１）〜（４）の状態を示す状態コード（２ビット）がステータス管理テーブルTBLcに格納されるようになっている。
【００５１】
ここで、未確定未来の状態とは、運用日が発令日前、かつ運用日が任命日前の状態をいう。また、確定未来の状態とは、運用日が発令日以降、かつ運用日が任命日前の状態をいう。また、現在の状態とは、運用日が発令日および任命日以降であり、かつ最新のものをいう。また、過去とは、運用日が発令日および任命日以降であり、かつ過去のものをいう。
【００５２】
ところで、ステータス管理テーブルTBLcには、上述したようにある業務の発生に伴って変更の必要が生じるテーブル名が格納されているから、ステータス管理テーブルTBLcを参照すれば、関連テーブルの状態を一元的に管理することができる。
【００５３】
図５は、ステータス管理テーブルTBLcを用いた状態管理を示す図である。図において、状態遷移管理部１４０にステータス管理テーブルTBLcが送られると、状態遷移管理部１４０は運用日をステータス管理テーブルTBLcに格納されている発令日および任命日と比較して、以下のように状態コードを生成する（Ｘ０）。
【００５４】
まず、運用日が発令日前、かつ運用日が任命日前である場合には、パスＰ１を介して未確定未来状態Ｘ１に進み、未確定未来を示す状態コード００をステータス管理テーブルTBLcに格納する。例えば、昇給予定の業務が発生した場合などが該当する。
【００５５】
次に、運用日が発令日以降であり、かつ運用日が任命日前である場合には、パスＰ２を介して確定未来状態Ｘ２に進み、確定未来を示す状態コード０１をステータス管理テーブルTBLcに格納する。例えば、配置転換の業務が発生した場合などが該当する。
【００５６】
次に、運用日が発令日以降であり、かつ運用日が任命日以降である場合には、パスＰ３を介して現在状態Ｘ３に進み、現在を示す状態コード１０をステータス管理テーブルTBLcに格納する。例えば、各種の補正業務が発生した場合などが該当する。また、発令日と任命日が同一日であり、かつ運用日が発令日以降である場合には、パスＰ４を介して現在状態Ｘ３に進み、現在を示す状態コード１０をステータス管理テーブルTBLcに格納する。
【００５７】
こうして、ステータス管理テーブルTBLcの現状態の欄に状態コードが格納されるとともに、現状態に移行した日時を示す状態遷移実施日時がステータス管理テーブルTBLcに格納される。
【００５８】
この後、状態遷移管理部１４０は、ステータス管理テーブルTBLcを毎日読み出して、そこに格納されている発令日および任命日と運用日とを比較して状態遷移処理を実行する。
この場合、状態遷移管理部１４０はステータス管理テーブルTBLcに格納されている状態コード、発令日および任命日を読み出す。そして、読み出された状態コードから当該業務の状態を検知する。次に、運用日と発令日および任命日を比較して、運用日当日の状態を把握する。業務の状態に変化があるならばステータス管理テーブルTBLcの更新を行い、一方、業務の状態に変化がないならばステータス管理テーブルTBLcの更新を行わない。
【００５９】
例えば、読み出された状態コードが００であり、運用日と発令日が一致したとすれば、当該業務は未確定未来状態Ｘ１からパスＰ５を介して確定未来状態Ｘ２に変化する。この場合には、ステータス管理テーブルTBLcの現状態の欄に状態コード０１を、また、状態遷移実施日時の欄に状態遷移を実行した日時を格納して、ステータス管理テーブルTBLcを更新する。また、未確定未来状態Ｘ１からパスＰ６を介して現在状態Ｘ３に、確定未来状態Ｘ２からパスＰ７を介して現在状態Ｘ３に変化する場合も同様にステータス管理テーブルTBLcを更新する。
【００６０】
ところで、ある社員に人事異動が発生して任命日を過ぎると、当該業務の状態は現在状態Ｘ３になるが、この社員について次の人事異動が発生したとする。この場合に、運用日が次の人事異動の任命日に至ると、当該社員の人事異動について２つのステータス管理テーブルTBLcが存在することになるが、当該社員の正確なデータは新しいステータス管理テーブルTBLcによって表されているので、古いステータス管理テーブルTBLcは新しいものと区別する必要がある。このため、現在状態Ｘ３にあるステータス管理テーブルTBLcに対して最新のステータス管理テーブルTBLcが発生した場合には、古い業務を過去状態Ｘ４として取り扱うようにしている。
【００６１】
具体的には、パスＰ３、Ｐ４、Ｐ６、Ｐ７を経て現在状態Ｘ３に至ったステータス管理テーブルTBLcが発生すると、そこに格納されている氏名コードおよびデータ種別をキー情報として、現在状態Ｘ３にある他のステータス管理テーブルTBLcを検索する。該当するものが抽出された場合には、そのステータス管理テーブルTBLcの現状態の欄に状態コード１１を、また、状態遷移実施日時の欄に状態遷移を実行した日時を格納して、ステータス管理テーブルTBLcを更新する。過去状態Ｘ３にあるステータス管理テーブルTBLcは、削除アプリケーション起動時に削除される（Ｐ９、Ｘ５）。この場合、当該ステータス管理テーブルTBLcに関連するイベントテーブルTBL1'〜TBLn'や受入データ構成テーブルTBLb1〜TBLbnも同時に削除される。なお、削除アプリケーションは一月に一回といったように周期的に起動するように設定しておけばよい。
【００６２】
このように、ステータス管理テーブルTBLcには運用日における業務の状態が状態コードとして格納されているので、ステータス管理テーブルTBLcの業務発生日、氏名コードおよびデータ種別コードを参照することによって、イベントテーブルTBL1'〜TBLn'、受入データ構成テーブルTBLb1〜TBLbnの管理を行うことができ、業務の状態に応じた反映処理や抽出処理が可能となる。
【００６３】
２−３：反映処理
次に、原本データベース１０に格納される現在データの反映処理について説明する。図６は現在データの反映処理動作を示したものである。
まず、反映処理機構１００の状態遷移管理部１４０が、ステータス管理テーブルTBLcを参照して、現在状態Ｘ３にあるものの中から、状態遷移日時が運用日と一致するものを抽出する。この場合、抽出されたステータス管理テーブルTBLcは運用日と任命日が一致するものである。現在データは、ある時点における各社員の所属等の情報を表すものであるから、任命日に至った受入データは現在データに反映させる必要がある。このため、状態遷移管理部１４０は抽出されたステータス管理テーブルTBLcの業務発生日、氏名コードおよびデータ種別コードを参照して、関連するイベントテーブル（図３（ａ）のTBL1'〜TBLn'）を読み出して現在データベースＤＢ１の更新を行う。この更新処理は毎日行われ、一日前の現在データベースは直前データベースＤＢ２として格納される。
【００６４】
以上が原則的な反映処理であるが、データ入力を忘れてしまった場合や、通信回線の故障、目的別データベースＳ１〜Ｓ７の不具合等の諸般の事情によって、任命日を過ぎて最新受入データが生成される場合がある。このような場合には、現在データベースＤＢ１に内容を反映させるとともに、必要に応じて直前データベースＤＢ２に内容を反映させる。
【００６５】
このように、状態遷移管理部１４０は、ステータス管理テーブルTBLcの状態コードを参照して、更新データの反映処理を行うので、各目的別データベースＳ１〜Ｓ７は、任命日前であっても更新データを共用データベースＤＢに転送することが可能となる。この結果、各目的別データベースＳ１〜Ｓ７から任意のタイミングで更新データを転送することが可能となる。
【００６６】
２−４：抽出処理
次に、各抽出アプリケーション２１１〜２１７で行われる抽出処理についてキー情報ファイルの生成処理と接続データの生成処理に分かち説明する。
【００６７】
２−４−１：キー情報ファイルの生成処理
キー情報ファイルの生成処理は、各抽出アプリケーション２１１〜２１７の対象データ特定部Ｍ１において実行される。対象データ特定部Ｍ１は、まず、抽出タイミングを特定する機能モジュールによって、抽出処理を行うタイミングを検知し、所定のタイミングで抽出処理を開始する。例えば、給与システムＳ２は、膨大な計算処理を実行するので、昇進に関する情報をいち早く知っておく必要がある。このため、これに対応する抽出アプリケーション２１２では、運用日が任命日前であっても抽出処理を実行する必要があるので、ステータス管理テーブルTBLcの状態コードが０１の場合（確定未来状態Ｘ２）で抽出処理を開始する。
すなわち、任命日や運用日といった更新データを取り扱う条件に基づいて、更新データの状態を状態コードとして保持し、これを参照することによって抽出処理を行っており、これにより、任命日で抽出処理を行なったり、あるいは発令日で抽出処理を行うことが可能となる。
【００６８】
次に、対象データ特定部Ｍ１は、抽出期間範囲を特定する。１日単位で状態の変化があったものを抽出する場合には、ステータス管理テーブルTBLcの状態遷移日時を参照して、この日付が運用日と一致するものを抽出する。また、前回抽出日以降に変化があったデータを抽出する場合には、前回抽出日とステータス管理テーブルTBLcの状態遷移日時を比較して、状態遷移日時が前回抽出日より後のものを抽出する。特定日（例えば、毎月２５日）のデータを抽出する場合には、現在データに付与されているキー値を参照してデータを抽出する。また、一定期間に変化したデータを抽出する場合には、受入データ構成テーブルの業務発生日を参照して、例えば、１日から月末までに共用データベースＤＢが受け入れたデータを抽出する。
【００６９】
さらに、対象データ特定部Ｍ１は、抽出期間範囲の特定によって限定されたデータに対して、以下の観点から抽出処理を行う。まず、データの変化と無関係に抽出を行う場合には、抽出のキーとなるキー情報を指定して、現在データベースＤＢ１を検索し、該当するテーブルに格納されている氏名コードを抽出する。この場合、キー情報は抽出パラメータとして与えられる。
また、特に重要な抽出処理が、特定の業務（イベント）発生に関わるデータ抽出処理と特定データの変更発生に関わるデータ抽出処理である。前者は、採用や異動といった業務に付随して各目的別データベースＳ１〜Ｓ７を更新する場合に便利であり、一方、後者は業務の発生とは無関係に特定データが変更した場合に関連するデータを更新する場合に便利である。
【００７０】
特定の業務発生に関わるデータ抽出処理を実行する場合には、ステータス管理テーブルTBLcのデータ種別コードを参照して、抽出パラメータとして与えられるコードと一致するものを検索し、対応する氏名コードを抽出する。また、特定データの変更発生に関わるデータ抽出処理を実行する場合には、抽出パラメータとしてテーブル名を与える。例えば、住所の変更に関するデータを抽出するのであれば、住所テーブルのテーブル名を抽出パラメータとして用いる。この場合には、受入データ構成テーブルTBLbを参照して、抽出パラメータと一致するテーブル名が格納されている受入データ構成テーブルTBLbから氏名コードを抽出する。
抽出した氏名コードは、接続データの生成処理においてテーブルを抽出する際の抽出キー情報として用いられ、抽出キー情報ファイルに格納される。
【００７１】
ところで、目的別データベースＳ１〜Ｓ７は、各種の業務に対応できるように目的別に構築されたものであるから、イベントの種類と各目的別データベースＳ１〜Ｓ７毎のデータ更新とは密接な関連がある。したがって、上述したように特定のイベントに係わる抽出キー情報を、ステータス管理テーブルTBLcのデータ種別コードを参照して抽出すると、効率よく抽出キー情報を生成することが可能となる。一方、イベントとは関係なく、特定のテーブルに格納されているデータを更新する場合もある。したがって、データ種別コードによる抽出と、テーブル名による抽出を適宜組み合わせることによって、要求に対応した抽出キー情報を効率良く生成することが可能となる。
【００７２】
２−４−２：接続データの生成処理
次に、抽出キー情報ファイルを用いた接続データの生成処理について具体的に説明する。この例では、抽出キー情報ファイルに社員Ａの氏名コードaaa、社員Ｂの氏名コードbbbが格納されており、社宅システムＳ４に転送する一次抽出ファイルを生成するものとする。また、社宅システムＳ４では、社員データ、家族データおよび所属データを必要とするものとする。
【００７３】
この場合には、接続データ生成部Ｍ２は、抽出パラメータと上述した▲２▼関連する現在値テーブルの結合を行う機能モジュール（以下、第１の機能モジュールＦ１と呼ぶ）、▲４▼同一テーブルの複数オカレンスの結合を行う機能モジュール（以下、第２の機能モジュールＦ２と呼ぶ）および▲５▼キー検索結果の外部キーによる結合を行う機能モジュール（以下、第３の機能モジュールＦ３と呼ぶ）を用いて接続データを生成する。
【００７４】
この処理では、社員Ａ、社員Ｂの順で処理が行われる。まず、第１の機能モジュールＦ１に、抽出パラメータとして社員データを格納する社員テーブルの名称、家族データを格納する家族テーブルの名称が与えられると、氏名コードaaaと抽出パラメータに合致する社員テーブルと家族テーブルとが抽出され結合される。社員Ａの家族が妻、長男、長女であれば、例えば、図７（ａ）に示すように社員Ａの社員テーブルTBLsaと妻、長男、長女の各々家族テーブルTBLka1〜TBLka3とが抽出され結合される。この場合、家族テーブルTBLka1〜TBLka3は、社員コードaaaの家族テーブルという意味において同一テーブルに属するものである。このため、図７（ａ）の抽出結合結果を第２の機能モジュールＦ２に入力すると、図７（ｂ）に示す結合結果が得られる。
【００７５】
次に、第３の機能モジュールＦ３によって、外部キーによる結合処理を実行する。この場合の外部キーは所属コード１０１である。このため、第３の機能モジュールＦ３は、所属コードと所属名称の対応関係を規定する所属テーブルTBLx（図７（ｃ）参照）を検索して、「１０１」に対応する所属名称を取得し、これを所属コード１０１の替わりに埋め込む。この結果、図７（ｄ）に示す、結合テーブルが得られる。こうして得られた結合テーブルを１レコードとして取り扱い、社員Ｂについも同様の処理を行ってレコードを得る。そして、各レコードを一つのファイルに格納することによって、一次抽出ファイルが作成される。この場合、一次抽出ファイルには、転送先の目的別データベースＳ１〜Ｓ７を区別できるファイル名が付与される。
【００７６】
２−４−３：マスク処理および後処理
次に、マスク部２３０で行われるマスク処理について説明する。各抽出アプリケーション２１１〜２１７では、上述したように原本データベース１０に格納されているテーブルの抽出・接続を行うことによって、一次抽出ファイルを作成するが、この一次抽出ファイルの中には、転送先の目的別データベースＳ１〜Ｓ７に転送すべきでない項目が含まれていることがある。例えば、社宅システムＳ４では、学歴情報は必要なく、セキュリティ上このような情報は社宅システムＳ４に転送すべきではない。このため、マスク部２３０は、各抽出アプリケーション２１１〜２１７から一次抽出ファイルを受け取ると、そのファイル名から転送先を検知する。そして、検知結果に対応するマスクパラメータを用いて、一次抽出ファイルの各項目のうち、転送するのが適切でない項目をマスクして、マスク済抽出ファイルを作成する。
この後、後処理部２４０は、マスク済抽出ファイルの文字コードを通信に用いられる標準文字コードに変換し、これにヘッダ・トレイラを付加して標準流通ファイルを作成する。
【００７７】
こうして作成された標準流通ファイルがＬＡＮを介して各目的別データベースＳ１〜Ｓ７に転送されると、各目的別データベースＳ１〜Ｓ７に設けられた変換アプリケーションによって、そこで使用される形態の既存レコード形式に変換された後、更新データとして格納される。この場合、原本データベース１０のデータ構造（テーブルの持ち方）は、上述したように各目的別データベースＳ１〜Ｓ７のデータ構造を考慮して構成されているので、変換アプリケーションでは、項目の並べ替えといった単純な処理を行うだけで済む。このため、変換アプリケーションはごく小規模なもので足り、開発工数や格納領域が少なくて済むといった利点がある。
【００７８】
３．まとめ
上述したように本実施形態によれば、抽出アプリケーション２１１〜２１７を対象データ特定部Ｍ１と接続データ生成部Ｍ２に分割し、各部で行われる処理を機能モジュール化して、これらの機能モジュールを適宜組み合わせ、抽出パラメータを与えるようにしたので、各目的別データベースＳ１〜Ｓ７向けの抽出アプリケーション２１１〜２１７において機能モジュールの共用化を図ることができる。この結果、個別にプログラムを作成した場合に比較して、プログラム量を削減でき、しかも各目的別データベースＳ１〜Ｓ７に仕様変更が生じたり、新たな目的別データベースを追加する場合にも短時間で新規な抽出アプリケーションを開発可能な環境を提供することができる。
【００７９】
また、上述した実施形態によれば、各目的別データベースＳ１〜Ｓ７において、イベント（業務）の発生に伴って関連する複数のデータが更新されると当該イベントの種別を示すデータ種別コードを含むイベント管理テーブルTBLaが生成され、これが共用データベースＤＢに転送される。そして、イベントに関連するデータを抽出する場合には、受入データ構成テーブルTBLbに格納されているデータ種別コードを参照することによって抽出キー情報ファイルが生成される。採用、異動といったイベントが発生すると、あるイベントに対応する複数の目的別データベースで更新処理が生じるので、上述したようにデータ種別コードによってキー情報を抽出することにより、関連するテーブルを効率良く抽出することが可能となる。
【００８０】
また、上述した実施形態によれば、各目的別データベースＳ１〜Ｓ７において、データが更新されると当該データが格納されるべきテーブル名を含むイベント管理テーブルTBLaが生成され、これが共用データベースＤＢに転送される。そして、特定のデータに関するデータを抽出する場合には、受入データ構成テーブルTBLbに格納されているテーブル名を参照することによって抽出キー情報ファイルが生成される。したがって、あるテーブルについて更新されたデータを抽出する場合に抽出処理を効率良く行うことができる。
【００８１】
また、上述した実施形態によれば、ステータス管理テーブルTBLcを用いて、業務の状態を管理するようにしたので、更新データの状態を把握しながら、現在データを適切なタイミングで反映させることができ、また、各目的別データベースＳ１〜Ｓ７で必要されるタイミングで抽出処理を行うことができる。この場合、業務の状態は２ビットの状態コードで表すことができ、状態コードを用いてステータス管理テーブルTBLcを検索すれば当該業務に関連するイベントテーブルの状態を一元的に把握することができるので、効率の良い検索が可能となる。特に、当該業務が正式に確定する任命日前の発令日や、発令日前の未確定未来の状態を表すことができるので、計算量が膨大で任命日前に予め更新データを渡す必要があるシステムに対しても、適切なタイミングで抽出処理を行って、必要なファイルを転送することが可能となる。
【００８２】
また、マスク部２３０によって、開示すべきでない項目はマスクするようにしたので、各目的別データベースＳ１〜Ｓ７で必要とされる項目のみを転送ファイルに含めることができ、高度なセキュリティを容易に確保することができる。
【００８３】
４．変形例
以上、本発明に係わる実施形態を説明したが、本発明は上述した実施形態に限定されるものではなく、以下に述べる各種の変形が可能である。
▲１▼上述した実施形態において、ステータス管理テーブルTBLcは、発令日、任命日といった複数の時間条件で業務の状態を管理したが、本発明はこれに限定されるものではなく、例えば、受注日、納入日といった時間条件で業務の状態を管理するようにしてもよい。すなわち、データの状態が時間に係わる条件によって変化するような場合に、その状態を表すコードで状態を管理することができる。
【００８４】
また、各目的別データベースＳ１〜Ｓ７から転送される発令日、任命日といったデータは、これに基づいて原本データベース１０に対する反映処理、あるいは原本データベース１０からの抽出処理を実行する際に使用されるので、更新データを取り扱う条件を示す条件データとして把握することができる。したがって、共用データベースＤＢは、取り扱う条件を示す条件データに基づいて、条件を満たすか否か状態遷移管理部１４０で判定し、その判定結果を状態コードとしてステータス管理テーブルTBLcに反映させ、ステータス管理テーブルTBLcを参照することによって、反映処理と抽出処理を行っているといえる。
【００８５】
また、このような取り扱い条件を示す条件データを用いた反映処理と抽出処理は、共用データベースＤＢばかりでなく、通常のデータベース装置に適用してもよいことは勿論である。
このデータベース装置では、更新の条件を示す条件データを含む更新データを上述した原本データベース１０に対応する記憶手段の一部の記憶領域（格納手段）に格納し、記憶手段から読み出した前記更新データに係わる条件データに基づいて、条件を満たすか否かをデータベース管理機構２０で判定し、判定結果が条件を満たす場合には、更新データを記憶手段の他の記憶領域の記憶内容に反映させるようにすればよい。
【００８６】
また、反映処理や抽出処理に代表される取り扱いの条件を示す複数の条件データを含む更新データを記憶手段の一部の記憶領域（格納手段）に格納し、記憶手段から読み出した前記更新データに係わる条件データに基づいて、条件を満たすか否かをデータベース管理機構２０で判定し、判定結果に基づいて、更新データの状態を示す状態データを生成し、状態データと更新データを関連づけるステータス管理テーブルを生成し（中間ファイル生成部１３０に対応）、状態データが変更されると前記管理テーブルに変更内容を反映させるとともに、前記管理テーブルの内容を監視して前記状態データが当該更新データを反映させることを示す場合には、記憶手段の記憶内容に更新データを反映させる（状態遷移管理部１４０に対応）ようにしてもよい。
【００８７】
▲２▼上述した実施形態において、各抽出アプリケーション２１１〜２１７は対象データ特定部Ｍ１と接続データ生成部Ｍ２とに分割されていたが、これを一体として取り扱ってもよいことは勿論である。また、対象データ特定部Ｍ１と接続データ生成部Ｍ２は複数の機能モジュールを組み合わせ、これに抽出パラメータを与えることによって抽出処理を実行していたが、例えば、機能モジュールをＳＱＬ言語でプログラムし、動的ＳＱＬ文で抽出パラメータを記述することにより、抽出処理を実行できるようにプログラムしてもよい。
【００８８】
▲３▼上述した実施形態においてデータベース管理機構２０はコンピュータシステムに用いられるソフトウエアによって実現されるが、本発明は、これらのプログラムを記憶した記憶媒体としても把握されることは勿論である。この場合、記録媒体としては、例えば、フロッピーディスク、ＭＯディスク、ハードディスク等の磁気記録媒体、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の光記録媒体の他、ＲＡＭ、ＲＯＭ等の半導体記録媒体が該当するが、要は、プログラムを記録再生可能な記録媒体であれば、どのようなものであってもよい。
【００８９】
【発明の効果】
上述したように本発明に係る発明特定事項によれば、更新データに取り扱いの条件を定めた条件データを含ませるようにし、条件データに基づいて反映処理や抽出処理を実行するようにしたので、実際の反映処理を実行する前の更新データを入力することができ、更新データの入力時期に余裕を持たせることができる。また、データベース装置や共用データベース装置においては、更新データを入力しさえすれば、そこに含まれている条件データに基づいて、当該更新データの状態を自律的に管理し、反映抽出処理を自動的に行うことができる。
【図面の簡単な説明】
【図１】  本発明の一実施形態に係わる共用データベースシステムの全体構成を示すブロック図である。
【図２】  同実施形態に係わる共用データベースの機能構成を示す機能ブロック図である。
【図３】  同実施形態に係わる人事システムで生成されるテーブルの例を示す図である。
【図４】  （ａ）は同実施形態に係わる受入データ構成テーブルの例を示したものであり、（ｂ）は同実施形態に係わるステータス管理テーブルの例を示したものである。
【図５】  同実施形態に係わるステータス管理テーブルを用いた状態管理を示す図である。
【図６】  同実施形態に係わる現在データの反映処理動作を示す図である。
【図７】  同実施形態に係わる接続データ生成動作の一例を示す図である。
【符号の説明】
Ｓ１〜Ｓ７…目的別データベース（個別データベース装置）
ＤＢ…共用データベース（共用データベース装置、データベース装置）
１０…原本データベース（記憶手段、格納手段）
１００…反映処理機構（判定手段、反映手段、状態データ生成手段、管理テーブル生成手段、状態管理手段）
２００…抽出処理機構（抽出手段、転送手段）
２１１〜２１７…抽出アプリケーション
２３０…マスク部
２４０…後処理部（転送手段）
Ｍ１…対象データ特定部（抽出手段）
Ｍ２…接続データ生成部（抽出手段）
ＬＡＮ…ローカルエリアネットワーク（通信網）
【図１】
0003676564.tif 000002
【図２】
0003676564.tif 000003
【図３】
0003676564.tif 000004
【図４】
0003676564.tif 000005
【図５】
0003676564.tif 000006
【図６】
0003676564.tif 000007
【図７】
0003676564.tif 000008