(57)【特許請求の範囲】
【請求項１】
複数のモジュールから構成される顧客毎のプログラムを処理するプログラム処理装置において、
顧客に提供するためのモジュールを提供モジュールとして記憶するとともに、予め願客を区別する顧客コードを識別可能な顧客ディレクトリを作成し、顧客のプログラムで使用される顧客特有の複数の提供モジュール名を該顧客ディレクトリ内に格納して記憶した記憶手段と、
顧客コードが入力されると、
前記記憶手段に記憶された該顧客コードに対応する前記願客ディレクトリを検索して得られた該顧客コードに関連する提供モジュール名と、
当該顧客システムで呼び出されるモジュールを検出して得られた更新対象のモジュール名とを比較し、重複するモジュールを特定する関連付手段と、
前記関連付手段により特定された前記重複するモジュールを提供モジュールとして登録し、該登録した提供モジュールを前記記憶手段から顧客システムに組み込む組み込み手段と、
を備えたことを特徴とするプログラム処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プログラムを処理するシステムにおける、カスタマイズされたプログラムを顧客のシステムに組み込む機能を備えたプログラム処理装置及び記憶媒体に関する。
【０００２】
しかし、モジュールによっては、全顧客ではないが複数の顧客が利用する場合がある。そのような場合、第１２図のような顧客ごとの管理形態では、提供元システムの磁気ディスクにおいて、重複するモジュールが存在し、記憶容量に無駄が生じ、ひいては、容量が一杯になってしまうという問題があった。例えば、第１２図の提供元システムにおいては、顧客Ａと顧客Ｂのディレクトリに重複するモジュールｘ’が存在しており、磁気ディスクの使用容量に無駄を生じている。この記憶容量の問題を解決するために、別媒体等への退避等が行われていたが、本来の業務とは関係のない作業に工数が割かれるという、提供元の不効率な作業を生み出し、問題の本質的な解決には至らなかった。
【０００３】
さらに、このような管理形態では、モジュールの管理が煩雑となり、標準仕様についてのレベルアップに伴うカスタマイズ機能の変更が反映できず、顧客へのサービスが低下するという問題もあった。
【０００４】
【課題を解決するための手段】
かかる課題を解決するために、提供モジュールを顧客ごとに管理するのではなく、パッケージ内で一元管理すべく、本発明を、複数顧客向にカスタマイズされた複数のプログラムを記憶する記憶手段と、一の顧客を識別するための識別情報と当該顧客向にカスタマイズされたプログラムとを関連付ける関連付手段と、入力される識別情報に基づき当該関連付手段により特定されるプログラムをシステムに組み込む組込手段とから構成する。第１図は、本発明の原理構成を示す。同図において、１は複数顧客向にカスタマイズされた複数のプログラムを記憶する記憶手段を、４は、顧客を識別するための識別情報を、２は、識別情報４と当該顧客向にカスタマイズされたプログラムとを関連付ける関連付手段を、３は識別情報４に基づき関連付手段２により特定されるプログラムを顧客システム５に組み込む組込手段を示す。
【０００５】
本発明の処理フローを、第２図を用いて説明する。まず、あるカスタマイズ仕様を組み込む顧客の識別情報４を入力させ、バッファ等にその識別情報４を保持する（Ｓ１）。関連付手段２は、顧客システムで使用されているモジュールを検出し、図示しない作業用ファイルＡにそのモジュール名を書き込む（Ｓ２）。関連付手段２は、識別情報４と前記作業用ファイルＡに基づき、記憶手段に格納されているプログラムを特定する（Ｓ３）。関連付手段２は、当該特定した結果を作業ファイルＢに書き込む（Ｓ４）。組込手段３は、当該作業ファイルＢの内容に基づき、記憶手段１内のプログラムを顧客システム５のライブラリに登録し、カスタマイズされたプログラムの組み込みを完了する（Ｓ５）。
【０００６】
【実施の形態】
第３図から第１２図を用いて、本発明の実施の形態を説明する。説明において、引用するＳ１等の符号は、第２図のフローチャートにおける同一符号の動作を示す。第３図は、顧客システムにおける本発明の第一の実施の形態を示す図である。同図において、第１図と同一の符号を付されたものは、同一対象を示す。なお、第２図中、入力装置５１、出力装置５２、入出力制御装置５３、ＣＰＵ５４、主記憶装置５５、ＤＡＳＤ５６は、第１図における顧客システム５相当する。関連付手段２および組込手段３は、主記憶装置５５内にある。６は本発明による組み込み前の顧客システムに備わる現モジュール群を示す。現モジュール群６において、Ｆ１ＳＴは、機能Ｆ１の標準仕様であることを示す。同様に、記憶手段１において、Ｆ１ＳＴは、機能Ｆ１の標準仕様であることを示す。第４図は、顧客コードの入力を求める画面を示す図を示す。第５図、第６図および第６図は、関連付手段による組み込むべきプログラムを特定する態様例を示す図を示す。第８図は、顧客への提供形態が記憶媒体による場合の本発明の第二の実施の形態を示す。第９図は、顧客への提供形態が回線経由の場合の本発明の第三の実施の形態を示す。第１０図は、顧客システムと通信するためのテーブルを示す。第１１図は、顧客システムに送信する通信データの構造を示す。
【０００７】
第３図を用いて、本発明の第一の実施の態様を説明する。まず、本発明を実現したプログラム（以下、「本発明プログラム」という）は、例えば第４図に示すような画面を出力装置５２に表示させ、利用者に顧客コード４の入力を求める（Ｓ１）。なお、本発明プログラムは、関連付手段２と組込手段３を含み、主記憶装置５５にある。顧客コード４としてＡ００１が入力されると、本発明プログラムは、当該顧客コード４を、主記憶装置５５の図示しないバッファ領域に保持する。
【０００８】
第６図に示すように、関連付手段２は、現在顧客システム６で呼び出されるモジュールを検出し、主記憶装置５５内の図示しない作業ファイルＡに書き込む（Ｓ２）。関連付手段２は、当該作業ファイルＡと前記顧客コード４とに基づいて、記憶手段１の提供モジュールから顧客システムに組み込むべきモジュールを特定する（Ｓ３）。関連付手段２は、当該特定したモジュール名を主記憶装置５５内の作業ファイルＢに書き込む（Ｓ４）。組込手段３は、当該作業ファイルＢに基づき、記憶手段１内の提供モジュールから組み込むべきモジュールを選択して、顧客システムのライブラリに登録し、処理を終了する（Ｓ５）。
【０００９】
ステップＳ４およびステップＳ５におけるモジュールの顧客システムへの組み込み方について、第５図、第６図および第６図を用いて、説明する。例えば、提供モジュールが、第５図に示されるように、ディレクトリ名を顧客コードとするディレクトリ配下に、機能を示すモジュール名が格納されている提供形態を考える。提供モジュールは、第５図に示すように、顧客コードＡ００１に対しては、そのコードで表される顧客向けにカスタマイズされたモジュールＸ０１、Ｙ０１およびＺ０１が記憶されている。さらに、説明の便宜のため、関連付手段２が、作業ファイルＡに、現顧客システムで使用されるモジュール名として、Ｘ０１、Ｘ０２およびＹ０１を作業ファイルＡに書き込んだとする。まず、関連付手段２は、バッファ領域内の顧客コードＡ００１に基づき、記憶手段１内のディレクトリ名が「Ａ００１」であるディレクトリを検索する。次に、関連付手段２は、作業ファイルＡの内容とディレクトリＡ００１配下の提供モジュール名とを比較し、その重複部分、この場合モジュールＸ０１、Ｙ０１を、顧客コードＡ００１と共に主記憶装置５５内の図示しない作業ファイルＢに書き込む。重複部分以外のモジュールについては、以下のように扱われる。現顧客システム内にはあるが、提供モジュールにはないモジュールＸ０２については、本発明プログラムは、何も処理しないが、現顧客システム内にはないが、提供モジュールにはあるモジュールＺ０１については、「顧客システムには、モジュールＺ０１は存在しません」等のエラーメッセージを出力装置に表示させる。Ｘ０２は、単に置き換えないまま、つまり標準仕様のまま使用することを意味するが、Ｚ０１は、提供モジュールに何らかのミスが生じたと考えるため、その旨を通知する必要があるからである。
【００１０】
組込手段３は、作業ファイルＢの内容に基づき、記憶手段１内の提供モジュールから、ディレクトリ１に基づき、記憶手段１の提供モジュールから、ディレクトリＡ００１配下のモジュールＸ０１およびＹ０１を顧客システムのライブラリ６２に登録する。その際、組込手段３は、提供モジュール名Ｘ０１、Ｙ０１をそのまま顧客システムでのモジュール名として登録する。これは、顧客システムのプログラム（一般にはロードモジュール）に修正を加えずに、システム変更をするためである。
【００１１】
次に、第二の提供形態について、第６図を用いて、説明する。第６図は、関係付手段、組込手段の動作以外は、第５図と同様であるので、重複部分の説明を省き、関係付手段、組込手段の動作のみについて説明する。関係付手段２は、バッファ領域内の顧客コードＡ００１を参照し、記憶手段１内の提供モジュールからディレクトリ名が「Ａ００１」であるディレクトリを検索し、当該結果に基づき、組込手段３は、そのディレクトリ配下にある提供モジュールすべてを顧客システムに組み込む。この提供形態では、関係付手段は、顧客システム内のモジュールを検索することなく、組込手段は、．顧客コードの一致したディレクトリ配下にあるモジュールすべてを、顧客システムに組み込む。
【００１２】
次に、第三の提供形態について説明する。第７図は、提供モジュール名が、顧客コード（Ａ００１等）をプリフィックスとするモジュール名（Ａ００１＿Ｘ０１等）で表されている場合の提供モジュールの特定態様を示す。提供モジュールは、第７図に示すように、提供モジュール名は、「顧客コード＿モジュール名」というように記憶手段１に記憶されている。第５図における説明の場合と同様に、説明の便宜のため、関連付手段２が、作業ファイルＡに、現顧客システムで使用されるモジュール名として、Ｘ０１、Ｘ０２およびＹ０１を作業ファイルＡに書き込んだ場合を考える。まず、関連付手段２は、バッファ領域内の顧客コードＡ００１に基づき、記憶手段１内の提供モジュール名が「Ａ００１」で始まるモジュールＡ００１＿Ｘ０１、Ａ００１＿Ｙ０１、およびＡ００１＿Ｚ０１を検出する。次に、関連付手段２は、作業ファイルＡの内容と当該検出結果とを比較し、その重複部分の提供モジュール名から顧客コード部分を削除して、モジュール名Ｘ０１およびＹ０１を、顧客コードＡ００１と共に主記憶装置５５内の図示しない作業ファイルＢに書き込む。重複部分以外のモジュールについては、既に第５図の説明でしたように、取り扱われる。
【００１３】
組込手段３は、作業ファイルＢの内容に基づき、記憶手段１内の提供モジュールから、組み込むべきモジュールＸ０１、Ｙ０１を選択して、顧客システムのライブラリ６２に登録する。その際、組込手段３は、第５図の場合と同様に、モジュール名Ｘ０１、Ｙ０１をそのまま顧客システムでのモジュール名として登録する。
【００１４】
第８図は、第二の実施の形態、顧客への提供形態が記憶媒体による場合の本発明の実施の形態を示す。同図において、７は、記憶媒体の一例である磁気テープ（ＭＴ）を示す。同図において第３図と同一の符号は、同一の対象を示す。ＭＴ７は、第８図に示すように、関連付け手段２をコンピュータに実行させるための関連付プログラム２１、組込手段３をコンピュータに実行させるための組込プログラム３１および複数の顧客向けにカスタマイズされたモジュールを記憶する。顧客は、ＭＴ７を購入し、自分のシステムのＤＡＳＤにＭＴ７の内容を複写する。入力装置を介して本発明プログラムを起動させると、システム側は、ＤＡＳＤにある関連付プログラム２と組込プログラム３を主記憶装置に読み出し、結局、第二の実施の形態は、第３図と同様のシステム構成図になる。したがって、後の動作等は、既に説明した第３図のものと同様である。
【００１５】
第９図は、第三の実施の形態、顧客への提供形態が回線経由による場合の本発明の実施の形態を示す。同図において、８は提供元システムを示し、第３図と同一の符号は、同一の対象を示す。この場合、複数の顧客毎にカスタマイズされたモジュールを記憶する記憶手段１は、提供元システム８にある。提供元システムの主記憶装置には、関連付プログラム２と組込手段３が記憶される。通信回線９は、提供元システムと顧客システムを接続する。提供元システム８は、通信回線９を用いて、顧客システム５６に組み込むべきモジュールを送信する。
【００１６】
同図を用いて、本発明の第三の実施の形態を説明する。本発明プログラムは、例えば、第４図に示すような画面を入出力装置５１に表示させ、提供者に顧客コード４の入力を求める（Ｓ１）。顧客コード４として「Ａ００１」が入力されると、本発明プログラムは、当該顧客コード４を、主記憶装置５５の図示しないバッファ領域に保持する。
【００１７】
本発明プログラムは、顧客システムとの通信を確立すべく、主記憶装置５５内にあるテーブル（第９図）を参照する。当該テーブルは、顧客コード、顧客名およびその電話番号からなる。本発明プログラムは、当該顧客コード４により特定される当該テーブル内の電話番号に基づき、通信回線９を介して、顧客システムと通信を確立する。本発明プログラムは、通信回線９を介して、顧客システムからの提供承認通知を受けると、顧客システム内で承認されている範囲において参照されるモジュール名を特定するコマンドを、通信回線９を介して送信し、通信を切断する。当該コマンドは、顧客システム内で承認されている範囲内で参照されるモジュール名およびその登録されているライブラリ名を検索し、再び通信を確立し通信回線９を介して、提供元システムに返信し通信を切断する。提供元システムは、その検索結果を主記憶装置内の図示しない作業ファイルＡに書き込む（Ｓ２）。
【００１８】
本発明プログラムは、バッファ領域内の顧客コード４と作業ファイルＡに基づき、顧客システムに組み込むべきモジュール名を特定する（Ｓ３）。本発明プログラムは、その特定した結果を、主記憶装置内の図示しない作業ファイルＢに書き込む（Ｓ４）。このステップＳ３およびステップＳ４における組み込むべきモジュールの特定の仕方は、既に第５図、第６図または第７図でしたものと同様である。
【００１９】
本発明プログラムは、作業ファイルＢに基づき、第１１図に示すような通信データを作成する。この通信データは、同図に示すように、通信先の電話番号、組込プログラム３、顧客システムにおいてモジュールを組み込むべきライブラリ名および組み込むべきモジュール名とそのモジュールからなる。本発明プログラムは、記憶手段１内の提供モジュールを顧客システムのライブラリに登録するために、顧客システムとの通信を確立する。本発明プログラムは、通信回線９を介して、当該通信データを顧客システムに送信し、通信を切断する。当該通信データが顧客システムに受信されると、当該通信データ内の組込プログラム３は、同データ内に示されるライブラリ名を検索し、そのモジュールをそのライブラリに登録し、処理を終わる（Ｓ５）。
【００２０】
【発明の効果】
本発明により、提供元システムにおける提供モジュールの重複を無くすことにより、当該システムの磁気ディスクの使用容量を無駄なく使用することができるため、人手を必要とする不効率な作業が発生することもない。また、管理形態を一元管理としたこととしたため、標準パッケージのレベルアップに伴う顧客固有の仕様の変更にも対応が取りやすく、提供元の負担軽減、ひいては、顧客へのサービスレベルの向上へとつながる。
【図面の簡単な説明】
【図１】本発明の構成を示す原理図
【図２】本発明の処理フローを示す図
【図３】実施の形態を示す図（１）
【図４】顧客コードの入力を求める図面を示す図
【図５】関連付手段によるプログラムの特定を示す図（１）
【図６】関連付手段によるプログラムの特定を示す図（２）
【図７】関連付手段によるプログラムの特定を示す図（３）
【図８】本発明の実施の形態を示す図（２）
【図９】本発明の実施の形態を示す図（３）
【図１０】顧客システムと通信するためのテーブルを示す図
【図１１】通信データの構造を示す図
【図１２】従来技術を示す図
【図１】
0003597924.tif 000002
【図２】
0003597924.tif 000003
【図３】
0003597924.tif 000004
【図４】
0003597924.tif 000005
【図５】
0003597924.tif 000006
【図６】
0003597924.tif 000007
【図７】
0003597924.tif 000008
【図８】
0003597924.tif 000009
【図９】
0003597924.tif 000010
【図１０】
0003597924.tif 000011
【図１１】
0003597924.tif 000012
【図１２】
0003597924.tif 000013