以下、本発明のデータ統合管理システム及びクライアント端末の一実施の形態に係るデータ統合管理システム1について図面を参照しながら説明する。なお、以下のデータ統合管理システム1では、管理サーバ10とクライアント端末30,31とが含まれるシステム構成として説明するが、管理サーバ10のみを本発明のデータ統合管理システムとして捉えてもよい。また、本発明に係るデータ統合管理システムは、このデータ統合管理システム1の実施の形態に限定されるものではない。
図1は、本発明の一実施の形態に係るデータ統合管理システム1の全体構成を示す図である。図1に示すデータ統合管理システム1は、管理サーバ10と、インターネット、またはイントラネットなどのネットワーク29を介して管理サーバ10と接続された複数のクライアント端末30,31とを有している。これらのクライアント端末30,31は、データ統合管理システム1の管理者(以下、「システム管理者」という。)、企業毎の運用管理者、または運用管理者以外の利用者(以下、企業毎の運用管理者も含めて「利用者」という。)により使用される。
管理サーバ10は、制御部12と、実データ記憶部14と、定義情報記憶部18とを有している。なお、制御部12は、請求項の第1の画面生成部、第2の画面生成部、第3の画面生成部、および第4の画面生成部の一例である。
制御部12は、ユーザ認証部13、定義情報設定部15、実データ更新処理部17、および出力データ生成部19を有する。制御部12は、管理サーバ10の不図示のCPU(Central Processing Unit)が、OS(Operating System)および専用のアプリケーションプログラムを不図示のRAM(Random Access Memory)などの主記憶装置に読み出して演算処理を実行することによって、ユーザ認証部13、定義情報設定部15、実データ更新処理部17、および出力データ生成部19の各機能を実現する。なお、ユーザ認証部13、定義情報設定部15、実データ更新処理部17、および出力データ生成部19の詳細については後述する。
実データ記憶部14と定義情報記憶部18とは、不図示の記憶部に設けられている。この不図示の記憶部は、たとえば、ハードディスクなどの補助記憶装置、または管理サーバ10と直接接続される外付けのハードディスク、または同一LAN内に接続されているNAS(Network Attached Storage)などの外部記憶装置などである。
実データ記憶部14には、多数の企業に係る各種のデータベース(たとえば、ある企業の製品情報が記憶されているデータベース、社内または取引先との会社の間での製品販売情報などが記憶されているデータベースなど)が記憶されている。なお、実データ記憶部14は、図1では管理サーバ10に設けられているが、このデータベースを記憶する専用のDBサーバ、または管理サーバ10と同一LAN内に接続されるストレージ装置を設けて別途構築するようにしてもよい。
定義情報記憶部18には、分類定義データベース24と、スキーマ定義データベース26とが含まれ、上述した実データ記憶部14に記憶されているデータベースに係る各種定義情報が登録されている。なお、分類定義データベース24は請求項の分類定義記憶部の一例、スキーマ定義データベース26は請求項のスキーマ定義記憶部の一例である。
分類定義データベース24には、サイト管理テーブル24A,メニューグループテーブル24B,メニューテーブル24C,およびメニュー分類テーブル24Dが含まれている。図2は、図1に示す分類定義データベース24に含まれるサイト管理テーブル24Aおよびメニューグループテーブル24Bに記憶されている情報の一例を示す図である。図3は、図1に示す分類定義データベース24に含まれるメニューテーブル24Cに記憶されている情報の一例を示す図である。図4は、図1に示す分類定義データベース24に含まれるメニュー分類テーブル24Dに記憶されている情報の一例を示す図である。図5は、図1に示す分類定義データベース24に含まれる各テーブルにより実現される画面例を示す図である。以下、分類定義データベース24に含まれる各テーブルに含まれる情報について説明する。
図2に示すサイト管理テーブル24Aには、サイトを管理するための識別情報が格納されている。ここでいうサイトとは、たとえば、請求支払い管理、流通グループ業務情報共有、流通グループPOS情報共有サイト、クレーム管理、プロジェクト情報共有、グループ企業のPOS情報共有など、所定の共通した関連性を有するデータ集合を区別するための概念として使用している。データ統合管理システム1では、このサイトという概念によってグループ企業間、または各企業内におけるデータ集合をそれぞれ区別することができると共に、同一のアプリケーションを使用しても汎用的なサービスを実現することができ、様々な企業に対応したデータ統合管理システムを提供することができるようになっている。
サイト管理テーブル24Aに含まれるサイトコードには、サイトを一意に識別するための識別情報が格納されている。なお、このサイトコードにより区分されるデータの単位は、請求項のカテゴリの一例である。会社IDには、データ統合管理システム1を利用する会社を一意に識別するための識別情報が格納されている。ユーザIDには、会社IDで特定される会社に属するユーザを一意に識別するための識別情報が格納されている。メニューグループコードには、データ統合管理システム1にログインして表示される最初の画面を構成するトップ画面、およびこのトップ画面に階層的に関連付けられている複数のメニューを1つの集まりとして区分するための識別情報が格納されている。
サイト管理テーブル24には、サイトコードが特定されると、そのサイトコードが示すサイトがどの会社と関連付けられているのかを識別する会社IDと、その会社IDが示す会社のどのユーザと関連付けがなされているのかを識別するユーザIDと、さらにはどのメニューグループと関連付けられているのかを識別するメニューグループコードが格納されている。なお、図2に示すサイト管理テーブル24Aから明らかなように、同一の会社であっても、複数のサイトを有することができる。なお、図2に示すように同一の会社においてサイトの異同を問わず同一ユーザを設定することも可能であるが、異なるユーザを設定することも当然可能である。
図2に示すメニューグループテーブル24Bには、サイトとメニューグループコードで特定されるメニューグループ名称が特定できる情報が格納されている。なお、図2に示すメニューグループテーブル24Bから明らかなように、一つのサイトであっても複数のメニューグループを有することができ、複数のメニューグループには異なるメニューグループ名がそれぞれ付与されることになる。
図3に示すメニューテーブル24Cには、サイトコード、メニューグループコード、メニューコード、親メニューコード、メニュー名称、およびリンクURLが記憶されている。なお、サイトコード、メニューグループコードは図2で説明したものと同一であるため、説明を省略する。メニューコードは、実データ記憶部14に記憶される複数のデータベース郡により実現されるメニューを一意に特定する識別情報が格納されている。親メニューコードは、自分の上位に属するメニューのメニューコードが格納されている。メニュー名称は、メニューコードにより特定されるメニューの名称を示す情報が格納されている。リンクURLは、メニューを画面に表示させる際に使用されるファイル(たとえばASPファイル)への接続先情報が格納されている。なお、リンクURLにより指定されたファイルでは、後述するスキーマコードが使用され、各画面を表示させるためのソースコードや、一覧画面を表示させるためのソースコードなどが記述されている。このように、図3に示すメニューテーブル24Cは、サイトコード、メニューグループコードおよびメニューコードの組み合わせで一意に識別されるメニューの、親メニューコード、メニュー名、実際の画面データの格納場所を示すリンクURLとの関連付けがなされているテーブルである。なお、図3に図示していないが、メニューテーブル24Cにメニュー名称の別名を示す情報が格納される項目を設けてもよい。この項目に格納されるメニュー名称の別名は、たとえば、ある特定の企業の利用者がメニュー名称を異なる名称を付与したい場合にシステム管理者に依頼すると、システム管理者により登録されることが可能となる。
図4に示すメニュー分類テーブル24Dは、サイトコード、メニューコードの組み合わせにより一意に識別されるメニューの、メニュー分類区分、メニュー名称、公開区分1〜5、スキーマコードの関連付けがなされているテーブルである。なお、サイトコード、メニューコード、メニュー名称は図2で説明したものと同一であるため、説明を省略する。メニュー分類区分は、各メニューの階層区分を特定する情報であり、たとえば、1、2、3といった区分により定義され、この階層区分の数値が大きいほど、分類階層が下位であることを意味し、逆にこの階層区分の数値が小さいほど、分類階層が上位であることを示し、各メニューは、構成構造をなして論理的な関連付けがなされていることを示している。なお、このメニュー分類区分によるメニュー間の論理的な関連付けは図3に示した親メニューコードで各メニューが論理的に関連付けられている関係と対応している。
公開区分1〜5は、権限の異なる企業内の利用者のカテゴリに対応しており、たとえば、公開区分1はある企業の本部正社員が実データ記憶部14に記憶されるデータベースを利用する場合のセキュリティランクを設定する区分である。また、公開区分2は企業の店舗正社員用、公開区分3は企業の店舗パート社員用、公開区分4は企業の取引先用、公開区分5は顧客を含めた一般人用のセキュリティランクを特定する区分である。たとえば、公開区分1および2にはセキュリティランクの「1」が設定されていると、本部および店舗の正社員にはその分類定義の設定がなされたデータベースが完全に公開されており、参照および登録(新規登録および更新登録)が許可される。これに対し、公開区分3にはセキュリティランクの「2」が設定されていると、店舗のパート社員にはデータベースの参照のみが許可されており、登録までは許可されていない。さらに、公開区分4および5にはセキュリティランクの「0」が設定されると、取引先および一般人に対して実データ記憶部14に記憶されているデータベースは公開されず、参照および変更が一切許可されてない。なお、公開区分が「−」の場合には、そのサイトに接続を許可されているすべてのユーザに対して参照が可能であることを示している。
スキーマコードは、実データ記憶部14に記憶される実際のデータベースを構成するデータ項目の種類や属性を規定したスキーマ定義を特定するための識別情報である。
なお、サイト管理テーブル24A,メニューグループテーブル24B,メニューテーブル24C,およびメニュー分類テーブル24Dは単一のデータベースのオブジェクトとして存在してもよいし、全体として分類定義データベース24として機能すれば複数のデータベースにより各テーブルとして構築されてもよい。
図5に示す画面例は、上述した各テーブルにより実現される画面例を示す図である。図5に示すように、Webブラウザ25には、情報参照を示すメインメニュータブ25A、情報参照2を示すサブメニュータブ25B、および即更新2、即更新Viewという項目を含む3階層メニュー25Cが階層的に表示される。このように、メインメニュータブ25A、サブメニュータブ25B、3階層メニュー25Cは、上述したサイト管理テーブル24A、メニューグループテーブル24B、およびメニューテーブル24Cに定義されている内容に基づいて画面が構成されると共に、メニュー分類テーブル24Dに定義されている内容に応じてユーザ毎に選択できるメニュータブ25A、サブメニュータブ25B、および3階層メニューが決定される。
スキーマ定義データベース26には、上述したスキーマコードと、実データ記憶部14に記憶されている各データベースを構成するデータ項目の種類、または属性の定義情報とが記憶されている。なお、スキーマ定義データベース26に記憶されている各データベースのデータ項目の種類、または属性を示す定義情報については、実データ記憶部14に記憶されているデータベースによって様々な項目が存在するため、後述する。
クライアント端末30,31は、たとえば、マウス、キーボードなどの入力装置、およびディスプレイ(請求項の表示部の一例)などの出力装置とが接続されたPCなどのコンピュータにより構成され、少なくともOS,Webブラウザプログラムがセットアップされている。なお、クライアント端末30,31は、請求項のクライアント端末の一例であり、CPUなどから構成される制御部(不図示)が請求項の第1の画面表示処理部、第2の画面表示処理部、第1の送信処理部、第2の送信処理部の一例に相当する。
(分類定義情報設定時の処理手順)
続いて、分類定義情報設定時の処理手順について説明する。なお、以下の説明では、システム管理者がクライアント端末30からネットワーク29を経由して管理サーバ10へ接続することによって、上述した分類定義データベース24およびスキーマ定義データベース26の内容を変更、設定することができるものとして説明するが、管理サーバ10と同一LAN内の別のPCを利用して接続するようにしてもよい。また、利用者のうち、企業の運用管理者がシステム管理者と同等にスキーマ定義データベース26の内容については自由に変更、設定することができるようにしてもよい。
図6および図7は、図1に示すデータ統合管理システム1において、管理サーバ10とクライアント端末30との間で実行される定義情報設定時の処理手順の一例を示すフローチャートである。なお、以下の処理において、管理サーバ10のユーザ認証部13は、企業ID情報と、ユーザのID情報(ここではシステム管理者のID情報)と、パスワード情報がユーザ毎に関連付けられて登録されているユーザ認証データベース(不図示)を参照することによりユーザの正当性および設定権限を確認することができるものであり、ユーザ認証データベースは、管理サーバ10の記憶部に記憶されてもよいし、管理サーバ10とは別のサーバに記憶されてもよいものとする。
システム管理者は、クライアント端末30からネットワーク29を経由して管理サーバ10に接続する。具体的には、システム管理者は、クライアント端末30のWebブラウザプログラムを起動して、このデータ統合管理システム1のWebサーバ(不図示)に接続してWebページを表示させる。なお、ここでいうWebサーバは管理サーバ10と一体となって構築されていてもよいし、別のコンピュータとして構築されていてもよい。
表示されたWebページを見たシステム管理者が、サイトに含まれる特定のサービスメニューの設定を変更、または確認するために、クライアント端末30の入力装置(マウス、キーボードなど)を操作することによって企業ID情報、システム管理者のID情報およびパスワード情報(以下、これらを「認証情報」という。)を管理サーバ10へ送信する(S10)。管理サーバ10は、S10によってクライアント端末30から送信されてきた認証情報に基づいて、ユーザ認証を行うと共に、送信すべき表示画面情報の特定を行い(S11)、特定された画面情報を送信する(S12)。具体的には、管理サーバ14の定義情報設定部15は、ユーザ認証部13が送信されてきた認証情報から正当なユーザであると判定されると、該当する企業のサイト情報を分類定義データベース24より抽出する。そして、定義情報設定部15は、システム管理者に複数のサイトについての設定権限が付与されている場合には、それらの複数のサイトの中からサイトを選択できる画面を生成して、生成された画面情報をクライアント端末30へ送信する。なお、システム管理者の場合は原則として、データ統合管理システム1に含まれるすべてのサイトを選択できる画面情報がクライアント端末30へ送信されることになるが、ここでは説明の便宜上、2つのサイト(サイトA、サイトB)が抽出されたものとして説明する。この結果、クライアント端末30のディスプレイにはサイト選択画面が表示される(S13)。
図8は、図6に示すステップ13において、クライアント端末30のディスプレイに表示されるサイト選択画面の一例を示す図である。図8に示す例では、システム管理者に関連付けられたサイトとして選択できる「サイトA」を示すボタン34と、「サイトB」を示すボタン36とを有するサイト選択画面32が表示される。なお、以下の例ではシステム管理者が「サイトB」を示すボタン36をクリックすることにより選択されたものとして説明する。
システム管理者が、クライアント端末30のディスプレイに表示されたサイト選択画面32に従って「サイトB」を示すボタン36を選択して、選択されたサイトBに関する分類定義情報の取得要求を要求すると(S14)、定義情報設定部15は、対応した分類定義情報を分類定義データベース24から抽出し、抽出した分類定義リストを示す情報を生成して、生成された画面情報をクライアント端末30に送信する(S15)。この結果、クライアント端末30のディスプレイにサイトBの分類定義リスト40が表示される(S16)。
図9は、図6のS16において、クライアント端末30のディスプレイに表示される分類定義リスト画面の一例である。なお、この図9に示される画面例は、図2に示した分類定義データベース24を定義情報設定部15が参照することにより生成されるものである。
図9に表示された項目中の「分類区分」には、各メニューの分類を定義する値が設定されている。すなわち、「販促情報(メニューコード:260000)」には分類区分として大分類を示す「1」が設定されているため、上位の階層であることを意味している。また、「広告情報(メニューコード:260100)」、「キャンペーン情報(メニューコード:260200)」、「商品情報(メニューコード:260300)」、および「広告媒体情報(メニューコード:260400)」には分類区分として中分類を示す「2」が設定されているため、「販促情報(メニューコード:260000)」に包含される中位階層であることを意味している。また、「出版社情報(メニューコード:260401)」、「新聞社情報(メニューコード:260402)」、および「放送局情報(メニューコード:260403)」には分類区分として小分類を示す「3」が設定されているため、「広告媒体情報(メニューコード:260400)」に包含される下位階層であることを意味している。また、「公開区分1」〜「公開区分5」には、各データベースのセキュリティ情報が設定される。また、これら分類定義リストの中で、最も下位の階層(従属する階層が存在しない階層)に属するメニューが具体的なデータベースに対応することとなり、スキーマコードが設定される。なお、図9の分類定義リスト40中には8件のメニューが列挙されているだけであるが、分類定義データベース24に登録してあるメニューの件数が膨大な場合、システム管理者は検索画面(図示省略)においてメニューコード、メニュー名称などの検索条件を入力することにより、リスト表示されるメニューの件数を絞り込むことができる。
システム管理者が登録済みの分類定義情報について修正を行う場合、特定メニューに係る「修/削」ボタン42をクリックすることで、クライアント端末30から管理サーバ10へ分類定義編集画面の取得要求を送信する(S17)。これを受けた定義情報設定部15は、分類定義編集画面(HTML(HyperText Markup Language)形式の入力フォーム)を生成し、生成した画面情報をクライアント端末30に送信する(S18)。この結果、クライアント端末30のディスプレイに編集画面44が表示される(S19)。
図10は、図6のS19において、クライアント端末30のディスプレイに表示される編集画面の一例を示す図である。なお、この図10に示される画面例は、図2に示した分類定義データベース24を定義情報設定部15が参照することにより生成されるものであり、各公開区分と利用者のカテゴリとの対応関係、各セキュリティランクと公開区分との対応関係、および各セキュリティランクと利用態様(参照および登録不可/参照のみ可/参照および登録可)との対応関係は、上述した分類定義データベース24において設定される。
図10に示す通り、この編集画面44は、メニューコード、メニュー分類区分(図4のメニュー分類区分に対応)、メニュー名称、メニューコメント、公開区分1〜5、スキーマコードの各入力欄を有している。ここでシステム管理者が必要な入力欄に修正を行い、「更新」ボタン45をクリックして分類定義情報の更新要求をクライアント端末30から管理サーバ10へ送信すると(S20)、定義情報設定部15は、修正事項を分類定義データベース24に更新登録する(S21)。また、システム管理者が「複写」ボタン46をクリックした後、必要な項目に修正を行い、「更新」ボタン45をクリックして更新要求をクライアント端末30から管理サーバ10へ送信すると、定義情報設定部15は、分類定義データベース24に分類定義情報を追加登録する。なお、システム管理者は、図9の分類定義リスト画面において「分類定義の新規登録」ボタン48をクリックして、新規登録要求をクライアント端末30から管理サーバ10へ送信すると、定義情報設定部15は、分類定義情報の新規登録を行う。この場合、定義情報設定部15は、各入力欄が空白の編集画面44を生成して、クライアント端末30へ送信する。さらにシステム管理者は、「削除」ボタン47をクリックして削除要求をクライアント端末30から管理サーバ10へ送信すると、定義情報設定部15は、不要な分類定義情報を該当するデータベースから削除する。
(スキーマ定義情報設定時の処理手順)
続いて、スキーマ定義情報設定時の処理手順について説明する。実データ記憶部14に記憶されている各データベースを構成するデータ項目の種類、または属性は、上述の通り分類定義において関連付けたスキーマコードによって定義される。すなわち、システム管理者が図9の画面において「スキーマの参照」ボタン49をクリックし、スキーマ定義情報の参照要求をクライアント端末30から管理サーバ10へ送信すると(S22)、定義情報設定部15によってシステム管理者が上述した処理において選択した所属企業のスキーマ定義情報がスキーマ定義データベース26から抽出され、スキーマ定義リスト50を示す情報がクライアント端末30に送信される(S23)。この結果、クライアント端末30のディスプレイにスキーマ定義リスト50が表示される(S24)。
図11は、図7のS24において、クライアント端末30のディスプレイに表示されるスキーマ定義リスト画面の一例を示す図である。なお、この図11に示される画面例は、上述したスキーマ定義データベース26を定義情報設定部15が参照することにより生成される。
システム管理者が、図11に示すスキーマコード=CTJRF0003(スキーマ名称=商品情報)のスキーマ定義に関する「修/削」ボタン51をクリックし、詳細情報の参照要求を管理サーバ10へ送信すると(S25)、定義情報設定部15によってスキーマ定義データベース26からスキーマコードに関連付けられたスキーマ定義情報が抽出され、スキーマ項目リストとしてクライアント端末30に送信される(S26)。この結果、データベースのデータ項目に対応したスキーマ項目のリスト52が、クライアント端末30のディスプレイに表示される(S27)。
図12は、図7のS27において、クライアント端末30のディスプレイに表示されるスキーマ項目リスト画面の一例を示す図である。なお、この図12に示される画面例は、上述したスキーマ定義データベース26を定義情報設定部15が参照することにより生成される。
図12に示すように、「商品情報」のスキーマ定義は、商品コード、商品コード区分、商品名、カナ名称、取扱区分、取扱センター、セールスポイントの各スキーマ項目を有している。また、項目名称および項目IDの他、各スキーマ項目に設定された属性の一部である「項目タイプ」、「行No」、「列No」も一覧表示されている。
システム管理者が特定のスキーマ項目に設定されている定義情報を参照する場合、その特定のスキーマ項目の「修/削」ボタン53をクリックする。たとえば、システム管理者が「商品コード」項目の「修/削」ボタン53をクリックし、定義情報の参照要求を送信すると(S28)、定義情報設定部15によってスキーマ定義データベース26から必要なスキーマ定義情報が抽出され、スキーマ項目の編集画面情報がクライアント端末30に送信される(S29)。この結果、クライアント端末30のディスプレイに「商品コード」項目のスキーマ項目編集画面54が表示される(S30)。
図13は、図7のS30において、クライアント端末30のディスプレイに表示されるスキーマ項目編集画面の一例を示す図である。なお、この図13に示される画面例は、上述したスキーマ定義データベース26を定義情報設定部15が参照することにより生成される。
図13に示す編集画面54を参照することにより、システム管理者はスキーマ項目に設定されている項目属性を確認できる。図13に示すように、データ統合管理システム1では、実データ記憶部14に記憶されるデータベースの各データ項目に対応するスキーマ項目に予め複数の項目属性を設定し、その定義情報に基づいて各種の表示画面を生成したり、各種処理の制御を行うことができる。以下、各項目属性について説明するが、これらはあくまでも一例であり、必要に応じてその項目数を増減すること、または項目属性について変更することが可能である。なお、実データ記憶部14に記憶されるデータベースには、上述のスキーマ項目に対応する複数の項目属性についての従属関係(親子関係)が予め設定されている。
(登録画面および詳細画面に係る項目属性)
図13に示す「行No、列No」は、後述の登録画面および詳細画面においてデータ項目を表示させる位置を定義する項目属性であり、両者とも「1」が設定されている場合には1行目の1列目に表示されることとなる。これに対し、行No「2」、列No「3」と設定されている場合、データ項目は登録画面および詳細画面において2行目の3列目に表示されることを意味する。
「項目タイプ」は、データ項目のデータ型を設定する項目属性であり、「入力項目」とある場合にはデータ型が文字列であり、登録画面においてテキスト入力ボックスが表示されることを意味している。システム管理者は、「▼」ボタンをクリックしてプルダウンメニューを開くことにより、「コンボボックス」、「コンボボックス(複数)」、「チェックボックス」、「ラジオボタン」、「テキストエリア」および「デフォルト日付」などの多彩なデータ型から必要なものを選択することができる。
「項目ID」は、スキーマ項目を他のスキーマ項目から識別するための符号であり、ユニークな値を入力する。「項目名称」は、文字通り、スキーマ項目の表示名称を入力する欄である。「入力欄長」は、登録画面において表示される入力欄の桁数を特定するための数値を入力する欄である。「項目長」は、データ項目の桁数を設定する項目属性であり、詳細画面における表示ボックスの桁数もこの項目長によって定義される。「初期値」は、登録画面においてデフォルトで表示される文字列を特定するための設定項目である。
「チェックタイプ」は、登録画面において該当のデータ項目に入力された値の適否を判定する際の基準を定義する欄であり、ここに具体的なコードを入力することにより、たとえば空白の場合にエラーと判定したり、半角英数文字以外の値が入力された場合にエラー判定することが実現される。「IME(Input Method Editor)」は、ここにチェックを入れておくと登録画面において自動的に日本語文字入力システムが起動するようになる。
「値リスト」、「表示文字列リスト」および「表示カラー定義」は、上記項目タイプにおいてコンボボックスやラジオボタンなどを指定した場合に、選択肢に付する数字や記号を指定する欄が「値リスト」であり、各選択肢の文字列を記述する欄が「表示文字列リスト」である。また、選択肢に特殊な色彩で表示する場合には、「表示カラー定義」に必要なコードを記述する。図13では、「項目タイプ」として「入力項目」が指定されているため、各欄ともブランクとなされている。
(検索画面に係る項目属性)
図13に示す「検索キー区分」は、検索画面における検索キー入力欄に入力された値に対する検索処理方法を制御するための項目であり、ここに「1(完全一致)」を入力した場合、商品コード欄に入力された値と完全一致するデータのみが出力データ生成部19によって抽出されることとなる。これに対し「2(Like検索)」を入力した場合、商品コード欄に入力された値を一部に含んだデータが出力データ生成部19によって抽出されることとなる。また、「3(範囲)」を入力した場合には、検索画面において「○○」〜「××」という範囲指定型の入力欄が表示され、ここで指定した条件範囲に合致するデータが出力データ生成部19によって抽出されることとなる。「検索キー順」は、検索画面における項目の表示順を定義するための数値を入力する欄である。
(一覧画面に係る項目属性)
「一覧表示順」は、一覧画面における表示順を指定する値を入力する設定項目である。ただし、この項目に0または100以上の数値を入力した場合、データ項目は一覧画面において非表示扱いとなる。「一覧表示長」は、一覧画面における表示桁数を特定するための数値を入力する欄である。「一覧表示タイトル」は、一覧画面におけるデータ項目の表示タイトルを入力する欄である。多くの場合には上述の「項目名称」と同じ値となるが、表示スペースを節約する必要があるときは短縮形や略称などを入力しておく。
(帳票に係る項目属性)
「帳票出力」は、このチェックボックスにチェックが入力されている場合には、帳票ファイル生成時にデータ項目が含められることとなる。
スキーマ定義に新たなスキーマ項目を追加する場合、システム管理者は図13のスキーマ項目編集画面54において「複写」ボタン55をクリックした後、項目ID、項目タイプ、項目名称などに必要な修正を行い、「更新」ボタン56をクリックすることで、修正情報を管理サーバ10へ送信する(S31)。これを受けた定義情報設定部15は、クライアント端末30から送信された新たなスキーマ項目情報を、スキーマコード(CTJRF0003)に関連付けてスキーマ定義データベース26に記憶する(S32)。この結果、つぎにシステム管理者が図12のスキーマ項目リスト52をディスプレイに表示させた際には、追加登録したスキーマ項目が表示されることとなる。
システム管理者は、このスキーマ項目リスト52の表示画面において「項目追加」ボタン57をクリックすることにより、スキーマ項目の追加を行うこともできる。この場合も、定義情報設定部15から全項目属性がブランクとなされた編集画面54が送信される。これに対しシステム管理者は、各項目属性に必要な値を定義し、「更新」ボタン56をクリックする。これを受けた定義情報設定部15は、上記と同様、クライアント端末30から送信されたスキーマ項目情報を、スキーマコード(CTJRF0003)を関連付けてスキーマ定義データベース26に記憶する。
図13の編集画面54において、システム管理者が「削除」ボタン58をクリックし、特定のスキーマ項目の削除をクライアント端末30から管理サーバ10へ要求すると(S33)、定義情報設定部15によってスキーマ項目がスキーマ定義から削除される(S34)。
このように、データ統合管理システム1では、実データ記憶部14に記憶される各データベースを構成するデータ項目の種類や属性、あるいは画面生成時の表示制御についてはスキーマ定義データベース26において管理および設定を行うと共に、分類定義データベース24においてこのスキーマ定義を具体的なメニューに関連付けることにより、その定義内容をデータベースに反映させる仕組みを採用している。そのため、データ統合管理システム1では、一旦設定したスキーマ定義のみを抽出し、他の複数のデータベースで使い回すことが可能となる。たとえば、ある企業の営業部において取引先企業に係る情報を記憶するためのスキーマ定義を設定し、これを用いて営業部専用の取引先データベースを構築していた場合、資材部が新たに取引先企業用のデータベースを構築する必要が生じた際には、同じスキーマ定義を指定することによって簡単に取引先企業用のデータベースを構築することができる。もっとも、このように分類定義とスキーマ定義とを分離することなく、個々のデータベース単位でスキーマ定義を設定するように運用することもできる。また、分類定義データベース26において、各企業のユーザ毎のセキュリティランクを設定してあるため、ユーザの権限に応じて、実データ記憶部14に記憶される各データベースへの接続態様(登録、参照、削除など)をシステム管理者が制御することが可能となっており、ユーザの部署、企業の違いに応じて権限の設定を容易に行うことできる。
以上のようにして、システム管理者による定義情報の設定が完了すると、これに基づいて構築された各データベースは、予め設定された利用権限の範囲内で利用者に利用可能とされる。
(データベース利用時の処理手順)
続いて、利用者によるデータベース利用時の処理手順について説明する。図14および図15は、図1に示すデータ統合管理システム1におけるデータベース利用時の処理手順の一例を示すフローチャートである。なお、以下の処理において、管理サーバ10のユーザ認証部13は、企業ID情報と、利用者のID情報と、パスワード情報がユーザ毎に関連付けられて登録されているユーザ認証データベース(不図示)を参照することによりユーザの正当性および利用権限を確認することができるものとする。なお、このユーザ認証データベースは、管理サーバ10の記憶部に記憶されてもよいし、管理サーバ10とは別のサーバに記憶されてもよい。
まず利用者は、クライアント端末31からネットワーク29を経由して管理サーバ10に接続する。具体的には、利用者は、クライアント端末31のWebブラウザプログラムを起動して、このデータ統合管理システム1のWebサーバ(不図示)に接続してWebページを表示させる。なお、ここでいうWebページは図6および図7において説明した際の管理者が接続したWebページと同一のものであっても異なるものであってもよい。そして、表示されたWebページを見た利用者がクライアント端末31の入力装置(マウス、キーボードなど)を操作することによって、企業ID情報、利用者ID情報およびパスワード情報がクライアント端末31から管理サーバ10へ送信される(S40)。管理サーバ10は、S40によってクライアント端末31から送信された情報に基づいて、ユーザ認証および送信すべきサービス提供画面情報の特定を行う(S41)。具体的には、管理サーバ14のユーザ認証部13により企業IDおよび管理者IDにより正当なユーザであると判定されると、出力データ生成部19により生成された画面情報をクライアント端末31へ送信する(S42)。この結果、クライアント端末31のディスプレイにはサービス提供画面60が表示される(S43)。なお、出力データ生成部19がこのサービス提供画面60を生成するに際し、分類定義データベース24に登録された企業ID、利用者IDおよびメニューグループIDに関連付けられたメニューグループIDを特定し、その特定されたメニューグループIDによって階層的に関連付けられたメニューをメニューコードにより特定し、さらに特定されたメニューに関連付けられたセキュリティランクを参照して、利用者に対し利用が許可されたデータベースのみをフォルダ状アイコン61として表示させる。ここでは、利用者が本部の正社員であり、自社の全データベースについて参照および更新が許可されているものとして話を進める。また、このサービス提供画面は、HTMLファイル(Java(登録商標)Scriptなどを含む場合もある)などより構成される。以下の各種画面も同様である。
図16は図2のS43において、クライアント端末31のディスプレイに表示されるサービス提供画面、データの一覧画面、およびデータの検索画面の一例を示す図である。図16に示すように、サービス提供画面60では、フォルダ状アイコン61によって分類定義に従ったデータベースの存在が明示される。
まず、利用者が「販促情報」のフォルダ状アイコン61をクリックすると、販促情報の下位階層に属する「CM情報」、「キャンペーン情報」、「商品情報」、「広告媒体情報」のフォルダ状アイコン61が展開する。これに対し、利用者が「商品情報」のフォルダ状アイコン61をクリックし、そのデータベースの利用要求を送信すると(S44)、出力データ生成部19は、実データ記憶部14内の商品情報データベースに登録されたデータ(商品情報)を抽出させると共に、スキーマ定義データベース26の定義情報に従って一覧画面(HTMLファイルなど)を生成する(S45)。また、出力データ生成部19は、スキーマ定義データベース26の定義情報を参照し、商品情報データベースの検索画面(HTMLファイルなど)を生成する(S46)。これらの一覧画面および検索画面は、出力データ生成部12によってクライアント端末31に送信される(S47)。この結果、図16に示すように、クライアント端末31のディスプレイに一覧画面62および検索画面64が表示される(S48)。なお、図16には、サービス提供画面60、一覧画面62、および検索画面64を同一ウィンドウ中に表示させた例が描写されているが、各画面を別ウィンドウにおいて表示させることも可能である。
現時点では登録されたデータの件数が2件と少ないため、リスト表示されるデータ数を絞り込む必要がないが、登録件数が多い場合には検索画面64の入力欄に商品名や商品コード、取扱センターなどの検索条件を入力し、「検索」ボタン65をクリックして、検索条件を送信する(S49)。出力データ生成部19は、利用者が指定した検索条件に合致する実データのみを抽出し(S50)、検索結果の一覧画面(HTMLファイルなど)を生成する(S51)。この検索結果の一覧画は、出力データ生成部19によってクライアント端末31に送信される(S52)。この結果、図示は省略したが、クライアント端末31のディスプレイに検索結果一覧画面が表示される(S53)。これにより、利用者は一覧画面62における表示件数を絞り込むことができる。
これに対し、利用者が具体的な商品名である「おいしいおにぎり」をクリックし、データの参照要求を送信すると(S54)、出力データ生成部19によってデータに関する詳細画面(HTMLファイルなど)が生成され(S55)、クライアント端末31に送信される(S56)。この結果、クライアント端末31のディスプレイ上に別ウィンドウが開き、詳細画面が表示される(S57)。
図17は、図15のS57において、クライアント端末31のディスプレイに表示されるデータの詳細画面の一例を示す図である。
図17に示すように、詳細画面66には、商品名称、商品コード、商品コード区分、カナ名称、取扱区分、取扱センター、セールスポイントの各データ項目が1件表示される。内容を確認して満足した利用者は、「戻る」ボタン67をクリックし、図16の一覧画面62に戻る。
登録内容に修正が必要な場合、利用者は一覧画面62において特定データの「更新」ボタン68をクリックして、特定データの更新要求を送信する(S58)。この結果、出力データ生成部19によってデータに係る更新登録画面(HTMLファイルなど)が生成され(S59)、クライアント端末31にその画面情報が送信される(S60)。この結果、クライアント端末31のディスプレイ上に別ウィンドウが開き、更新登録画面が表示される(S61)。
図18は、図15のS61において、クライアント端末31のディスプレイに表示されるデータの更新登録画面の一例を示す図である。図18に示すように、更新登録画面70には、データの各データ項目に関する入力欄が設けられている。これに対し利用者は、必要なデータ項目に新たなデータを入力した後、「登録」ボタン71をクリックし、更新データを送信する(S62)。これを受けた実データ更新処理部17は、変更後のデータを実データ記憶部14内の商品情報データベースにXML(Extensible Markup Language)形式で更新登録する(S63)。
この際、実データ更新処理部17はスキーマ定義データベース26を参照し、「チェックタイプ」の項目属性に設定された制御コードに従って入力チェック処理を実行する。たとえば、「商品名称」の項目について「必須入力」を意味するコードが設定されているにもかかわらず、項目に対する入力値が存在しない場合、実データ更新処理部17はエラーと判定し、商品名称の入力を求めるメッセージをクライアント端末31に送信する。
データの新規登録を希望する場合、利用者は一覧画面62において「新規登録」ボタン72をクリックし、新規データの登録要求を管理サーバ10へ送信する(S65)。この結果、出力データ生成部19によってデータベースの新規登録画面(HTMLファイルなど)が生成され(S66)、クライアント端末31に送信される(S67)。この結果、クライアント端末31のディスプレイ上に別ウィンドウが開き、新規登録画面が表示される(S68)。この新規登録画面は、図示は省略したが、図18の更新登録画面と同様の入力欄を有している。ただし、各入力欄にはデータが表示されておらず、ブランクとなされている。これに対し利用者は、各入力欄にデータを新規入力した後、「登録」ボタンをクリックして新規データを送信する(S69)。これを受けた実データ更新処理部17は、上記と同様の入力チェク処理を実行した後、入力データを実データ記憶部14内の商品情報データベースにXML形式で新規登録する(S70)。
データベースに登録されたデータの入手を希望する利用者は、一覧画面62において「帳票出力」ボタン73をクリックし、データのダウンロード要求を送信する(S71)。これを受けた出力データ生成部19は、実データ記憶部14から商品情報データベースの登録データを抽出し、CSV(Comma Separated Values)やEXCEL(登録商標)などのファイル形式に変換する。この帳票ファイルはクライアント端末31に送信され(S72)、不図示の記憶部に記憶される(S73)。
出力データ生成部19は、上述の一覧画面62、検索画面64、詳細画面66、および登録画面70を生成するに際し、分類定義データベース24およびスキーマ定義データベース26を参照し、各画面において表示するデータ項目の種類、各データ項目の表示位置、表示順、および表示形式などの定義情報を取得し、これらに従って各画面を動的に生成する。従来は、各画面にデータ項目の表示に関するプログラムコードを個別に記述する必要があったが、このデータ統合管理システム1では予めデータ項目毎に各画面生成時の制御情報がスキーマ項目の属性情報としてまとめられて定義されているため、出力データ生成部19がこれらの定義に従って自動的に最適な画面を生成することができる。また、画面の構成を変更する場合も、必要なデータ項目に係る設定をスキーマ項目編集画面54において調整するだけで済む。また、帳票ファイル生成時にも、出力データ生成部19がスキーマ定義データベース26を参照し、帳票中に盛り込むべきデータ項目を決定することができる。
このように、データ統合管理システム1では、実データ更新処理部17によってデータがXML形式で実データ記憶部14に記憶されるデータベースに登録される。この際、各データに含まれるデータ項目(データ要素)にはそれぞれ対応したスキーマ定義の項目IDがタグ付け(関連付け)されているため、出力データ生成部19が、各データ項目に対応する項目属性を反映させることにより、具体的な画面を生成することができる。また、XML形式で登録されたデータを有するデータベースは各データ要素が可変長であると共に、データ型の修正も容易に可能であるため、スキーマ項目編集画面54において後から柔軟に項目長やデータ型を変更することができる。
なお、上述した実施の形態では、利用者が本部の正社員であり、企業の全てのデータベースに対して全て接続可能である場合を想定していたが、よりセキュリティランクの低い利用者が管理サーバ10に接続した場合には、異なった画面表示となる。たとえば、店舗のパート社員には商品情報の表示のみが許可され、更新、または登録が許可されていないため、パート社員のIDで管理サーバ10にアクセスした場合、そのクライアント端末31にはサービス提供画面60、検索画面64、一覧画面62、および詳細画面66の表示はなされるが、登録ボタン、または更新ボタンなどデータベースの変更に関するボタン類が非表示あるいはグレ−表示(選択不可となる表示)となる。この結果、更新登録画面70がクライアント端末31のディスプレイに表示されることもない。また、取引先の担当社員には商品情報の表示自体が許可されていないため、そのクライアント端末31のサービス提供画面60にはフォルダ状アイコン61が表示されず、その存在自体を認識することができない。
(変形例)
次に、上述した実施の形態の変形例について説明する。図12に示すスキーマ項目リストの「項目タイプ」では、入力項目、コンボボックス、チェックボックスを対象としていたが、その他にもたとえば画像ファイルのデータ形式を対象として設けてもよい。これにより、たとえば利用者が表示画面に特定の画像データにより表示されるアイコンを使用したい場合などに、この項目を使用することで、作成される画面の自由度がより高くなる。
また、図13に示したスキーマ項目を編集する編集画面54では、画面生成の際の表示言語は単一言語を想定しているが、その他にも、画面内に表示される文字、名称を外国語に翻訳するためのスキーマ項目(たとえば、日本語で表示される名称を中国語または英語に翻訳するなど)を設け、この項目のチェック有無によってシステム管理者がこの機能の有無について自由に設定できるようにしてもよい。これにより、たとえば、実際は同じ画面構成であるが表示される言語だけが異なる画面を作成したいと利用者が望む場合に、システム管理者がこの項目のチェックを入れるだけで、翻訳された画面内に表示される文章についても適切に翻訳された文書が利用者により容易に生成できるようになり、非常に便利なものとなる。
また、上述の外国語に翻訳するためのスキーマ項目を設ける際に、翻訳前の言語と翻訳後の言語との間で文字コードの体系が異なる場合も想定されるため、文字コード体系についての桁数を指定するスキーマ項目を定義しておき、図13に示したスキーマ項目を編集する編集画面54に表示させるようにしてもよい。これにより、たとえば利用者によって生成される画面について、翻訳後に文字化けしてうまく表示されないという不具合をシステム管理者側の設定により、防止することができるようになる。
また、外国語に翻訳するためのスキーマ項目を定義して設けると共に、システム管理者が文字コードを選択できるスキーマ項目(たとえば、ISO-2022-JP、EUC-JP、Shift-JIS、Unicode、UTF-8、UTF-16、Big5、GB2312などの文字コードのいずれかを選択できる項目)を定義して設けておき、図13に示すスキーマ項目を編集する編集画面54に表示させるようにしてもよい。図19は、文字コードのいずれかを選択できる項目が含まれた編集画面の一例を示す図である。図19に示す編集画面54Aには、文字コードを選択する項目59が設けられており、この項目59の横にある「▼」ボタンをクリックしてプルダウンメニューを開くことにより、具体的な文字コードを選択することができる。これにより、たとえば、利用者があるメニューについて日本語で作成した画面をそのまま用いて、特定の外国語へ翻訳した画面を生成する際に、システム管理者側で明示的に文字コード体系を指定できるようになるため、このような方法でも上述した不具合を防止することができるようになる。
また、システム管理者または利用者がデータ統合管理システム1に接続して表示されるWebページ(TOPページ)において言語選択画面を表示させ、選択された言語でそれ以降に表示されるWebページを表示するようにしてもよい。また、TOPページ以外の各階層において言語選択項目を設けて、言語の切り替えができるようにしてもよい。
また、管理サーバ10の制御部12は、分類定義データベース24に記憶される分類定義情報、スキーマ定義データベース26に記憶されるスキーマ定義情報を階層区分毎に一括して複製する機能、またはこれらの定義情報に基づいて生成される画面の複製であって、その画面上に表示される文字を外国語(他の言語)に翻訳した画面を生成できる機能(たとえば、一括してサイト毎、メニュー毎、スキーマ定義リスト毎、スキーマ項目リスト毎、項目名称毎の単位で複製すると共に、複製元に含まれる文字情報については翻訳する言語の文字コードに設定を切替えた上で、その文字情報を所望の言語に翻訳する機能)を有するようにしてもよい。たとえば、図16に示すサービス提供画面60のようにGUIベースで画面情報を各階層の通りに表示させ、それぞれを示すフォルダアイコンをマウスでドラッグアンドドロップすることによって、簡単に複製できるようにするなどである。これにより、システム管理者および利用者にとって、データ統合管理システム1を使用する際に、特定のメニュー、または特定のメニューに紐付く画面のみ外国語に翻訳して使用したい場合などに便利なものとなる。
また、管理サーバ10が有する各部および各機能は、必ずしも一つの装置においてすべて実現する必要はなく、複数の装置(コンピュータ)を用いて実現するようにしてもよい。たとえば、制御部12が実現する機能のうち、定義情報設定部15を有する装置と、実データ更新処理部17を有する装置と、出力データ生成部19を有する装置とを構築して実現する、または定義情報設定部15を有する装置と、実データ更新処理部17および出力データ生成部19を有する装置とを構築して実現するようにしてもよい。
また、上述した実施の形態または変形例に係る管理サーバ10、あるいはクライアント端末30,31が有する各構成ブロックの機能は、全てをソフトウェアによって実現する、あるいはその一部をソフトウェアで実現してもよい。全てまたはその一部をソフトウェアによって実現する場合、そのようなプログラム(不図示)は、各装置として機能させるためのプログラムであり、各装置が奏する効果と同様の効果を奏することが可能である。また、上述した実施の形態または変形例に係る管理サーバ10あるいはクライアント端末30,31の各装置により実行される動作の全てまたは一部は、データ統合管理方法としても捉えることが可能であり、そのようなデータ統合管理方法は、各装置が奏する効果と同様の効果を奏することが可能である。