(57)【要約】【課題】データベースのスキーマ上で、ユーザの所属会社によるデータベースの情報閲覧制御を行い、管理者の作業負荷を軽減するデータベースシステム等を提供する。【解決手段】異なる所属会社に所属する複数のユーザ１０２で１つのユーザグループ１０４を作成し、各クライアント端末１０３の情報閲覧要求に対して、アプリケーション１１１は、データベース３００に接続しアクセススキーマ３０２を介して、データスキーマ３０１上の商品情報をアクセスする。アクセススキーマ３０２は、ログインユーザの所属会社名の取得、商品情報の登録会社名の取得、ログインユーザの所属会社名による閲覧商品情報のフィルタリングを行う。登録会社の増減、変更に応じて、データスキーマ３０１の関連テーブルのデータを更新することにより、商品情報の登録会社のメンテナンスを行う。【選択図】図６
2008234286.tif 000002
【特許請求の範囲】
【請求項１】
ユーザのクライアント端末にネットワークを介して接続され、情報を記憶する少なくとも１つのデータベースを有し、前記データベースの情報を閲覧制御するデータベースサーバであって、
前記ユーザの所属会社識別情報を有するユーザ情報と、
前記情報と、前記情報と登録した登録会社識別情報を対応付ける管理テーブルと、からなるデータスキーマと、ログインユ−ザの所属会社識別情報による前記情報のフィルタリング処理を行うアクセススキーマと、を記憶する前記データベースと、
前記アクセススキーマを介して、前記データスキーマの情報をアクセスするアクセス手段と、
を備え、
前記アクセススキーマは、
ログインした前記クライアント端末の前記ユーザ情報から前記所属会社識別情報を取得し、ログインユーザを判別する手段と、
前記情報の登録会社識別情報を取得する手段と、
取得したログインユ−ザの所属会社識別情報と、前記情報の登録会社識別情報とを比較し、当該所属会社識別情報と同じ登録会社識別情報を有する前記情報のみを抽出し、参照可能とするフィルタリング処理を行うフィルタリング手段と、
を具備することを特徴とするデータベースサーバ。
【請求項２】
前記データベースに対する前記情報の追加／削除／変更に応じて、前記管理テーブルの当該情報に対応付けられる前記登録会社識別情報を追加／削除／変更することを特徴とする請求項１記載のデータベースサーバ。
【請求項３】
前記データベースに前記情報を登録するユーザの所属会社識別情報の追加／削除／変更に応じて、前記ユーザ情報、及び前記管理テーブルの前記登録会社識別情報を追加／削除／変更することを特徴とする請求項１記載のデータベースサーバ。
【請求項４】
ユーザのクライアント端末と、情報を記憶する少なくとも１つのデータベースを有し、前記データベースの情報を閲覧制御するデータベースサーバと、がネットワークを介して接続されるシステムであって、
前記データベースサーバは、
前記ユーザの所属会社識別情報を有するユーザ情報と、
前記情報と、前記情報と登録した登録会社識別情報を対応付ける管理テーブルと、からなるデータスキーマと、ログインユ−ザの所属会社識別情報による前記情報のフィルタリング処理を行うアクセススキーマと、を記憶する前記データベースと、
前記アクセススキーマを介して、前記データスキーマの情報をアクセスするアクセス手段と、
を備え、
前記アクセススキーマは、
ログインした前記クライアント端末の前記ユーザ情報から前記所属会社識別情報を取得し、ログインユーザを判別する手段と、
前記情報の登録会社識別情報を取得する手段と、
取得したログインユ−ザの所属会社識別情報と、前記情報の登録会社識別情報とを比較し、当該所属会社識別情報と同じ登録会社識別情報を有する前記情報のみを抽出し、参照可能とするフィルタリング処理を行うフィルタリング手段と、
を具備することを特徴とするデータベースシステム。
【請求項５】
コンピュータを請求項１から請求項３のいずれかに記載のデータベースサーバとして機能させるプログラム。
【請求項６】
コンピュータを請求項１から請求項３のいずれかに記載のデータベースサーバとして機能させるプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを利用したデータベースシステムに係り、特に、アクセススキーマを介した情報の閲覧制御方法に関する。
【背景技術】
【０００２】
近年、カタログ制作を行う際、コンピュータの普及に伴い、カタログに載せる商品データをデータベース化して利用することが始まっている。データベースと連携し、デスクトップパブリッシング（ＤＴＰ）等でカタログ制作作業を行い、その効率化が図られてきている。例えば、商品情報等を蓄積したデータベースと、データベースの情報を管理し、データベースの情報の入出力、検索、閲覧等の機能を提供するサーバと複数のユーザ端末装置等からなるＷｅｂ上で動作するデータベースシステムが幾つか存在する（例えば、特許文献１）。
更に、アプリケーション側でのアクセス権限に関するロジック実装を軽減することを目的とした、ユーザのアクセス権限をデータベースのスキーマ上に保持し、ユーザグループ毎に情報の閲覧範囲を設定できるデータベースシステムが開示されている（例えば、特許文献２）。
【０００３】
【特許文献１】特開２００１−３０６３７７号公報
【特許文献２】特開２００６−２６８２６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
昨今、複数の仕入先会社がデータベースシステムを使用する際、ユーザが所属する仕入先会社が登録した情報のみ閲覧できるようにしたいという要望が強くなってきている。
しかしながら、従来の特許文献２に記載されているデータベースシステムでは、仕入先会社毎にユーザグループを作成し、参照設定などユーザグループの設定を行えば実現可能であるが、例えば、仕入先会社が２００社など多数存在する場合は、仕入先会社数分のユーザグループの設定を行う必要があった。
【０００５】
図１３は、従来のデータシステム１０００におけるユーザのアクセス権限に関するデータ制限方法を示す図である。図１３に示すように、従来のデータシステム１０００では、仕入先会社毎にユーザグループ１０４−１、１０４−２、１０４−３を作成し、ユーザグループ１０４−１、１０４−２、１０４−３の各クライアント端末１０３は、サーバのアプリケーション１１１１にアクセス、データベース１３００にログイン要求を行う。
アプリケーション１１１１は、クライアント端末１０３からのログイン要求に対するユーザＩＤに対応付けられるユーザグループＩＤからアクセススキーマ１３０２を特定、接続し、アクセススキーマ１３０２を介して、データスキーマ１３０１上の実データをアクセスする。
アクセススキーマ１３０２−１、１３０２−２、１３０２−３は、夫々保持されているユーザグループ１０４−１、１０４−２、１０４−３毎のデータ参照範囲情報、アクセス制限情報に基づくフィルタリング処理やアクセス制限処理を行っていた。
【０００６】
その結果、仕入先会社数分のユーザグループの設定、また、項目追加／削除時のメンテナンス作業を、ユーザグループ数分の設定を行う必要があり、管理者の負担がかなり大きくなり、メンテナンス効率の低下を招く原因となっている。
【０００７】
本発明は、以上の点に鑑みてなされたものであり、データベースのスキーマ上で、ユーザの所属会社によるデータベースの情報閲覧制御を行うことを可能とし、管理者の作業負荷を軽減するデータベースシステム等を提供することを目的とする。
【課題を解決するための手段】
【０００８】
前述した目的を達成するために第１の発明は、ユーザのクライアント端末にネットワークを介して接続され、情報を記憶する少なくとも１つのデータベースを有し、前記データベースの情報を閲覧制御するデータベースサーバであって、前記ユーザの所属会社識別情報を有するユーザ情報と、前記情報と、前記情報と登録した登録会社識別情報を対応付ける管理テーブルと、からなるデータスキーマと、ログインユ−ザの所属会社識別情報による前記情報のフィルタリング処理を行うアクセススキーマと、を記憶する前記データベースと、前記アクセススキーマを介して、前記データスキーマの情報をアクセスするアクセス手段と、を備え、前記アクセススキーマは、ログインした前記クライアント端末の前記ユーザ情報から前記所属会社識別情報を取得し、ログインユーザを判別する手段と、前記情報の登録会社識別情報を取得する手段と、取得したログインユ−ザの所属会社識別情報と、前記情報の登録会社識別情報とを比較し、当該所属会社識別情報と同じ登録会社識別情報を有する前記情報のみを抽出し、参照可能とするフィルタリング処理を行うフィルタリング手段と、を具備することを特徴とするデータベースサーバである。
【０００９】
また、前記データベースに対する前記情報の追加／削除／変更に応じて、前記管理テーブルの当該情報に対応付けられる前記登録会社識別情報を追加／削除／変更することが望ましい。
また、前記データベースに前記情報を登録するユーザの所属する所属会社識別情報の追加／削除／変更に応じて、前記ユーザ情報、及び前記管理テーブルの前記登録会社識別情報を追加／削除／変更することが望ましい。
【００１０】
第１の発明によるデータベースサーバは、ユーザの所属会社識別情報を有するユーザ情報と、情報と、情報と登録した登録会社識別情報を対応付ける管理テーブルと、からなるデータスキーマと、ログインユ−ザの所属会社識別情報による情報のフィルタリング処理を行うアクセススキーマと、を記憶するデータベースを有し、アクセススキーマを介して、データスキーマの情報をアクセスし、アクセススキーマは、ログインしたクライアント端末のユーザ情報から所属会社識別情報を取得し、ログインユーザを判別し、情報の登録会社識別情報を取得し、取得したログインユ−ザの所属会社識別情報と、情報の登録会社識別情報とを比較し、当該所属会社識別情報と同じ登録会社識別情報を有する前記情報のみを抽出し、参照可能とするフィルタリング処理を行う。
【００１１】
「データスキーマ」には、情報（商品情報）と、情報と該情報を登録した登録会社識別情報を対応付けられる管理テーブルを記憶する。
「アクセススキーマ」は、ユーザの所属会社によるデータベースの情報を閲覧制御するフィルタリング処理を行う。
【００１２】
第１の発明では、登録会社（例えば、仕入先会社）毎にユーザグループに対する設定を行わず、１つのユーザグループで、ログインユーザが所属する会社が登録した情報のみを参照可能とする。
また、登録会社の登録・更新時に、新たにユーザグループを作成し、設定する必要がなく、登録会社を含むユーザ情報だけを追加し、データ、項目の登録・更新時には１ユーザグループ分だけのメンテナンスでよくなるため、管理者の作業負荷を軽減でき、メンテナンス効率が向上する。
更に、データベースサーバは、フィルタリングロジックをデータベース管理手段で担うようにし、アプリケーション側のロジック実装の負荷を軽減し、プログラム開発効率が向上できる。
【００１３】
また、第２の発明は、ユーザのクライアント端末と、情報を記憶する少なくとも１つのデータベースを有し、前記データベースの情報を閲覧制御するデータベースサーバと、がネットワークを介して接続されるシステムであって、前記データベースサーバは、前記ユーザの所属会社識別情報を有するユーザ情報と、前記情報と、前記情報と登録した登録会社識別情報を対応付ける管理テーブルと、からなるデータスキーマと、ログインユ−ザの所属会社識別情報による前記情報のフィルタリング処理を行うアクセススキーマと、を記憶する前記データベースと、前記アクセススキーマを介して、前記データスキーマの情報をアクセスするアクセス手段と、を備え、前記アクセススキーマは、ログインした前記クライアント端末の前記ユーザ情報から前記所属会社識別情報を取得し、ログインユーザを判別する手段と、前記情報の登録会社識別情報を取得する手段と、取得したログインユ−ザの所属会社識別情報と、前記情報の登録会社識別情報とを比較し、当該所属会社識別情報と同じ登録会社識別情報を有する前記情報のみを抽出し、参照可能とするフィルタリング処理を行うフィルタリング手段と、を具備することを特徴とするデータベースシステムである。
【００１４】
第２の発明は、第１の発明のデータベースサーバと、データベースに対して操作要求を行うクライアント端末から構成されるデータベースシステムに関する発明である。
【００１５】
第３の発明は、コンピュータを第１の発明のデータベースサーバとして機能させるプログラムである。
第４の発明は、コンピュータを第１の発明のデータベースサーバとして機能させるプログラムを記録した記録媒体である。
【００１６】
上述のプログラムをＣＤ−ＲＯＭ等の記録媒体に保持させて流通させてもよいし、このプログラムを通信回線を介して送受することもできる。
【発明の効果】
【００１７】
本発明は、データベースのスキーマ上で、ユーザの所属会社によるデータベースの情報閲覧制御を行い、管理者の作業負荷を軽減するデータベースシステム等を提供することができる。
【発明を実施するための最良の形態】
【００１８】
以下に、添付図面を参照しながら、本発明に係るデータベースシステム等の好適な実施形態について詳細に説明する。なお、以下の説明および添付図面において、略同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略することにする。
【００１９】
図１は、本発明の本実施の形態に係るデータベースシステム１００の概略構成を示す図である。
【００２０】
図１は、データベースシステム１００の一例であり、図１に示すように、データベースシステム１００は、サーバ１０１、異なる所属会社の複数のユーザ１０２−１、１０２−２、１０２−３が有するクライアント端末１０３等が、ネットワーク１０９を介して接続されて構成される。尚、データベースシステム１００は、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）技術を用いて実現した場合の構成図である。また、異なる所属会社（例えば仕入先会社）の複数のユーザ１０２−１、１０２−２、１０２−３が１つのユーザグループ１０４を構成し、該ユーザグループ１０４を選択すると、各ユーザ１０２−１、１０２−２、１０２−３が所属する所属会社が登録した情報（本実施形態では、商品情報とする）のみ閲覧できるものとする。
【００２１】
ネットワーク１０９は、インターネット、ローカルエリアネットワーク（ＬＡＮ）、社内ＬＡＮ等のネットワークであり、有線、無線を問わない。
【００２２】
サーバ１０１は、サーバコンピュータ等であり、Ｗｅｂサーバ１１０、アプリケーション１１１、データベースサーバ１１２等を有する。
アプリケーション１１１は、Ｗｅｂサーバ１１０上で動作するアプリケーションであり、クライアント端末１０３からのアクセスにより、Ｗｅｂサーバ１１０から呼び出され、データベースサーバ１１２を介して、データベース３００の商品情報（文字や画像等）の検索、閲覧等の各種操作を行い、ユーザ１０２の登録や各種設定等のシステム運用・管理を行う。クライアント端末１０３のＷｅｂブラウザ１２０上に商品情報を送信、表示する。
データベースサーバ１１２は、データベースエンジン等のデータベース管理手段であり、実データ３１０を記憶するデータスキーマ３０１と、実データ３１０のフィルタリング処理を行うアクセススキーマ３０２とからなるデータベース３００を有し、データベース３００への検索、参照、登録、削除等の各種要求に対する該当処理を行う。尚、データベースサーバ１１２は、サーバ１０１と異なるサーバコンピュータとして、サーバ１０１にネットワーク１０９を介して接続してもよい。
【００２３】
１つのユーザグループ１０４には、複数の所属会社（Ａ社、Ｂ社、Ｃ社）に所属するユーザ１０２―１、１０２−２、１０２−３が登録されており、ユーザ１０２―１、１０２−２、１０２−３は、夫々クライアント端末１０３を有する。クライアント端末１０３は、パーソナルコンピュータ、携帯型端末機（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）等であり、クライアント端末１０３には、Ｗｅｂブラウザ１２０が搭載される。クライアント端末１０３は、Ｗｅｂブラウザ１２０を介して、サーバ１０１のアプリケーション１１１にアクセスし、データベース３００の所望する商品情報の検索、閲覧、登録要求や操作指示等を送信し、受信した商品情報等を表示する。
【００２４】
次に、サーバ１０１のハードウェア構成を説明する。図２は、サーバ１０１のハードウェア構成図である。
【００２５】
サーバ１０１は、制御部２０１、記憶部２０２、メディア入出力部２０３、通信制御部２０４、入力部２０５、表示部２０６、印刷部２０７等が、システムバス２０９を介して接続されて構成される。
【００２６】
制御部２０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ  ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ  ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成される。
【００２７】
ＣＰＵは、記憶部２０２、ＲＯＭ、記録媒体等に格納されるプログラムをＲＡＭ上のワークメモリ領域に呼び出して実行し、システムバス２０９を介して接続された各装置を駆動制御し、サーバ１０１が行う後述する各種処理（図６、図７、図１０、図１２参照）を実現する。
ＲＯＭは、不揮発性メモリであり、コンピュータのブートプログラムやＢＩＯＳ等のプログラム、データ等を恒久的に保持している。
ＲＡＭは、揮発性メモリであり、記憶部２０２、ＲＯＭ、記録媒体等からロードしたプログラム、データ等を一時的に保持するとともに、制御部２０１が各種処理を行う為に使用するワークエリアを備える。
【００２８】
記憶部２０２は、ＨＤＤ（ハードディスクドライブ）であり、制御部２０１が実行するプログラム、プログラム実行に必要なデータ、ＯＳ（オペレーティングシステム）等が格納される。プログラムに関しては、ＯＳ（オペレーティングシステム）に相当する制御プログラム３９１や、本コンピュータを適用するサーバ１０１が行う後述の処理に相当するアプリケーションプログラム３９２等が格納されている。
これらの各プログラムコードは、制御部２０１により必要に応じて読み出されてＲＡＭに移され、ＣＰＵに読み出されて各種の手段として実行される。
【００２９】
メディア入出力部２０３（ドライブ装置）は、データの入出力を行い、例えば、フロッピディスクドライブ、ＰＤドライブ、ＣＤドライブ（−ＲＯＭ、−Ｒ、−ＲＷ等）、ＤＶＤドライブ（−ＲＯＭ、−Ｒ、−ＲＷ等）、ＭＯドライブ等のメディア入出力装置等を有する。
【００３０】
通信制御部２０４は、通信制御装置、通信ポート等を有し、サーバ１０１とネットワーク１０９間の通信を媒介する通信インタフェースであり、ネットワーク１０９を介して、サーバ１０１とクライアント端末１０３間の通信制御を行う。
【００３１】
入力部２０５は、データの入力を行い、例えば、キーボード、マウス等のポインティングデバイス、テンキー等の入力装置を有する。
入力部２０５を介して、サーバ１０１に対して、操作指示、動作指示、データ入力等を行うことができる。
【００３２】
表示部２０６は、ＣＲＴモニタ、液晶パネル等のディスプレイ装置、ディスプレイ装置と連携してコンピュータのビデオ機能を実現するための論理回路等（ビデオアダプタ等）を有する。
【００３３】
印刷部２０７は、プリンタであり、印刷出力処理を行う。
【００３４】
システムバス２０９は、各装置間の制御信号、データ信号等の授受を媒介する経路である。
【００３５】
次に、図３を参照しながら、サーバ１０１の記憶部２０２が保持する情報について説明する。図３は、記憶部２０２が保持する情報を示す図である。
【００３６】
記憶部２０２内には、データベース３００、管理スキーマ３０３及び制御プログラム３９１、アプリケーションプログラム３９２等が格納されている。
【００３７】
データベース３００は、データスキーマ３０１と、アクセススキーマ３０２からなる。データスキーマ３０１に対し、１対１でアクセススキーマ３０２が関係付けられる。
尚、サーバ１０１が管理するデータベース３００は、必要に応じて、複数存在してもよい。
【００３８】
図４は、データスキーマ３０１、アクセススキーマ３０２、管理スキーマ３０３を示す図である。
図４に示すように、データスキーマ３０１は、実データ３１０、及び実データ３１０の管理制御テーブルを有する。
実データ３１０は、複数の商品情報３０からなる。商品情報３０は、商品のスペック等の文字情報、商品の素材情報である画像情報等からなる。
管理制御テーブルには、商品登録会社管理テーブル（ＳＵＰ＿ＭＡＮＡＧＥ）３１１、登録会社管理テーブル（ＣＨＯＩＳＥＳ）３１２、プロダクトテーブル（ＰＲＯＤＵＣＴ）３１３、商品スペック情報管理テーブル（Ｐ＿ＳＰＥＣ）３１４等を少なくとも有する。
【００３９】
商品登録会社管理テーブル（ＳＵＰ＿ＭＡＮＡＧＥ）３１１は、データベース３００に登録、記憶されている商品情報３０毎に登録会社を対応付け、プロダクトＩＤ４１、登録会社ＩＤ４２からなる。プロダクトＩＤ４１は、プロダクトテーブル３１３に関連付けられる商品情報３０の識別情報である。登録会社ＩＤ４２は、データベース３００に当該商品情報３０を登録した登録会社の識別情報である。
登録会社管理（ＣＨＯＩＳＥＳ）テーブル３１２は、商品登録会社管理テーブル３１１に関連付けられ、データベース３００に商品情報３０を登録する登録会社情報からなり、登録会社ＩＤ４２、登録会社名４３を有する。
プロダクトテーブル（ＰＲＯＤＵＣＴ）３１３は、商品情報３０に対応付けられるプロダクトＩＤ４１、商品管理情報４４からなる。
商品スペック情報管理テーブル（Ｐ＿ＳＰＥＣ）３１４は、プロダクトテーブル３１３に関連付けられるプロダクトＩＤ４１、商品登録会社管理テーブル３１１に関連付けられる登録会社ＩＤ４２、商品情報３０のスペック管理情報からなる。
【００４０】
管理スキーマ３０３は、データベースサーバ（データベース管理手段）１１２によって管理されるデータであり、データベースサーバ１１２に１つ存在し、ユーザ情報テーブル（ＵＳＥＲＬＩＳＴ）３３１、セッション情報ログテーブル（Ｌｏｇ  Ｓｅｓｓｉｏｎ）３３２、データベースの情報等を保持する。
ユーザ情報テーブル（ＵＳＥＲＬＩＳＴ）３３１は、接続可能なユーザ情報リストであり、ユーザＩＤ５１、ユーザ１０２が所属する所属会社名５２、パスワード、ユーザ１０２の個人情報等を有する。
セッション情報ログテーブル（Ｌｏｇ  Ｓｅｓｓｉｏｎ）３３２は、データベースサーバ（データベース管理手段）１１２での接続履歴を記録した情報であり、セッションＩＤ４０、ユーザＩＤ５１、セッション履歴情報等を有する。
【００４１】
制御プログラム３９１は、サーバ１０１の各構成部分を駆動制御するプログラムであり、ＯＳ（オペレーティングシステム）に相当する。
アプリケーションプログラム３９２は、サーバ１０１が行う後述の処理（図８参照）に相当する実行可能プログラムであり、Ｗｅｂサーバ１１０、アプリケーション１１１、データベースサーバ（データベース管理手段）１１２等に相当するプログラムである。
【００４２】
次に、図５を参照しながら、クライアント端末１０３のハードウェア構成を説明する。図５は、クライアント端末１０３のハードウェア構成図である。
【００４３】
クライアント端末１０３は、制御部４０１、記憶部４０２、通信制御部４０３、メディア入出力部４０４、入力部４０５、表示部４０６、印刷部４０７等が、システムバス４０９を介して接続される。
尚、クライアント端末１０３のハードウェア構成は、図２について前述したサーバ１０１と同様の構成を採る。
【００４４】
次に、図６を参照しながら、データベースシステム１００における商品情報閲覧制御方法について説明する。図６は、データベースシステム１００における商品情報閲覧制御方法を示す図である。
【００４５】
異なる所属会社Ａ社、Ｂ社、Ｃ社に所属する複数のユーザ１０２―１、１０２−２、１０２−３で１つのユーザグループ１０４を作成し、ユーザ１０２―１、１０２−２、１０２−３の各クライアント端末１０３は、サーバ１０１のアプリケーション１１１にアクセス、データベース３００にログイン要求、情報閲覧要求を行う。
アプリケーション１１１は、クライアント端末１０３からのログイン要求に対して、データベース３００に接続し、アクセススキーマ３０２を介して、データスキーマ３０１上の実データ３１０をアクセスする。
アクセススキーマ３０２は、ログインユーザの判別（所属会社名５２の取得）、商品情報３０の登録会社名４３の取得、ログインユーザの所属会社による閲覧商品情報のフィルタリングを行う。
仕入先会社等の登録会社の増減、変更に応じて、データスキーマ３０１内の商品登録会社管理テーブル３１１、登録会社管理テーブル３１２、プロダクトテーブル３１３、商品スペック情報管理テーブル３１４等を適宜更新することにより、商品情報３０の登録会社情報のメンテナンスを行う。
【００４６】
次に、図７、図８、図９を参照しながら、データベースシステム１００における、データベース３００の商品情報閲覧制御方法の処理手順について詳しく説明する。図７は、データベースシステム１００におけるデータベース３００の情報閲覧制御方法の処理手順を示すフローチャートである。図８は、ユーザ（Ａ社）でログインした場合の商品情報閲覧の画面遷移を示す図である。図９は、ユーザ（Ｂ社）でログインした場合の商品情報閲覧の画面遷移を示す図である。
【００４７】
サーバ１０１は、Ｗｅｂサーバ１１０、アプリケーション１１１、データベースサーバ１１２（アクセススキーマ３０２、データスキーマ３０１）を介して、ユーザ１０２−１、１０２−２、１０２−３（以下１０２−１を代表として説明する）の各クライアント端末１０３に対して、データベース３００の商品情報閲覧制御処理を行う。
【００４８】
サーバ１０１の記憶部２０２には、アプリケーションプログラム３９２であるＷｅｂサーバ１１０、アプリケーション１１１、データベースサーバ（データベース管理手段）１１２に相当する実行可能プログラムがインストールされている。以下のサーバ１０１の処理は、Ｗｅｂサーバ１１０、アプリケーション１１１、データベースサーバ（データベース管理手段）１１２を介して、このプログラムの制御に従って、サーバ１０１の制御部２０１によって行われる。
【００４９】
また、クライアント端末１０３の記憶部４０２には、アプリケーションプログラムであるＷｅｂブラウザ１２０がインストールされており、以下のクライアント端末１０３の処理（Ｗｅｂブラウザ１２０を介したサーバ１０１へのアクセス、サーバ１０１への操作指示等）は、クライアント１０３の制御部４０１によって行われる。
【００５０】
ユーザ１０２−１（Ａ社）のクライアント端末１０３の制御部４０１は、サーバ１０１のＷｅｂサーバ１１０を介して、アプリケーション１１１にアクセスし、データベース３００のログイン、ユーザグループの選択を行う（ステップＳ７０１）。
【００５１】
図８に示すように、例えば、クライアント端末１０３の制御部４０１は、受け取ったログイン画面８０に従って、入力されたユーザ１０２−１（Ａ社）のユーザＩＤ５１、パスワード等をサーバ１０１に送信し、更に、表示されたユーザグループ選択画面８１に従って、ユーザグループ「仕入先」を選択する。ユーザグループ「仕入先」は、各ユーザ１０２−１、１０２−２、１０２−３が所属する所属会社が登録した商品情報のみ閲覧できるものとする。
【００５２】
サーバ１０１の制御部２０１（アプリケーション１１１）は、受け取ったユーザＩＤ５１、パスワードから、データベースサーバ１１２へのログイン要求を行い（ステップＳ７０２）、データベースサーバ１１２は、管理スキーマ３０３を介して、取得した管理スキーマ３０３上のユーザ情報テーブル３３１に基づいて、ユーザ認証を行い、セッション情報テーブル３４１にセッションＩＤを登録し、セッション登録を行う（ステップＳ７０３）。
【００５３】
制御部２０１（アプリケーション１１１）は、データベースサーバ１１２に対して、選択されたユーザグループ「仕入先」の設定、データベース３００の接続要求を行い、データベースサーバ１１２は、データベース３００のアクセススキーマ３０２を接続する（ステップＳ７０４）。
【００５４】
ユーザ１０２−１（Ａ社）のクライアント端末１０３の制御部４０１は、データベース３００に対して、商品情報３０の検索、閲覧の操作要求を行う（ステップ７０５）。
図８に示すように、例えば、表示されたメイン画面８３上のグループフォルダフレーム８６内でグループフォルダ８４「ｔｅｓｔグループ」を選択し、グループフォルダ８４「ｔｅｓｔグループ」の商品情報閲覧要求を行う。
【００５５】
制御部２０１（アプリケーション１１１）は、アクセススキーマ３０２を介して、データベース（データスキーマ）の実データ３１０（商品情報３０）の読み出し要求を行う（ステップＳ７０６）。
【００５６】
接続されているアクセススキーマ３０２は、セッション情報テーブル３４１、セッション情報ログテーブル３３２、ユーザ情報テーブル３３１を関連付け、ログインユーザのユーザ情報を抽出し、ログインユーザの所属する所属会社名５２を取得する（ステップＳ７０７）。
図１０は、アクセススキーマ３０２における商品情報閲覧制御の関連テーブル制御と処理の流れを示す図である。
図１０に示すように、ユーザ１０２−１（Ａ社）でログインした場合、セッション情報テーブル３４１からセッション登録されているログインユーザ１０２−１のセッションＩＤ４０「０００００１  ２００７０２０５２０００００」を求め、該セッションＩＤ４０で紐付けられるセッションログテーブル３３２のエントリデータのユーザＩＤ５１「ｓｈｉｉｒｅ１」を取得し、該ユーザＩＤ５１で紐付けられるユーザ情報テーブル３３１のエントリデータの所属会社名５２「Ａ社」を取得する。
【００５７】
アクセススキーマ３０２は、商品情報会社管理テーブル３１１、登録会社管理テーブル３１２に基づいて、商品情報の登録会社名４３、登録会社ＩＤ４２を取得する（ステップＳ７０８）。
図１０に示すように、ステップＳ７０７で取得したログインユーザ１０２−１の所属会社名５２「Ａ社」と同じ登録会社管理テーブル３１の登録会社名４３「Ａ社」の登録会社ＩＤ「１」を取得し、該登録会社ＩＤ「１」で紐付けられる商品情報会社管理テーブル３１１の登録会社ＩＤ４２のエントリデータを取得する。
【００５８】
アクセススキーマ３０２は、取得したログインユーザの所属会社名５２と、商品情報の登録会社名４３とを比較し、当該所属会社名５２と同じ登録会社名４３（登録会社ＩＤ４２）を有するプロダクトテーブル３１３のプロダクトＩＤ４１に紐付けられる商品情報３０のみを参照可能とするフィルタリング処理を行う（ステップＳ７０９）。
図１０に示すように、例えば、ステップＳ７０８で取得した登録会社名４３「Ａ社」の登録会社ＩＤ「１」と同じ登録会社ＩＤ「１」のプロダクトテーブル３１３のプロダクトＩＤ４１「０００００１」、「０００００３」に紐付けられる商品情報３０を抽出し、参照可能とする。登録会社ＩＤ「２」、「４」のプロダクトテーブル３１３のプロダクトＩＤ４１「０００００２」、「０００００４」に紐付けられる商品情報３０は、参照不可となる。
【００５９】
制御部２０１（アプリケーション１１１）は、データベースサーバ１１２から、参照可能な商品情報３０を取得し、クライアント端末１０３に送信する（ステップＳ７１０）。
クライアント端末１０３は、受け取った商品情報３０を表示する（ステップＳ７１１）。
【００６０】
図８に示すように、メイン画面８３の商品情報一覧画面８５に、ログインしているユーザ１０２−１の所属する所属会社名「Ａ社」が登録会社名４３である、すなわち、「仕入先会社名」項目値が「Ａ社」の１件の商品情報３０のみが表示される。本来、データスキーマ３０１の実データ３１０のグループフォルダ「ｔｅｓｔグループ」には、Ａ社の商品情報３０以外、２件のＢ社の商品情報３０が登録されている。
また、図９に示すように、「仕入先」ユーザグループのユーザ１０２−２（Ｂ社）でログインした場合、メイン画面８３の商品情報一覧画面８５に、ログインしているユーザ１０２−２の所属する所属会社名「Ｂ社」が登録会社名４３である、すなわち、「仕入先会社名」項目値が「Ｂ社」の２件の商品情報３０のみが表示される。本来、データスキーマ３０１の実データ３１０のグループフォルダ「ｔｅｓｔグループ」には、Ｂ社の商品情報３０以外、１件のＡ社の商品情報３０が登録されている。
【００６１】
次に、データベース３００で管理されている商品情報３０の登録会社の追加、削除、変更等に関わるメンテナンス処理について説明する。
登録会社、所属会社である、例えば、仕入先会社が増え、仕入先会社を追加する場合、アプリケーション１１１としてサーバ管理用アプリケーション（データベースの構造の設定やユーザグループの設定などを行うアプリケーション）を使用して、（１）ユーザ登録によるユーザ情報の登録、グループユーザ１０４への登録、（２）登録会社（仕入先会社）の登録を行う。
【００６２】
クライアント端末１０３の制御部４０１は、ユーザ登録要求に伴い、ユーザ登録画面（図示せず）を表示し、ユーザにより入力されたユーザ情報（ユーザＩＤ、ユーザ名、パスワード、所属会社（仕入先会社）等）を、管理スキーマ３０３のユーザ情報テーブル３３１に登録、保持し、また、グループユーザ１０４への登録要求に伴い、ユーザグループ一覧（図示せず）を表示し、ユーザグループ一覧から選択された、登録するユーザが所属するユーザグループに、入力されたユーザグループ名を追加登録する。
【００６３】
図１１は、登録会社（仕入先会社）の登録を示す図である。
図１１に示すように、クライアント端末１０３の制御部４０１は、アプリケーション１１１から送られたサーバ管理のメイン画面９０の所定のデータベース（例えば「検証用１万件」）の商品情報構造９０（「親商品」）を選択し、表示された商品情報構造のプロパティ画面９２の項目「仕入先名」を選択し、項目設定画面９５を表示する。制御部４０１は、追加ボタン９６クリックにより、一覧部分に１行追加し、ユーザにより入力された仕入先名、すなわち登録会社名４３（仕入先会社名）「Ｃ社」を、登録会社管理テーブル３１２に登録、保持する。
【００６４】
図１２は、商品情報３０の登録会社の追加、削除、変更等のメンテナンス処理における関連テーブル制御と処理の流れを示す図である。
図１２に示すように、商品情報３０を追加登録／削除すると（ステップＳ８０１）、プロダクトテーブル３１３の該当するエントリデータ(例えば、「プロダクトＩＤ「０００００４」、〜」)を追加／削除し（ステップＳ８０２）、関連付けられる商品登録会社管理テーブル３１１の該当するエントリデータ「プロダクトＩＤ「０００００４」、登録会社ＩＤ「３」」を追加／削除する（ステップＳ８０３）。また、商品スペック管理テーブル３１４の該当するエントリデータ「プロダクトＩＤ「０００００４」、登録会社ＩＤ「３」、〜」を追加／削除する（ステップＳ８０４）。
【００６５】
また、商品スペック管理テーブル３１４の登録会社ＩＤ４２を変更すると（ステップＳ９０１）、商品登録会社管理テーブル３１１の該当するエントリデータの登録会社ＩＤ４２の値を同様に変更する（ステップＳ９０２）。
【００６６】
以上説明したように、本発明の実施の形態によれば、異なる所属会社（Ａ社、Ｂ社、Ｃ社）に所属するユーザ１０２―１、１０２−２、１０２−３で１つのユーザグループ１０４を作成し、ユーザ１０２―１、１０２−２、１０２−３の各クライアント端末１０３は、サーバ１０１のアプリケーション１１１にアクセスし、データベース３００にログイン要求、情報閲覧要求を行うと、アプリケーション１１１は、ユーザグループ１０４を設定し、データベース３００に接続し、アクセススキーマ３０２を介して、データスキーマ３０１上の実データ３１０をアクセスする。その際、アクセススキーマ３０２は、ログインユーザの判別（所属会社名５２の取得）、商品情報３０の登録会社名４３の取得、ログインユーザの所属会社名５２による閲覧商品情報のフィルタリングを行う。
仕入先会社等の登録会社／所属会社の追加、削除、変更に応じて、データスキーマ３０１内の商品登録会社管理テーブル３１１、登録会社管理テーブル３１２、プロダクトテーブル３１３、商品スペック情報管理テーブル３１４等のデータを追加／削除／変更することにより、商品情報の登録会社のメンテナンスを行う。
【００６７】
これにより、仕入先会社毎にユーザグループに対する設定を行わず、１つのユーザグループで、ログインユーザが所属する会社が登録した情報のみを参照可能とする。
また、仕入先会社の登録・更新時に、新たにユーザグループを作成し、設定する必要がなく、所属会社を含むユーザ情報だけを追加し、データ、項目の登録・更新時には１ユーザグループ分だけのメンテナンスでよくなるため、管理者の作業負荷を軽減でき、メンテナンス効率が向上する。
更に、データベースサーバは、フィルタリングロジックをデータベース管理手段で担うようにし、アプリケーション側のロジック実装の負荷を軽減し、プログラム開発効率が向上する。
【００６８】
尚、本実施の形態では、サーバ１０１側に、Ｗｅｂサーバ１１０、アプリケーション１１１、データベースサーバ（データベース管理手段）１１２等を有し、クライアント端末１０３から、サーバ１０１にアクセスし、Ｗｅｂサーバ１１０を介してアプリケーション１１１、データベースサーバ１１２を起動したが、予め、クライアント端末１０３側にアプリケーション１１１のプログラムをダウンロードにしておき、クライアント端末１０３上のアプリケーション１１１の実行可能プログラムを起動し、サーバ１０１側のデータベースサーバ１１２のデータベース３００（データスキーマ３０１）をアクセスしてもよい。
【００６９】
尚、図６、図７、図１０、図１２に示す処理を行うプログラムはＣＤ−ＲＯＭ等の記録媒体に保持させて流通させてもよいし、このプログラムを通信回線を介して送受することもできる。
【００７０】
以上、添付図面を参照しながら、本発明に係るデータベースシステム等の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【図面の簡単な説明】
【００７１】
【図１】本実施の形態に係るデータベースシステム１００の概略構成を示す図
【図２】サーバ１０１のハードウェア構成図
【図３】記憶部２０２が保持する情報を示す図
【図４】データスキーマ３０１、アクセススキーマ３０２、管理スキーマ３０３を示す図
【図５】クライアント端末１０３のハードウェア構成図
【図６】データベースシステム１００における商品情報閲覧制御方法を示す図
【図７】データベースシステム１００におけるデータベース３００の情報閲覧制御方法の処理手順を示すフローチャート
【図８】ユーザ（Ａ社）でログインした場合の商品情報閲覧の画面遷移を示す図
【図９】ユーザ（Ｂ社）でログインした場合の商品情報閲覧の画面遷移を示す図
【図１０】アクセススキーマ３０２における商品情報閲覧制御の関連テーブル制御と処理の流れを示す図
【図１１】登録会社（仕入先会社）の登録を示す図
【図１２】商品情報３０の登録会社の追加、削除、変更等のメンテナンス処理における関連テーブル制御と処理の流れを示す図
【図１３】従来のデータシステム１０００におけるユーザのアクセス権限に関するデータ制限方法を示す図
【符号の説明】
【００７２】
１００………データベースシステム
１０１………サーバ
１０２………ユーザ
１０３………クライアント端末
１０４………ユーザグループ
１０９………ネットワーク
１１０………Ｗｅｂサーバ
１１１………アプリケーション
１１２………データベース管理手段
２０１、４０１………制御部
２０２、４０２………記憶部
３００………データベース
３０１………データスキーマ
３０２………アクセススキーマ
３０３………管理スキーマ
３１０………実データ
３１１………商品登録会社管理テーブル
３１２………登録会社管理テーブル
３１３………プロダクトテーブル
３１４………商品スペック情報管理テーブル
３３１………ユーザ情報テーブル
３３２………セッション情報ログテーブル
３０………商品情報
４１………プロダクトＩＤ
４２………登録会社ＩＤ
４３………登録会社名
５１………ユーザＩＤ
５２………所属会社名
【図１】
2008234286.tif 000003
【図２】
2008234286.tif 000004
【図３】
2008234286.tif 000005
【図４】
2008234286.tif 000006
【図５】
2008234286.tif 000007
【図６】
2008234286.tif 000008
【図７】
2008234286.tif 000009
【図８】
2008234286.tif 000010
【図９】
2008234286.tif 000011
【図１０】
2008234286.tif 000012
【図１１】
2008234286.tif 000013
【図１２】
2008234286.tif 000014
【図１３】
2008234286.tif 000015