(57)【特許請求の範囲】
【請求項１】
第１の３次元モデルを構成する第１アセンブリであって、当該第１アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第１アセンブリを記憶手段から取得する第１の取得手段と、
第２の３次元モデルを構成する第２アセンブリであって、当該第２アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第２アセンブリを記憶手段から取得する第２の取得手段と、
前記第１の取得手段で取得した前記第１アセンブリと前記第２の取得手段で取得した前記第２アセンブリとを、それぞれの前記階層情報と前記ファイル名とを用いて比較する比較手段と、
前記比較手段で比較した結果、前記階層情報と前記ファイル名とが前記第１アセンブリの前記サブアセンブリ又は前記部品と一致する前記第２アセンブリの前記サブアセンブリ又は前記部品を、前記第１アセンブリの前記サブアセンブリ又は前記部品と並列表示するよう制御する並列表示制御手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記並列表示制御手段は、前記比較手段で比較した結果、それぞれの前記階層情報と前記ファイル名とが一致しない、前記第１アセンブリを構成するサブアセンブリ又は部品と前記第２アセンブリの前記サブアセンブリ又は前記部品とを、並列表示しないよう制御すること
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記並列表示制御手段は、前記ファイル名と前記階層情報とが前記第１アセンブリを構成するサブアセンブリ又は部品と一致する第２アセンブリを構成するサブアセンブリ又は部品とが存在したとしても、既に当該第２アセンブリを構成するサブアセンブリ又は部品が当該第１アセンブリを構成するサブアセンブリ又は部品と異なるサブアセンブリ又は部品と並列表示をされている場合には、当該第１アセンブリを構成するサブアセンブリ又は部品と当該第２アセンブリを構成するサブアセンブリ又は部品とを並列表示させないよう制御すること
を特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記並列表示制御手段は、前記階層情報に基づいて階層順に前記第１アセンブリを構成するサブアセンブリ又は部品と前記第２アセンブリを構成するサブアセンブリ又は部品とを並列表示するよう制御すること
を特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記並列表示制御手段は、前記取得手段で取得した第１アセンブリの階層情報が示すツリー構造の順番で前記第１アセンブリを構成するサブアセンブリ又は部品と前記第２アセンブリを構成するサブアセンブリ又は部品とを並列表示するよう制御すること
を特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記情報処理装置は、第２の３次元モデルを構成する複数の第２アセンブリを記憶する記憶手段を備えるサーバと通信可能に接続され、
前記第２の取得手段は、前記サーバの前記記憶手段から前記第２アセンブリを取得すること
を特徴とする請求項１乃至５に記載の情報処理装置。
【請求項７】
前記第１の３次元モデルをサーバに送信する送信手段を更に備え、
前記第２の３次元モデルは、前記送信手段で送信された第１の３次元モデルを記憶手段に記憶したものであること
を特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記第１の取得手段は、第１の３次元モデルを構成する第１アセンブリであって、当該第１アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名と当該サブアセンブリ又は部品のファイルに含まれる複数のバージョンのうち１つのバージョンを示す識別名情報とを持つ当該第１アセンブリを記憶手段から取得し、
前記第２の取得手段は、第２の３次元モデルを構成する第２アセンブリであって、当該第２アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名と当該サブアセンブリ又は部品のファイルに含まれる複数のバージョンのうち１つのバージョンを示す識別名情報とを持つ当該第２アセンブリを記憶手段から取得し、
前記比較手段は、前記第１の取得手段で取得した前記第１アセンブリと前記第２の取得手段で取得した前記第２アセンブリとを、それぞれの前記階層情報と前記ファイル名と前記識別名情報とを用いて比較し、
前記並列表示制御手段は、前記比較手段で比較した結果、前記階層情報と前記ファイル名と前記識別名情報とが前記第１アセンブリの前記サブアセンブリ又は前記部品と一致する前記第２アセンブリの前記サブアセンブリ又は前記部品を、前記第１アセンブリの前記サブアセンブリ又は前記部品と並列表示するよう制御すること
を特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
情報処理装置が、
第１の３次元モデルを構成する第１アセンブリであって、当該第１アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第１アセンブリを記憶手段から取得する第１の取得ステップと、
第２の３次元モデルを構成する第２アセンブリであって、当該第２アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第２アセンブリを記憶手段から取得する第２の取得ステップと、
前記第１の取得ステップで取得した前記第１アセンブリと前記第２の取得ステップで取得した前記第２アセンブリとを、それぞれの前記階層情報と前記ファイル名とを用いて比較する比較ステップと、
前記比較ステップで比較した結果、前記階層情報と前記ファイル名とが前記第１アセンブリの前記サブアセンブリ又は前記部品と一致する前記第２アセンブリの前記サブアセンブリ又は前記部品を、前記第１アセンブリの前記サブアセンブリ又は前記部品と並列表示するよう制御する並列表示制御ステップと
を備えることを特徴とする情報処理装置の制御方法。
【請求項１０】
情報処理装置を、
第１の３次元モデルを構成する第１アセンブリであって、当該第１アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第１アセンブリを記憶手段から取得する第１の取得手段と、
第２の３次元モデルを構成する第２アセンブリであって、当該第２アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第２アセンブリを記憶手段から取得する第２の取得手段と、
前記第１の取得手段で取得した前記第１アセンブリと前記第２の取得手段で取得した前記第２アセンブリとを、それぞれの前記階層情報と前記ファイル名とを用いて比較する比較手段と、
前記比較手段で比較した結果、前記階層情報と前記ファイル名とが前記第１アセンブリの前記サブアセンブリ又は前記部品と一致する前記第２アセンブリの前記サブアセンブリ又は前記部品を、前記第１アセンブリの前記サブアセンブリ又は前記部品と並列表示するよう制御する並列表示制御手段
として機能させることを特徴とするプログラム。
【請求項１１】
第１の３次元モデルを構成する第１アセンブリであって、当該第１アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第１アセンブリを記憶手段から取得する第１の取得手段と、
第２の３次元モデルを構成する第２アセンブリであって、当該第２アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第２アセンブリを記憶手段から取得する第２の取得手段と、
前記第１の取得手段で取得した前記第１アセンブリと前記第２の取得手段で取得した前記第２アセンブリとを、それぞれの前記階層情報と前記ファイル名とを用いて比較する比較手段と、
前記比較手段で比較した結果、前記階層情報と前記ファイル名とが前記第１アセンブリの前記サブアセンブリ又は前記部品と一致する前記第２アセンブリの前記サブアセンブリ又は前記部品を、前記第１アセンブリの前記サブアセンブリ又は前記部品と並列表示するよう制御する並列表示制御手段と
を備えることを特徴とする情報処理システム。
【請求項１２】
情報処理システムが、
第１の３次元モデルを構成する第１アセンブリであって、当該第１アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第１アセンブリを記憶手段から取得する第１の取得ステップと、
第２の３次元モデルを構成する第２アセンブリであって、当該第２アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第２アセンブリを記憶手段から取得する第２の取得ステップと、
前記第１の取得ステップで取得した前記第１アセンブリと前記第２の取得ステップで取得した前記第２アセンブリとを、それぞれの前記階層情報と前記ファイル名とを用いて比較する比較ステップと、
前記比較ステップで比較した結果、前記階層情報と前記ファイル名とが前記第１アセンブリの前記サブアセンブリ又は前記部品と一致する前記第２アセンブリの前記サブアセンブリ又は前記部品を、前記第１アセンブリの前記サブアセンブリ又は前記部品と並列表示するよう制御する並列表示制御ステップと
を備えることを特徴とする情報処理システムの制御方法。
【請求項１３】
情報処理システムを、
第１の３次元モデルを構成する第１アセンブリであって、当該第１アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第１アセンブリを記憶手段から取得する第１の取得手段と、
第２の３次元モデルを構成する第２アセンブリであって、当該第２アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第２アセンブリを記憶手段から取得する第２の取得手段と、
前記第１の取得手段で取得した前記第１アセンブリと前記第２の取得手段で取得した前記第２アセンブリとを、それぞれの前記階層情報と前記ファイル名とを用いて比較する比較手段と、
前記比較手段で比較した結果、前記階層情報と前記ファイル名とが前記第１アセンブリの前記サブアセンブリ又は前記部品と一致する前記第２アセンブリの前記サブアセンブリ又は前記部品を、前記第１アセンブリの前記サブアセンブリ又は前記部品と並列表示するよう制御する並列表示制御手段
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、その制御方法及びプログラムに関する。
【背景技術】
【０００２】
製造業などにおいて、設計者が設計した製品情報である３次元ＣＡＤファイルは、一般的に専用のデータサーバや、ＰＤＭシステム（Ｐｒｏｄｕｃｔ  Ｄａｔａ  Ｍａｎａｇｅｍｅｎｔシステム＝データ管理システム）へ保存される。特にＰＤＭでは単なる電子データの保管だけではなく、様々な付加情報とそれらの改訂情報、さらには権限システムや承認システムといった機能を備えている場合が多く、設計情報の機密性・完全性・可用性の確保を負担なく実現するためのシステムとして近年では様々な企業の設計現場で運用が進められている。
【０００３】
また、当該完全性を担保するにあたり、例えば、ＰＤＭに保存する設計情報の作成のため、３次元ＣＡＤファイルの作成前に、アセンブリおよび部品データを構成要素としてツリー構成を矛盾なく作成するための技術が公開されている（例えば、特許文献１）
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１１５１６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、ＰＤＭ内のデータの機密性の観点から、３次元ＣＡＤファイルをＰＤＭへ保存する作業を、設計者ではなく、特定の作業者にのみ許可するような業務運用がある。
【０００６】
この場合設計者は、例えば、ＰＤＭによって３次元ＣＡＤファイルの保存・登録場所として指定されているサーバ上で当該３次元ＣＡＤファイルの作成をするのではなく、自身の個人ＰＣにおいて当該３次元ＣＡＤファイルを作成し、ＰＤＭに当該３次元ＣＡＤファイルを登録すべく、ＰＤＭへアクセス可能な権限を有する作業者に当該３次元ＣＡＤファイルを渡して、登録作業を依頼することとなる。
【０００７】
一つの製品に関する３次元ＣＡＤファイルを保存する際のファイル数は時々により変化するが、多い場合には１０００〜１００００点（データ容量は１ファイルあたり数ＫＢ〜数十ＭＢ）に達する場合もある。この規模のデータのＰＤＭ（例えば、ＰＤＭが管理する実データを記憶する外部装置）への保存を、作業者のＰＣのＯＳ上の操作（例えばカット＆ペーストなど）で実施した場合、例えば、当該ファイル数及びファイルの総データ容量によるＰＣ・サーバ（ＰＤＭ）間の通信負荷や、ＯＳに設定されている一度に移動可能なファイル数の上限値等の要因により、一部の３次元ＣＡＤファイルが正常にＰＤＭへ保存されない場合がある。
【０００８】
しかしながら、一部のデータが保存されなかったとしてもその作業を実施した作業者に告知する手段がないため、作業者は自身の作業を完了したものと認識してしまう。つまり、例えば、後日になってＰＤＭに保存されているはずの３次元ＣＡＤファイルを閲覧しようとした場合、前述の保存できなかったデータを検出することができないため、設計情報としては不十分なままの状態でしか閲覧することができない。
【０００９】
これを回避するためには作業者がＰＤＭへデータ保存（送信）を終えた段階で、例えば、３次元ＣＡＤアプリケーションによってＰＤＭに保存済（送信済）のファイルを閲覧することで、意図したデータ構成をＰＤＭ内の保存データによって構築することができるか否かを確認すればよいが、前述した作業者がデータの設計業務を担当していない場合、作業者のＰＣに必ずしも３次元ＣＡＤアプリケーションが設定されているとは限らない。また、当該ファイルを構成するデータが多い場合、当該ファイルを閲覧するためには作業者のＰＣがファイルの閲覧（そのためのデータ呼び出し、描画処理）に耐えうるハードウェアでなければならない。また、仮に当該ファイルを開くことができたとしても、開くだけでも数分の時間を要してしまう場合もあり、また、当該３次元ＣＡＤファイルが正確に構成されているかを確認するために時間を要するため、非常に手間である。
【００１０】
本発明は、複数のアセンブリの整合性を容易にユーザに確認させることを目的とする。
【課題を解決するための手段】
【００１１】
本発明の情報処理装置は、第１の３次元モデルを構成する第１アセンブリであって、当該第１アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第１アセンブリを記憶手段から取得する第１の取得手段と、第２の３次元モデルを構成する第２アセンブリであって、当該第２アセンブリを構成するサブアセンブリ又は部品の３次元モデルにおける階層情報とファイル名とを持つ当該第２アセンブリを記憶手段から取得する第２の取得手段と、前記第１の取得手段で取得した前記第１アセンブリと前記第２の取得手段で取得した前記第２アセンブリとを、それぞれの前記階層情報と前記ファイル名とを用いて比較する比較手段と、前記比較手段で比較した結果、前記階層情報と前記ファイル名とが前記第１アセンブリの前記サブアセンブリ又は前記部品と一致する前記第２アセンブリの前記サブアセンブリ又は前記部品を、前記第１アセンブリの前記サブアセンブリ又は前記部品と並列表示するよう制御する並列表示制御手段とを備えることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、複数のアセンブリの整合性を容易にユーザに確認させることができる。
【００１３】
これにより、例えば、同一もしくは異なるシステム間で３次元ＣＡＤファイルの構成の比較を、３次元ＣＡＤアプリケーションを用いることなく実現できるため、３次元ＣＡＤアプリケーションが実行可能な環境が不要となり、３次元ＣＡＤアプリケーションがファイルを開くまでの時間を省略することができ、３次元ＣＡＤアプリケーションや設計に関する知識が比較的浅い作業者であっても、容易に構成の違いを確認でき、効率的かつ容易にＰＤＭへ保管された３次元ＣＡＤファイルの構成が確かなものであるかを確認することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態における、情報処理システムのシステム構成の一例を示す図
【図２】本発明の実施形態における、各装置のハードウェア構成の一例を示す図
【図３】本発明の実施形態における、各装置の機能構成の一例を示す図
【図４】本発明の実施形態における、構成比較処理の概要を示すフローチャート
【図５】本発明の実施形態における、構成情報取得処理の一例を示すフローチャート
【図６】本発明の実施形態における、構成比較処理の一例を示すフローチャート
【図７】本発明の実施形態における、構成情報の比較結果表示画面の構成の一例を示す図
【図８】本発明の実施形態における、構成情報テーブルの構成の一例を示す図
【図９】本発明の実施形態における、構成情報テーブル１の構成の一例を示す図
【図１０】本発明の実施形態における、構成情報テーブル２の構成の一例を示す図
【図１１】本発明の実施形態における、構成情報の比較結果表示画面の遷移の様子の一例を示す図
【図１２】本発明の実施形態における、構成情報の比較結果表示画面の遷移の様子の一例を示す図
【図１３】本発明の実施形態における、構成情報取得処理による構成情報テーブル更新の様子の一例を示す図
【図１４】本発明の実施形態における、構成比較処理による構成情報テーブル更新の様子の一例を示す図
【図１５】本発明の実施形態における、構成比較処理による構成情報テーブル更新の様子の一例を示す図
【図１６】本発明の実施形態における、ファイルのアップロード処理の一例を示すフローチャート
【図１７】本発明の実施形態における、対象ファイル２の受付処理の詳細の一例を示すフローチャート
【図１８】本発明の実施形態における、対象ファイルの参照制限情報の一例を示す図
【図１９】本発明の実施形態における、ファイルのアップロードの履歴テーブルの一例を示す図
【発明を実施するための形態】
【００１５】
以下、図面を参照して、本発明の実施の形態の一例について説明する。
【００１６】
図１を参照して、本発明の実施形態における、情報処理システムのシステム構成の一例について説明する。図１は、本発明の実施形態における、情報処理システムのシステム構成の一例を示す図である。
【００１７】
ファイル管理サーバ１００は、クライアントＰＣ２００からアップロード（送信）されたファイル、及び、当該ファイルを構成する構成情報を記憶、管理している。
【００１８】
ここでいう構成情報とは、３次元ＣＡＤファイル（３次元モデルデータ）におけるアセンブリであり、具体的には、例えば、アセンブリから特定されるファイル（３次元ＣＡＤファイルの構成物＝部品データ等）の保存場所、構成順序、参照ファイルの存否、ファイルの状態（コンフィギュレーション）、員数等の情報であるものとする。
【００１９】
ＬＡＮ１０１は、ファイル管理サーバ１００とクライアントＰＣ２００を通信可能に接続するネットワークである。
【００２０】
クライアントＰＣ２００は、ファイル及びファイルの構成情報（アセンブリ）を記憶している。また、当該クライアントＰＣ２００が記憶しているファイルの構成情報と、クライアントＰＣ２００からファイル管理サーバ１００にアップロードされたファイルの構成情報とを取得して、比較し、比較結果を表示する処理を行う。ここでいうファイルとは、例えば、３次元ＣＡＤファイルである。
【００２１】
また、ファイル管理サーバ１００は外部メモリにＰＤＭソフトウェア（Ｐｒｏｄｕｃｔ  Ｄａｔａ  Ｍａｎａｇｅｍｅｎｔソフトウェア／製品データ管理ソフトウェア／以下、ＰＤＭと記載）を記憶している。
【００２２】
クライアントＰＣ２００は、ＰＤＭ、及び上述した構成情報の比較処理を行う比較ツール（ＰＤＭのアドオン機能としてのツール）を所定の領域に記憶している。上述したようにＰＤＭはクライアントＰＣ２００及びファイル管理サーバ１００の双方にインストールされており、クライアントＰＣ２００にインストールされているＰＤＭは、クライアントＰＣ２００（比較ツール）がファイル管理サーバのＰＤＭにデータの要求を行う場合のＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ／以下、ＡＰＩ）として機能する。
【００２３】
クライアントＰＣ２００からアップロードされたファイルは、ファイル管理サーバ１００が当該ファイル管理サーバ１００の外部メモリに記憶して保持し、ファイル管理サーバ１００のＰＤＭが当該ファイルの保存場所、状態の管理、データの解析、解析結果の送受信を行うものとする。
【００２４】
クライアントＰＣ２００のＣＰＵは、クライアントＰＣ２００のＰＤＭを起動させた場合、当該アドオンとしての当該比較ツールをクライアントＰＣの記憶領域上の特定のフォルダから読み出して、当該ＰＤＭのメニュー画面に、当該比較ツールの起動ボタンを表示する。
【００２５】
そして、当該起動ボタンの押下指示を受け付けた場合に、当該比較ツールを起動して、ユーザからの操作指示に応じて、図４〜６の処理を実行するものとする。以上が図１の、本発明の実施形態における、情報処理システムのシステム構成の一例についての説明である。
【００２６】
次に図２を参照して、本発明の実施形態における、各装置のハードウェア構成の一例について説明する。図２は、本発明の実施形態における、各装置のハードウェア構成の一例を示す図である。
【００２７】
図２において、２０１はＣＰＵで、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【００２８】
２０３はＲＡＭで、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＯＭ２０２あるいは外部メモリ２１１からＲＡＭ２０３にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【００２９】
また、２０５は入力コントローラで、キーボード（ＫＢ）２０９や不図示のマウス等のポインティングデバイス等からの入力を制御する。２０６はビデオコントローラで、ＣＲＴディスプレイ（ＣＲＴ）２１０等の表示器への表示を制御する。なお、図２では、ＣＲＴ２１０と記載しているが、表示器はＣＲＴだけでなく、液晶ディスプレイ等の他の表示器であってもよい。これらは必要に応じて管理者が使用するものである。
【００３０】
２０７はメモリコントローラで、ブートプログラム，各種のアプリケーション，フォントデータ，ユーザファイル，編集ファイル，各種データ等を記憶するハードディスク（ＨＤ）や、フレキシブルディスク（ＦＤ）、或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００３１】
２０８は通信Ｉ／Ｆコントローラで、ネットワーク（例えば、図１に示したＬＡＮ１０１）を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いた通信等が可能である。
【００３２】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００３３】
本発明を実現するための後述する各種プログラムは、外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ２１１に格納されており、これらについての詳細な説明も後述する。以上が図２の、本発明の実施形態における、各装置のハードウェア構成の一例についての説明である。
【００３４】
次に図３を参照して、本発明の実施形態における、各装置の機能構成の一例について説明する。図３は、本発明の実施形態における、各装置の機能構成の一例を示す図である。
【００３５】
ファイル構成記憶部３２１は、クライアントＰＣ２００の外部メモリに記憶されたファイルの構成情報（アセンブリ／アセンブリファイル）を記憶する記憶部である。
【００３６】
ファイルアップロード処理部３２２は、ファイル管理サーバ１００に対してファイルを送信（アップロード）する処理部である。例えば、３次元ＣＡＤファイル及びその構成情報（アセンブリファイル）を送信する。ローカルファイル構成情報取得部３２３は、ファイル管理サーバ１００にアップロードすべく指定を受け付けた、クライアントＰＣ２００の外部メモリに記憶されているファイルの構成情報を取得する取得部である。
【００３７】
アップロードファイル構成情報受信部３２４は、ファイル管理サーバ１００に対して、ファイル管理サーバ１００に送信済のファイルの構成情報を要求し（アセンブリ要求手段に該当）、当該構成情報を受信する受信部である。構成比較処理部３２５は、ローカルファイル構成情報取得部３２３で取得した構成情報と、アップロードファイル構成情報受信部３２４で受信した構成情報とを比較する処理部である。
【００３８】
比較結果表示部３２６は、構成比較処理部３２５で比較した結果を識別可能に表示画面に表示する表示処理部である。
【００３９】
アップロードファイル受付部３１１は、クライアントＰＣ２００から送信されたファイルを受信して、アップロードを受け付ける受付部である。アップロードファイル構成情報記憶部３１２は、アップロードファイル受付部３１１でアップロードを受け付けたファイル（アップロードファイル／３次元ＣＡＤファイル）の構成情報（アセンブリファイル）を記憶する記憶部である（アセンブリ記憶手段に該当）。
【００４０】
アップロードファイル構成情報取得部３１３は、クライアントＰＣ２００からの指示に応じて、アップロードファイル（送信済ファイル／送信済みファイル）の構成情報を取得する取得部である。アップロードファイル構成情報送信部３１４は、アップロードファイル構成情報取得部３１３で取得した構成情報をクライアントＰＣ２００に送信する送信部である（アセンブリ送信手段に該当）。以上が図３の、本発明の実施形態における、各装置の機能構成の一例についての説明である。
【００４１】
次に、図１６を参照して、本発明の実施形態における、ファイルのアップロード処理の一例について説明する。図１６は、本発明の実施形態における、ファイルのアップロード処理の一例を示すフローチャートである。
【００４２】
クライアントＰＣ２００のＣＰＵ２０１は、クライアントＰＣ２００に設定されたＯＳの機能を用い、ユーザからのファイル選択操作に応じて、ファイル管理サーバ１００へコピーして送信（アップロード）するファイル（データ）の選択を実行し（ステップＳ１６０１）、ユーザからの当該データの送信指示を受け付ける。
【００４３】
例えば、クライアントＰＣ２００のＣＰＵ２０１は、ユーザからの操作指示に応じてＰＤＭを起動し、当該ＰＤＭのウインドウ内において展開するパス（ＵＲＩ）の指定を受け付け、ファイル管理サーバ１００の外部メモリ上の所定の記憶領域を開く。
【００４４】
クライアントＰＣ２００のＣＰＵ２０１は、例えば、クライアントＰＣ２００に設定されたＯＳ上のドラッグ＆ドロップの操作による、クライアントＰＣ２００の外部メモリに記憶されたファイルの、当該ＰＤＭのウインドウ上への移動（送信／アップロード）の操作を受け付けたことを（起動中のＰＤＭを介して）検知すると、当該ＰＤＭのウインドウにおいて展開中のファイル管理サーバ１００のフォルダパスに対して、選択されたファイルを送信する（ステップＳ１６０２）。
【００４５】
例えば、送信対象のとして選択されたファイルがフォルダであった場合、当該フォルダ内ファイル、データを送信先に送信する。当該フォルダには、例えば、３次元ＣＡＤファイル、当該３ＣＡＤファイルを構成するために必要なファイル（例えば、３次元ＣＡＤファイル内のモデルデータを構成する部品データ）、及び、当該構成の参照関係を示すアセンブリ情報（アセンブリファイル）等が含まれる。
【００４６】
上述したように、ここでいう送信対象のファイルは、３次元ＣＡＤファイル、当該３ＣＡＤファイルを構成するために必要なファイル（例えば、３次元ＣＡＤファイル内のモデルデータを構成する部品データ）、及び、当該構成の参照関係を示すアセンブリファイル（構成情報／アセンブリ情報）であり、少なくとも、当該アセンブリファイルを含むものとする。
【００４７】
尚、ここでファイル管理サーバに送信される情報は、比較を行うファイルの構成情報を特定するために必要となるデータの一例であり、当該構成情報を特定することが可能な情報であれば、上述した形式に限られるものではない。
【００４８】
クライアントＰＣ２００のＣＰＵ２０１は、当該送信指示に応じて、ユーザから受け付けた選択操作に応じて選択した全てのファイルを送信先（ファイル管理サーバ１００の所定の記憶領域）に送信済か判定し（ステップＳ１６０３）、送信済みである場合、処理を終了し、送信済みでない場合、処理をステップＳ１６０４に移行する。
【００４９】
クライアントＰＣ２００のＣＰＵ２０１は、送信済のファイル数が所定数を超過したか判定する（ステップＳ１６０４）。当該所定数の値は、クライアントＰＣ２００のＯＳに設定されており、外部記憶領域に予め記憶・管理されているものとする。
【００５０】
所定数を超過したと判定した場合、処理を終了し、所定数を超過していないと判定した場合、選択したファイルを１つ取得して、送信処理を開始する（ステップＳ１６０５）。
【００５１】
なお、ここでは、クライアントＰＣ２００のＣＰＵ２０１は、上述した送信ファイルに加えて、当該アップロード対象のファイルの保存されているファイルパス及びクライアントＰＣ２００のＩＰアドレス（識別情報）を送信し、当該ファイルがいずれの装置のいずれの場所に格納されたかの情報と共に、当該情報を履歴として記憶する要求を送信するものとする。
【００５２】
ファイル管理サーバ１００のＣＰＵ２０１は、当該ファイルのデータを受信し（ステップＳ１６０６）、外部メモリ上の所定の記憶領域（ユーザから指定を受け付けた記憶場所）に記憶する処理を実行する（ステップＳ１６０７）。
【００５３】
また、アップロードの履歴（送信履歴）を記憶する履歴テーブルを生成して、当該ファイルのファイル名、送信元のクライアントＰＣ２００上のフォルダパス、当該ファイルを記憶したファイル管理サーバ１００上のフォルダパス等の情報を格納して外部メモリに記憶する。履歴テーブルについては、図１９の説明で後述する。
【００５４】
ここで図１９を参照して、本発明の実施形態における、ファイルのアップロードの履歴テーブルの一例について説明する。図１９は、本発明の実施形態における、ファイルのアップロードの履歴テーブルの一例を示す図である。
【００５５】
履歴テーブル１９００は、ファイル管理サーバ１００によって、クライントＰＤ２００からの要求に応じて生成され、当該ファイル管理サーバ１００の外部メモリに記憶されるものとする。
【００５６】
Ｎｏ１９０１は、履歴情報の識別情報である。ファイル名１９０２は、アップロードされたファイルのファイル名である。
【００５７】
移動元ＩＰ１９０３は、当該ファイルのアップロード元の装置（ここではクライアントＰＣ２００）の識別情報である。移動元パス１９０４は、当該ファイルのアップロード元のフォルダパス（ここではクライアントＰＣ２００における、アップロード直前の保存場所のフォルダパス）である。
【００５８】
移動先ＩＰ１９０５は、当該ファイルのアップロード先の装置（ここではファイル管理サーバ１００）の識別情報である。移動先パス１９０６は、当該ファイルのアップロード先のフォルダパス（ここではファイル管理サーバ１００における、当該ファイルが保存される先のフォルダパス）である。以上が図１９の、本発明の実施形態における、ファイルのアップロードの履歴テーブルの一例についての説明である。
【００５９】
図１６の説明に戻る。クライアントＰＣ２００のＣＰＵ２０１は、当該送信指示に応じた、ファイル（データ）の送信処理を開始してから所定の時間が経過したか判定する（ステップＳ１６０８）。例えば、送信対象のファイルが複数指定されており、当該複数のファイルを送信先に送信する場合、送信対象のファイルを１つ取得して送信先に送信する処理を順次行う。ここでは、当該取得した１つのファイルの送信処理が開始されてから所定の時間が経過したか否かを判定する。
【００６０】
尚、当該所定の時間の情報は、クライアントＰＣ２００のＯＳに設定され、外部記憶領域に予め記憶・管理されているものとする。
【００６１】
ファイルの送信開始から所定時間が経過したと判定した場合、ファイルの送信処理を中断し、処理を終了する。つまり、クライアントＰＣ２００のＣＰＵ２０１が、ファイル容量、ファイル管理サーバ１００との通信状況から以降のファイルの送信が困難と判断し、送信処理中のファイル及び送信対象として選択した未送信のファイルの送信処理を中断し、処理を終了するものである。ファイルの送信開始から所定時間が経過していないと判定した場合、送信処理を継続し、処理をステップＳ１６０９に移行する。
【００６２】
クライアントＰＣ２００のＣＰＵ２０１は、ステップＳ１６０５で送信中のファイルの送信処理が完了したか判定する（ステップＳ１６０９）。送信が完了したと判定した場合、処理をステップＳ１６０３に戻し、送信が完了していないと判定した場合、送信処理を継続する。以上が図１６の、本発明の実施形態におけるファイルのアップロード処理の一例についての説明である。
【００６３】
次に図４を参照して、本発明の第１の実施形態における、構成比較処理の概要について説明する。図４は、本発明の第１の実施形態における、構成比較処理の概要を示すフローチャートである。尚、Ｓ４０１からＳ４１２の各ステップはクライアントＰＣ２００におけるＣＰＵ２０１の制御の下、処理が行われる。
【００６４】
図４に示す処理を行う際には、クライアントＰＣ２００のＣＰＵ２０１はファイル管理サーバ１００（ＰＤＭ）と通信可能な状態にある。
【００６５】
ステップＳ４０１では、クライアントＰＣ２００のＣＰＵ２０１は、不図示のＰＤＭのメニュー画面において操作者によるコマンド起動操作（構成情報の比較ツールを起動するための操作）を受け付けることによって、図７に示すコマンドダイアログ７００を表示する。コマンドダイアログ７００は、本発明の実施形態における、構成情報の比較結果表示画面の一例である。
【００６６】
ここで図７を参照して、本発明の実施形態における、構成情報の比較結果表示画面の構成の一例について説明する。図７は、本発明の実施形態における、構成情報の比較結果表示画面の構成の一例を示す図である。
【００６７】
比較結果表示画面（コマンドダイアログ７００）は、テキストボックス７０１、参照ボタン７０２、リストボックス７０３、テキストボックス７０４、参照ボタン７０５、リストボックス７０６、実行ボタン７０７、終了ボタン７０８等から構成される。
【００６８】
テキストボックス７０１は、参照ボタン７０２が押下されることにより不図示のファイル選択画面で選択されたファイル（比較対象ファイル／アセンブリファイル）のファイルパスを表示するボックスである。
【００６９】
尚、参照ボタン７０２が押下されることにより表示される不図示のファイル選択画面においては、クライアントＰＣ２００の外部メモリに記憶されたファイルのみ参照、指定可能であるものとする。
【００７０】
具体的には、図１８の参照制限情報１８００のような参照制限情報がクライアントＰＣ２００の外部メモリに記憶されており、クライアントＰＣ２００のＣＰＵ２０１は、参照ボタン７０２の押下を受け付けた場合、当該参照制限情報を参照して、当該ファイル選択画面で参照可能なファイルパスを特定し、参照不可能なファイルパスの指定を受け付けた場合はエラーを表示して、当該参照不可能なファイルパスを表示しない（参照させない）よう制御する。
【００７１】
ここで図１８を参照して、本発明の実施形態における、対象ファイルの参照制限情報の一例について説明する。図１８は、本発明の実施形態における、対象ファイルの参照制限情報の一例を示す図である。
【００７２】
参照制限情報１８００は、クライアントＰＣ２００に前記比較ツールが設定された際に、不図示の制限情報設定画面において、ユーザの操作指示に応じて設定され、クライアントＰＣ２００のＣＰＵ２０１によって当該比較ツールの制限情報生成機能を用いて生成され、クライアントＰＣ２００の外部メモリに記憶されているものとする。
【００７３】
Ｎｏ１８０１は、参照制限情報を識別する識別情報である。対象ファイル１８０２は、図７のコマンドダイアログ７００に示す対象ファイル１、対象ファイル２を示す。参照ボタン７０２の押下を受け付けた場合は、対象ファイル１８０２に「対象ファイル１」が挿入された制限情報を適用する。参照ボタン７０５の押下を受け付けた場合は、対象ファイル１８０２に「対象ファイル２」が挿入された制限情報を適用する。
【００７４】
参照先ＩＰ１８０３は、不図示のファイル選択画面において、ファイルパスの参照が許可されている装置の識別情報である。ここではＩＰアドレスを挿入しているが、装置を識別することができる情報であればよいものとする。
【００７５】
参照先パス１８０４は、不図示のファイル選択画面において、参照が許可されているファイルパスを示す。不図示のファイル選択画面においては、参照先パス１８０４に設定されているファイルパス以下のファイルパスのみ指定、参照可能である。
【００７６】
尚、対象ファイル１８０２＝「対象ファイル１」の参照先ＩＰ１８０３は、当該比較ツールがクライアントＰＣ２００に設定・記憶された際に、当該クライアントＰＣ２００のＣＰＵ２０１が自装置のＩＰアドレスを取得して挿入することにより設定される。
【００７７】
対象ファイル１８０２＝「対象ファイル２」の参照先ＩＰ１８０３は、当該比較ツールがクライアントＰＣ２００に設定・記憶された際に、不図示の制限情報設定画面において、ユーザの操作指示に応じて、例えばファイル管理サーバ１００のＩＰアドレスが入力されることにより設定される。
【００７８】
つまり、参照制限情報１８００によれば、当該比較ツールにおいて比較可能なファイルは、対象ファイル１＝クライアントＰＣ２００の外部メモリに記憶されたローカルファイル（アップロード指示を受け付けたファイル）と、対象ファイル２＝ファイル管理サーバ１００（ＰＤＭ）に記憶されたアップロード済み（送信済み）のファイルである。
以上が図１８の、本発明の実施形態における、対象ファイルの参照制限情報の一例についての説明である。
【００７９】
図７の説明に戻る。リストボックス７０３は、後述する図５の構成情報取得処理によって取得され、生成された、比較対象ファイル（ここでは対象ファイル１）の構成情報を表示するボックスである。
【００８０】
テキストボックス７０４は、参照ボタン７０５が押下されることにより不図示のファイル選択画面で選択されたファイル（比較対象ファイル／アセンブリファイル）のファイルパスを表示する、又は、対象ファイル１の指定を受け付けた場合に、当該対象ファイル１に対応するファイル（対象ファイル１＝アップロード前のファイルとした場合の、アップロード後のファイル）のファイルパスをファイル管理サーバ１００から取得して表示する。
【００８１】
リストボックス７０６は、後述する図５の構成情報取得処理によって取得され、生成された、比較対象ファイル（ここでは対象ファイル２）の構成情報を表示するボックスである。
【００８２】
実行ボタン７０７は、参照ボタン７０２、参照ボタン７０５の押下を受け付けることにより、不図示のファイル選択画面で選択されたファイルの構成情報（各リストボックスに表示される構成情報）の比較処理を実行するためのボタンである。
【００８３】
終了ボタン７０８は、コマンドダイアログ７００を終了するためのボタンである。以上が図７の、本発明の実施形態における、構成情報の比較結果表示画面の構成の一例についての説明である。
【００８４】
図４の説明に戻る。ステップＳ４０２では、操作者による対象ファイル１（比較対象ファイル／他のファイルと構成情報を比較するファイル）の受付処理を行う。具体的には図７のコマンドダイアログ７００中の参照ボタン７０２の操作者による押下指示を受け付けることにより、不図示のファイル選択画面を表示し、当該ファイル選択画面で操作者によって選択されるファイルを対象ファイル１として受け付け（選択受付手段に該当）、対象ファイル１のファイルパスを図７のテキストボックス７０１へ表示し、ステップＳ４０３へ処理を移行する。
【００８５】
ステップＳ４０３では、ステップＳ４０２で受け付けたファイルに対して構成情報取得処理を行う。詳細については図５を用いて後述する。ステップＳ４０３の処理によって図９の９００に示す構成情報テーブル１を作成し、ステップＳ４０４へ処理を移行する（第１のアセンブリ取得手段に該当）。構成情報テーブル１は、クライアントＰＣ２００の外部メモリに記憶される。
【００８６】
ここで、図４のステップＳ４０３、（及び後述する図４のステップＳ４０６）で行う構成情報取得処理について図５及び図８の構成情報テーブル８００を用いて説明する。
【００８７】
まず、図８を参照して、本発明の実施形態における、構成情報テーブルの構成の一例について説明する。図８は、本発明の実施形態における、構成情報テーブルの構成の一例を示す図である。
【００８８】
構成情報テーブル８００は、レコードＮｏ８０１、レベル８０２、フォルダパス８０３、ファイル名８０４、構成パス８０５、種類８０６、コンフィギュレーション名８０７、員数８０８、判定８０９等から構成される。
【００８９】
レコードＮｏ８０１は、処理ファイル（処理を適用中のファイル）のレコードの順序を格納する。レベル８０２は、処理ファイルの構成階層を格納する。フォルダパス８０３は、処理ファイルのフォルダパスを格納する。
【００９０】
ファイル名８０４は、処理ファイルのファイル名を格納する。構成パス８０５は、処理ファイルの構成順序を格納する。
【００９１】
ここで、構成順序について図９の９００（構成情報テーブル１）を用いて説明する。構成順序とは一般的な３次元ＣＡＤにおける参照関係のパスを示す。例えば、図５のステップＳ５０２で受け付けたファイル（仮にＴｏｐＡｓｓｙとする）はファイル構造（構成）の頂点に位置するため構成パスはＮｕｌｌとなる。次にＴｏｐＡｓｓｙと一次的な参照関係にあるファイルの構成パスはＴｏｐＡｓｓｙとなる。具体的には図９の９００（構成情報テーブル１）に示すレコードＮｏ２がこれに相当する。さらにＴｏｐＡｓｓｙと二次的な参照関係にあるファイルの構成パスはＴｏｐＡｓｓｙ／Ａｓｓｙ１となる。具体的には図９の９００（構成情報テーブル１）に示すレコードＮｏ３〜５がこれに相当する。
【００９２】
種類８０６は、処理ファイルの種類（ＣＡＤファイルの拡張子による違い）を格納する。コンフィギュレーション名８０７は、処理ファイルのファイル内データの識別名情報（例えば一つのファイルに形状の異なる複数の内部状態、例えば同一部品の右かって版と左かって版など、が記憶されている場合に、そのうち一つを識別するための情報）を格納する。
【００９３】
員数８０８は、処理ファイルとファイル名８０４、構成パス８０５、種類８０６の３つが全て一致（以降、第１条件）するファイルの総数を格納する。判定８０９は、処理ファイルの存在情報及び比較判定結果を格納する。
【００９４】
またステップＳ４０３を処理する際に作成する構成情報テーブル８００は構成情報テーブル１、後述するステップＳ４０６で作成する構成情報テーブル８００は構成情報テーブル２とするが、以下に記述する処理の過程で１ないし２の指定がない場合は共通の処理とする。以上が図８の、本発明の実施形態における、構成情報テーブルの構成の一例についての説明である。
【００９５】
次に図５を参照して、発明の実施形態における、構成情報取得処理の一例について説明する。図５は、本発明の実施形態における、構成情報取得処理の一例を示すフローチャートである。尚、ステップＳ５０１〜Ｓ５１６の各ステップは、クライアントＰＣ２００におけるＣＰＵ２０１の制御の下、構成情報の比較ツールの機能を用いて処理が行われるものとする。
【００９６】
ステップＳ５０１では、例えば図４のステップＳ４０２で受け付けた対象ファイルの選択操作に応じて、処理の対象となるファイルの受付処理を行い、図８の構成情報テーブル８００の作成と、構成情報テーブルと同じ構成をもつ１レコードのみのテンポラリレコードを作成する。
【００９７】
また後述するステップＳ５１６で本処理の再起処理を行う場合にはステップＳ５１５から受け付けたファイルが処理対象となる。なお、再起処理に場合には新たに構成情報テーブルを作成することはない。つまり、ユーザから選択を受け付けた対象ファイルの参照ファイルについても図５の処理を行い、当該対象ファイルと同一の構成情報テーブルに登録するものである。
【００９８】
ステップＳ５０２では、ステップＳ５０１で受け付けたファイルのファイルパスを取得し、ファイル名を取り除いたフォルダパスをテンポラリレコードのフォルダパス８０３へ格納する。
【００９９】
ステップＳ５０３では、ステップＳ５０１で受け付けたファイルのファイル名を取得し、テンポラリレコードのファイル名５０４へ格納する。
【０１００】
以下、ステップＳ５０４〜Ｓ５０７の各種情報の取得処理（構成情報テーブル８００の各情報の取得処理）は、ステップＳ５０１で受け付けたファイルが対象ファイル１（クラインとＰＣ２００の外部メモリに記憶されたファイル）である場合、起動中の比較ツールがクラインとＰＣ２００に設定された３次元ＣＡＤアプリケーションのＡＰＩに、各種情報の取得要求を行い、当該取得要求に応じた結果の情報を当該３次元ＣＡＤアプリケーションのＡＰＩから受け取ることによって実行される。
【０１０１】
また、ステップＳ５０１で受け付けたファイルが対象ファイル２（ファイル管理サーバ１００の外部メモリに記憶されたファイル／ＰＤＭに登録されたファイル）である場合、起動中の比較ツールがＰＤＭのＡＰＩに、各種情報の取得要求を行い、当該取得要求に応じた結果の情報を当該ＰＤＭのＡＰＩから受け取ることによって実行される。
【０１０２】
ステップＳ５０４では、ステップＳ５０１で受け付けたファイルについて、３次元ＣＡＤもしくはＰＤＭのＡＰＩによって特定されたコンフィギュレーション名を、当該ＡＰＩから取得し、テンポラリレコードのコンフィギュレーション名８０７へ格納し、ステップＳ５０５へ処理を移行する。
【０１０３】
ステップＳ５０５では、ステップＳ５０１で受け付けたファイについて、３次元ＣＡＤもしくはＰＤＭのＡＰＩによって特定されたファイルの種類の情報を、当該ＡＰＩから取得し、テンポラリレコードの種類８０６へ格納する。
【０１０４】
ステップＳ５０６では、ステップＳ５０１で受け付けたファイルについて、３次元ＣＡＤもしくはＰＤＭのＡＰＩによって特定された構成順序を、当該ＡＰＩから取得し、テンポラリレコードの構成パス８０５へ格納する。
【０１０５】
ステップＳ５０７では、ステップＳ５０６を実施する過程で得られる構成レベルの次数（前述した何次的参照関係に相当するか）を、３次元ＣＡＤもしくはＰＤＭのＡＰＩより取得し、テンポラリレコードのレベル８０２へ格納して、ステップＳ５０８へ処理を移行する。
【０１０６】
ステップＳ５０８では、処理中の構成情報テーブルを対象に、テンポラリレコードと図８の８０２〜８０７の値が一致するレコードの検索処理を行う。一致するレコードを検出しなかった場合はステップＳ５０９へ、一致するレコードを検出した場合はステップＳ５１０へそれぞれ処理を移行する。つまり、取得したファイルの各項目の情報が、構成情報テーブルに登録済か判定する。
【０１０７】
ステップＳ５０９では、構成情報テーブルにテンポラリレコードの値を新規レコードとして追加し、員数８０８へ１を格納してステップＳ５１１へ処理を移行する。
【０１０８】
ステップＳ５１０では、構成情報テーブルで検出した一致レコードの員数８０８の値へ１を加算し、ステップＳ５１１へ処理を移行する。
【０１０９】
ステップＳ５１１では、処理ファイルの存在確認処理を行い、処理ファイルが存在しない場合はステップＳ５１２へ、処理ファイルが存在する場合はステップＳ５１３へそれぞれ処理を移行する。つまり、フォルダパスの示す、クライアントＰＣ２００またはファイル管理サーバ１００（ＰＤＭ）上の場所に、実際にファイルが記憶されているかを判定する。
【０１１０】
ステップＳ５１２では、ステップＳ５０９もしくはＳ５１０で更新した構成情報テーブルのレコードの判定８０９へ−１の値を格納し、構成情報取得処理を終了する。
【０１１１】
ステップＳ５１３では、処理ファイルの種類８０６によって処理の移行先を決定する。ここでは参照ファイル持つことを前提とした種類をＡｓｓｙ、参照ファイルを持たないことを前提とした種類をＰａｒｔとし、処理ファイルの種類がＡｓｓｙだった場合はステップＳ５１４へ処理を移行し、処理ファイルの種類がＰａｒｔだった場合は構成情報取得処理を終了する。
【０１１２】
ステップＳ５１４では、処理ファイルに対してＡＰＩを用いることにより参照ファイルの一覧を取得し、ステップＳ５１５へ処理を移行する。参照ファイルが複数ある場合は、複数参照ファイルを取得する。
【０１１３】
ステップＳ５１５では、ステップＳ５１４で取得したファイルに対して未処理ファイルの有無の判定を行い、未処理のファイルがある場合はステップＳ５１６へ処理を移行することで構成情報取得処理の再起処理を行う。つまり、取得した参照ファイルのうち１つを取得して、当該取得したファイルをステップＳ５０１で受け付け、以降、ステップＳ５０２〜Ｓ５１６の処理を適用する。
【０１１４】
未処理のファイルがない場合は構成情報取得処理を終了する。つまり、全てのファイルの全ての参照ファイルに対するステップＳ５０１〜Ｓ５１６の処理を完了した場合に、当該構成情報の取得処理を終了する。以上が図５の、本発明の実施形態における、構成情報取得処理の一例についての説明である。
【０１１５】
当該図５の構成情報取得処理による構成情報テーブル更新の様子は、図１３に示す通りである。
【０１１６】
図４の説明に戻る。ステップＳ４０４では、ステップＳ４０３で作成した、対象ファイル１の構成情報を示す構成情報テーブル（以降、構成情報テーブル１／図９の９００に図示）のレコードをレコードＮｏ順に、全て図７のコマンドダイアログ７００のリストボックス７０３へ表示し、ステップＳ４０５へ処理を移行する。
【０１１７】
表示する項目は構成情報テーブル１の列のうちフォルダパス、ファイル名、構成パス、種類、コンフィギュレーション名、員数の７項目を対象とする。また、構成情報取得処理の結果を操作者へ効果的に示唆するためリストボックス背景色の変更処理を行う。具体的には図９の９００の構成情報テーブル１のレコードの中で判定列の値が−１のレコードについて、リストボックス７０３に表示したレコード行の背景色を赤色に変更する。これにより、ファイルの構成情報の比較結果を示す（ここでは当該ファイルとの比較対象のファイル（後述するステップＳ４０６で構成情報を取得するファイル）が未取得のため、未取得のファイルと構成情報の比較結果を示す）。ステップＳ４０４の具体的な処理結果（比較結果）は、例えば、図１１の１１００のコマンドダイアログに示す。
【０１１８】
ステップＳ４０５では、対象ファイル１と構成を比較する対象ファイル２を受け付ける（第２のアセンブリ取得手段に該当）。当該対象ファイル２の受付処理の詳細については、図１７の説明で後述する。
【０１１９】
ここで図１７を参照して、本発明の実施形態における、対象ファイル２の受付処理の詳細の一例について説明する。図１７は、本発明の実施形態における、対象ファイル２の受付処理の詳細の一例を示すフローチャートである。
【０１２０】
クライアントＰＣ２００のＣＰＵ２０１（比較ツール）は、ファイル管理サーバ１００（ＰＤＭ）に対して、対象ファイル１のファイル名、フォルダパス、クライアントＰＣ２００のＩＰアドレスを送信する（ステップＳ１７０１）。
【０１２１】
ファイル管理サーバ１００（ＰＤＭ）はこれを受信して（ステップＳ１７０２）、外部メモリに記憶されている履歴テーブル１９００に、当該ファイルとファイル名（ファイル名１９０２）、送信元の装置（移動元ＩＰ１９０３）、フォルダパス（移動元パス１９０４）が一致する履歴が存在するか判定する（ステップＳ１７０３）。
【０１２２】
一致する履歴が存在する場合、つまり、対象ファイル１に対応するファイル（対象ファイル２）が存在する場合、当該対象ファイル２のフォルダパスを特定して、クライアントＰＣ２００に送信する（ステップＳ１７０４）。一致する履歴が存在しない場合、当該一致する履歴（対応するファイル）が存在しない旨を示す情報（エラー情報）をクライアントＰＣ２００に送信する（ステップＳ１７０５）。
【０１２３】
クライアントＰＣ２００のＣＰＵ２０１（比較ツール）は、当該対象ファイル２のフォルダパス又はエラー情報を受信し（ステップＳ１７０６）、受信した情報が対象ファイル２のフォルダパスか判定する（ステップＳ１７０７）。
【０１２４】
受信した情報が対象ファイル２のフォルダパスであると判定した場合、当該フォルダパスの情報を、対象ファイル２のフォルダパスとして、図７のテキストボックス７０４に挿入し（ステップＳ１７０８）、処理を終了する。
【０１２５】
受信した情報が対象ファイル２のフォルダパスでない（エラー情報である）と判定した場合、対象ファイル２をユーザに選択させるための不図示のファイル選択画面を表示し（ステップＳ１７０９）、ファイルの選択を受け付ける（ステップＳ１７１０）。そして、当該選択を受け付けたファイルのフォルダパスを、対象ファイル２のフォルダパスとして、図７のテキストボックス７０４に挿入し（ステップＳ１７０８）、処理を終了する。
【０１２６】
尚、ステップＳ１７０９において表示する不図示のファイル選択画面においては、ファイルを選択するために当該ファイル選択画面において指定する参照先のフォルダパスは、図１８の参照制限情報の対象ファイル１８０２＝「対象ファイル２」の情報に従い、ファイル管理サーバ１００（参照先ＩＰ＝１８２．１６．ＹＹＹ．ＺＺＺ）の、「￥￥Ｓｅｖｅｒ￥ＰＤＭ￥ｄａｔａ」以下のフォルダに限るものとする。
【０１２７】
つまり、当該不図示のファイル選択画面において、上述した参照先以外の参照先の指定を受け付けた場合、クライアントＰＣ２００のＣＰＵ２０１（比較ツール）は、上述した参照先以外の参照先を表示不可能な旨を示すエラー画面を表示し、ファイル管理サーバ１００以外からのファイルの選択を行わせないよう制御する。以上が図１７の、本発明の実施形態における、対象ファイル２の受付処理の詳細の一例についての説明である。
【０１２８】
図４の説明に戻る。ステップＳ４０６では、ステップＳ４０５で受け付けたファイルに対して構成情報取得処理を行う（つまり、図５のステップＳ５０１で受け付けるファイル＝図４のステップＳ４０５で受け付けたファイルとなる）。構成情報取得処理の詳細については、図５の説明で上述したため、ここでは説明を割愛する（第２のアセンブリ取得手段に該当）。
【０１２９】
尚、ステップＳ４０５で受け付けるファイルは、ファイル管理サーバ１００の外部メモリンに記憶され、その格納場所はＰＤＭによって管理されているため、クライアントＰＣ２００のＣＰＵ２０１（比較ツール）は、ＰＤＭのＡＰＩに対して、当該対象ファイル２のコンフィギュレーション名、ファイルの種類、構成パス、レベルの情報を要求し（アセンブリ要求手段に該当）、当該要求の結果ＰＤＭによって特定された同情報を受信して取得するものとする（図５のステップＳ５０４〜５０７参照）。
【０１３０】
ステップＳ４０６の処理によって図１０の１０００に示す、対象ファイル２の構成情報を示す構成情報テーブル２を作成し、クライアントＰＣ２００の外部メモリに記憶して、ステップＳ４０７へ処理を移行する。
【０１３１】
ステップＳ４０７では、ステップＳ４０４と同様にステップＳ４０６で作成した図１１に示す構成情報テーブル２のレコードを全て図７のリストボックス７０６へ表示し、（つまり、コマンドダイアログを図１１の１１００の状態から１１５０の状態に更新して、）ステップＳ４０８へ処理を移行する。
【０１３２】
ステップＳ４０８では、操作者による図７コマンドダイアログ７００の実行ボタン７０７受付処理を行う。操作者によるボタン押下を受け付けた場合はステップＳ４０９へ処理を移行する。
【０１３３】
ステップＳ４０９では、構成比較処理を行う。詳細については図６を用いて後述する。ステップＳ４０９の処理によって図９の９００に示す構成情報テーブル１を図９の９５０に示す状態へ更新し、図１０の１０００に示す構成情報テーブル２を図１０の１０５０に示す状態へ更新し、ステップＳ４１０へ処理を移行することとなる。
【０１３４】
ここで、ステップＳ４０９で行う構成比較処理について、図６を用いて説明する。図６は、本発明の実施形態における、構成比較処理の一例を示すフローチャートである。尚、Ｓ６０１〜Ｓ６１７の各ステップは、クライアントＰＣ２００におけるＣＰＵ２０１の制御の下、構成情報の比較ツールの機能を用いて処理が行われる。
【０１３５】
ステップＳ６０１では、構成情報テーブル１のレコードに対して未処理ファイルの判定を行い、未処理ファイルがある場合はレコードを１つ取得してステップＳ６０２へ、未処理ファイルがない場合はステップＳ６１０へそれぞれ処理を移行する。つまり、構成情報テーブル１に、ステップＳ６０１〜Ｓ６０９の処理を未適用のファイルがあるか判定する。
【０１３６】
ステップＳ６０２では、ステップＳ６０１から引き渡されるレコード（以降、レコード１）に対して構成情報テーブル２のレコードを対象とした未処理ファイルの判定を行う。つまり、レコード１との内容の一致判定が未だ行われていない構成情報テーブル２のレコード（ファイル）があるか判定する。未処理ファイルがある場合は、構成情報テーブル２から未処理のファイル（レコード）を１つ取得してステップＳ６０３へ、未処理ファイルがない場合はステップＳ６０７へそれぞれ処理を移行する。
【０１３７】
ステップＳ６０３では、前述したレコード１と、ステップＳ６０２から引き渡されるレコード（以降、レコード２）に対して第１条件の一致判定を行い（つまり、処理ファイルとファイル名８０４、構成パス８０５、種類８０６の３つが全て一致するか否かの判定を行い）、一致する場合はステップＳ６０４へ、一致しない場合はステップＳ６０２へそれぞれ処理を移行する。なおステップＳ６０２へ処理を移行した場合はステップＳ６０３までの処理を適用したレコード２を処理済みレコードとして扱う。当該処理済か否かの情報は、当該レコードの識別情報と対応付けて、クライアントＰＣ２００の一時記憶領域に、当該図６の処理が終了するまで一時記憶されるものとする。
【０１３８】
ステップＳ６０４では、構成情報テーブル２の中でレコード２の順序をレコード１の順序と同じレコードＮｏ（構成情報テーブル８００でいうレコードＮｏ８０１）まで移動させ、ステップＳ６０５へ処理を移行する。つまり、コマンドダイアログ７００にて、ユーザに、構成情報テーブル１と構成情報テーブル２の示す構成情報を比較して確認させる際に、当該レコード１と、レコード１と処理ファイルとファイル名８０４・構成パス８０５・種類８０６の３つが全て一致するレコード２のリストボックス７０３（７０６）内の位置が、一致するように、レコード内の順序を更新する。
【０１３９】
これにより、当該レコード２が、リストボックス７０３のレコード１の真横に表示される。つまり、ユーザは、レコードの比較・状態確認を目視で行う場合に、確認対象のレコード１の真横に位置するレコード２を見るだけで、当該レコード１とレコード２の状態の差異の有無、差異の内容を確認することが出来る。
【０１４０】
ステップＳ６０５では、レコード１とレコード２のコンフィギュレーション名８０７と員数８０８両方の一致（以降、第２条件）の判定処理を行い、一致及び不一致を問わずステップＳ６０６へ処理を移行する。ただし不一致の場合は、テーブル２の処理済みレコードから、レコード１と第１条件及び第２条件のいずれもが一致するレコードの検出を行い、検出した場合は検出したレコードをテーブル２内でレコード１の順序と同じＮｏまで移動させる。
【０１４１】
ステップＳ６０６では、ステップＳ６０５の判定処理によってレコード１の判定８０９の更新処理を行い、ステップＳ６０２へ処理を移行する。更新処理では、レコード１とレコード２の比較結果をもとにレコード１及びレコード２の判定８０９へ、第１条件と第２条件が一致する場合は０、第１条件のみ一致する場合は１をそれぞれ格納する。ここで０を格納することはレコード１に対してテーブル２には構成情報が一致する構成ファイルが存在することを示し、１を格納することは構成情報の一部は異なるものの同一の構成ファイルが存在することを示す。
【０１４２】
ステップＳ６０７（ステップＳ６０２でＮＯ）では、レコード１に対して構成情報テーブル２に第１条件が一致するレコードが１件以上あるか否かの判定処理を行い、１件以上ある場合はステップＳ６０１へ、１件もない場合はステップＳ６０８へそれぞれ処理を移行する。なおステップＳ６０１へ処理を移行した場合はステップＳ６０７までのレコード１を処理済みレコードとして扱う。
【０１４３】
ステップＳ６０８では、テーブル２においてレコード１の順序と同じＮｏへブランクレコードを新規に追加し、ステップＳ６０９へ処理を移行する。
【０１４４】
ステップＳ６０９では、レコード１とステップＳ６０８で追加したレコードの判定８０９へ、２の値を格納し、ステップＳ６０１へ処理を移行する。ここで２を格納することは、レコード１に対してテーブル２には構成情報が一致する構成ファイルが存在しない場合、もしくは構成情報が一致する構成ファイルが存在したとしてもテーブル１とテーブル２を比較した際に対をなすレコードが存在しない場合（構成情報が一致したとしても既にほかのレコードと対が確定している状態）を示す。
【０１４５】
図１４は、上述したステップＳ６０１〜Ｓ６０９の処理（構成比較処理）の様子を示す。つまり、構成テーブル１の内容に基づいた構成テーブル２の内容更新処理の様子の一例を示す。
【０１４６】
ステップＳ６１０では、テーブル２のレコードに対して未処理ファイルの判定を行い、（つまりステップＳ６１１〜Ｓ６１７の処理を未適用のファイルが存在するか判定を行い）未処理ファイルがある場合は、構成情報テーブル２から未処理のファイルを１つ取得して、ステップＳ６１１へ処理を移行し、未処理ファイルがない場合は構成比較処理を終了する。
【０１４７】
ステップＳ６１１では、ステップＳ６１０から引き渡されるレコード２に対して構成情報テーブル１のレコードを対象とした未処理ファイルの判定を行い（つまり、レコード２との内容の一致判定が未だ行われていない構成情報テーブル１のレコード（ファイル）があるか判定を行い）、未処理ファイルがある場合はステップＳ６１２へ、未処理ファイルがない場合はステップＳ６１５へそれぞれ処理を移行する。
【０１４８】
ステップＳ６１２では、レコード２とステップＳ６１１から引き渡されるレコード１に対して第１条件の一致判定を行い（つまり、処理ファイルとファイル名８０４、構成パス８０５、種類８０６の３つが全て一致するか否かの判定を行い）、一致する場合はステップＳ６１３へ、一致しない場合はステップＳ６１１へそれぞれ処理を移行する。なおステップＳ６１１へ処理を移行した場合はステップＳ６１２までの処理を適用したレコード１を処理済みレコードとして扱う。
【０１４９】
ステップＳ６１３では、レコード２とレコード１に対して第２条件の判定処理を行い（つまり、レコード２とレコード１のコンフィギュレーション名８０７と員数８０８両方が一致するか判定を行い）、一致及び不一致を問わずステップＳ６１４へ処理を移行する。ただし不一致の場合は、構成情報テーブル１において、当該レコード２の順序と同じレコードＮｏへ、ブランクレコードを新規に追加する。
【０１５０】
ステップＳ６１４では、ステップＳ６１３の判定処理によってレコード２とレコード１の判定８０９の更新処理を行い、ステップＳ６１１へ処理を移行する。更新処理では、レコード２とレコード１の比較結果をもとにレコード２及びレコード１の判定８０９へ、第１条件と第２条件が一致する場合は０、第１条件のみ一致する場合は１をそれぞれ格納する。またステップＳ６１４でブランクレコードを追加した場合は、テーブル２とテーブル１の判定８０９へそれぞれ１を格納する。
【０１５１】
ステップＳ６１５では、レコード２に対してテーブル１に第１条件が一致するレコードが１件以上あるか否かの判定処理を行い、１件以上ある場合はステップＳ６１０へ、１件もない場合はステップＳ６１６へそれぞれ処理を移行する。なおステップＳ６１０へ処理を移行した場合はステップＳ６１５までのレコード２を処理済みレコードとして扱う。
【０１５２】
ステップＳ６１６では、テーブル１においてレコード２の順序と同じＮｏへブランクレコードを新規に追加し、ステップＳ６１７へ処理を移行する。
【０１５３】
ステップＳ６１７では、レコード２とステップＳ６１６で追加したレコードの判定８０９へ３を格納し、ステップＳ６０１へ処理を移行する。ここで３を格納することは、レコード２に対してテーブル１には構成情報が一致する構成ファイルが存在しない場合、もしくは構成情報が一致する構成ファイルが存在したとしてもテーブル１とテーブル２を比較した際に対をなすレコードが存在しない場合（構成情報が一致したとしても既にほかのレコードと対が確定している状態）を示す。
【０１５４】
図１５は、上述したステップＳ６１０〜Ｓ６１７の処理（構成比較処理）の様子を示す。つまり、構成テーブル２の内容に基づいた構成テーブル１の内容更新処理の様子の一例を示す。以上が図６の、本発明の実施形態における、構成比較処理の一例の説明である。
【０１５５】
図４の説明に戻る。ステップＳ４１０では、ステップＳ４０４と同様の手順によってステップＳ４０９で更新した図９の９５０に示す構成情報テーブル１を用いて図７のリストボックス７０３の表示内容を更新し、ステップＳ４１１へ処理を移行する。このとき構成比較処理の結果（比較結果）を操作者へ効果的に示唆するためリストボックス背景色の変更処理を行う。
【０１５６】
具体的には図９の９５０に示す構成情報テーブル１の判定列の値が１の場合は該当するリストボックス上のレコード行の背景色を青色に、判定列の値が２の場合は黄色に、判定列の値が３の場合は緑にそれぞれ変更することでファイルの比較結果を表示する。当該比較結果の表示は、例えば、図１２の１２００のコマンドダイアログの表示である。
【０１５７】
ステップＳ４１１では、ステップＳ４１０と同様の手順によってステップＳ４０９で更新した図１０の１０５０に示す構成情報テーブル２を用いて図７のリストボックス７０６の表示内容を更新する。例えば、図１２の１２５０のコマンドダイアログの表示である。
【０１５８】
ステップＳ４１２では、コマンド終了受付処理（構成情報の比較ツールの終了指示受付処理）を行う。具体的には図７の終了ボタン７０８の操作者による押下により図７のコマンドダイアログ７００を非表示にし、処理を終了する。以上が図４の、本発明の第１の実施形態における、構成比較処理の概要についての説明である。
【０１５９】
以上説明したように、本発明によれば、送信済みのファイルの構成と、送信前のファイルの構成との比較結果をユーザに容易に確認させることができる。
【０１６０】
つまり、外部装置にアップロードする前のファイルの構成と、外部装置にアップロードされた後のファイルの構成とが一致し、当該ファイルが正しくアップロードされているかをユーザに確認させることができる。
【０１６１】
例えば、３次元ＣＡＤアプリケーションを用いることなく効率よく異なるシステム間におけるＣＡＤファイルの構成情報を比較することが可能となる。特に大規模な構成情報の場合には３次元ＣＡＤアプリケーションによるファイルの読み込みが不要なため、３次元ＣＡＤアプリケーションがファイルを開くまでの時間を省略することができる。
【０１６２】
また、例えば、３次元ＣＡＤアプリケーションでファイルを展開し、その結果の比較・一致評価を行うことなく、ユーザに容易に構成情報の違いを確認させることができ、効率的かつ容易にＰＤＭへ保管された３次元ＣＡＤファイルの構成情報が確かなものであるかを確認させることができる。
【０１６３】
尚、上述した本発明の第１の実施形態においては、図１９の履歴テーブル１９００はファイル管理サーバ１００（ＰＤＭ）によって生成され、当該ファイル管理サーバ１００の外部メモリに記憶されるものとしたが、例えば、クライアントＰＣ２００（比較ツール）によって生成され、当該クライアントＰＣ２００の外部メモリに記憶するようにしてもよい。
【０１６４】
つまり、図１６のステップＳ１６０５によるファイルのファイル管理サーバ１００への送信時、履歴テーブルが未精製の場合は、新規に履歴テーブルを生成して、当該ファイル管理サーバ１００へ送信するファイルの履歴情報を当該履歴テーブルに追加して、クライアントＰＣ２００の外部メモリに記憶する。また、移動先ＩＰ１９０５は、当該ファイル送信後に、ファイル管理サーバ１００より取得して履歴テーブルに格納するものとする。
【０１６５】
この場合、図１７に示す対象ファイル２の受付処理における、ステップＳ１７０１〜ステップＳ１７１０の処理は全てクライアントＰＣ２００のＣＰＵ２０１が実行するものとする。
【０１６６】
＜第２の実施形態＞
以下、本発明の第２の実施形態について説明する。
【０１６７】
上述した第１の実施形態においては、比較対象ファイル（対象ファイル１及び対象ファイル２）をそれぞれ、クライアントＰＣ及びファイル管理サーバから取得するものとしたが、第２の実施形態においては、それぞれのファイルを自由にユーザに選択させる。
【０１６８】
こうすることにより、ファイルの移動、送信を行った場合、移動前と移動後で当該ファイルを記憶する装置が異なるか否かに関わらず、移動前のファイルの構成と、移動後のファイルの構成との比較結果をユーザに容易に確認させることができる。
【０１６９】
以下、第２の実施形態について、上述した第１の実施形態と処理が同一の部分については説明を省略し、当該第１の実施形態と処理が異なる部分について説明する。当該第２の実施形態においては、図１７〜図１９に示す情報は用いない。
【０１７０】
クライアントＰＣ２００のＣＰＵ２０１は、図４のステップＳ４０１〜Ｓ４０４の処理を実行する。尚、ステップＳ４０２においては、第１の実施形態で前述したように参照制限情報１８００を参照することなく、不図示のファイル選択画面に、ユーザによって指定されたフォルダパスの情報を選択可能に表示する。つまり、クライアントＰＣ２００の外部メモリに記憶されたファイルだけでなく、ファイル管理サーバ１００の外部メモリに記憶されたファイルも、対象ファイル１として選択可能である。
【０１７１】
ステップＳ４０５においては、図１７に示す対象ファイル２の受付処理を実行せずに、図７のコマンドダイアログ７００を表示画面に表示した状態で、参照ボタン７０５の押下を受け付けるまで待機する。
【０１７２】
クライアントＰＣ２００のＣＰＵ２０１は、当該参照ボタン７０５の押下を受け付けた場合、不図示のファイル選択画面を表示して、当該ファイル選択画面においてユーザからのファイル（アセンブリファイル）の選択操作を受け付け、当該選択操作により選択したファイルを対象ファイル２として受け付ける。
【０１７３】
尚、ステップＳ４０５においては、第１の実施形態で前述したように参照制限情報１８００を参照することなく、不図示のファイル選択画面に、ユーザによって指定されたフォルダパスの情報を選択可能に表示する。つまり、ファイル管理サーバ１００の外部メモリに記憶されたファイルだけでなく、クライアントＰＣ２００の外部メモリに記憶されたファイルも、対象ファイル１として選択可能である。
【０１７４】
その後、処理をステップＳ４０６に移行し、上述した第１の実施形態と同じ方法で、ステップＳ４０６〜Ｓ４１２の処理を実行する。
【０１７５】
以上が、本発明の第２の実施形態についての説明である。
【０１７６】
これにより、ファイルの移動、送信を行った場合、移動前と移動後で当該ファイルを記憶する装置が異なるか否かに関わらず、移動前のファイルの構成と、移動後のファイルの構成との比較結果をユーザに容易に確認させることができる。
【０１７７】
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。
【０１７８】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【０１７９】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１８０】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０１８１】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１８２】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０１８３】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１８４】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１８５】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１８６】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１８７】
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１８８】
１００  ファイル管理サーバ
１０１  ＬＡＮ
２００  クライアントＰＣ
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  ＲＯＭ
２０４  システムバス
２０５  入力コントローラ
２０６  ビデオコントローラ
２０７  メモリコントローラ
２０８  通信Ｉ／Ｆ（インタフェース）コントローラ
２０９  入力装置
２１０  ディスプレイ装置
２１１  外部メモリ
【図１】
0005958444.tif 000002
【図２】
0005958444.tif 000003
【図３】
0005958444.tif 000004
【図４】
0005958444.tif 000005
【図５】
0005958444.tif 000006
【図６】
0005958444.tif 000007
【図７】
0005958444.tif 000008
【図８】
0005958444.tif 000009
【図９】
0005958444.tif 000010
【図１０】
0005958444.tif 000011
【図１１】
0005958444.tif 000012
【図１２】
0005958444.tif 000013
【図１３】
0005958444.tif 000014
【図１４】
0005958444.tif 000015
【図１５】
0005958444.tif 000016
【図１６】
0005958444.tif 000017
【図１７】
0005958444.tif 000018
【図１８】
0005958444.tif 000019
【図１９】
0005958444.tif 000020