(57)【要約】【課題】  異なるデータ構造を持つマスタを同期させるプログラムおよび方法の提供。【解決手段】  複数の異なるアプリケーション・プログラムと、複数のデータ構造の異なるマスタと、を有するシステムにおいて、基本となる基本マスタから、同期させるマスタである従属マスタのデータ構造に合わせて一時ファイルである従属マスタ一時テーブルを、データ構造を変換する規則である変換ルールに従って作成し、前記従属マスタ一時テーブルと従属マスタを比較して、従属マスタを変更することによって基本マスタと従属マスタを同期させることを特徴とする。【選択図】  図１
2007004226.tif 000002
【特許請求の範囲】
【請求項１】
データ構造の異なるマスタをもつ複数のシステムと、前記データ構造を他のデータ構造に変換するルールを格納する変換ルールテーブルとを備えるコンピュータシステムにおけるマスタ間のデータを同期させるマスタ同期プログラムであって、
前記コンピュータシステムに、
前記複数のシステムのマスタの内、一方のマスタを基本マスタとし、他方のマスタを従属マスタとしたとき、
前記変換ルールテーブルに格納したルールを参照して前記基本マスタに格納したデータを従属マスタのデータ構造に変換した従属マスタ一時テーブルを作成するルール適用処理機能と、
前記従属マスタ一時テーブルのデータと従属マスタのデータとを比較し、従属マスタのデータを従属マスタ一時テーブルのデータに一致するように更新することにより基本マスタと従属マスタのデータを同期させる同期機能を実現させるためのマスタ同期プログラム。
【請求項２】
データ構造の異なるマスタをもつ複数のシステムと、前記データ構造を他のデータ構造に変換するルールを格納する変換ルールテーブルとを備えるコンピュータシステムにおけるマスタ間のデータを同期させるマスタ同期方法であって、
前記コンピュータシステムが、
前記複数のシステムのマスタの内、一方のマスタを基本マスタとし、他方のマスタを従属マスタとしたとき、
前記変換ルールテーブルに格納したルールを参照して前記基本マスタに格納したデータを従属マスタのデータ構造に変換した従属マスタ一時テーブルを作成するルール適用処理工程と、
前記従属マスタ一時テーブルのデータと従属マスタのデータとを比較し、従属マスタのデータを従属マスタ一時テーブルのデータに一致するように更新することにより基本マスタと従属マスタのデータを同期させる同期工程とを行うことを特徴とするマスタ同期方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の異なるアプリケーションが使用する、データ構造が異なる複数のマスタデータベース（以下、単にマスタという）を同期させるマスタ同期プログラムおよび同期させるマスタ同期方法に係り、特に複数の異なるアプリケーションが使用するデータ構造の異なるマスタのうち、基本となるマスタから従属するマスタと同じデータ構造を持つ一時ファイルを作成し、その一時ファイルと従属するマスタを同期させるプログラムおよび基本となるマスタに従属するマスタを同期させる方法に関する。
【背景技術】
【０００２】
企業内には多くの業務システムが存在し、それらの各業務システムでは同様なデータを格納している多数のマスタが用いられている。
最近では企業内外で基幹業務システムや各種アプリケーションの統合などで、異なるシステムまたはアプリケーションで使用するマスタの同期を取る必要性が高まっている。
【０００３】
一般に従来技術によるマスタの同期方法としては、次のものが挙げられる。
特許文献１には、異なるアプリケーション間で、それぞれマスタ内のデータの意味、所在、関係が格納されているトランザクションファイルを設け、さらに前記トランザクションファイルのデータ構造を複数のアプリケーションから利用できるような共通のデータ構造に変更して、データの共有化を図るという方法が開示されている。
【０００４】
特許文献２には、同一アプリケーション間でマスタの同期を行う場合、更新されたデータを転送する際にマスタの情報に基づいてコード化することによってデータ量を少なくし、転送後に転送先に存在するマスタの情報に基づいてデコードすることにより転送データ量を減らし、機密漏洩のしにくいデータ転送方法が開示されている。
【特許文献１】特開平１１−２８２７３１号公報
【特許文献２】特開２００４−１０２６８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
前述の従来技術によるデータベース同期方法には次のような不具合があった。
特許文献１に開示されている方法には、複数のアプリケーションから利用できるような共通のデータ構造に変更しているため、そのトランザクションデータにアクセスするためにはアプリケーションを変更ないし修正する必要があり、そのためのコストがかかり、また、修正による悪影響が他のシステムに連鎖的に現れる懸念があるという不具合があった。
【０００６】
また、特許文献２に開示されている方法は、同一のアプリケーション間で転送するデータ量を少なくし、機密漏洩のしにくいデータ転送方法に関するものであって、異なるアプリケーション間では通常、マスタのデータ構造が異なるため、転送先のアプリケーションでは転送されたデータが使用できない、という不具合があった。
【０００７】
本発明の目的は、前述の従来技術による不具合を除去することであり、異なるアプリケーション間で使用するマスタを、各アプリケーション自体のプログラムやアルゴリズムを変えることなく同期させるマスタ同期プログラムおよびマスタ同期方法を提供することにある。
【課題を解決するための手段】
【０００８】
前記目的を達成するために請求項１記載の発明は、データ構造の異なるマスタをもつ複数のシステムと、前記データ構造を他のデータ構造に変換するルールを格納する変換ルールテーブルとを備えるコンピュータシステムにおけるマスタ間のデータを同期させるマスタ同期プログラムであって、
前記コンピュータシステムに、
前記複数のシステムのマスタの内、一方のマスタを基本マスタとし、他方のマスタを従属マスタとしたとき、
前記変換ルールテーブルに格納したルールを参照して前記基本マスタに格納したデータを従属マスタのデータ構造に変換した従属マスタ一時テーブルを作成するルール適用処理機能と、
前記従属マスタ一時テーブルのデータと従属マスタのデータとを比較し、従属マスタのデータを従属マスタ一時テーブルのデータに一致するように更新することにより基本マスタと従属マスタのデータを同期させる同期機能を実現させるためのマスタ同期プログラムである。
【０００９】
また、請求項２記載の発明は、データ構造の異なるマスタをもつ複数のシステムと、前記データ構造を他のデータ構造に変換するルールを格納する変換ルールテーブルとを備えるコンピュータシステムにおけるマスタ間のデータを同期させるマスタ同期方法であって、
前記コンピュータシステムが、
前記複数のシステムのマスタの内、一方のマスタを基本マスタとし、他方のマスタを従属マスタとしたとき、
前記変換ルールテーブルに格納したルールを参照して前記基本マスタに格納したデータを従属マスタのデータ構造に変換した従属マスタ一時テーブルを作成するルール適用処理工程と、
前記従属マスタ一時テーブルのデータと従属マスタのデータとを比較し、従属マスタのデータを従属マスタ一時テーブルのデータに一致するように更新することにより基本マスタと従属マスタのデータを同期させる同期工程とを行うことを特徴とするマスタ同期方法である。
【発明の効果】
【００１０】
本発明によるマスタ同期プログラムおよびマスタ同期方法によれば、基本マスタとなるマスタと従属マスタとなるマスタとを一元管理し、同期させるマスタのデータ構造が異なる場合には、基本マスタからマスタのデータ構造を変換するルール適用処理を適用して従属マスタとデータ構造が等しい従属マスタ一時テーブルを作成し、さらにマスタ同期モジュールで従属マスタ一時テーブルのデータに従属マスタのデータを一致させるために従属マスタを変更するように構成したことにより、異なるアプリケーションで使用するデータ構造の異なるマスタを同期させることができ、基幹業務システムやアプリケーションの連携が容易になるという優れた効果が得られる。
【００１１】
また、基本マスタに変更を加えた場合、本発明によるマスタ同期プログラムおよびマスタ同期方法を実行することによりリアルタイムでのデータの同期が可能となり、既存のアプリケーションに修正を加えなくとも最新のデータを用いて業務を行うことができる、という利点もある。
【発明を実施するための最良の形態】
【００１２】
以下、本発明によるマスタ同期プログラムおよびマスタ同期方法の一実施形態を図面を参照して詳細に説明する。
図１は、本発明を実施するシステムの主要部分の構成図である。
図２は、基本マスタと従属マスタの例である社員マスタＡ及びＢのデータ構成図である。
図３は、基本マスタから従属マスタ一時テーブルを作成するルールを模式的に表した図である。
図４は、変換ルールをテーブルにまとめた図である。
図５は、変換ルールモジュール群から変換ルール登録ファイルを作成した図である。
図６は、マスタ更新検知処理のフローチャートである。
図７は、マスタの比較を模式的に表した図である。
図８は、マスタ同期モジュールのフローチャートである。
図９は、マスタ連携主従管理テーブルの例である。
図１０は、システム管理テーブルの例である。
図１１は、システム別マスタ管理テーブルの例である。
【００１３】
<構成の説明>
本発明のマスタ同期プログラムおよびマスタ同期方法を実施するコンピュータシステムの主要部分は、例えば図１に図示したように、異なるアプリケーションが作動するシステムＡ１０１およびシステムＢ１０６と、該両システムのデータ通信に用いるトランザクションテーブルの内容を送受信するトランザクション通信部１１０と、マスタに格納されたデータの同期を行うマスタ同期処理モジュール１１１と、基本マスタ１０４から従属マスタ一時テーブル１０５を生成するときに用いるルールを格納するルール格納データベース（以下、データベースをＤＢと略す）１１５とから構成される。
【００１４】
基本マスタ１０４を使用するシステムＡ１０１は、データ通信に用いるトランザクションテーブルＡ１０３と、マスタの同期時に基となる基本マスタ１０４と、ルール適用処理１１３で生成される従属マスタ一時テーブル１０５とから構成される。
さらに、システムＡ１０１は処理ａ１０２を行い、またルール適用処理１１３は基本マスタ１０４から従属マスタ一時テーブル１０５を生成するように構成される。
【００１５】
従属マスタ１０５を使用するシステムＢ１０６は、データ通信に用いるトランザクションテーブルＢ１０８と、データ内容を変更されて同期されるマスタである従属マスタ１０９とから構成される。
さらに、システムＢは処理ｂ１０７を行うように構成される。
【００１６】
マスタ同期モジュール１１１は、従属マスタ一時テーブル１０５と従属マスタとを比較して更新の有無を検知する更新検知処理１１２と、従属マスタの変更を行うことで基本マスタと同期させるテーブル同期処理とから構成される。
【００１７】
<動作の原理>
アプリケーションが異なると、例えば、図２に示すように、同じ社員データを格納する社員マスタであっても図２（Ａ）の社員マスタＡでは社員ＩＤが６桁なのに対し、図２（Ｂ）の社員ＩＤは４桁であるというように、通常マスタのデータ構造が異なり直接比較することは困難である。
【００１８】
本発明のマスタ同期プログラムおよびマスタ同期方法は、先ず、図７に示すように、ルール適用処理１１３が基本マスタ１０４を変換して従属マスタ１０９と同じデータ構造を持った従属マスタ一時テーブル１０５を生成する。次に、マスタ同期モジュール１１１がこの従属マスタ一時テーブル１０５と従属マスタ１０９を比較し、従属マスタ１０９を変更することによって、両マスタを同期させる。
【００１９】
<データ構成の説明>
先ず、基本マスタ１０４と従属マスタ１０９の例を図２を用いて説明する。
基本マスタ１０４である社員マスタＡ（基本）は、図２（Ａ）に示すように、例えば、社員に一意に割り振られた番号である「社員ＩＤ２０１」と、社員の氏名である「社員名２０２」と、カナ表記である社員氏名である「社員名カナ２０３」と、社員の住所の都道府県の部分を現す「住所（都道府県）２０４」と、社員の住所の市以下の部分を現す「住所（市以下）」とを備える。各項目の具体的なデータは、例えば、「社員ＩＤ２０１」が「０００００１」、「社員名２０２」が「鈴木  信一」、「社員名カナ２０３」が「スズキ  シンイチ」、「住所（都道府県）２０４」が「東京都」、「住所（市以下）」が「世田谷区・・・」である。
【００２０】
次に、従属マスタ１０９である社員マスタＢ（従属）は、図２（Ｂ）に示すように、例えば、社員に一意に割り振られた番号である「社員ＩＤ２０６」と、社員の姓である「社員名（姓）２０７」と、社員の名である「社員名（名）２０８」と、社員の住所である「住所」とを備える。各項目の具体的なデータは、例えば、「社員ＩＤ２０６」が「０００１」、「社員名（姓）２０７」が「鈴木」、「社員名（名）２０８」が「真一」、「住所」が「東京都世田谷区・・・」である。
【００２１】
このように、アプリケーションが異なると、各アプリケーションで使用するマスタの列数や桁数などのデータ構造が異なる。
【００２２】
また、あるマスタが基本マスタになるか従属マスタになるかは相手のマスタに依存する。そこで、その対応関係を管理するテーブルが必要となり、必要に応じて用意される。このマスタ基本−従属管理テーブルはどのマスタが基本マスタとなり、どのマスタが従属マスタとなるかを管理し、図９に示すように、例えば、マスタの組み合わせに一意に割り振られた番号である「基本−従属ＩＤ９０１」と、変換元となる基本マスタに一意に振られた番号を表す「基本マスタＩＤ９０２」と、変換先となる従属マスタに一意に振られた番号を表す「従属マスタＩＤ９０３」とを備え、各項目の具体的内容は、例えば、「基本−従属ＩＤ９０１」が「１０００１」、「基本マスタＩＤ９０２」が「２００」、「従属マスタＩＤ９０３」が「１００」である。
【００２３】
また、システムＩＤとシステム名の対応を管理する表は、例えば図１０のように、システムに一意に振られた番号を表す「システムＩＤ」と、システムの名称を格納する「システム名」を備え、各項目の具体的内容は、例えば、「システムＩＤ」が「１」、「システム名」が「業務システム」である。
【００２４】
また、システム毎の使用するマスタを格納する表は、図１１のように、例えば、マスタごとに一意に振られた番号を格納する「マスタＩＤ１１０１」と、システムごとに一意に振られた番号を格納する「システムＩＤ１１０２」と、具体的なマスタの名称を格納する「マスタ名１１３０」を備え、各項目の具体的な内容は、例えば、「マスタＩＤ１１０１」が「１００」、「システムＩＤ１１０２」が「１」、「マスタ名１１３０」が「勘定科目マスタ」である。
【００２５】
<従属マスタ一時テーブル１０５の生成動作の説明>
前述したように、マスタの同期は先ず基本マスタ１０４からルール適用処理１１３によって従属マスタ一時テーブル１０５を生成し、次に従属マスタ一時テーブル１０５と従属マスタ１０９を同期させる。
以下に、従属マスタ一時テーブル１０５の生成動作について説明する。
【００２６】
具体的な例を、図３を用いて説明する。
基本マスタ１０４の社員ＩＤは６桁であり、従属マスタ１０９の社員ＩＤは４桁であるので、ルール適用処理１１３は基本マスタ１０４の社員ＩＤ６桁を４桁にして従属マスタ一時テーブル１０５に出力する［ステップ３０１］。
【００２７】
次に、基本マスタ１０４の社員名は１項目として格納されているのに対し、従属マスタ１０９の社員名は姓と名に分かれている。従って、ルール適用処理１１３は基本マスタ１０４の社員名から姓と名を抽出して従属マスタ一時テーブル１０５に社員名（姓）と社員名（名）とに分けて出力する［ステップ３０２］，［ステップ３０３］。
【００２８】
次に、基本マスタ１０４では住所が住所（都道府県）と住所（市以下）とに分かれているのに対し、従属マスタ１０９では住所は都道府県と市以下が合わせて格納されている。従って、ルール適用処理１１３は基本マスタ１０４から住所（都道府県）と住所（市以下）を読み込んで結合し、従属マスタ一時テーブル１０５に出力する。
【００２９】
このように構成することで、ルール適用処理１１３はデータ構造の異なるマスタから、従属マスタのデータ構造と一致する従属マスタ一時テーブル１０５が生成できる。
【００３０】
以上で使用されたルールは図４に示す変換ルールテーブルにまとめられ、ルール格納ＤＢ１１５に格納される。
変化ルールテーブルの構成は、例えば図４に示すように、変換処理に一意に割り振られた「変換ＩＤ４０１」と、データを変換した後にデータを格納する項目を示す「変換項目先名４０２」と、変換に用いるルールのＩＤを格納する「適用ルールＩＤ４０３」と、前記適用ルール４０３で使用するデータを現す「入力パラメータ４０４」とを備える。各項目の具体的内容は、例えば図４に示すように、「変換ＩＤ４０１」が「１」、「変換項目先名４０２」が「社員マスタＢ.社員ＩＤ」、「適用ルールＩＤ４０３」が「Ａ」、「入力パラメータ４０４」が「社員マスタＡ．社員ＩＤ，４」である。「社員マスタＡ．社員ＩＤ，４」の意味は、基本マスタ１０４の社員マスタＡの社員ＩＤと変換後の桁数４を意味する。また、ここでは基本マスタ１０４に社員マスタＡを、従属マスタ１０９に社員マスタＢを使用している。
【００３１】
上記の、各適用ルールは図５に示すように、変換モジュール群５０２を変換ルール登録ファイル５０１にまとめられ、ルール格納ＤＢ１１５に格納される。
変換ルールモジュール群は、図５に示すように例えば、「文字切捨てモジュール」
であり、入力パラメータは２つである。
【００３２】
変換ルール登録ファイル５０１は、図５に示すように例えば、これらのモジュールに、モジュールに一意に振られた「ＩＤ」と、各モジュールを表す「モジュール名称」を備え、各項目の具体的な内容は、例えば「ＩＤ」が「Ａ」、「モジュール名称」が「文字切捨てルール」である。
【００３３】
これらのルールをルール適用処理１１３が基本マスタ１０４に適用する手順を、図６を用いて説明する。
先ず、ルール適用処理１１３は従属マスタテーブルの項目について前記「変換ルールテーブル」にルールが設定されているかを判定する［ステップ６０１］。設定されていなければ［ステップ６０３］に進む。設定されていれば［ステップ６０２］に進む。
【００３４】
「変換ルールテーブル」にルールが設定されていた場合、ルール適用処理１１３はその項目が変換に利用する変換ルールモジュールを呼び出して変換する［ステップ６０２］。
【００３５】
次に、ルール適用処理１１３は全ての項目について変換を完了しているか判定する［ステップ６０３］。全ての項目について変換を完了していた場合には［ステップ６０１］に戻る。全ての項目について変換が完了していれば処理を終了する。
【００３６】
以上のように、基本マスタ１０４に対してルール適用処理１１３を適用することにより、従属マスタ１０９と同じデータ構造を持った従属マスタ一時テーブル１０５を生成できる。
【００３７】
<マスタの同期動作の説明>
従属マスタ１０９と同じデータ構造を持った従属マスタ一時テーブル１０５が生成できたら、マスタ同期モジュール１１１は従属マスタ一時テーブル１０５と従属マスタ１０９を比較して従属マスタ１０９を変更することによって、基本マスタ１０４に従属マスタ１０９を同期させる。
【００３８】
同期の処理手順を、図８を用いて説明する。
処理１［５０２］は従属マスタ１０９へのレコードの追加を、処理２［５０３］は従属マスタ１０９からのレコードの削除を、処理３［５０４］は従属テーブル１０９のレコードの更新を行う。
【００３９】
前述したように、ルール適用処理１１３は基本マスタテーブルの各項目を従属マスタ一時テーブルの各項目に変換する［ステップ５０１］。
【００４０】
次に、更新検知処理１１２は従属マスタ一時テーブル１０５にあって、従属マスタ１０９にないレコードを探し［ステップ５１０］、当該のレコードがあるかどうか判定し［ステップ５１１］、ある場合には、テーブル同期処理１１４は従属マスタ１０９に当該のレコードを追加する［ステップ５１２］。その後［ステップ５１３］に進む。当該のレコードがない場合には［ステップ５１３］に進む。
【００４１】
次に、更新検知処理１１２は従属マスタ１０９にあって従属マスタ一時テーブル１０５にないレコードを探し［ステップ５１３］、当該のレコードがあるかどうか判定し［ステップ５１４］、ある場合には、テーブル同期処理１１４は従属マスタ１０９に当該のレコードを削除する［ステップ５１５］。その後［ステップ５１６］に進む。当該のレコードがない場合には［ステップ５１６］に進む。
【００４２】
次に、更新検知処理１１２は従属マスタ一時テーブル１０５の、基本マスタから変換した項目と従属マスタの項目を比較し、それらが異なるレコードを探し［ステップ５１６］、当該のレコードがあるかどうか判定し［ステップ５１７］、当該のレコードがある場合には従属マスタ１０９のそのレコードを更新する［ステップ５１８］。その後処理を終了する。当該のレコードがない場合には処理を終了する。
【００４３】
このように構成することにより、従属マスタ１０９に、どのレコードを追加し、削除し、更新するかが判定することができるので、基本マスタと従属マスタを同期させることができる。
【００４４】
<ＳＱＬ文の例>
以上の追加すべきレコード、削除すべきレコード、更新すべきレコードを探すＳＱＬ文の例を以下に示す。
ここでは、従属マスタ一時テーブル１０５と従属マスタ１０９が同じデータベースにある場合に、従属マスタ一時テーブル１０５の具体例として一時社員マスタＢを、また従属マスタ１０９の具体例として社員マスタＢを用いてＳＱＬ文を作成した。
【００４５】
従属マスタ１０９に追加すべきレコードを探す場合には、従属マスタ一時テーブル１０５にあって従属マスタ１０９にないレコードを探せばよいので、例えば次のＳＱＬ文を用いることができる。
ＳＥＬＥＣＴ  ＊  ＦＲＯＭ  一時社員マスタＢ  ＬＥＦＴ  ＪＯＩＮ  社員マスタＢ  ＯＮ  社員マスタＢ.社員ＩＤ  ＝  一時社員マスタＢ.社員ＩＤ  ＷＨＥＲＥ  社員マスタＢ.社員ＩＤ  ＩＳ  ＮＵＬＬ
【００４６】
この意味は、「一時社員マスタＢを左側として、社員マスタＢの社員ＩＤが一時社員マスタＢの社員ＩＤが等しいものに社員マスタＢを右側として結合させ、その中から社員マスタＢの社員ＩＤがＮＵＬＬのレコードを抽出せよ」である。
【００４７】
従属マスタ１０９から削除すべきレコードを探す場合には、従属マスタ一時テーブル１０５に無く従属マスタ１０９にあるレコードを探せばよいので、例えば次のＳＱＬ文を用いることができる。
ＳＥＬＥＣＴ  ＊  ＦＲＯＭ  社員マスタＢ  ＬＥＦＴ  ＪＯＩＮ  一時社員マスタＢ  ＯＮ  社員マスタＢ.社員ＩＤ  ＝  一時社員マスタＢ.社員ＩＤ  ＷＨＥＲＥ  一時社員マスタＢ.社員ＩＤ  ＩＳ  ＮＵＬＬ
【００４８】
この意味は、「社員マスタＢを左側として、社員マスタＢの社員ＩＤが一時社員マスタＢの社員ＩＤが等しいものに一時社員マスタＢを右側として結合させ、その中から一時社員マスタＢの社員ＩＤがＮＵＬＬのレコードを抽出せよ」である。
【００４９】
従属マスタ１０９の更新すべきレコードを探す場合には、従属マスタ一時テーブル１０５にも従属マスタ１０９にもあるレコードで各項目の内容が異なるものを探せばよいので、例えば次のＳＱＬ文を用いることができる。
ＳＥＬＥＣＴ  ＊  ＦＲＯＭ  社員マスタＢ  ＩＮＮＥＲ  ＪＯＩＮ  一時社員マスタＢ  ＯＮ  社員マスタＢ.社員ＩＤ  ＝  一時社員マスタＢ.社員ＩＤ  ＷＨＥＲＥ社員マスタＢ.社員名（姓）  ！＝  一時社員マスタＢ社員名（姓）  ＯＲ  社員マスタＢ.社員名（名）  ！＝  一時社員マスタＢ.社員名（名）  ＯＲ  社員マスタＢ.住所  ！＝  一時社員マスタＢ.住所
【００５０】
この意味は、「社員マスタＢの社員ＩＤと一時社員マスタＢの社員ＩＤが等しいものを、社員マスタＢと一時社員マスタＢの共通するレコードとして結合し、その中から、社員マスタＢの社員名（姓）と一時社員マスタＢの社員名（姓）が等しくないレコード、または、社員マスタＢの社員名（名）と一時社員マスタＢの社員名（名）が等しくないレコード、または、社員マスタＢの住所と一時社員マスタＢの住所が等しくないレコードを抽出せよ」である。
【００５１】
このように、従属マスタ一時テーブル１０５と従属マスタ１０９の比較は、簡単なＳＱＬ文で実現できる。
【００５２】
<マスタの基本と従属の区別>
以上述べてきた実施例では、アプリケーションＡ１０１で用いるマスタを基本マスタとし、アプリケーションＢ１０６で用いるマスタを従属マスタとした。
この、基本と従属の区別は相対的に決まるもので、一つのマスタでも同期する相手のアプリケーションによって基本マスタにも従属マスタにもなる可能性がある。このことを、図９を用いて説明すると、マスタＩＤが「１０２」のものは、マスタＩＤ「２０１」に対しては従属マスタ１０９であるが、マスタＩＤ「２０２」に対しては基本マスタ１０４となっても良い。
【００５３】
<マスタの種類>
各システムにはシステムＩＤを付して管理しても良い。図１０はその例であり、３種類のシステムが管理されており、例えばシステムＩＤが「１」のものは「業務システム」であり、システムＩＤが「２」のものは「会計システム」であり、システムＩＤが「３」のものは「人事給与システム」である。
これを用いて各種マスタを表で管理すると例えば図１１のようになる。図１１を見ると「補助科目マスタ」が、システムＩＤが「１」と「２」のシステムに存在し、「社員マスタ」が、システムＩＤが「２」と「３」のシステムに存在することがわかり、これらは同期させる必要があることがわかる。
【００５４】
本発明のマスタ同期プログラムおよびマスタ同期方法は、各アプリケーションのアドオン処理として実装しても良いし、外付けのツールとして実装しても良い。
【図面の簡単な説明】
【００５５】
【図１】本発明を実施するシステムの主要部分の構成図である。
【図２】基本マスタと従属マスタの例である社員マスタＡ及びＢのデータ構成図である。
【図３】基本マスタから従属マスタ一時テーブルを作成するルールを模式的に表した図である。
【図４】変換ルールをテーブルにまとめた図である。
【図５】変換ルールモジュール群から変換ルール登録ファイルを作成した図である。
【図６】マスタ更新検知処理のフローチャートである。
【図７】マスタの比較を模式的に表した図である。
【図８】マスタ同期モジュールのフローチャートである。
【図９】マスタ連携主従管理テーブルの例である。
【図１０】システム管理テーブルの例である。
【図１１】システム別マスタ管理テーブルの例である。
【符号の説明】
【００５６】
１０１：アプリケーションＡ、１０２：処理ａ、１０３：トランザクションテーブルＡ、１０４：基本マスタ、１０５：従属マスタ一時テーブル、１０６：アプリケーションＢ、１０７：処理ｂ、１０８：トランザクションテーブルＢ、１０９：従属マスタ、１１０：トランザクションデータ通信、１１１：マスタ同期モジュール、１１２：更新検知処理、１１３：ルール適用処理、１１４：テーブル同期処理、１１５：ルール格納ＤＢ。
【図１】
2007004226.tif 000003
【図２】
2007004226.tif 000004
【図３】
2007004226.tif 000005
【図４】
2007004226.tif 000006
【図５】
2007004226.tif 000007
【図６】
2007004226.tif 000008
【図７】
2007004226.tif 000009
【図８】
2007004226.tif 000010
【図９】
2007004226.tif 000011
【図１０】
2007004226.tif 000012
【図１１】
2007004226.tif 000013