(58)【調査した分野】(Int.Cl.,DB名)
前記アプリケーション存在判定手段は、前記ファイル属性情報を参照して、前記処理対象のファイルを開くコマンドが存在するか否かを判定し、当該コマンドが存在する場合は前記処理対象のファイルに関連付けられたアプリケーションが存在すると判定し、当該コマンドが存在しない場合は前記処理対象のファイルに関連付けられたアプリケーションが存在しないと判定することを特徴とする請求項1に記載の情報処理装置。
前記アプリケーション存在判定手段で、前記処理対象のファイルを開くコマンドが存在しないと判定した場合、さらに、前記処理対象のファイルを開く処理が禁止されているかどうか判定し、禁止されていると判定した場合は前記処理対象のファイルを開く処理が実行できない旨をユーザに通知し、禁止されていないと判定した場合は前記処理対象のファイルを開くアプリケーションをユーザに選択させることを特徴とする請求項3に記載の情報処理装置。
【背景技術】
【0002】
文書管理サーバのデータベースをバックエンドエンジンとして利用する文書管理システムがオフィスなどを中心に利用されている。データベースにオフィス内で使用するファイルを集約することで、複数のユーザがクライアントPCからファイルを閲覧、編集、利用することなどが可能となる。さらに、上述したように複数のユーザでファイルを共有して使用するので、同一のファイルが同時に編集されることによる不整合が生じる恐れがある。この不整合を防ぐため文書管理サーバにて、排他の制御を行うようなシステムも備えられていることが多い。つまり、ファイルが任意のユーザにより使用中の場合には、他のユーザからは更新処理などができないように制御を行う。
【0003】
一般的には、排他制御の方法としては、ファイルのチェックアウト・チェックインという方法が採られている。チェックアウトとは、ファイルの編集を行うためにデータベースからファイルを取り出し、当該チェックアウトを指示したユーザ以外のユーザが該ファイルを更新できないチェックアウト状態(排他制御状態)にすることである。すなわち、チェックアウト状態とは、ファイルがデータベースから取り出されて、当該チェックアウトを指示したユーザのみが当該ファイルを編集して更新できるという状態になる。そして、当該ファイルに対してチェックアウト操作が行われ、データベースの処理対象のファイルをチェックアウト状態とすることで、チェックアウトを行ったユーザ以外からは更新処理を禁止することとなる。その後、ユーザはチェックアウトを行ったファイルに対して編集操作などを行い、データベースの処理対象のファイルを更新するとともにチェックアウト状態の解除(チェックイン)を行う。チェックインは、編集を行った後のファイルをサーバに送信して、データベースに登録されているファイルを更新するとともに、他のユーザが編集可能となるように排他制御状態を解除することである。すなわち、チェックインによりデータベース上のファイルが最新の状態となるとともにチェックアウト状態が解除され、当該ファイルに対する他のユーザからのチェックアウトおよび編集が可能となる。
【0004】
このようなチェックアウト・チェックイン処理を備えた文書管理システムによっては、ファイルに対する編集操作を効率よく実施するために、チェックアウトの指示操作を簡略化したものもある。具体的には、ファイルに対して「開く」操作が行われた場合には、対象のファイルを自動的にチェックアウトしてから、アプリケーションにファイルを読み込ませ編集可能にするといったことが行われている。なお、「開く」操作は、例えば、所望のファイルを選択した後にメニューから「開く」選択肢がユーザにより指示された場合、もしくは、所望のファイルがダブルクリックされた場合などに実行されるものとする。
【0005】
また、文書管理サーバのデータベースには、バージョン管理機能を備えたものも多く存在しておりファイルが更新されることでファイルのバージョンを更新することが可能である。そして、古いバージョンのファイルを参照することやバージョン間での差異などを確認することも可能となっている。
【0006】
また、データベースには多種多様なファイルが格納されている。例えばMicrosoft社のPowerPoint(登録商標)により作成されるプレゼンテーション資料や、Word(登録商標)により作成されるワープロ文書、Excel(登録商標)により作成される表やグラフ文書などがある。これらのファイルは、ユーザによる閲覧または編集が目的とされることが多い。さらに、ファイルの種類としては、アプリケーションの実行モジュールやショートカットファイルなど、それ自体は編集を目的とせず利用を目的とするファイルも存在している。アプリケーションの利用には、アプリケーションの実行ファイルであればアプリケーションの実行、ショートカットファイルであればショートカットファイルの参照先ファイルやWebページの閲覧や編集が含まれる。そのため、ファイルに対する開く操作において、そのファイルの編集を目的としない場合には、ユーザがチェックアウトをせずに「開く」(読み取り専用で開く)を利用することが示されている(特許文献1)。
【発明を実施するための形態】
【0013】
以下、本発明を実施するための最良の形態について図面を用いて説明する。なお、以下の実施形態は特許請求の範囲に係る本発明を限定するものではなく、また本実施形態で説明されている特徴を組み合わせたものすべてが本発明の解決手段に必須のものとは限らない。
【0014】
なお、具体的な実施形態を説明するに先立って、どのような場合が編集を目的としないで「開く」が行われるケースであるかについて説明する。
【0015】
一般に、文書管理サーバにアクセスするユーザに依存してファイルに対する用途は限定されることが多い。例えば、ユーザが編集を目的とするファイルを開く場合、ユーザの使用するクライアントPCには、操作対象のファイルを編集可能なアプリケーションがインストールされていることが一般的である。
【0016】
一方、編集を目的としないファイルについては、クライアントPCには操作対象のファイルを編集可能なアプリケーションがインストールされていないこともある。その場合、そのクライアントPCによって開く操作が実行されることで不必要なチェックアウトが実行され、本来ファイルを編集したい他のユーザが編集できないということが起こりうる。また、編集を目的しないファイルの種類としては、アプリケーションの実行モジュールやショートカットファイルなどがある。これらのファイルについては、クライアントPCにおいて、利用は可能であるがファイル自体の編集を目的とするアプリケーションが通常は関連付けられていない。よって、このようなファイルを開く場合にも、ユーザが当該ファイルを「読み取り専用で開く」を選択しない限り不必要なチェックアウトが行われユーザ操作の非効率化を招く恐れがある。
【0017】
上記点を踏まえて、以下、本実施形態について説明する。
【0018】
<構成>
図1は、本実施形態の文書管理システムのハードウェア構成例を示すブロック図である。なお、「文書」は、文書管理サーバ1100で管理される様々なファイルを総称しているものである。例えば上述したように、プレゼンテーション資料や、ワープロ文書、表やグラフ文書などや、あるいは、アプリケーションの実行モジュールやショートカットファイルなどが挙げられる。また、例えば画像ファイルや動画ファイルなども「文書」に含まれ得る。
【0019】
文書クライアント端末は、例えばPC(personal Computer)などの情報処理装置を用いることができる。文書管理クライアント端末1000はCPU(Central Processing Unit)1、RAM(Random Access Memory)2、ROM(Read Only Memory)3、システムバス4を備える。また、文書管理クライアント1000は、キーボードコントローラ5は、ディスプレイコントローラ6、ディスクコントローラ7、ネットワークコントローラ8、キーボード9、ディスプレイ10、外部メモリ11を備える。CPU1は、ROM3に含まれるプログラム用ROM又は外部メモリ11に記憶された文書管理プログラム等に基づいて、文書入出力や文書編集の実行を制御する。CPU1は、システムバス4に接続されている各デバイスを制御する。RAM2は、CPU1の主メモリ、ワークエリア等として機能する。
【0020】
ROM3は、プログラム用ROM、フォント用ROM、及びデータ用ROMを備える。ROM3内のプログラム用ROM、又は、外部メモリ11には、CPU1の制御プログラムであるオペレーティングシステム(OS)プログラム等が記憶されている。また、ROM3内のフォント用ROM、又は、外部メモリ11には、文書処理に用いられるフォントデータ等が記憶されている。更に、ROM3内のデータ用ROM、又は、外部メモリ11には、文書処理等を行う際に用いられる各種データが記憶されている。システムバス4には、CPU1、RAM2、ROM3、キーボードコントローラ5、ディスプレイコントローラ6、ディスクコントローラ7、ネットワークコントローラ8が接続されている。
【0021】
キーボードコントローラ5は、キーボード9、又は図示を省略するポインティングデバイスからのキー入力を制御する。ディスプレイコントローラ6は、ディスプレイ10による表示を制御する。ディスクコントローラ7は、外部メモリ11とのアクセスを制御する。ここで、外部メモリ11として、ハードディスク、フロッピー(登録商標)ディスク、CD−ROMなどが用いられる。外部メモリ11は、例えばブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、電子ファイル、プリンタ制御コマンド生成プログラム等を記憶する。ネットワークコントローラ8は、ネットワーク12に接続された文書管理サーバ1100を含む他の情報処理装置との通信制御処理を実行する。なお、CPU1は、ディスプレイ10上の図示を省略するマウスカーソル等で指示されたコマンドに基づいて、予め登録された種々のウィンドウを開き、種々のデータ処理を実行する。
【0022】
文書管理サーバ1100はCPU51、RAM52、ROM53、システムバス54、キーボードコントローラ55を備える。また、文書管理サーバ1100は、ディスプレイコントローラ56、ディスクコントローラ57、ネットワークコントローラ58、キーボード59、ディスプレイ60、外部メモリ61を備える。構成要素の内容は文書管理クライアント端末1000と同様である。
【0023】
図2は、本実施形態における文書管理システムのシステムブロックを示した図である。本実施形態における文書管理システムはパーソナルコンピュータのOS上で動作するクライアント(1000)・サーバ(1100)型のアプリケーションである。スキャナなどのデバイスや、OSのファイルシステムからファイルを取り込み、ファイルを複数のユーザで管理することを目的としている。
【0024】
<文書管理クライアント端末構成>
文書管理クライアント端末1000は、ファイル入出力や操作を行う文書管理クライアントアプリケーション101、外部アプリケーション102、外部アプリケーション103、OS管理データ部104を備える。文書管理クライアントアプリケーション101、アプリケーション102、アプリケーション103は、例えば
図1に示す外部メモリ11に保存されたファイルとして存在する。これらは、実行される場合にOSやそのモジュールを利用するモジュールによってRAM2にロードされて実行されるプログラムモジュールである。また、文書管理クライアントアプリケーション101、アプリケーション102、アプリケーション103は、外部メモリ11のハードディスクに追加することが可能となっている。例えば、外部メモリ11のフロッピー(登録商標)ディスク、図示を省略するCD−ROM、又はネットワーク12を経由して、外部メモリ11に追加することが可能となっている。OS管理データ部104は、アプリケーションがOSを介して利用できるデータ領域であり、ファイルやシステムが管理しているデータ領域(例えばWindows(登録商標)の場合はレジストリ)等を指す。OS管理データ部104には、ファイル属性情報1041が存在する。ファイル属性情報1041には、ファイルの種類(例えばWindows(登録商標)の場合は拡張子)ごとに各種の情報が含まれる。それらの情報として、ファイル名称、ファイルを渡して読み込ませるアプリケーション(関連付けされたアプリケーション)パスおよび読み込ませるためのOpenコマンド入力方法の情報が存在する。Openコマンド入力方法の情報に従い、Openコマンドを生成し、実行することで関連付けされたアプリケーションにファイルを読み込ませて起動することが可能である。さらに、ファイル属性情報1041には、ファイルの種類ごとの情報の中にショートカット(リンク)ファイルか否かなどの情報が存在する。
【0025】
文書管理クライアントアプリケーション101の各処理部について説明する。文書管理クライアントアプリケーション101は、文書管理クライアント端末1000のディスプレイ10上に表示される。ユーザインターフェース1001は、キーボード9や不図示のマウス(ポインティングデバイス)などの入力デバイスからの入力を受け付ける。ユーザはユーザインターフェース1001を介して文書管理サーバ1100に対してファイルの登録や、文書管理サーバ1100からのファイルの獲得を行う。また、ユーザは、文書管理サーバ1100でのファイルのステータス変更(例えば、排他状態にする)、あるいはファイルの編集といった操作を行うことになる。
【0026】
ユーザインターフェース1001から操作された情報は、コマンド制御部1002で解析され、適切な処理が行われることになる。また文書管理サーバとの通信を行うためのコマンドもコマンド制御部1002で作成される。
【0027】
スキャナ等のデバイスはデバイス制御部1003によって制御が行われる。ここでは、デバイス側からファイルを取得や、デバイス側から送信されるファイルを受信する処理がなされる。
【0028】
外部メモリ11に存在するファイルシステム等のOS上に保存されたファイルは、ファイルシステム制御部1004において入力処理させることができるようになっている。また、文書管理サーバ1100上で管理するファイルをOS上にエクスポートする処理もここで行われる。
【0029】
外部モジュール通信部1005は、外部アプリケーションとの通信を行い、文書管理サーバ1100内のファイルを外部アプリケーションに渡したり、外部アプリケーションから文書を受け取とったりといった処理を行う。例えば、文書管理サーバ1100で管理しているファイルを関連付けされた外部アプリケーション102や103に渡して起動を行うことで、外部アプリケーションによるファイルの編集が可能となる。
【0030】
ファイル管理制御部1006は、ファイルシステム制御部1004や通信制御部1009より渡されたファイルやコマンド制御部1002により作成されたコマンドに応じて処理を行う。
【0031】
テンポラリデータ1007は、文書管理クライアントアプリケーション101が使用するテンポラリデータである。テンポラリデータ1007は、文書管理サーバ1100との通信の過程で作成される一時的なデータである。
【0032】
ファイル解析部1008は、操作対象のファイルの種類を特定しOS管理データ部104のファイル属性情報1041を参照し、ファイルに関する解析を行う。
【0033】
通信制御部1009は、ネットワーク12を介して文書管理サーバ1100との通信するための制御を行う。本実施形態の通信制御部1009は、例えば文書管理サーバ1100との間の処理に特化した制御のみを行っており、TCP/IP等の通信そのものの制御はOSに用意されたものを使用することができる。
【0034】
接続設定500は、文書管理クライアントアプリケーション101から文書管理サーバ1100の文書管理サーバアプリケーション111へ接続する際の設定が格納されている。詳細については
図5を用いて後述する。
【0035】
ライブラリ情報600は、文書管理クライアントアプリケーション101が参照しているライブラリの能力情報が格納されている。ライブラリとは、管理しているファイルが存在する場所のことである。詳細については
図6を用いて後述する。
【0036】
<文書管理サーバ構成>
文書管理サーバ1100は、ファイルのデータベース管理を行う文書管理サーバアプリケーション111を備える。文書管理サーバアプリケーション111は、
図1に示す外部メモリ61に保存されたプログラムファイルとして存在する。これらは、実行される場合にOSやそのプログラムファイルを利用するモジュールによってRAM52にロードされて実行される。
【0037】
文書管理サーバアプリケーション111の各処理部について説明する。通信制御部1101は、ネットワーク12を介した文書管理クライアント端末1000の通信制御部1009との通信のための制御を行う。ただし文書管理サーバ1100の通信制御部1101は、多数の文書管理クライアント端末1000の通信制御部1009と同時に通信を行うことが可能になっている。
【0038】
文書管理制御部1102は、通信制御部1101が受信したファイルの取得や登録依頼などの文書管理に関する処理依頼に応じて通信制御部1101やデータベース制御部1104に対して処理の振り分けを行っている。
【0039】
テンポラリデータ1103は、文書管理サーバアプリケーション111が使用する一時的なデータである。
【0040】
データベース制御部1104は、データベースに保存するデータを作成し、ボリュームデータベース1105、属性データベース1106に対応するファイルを保存する処理を行う。また、文書管理クライアント端末1000からの要求に応じてそれぞれのデータベースからデータを取り出し、文書管理クライアント端末1000に渡すファイルを作成する処理を行う。
【0041】
ボリュームデータベース1105は、ファイルの実態が保存されるデータベースである。ボリュームデータベース1105は概念的なものであって、実態がOSのファイルシステムであっても問題はない。
【0042】
属性データベース1106は、文書(ファイル)の名前や作成日付、コメント、排他状態などの属性に関する情報が保存されるデータベースである。
【0043】
ライブラリ情報1107は、文書管理サーバ1100の能力情報が格納されている。詳細については
図6を用いて後述する。
【0044】
図3および
図4は、文書管理クライアントアプリケーション101のユーザインターフェース1001として表示される画面の一例をそれぞれ示している。ユーザインターフェース1001は、メインウインドウ3001、接続設定ダイアログ4001から構成される。メインウインドウ3001において、メニュー3002は、ファイルメニュー、編集メニュー等複数のメニュー項目含む。例えばメニュー3002に含まれるメニュー項目のうちファイルメニューが選択されるとファイルメニュー項目3003が表示される。ファイルメニュー項目3003としては、項目3004,項目3005,項目3006,項目3007などが存在する。
【0045】
ライブラリ表示領域3008は文書管理クライアントアプリケーション101が管理しているファイルが存在する場所(以降ライブラリとする)を表示している。選択ライブラリ3009は、現在選択されているライブラリを示しており、ファイル表示領域3010には、選択ライブラリ3009に存在するファイルの一覧が表示されている。選択ファイル3011は現在選択されているファイルを示しており、選択されているファイルが項目3004,項目3005,項目3006,項目3007の操作の対象となる。項目3004を選択することで、選択ファイル3011を「開く」処理が行われる。なお、選択ファイル3011がユーザの操作によりダブルクリックされた場合も、当該選択ファイル3011の「開く」処理が選択指示されたものとする。本実施形態においては後述する
図7に示すフローチャートに従って開く処理が行われる。項目3005を選択することで、選択ファイル3011を「読み取り専用で開く」処理が行われる。読み取り専用で開く際には、ファイルのチェックアウトを行わず、取得したファイルに対して読み取り属性を付与してからファイルを開く処理を実行する。項目3006を選択することで、選択ファイル3011を「チェックアウトする」処理を実行する。項目3007を選択することで、選択ファイル3011を「チェックインする」処理を実行する。
【0046】
接続設定ダイアログ4001は、例えば、メインウインドウ3001の不図示の設定メニュー項目を選択することで表示される。接続設定ダイアログ4001で設定される設定値は
図5で示す、接続設定データ500として保持される。チェックボックス4002は、チェックを行うことでファイルを渡してアプリケーションを起動した場合に、アプリケーションの終了時に自動的にチェックインを行うことが可能である。設定値は自動チェックイン501に格納される。チェックボックス4003は、チェックを行うことでチェックアウトが実行された場合にチェックアウト行うか否かを選択するメッセージボックスを表示しないことが可能である。設定値はチェックアウトメッセージ502に格納される。チェックボックス4004は、チェックを行うことでチェックインが実行された場合にチェックイン行うか否かを選択するメッセージボックスを表示しないことが可能である。設定値はチェックインメッセージ503に格納される。チェックボックス4005は、チェックを行うことでOpenコマンドが存在しないファイルに対して「開く」処理が指示された場合に実行が禁止されている旨のメッセージボックスを表示し、「開く」処理が実行されないようにすることが可能である。設定値はOpenコマンドがない場合開く禁止504に格納される。
【0047】
なお、接続設定500については、文書管理クライアントアプリケーション101の設定ファイルとして外部メモリ11に保持する。また、参照時には、RAM2にロードされる。設定は予めユーザが決定してもよい。
【0048】
図6は、ライブラリの能力情報の例を示したものである。ライブラリ情報600は、現在アクセスしているライブラリの情報である。文書管理クライアントアプリケーション101が管理している全ライブラリの情報を起動時に取得してライブラリへのアクセス時に設定してもよいし、現在選択されているライブラリへの接続時に取得してもよい。なお、ライブラリ情報1107もライブラリ情報600と同様の構成をとるライブラリ情報であり、文書管理サーバ1100のライブラリの能力情報が格納されている。
【0049】
601はバージョン管理情報であり、対象のライブラリがファイルのバージョン管理を行う機能を備えているか否かの情報が格納されている。602はチェックイン・チェックアウト有無の情報であり、対象のライブラリがファイルの排他制御としてチェックインやチェックアウトを行う機能を備えているか否かの情報が格納されている。属性種別603には、対象のライブラリに存在するファイルに対する属性情報が格納されている。たとえば、名称、更新日時、作成者、ファイルバージョンなどが存在する。なお、この属性種別603に含まれる、対象のライブラリに存在するファイルに対する属性情報は、OS管理データ部104のファイル属性情報1041とは異なる点に留意されたい。
【0050】
なお、ライブラリ情報600については、取得、参照時にはRAM2にロードされ、ライブラリ情報1107は取得、参照時にはRAM52にロードされる。
【0051】
<ファイルに対して開く操作が実行された際の動作>
図7は、ファイルに対して「開く」操作が実行された際の文書アクセス方法としての処理フローの例を示す図である。
【0052】
文書管理クライアントアプリケーション101のユーザインターフェース1001のメインウインドウ3001にて、項目3004が選択されると、文書管理クライアントアプリケーション101は「開く」処理フローを開始する。あるいは、項目3004が選択される代わりにファイルがダブルクリックされることで処理フローを開始してもよい。
【0053】
ステップS701では、コマンド制御部1002はユーザの操作内容を解析しファイル管理制御部1006にファイル名および開く操作が実行されたことを通知し、ファイル管理制御部1006は処理対象のファイル名を、ファイル解析部1008に渡す。ステップS702では、ファイル解析部1008は渡されたファイル名を元にOS管理データ部104のファイル属性情報1041から処理対象のファイルのファイル属性情報を取得する。ステップS703ではファイル管理制御部1006は、ステップS702で取得したファイル属性情報内にショートカットファイルであることが定義されているか否かを参照する(ショートカットファイル判定処理)。ショートカットファイルであることが定義されていればショートカットファイルであると判定する。ショートカットファイルの場合には、ステップS704に進み、ショートカットファイルではない場合にはステップS708にすすむ。
【0054】
ステップS704では、ファイル管理制御部1006は、通信制御部1009を介して文書管理サーバから処理対象のファイルの取得を行う。通信制御部1009はネットワーク12を介して、文書管理サーバアプリケーション111の通信制御部1101に対して処理対象のファイルの取得を指示する。ファイルの取得指示を受信した通信制御部1101は文書管理制御部1102に受信内容を伝搬し、データベース制御部1104を介してボリュームデータベース1105内の処理対象のファイルを取得し、通信制御部1009に送信する。続けてステップS705で、ファイル管理制御部1006は、ファイル解析部1008に、S704で取得したショートカットファイルの解析を指示し、解析結果からショートカットファイルの参照先のパスを取得する(参照先取得処理)。そして、ステップS706で、ショートカットファイルの参照先のパスが存在するライブラリのライブラリ情報1107を通信制御部1009を介して取得する。通信制御部1009はネットワーク12を介して、文書管理サーバアプリケーション111の通信制御部1109に対してライブラリ情報の取得を指示する。ライブラリ情報の取得指示を受信した通信制御部1101は文書管理制御部1102に受信内容を伝搬する。そして、文書管理制御部1102はライブラリ情報1107を取得し、通信制御部1101を介して通信制御部1009に送信する。ステップS707では、ファイル解析部1008は渡されたファイルパスを元にOS管理データ部104のファイル属性情報1041から処理対象のファイル(ショートカットファイルの参照先のパスのファイル)のファイル属性情報を取得する。このファイル属性情報取得処理によって得られた参照先のファイルを処理対象のファイルと設定する(ファイル設定処理)。S708以降の処理は、この設定されたファイル、すなわち、参照先のファイルを用いて処理が行われる。
【0055】
ステップS708では、ファイル管理制御部1006は現在処理対象となっているファイルの存在するライブラリのライブラリ情報600を参照する。ステップS709では、ファイル管理制御部1006はライブラリ情報600のチェックイン・アウト有無602を参照しライブラリにチェックイン・チェックアウトの機能が存在する場合にはステップS719に進み、存在しない場合にはステップS710に進む。
【0056】
次に、チェックイン・チェックアウトの機能が存在しない場合の処理について説明する。ステップS710では、ファイル管理制御部1006はS702又はS707で処理対象のファイルのファイル属性情報を参照して処理対象のファイルにOpenコマンドが存在するか否かを判定する(コマンド判定処理)。判定した結果、Openコマンドが存在する場合にはステップS716に進み、存在しない場合にはステップS711に進む。
【0057】
Openコマンドが存在しない場合、ステップS711では、ファイル管理制御部1006はユーザインターフェース1001を介して当該ファイルを開くためのアプリケーションを選択させるようなダイアログを表示する(不図示)。ステップS712では、コマンド制御部1002はユーザによりアプリケーションが選択されたか否かの判定結果をファイル管理制御部1006に通知する。アプリケーションが選択された場合にはステップS713進み、選択されなかった場合にはファイル管理制御部1006は処理を終了する。ユーザによりアプリケーションが選択された場合、ステップS713では、ファイル管理制御部1006は、ステップS704と同様に通信制御部1009を介して操作対象のファイルの取得を行う。すなわち、ファイル管理制御部1006は、通信制御部1009を介して文書管理サーバから操作対象のファイルの取得を行う。ステップS714では、ファイル管理制御部1006は、外部モジュール通信部1005を介して選択されたアプリケーションからOpenコマンドを生成し、続けてステップS715でOpenコマンドを実行し、処理を終了する。
【0058】
一方、Openコマンドが存在する場合、ステップS716では、ファイル管理制御部1006は、ステップS704と同様に通信制御部1009を介して文書管理サーバから操作対象のファイルの取得を行う。ステップS717では、ファイル管理制御部1006は、外部モジュール通信部1005を介して操作対象のファイルのファイル属性情報1041を参照しOpenコマンドを生成し、続けてステップS718でOpenコマンドを実行し、処理を終了する。
【0059】
次に、チェックイン・チェックアウトの機能が存在する場合の処理について説明する。ステップS719では、ファイル管理制御部1006は、接続設定情報500を取得し読み込む。ステップS720では、ファイル管理制御部1006は処理対象のファイルのファイル属性情報を参照して処理対象のファイルにOpenコマンドが存在するか否かを判定し、存在する場合にはステップS721に進み、存在しない場合にはステップS727に進む。
【0060】
Openコマンドが存在する場合、ステップS721では、ファイル管理制御部1006は処理対象のファイルのファイル属性情報1041を参照して処理対象のファイルに関連付けされたアプリケーションが存在するか否かを判定する。このアプリケーション存在判定ステップの結果、アプリケーションが存在する場合にはステップS722に進み、存在しない場合にはステップS728に進む。
【0061】
処理対象のファイルに関連付けされたアプリケーションが存在する場合、ステップS722では、ファイル管理制御部1006は接続設定500のチェックアウトメッセージ502を参照し、チェックアウト確認メッセージを表示するか否かを判定する。表示する場合には、ステップS723に進み、表示しない場合にはステップS724に進む。ステップS723では、チェックアウトの確認用のメッセージボックスを表示し、ユーザによりOKボタンが押下されることでステップS724に進む。なお、本ステップで、表示する不図示のメッセージボックスにキャンセルボタンを用意する場合に、ユーザによりキャンセルボタンが押下された場合には本ステップで処理を終了するようにしてもよい。
【0062】
ステップS724では、ファイル管理制御部1006は、通信制御部1009を介して処理対象のファイルをチェックアウト状態にするように指示する。通信制御部1009はネットワーク12を介して、文書管理サーバアプリケーション111の通信制御部1109に対して処理対象のファイルのチェックアウトを指示する。ファイルのチェックアウト指示を受信した通信制御部1101が文書管理制御部1102に受信内容を伝搬し、データベース制御部1104を介して属性データベース内の当該ファイルの排他制御状態を排他状態に変更する。ステップS725では、ファイル管理制御部1006は、テップS704と同様に通信制御部1009を介して文書管理サーバから操作対象のファイルの取得を行う。ステップS726では、ファイル管理制御部1006は、外部モジュール通信部1005を介して処理対象のファイルのファイル属性情報1041を参照しOpenコマンドを生成し、続けてステップS727でOpenコマンドを実行し、処理を終了する。ステップS728では、ファイル管理制御部1006は、ステップS704と同様に通信制御部1009を介して文書管理サーバから操作対象のファイルの取得を行う。
【0063】
このように、チェックイン・チェックアウト機能が存在し、Openコマンドが存在する場合において、処理対象のファイルに関連付けされたアプリケーションが存在しない場合にはチェックアウトを行わない。これによって、不必要なチェックアウトが行われることを防止することができる。
【0064】
Openコマンドが存在しない場合、ステップS729では、ファイル管理制御部1006は、接続設定500のOpenコマンドがない場合開く禁止504を参照する。参照した結果、開くが禁止されている場合にはステップS736に進み、禁止されていない場合にはステップS730に進む。なお、本処理フローでは、ステップS729ではOpenコマンドがない場合、開く禁止504の設定値に応じて処理を決定しているが、設定値を参照することなく直ちに開く処理を中止し処理を終了してもよい。
【0065】
「開く」が禁止されていない場合、ステップS730では、ファイル管理制御部1006はユーザインターフェース1001を介して不図示の開くためのアプリケーションを選択するようなダイアログを表示する。ステップS731では、コマンド制御部1002はユーザによりアプリケーションが選択されたか否かの判定結果をファイル管理制御部1006に通知する。そして、アプリケーションが選択された場合にはステップS732に進み、選択されなかった場合にはファイル管理制御部1006は処理を終了する。S732では、ステップS724と同様に、ファイル管理制御部1006は、通信制御部1009を介して処理対象のファイルをチェックアウト状態にするように指示する。ステップS733では、ファイル管理制御部1006は、ステップS704と同様に通信制御部1009を介して文書管理サーバから操作対象のファイルの取得を行う。ステップS734では、ファイル管理制御部1006は、外部モジュール通信部1005を介して選択されたアプリケーションからOpenコマンドを生成し、続けてステップS735でOpenコマンドを実行し、処理を終了する。
【0066】
一方、「開く」が禁止されている場合、ステップS736では、ファイル管理制御部1006はユーザインターフェース1001を介して
図8に示すような開くことができない旨を通知するメッセージボックスを表示する。ユーザによりOKボタンが押下されることで処理を終了する。
【0067】
なお、上記の処理フローにおいてチェックアウトが実行されている場合には、その後のユーザの操作によりチェックインが実行される。例えば、接続設定500の自動チェックイン501で自動チェックインを行うように設定されている場合にはOpenコマンドにより実行されたアプリケーションが終了されたタイミングでチェックインを行う。チェックイン処理はファイル管理制御部1006が、通信制御部1009を介して処理対象のファイルをチェックインするように指示する。通信制御部1009はネットワーク12を介して、文書管理サーバアプリケーション111の通信制御部1109に対して処理対象のファイルのチェックインを指示する。ファイルのチェックイン指示を受信した通信制御部1101が文書管理制御部1102に受信内容を伝搬し、データベース制御部1104を介して属性データベース内の当該ファイルの排他制御状態を非排他状態に変更する。また、ボリュームデータベース1105のチェックイン対象のファイルを更新する。もちろん、チェックインは任意のタイミングでユーザがファイルメニュー項目3003の文書のチェックイン3007を選択することでも実行可能である。
【0068】
上述のように、文書管理サーバのデータベースをバックエンドエンジンとして利用する文書管理システムにおいて、文書管理クライアントPCのファイル属性情報に応じて最適なサーバアクセス方法決定を実施している。これにより、ユーザは常に単一の開くという操作でファイルの種類を意識することなく効率的な作業が可能となる。つまり、ファイルに対する編集が必要な時は、チェックアウトを自動的に実施することが可能となる。一方ファイルに対する編集が不要な時には不要なチェックアウトを避けることも可能なる。このため、チェックアウトに応じて行われるチェックイン操作によりファイルの更新が行われることでファイルバージョンの更新によりデータベースの増大化を防止することができる。さらに、ショートカットファイルの場合には、ショートカットファイルの参照先のファイルに対して処理を行うことでショートカットファイルについても効率的にアクセスすることが可能となっている。
【0069】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。