(57)【要約】【課題】業務アプリケーションの開発終了後に、各種のマスタデータの変更が発生しても、業務アプリケーションの修正を行う必要のない情報処理装置、情報処理方法、及びプログラムを提供すること。【解決手段】各種のマスタテーブルの管理を一元管理するデータテーブルを用意し、そのデータテーブルで管理されているマスタデータのメンテナンス画面を用意する。そしてメンテナンス対象のマスタデータの区分を選択させるとメンテナンス用画面にそのデータ区分のマスタデータを表示させ、データの変更入力を受け付ける。【選択図】図５
2010146330.tif 000002
【特許請求の範囲】
【請求項１】
データ種別を示すコード区分情報を管理する第一のデータテーブル、前記コード区分情報で特定されるデータのデータ構造を定義したデータ構造情報を示すコード明細情報を管理する第二のデータテーブル及び前記第一のデータテーブルで管理されている複数のデータ種別のデータを一元管理する第三のデータテーブルを備えるデータベースシステムにおいて、データのメンテナンスを行うための情報処理装置であって、
前記第一のデータテーブルで管理されているコード区分情報のうち、メンテナンス対象となるコード区分情報の指定を受け付ける受付手段と、
前記受付手段で受け付けたコード区分情報に対応するコード明細情報を前記第二のデータテーブルから取得する第一の取得手段と、
前記第三のデータテーブルで管理されているデータのうち、前記受付手段で指定を受け付けたコード区分情報に対応するデータのメンテナンス情報の入力を受け付けるメンテナンス画面情報を、前記取得手段で取得したコード明細情報に従って生成する生成手段と、
前記メンテナンス画面情報に基づき表示部に表示されるメンテナンス画面を介して入力されたデータのメンテナンス情報とともに、データテーブルの更新要求を受け付ける更新受付手段と、
前記更新要求手段でデータテーブルの更新要求を受け付けた後に、前記メンテナンス情報に基づいて前記第三のデータテーブルを更新する更新手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記データ構造情報は、前記データを構成するデータ項目及び当該データ項目の入力規則で構成されており、
前記更新受付手段で受け付けた前記メンテナンス情報が前記入力条件を満たしているかを判断する判断手段をさらに備え、
前記更新手段は前記判断手段で前記メンテナンスが前記入力条件を満たしていると判断した場合に、前記メンテナンス情報に基づいて前記第三のデータテーブルを更新すること
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記入力規則には、前記第一のデータテーブルに登録されている他のデータ区分の主キーとなるデータに入力を限定する入力限定条件が含まれ、
データ項目の入力規則として前記入力限定条件が設定されているデータ項目のメンテナンス情報を前記更新受付手段が受け付けた場合には、
前記判断手段は、
前記入力限定条件が設定されているデータ項目の変更情報として受け付けたデータが、前記他のデータ区分の主キーとなるデータとして前記第三のデータテーブルに登録されている場合に、前記データ項目の変更情報が前記入力規則を満たしていると判断すること
を特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記第三のデータテーブルから前記受付手段で指定を受け付けたデータベースのデータを取得する第二の取得手段と、
前記第二の取得手段で取得したデータを前記データメンテナンス画面情報に設定する設定手段と
を備えることを特徴とする請求項１乃至３のいずれか１項記載の情報処理装置。
【請求項５】
前記第三のデータテーブルは、前記データの主キーとなるデータ項目を管理する項目列と、前記データの内容を示すデータ項目を管理するデータ項目列が規定されていること
を特徴とする請求項１乃至４のいずれか1項に記載の情報処理装置。
【請求項６】
データ種別を示すコード区分情報を管理する第一のデータテーブル、前記コード区分情報で特定されるデータのデータ構造を定義したデータ構造情報を示すコード明細情報を管理する第二のデータテーブル及び前記第一のデータテーブルで管理されている複数のデータ種別のデータを一元管理する第三のデータテーブルを備えるデータベースシステムにおいて、データのメンテナンスを行うための情報処理装置よって行われる情報処理方法であって、
前記第一のデータテーブルで管理されているコード区分情報のうち、メンテナンス対象となるコード区分情報の指定を受け付ける受付工程と、
前記受付手段で受け付けたコード区分情報に対応するコード明細情報を前記第二のデータテーブルから取得する第一の取得工程と、
前記第三のデータテーブルで管理されているデータのうち、前記受付手段で指定を受け付けたコード区分情報に対応するデータのメンテナンス情報の入力を受け付けるメンテナンス画面情報を、前記取得手段で取得したコード明細情報に従って生成する生成工程と、
前記メンテナンス画面情報に基づき表示部に表示されるメンテナンス画面を介して入力されたデータのメンテナンス情報とともに、データテーブルの更新要求を受け付ける更新受付工程と、
前記更新要求工程でデータテーブルの更新要求を受け付けた後に、前記メンテナンス情報に基づいて前記第三のデータテーブルを更新する更新工程と、
を備えることを特徴とする情報処理方法。
【請求項７】
請求項６に記載の情報処理方法をコンピュータに実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースのマスタデータの編集を行う技術に関し、特にデータベースのマスタデータ追加等があった場合にも、当該マスタデータのメンテナンス画面を新たに生成することなく、マスタデータの編集が可能な情報処理装置、情報処理装置、及びプログラムに関する。
【背景技術】
【０００２】
業務システムの開発を行う際には、たとえば「製品区分」や「顧客区分」等といったコード区分を設計し、システムの各アプリケーションから参照できるように、データベースに格納する必要がある。従来の業務システム開発では、「製品区分マスタ」や「顧客区分マスタ」のように、それぞれのコード区分に対応したデータベースのテーブル（以後「マスタデータ」という）を用意し、これらをマスタデータをメンテナンスする画面に関しても「製品区分マスタメンテナンス画面」、「顧客区分マスタメンテナンス画面」等のようにコード区分毎にそれぞれに対応するメンテナンス画面を用意することで実装が行われてきた。また、マスタデータを操作するためのデータベース言語についても、マスタデータ毎に作成し用意している。
【０００３】
これらメンテナンス画面等はマスタデータのデータ項目の追加等の変更が発生した場合や新規のマスタデータが生成される際には、それら変更に対応すべく、プログラムの変更等の追加開発を行わなければならなかった。マスタデータの設計に変更する度にこのような開発作業が発生してしまい、その都度、お金と時間を使い開発をせざるを得なため、マスタデータの設計の変更の必要性が発生した場合にも柔軟にその設計変更を行うことは困難であった。
【０００４】
そこで特許文献１には、データベースのデータ項目の柔軟に変更することができるとともに、その設計変更に応じて、各種画面のレイアウトを自動的に修正するための技術が開示されている。この発明によれば、データベースの項目変更に応じて各種画面の変更を行う必要がなくなり、データベースのデータ項目の変更に付随して発生する開発を行わなくても良くなり、柔軟にデータベースの設計変更に対応することが可能となり生産性の向上につながる。
【特許文献１】特開２００５−２４２５１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
各々のコードの体系はほとんど、コードと名称の1対1の関係によるシンプルなデータ構造であるという点で共通しており、データベースの各テーブルの構造もコードを主キー項目とし、名称等を付属項目とするだけの簡単なレイアウトで一致され、メンテナンス画面に関しても同様に、各々のコードに対してほぼ同一のレイアウトのものが実装されている。
【０００６】
１つのシステムでは、データのコード区分の数が少なくても数十件はあり、大規模なシステムでは数百件に及ぶものも少なくない。上記で示したとおり同じような構造を持つコード区分のそれぞれに対応するマスタデータを別個に作成し、それらマスタデータ毎にメンテナンス用の画面をそれぞれ実装するのは、システムを開発する上で極めて非生産的である。またシステムの利用者にとっては、いちいちコード毎に異なるメンテナンス画面を起動してマスタデータのメンテナンスを行うというのは不便であり、セキュリティや内部統制の観点からみても、マスタデータのメンテナンスの画面を散乱させることは好ましくない。複数のコードデータを統一的に管理できるデータベース管理やそれらコードデータに統一的に利用できるマスタメンテナンス画面の作成を行うことができれば、個々のマスタメンテナンス画面の作成や、コードデータの変更に伴う修正作業なども行わずにすむ。
【０００７】
上記した課題に鑑み、本願発明は、複数のコードデータを統一的に管理し、コードデータに統一的に利用できるマスタデータのメンテナンス画面の作成を行うことで、その画面を介してのマスタデータのメンテナンスを行うことが可能な情報処理装置、情報処理方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の課題を解決するために、本願発明の情報処理装置は以下の構成を備える。即ち、
データ種別を示すコード区分情報を管理する第一のデータテーブル、前記コード区分情報で特定されるデータのデータ構造を定義したデータ構造情報を示すコード明細情報を管理する第二のデータテーブル及び前記第一のデータテーブルで管理されている複数のデータ種別のデータを一元管理する第三のデータテーブルを備えるデータベースシステムにおいて、データのメンテナンスを行うための情報処理装置であって、
前記第一のデータテーブルで管理されているコード区分情報のうち、メンテナンス対象となるコード区分情報の指定を受け付ける受付手段と、
前記受付手段で受け付けたコード区分情報に対応するコード明細情報を前記第二のデータテーブルから取得する第一の取得手段と、
前記第三のデータテーブルで管理されているデータのうち、前記受付手段で指定を受け付けたコード区分情報に対応するデータのメンテナンス情報の入力を受け付けるメンテナンス画面情報を、前記取得手段で取得したコード明細情報に従って生成する生成手段と、
前記メンテナンス画面情報に基づき表示部に表示されるメンテナンス画面を介して入力されたデータのメンテナンス情報とともに、データテーブルの更新要求を受け付ける更新受付手段と、
前記更新要求手段でデータテーブルの更新要求を受け付けた後に、前記メンテナンス情報に基づいて前記第三のデータテーブルを更新する更新手段と、
を備えることを特徴とする。
【０００９】
上記の課題を解決するために、本願発明の情報処理方法は以下の構成を備える。即ち、
データ種別を示すコード区分情報を管理する第一のデータテーブル、前記コード区分情報で特定されるデータのデータ構造を定義したデータ構造情報を示すコード明細情報を管理する第二のデータテーブル及び前記第一のデータテーブルで管理されている複数のデータ種別のデータを一元管理する第三のデータテーブルを備えるデータベースシステムにおいて、データのメンテナンスを行うための情報処理装置よって行われる情報処理方法であって、
前記第一のデータテーブルで管理されているコード区分情報のうち、メンテナンス対象となるコード区分情報の指定を受け付ける受付工程と、
前記受付手段で受け付けたコード区分情報に対応するコード明細情報を前記第二のデータテーブルから取得する第一の取得工程と、
前記第三のデータテーブルで管理されているデータのうち、前記受付手段で指定を受け付けたコード区分情報に対応するデータのメンテナンス情報の入力を受け付けるメンテナンス画面情報を、前記取得手段で取得したコード明細情報に従って生成する生成工程と、
前記メンテナンス画面情報に基づき表示部に表示されるメンテナンス画面を介して入力されたデータのメンテナンス情報とともに、データテーブルの更新要求を受け付ける更新受付工程と、
前記更新要求工程でデータテーブルの更新要求を受け付けた後に、前記メンテナンス情報に基づいて前記第三のデータテーブルを更新する更新工程と、
を備えることを特徴とする。
【発明の効果】
【００１０】
本願発明によれば、顧客マスタや製品マスタといったマスタデータの種類ごとのデータベースのテーブル（マスタデータ）を構築する必要がなくなり、また、メンテナンス画面も複数のコード区分で統一的な画面として設計できるので、開発効率を上げることが可能となる。また、アプリケーションプログラムの開発終了後に新たなマスタデータの追加が必要になった場合にも、追加開発を行うことなく新規のコード区分に応じたマスタデータに対応することが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して、本願発明の実施の形態の一例について説明する。
【００１２】
図１は、本願発明における情報処理システムの一例を示すシステム構成図である。図中１０１は管理サーバであって、後述する各種のマスタデータを保存するとともに、管理者端末１０２からの要求に従って、前記各種のマスタデータの変更を行うための画面を管理端末者１０２に対して送信し、その画面を介してのマスタデータの変更要求を受け付ける。また、変更要求に応じて管理者端末１０２において行われたマスタデータの変更をデータベースに反映させる。
【００１３】
１０２は管理者端末であって、マスタデータの新規作成、編集、更新等の作業を行う管理者が使用する情報処理装置である。管理者はこの管理者端末１０２を操作して、各種の要求を管理サーバ１０１に対して行うことになる。
【００１４】
１０３−１、１０３−２はクライアント端末（以下、まとめてクライアント端末１０３とする）であって、管理サーバ１０１が管理する各種マスタデータを使用するアプリケーションプログラム若しくはそれらマスタデータを使用するためのウェブアプリケーションプログラムを実行させるためのウェブブラウザがインストールされており、それらアプリケーションプログラムを利用するユーザが操作する情報処理装置である。
【００１５】
１０４はローカルエリアネットワーク（ＬＡＮ）等のネットワークであって、上記装置を通信可能に相互接続する。以上が本願発明における情報処理システムの一例である。
【００１６】
図２は、図１の管理サーバ１０１のハードウェア構成の一例を示すブロック図である。
【００１７】
ＣＰＵ２０１は、システムバス２１２に接続された各デバイスを統括的に制御する。ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア、一時退避領域等として機能する。ＲＯＭ２０３は、ブートプログラムが記憶されている。
【００１８】
入力制御部２０４は、キーボードやマウス等のポインティングデバイスで実現される入力部２０５からの入力を制御する。
【００１９】
表示制御部２０６は、ＣＲＴモニタや液晶モニタ等で実現される表示部２０７による表示を制御する。
【００２０】
外部メモリ制御部２０８は、ＣＰＵ２０１の制御プログラムであるオペレーションシステム（ＯＳ）や、管理サーバ１０１が行う各種機能を実現するための各種プログラムや各種ファイル等を記憶する外部メモリ２０９へのアクセスを制御する。尚、外部メモリ２０９としては、ハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）、ＰＣＭＣＩＡカードスロットにアダプタを介して接続可能なコンパクトフラッシュ（登録商標）やスマートメディア等が挙げられる。また、本実施形態における処理では、ＣＰＵ２０１により外部メモリ２０９に記録されているプログラムが必要に応じてＲＡＭ２０２にロードされ、該プログラムの制御に基づき、ＣＰＵ２０１によって実行されるものとする。
【００２１】
外部機器Ｉ／Ｆ（インターフェース）２１０は、当該コンピュータに外部機器を接続するためのインターフェースである。
【００２２】
また、通信制御部２１１は、ＬＡＮ１０４等のネットワークを介した他の装置との通信制御処理を実行する。
【００２３】
以上が、管理サーバ１０１のハードウェア構成の一例である。尚、図１の管理者端末１０２やクライアント端末１０３も管理サーバ１０１と同様のハードウェア構成を有している。
【００２４】
図３は、管理サーバ１０１によって行われるマスタデータメンテナンス処理の一例を示す図である。この処理は、管理サーバ１０１の外部メモリ２０９に保存されている、本処理を管理サーバ１０１のＣＰＵ２０１に実行させるためのプログラムによる制御に従って、ＣＰＵ２０１が行うことになる。
【００２５】
まず、管理サーバ１０１のＣＰＵ２０１は、管理者端末１０２もしくはクライアント端末１０３からのログイン要求を受け付けると、ログイン処理に必要な情報（例えばＩＤ、パスワード）をクライアント端末１０３から受信し、ログイン処理を行う（ステップＳ３０１）。
【００２６】
尚、以降の説明では、ユーザ権限は「管理者権限」と「一般権限」の２種類があるものとして説明する。しかし、その他複数の異なる権限レベルのユーザ権限を設定しても構わないのは言うまでもない。また、本実施例の説明では、理解を容易にするためにデータの種類を「重要データ」と「一般データ」とし、重要データは管理者権限がないと追加、変更、削除等の編集処理を行うことが出来ないデータ、一般データは、一般ユーザでも（当然管理者権限ユーザも）追加、変更、削除等の編集を行うことができるデータとして説明する。尚、データの変更権限レベルは２段階ではなく、それよりも多段階に設定しても構わないことは言うまでもない。
【００２７】
マスタデータメンテナンス処理の説明に戻る。
【００２８】
次に、ＣＰＵ２０１がステップＳ３０１のログイン処理を行った結果、要求を行ってきたユーザが管理者権限を有するユーザであった場合、新規コード区分の作成要求を受け付けたかを判断する（ステップＳ３０３）。新規コード区分の作成要求を受け付けた場合には（ステップＳ３０３でＹＥＳ）、新規コード区分の作成処理を行う（ステップＳ３０４）。尚、この処理の詳細については、図４を参照して後述する。
【００２９】
また、ＣＰＵ２０１は、重要データの変更要求を受け付けたかを判断する（ステップＳ３０５）。重要データの変更要求を受け付けたと判断した場合には（ステップＳ３０５でＹＥＳ）、コードマスタテーブル変更処理を行うことになる（ステップＳ３０６）。尚、この処理の詳細については、図５を参照して後述する。
【００３０】
新規コード区分の作成要求や重要データの変更要求は、管理者端末１０２の表示部２０７に表示される不図示の画面中のメニューを入力部操作で指示することにより、管理サーバ１０１に対して送信することが可能である。尚、一般ユーザ権限であるユーザのログイン後の初期画面（不図示）には、新規コード区分の作成要求や重要データの変更要求を行うためのメニューが表示されない。
【００３１】
ＣＰＵ２０１は一般データの変更処理要求を受け付けたかを判断する（ステップＳ３０７）。一般データの変更処理要求を受け付けたと判断した場合には（ステップＳ３０７でＹＥＳ）、コードマスタテーブル変更処理を行うことになる（ステップＳ３０８）。この処理の詳細についても、図５を参照して後述する。
【００３２】
そして、以上のステップＳ３０２〜Ｓ３０８の処理を、終了指示を受け付ける（ステップＳ３０９でＹＥＳと判断する）まで行うことになる。そして、終了指示を受け付けたと判断した場合には（ステップＳ３０９でＹＥＳ）、ログアウト処理を行い（ステップＳ３１０）、本処理を終了する。以上が、管理サーバ１０１によって行われるマスタデータのメンテナンス処理の一例の説明である。
【００３３】
次に、管理サーバ１０１が管理している各種のデータテーブルについて説明する。
【００３４】
管理サーバ１０１は、図１７に示すコードマスタ管理テーブル、図１８に示すコードマスタ管理明細テーブル、及び図１９に示すコードマスタテーブルを管理している。
【００３５】
コードマスタ管理テーブル１７００は、コードマスタテーブル１９００で管理しているデータの種類（コード区分）を管理するためのテーブルであって、コード区分ＩＤ１７０１、コード名１７０２、変更レベル１７０３等から構成される。
【００３６】
コード区分ＩＤ１７０１は、コード区分を一意に識別する識別情報を示している。コード名１７０２は、当該コード区分の名称を保存管理している。変更レベル１７０３は、当該データの種類を変更できるユーザの権限を管理している。例えば「０」が設定された場合は管理者のみが変更可能（つまりは重要データ）、「１」が設定された場合には一般ユーザでも変更が可能（つまりは一般データ）等である。尚、前述のように、ユーザの権限レベルをさらに細かいレベルで設定している場合には、それぞれの権限レベルに応じて変更できるコード区分の種類を設定することも勿論可能である。
【００３７】
コードマスタ管理明細テーブル１８００は、コードマスタテーブル１９００で管理しているそれぞれのコード区分に対応するデータのデータ項目やその入力制限などを規定したテーブルであり、コード区分１８０１、項目ＮＯ１８０２、項目名１８０３、必須区分１８０４、項目属性１８０５、制限桁数１８０６、検索条件区分１８０７、表示区分１８０８、条件区分１８０９等から構成されている。
【００３８】
コード区分ＩＤ１８０１には、いずれのコード区分（データ定義）の明細情報を示すかを特定するための識別情報が登録される。図１７に示すコードマスタ管理テーブル１７００のコード区分ＩＤ１７０１と対応する。
【００３９】
項目ＮＯ１８０２には、このレコードで管理されるデータ項目が、後述するコードマスタテーブル１９００中の当該コード区分に対応するデータレコードの何番目のデータフィールドに登録されるデータであるかを示す情報が登録される。尚、本実施例の説明では、この項目ＮＯに１〜３が指定されているデータは、データレコードを一意に識別するためのキー情報となる項目を示している。
【００４０】
このように、データの主キーとなるデータ項目とデータ属性となるデータレコードとを明確に区別することで、データベースへ登録するデータのチェックやデータベースを検索するための検索式を作成することを容易にしている。例えば、主キーが１項目のみである場合には当然重複が許されないので、長福がないようにチェックするようにあらかじめプログラムしておくことが可能となる。また、データベース検索においても、データの主キーが明確になっているので、当該主キーが外部キーとして設定されているデータの検索等を行うための検索式をあらかじめ用意しておくことが可能となる。
【００４１】
項目名１８０３には、その項目の名称を示すデータが登録される。また、必須項目１８０４は、当該コード区分のデータをコードマスタテーブル１９００に登録する際に、必ず入力しなくてはならないデータ項目であるか否かを示す情報が登録される。例えば、ここに「１」が設定されている場合には、当該項目は入力が必須である項目、「０」が設定されている場合には、当該項目は入力が任意である項目を示している。
【００４２】
項目属性１８０５には、その項目の入力値として許容するデータの種類を示す情報が登録される。例えば、「０」であれば制限なし、「１」は半角英字、「２」は半角数字、「３」は半角英数字、「４」は半角カナ、「５」は全角カナ、「６」は半角文字、「７」は全角文字、「８」は半角記号、「９」は半角英数記号、「Ｎ」は数値、「Ｄ」は日付、「Ｔ」は時間等である。
【００４３】
入力制限１８０６には、当該項目のデータの入力制限を示す情報が登録される。例えば、項目属性ＹＹ５の設定値が「０」〜「９」の場合（文字入力の場合）には、１が示すのは最大文字数、２が示すのは最小文字数、項目属性１８０５の設定値が「Ｎ」の場合（数値入力）の場合には、１が示すのは有効桁数、２が示すのは小数点以下の桁数といった具合である。
【００４４】
上記の１８０４〜１８０６の入力規則どおりに入力されているかをチェックするためのプログラムをあらかじめ実装しておけば、どのようなデータがその後に追加されようとも、そのプログラムを用いての入力チェックを行うことが可能となる。
【００４５】
検索区分１８０７には、当該コード区分のデータの検索処理を行う際に、その検索の条件設定項目として設定できるか否かを示す情報が登録される。例えば、この設定値が「１」の場合には、図１４に示す検索画面１４００中の検索条件項目として設定される、「０」の場合には検索条件項目として設定されないといった具合である。検索画面１４００の詳細については、図１４を参照して後述する。このように、検索条件として設定可能なデータ項目を明確にすることで、これらデータを用いての検索を行うための画面を作成することが容易となる。また、これら検索条件として設定できるデータ項目と、その値とを引数として取得し、取得した引数を用いてのデータベース検索式を作成するためのプログラムをあらかじめ作成しておけば、開発当時には未知の新たなデータ構造を持つコード区分に対応するマスタデータが開発終了後に追加されても、そのマスタデータの検索についてもそのプログラムを使用して行うことが可能となる。
【００４６】
表示区分１８０８には、当該データ項目を検索画面中のデータ明細部に表示するか否かを示す情報が登録される。例えば、この設定値が「１」の場合にはこのデータ項目がデータ明細部に表示される、「０」の場合には表示されないといった具合である。
【００４７】
条件区分１８０９には、入力可能な値が他のコード区分データのキー項目データに限定されるか否かを示す情報が登録される。ここに設定値がある場合には、他のコード区分のキー項目のデータのみに入力値が制限される。例えば00001-1という値がこの項目に設定された場合には、このデータ項目には製品区分データの製品コードのみに入力値が制限される。よって、この項目に製品区分データの製品コードとして設定された値以外が入力された場合には入力エラーとみなされることになる。
【００４８】
コードマスタテーブル１９００は、実際に各種アプリケーションプログラム等で利用可能なデータを登録するためのデータテーブルである。本願発明では、どのような種類のデータ(例えば製品情報、顧客情報、通貨情報)であっても、このテーブルで一元管理を行っている。
【００４９】
このテーブルは、コード区分情報１９０１、コード登録部１９０２、コード内容登録部１９０３で構成されている。
【００５０】
コード区分情報１９０１には、そのレコードのデータがどのコード区分のデータであるかを示す情報が登録される。例えばコード区分データが図１７に示すように設定されている場合には、この項目に「００００１」が設定されていたら、そのレコードで管理されているデータは製品区分データのデータレコード、「００００２」が設定されていたら通貨区分データのデータレコードであることを示している。
【００５１】
コード登録部１９０２には、このデータレコードの主キーとなるデータが登録される。コード登録部１９０２には主キーデータ以外の登録を行うことはない。それぞれのカラムにどのような情報が登録されているかについては、コードマスタ管理明細テーブルに設定されている。例えば、コード区分１９０１が「００００１」のデータレコードのコード登録部１９０２の１の欄には主キーである製品コードが登録されることになる（コードマスタ管理明細テーブル中のコード区分１９０１が「００００１」のデータレコードの項目ＮＯが「１」データとして「製品コード」データが設定されている）。
【００５２】
コード内容部１９０３には、このデータレコードの属性情報（主キー以外のデータ）が登録される。このコード内容部にこのコード区分データの主キーデータが登録されることはない（他のデータの主キーが外部キーとして登録されることはある）。それぞれのカラムにどのような情報が登録されているか、その入力条件等については、コードマスタ管理明細テーブル１８００に設定されている。例えば、コード区分１９０１が「００００２」のデータレコードのコード登録部１９０３の４の欄には「通貨名」データが、５の欄には「国名」データが登録されることになる（コードマスタ管理明細テーブル中のコード区分１９０１が「００００２」のデータレコードの項目ＮＯが「４」のデータとして「通貨名」データが、項目ＮＯが「５」のデータとして「国名」データが設定されている）。
【００５３】
このように複数のコード区分に対応するマスタデータを１つのデータレコードに定義をすることで、どんなにコード区分が増えようとも、各種のマスタデータを取得するためのデータベース検索の際に参照するデータテーブルがこのコードマスタデータのみであるので、データベースのテーブルの種類の変更に応じて変更しなければならなかったデータベースの操作式についてもあらかじめ用意しておくことが可能となる。
【００５４】
以上が、管理サーバが管理しているデータテーブルの説明である。本願発明では、コード区分（データ種別）に対応するマスタデータ（例えば、製品マスタ、通貨マスタ、社員マスタなど）毎にそれぞれデータテーブルを作成するのではなく、同一のデータテーブルにそれらを一元管理している。そのような構成にすることで、上述の通り、各データテーブルの編集操作や入力チェック処理を行うプログラムを開発段階で作成しておけば、開発終了後に新たにコード区分データが作成されたり、コード区分データのデータ項目の構成に変更が加えられたとしても、変更に伴うプログラム開発を行わなくても柔軟にその変更に対応することができる。
【００５５】
次に、図４を参照して、図３のステップＳ３０４の新規コード区分データ作成処理の詳細について説明する。
【００５６】
図４は、管理サーバ１０１によって行われるコード区分データの新規作成処理の詳細を示すフローチャートである。この処理は、管理サーバ１０１の外部メモリ２０９に保存されている、本処理を管理サーバ１０１のＣＰＵ２０１に実行させるためのプログラムによる制御に従って、ＣＰＵ２０１が行うことになる。
【００５７】
ＣＰＵ２０１は、管理者端末１０２より、コード区分データの新規作成要求を受信すると、当該新規作成要求を行ってきた管理者端末１０２に対して新規コード区分データ入力用画面情報を送信する（ステップＳ４０１）。管理サーバ１０１より新規コード区分データ入力用画面情報を受信した管理者端末１０２の表示部２０７には、当該画面情報に従って、図１１に示す新規コード区分データ入力用画面１１００が表示されることになる。
【００５８】
図１１は、管理者端末１０２の表示部に表示される新規コード区分データ入力用画面１１００の一例を示す図である。
【００５９】
１１０１はコード区分ＩＤ表示欄であって、この画面に入力された各種のデータに基づき作成される新規のコード区分データがコードマスタ管理テーブル１７００に新規に登録される際に付与されるＩＤ（コード区分１７０１に登録されるＩＤ）が表示される。尚、コードマスタ管理テーブル１７００において、このＩＤの重複は許容されない。また、このデータは後述のコードマスタ明細入力欄１１０４に入力された情報とともに、コードマスタ明細管理テーブル１８００のコード区分１８０１にも登録されることになる。
【００６０】
１１０２はコード区分名入力欄であって、この入力欄に入力された内容がコードマスタテーブル１７００のコード区分名１７０２に登録される。
【００６１】
１１０３は変更レベル指定欄であって、この指定欄で指定された変更権限レベルがコードマスタ管理テーブル１７００の変更レベル１７０３に登録される。
【００６２】
１１０４はコードマスタ明細入力欄であって、ここに入力された情報はコードマスタ管理明細テーブル１８００に登録されることになる。
【００６３】
１１０４−１は、項目ＮＯであって、この画面を介して作成したコード区分データに属するデータレコードをコードマスタテーブル１９００に登録する場合に、当該レコードが示すデータがどの項目列に登録されるかを示す情報である。なお、項目ＮＯ１〜３については、当該データの主キーとなる情報を登録することになる（必要な数）。この情報は、コードマスタ明細管理テーブル１８００の項目ＮＯ１８０２に登録される。
【００６４】
１１０４−２はデータ項目名入力欄であって、データ項目名を入力するための入力欄である。このデータ項目名入力欄１１０４−２に入力された情報は、コードマスタ管理明細テーブル１８００の項目名１８０３に登録される。
【００６５】
１１０４−３は必須区分入力欄であって、このコード区分のデータレコードをコードマスタテーブルに登録する際に、当該レコードで管理される項目データの登録が必須であるか否かの指定を入力する欄である。この必須区分入力欄１１０４−３に入力された情報は、コードマスタ明細管理テーブル１８００の必須区分１８０４に登録される。
【００６６】
１１０４−４は項目属性入力欄であって、このデータレコードで示される項目データの入力規則の指定を入力するための入力欄である。この項目属性入力欄１１０４−４に入力された情報は、コードマスタ明細管理テーブル１８００の項目属性１８０５に登録される。
【００６７】
１１０４−５は桁数入力欄であって、このレコードで管理される項目データの入力桁数制限情報を入力するための入力欄である。この桁数入力欄１１０４−５に入力された情報は、コードマスタ明細管理テーブル１８００の入力制限１８０６に登録される。
【００６８】
１１０４−６は条件区分入力欄であって、このレコードで示される項目データの検索条件区分の指定を入力するための入力欄である。この条件区分入力欄１１０４−６に入力された情報は、コードマスタ明細管理テーブル１８００の検索条件区分１８０７に登録される。
【００６９】
１１０４−７は表示区分入力欄であって、このレコードで示される項目データの表示区分の指定を入力するために入力欄である。この表示区分入力欄１１０４−７に入力された情報は、コードマスタ明細管理テーブル１８００の表示区分１８０８に登録される。
【００７０】
１１０４−８は入力条件入力欄であって、このレコードで示される項目データの入力制限情報を入力するための入力欄である。この入力条件入力欄に入力された情報は、コードマスタ明細管理テーブル１８００の条件区分１８０９に登録される。
【００７１】
１１０５はＯＫボタンであって、ＯＫボタン押下の指示を受け付けると、管理者端末１０４は、この区分情報入力画面１１００で入力された情報を管理サーバ１０１に対して送信することで、管理サーバ１０１に対してデータの登録指示を行い、この画面の表示を終了することになる。
【００７２】
１１０６はキャンセルボタンであって、新規のデータをコードマスタ管理テーブル１７００、コードマスタ明細管理テーブル１８００に登録させることなくこの画面の表示を終了させる。
【００７３】
以上が図１１に示す新規コード区分データ入力用画面の構成の説明である。
【００７４】
図４の説明に戻る。その後、管理者端末１０２は、表示部２０７に表示されている新規コード区分データ入力用画面１１００を介してのユーザからの各種データの入力を受け付ける（ステップＳ４１２）。この入力処理をキャンセルボタン１１０６が押下されることにより入力されるキャンセル指示を受け付ける（ステップＳ４１３でＹＥＳと判断する）か、ＯＫボタン１１０５が押下されることにより入力される登録指示を受け付ける（ステップＳ４１４でＹＥＳと判断する）まで継続することになる。
【００７５】
キャンセル指示を受け付けた場合には（ステップＳ４１３でＹＥＳ）、本処理を終了する。一方、登録指示を受け付けた場合には（ステップＳ４１４でＹＥＳ）、新規コード区分データ入力用画面１１００を介して入力された入力情報を管理サーバ１０１に送信することで、新規のコード区分データの登録要求を管理サーバ１０１に対して行うことになる（ステップＳ４１５）。
【００７６】
管理サーバ１０１は、管理者端末１０２から送信された入力情報を受信すると（ステップＳ４０２）、コードマスタ管理テーブル１７００に新規レコードを追加し、入力情報に従って、コード区分ＩＤ、コード区分名、変更レベルを登録する（ステップＳ４０３）。その後、コードマスタ明細管理テーブル１８００に  管理者端末１０２より受信した入力情報に含まれる、コードマスタ明細入力欄１１０４に入力されたデータ項目数だけ新規レコードを追加し、それぞれのデータ項目について、コードマスタ明細入力欄１１０４に入力されたコードマスタ明細情報を登録する（ステップＳ４０４）。以上が、コード区分データの新規作成処理の説明である。
【００７７】
次に、図５を参照して、図３のステップＳ３０６及びステップＳ３０８のコードマスタテーブル変更処理について説明する。
【００７８】
まず、ＣＰＵ２０１は、変更対象のコード区分データが、重要データ（編集には管理者権限が必要）か、それとも一般データか（一般ユーザでも編集可能）を判断する（ステップＳ５０１）。ここでの判断は、不図示の管理者用画面を介してのユーザの入力部操作により、「重要データの編集」メニューを指示されたという情報を管理者端末１０２から受信した場合にはコードマスタデータの編集要求であると、不図示の管理者用画面若しくは不図示の一般ユーザ用画面を介してのユーザの入力部操作により、「一般データの編集」メニューを指示されたという情報を管理者端末１０２若しくはクライアント端末１０３から受信した場合いは一般データの編集要求であるとＣＰＵ２０１は判断することになる。
【００７９】
重要データの編集であると判断した場合には（ステップＳ５０１で「重要データ」と判断）、ＣＰＵ２０１は、コードマスタ管理テーブル１７００から重要データ（変更レベルが「０」のデータ）のコード区分データを取得する（ステップＳ５０２）。一方、一般データの編集であると判断した場合には（ステップＳ５０１で「一般データ」と判断）、コードマスタ管理テーブルから一般データ（変更レベルが「１」のデータ）のコード区分データを取得する（ステップＳ５０３）。その後、ステップＳ５０２、若しくはステップＳ５０３で取得したコード区分データからコード区分リスト情報を作成し（ステップＳ５０４）、そのコード区分リスト情報を含むマスタデータメンテナンス用画面情報をデータ編集要求の送信を行った管理者端末１０２若しくはクライアント端末１０３に対して送信する。
【００８０】
ここで、マスタデータメンテナンス用画面情報の構成について図１２、図１３を参照して説明する。図１２、図１３は、マスタデータメンテナンス用画面の構成の一例を示す図である。
【００８１】
図中の１２０１は条件設定部であり、ここには、メンテナンスの対象となるコード区分を指定するためのコントロールが表示される。そして、以下のデータ明細表示部１２０２には、編集対象となるコード区分のデータを編集するための各種コントロールが生成され、指定されたコード区分に対応するマスタデータの編集を行うことが可能となる。
【００８２】
データ明細表示部１２０２中の一覧表示部１２０２−１には、例えば、データの表示／編集入力を受け付けるためのグリッドコントロール等のデータ入力が可能なコントロールが生成される。そして、そのコントロールを介した入力指示を行うことにより、マスタデータメンテナンスのためのデータ入力を行うことが可能となる。それぞれのコード区分データはもちろん異なるデータ項目で構成されているので、このグリッドコントロールはコード管理明細テーブル１８００に登録されているそれぞれのコード区分データのデータ項目に従って生成されることになる。具体的な処理については図１０を参照して後述する。
【００８３】
データ明細表示部１２０２中の詳細表示部には、例えば、指定されたコード区分データのそれぞれのデータ項目についての入力規則の詳細情報などが表示される。当然、コード区分データ毎にそれぞれのデータ項目も違えば、その入力規則も異なる。よって、この箇所に表示されるデータもコードマスタ管理明細テーブル１８００で管理されているそれぞれのコード区分データのデータ項目に従って作成されることになる。
【００８４】
ファンクション表示部１２０３には、各種の動作指示をアプリケーションプログラムに入力させるためのボタン等のコントロールが配置される。たとえば、データベースの更新要求を行う「登録」ボタンや、データの削除を指示する「削除」ボタンなどが配置される。
【００８５】
図１３も、画面の構成はほぼ図１２と同様であるが、図１３にはタブ表示部１３０１が設けられており、ここに複数のタブ情報を設定することが可能となっており、各タブを選択するとデータ明細表示部１２０２の内容が変更されるように構成されている。
【００８６】
このように構成することで、複数のコード区分に対応するマスタデータのメンテナンスを１つの画面で行うことが可能になるわけである。図１２のマスタデータメンテナンス用画面情報の構成に従った場合には図１５のような、図１３のマスタデータメンテナンス用画面情報の構成に従った場合には図１６のような、マスタデータメンテナンス用画面が作成されることになる。
【００８７】
図１５は、マスタデータメンテナンス用画面の一例を示す図である。図１５の画面構成は、図１２に示すマスタデータメンテナンス用画面の構成１２００に従って作成されており、条件設定部１２０１にはコード区分を指定するためのリストボックス（コード区分指定リストボックス）１５０１が、データ明細表示部１２０２の一覧表示部１２０２−１にはデータリスト情報表示部１５０２が、詳細表示部１２０２−２には入力制限情報１５０３が、ファンクション表示部１２０３には、ＣＰＵ２０１に各種の指示を送るためのボタン１５０４−１〜１５０４−８が表示されている。
【００８８】
コード区分指定リストボックス１５０１は、コードマスタテーブル１９００に登録されている各種のデータのうち、メンテナンス処理の対象とするマスタデータのコード区分を指定するために用いられる。このコード区分指定リストボックス１５０１に設定されているいずれかのコード区分が選択されている状態で、後述する「検索」ボタン１５０４−５の押下を受け付けると、当該コード区分データのデータ検索を管理サーバ１０１に対して要求することになる。尚、このコード区分リストボックス１５０１の指定に連動して、指定されたコード区分データの絞り込み検索を行わせるための条件を指定するコントロールを条件設定部１２０１に設定することも勿論可能である。
【００８９】
データリスト情報表示部１５０２は、コード区分指定リストボックス１５０１で指定されたコード区分に対応するマスタデータの内容を表示、選択等を行うためのリストであって、選択チェックボックス１５０２−１、コード情報・コード内容表示欄１５０２−２〜１５０２−４を備えている。
【００９０】
選択チェックボックス１５０２−１は、リスト表示されているデータのうち、後述する「削除」ボタン１５０４−４による削除指定の対象となるデータの選択を行うためのチェックボックスである。
【００９１】
コード情報・コード内容表示欄１５０２−２〜１５０２−４は、コードマスタテーブル１９００で管理されている当該コード区分に対応するマスタデータの各データ項目の内容を表示するために表示欄である。この列項目名や列の数は指定されたコード区分によって異なることになる。例えば、図１７〜図１９に指定された情報に基づいて「通貨区分」コードに対応するマスタデータをこのコード情報・コード内容表示欄１５０２に表示させる場合には、ＣＰＵ２０１は、項目名をそれぞれ「通貨コード」、「通貨名」、「国名」と設定することになる。尚、データメンテナンス用画面１５００では、コードマスタ管理明細テーブル１８００で表示区分が「０」となっている（非表示データ）データ項目についても表示するように構成しても、表示しないように構成してもどちらでも構わない。
【００９２】
入力制限情報１５０３には、データリスト情報表示部１５０２に表示されている各種のデータ項目の入力制限情報が表示される。このデータは、コードマスタ管理明細テーブル１８００の項目属性１８０５、入力制限１８０６、及び条件区分１８０９に設定されている情報をもとに作成される。
【００９３】
１５０３−１は、コード情報とコード内容情報とをユーザに認識させるための表示情報である。
【００９４】
１５０３−２は、当該コード区分に設定される項目の項目名を表示する項目名表示欄である。
【００９５】
１５０３−３は、１５０３−１の項目名表示欄で示されるデータ項目の入力制限情報を表示するための入力制限情報表示欄である。
【００９６】
ユーザは、新規にデータ項目を追加する場合、若しくは既に登録されているデータの修正を行う場合には、それぞれの項目データをこの入力制限情報１５０３に表示されている情報に従って入力を行うことになる。
【００９７】
１５０４−１乃至１５０４−９は各種指示をＣＰＵ２０１に送るために用いられるボタンである。例えば、いずれかのデータの選択チェックボックス１５０２−１が選択状態になっている際に、「削除」ボタン１５０４−７が押下した場合には、ＣＰＵ２０１は、当該データを「確定」ボタン１５０４−８が押下された場合にコードマスタデータから削除する対象のデータとする。また、「追加」ボタン１５０４−６が押下されると、図１６に示すように、新規データの入力欄１６０１が生成され、任意の情報を登録可能状態になる（例えば図１６の１６０２に示すようにデータ表示欄の一部がデータ入力可能状態に遷移する）。それぞれのボタンは図に示すようにキーボードのファンクションキーに対応しており、ファンクションキーを押下することでも同様の指示をＣＰＵ２０１に対して送ることが可能である。
【００９８】
以上がマスタデータメンテナンス用画面の説明である。
【００９９】
図５の説明に戻る。
【０１００】
管理サーバ１０１からマスタデータメンテナンス用画面情報１５００を受信すると（ステップＳ５２１）、管理者端末１０２、若しくはクライアント端末１０３のＣＰＵ２０１は、マスタデータメンテナンス用画面情報に基づく表示を表示部２０７に行い、コード区分選択操作の受付を行う（ステップＳ５２２）。そして、マスタデータメンテナンス用画面１５００中の「検索」ボタン１５０４−４が押されたことを検知すると（ステップＳ５２３でＹＥＳと判断）、コード区分指定リストボックス１５０１で選択されているコード区分データを管理サーバ１０１に対して送信する（ステップＳ５２４）。
【０１０１】
管理サーバ１０１は、コード区分データを管理者端末１０２若しくはクライアント端末１０３から受信すると（ステップＳ５０７）、マスタデータテーブル１９００で管理されている当該コード区分データに該当するデータのリスト情報を作成する（ステップＳ５０８）。ここでいうリスト情報とは、図１２及び図１３の一覧表示部１２０２−１に表示される当該区分データに対応するマスタデータの一覧情報である。リスト情報作成処理の詳細については図１０を用いて説明する。
【０１０２】
図１０は、図５のステップＳ５０８のリスト情報作成処理の一例を示すフローチャートである。ここでは、コードマスタテーブル１９００で管理されている各種コード区分に対応するマスタデータのうち、指定されたコード区分データに対応するマスタデータを取得し（絞り込み検索条件が設定されている場合にはその検索条件に合致したデータのみを取得する）、データリスト情報を生成する処理を行う。ここでは、マスタデータメンテナンス用画面１５００におけるリスト情報の作成処理を行うことになる。
【０１０３】
まず、リスト上に表示されているデータを選択するために用いるチェックボックス欄１５０２−１を作成する（ステップＳ１００１）。そして、その後、コードマスタ管理明細テーブル１８００にアクセスし、指定されたコード区分データに該当するレコードデータを取得する（ステップＳ１００２）。尚、後述するマスタデータ検索用画面１４００に設定するリスト情報を生成する際には、当該コード区分データのうち、表示対象となるデータ項目（図１７の表示区分１７０３に「０」が設定されているデータ項目）のみを取得することになる。
【０１０４】
そして、その後、ステップＳ１００２で取得したデータ項目を項目ＮＯの順に取得したすべてのデータについて、当該データ項目の項目名称をリストの項目列に追加設定していく（ステップＳ１００３）。
【０１０５】
そして、その後、コードマスタテーブル１９００にアクセスし、指定されたコード区分に対応するマスタデータのレコードを取得する（ステップ１００４）。
【０１０６】
そして、ステップＳ１００４での取得処理の結果、該当データレコードが取得できなかった場合（ステップＳ１００５でＮＯ）には、該当データレコードがない旨の表示を表示部２０７に行うことになる（ステップＳ１００８）。
【０１０７】
一方、該当のマスタデータのデータレコードを取得できた場合には（ステップＳ１００５でＹＥＳ）、ステップＳ１００３で生成したリストの該当する列項目にそれぞれのデータ（図１９のコード１９０２及びコード内容１９０３に登録されているデータ）を設定する（ステップＳ１００６）。そして、ヒット件数をヒット件数表示欄に表示する（ステップＳ１００７）。
【０１０８】
以上が、リスト情報作成処理の一例の説明である。
【０１０９】
図５の説明に戻る。リスト情報作成処理（ステップＳ５０７）が終了後、作成したリスト情報をマスタデータメンテナンス用画面情報のデータリスト情報表示部１５０２に追加する（ステップＳ５０８）。そしてその後、コードマスタ管理明細テーブル１８００から、指定されたコード区分に合致するデータレコードを取得し（ステップＳ５０９）、各データの入力制限情報をマスタデータメンテナンス用画面情報の詳細表示部１２０２−２に表示される入力制限情報１５０３として追加する（ステップＳ５１０）。
【０１１０】
そして、上記のステップによって更新されたマスタデータメンテナンス用画面情報をステップＳ５２４で要求を行ってきた管理者端末１０２若しくはクライアント端末１０３に対して送信する（ステップＳ５１１）。
【０１１１】
そして、管理サーバ１０１から更新されたデータメンテナンス用画面情報受信した場合、管理者端末１０２若しくはクライアント端末１０３のＣＰＵ２０１は、該更新されたマスタデータメンテナンス用画面情報に基づきマスタデータメンテナンス用画面１５００を表示部２０７に表示する。そして、マスタデータメンテナンス用画面１５００を介したユーザによる操作指示を受け付けることで、マスタデータの変更入力受付処理を行うことになる（ステップＳ５２６）。マスタデータの変更入力受付処理の詳細については図６を用いて詳細に説明する。
【０１１２】
そして、マスタデータの変更要求を受け付けて（具体的には変更入力の受け付け後、マスタデータメンテナンス用画面１５００の「確定」ボタン１５０４−８が押下されたことで）マスタデータの変更入力受付処理が終了した場合には（ステップＳ５２７でＹＥＳ）、マスタデータメンテナンス用画面１５００のデータリスト情報表示部１５０２において追加・修正されたデータを取得しそのマスタデータの変更情報を管理サーバ１０１に対して送信する（ステップＳ５２８）。マスタデータの変更要求を受け付けることなくマスタデータの変更入力受付処理が終了した場合（例えば図１５に示す「閉じる」ボタン１５０４−１が押されることでデータ編集処理が終了した場合）にはコードマスタテーブルを更新することなく本処理を終了する。
【０１１３】
管理者端末１０２若しくはクライアント端末１０３からマスタデータの変更情報を受け付けた管理サーバ１０１は、受信した変更情報に基づいてコードマスタテーブル１９００の更新処理を行う（ステップＳ５１２）。コードマスタテーブルの更新処理の詳細については、図７を参照して詳細に説明する。
【０１１４】
以上が図５に示す、マスタデータのメンテナンス処理の一例の説明である。
【０１１５】
図６は、図５のステップＳ５２６のマスタデータの変更入力受付処理の詳細を示すフローチャートである。この処理は、管理者端末１０２若しくはクライアント端末１０３のＣＰＵ２０１によって行われる処理である。尚、ＣＰＵ２０１はマスタデータメンテナンス用画面１５００の一覧表示部１５０２に表示されているデータの変更の入力指示や決定チェックボックス１５０２−１の選択／解除指定の入力指示を随時受け付けることになる。
【０１１６】
ＣＰＵ２０１は、データメンテナンス用画面１５００の追加ボタン１５０４−６の押下指示を検知した場合には（ステップＳ６０１の「追加ボタンが押された？」でＹＥＳ）、一覧表示部１５０２に新規レコードのデータを入力するための入力欄（図１６の１６０１）を追加する（ステップＳ６０２）。
【０１１７】
図１６は、マスタデータメンテナンス用画面１５００で追加ボタン１５０４−６が押下指示を受け付けた場合の図である。
【０１１８】
図中に示すように、新規レコードのデータを入力するための入力欄１６０１が表示される。そして、１６０２に示すように、データ入力欄にフォーカスが当たり、新規のデータの入力が可能となる。
【０１１９】
ＣＰＵ２０１は、マスタデータメンテナンス用画面１５００の削除ボタン１５０４−７の押下指示を検知した場合には（ステップＳ６０３の「削除ボタンが押された？」でＹＥＳ）、一覧表示部１５０２に表示されているデータの中で、選択状態のデータがあるか（決定チェックボックス１５０２−２にチェックが入っているデータがあるか）を判断することになる（ステップＳ６０４）。選択されているデータがある場合には（ステップＳ６０４でＹＥＳ）、選択されているデータを非表示にする（ステップＳ６０５）。
【０１２０】
そして、変更情報入力受付の対象となっていないデータ区分のデータレコードの変更処理を受け付けた場合には（データメンテナンス用画面１５００のコード区分指定リストボックス１５０１で、編集処理となっているコード区分とは異なるコード区分が選択され検索ボタン１５０４−５の押下指示を受け付けた場合）、新たに選択されたコード区分データを管理サーバ１０１に対して送信する（ステップＳ６０７）。この処理は、図５のステップＳ５２４と同様の処理である。
【０１２１】
複数のコード区分データの編集を行う場合には、図１３に示すように、一覧表示欄にタブ表示が行われることになる。
【０１２２】
そして、上記の処理をマスタデータメンテナンス用画面１５００の確定ボタン１５０４−８若しくは閉じるボタン１５０４−１の押下指示を受け付けるまで（ステップＳ６０８若しくはＳ６１０でＹＥＳと判断するまで）繰り返すことになる。
【０１２３】
確定ボタン１５０４−８の押下指示を受け付けた場合には（ステップＳ６０８でＹＥＳ）、
マスタデータメンテナンス用画面１５００において入力を受け付けたデータを取得する（ステップＳ６０９）。この際には、変更を受け付けたデータのみを取得しても、変更の入力を受け付けていないデータも含めて一覧表示部１５０２への表示対象となっているすべてのデータを取得するようにしてもどちらでも構わない。前者の場合には、差分情報に基づいてコードマスタテーブル１９００の更新を管理サーバ１０１は行うこととなる。後者の場合には、一度コードマスタテーブル１９００に登録されている当該コード区分のデータレコードをすべて削除し、新たに管理者端末１０２若しくはクライアント端末１０３から取得したデータ一覧の登録を行うことになる。
【０１２４】
一方、閉じるボタン１５０４−１の押下指示を受け付けた場合（ステップＳ６１０の「閉じるボタンが押された？」でＹＥＳと判断した場合）には、コードマスタテーブルの更新要求を行うことなく本処理を終了する。
【０１２５】
以上が、図６のコードマスタテーブルの変更入力受付処理の説明である。尚、このコードマスタテーブルの変更入力受付処理において、変更入力の受け付け対象のコード区分データのデータ項目に外部キーとして他のコード区分データのＩＤ情報の入力を行うデータ項目がある場合には、マスタデータの検索を行い、検索の結果の中からデータの選択を行い、選択されたデータのＩＤ情報を入力させることになる。
【０１２６】
その際に行われる、マスタデータ検索処理について、図８を参照して説明する。
【０１２７】
管理者端末１０２、若しくはクライアント端末１０３からマスタデータ検索用画面１４００の要求をコード区分指定とともに受け付けると、当該コード区分データのデータ項目のうち、検索の条件項目として使用するとの設定がなされているデータ項目（検索条件区分１８０７が「１」と設定されている）の項目名１８０３を取得する（ステップＳ８０１）。そして、ステップＳ８０１で取得したデータに基づいて検索条件指定部を含む検索画面情報を生成し（ステップＳ８０２）、その検索画面情報要求を行ってきた管理者端末１０２若しくはクライアント端末１０３に対して送信する（ステップＳ８０３）。
【０１２８】
そして、マスタデータ検索用画面情報を受信した管理者端末１０２若しくはクライアント装置１０３は、マスタデータ検索用画面情報に基づき、マスタデータ検索用画面１４００を表示部２０７に表示する（ステップＳ８２１）。
【０１２９】
図１４はマスタデータ検索用画面の一例を示す図である。本願発明では、このマスタデータ検索用画面についても、コード区分で示されるそれぞれのデータレコードに対応するマスタデータ検索用画面を作成し、データレコードを検索する際に、当該データレコードに対応したマスタデータ検索用画面を使用するという方法をとるのではなく、データ登録画面１５００と同様に、複数種類のデータレコードで統一的なマスタデータ検索用画面を利用することになる。
【０１３０】
１４０１はコード区分指定リストボックスであって、検索対象となるマスタデータのコード区分情報を指定するためのものである。
【０１３１】
１４０２は検索条件項目指定リストボックスであって、コードマスタテーブル１９００を検索するにあたっての検索項目を指定するためのリストボックスである。この検索条件項目指定リストボックスに設定される内容は、コード区分指定リストボックス１４０１の指定に応じて設定内容が変更されることになる。
【０１３２】
１４０３は検索キーワード入力欄であって、検索を行う際の検索キーワードの設定を行うことになる。またこの入力欄には「＊」（任意の文字列）「？」（任意の文字）等のワイルドカード検索を行うための文字を設定することも可能である。
【０１３３】
１４０４は検索一致条件指定リストボックスであり、例えば「に一致する」、「を含む」、「を含まない」、等が選択可能に設定されている。
【０１３４】
１４０５は検索結果一覧表示部であって、上記１４０１から１４０４に設定された条件でコードマスタテーブル１９００の検索を行った際に、条件に合致したレコードが表示される。
【０１３５】
検索結果一覧表示部１４０５において、１４０５−１はデータ選択チェックボックスであって、データの選択指定を行うためのチェックボックスである。
【０１３６】
１４０５−２〜１４０５−４はデータ項目表示欄であって、この内容は指定されたコード区分によって異なる値が設定されることになる。
【０１３７】
１４０６はヒット件数表示欄であって、コードマスタテーブルの検索を行った結果ヒットしたデータレコードの数が表示される。
【０１３８】
１４０７はファンクション表示部であって、「閉じる」ボタン１４０７−１、「クリア」ボタン１４０７−２、「選択」ボタン１４０７−３、「検索」ボタン１４０７−４、「確定」ボタン１４０７−５等、ＣＰＵ２０１に対して各種の処理を指示するためのコントロールが配置されている。また、各ボタンには図に示すようにファンクションキーが対応付けられており、キーボードのファンクションキーを押すことにより、対応するボタンを押下した場合と同様の指示を入力することが可能である。
【０１３９】
図８の説明に戻る。その後、管理者端末１０２若しくはクライアント装置１０３は、マスタデータ検索用画面を介しての検索条件の入力を受け付ける（ステップＳ８２２）。そして検索指示を受け付けると（ステップＳ８２４でＹＥＳ）、検索条件として指定された情報を管理サーバ１０１に対して送信することで、データの検索要求を管理サーバ１０１に対して行う（ステップＳ８２４）。
【０１４０】
検索条件を受信した管理サーバ１０１は、検索条件に合致するデータをコードマスタテーブル１９００から取得し、リスト情報の作成処理を行う（ステップＳ８０５）。このリスト情報作成処理は図１０で説明したとおりである。
【０１４１】
リスト情報の作成が終了後、リスト情報を検索画面情報に追加し（ステップＳ８０６）、リスト情報が追加されたマスタデータ検索用画面情報（更新されたマスタデータ検索用画面情報）を管理者端末１０２若しくはクライアント端末１０３に対して送信する（ステップＳ８０７）。
【０１４２】
更新されたマスタデータ検索用画面情報を受信する（ステップＳ８２５）と、管理者端末１０２若しくはクライアント端末１０３は、受信したマスタデータ検索用画面情報に基づいてマスタデータ検索用画面１４００を表示する。
【０１４３】
そして、ＣＰＵ２０１は、マスタデータ検索用画面１４００中の閉じるボタン１４０７−１の押下指示を受け付けることによる終了指示を受け付けた場合には（ステップＳ８２７でＹＥＳ）、本処理を終了する。検索条件の変更指示を受け付けた場合には（ステップＳ８２８でＹＥＳ)、ステップＳ８２２に戻り、新たな検索条件の入力を受け付けそれ以降の処理を行う。
【０１４４】
マスタデータ検索用画面１４００中の一覧表示部１４０５に表示されているデータレコードのうち、いずれかのデータが選択されている状態（決定チェックボックス１４０５にチェックがされている状態）で確定ボタン１４０７−５の押下指示を受け付けることによる、データ選択指示を受け付けた場合には（ステップＳ８２９でＹEＳ）、選択されたデータのキー情報を取得し、マスタデータメンテナンス画面１５００の一覧表示部中の該当入力箇所に、取得したデータを入力する（ステップＳ８３０）。以上が、マスタデータ検索処理の説明である。
【０１４５】
図５の説明に戻る。管理者端末１０２若しくはクライアント端末１０３からデータの変更情報を受信すると、管理サーバ１０１は、コードマスタテーブル更新処理を行う（ステップＳ５１２）。コードマスタテーブル更新処理については図７を参照して詳細に説明する。以上が図５のデータ変更処理の説明である。
【０１４６】
図７は、図５のステップＳ５１２のコードマスタテーブル更新処理の詳細を示すフローチャートである。この処理は、管理サーバ１０１の外部メモリ２０９に保存されている、本処理を管理サーバ１０１のＣＰＵ２０１に実行させるためのプログラムによる制御に従って、ＣＰＵ２０１が行うことになる。
【０１４７】
まず、ＣＰＵ２０１は、変更の対象となるコード区分データが複数種類であるかを判断する（ステップＳ７０１）。複数であると判断した場合には（ステップＳ７０１でＹＥＳ）、コードマスタ明細管理テーブル１８００の入力条件データに従って、コード区分データの変更処理を行う順序を決定する。この決定処理では、例えばコード区分データＡのあるデータ項目の入力条件としてコード区分データＢのＩＤ情報が設定されていた場合には、コード区分データＢの変更処理の処理順序よりもコード区分データＡの順序よりも優先させる形で、処理の順序を決定することになる。
【０１４８】
そしてすべてのコード区分に対応するマスタデータについてのコードマスタテーブルの更新処理が終了するまで、ステップＳ７０２で決定した順序で変更指示をされたマスタデータの入力値のチェック処理を行う（ステップＳ７０３）。この処理の詳細については図９を参照して説明する。
【０１４９】
ステップＳ７０３の入力値チェックの結果、入力値に異常があった場合には（ステップＳ７０４の「正常終了？」でＮＯと判断）、エラー表示等をおこないコードマスタテーブル１９００の更新処理を行うことなく本処理を終了する。
【０１５０】
一方、全てのデータについて入力値が妥当であった場合には、その内容で、コードマスタテーブル１９００を更新する（ステップＳ７０５）。
【０１５１】
以上が、管理サーバ１０１によって行われるコードマスタテーブルの更新処理である。
【０１５２】
図９は、図７のステップＳ７０３の入力値チェック処理の詳細を示すフローチャートである。この処理は、管理サーバ１０１の外部メモリ２０９に保存されている、本処理を管理サーバ１０１のＣＰＵ２０１に実行させるためのプログラムによる制御に従って、ＣＰＵ２０１が行うことになる。
【０１５３】
ＣＰＵ２０１は、新規にコードマスタテーブルへの追加、変更の要求を受け付けた全データのチェックを終了したと判断（ステップＳ９０１でＹＥＳと判断）するまで、以下の処理を繰り返すことになる。
【０１５４】
ＣＰＵ２０１は、新規にコードマスタテーブル１９００に追加する、若しくは変更を行うデータである１つ目のチェック対象データを取得する（ステップＳ９０２）。そしてそのチェック対象データについてそのデータの全項目について入力値チェックを終了した（ステップＳ９０３でＹＥＳ）と判断するまで、処理を行う。
【０１５５】
まず、ステップＳ９０２で取得したデータの１つ目のデータ項目について入力値があるか否かを判断する（ステップＳ９０４）。入力値がなかったと判断した場合には（ステップＳ９０４でＮＯ）、そのデータ項目が必須区分であるかをチェックする（ステップＳ９０５）。必須区分である場合には、必ず当該データ項目に対して何らかのデータの入力をしなければならない。必須区分である場合には（ステップＳ９０５でＹＥＳ）、処理をステップＳ９１４に進める。一方、必須区分ではないと判断した場合には（ステップＳ９０５でＮＯ）、処理をステップＳ９０３に進める。
【０１５６】
一方、入力値があったと判断した場合には（ステップＳ９０４でＹＥＳ）、入力値の属性のチェックを行う（ステップＳ９０６）。具体的には、当該チェック項目データについてコードマスタ管理明細テーブル１８００の項目属性１８０３で設定された入力属性値に入力値が合致しているかのチェックを行う。ステップＳ９０６の入力値属性チェック処理において、入力値属性が妥当でないと判断した場合には（ステップＳ９０７でＮＯ）、処理をステップＳ９１４に進める。
【０１５７】
一方、ステップＳ９０６の入力値属性チェック処理において、入力値属性が妥当であると判断した場合には（ステップＳ９０７でＹＥＳ）、次に、当該データ項目についての制限桁数が設定されているかを、コードマスタ管理明細テーブル１８００を参照することで確認する（ステップＳ９０８）。ステップＳ９０８で、当該データ項目に制限桁数設定がされていないと判断した場合には（ステップＳ９０８でＮＯ）、処理をステップＳ９１１に進める。一方、制限桁数が設定されていると判断した場合には（ステップＳ９０８でＹＥＳ）、ステップＳ６０２で取得したチェック対象データのチェック対象項目の入力値が、入力制限桁数内であるかをチェックする（ステップＳ９０９）。ステップＳ９０９の入力値のチェックの結果、チェック対象項目の入力値が桁数制限の範囲内でないと判断した場合には（ステップＳ９１０でＮＯ）、処理をステップＳ９１４に進める。
【０１５８】
一方、チェック対象項目の入力値が桁数制限の範囲内であると判断した場合には（ステップＳ９１０でＹＥＳ）、処理をステップＳ９１１に進める。
【０１５９】
次に、ＣＰＵ２０１は、コードマスタ管理明細テーブル１８００を参照して、チェック対象のデータ項目に条件区分１１０４が設定されているかを判断する（ステップＳ９１１）。条件区分が設定されていない場合には（ステップＳ９１１でＮＯ）、処理をステップＳ９０３に進める。
【０１６０】
一方、条件区分が設定されている場合には（ステップＳ９１１でＹＥＳ）、当該項目の入力値が、条件区分で設定されている入力条件に合致するかをチェックする（ステップＳ９１２）。具体的には、ステップＳ９０２で取得したチェック対象データの当該項目の入力値が、条件区分で設定されているデータ項目の値として既にコードマスタテーブル１９００に設定されているかのチェックを行う。そして、すでにコードマスタテーブル１９００に登録されているデータである場合には（ステップＳ９１３「条件に合致？」でＹＥＳ）、処理をステップＳ９０３に進める。
【０１６１】
前述のステップＳ９０５でＮＯ、ステップＳ９０７でＮＯ、ステップＳ９１０でNO、及びＳ９１３でＮＯと判断した場合には、ステップＳ９１４で、エラー情報をＲＡＭ２０２に記憶する。その後処理をステップＳ９０３に進める。
【０１６２】
その後、ＣＰＵ２０１は１つ目のチェック対象データの全てのデータ項目についての入力値チェックが終了すると判断するまで（ステップＳ９０３でＹＥＳ）、上記のステップＳ９０４からステップＳ９１４の処理を繰り返す。
【０１６３】
そして、全てのデータ項目の入力値チェックが終了したと判断した場合（ステップＳ９０３でＹＥＳ）、ステップＳ９０１に処理を進め、入力値チェックを行う対象となるチェック対象データがまだ残っているかを判断し、残っている場合には（ステップＳ９０１でＹＥＳ）、次のチェック対象データを取得し（ステップＳ９０２）、ステップＳ９０３からの処理を繰り返す。
【０１６４】
上記の処理をステップＳ９０１でＹＥＳと判断するまで行い、その後、処理をステップＳ９１５に進め、このチェック処理で入力値エラーを検知した入力項目がないか（エラー項目なし？）を判断する（ステップＳ９１５）。エラーを検知した入力項目がなかった場合には本処理を終了する。本処理でエラーを検知しなかった場合には、すでに説明した図７のステップＳ７０４の処理（正常終了？）でＹＥＳと判断することになる。
【０１６５】
一方、ステップＳ９１５でＮＯと判断した場合には、ステップＳ９１４でＲＡＭ２０２に保存したエラー情報を表示部２０７に表示する（ステップＳ９１６）。そして本処理を終了する。尚、本処理でエラーを検知した場合には、すでに説明した図７のステップＳ７０４の処理（正常終了？）でＮＯと判断することになる。
【０１６６】
以上が、入力値チェック処理の詳細である。
【０１６７】
本発明では、上記のようなデータベースのテーブル構成を採用することで、アプリケーション開発終了後に管理する必要性があるコード区分が新たに発生した場合であっても、そのコード区分に対応したマスタテーブルのデータテーブルを新たに作成することはなく、コードマスタテーブル１９００で管理を行うことになる。よって、新たなデータテーブル用を操作・検索するための式の作成を作成する必要がなくなる。また、予め、データテーブルを操作するための式に使用する条件や項目を任意の値に設定できるようにアプリケーションプログラムを作成しておけば、その新たに追加されたコード区分に対応するマスタデータを操作するためのプログラムを新たに作成する必要もなくなる。
【０１６８】
また、本願発明では、マスタテーブルのメンテナンスを行うための画面は、マスタデータ管理明細情報１８００で管理されている各種の情報に基づいて作成されることになる。新たなコード区分に対応するマスタデータのメンテナンス画面についても同様な方法で作成されるため、新たに当該マスタデータのメンテナンスを行うためのマスタメンテナンス用画面を作成する必要もない。
【０１６９】
また、各種データの入力値のチェック処理についても、予め設定された入力規則から逸脱しない限り、同様の手法で行うことが可能となる。
【０１７０】
よって、本願発明によれば、顧客マスタや製品マスタといったマスタデータの種類ごとのデータベースのテーブル（マスタデータ）を構築する必要がなくなり、また、メンテナンス画面も複数のコード区分で統一的な画面として設計できるので、開発効率を上げることが可能となる。また、アプリケーションプログラムの開発終了後に新たなマスタデータの追加が必要になった場合にも、追加開発を行うことなく新規のコード区分に応じたマスタデータに対応することが可能となる。
【０１７１】
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【０１７２】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１７３】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピ（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【０１７４】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１７５】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【０１７６】
【図１】本願発明のシステム構成図の一例を示す図である。
【図２】管理サーバ１０１のハードウェア構成の一例を示す図である。
【図３】本願発明におけるマスタデータメンテナンス処理の一例を示すフローチャートである。
【図４】本願発明における新規区分データ作成処理の一例を示すフローチャートである。
【図５】本願発明におけるデータ変更処理の一例を示すフローチャートである。
【図６】本願発明におけるコードマスタテーブル変更処理の一例を示すフローチャートである。
【図７】本願発明におけるデータベース変更処理の一例を示すフローチャートである。
【図８】本願発明におけるマスタデータ検索処理の一例を示すフローチャートである。
【図９】本願発明における入力値チェック処理の一例を示すフローチャートである。
【図１０】本願発明におけるリスト情報作成処理の一例を示すフローチャートである。
【図１１】新規コード区分データ入力用画面の構成の一例を示す図である。
【図１２】本願発明のマスタデータメンテナンス用画面の構成の一例を示す図である。
【図１３】本願発明のマスタデータメンテナンス用画面の構成の一例を示す図である。
【図１４】マスタデータ検索用画面の一例を示す図である。
【図１５】マスタデータメンテナンス用画面の一例を示す図である。
【図１６】マスタデータメンテナンス用画面において、追加ボタンが押された際の画面の一例を示す図である。
【図１７】コードマスタ管理テーブルの構成の一例を示す図である。
【図１８】コードマスタ管理明細テーブルの構成の一例を示す図である。
【図１９】コードマスタテーブルの構成の一例を示す図である。
【符号の説明】
【０１７７】
１０１    管理サーバ
１０２    管理者端末
１０３−１，１０３−２    クライアント端末
１０４    ローカルエリアネットワーク（ＬＡＮ）
【図１】
2010146330.tif 000003
【図２】
2010146330.tif 000004
【図３】
2010146330.tif 000005
【図４】
2010146330.tif 000006
【図５】
2010146330.tif 000007
【図６】
2010146330.tif 000008
【図７】
2010146330.tif 000009
【図８】
2010146330.tif 000010
【図９】
2010146330.tif 000011
【図１０】
2010146330.tif 000012
【図１１】
2010146330.tif 000013
【図１２】
2010146330.tif 000014
【図１３】
2010146330.tif 000015
【図１４】
2010146330.tif 000016
【図１５】
2010146330.tif 000017
【図１６】
2010146330.tif 000018
【図１７】
2010146330.tif 000019
【図１８】
2010146330.tif 000020
【図１９】
2010146330.tif 000021