(57)【特許請求の範囲】
【請求項１】
複数のファイルを管理する管理手段と、
前記管理手段により管理されている複数のファイルを一括で削除する指示を受け付ける受付手段と、
前記受け付けられた指示に応じて、前記削除すべき複数のファイルのリストを作成する作成手段と、
前記作成されたリストの先頭のファイルの削除が可能か否かを判定する判定手段と、
前記作成されたリストにおいて、先頭のファイルが削除が不可能であると判定された場合、前記先頭のファイルの順序を変更する変更手段と、
前記ファイルの順序が変更されたリストに従って前記削除すべき複数のファイルを削除する削除手段とを有する文書管理装置であって、
前記変更手段は、前記削除が不可能である先頭のファイルが、前記複数のファイルのうちアクセス中でないファイルよりも後に削除されるように、前記作成されたリストにおいて前記削除が不可能である先頭のファイルの順序を変更することを特徴とする文書管理装置。
【請求項２】
前記削除が不可能であるファイルは、前記複数のファイルのうちアクセス中のファイルであることを特徴とすることを特徴とする請求項１に記載の文書管理装置。
【請求項３】
前記判定手段は、前記削除が不可能なファイルが１つも無いかどうかを判定し、
前記削除手段は、前記判定手段により削除が不可能なファイルが１つも無いと判定された場合、前記リスト上のファイルおよび／またはフォルダをルートディレクトリごと削除することを特徴とする請求項１または２に記載の文書管理装置。
【請求項４】
前記リストに記載された複数のファイルの属性を表示手段に表示しない属性に変更する属性変更手段をさらに有し、
前記判定手段は、前記リストに記載されたファイルの属性に基づいて、当該ファイルおよび／またはフォルダの削除が可能か否かと判定することを特徴とする請求項１乃至３のいずれか１項に記載の文書管理装置。
【請求項５】
前記変更手段は、前記リストにおける順序を変更する際に、ファイルサイズの大きいファイルを優先して順序を変更することを特徴とする請求項１乃至４のいずれか１項に記載の文書管理装置。
【請求項６】
複数のファイルを管理する管理手段を有する文書管理装置の制御方法であって、
前記管理されている複数のファイルを一括で削除する指示を受け付ける受付ステップと、
前記受け付けられた指示に応じて、前記削除すべき複数のファイルのリストを作成する作成ステップと、
前記作成されたリストの先頭のファイルの削除が可能か否かを判定する判定ステップと、
前記作成されたリストにおいて、先頭のファイルが削除が不可能であると判定された場合、前記先頭のファイルの順序を変更する変更ステップと、
前記ファイルの順序が変更されたリストに従って前記削除すべき複数のファイルを削除する削除ステップとを有する文書管理装置であって、
前記変更ステップにおいて、前記削除が不可能である先頭のファイルが、前記複数のファイルのうちアクセス中でないファイルよりも後に削除されるように、前記作成されたリストにおいて前記削除が不可能である先頭のファイルの順序を変更することを特徴とする文書管理装置の制御方法。
【請求項７】
複数のファイルを管理する管理手段を有する文書管理装置の制御方法をコンピュータに実行させるためのプログラムであって、
前記文書管理装置の制御方法は、
前記管理されている複数のファイルを一括で削除する指示を受け付ける受付ステップと、
前記受け付けられた指示に応じて、前記削除すべき複数のファイルのリストを作成する作成ステップと、
前記作成されたリストの先頭のファイルの削除が可能か否かを判定する判定ステップと、
前記作成されたリストにおいて、先頭のファイルが削除が不可能であると判定された場合、前記先頭のファイルの順序を変更する変更ステップと、
前記ファイルの順序が変更されたリストに従って前記削除すべき複数のファイルを削除する削除ステップとを有するプログラムであって、
前記変更ステップにおいて、前記削除が不可能である先頭のファイルが、前記複数のファイルのうちアクセス中でないファイルよりも後に削除されるように、前記作成されたリストにおいて前記削除が不可能である先頭のファイルの順序を変更することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書管理装置及びその制御方法、並びにプログラムに関し、特に、文書管理装置における初期化技術に関する。
【背景技術】
【０００２】
近年、文書管理機能を有するファイルサーバー（以下、「文書管理装置」とも呼称する）が普及していることから、複数のユーザーが同じ文書管理装置を使用する機会が増えてきている。複数のユーザーが共有する文書管理装置では、ファイル毎又はフォルダ毎にユーザーのアクセス権を割り当てることにより、ファイルを特定のユーザーのみ利用可能にしたり、グループ内でファイルを共有したりすることができる。
【０００３】
このような文書管理装置には、メンテナンスを行うシステム管理者がいる。システム管理者は、全てのファイルやフォルダにアクセスして、改変や削除を行うことができる。また、システム管理者は、文書管理装置を初期化したり、全てのファイルやフォルダを一括削除することもできる。
【０００４】
システム管理者が文書管理装置に保存された全てのファイルやフォルダの一括削除を行った場合、大量のファイルやフォルダを削除しなければならないことから時間がかかるし、他の操作ができないという問題がある。特に、組み込みの文書管理装置では、電源断保証等に備えて多くの管理ファイルを用いているため、一般的なファイルサーバーに比べてファイル等の削除にとても時間がかかる。例えば、組み込み特有の機能として、リスト取得を高速化するためにサブフォルダの情報をリストとして持っている。ファイルやフォルダを削除または移動すると、親フォルダのリスト情報を更新したり、削除途中で強制電源断されたときに、起動時に不整合が起きないようにバックアップファイルを作成していたりするためである。
【０００５】
特許文献１では、ファイルの削除指示が行われた際に削除フラグを立て、削除フラグが立っているファイルはファイル一覧表示に表示されないようにする。そして、一定時間をあけて、バックグラウンド処理で削除フラグが立っているファイルを実際に削除する。これにより、見た目上は削除が完了しているため、他の操作ができるようになる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−３０５８２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
一般的な文書管理装置では、ファイルが操作されている場合、操作中のユーザー以外が当該ファイルを変更できないようにロックされることから、当該ファイルを削除しようとすると削除が失敗する。その結果、ユーザーがファイルを操作している最中に、システム管理者がファイル等の一括削除をしようとするとエラーが生じる。
【０００８】
特許文献１記載の方法では、操作中のファイルがあると当該ファイルの削除に失敗するため、次回の削除処理までリソースを圧迫してしまう。また、操作に対して履歴を残す仕組みがある場合、削除失敗のログが残ってしまう。そのため、システム管理者は、ユーザーによるファイル操作が終わるのを待ってから一括削除を実行する必要がある。特に、組み込みの文書管理装置では、ファイル等の削除に長時間がかかるため、システム管理者は、メンテナンスを行うための時間がかかるという課題がある。
【０００９】
本発明は、ユーザーによるファイルやフォルダへの操作が終わるまで一括削除指示を待つ必要がなくなり、システム管理者の作業効率を向上させることができる文書管理装置及びその制御方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明の文書管理装置は、複数のファイルを管理する管理手段と、前記管理手段により管理されている複数のファイルを一括で削除する指示を受け付ける受付手段と、前記受け付けられた指示に応じて、前記削除すべき複数のファイルのリストを作成する作成手段と、前記作成されたリストの先頭のファイルの削除が可能か否かを判定する判定手段と、前記作成されたリストにおいて、先頭のファイルが削除が不可能であると判定された場合、前記先頭のファイルの順序を変更する変更手段と、前記ファイルの順序が変更されたリストに従って前記削除すべき複数のファイルを削除する削除手段とを有する文書管理装置であって、前記変更手段は、前記削除が不可能である先頭のファイルが、前記複数のファイルのうちアクセス中でないファイルよりも後に削除されるように、前記作成されたリストにおいて前記削除が不可能である先頭のファイルの順序を変更することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、ユーザーによるファイルやフォルダへの操作が終わるまで一括削除指示を待つ必要がなくなり、システム管理者の作業効率を向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態に係る文書管理装置の機能構成の概略を示すブロック図である。
【図２】図１におけるユーザー管理テーブルの一例を示す図である。
【図３】（ａ）ユーザー管理テーブルの構造を示した図、（ｂ）ユーザー管理テーブルで保持されるファイル属性表の一例を示す図である。
【図４】ユーザーインターフェースによるファイル一覧の表示画面の一例を示す図である。
【図５】文書管理装置における一括削除処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【００１４】
図１は、本発明の実施形態に係る文書管理装置の機能構成の概略を示すブロック図である。
【００１５】
文書管理装置１００は、文書管理機能を有するファイルサーバーであり、メインコントローラー１０、ユーザー管理システム２０、ファイル管理システム３０、及びユーザーインターフェース４０を備える。メインコントローラー１０は、ユーザー管理システム２０、ファイル管理システム３０、及びユーザーインターフェース４０を制御する。
【００１６】
メインコントローラー１０は、通信ユニット１２、ＣＰＵ１３、ＨＤＤ１４、ＲＯＭ１５、ＲＡＭ１６を備える。通信ユニット１２は、ＳＭＢ、ＷｅｂＤＡＶ、ＦＴＰ、Ｅ−Ｍａｉｌなどの各種通信プロトコルをサポートするネットワークＩ／Ｆである。また、通信ユニット１２は、ネットワークであるＬＡＮ１１に接続し、上述した各種通信プロトコルを利用して外部装置との間でデータのやり取りを行う。
【００１７】
ＣＰＵ１３は、文書管理装置全体の動作を制御する。ＨＤＤ１４はハードディスクドライブであり、文書データや設定データなどを保存するための記憶装置である。なお、ＨＤＤ１４は、フラッシュメモリ等を用いてもよい。ＲＯＭ１５はブートＲＯＭであり、システムのブートプログラムが格納されている。ＣＰＵ１３は、ＲＯＭ１５から読み出したプログラムに基づいて動作する。ＲＡＭ１６は、ＣＰＵ１３が動作するためのシステムワークメモリである。
【００１８】
ユーザー管理システム２０は、ＨＤＤ１４に保存されているユーザー管理テーブル２１を利用して、ユーザーアカウントの登録、更新、削除を管理する。ユーザー管理テーブル２１の一例を図２に示す。
【００１９】
図２において、ユーザー管理システム２０は、ユーザー情報のリストにより構成される。ユーザー情報は、ユーザーの詳細を示す属性で構成される。属性には、例えば図示のように、ユーザーＩＤ、ユーザー名、権限、登録日などが含まれる。ユーザー情報の「権限」の項目には、一般ユーザーかシステム管理者かを識別するためのフラグが格納されている。一般ユーザーは、自身のアクセス権を持つファイルやフォルダしか参照、編集、削除することができない。システム管理者は、全てのファイルやフォルダに対して、参照、編集、削除を行うことができる。なお、ユーザー管理テーブル２１は、ＨＤＤ１４内に保存されているが、ＬＡＮ１１上の外部装置に保存、管理されていてもよい。
【００２０】
メインコントローラー１０では、ＣＰＵ１３がＲＯＭ１５からプログラムを読み出して後述する処理を実行する。ＣＰＵ１３は、ユーザー管理システム２０を介して、ＨＤＤ１４に保存されているユーザー管理テーブル２１を読み込み、ＲＡＭ１６に一時格納する。そして、ＣＰＵ１３は、ユーザー情報の登録や更新、削除に応じて、ＲＡＭ１６に一時格納されたユーザー管理テーブル２１の内容を更新する。ユーザー管理テーブル２１の更新処理が終わると、ＣＰＵ１３はＲＡＭ１６に一時格納されたユーザー管理テーブル２１の内容を基に、ＨＤＤ１４に保存されているユーザー管理テーブル２１を更新する。
【００２１】
ファイル管理システム３０は、ＨＤＤ１４に保存されているファイル管理テーブル３１を利用して、ファイルやフォルダを管理する。ファイル管理システム３０は、ファイル毎やフォルダ毎にオーナーやグループの概念を持ち、ユーザー毎のアクセス権に従ってアクセス制御を行う。
【００２２】
ＣＰＵ１３は、ファイル管理システム３０を介して、ＨＤＤ１４に保存されているファイル管理テーブル３１を読み込み、ＲＡＭ１６に一時格納する。そして、ＣＰＵ１３は、ファイルやフォルダの生成、移動、複製、編集、削除に応じて、ＲＡＭ１６に一時格納されたファイル管理テーブル３１の内容を更新する。ファイル管理テーブル３１の更新処理が終わると、ＣＰＵ１３はＲＡＭ１６に一時格納されたファイル管理テーブル３１の内容を基に、ＨＤＤ１４に保存されているファイル管理テーブル３１を更新する。
【００２３】
ファイル管理テーブル３１は、図３（ａ）に示すようなツリー構造でＨＤＤ１４に保存、管理されている。ツリー構造では、ルートと呼ばれる親フォルダを起点として、フォルダの中にフォルダまたはファイルが格納される。フォルダはディレクトリと呼ばれることもある。図示例の場合、ルートの中に「個人」という名前のフォルダ３２が格納されている。さらに、フォルダ３２の中に「ｕｓｅｒＡ」、「ｕｓｅｒＢ」、「ｕｓｅｒＣ」というフォルダがあり、「ｕｓｅｒＣ」の中にファイル３３が格納されている。
【００２４】
ファイル管理システム３０は、アクセス権に従って、ファイルやフォルダに対するアクセス制御を行う機能を備える。ファイル管理テーブル３１が保持する、属性を示したファイル属性表３４を図３（ｂ）に示す。属性は、例えば、ＩＤ、ファイル名（またはフォルダ名）、ロック状態、オーナー名、表示状態、アクセス権などが含まれる。
【００２５】
アクセス権は、リード権（ｒ）、ライト権（ｗ）、実行権（ｘ）から成る。アクセス権は、「オーナー」、「グループ」、「その他」という範囲のそれぞれに対して設定することが出来る。「オーナー」とは、ファイル／フォルダの所有者を指す。「グループ」は、特定のユーザーをまとめた単位である。「その他」は、オーナーでもグループに所属するユーザーでもない他のユーザーを指している。図示例の場合、「ファイル１」は「ｒｗｘ／ｒｗｘ／ｒｗｘ」であることから、全てのユーザーが当該ファイル１に対してリード、ライト、実行を行うことができる。「ファイル４」は、「ｒｗｘ／‐‐‐／‐‐‐」であることから、オーナーである「ＵｓｅｒＤ」のみが当該ファイル４に対するリード、ライト、実行を行うことができる。
【００２６】
オーナーのみがアクセス権を持つフォルダは、個人フォルダと呼ばれることもある。フォルダのオーナーは、アクセス権を変更することで個人フォルダを容易に生成できるが、ユーザーが文書管理装置１００に対するアカウントを取得した際に、ユーザー毎に個人フォルダを生成することも出来る。
【００２７】
また、あまり複雑なアクセス制御を必要としない場合、グループでのアクセス制御を行わせないこともある。その場合は、例えば、全ユーザーが利用できる共有フォルダのみであったり、共有フォルダと個人フォルダのみであったりする。なお、共有フォルダであっても、フォルダ毎にパスワード認証を行うように構成してもよい。
【００２８】
文書管理装置１００では、複数のユーザーが使用することを想定しているため、ファイル管理システム３０は、ファイル／フォルダの不整合が起きないように、ファイルの操作中（アクセス中）には他のユーザーから操作されないようにファイルのロック制御をしている。ファイル管理システム３０は、ファイル属性表３４にロック状態か否かを示すフラグ（「ロック状態」）を格納し、当該フラグによりファイルの操作中かどうかを判断することができる。ファイル／フォルダがロックされている状態では、他のユーザーが該当のファイル／フォルダを削除しようとすると削除失敗のエラーになる。
【００２９】
また、文書管理装置１００は、初期化すなわちファイル／フォルダの一括削除処理を行う機能を有する。一括削除を実行するには、異なるオーナーのアクセス権が必要なので、全ファイル、全フォルダに対してアクセス権限を持つシステム管理者のみが一括削除処理を実行できる。
【００３０】
ユーザーインターフェース４０は、表示手段、操作手段として、表示画面とシステムを操作するためのオペレータＩ／Ｆを提供する。メインコントローラー１０は、ユーザーインターフェース４０からの入力を受け取り、必要な処理を行った上で表示画面を更新する。なお、ユーザーインターフェース４０は、文書管理装置１００上に無くてもよい。この場合、通信ユニット１２を介してＬＡＮ１１上の外部装置に画面を表示したり、操作を受け付けたりすることもできる。
【００３１】
図４は、ユーザーインターフェース４０によるファイル一覧の表示画面の一例を示す図である。
【００３２】
図４において、ファイルリスト画面４１には、他のアプリケーションに切り替えるアプリケーションタブ４２やファイル／フォルダの一覧を示すファイルリスト４３が表示されている。ファイルリスト４３は、ファイル管理テーブル３１のファイル属性表３４から読み出されたファイル名／フォルダ名、ファイル／フォルダを格納（または生成）した時刻、ファイル／フォルダの種別などで構成される。
【００３３】
また、ファイルリスト画面４１には、ファイル／フォルダを編集するための編集ボタン４４、ファイル／フォルダの詳細情報を表示するための詳細ボタン４５、ファイル／フォルダを消去するための消去ボタン４６などが配置されている。
【００３４】
文書管理装置１００では、ユーザーによるファイル／フォルダ操作の履歴を操作ログとしてＨＤＤ１４に保存している。例えば、ユーザーがファイルを開いたり、ファイルを削除したりすると、当該ファイルへの操作内容やファイルを操作したユーザーのユーザー名が操作ログとして残る。これにより、エラーが発生した場合、ファイルへの操作内容や操作したユーザーを特定することができ、エラー原因の調査が容易になる。
【００３５】
次に、文書管理装置１００における一括削除処理の流れを図５を参照して説明する。
【００３６】
図５は、文書管理装置１００における一括削除処理の流れを示すフローチャートである。
【００３７】
メインコントローラー１０は、ユーザーインターフェース４０を介してシステム管理者から一括削除指示を受け付けると、ファイル管理システム３０が削除対象となるファイル／フォルダからＲＡＭ１６上に削除リストに作成する（ステップＳ１００）。削除リストは、削除対象となるファイル／フォルダの削除順序が記載されたリストであり、リスト上には削除対象ファイル／フォルダのファイル名やフォルダ名が記載される。なお、ファイルやフォルダの格納場所に変化はない。ステップＳ１００では、メインコントローラー１０、ユーザーインターフェース４０は受付手段として機能する。
【００３８】
次に、ファイル管理システム３０は、ファイル属性表３４を参照し、削除リストに記載された削除対象ファイル／フォルダの属性における「表示状態」を「ＴＲＵＥ」（表示）から「ＦＡＬＳＥ」（非表示）に変更する（ステップＳ１０１）。これにより、削除対象のファイルのファイル名やフォルダのフォルダ名がファイルリスト画面４１上のファイルリスト４３に表示されなくなり、システム管理者以外のユーザーによる削除対象のファイル／フォルダへの操作を防ぐことができる。その結果、削除処理時のエラーの発生を防止することができる。ステップＳ１０１ではファイル管理システム３０が属性変更手段として機能する。
【００３９】
次に、ファイル管理システム３０は、削除リストの先頭に記載されているファイル名のファイルから順番に、ファイル属性表３４における削除対象ファイルの「ロック状態」を参照し、削除対象ファイルが削除可能かどうかを判断する（ステップＳ１０２）。文書管理装置１００では、削除対象ファイルがアクセス中である場合、アクセス中のユーザー以外が当該ファイルにアクセスできないようにロックされることから、ファイル属性表３４の「ロック状態」が「ＴＲＵＥ」となる。したがって、ファイル管理システム３０は、「ロック状態」が「ＦＡＬＳＥ」の場合には、該当するファイルが削除可能と判断し、「ＴＲＵＥ」の場合には削除不可能と判断する。ステップＳ１０２ではファイル管理システム３０は判定手段として機能する。
【００４０】
ステップＳ１０２で削除不可能であると判定した場合、ファイル管理システム３０は、削除不可と判定されたファイルのファイル名の削除リストにおける順序を変更する（ステップＳ１０３）。ステップＳ１０３ではファイル管理システム３０が変更手段として機能する。
【００４１】
ステップＳ１０２で削除可能であると判定した場合、ファイル管理システム３０は、削除対象ファイルの削除処理を行い、当該ファイルのファイル名を削除リストから消去する（ステップＳ１０４）。そして、削除リストに記載されたファイル名が全て削除された場合、一連の処理を終了する（ステップＳ１０５）。ステップＳ１０４では、ファイル管理システム３０は削除手段として機能する。
【００４２】
なお、ステップＳ１０２において、ファイル管理システム３０が、削除不可能なファイル／フォルダが１つも無いと判断した場合、削除リスト上のファイル／フォルダを個別に削除するのではなく、ルートディレクトリごと削除するように構成してもよい。
【００４３】
また、ステップＳ１０３で削除順序を変更する際に、例えば、ファイル属性を変更してファイルサイズが大きいファイルを優先するように制御方法を変えてもよい。
【００４４】
本実施形態によれば、ファイル／フォルダの削除順序が記載された削除リストを作成し、削除不可と判断したファイル／フォルダの削除順序を変更する。これにより、ユーザーによるファイル／フォルダへの操作が終わった後に、システム管理者の指示による一括削除処理が実行されるので、システム管理者によるファイル／フォルダの一括削除を速やかに行うことができる。また、文書管理装置側で操作ログを記録している場合でも、ユーザーによる操作が終わってからファイル／フォルダの削除を行うため、削除失敗の操作ログが残らなくなる。
【００４５】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００４６】
１０  メインコントローラー
１３  ＣＰＵ
１４  ＨＤＤ
２０  ユーザー管理システム
２１  ユーザー管理テーブル
３０  ファイル管理システム
３１  ファイル管理テーブル
３４  ファイル属性表
４０  ユーザーインターフェース
【図１】
0005871583.tif 000002
【図２】
0005871583.tif 000003
【図３】
0005871583.tif 000004
【図４】
0005871583.tif 000005
【図５】
0005871583.tif 000006