説明

ファイル管理装置

【課題】公開されているファイルの内容が自動更新されてしまった場合には、公開されているファイルを強制的に非公開にする仕組みを提供する。
【解決手段】ネットワークを介して接続されているクライアント端末に公開するファイルを管理するファイル管理装置が、公開されているファイルの中から該ファイルに記載されている項目が上書更新されたファイルを特定するための更新フラグをファイル毎に対応づけたファイル管理テーブルを記憶し、所定の間隔で記載されている項目に関連する上書更新用の項目があるかいなかを判断し、あると判断した場合には公開されているファイルの記載されている項目を上書更新用の項目に更新し、ファイル管理テーブルに上書更新された公開されているファイルに更新フラグを対応づけて登録し、ファイル管理テーブルを参照し、更新フラグがない公開されているファイルはクライアント端末へ公開を維持し、更新フラグがある公開されているファイルはクライアント端末への公開を禁止する。

【発明の詳細な説明】
【技術分野】
【0001】
ファイル管理装置及び制御方法とプログラムに関する。
【背景技術】
【0002】
現状の文書管理システムにおいて、プロジェクトフォルダで管理されるEXCEL(登録商標)ファイルが複数存在する。この管理されるEXCELファイルには共通項目値があり、ファイルごとに手動で入力している。文書にはそれぞれ公開日があり、公開時にはユーザがアクセス権の変更を行って、公開している。また、文書には編集バージョンと公開してもいい確定バージョンがあり、編集バージョンについては、編集ユーザより権限の低いユーザには参照されたくないという要望もある。
【0003】
特許文献1においては、共通項目値を自動で更新する機能はないファイルの値を判断して、自動でバージョンアップを行い、期日に応じて自動で参照権限のユーザに公開する機能は開示されていない。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2000−250794号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
各ファイルには重複して入力しなければならない共通項目値が多数存在する。現在はそれらをすべて手動で入力しているが、すべてのファイルへの入力には大変な時間がかかってしまう。また、入力し忘れ、入力間違いといった問題も手動入力では発生してしまう。編集後、ある時期にファイルの公開を行うが、手動で行うとそのたびにアクセス権をつけ直さなければならず、ファイルごとに行わなくてはならないという問題がある。
【0006】
また、編集バージョンと公開バージョンをある文書の一つのバージョンとして同時に管理してしまうと、上記のアクセス権の設定時に、編集バージョンも参照権限のあるユーザに公開されてしまうという問題もある。
本願発明は、公開されているファイルの内容が自動更新されてしまった場合には、公開されているファイルを強制的に非公開にする仕組みを提供すること。
【課題を解決するための手段】
【0007】
本願発明は、ネットワークを介して接続されているクライアント端末に公開するファイルを管理するファイル管理装置であって、公開されているファイルの中から該ファイルに記載されている項目が上書更新されたファイルを特定するための更新フラグをファイル毎に対応づけたファイル管理テーブルを記憶する記憶手段と、所定の間隔で前記記載されている項目に関連する上書更新用の項目があるかいなかを判断し、あると判断した場合には前記公開されているファイルの前記記載されている項目を前記上書更新用の項目に更新する上書更新手段と、前記ファイル管理テーブルに前記上書更新された前記公開されているファイルに前記更新フラグを対応づけて登録する登録手段と、前記ファイル管理テーブルを参照し、前記更新フラグがない前記公開されているファイルは前記クライアント端末へ公開を維持し、前記更新フラグがある前記公開されているファイルは前記クライアント端末への公開を禁止する公開制御手段と、を備えることを特徴とする。
【0008】
また、前記公開されているファイルに記載されている公開日を確認する確認手段と、前記確認手段が確認を実行した日が前記公開日と一致するかいなか判断する判断手段と、前記判断手段が公開日と一致すると判断した場合には、前記公開制御手段が禁止した前記公開されているファイルの前記クライアント端末への公開を再開する再開手段と、を備えることを特徴とする。
また公開制御手段が禁止した場合には、前記公開を禁止したファイルに小数点バージョン番号を付与する付与手段と、を備えることを特徴とする。
また、再開手段が再開した場合には、前記公開を再開したファイルの整数バージョン番号を増加する増加手段と、を備えることを特徴とする。
【発明の効果】
【0009】
本願発明により、公開されているファイルの内容が自動更新されてしまった場合には、公開されているファイルを強制的に非公開にする仕組みを提供することが可能となる。
【図面の簡単な説明】
【0010】
【図1】本願発明のファイル管理システムのシステム構成を示す図である。
【図2】本願発明のファイル管理装置及びクライアント端末のハードウエア構成図を示す図である。
【図3】本願発明のファイル管理装置が管理するフォルダ及びフォルダ内に保存されている各種ファイルの状態を示す図である。
【図4】本願発明の実施形態の定義ファイルから帳票(表計算ファイル)の各項目への自動入力処理を示すフローチャートである。
【図5】本願発明の実施形態の自動入力処理の詳細な処理のフローチャートを示す図である。
【図6】本願発明による、初回時の帳票(表計算ファイル)セル情報登録の流れとマイナーバージョンアップの流れの更新イメージを示す図である。
【図7】本願発明による、2回目以降時の帳票(表計算ファイル)セル情報更新の流れとマイナーバージョンアップの更新イメージを示す図である。
【図8】本願発明の実施形態の自動入力定義ファイル、帳票例、自動入力ログファイルデータを示す図である。
【図9】本願発明による、自動メジャーバージョンアップ処理を示すフローチャートを示す図である。
【図10】本願発明の実施形態の自動入力定義ファイルを登録する処理を示すフローチャートである。
【図11】本願発明の実施形態の自動入力定義ファイルを登録指示する操作画面の一例を示す図である。
【図12】本願発明のファイル管理装置が記憶する各種データテーブルの一例を示す図である。
【図13】本願発明のセル情報登録・更新処理および自動メジャーバージョンアップ処理の流れを示すフローチャートである。
【図14】本願発明によるアクセス権によるファイル表示可否の操作画面の一例を示す図である。
【図15】本願発明によるアクセス権による文書取得の流れを示すフローチャートの図である。
【発明を実施するための形態】
【0011】
図1を説明する。
【0012】
図1は、クライアント端末200、201及びファイル管理装置100が通信回線(LAN)300を介して通信可能に接続されたファイル管理システムのシステム構成図である。
ファイル管理装置は、ネットワークを介して接続されているクライアント端末に公開するファイルを管理している。
図2を説明する。
図2はファイル管理装置100及びクライアント端末200、クライアント端末201のハードウエア構成を示す図である。
【0013】
図2において、401はCPUで、システムバス404に接続される各デバイスやコントローラを統括的に制御する。また、ROM402あるいは外部メモリ411には、CPU401の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、各サーバ或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【0014】
403はRAMで、CPU401の主メモリ、ワークエリア等として機能する。CPU401は、処理の実行に際して必要なプログラム等をROM402あるいは外部メモリ411からRAM403にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【0015】
405は入力コントローラで、キーボード(KB)409や不図示のマウス等のポインティングデバイス等からの入力を制御する。406はビデオコントローラで、表示部410への表示を制御する。なお、表示部410はCRTだけでなく、液晶ディスプレイ等の他の表示器であってもよい。これらは必要に応じて管理者が使用するものである。また表示部は指やペン等にてユーザが表示画面内の対象位置を指定するタッチパネル機能を含むものであってもよい。
【0016】
407はメモリコントローラで、ブートプログラム,各種のアプリケーション,フォントデータ,ユーザファイル,編集ファイル,各種データ等を記憶するハードディスク(HD)や、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ411へのアクセスを制御する。
【0017】
408は通信I/Fコントローラで、ネットワーク(通信回線)300を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。
【0018】
なお、CPU401は、例えばRAM403内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT上での表示を可能としている。また、CPU401は、CRT上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【0019】
本願発明を実現するための後述する各種プログラムは、ファイル管理装置100の外部メモリ411に記録されており、必要に応じてRAM403にロードされることによりCPU401によって実行されるものである。さらに、上記プログラムの実行時に用いられるデータファイル及びデータテーブル(図12)等も、外部メモリ411またはファイル管理装置100に格納されており、これらについての詳細な説明も後述する。
図3を説明する。
【0020】
図3はファイル管理装置100の外部メモリ411が保存しているフォルダの階層、フォルダ内に格納(保存)している定義ファイル、ログファイル(更新ログファイル)、自動入力対象ファイル(表計算ファイル)を示す図である。
【0021】
つまり、ファイル管理装置100は、セル名とセル値を一意に対応づけたセル情報を含む定義ファイルを表計算ファイルとともにフォルダ毎にフォルダ内部に格納する。
【0022】
つまり、ファイル管理装置100は、セル名とセル値を対応づけたセル情報を含む更新ログファイルを表計算ファイルとともにフォルダ毎にフォルダ内部に格納する。
つまり、ファイル管理装置100は、セル名とセル値を対応づけたセル情報を含む表計算ファイルをフォルダ毎にフォルダ内部に格納し管理する。
さらに表計算ファイルのセル値には、セル値と対応づけたセル名が予め、ユーザにより設定されている。
【0023】
本願発明で処理する表計算ファイルとはマイクロソフト社のEXCEL(登録商標)等により作成した,拡張子がxls等のファイル形式であるEXCELファイル(登録商標)を意味する。
【0024】
本願発明で処理する定義ファイルとはマイクロソフト社のEXCEL(登録商標)等により作成した,拡張子がxls等のファイル形式であるEXCELファイル(登録商標)を意味する。またマイクロソフト社のメモ帳により作成した,拡張子がtxt等のファイル形式であるテキストファイルでもよい。
本願発明で処理する更新ログファイルとはマイクロソフト社のメモ帳等により作成した,拡張子がtxt等のファイル形式であるテキストファイルを意味する。
図4を説明する。
【0025】
図4は本願発明の実施形態である、ファイル管理装置が保存する全てのプロジェクト情報に自動入力処理及び自動更新処理及びマイナーバージョンアップを行う処理のフローチャートである。
図4はファイル管理装置100のCPU401の制御の元で実行する処理である。
【0026】
ステップ401では、ファイル管理装置100は、プロジェクト情報データベース(図12の1201)を参照し、プロジェクトIDのASCIIコードの昇順にプロジェクトIDを取得し、それを利用して、取得したプロジェクトIDと値にはすべて未処理と入力されたプロジェクト処理結果の表を図12の1203のプロジェクト処理情報テーブルとして作成し、RAM403のワークエリアに記憶して、処理をステップ402に進める。
なお、プロジェクト処理結果の値は、ステップ420にて、処理が済んだプロジェクトIDのプロジェクト処理結果に対して、処理済みと更新される。
【0027】
ステップ402では、ファイル管理装置100は、RAM403に記憶したプロジェクト処理情報テーブルのプロジェクト処理結果を参照し、未処理と一致するものが1件でもあるかを判断し、1件でもある場合は、ステップ403に進める。1件も存在しない場合は、プロジェクトはすべて処理済みであるとして、ステップ422へ進める。
【0028】
ステップ403では、ファイル管理装置100は、RAM403に記憶したプロジェクト処理情報テーブルのプロジェクト処理結果を参照し、未処理と一致するプロジェクトIDをASCIIコードの昇順で抽出し、配列にセットし、配列にセットされた1件目のプロジェクトIDを図12の1204の処理プロジェクト情報としてRAM403のワークエリアに記憶して、処理をステップ404に進める。
【0029】
ステップ404では、ファイル管理装置100は、ステップ403でRAM403に記憶した処理プロジェクト情報のプロジェクトIDをキーとして、プロジェクト情報データベース(図12の1201)のプロジェクトIDを参照し、プロジェクトIDが一致するフォルダIDと値にはすべて未処理と入力されたフォルダ処理結果の表をフォルダ処理情報テーブル(図12の1205)として作成し、RAM403のワークエリアに記憶して、処理をステップ405に進める。
なお、フォルダ処理結果の値は、ステップ418にて、処理が済んだフォルダIDのフォルダ処理結果に対して、処理済みと更新される。
【0030】
ステップ405では、ファイル管理装置100は、RAM403に記憶したフォルダ処理情報テーブル(図12の1205)のフォルダ処理結果を参照し、未処理と一致するものが1件でもあるかを判断し、1件でもある場合は、ステップ406に進める。1件も存在しない場合は、フォルダはすべて処理済みであるとして、ステップ420へ進める。
【0031】
ステップ406では、ファイル管理装置100は、RAM403に記憶したフォルダ処理情報テーブル(図12の1205)のフォルダ処理結果を参照し、未処理と一致するフォルダIDをASCIIコードの昇順で抽出し、配列にセットし、配列にセットされた1件目のフォルダIDを処理フォルダ情報としてRAM403のワークエリアに記憶して、処理をステップ407に進める。任意のフォルダ情報を指定する。
つまり記憶するフォルダ情報(フォルダID)から、フォルダ情報を選択する。
【0032】
ステップ407では、ファイル管理装置100は、ステップ406でRAM403に記憶された処理フォルダ情報のフォルダIDをキーとして、プロジェクト情報データベース(図12の1201)のフォルダIDを参照し、フォルダIDと一致する行の定義ファイルIDを取得し、RAM403に記憶し、ステップ408へ進める。定義ファイル(公開されているファイルに記載されている項目に関連する上書更新用のファイル)があるか否かを判定する。
つまり、ステップ406で選択したフォルダ情報(フォルダID)と対応づけた定義ファイル情報(定義ファイルID)が、あるか否かを判定する。
定義ファイルIDが空欄のときは、定義ファイルが存在しないものとして、ステップ418へ進める。
【0033】
ステップ408では、ファイル管理装置100は、ステップ407でRAM403に記憶した定義ファイルIDと一致する定義ファイルを外部メモリ411から取得し、ファイルを開き、定義されたセル名とセルの値の一覧をセル名のASCIIコードの昇順で取得し、自動入力定義ファイル情報として、表を作成し、RAM403に記憶し、ステップ409へ進める。
【0034】
つまり、ステップ406で選択したフォルダ情報(フォルダID)と一致するフォルダ情報(フォルダID)を検索し、検索したフォルダ情報(フォルダID)と対応づけられた定義ファイル情報(定義ファイルID)に該当する定義ファイルが含むセル情報からセル名を読み取る。
【0035】
ここで、ステップ408でないと判定した場合には、ステップ406で選択したフォルダ情報(フォルダID)と一致するフォルダ情報(フォルダID)を検索せず、以下ステップの更新処理を進めない。
【0036】
ステップ409では、ファイル管理装置100は、ステップ406でRAM403に記憶された処理フォルダ情報(図12の1206)のフォルダIDをキーとして、プロジェクト情報データベース(図12の1201)のフォルダIDを参照し、フォルダIDと一致する行のログファイルIDを取得し、自動入力ログファイル情報としてRAM403に記憶し、ステップ410へ進める。
取得できなかった場合は、自動入力ログファイル情報は空欄として、RAM403に記憶に記憶し、ステップ410へ進める。
【0037】
ステップ410では、ステップ406でRAM403に記憶された処理フォルダ情報(図12の1206)のフォルダIDをキーとして、文書情報データベース(図12の1202)のフォルダIDとファイル種類を参照し、フォルダIDと一致し、ファイル種類がエクセルである行の文書IDをASCIIコードの昇順で取得し、それを利用して、取得した文書IDと値にはすべて未処理と入力された文書処理結果の表を文書処理情報テーブル(図12の1207)として作成し、RAM403のワークエリアに記憶して、処理をステップ411に進める。
なお、文書処理結果の値は、ステップ416にて、処理が済んだ文書IDの処理結果に対して、処理済みと更新される。
【0038】
ステップ411では、RAM403に記憶した文書処理情報テーブル(図12の1207)の文書処理結果を参照し、未処理と一致するものが1件でもあるかを判断し、1件でもある場合は、ステップ412に進める。1件も存在しない場合は、文書はすべて処理済みであるとして、ステップ418へ進める。
【0039】
ステップ412では、RAM403に記憶した文書処理情報テーブル(図12の1207)の文書処理結果を参照し、未処理と一致する文書IDをASCIIコードの昇順で抽出し、配列にセットし、配列にセットされた一つ目の文書IDを処理文書情報(図12の1208)としてRAM403のワークエリアに記憶し、自動入力有無情報テーブル(図12の1212)のファイル更新結果を「無」と更新し、RAM403のワークエリアに記憶し、処理をステップ413に進める。
【0040】
ステップ413では、ステップ408で指定された定義ファイル(定義ファイルID)を用いて、ステップ412で指定された表計算ファイル(文書ID)の各項目(セル)に対して、セル値を自動入力及び自動更新する処理である。なお、表計算ファイル毎に自動入力及び自動更新する処理の詳細フローチャートは図5で説明する。
【0041】
ステップ414では、ファイル管理装置100は、ステップ511でRAM403に記憶された自動入力有無情報テーブル(図12の1212)のファイル更新結果を参照し、「有」か否かを判定する。
自動入力結果が「有」のときは、セルに自動入力で更新されたものとして、ステップ415へ進める。
【0042】
ファイル管理テーブルを参照し、更新フラグがない公開されているファイルはクライアント端末へ公開を維持し、更新フラグがある公開されているファイルは前記クライアント端末への公開を禁止する(公開制御手段)。
自動入力結果が「無」のときは、セルが自動入力で更新されなかったものとして、ステップ416へ進める。
【0043】
ステップ415では、ファイル管理装置100は、システム日付を取得し、RAM403に記憶する。また図4のステップ412でRAM403に記憶された処理文書情報の文書IDをキーとして、バージョン管理テーブル(図12の1211)の文書IDを参照し、一致する文書IDの行のバージョンの値のうち最大の値をRAM403に記憶し、その値に「0.1」を加算した値を最新バージョン番号としてRAM403に記憶する。RAM403に記憶された処理文書情報の文書ID+「_(アンダーバー」+RAM403に記憶された最新バージョン番号をマイナーバージョンアップファイル名として、RAM403に記憶し、それを物理ファイル名としてRAM403に記憶された自動入力済みファイルを外部メモリ411にマイナーバージョンアップファイルとして保存する。
公開制御手段が禁止した場合には、公開を禁止したファイルに小数点バージョン番号(マイナーバージョン)を付与する(付与手段)。

【0044】
さらに、バージョン管理テーブル(図12の1211)にRAM403に記憶された処理文書情報の文書ID、最新バージョン番号、システム日付、マイナーバージョンファイル名を値として最新バージョンファイル情報としてレコードを作成し、ステップ416へ進める。
【0045】
ステップ416では、ステップ412でRAM403に記憶した処理文書情報(図12の1208)の文書IDをキーとして、RAM403に記憶された文書処理情報テーブル(図12の1207)の文書IDを参照し、一致する文書IDの行の文書処理結果(図12の1207)の値を未処理から処理済みに更新し、RAM403のワークエリアに記憶し、ステップ417へ進める。
ステップ417では、ステップ411に進める。
【0046】
つまり文書処理情報テーブル(図12の1207)から文書処理結果が未処理の表計算ファイル(文書ID)が無くなるまでステップ411からステップ417までの処理を繰り返すループである。
【0047】
ステップ418では、ステップ406でRAM403に記憶した処理フォルダ情報(図12の1206)のフォルダIDをキーとして、RAMに記憶されたフォルダ処理情報テーブル(図12の1205)のフォルダIDを参照し、一致するフォルダIDの行のフォルダ処理結果(図12の1205)の値を未処理から処理済みに更新し、RAM403のワークエリアに記憶し、ステップ419へ進める。
ステップ419では、ステップ405に進める。
【0048】
つまりフォルダ処理情報テーブル(図12の1205)からフォルダ処理結果が未処理のフォルダ情報(フォルダID)が無くなるまでステップ405からステップ419までの処理を繰り返すループである。
【0049】
ステップ420では、ステップ403でRAM403に記憶した処理プロジェクト情報(図12の1204)のプロジェクトIDをキーとして、RAMに記憶されたプロジェクト処理情報テーブル(図12の1203)のプロジェクトIDを参照し、一致するプロジェクトIDの行のプロジェクト処理結果(図12の1203)の値を未処理から処理済みに更新し、RAM403のワークエリアに記憶し、ステップ421へ進める。
ステップ421では、ステップ402に進める。
【0050】
つまりプロジェクト処理情報テーブル(図12の1203)からプロジェクト処理結果が未処理のプロジェクト情報(プロジェクトID)が無くなるまでステップ402からステップ421までの処理を繰り返すループである。
ステップ422では、ファイル管理装置が保存する全てのプロジェクト情報に関して自動更新処理を終了(完了)する。
図5を説明する。
【0051】
図5は本願発明の実施形態である、定義ファイルを用いて帳票(表計算ファイル)毎の各項目(セル)に自動入力処理及び自動更新処理を行う処理のフローチャートである。
【0052】
ステップ501では、ファイル管理装置100は、自動入力有無情報テーブル(図12の1212)のファイル更新結果を取得し、RAM403のワークエリアに記憶する。また、図4のステップ412でRAM403に記憶された処理文書情報(図12の1208)の文書IDと一致する表計算ファイルを外部メモリ411から取得しファイルを開き、セル名、セル値の組合せの値をセル名のASCIIの昇順で取得し、自動入力対象ファイルの内容一覧情報として表を作成し、RAM403のワークエリアに記憶して、処理をステップ502に進める。
【0053】
つまり、ステップ406で選択したフォルダ情報(フォルダID)と一致するフォルダ情報(フォルダID)を検索し、検索したフォルダ情報(フォルダID)と対応づけられた定義ファイル情報(定義ファイルID)に該当する定義ファイルとともに格納された表計算ファイルが含むセル情報からセル名を読み取る。
【0054】
つまり、ステップ406で選択したフォルダ情報と一致するフォルダ情報(フォルダID)を検索し、検索したフォルダ情報(フォルダID)と対応づけられた更新ログファイル情報(ログファイルID)に該当する更新ログファイルとともに格納された表計算ファイルが含むセル情報からセル名を読み取る。
【0055】
ステップ502では、ファイル管理装置100は、図4のステップ409でRAM403に記憶された自動入力ログファイル情報のログファイルIDと一致するファイルを外部メモリ411から取得しファイルを開き、更新ファイルID、セル名、該当セルの更新内容をログ情報として、表を作成し、RAM403のワークエリアに記憶して、処理をステップ503に進める。
【0056】
つまり、ステップ406で選択したフォルダ情報(フォルダIDと一致するフォルダ情報(フォルダIDを検索し、検索したフォルダ情報(フォルダIDと対応づけられた更新ログファイル情報(ログファイルID)に該当する更新ログファイルが含むセル情報からセル名を読み取る。
【0057】
ステップ503では、ファイル管理装置100は、図4のステップ408でRAM403のワークエリアに記憶した自動入力定義ファイル情報の最後の行まで処理済みか(定義ファイルに記載された全てのセル名の更新を完了したか)を判断し、最後の行まで処理済みでない場合はステップ504に進める。
最後の行まで処理済みの場合は、ステップ515へ進める。
【0058】
ステップ504では、ファイル管理装置100は、ステップ408でRAM403のワークエリアに記憶した設定項目一覧の現在の処理対象のセル名とセルの値を入力定義セル情報として、RAM403のワークエリアに記憶して、処理をステップ505に進める。
【0059】
ステップ505では、ファイル管理装置100は、ステップ501でRAM403のワークエリアに記憶した自動入力対象ファイル内の(同一の)セル名、セル値の組合せの値を先頭から順に処理対象とし、ステップ505〜ステップ513を繰り返し、すべて処理済みでない場合は、ステップ506に進める。すべて処理済みの場合はステップ514に進める。
【0060】
ステップ506では、ファイル管理装置100は、ステップ501でRAM403のワークエリアに記憶した自動入力対象ファイル内のセル名、セル値の組合せの値のうち、現在の処理対象のセル名とセルの値を入力対象セル情報として、RAM403のワークエリアに記憶して、処理をステップ507に進める。
【0061】
ステップ507では、ファイル管理装置100は、ステップ504で記憶された入力定義セル情報のセル名と自動入力定義ファイルとステップ506で記憶された入力対象セル情報が一致するかどうかの比較を行う。
つまり、ステップ408及びステップ501で読み取った定義ファイルが含むセル名と表計算ファイルが含むセル情報であるセル名とが一致するかを判定する。
所定の間隔で記載されている項目に関連する上書更新用の項目があるかいなかを判断している。
一致すればステップ508へ進める。一致しなければ、ステップ513へ進める。
【0062】
ステップ508では、ファイル管理装置100は、ステップ502でRAM403のワークエリアに記憶したログ情報の更新ファイルIDに、ステップ412でRAM403のワークエリアに記憶した文書IDと一致する情報があるかを判断する。一致する情報があればステップ509へ進める。なければ、ステップ511へ進める。
【0063】
ステップ509では、ファイル管理装置100は、ステップ502でRAM403のワークエリアに記憶したログ情報の更新ファイルIDと、ステップ412でRAM403のワークエリアに記憶した文書IDが一致し、なおかつ、ステップ502でRAM403のワークエリアに記憶したログ情報のセル名が、ステップ506でRAM403のワークエリアに記憶したセル名と一致する行があるかを判断する。
【0064】
つまり、ステップ501及びステップ502で読み取った更新ログファイルが含むセル名と表計算ファイルが含むセル情報であるセル名とが一致するかを判定する。
一致する情報があればステップ510へ進める。なければ、ステップ514へ進める。
【0065】
ステップ510では、ファイル管理装置100は、ステップ504でRAM403のワークエリアに記憶した自動入力定義ファイルのセルの値とステップ506でRAM403のワークエリアに記憶した自動入力対象ファイルのセルの値が一致するかを判断する。
【0066】
つまり、ステップ509において、一致すると判定した場合には、ステップ502で該当した更新ログファイルが含むセル名に対応づけたセル値と、ステップ502で該当した更新ログファイルとともに格納された表計算ファイルが含むセル名に対応づけたセル値とが一致するか否かを判定する。
一致すればステップ511へ進める。一致しなければ、ステップ514へ進める。
【0067】
ステップ511では、ファイル管理装置100は、図4のステップ412でRAM403に記憶された処理文書情報の文書IDと一致するファイルを外部メモリ411から取得しファイルを開き、ステップ504でRAM403のワークエリアに記憶したセル名と一致するセルの値に、ステップ504でRAM403のワークエリアに記憶したセルの値を入力する。また、ステップ501で、RAM403のワークエリアに記憶されたファイル更新結果の値を「有」に更新し、ステップ512へ進める。
【0068】
つまり、ステップ507において、一致すると判定した場合には、ステップ408で該当した定義ファイルとともに格納された表計算ファイルが含むセル名と対応づけられたセル値(項目)を、ステップ408で検索したフォルダ情報(フォルダID)と対応づけられた定義ファイル情報(定義ファイルID)に該当する定義ファイルが含むセル名と一意に対応づけたセル値(項目)に更新する。
ステップ507であると判断した場合には公開されているファイルの記載されている項目を上書更新用の項目に更新する(上書更新手段)。
ファイル管理テーブルに上書更新された公開されているファイルに更新フラグを対応づけて登録する(登録手段)。
【0069】
また、ステップ510において、一致しないと判定した場合には、ステップ408で該当した定義ファイルとともに格納された表計算ファイルが含むセル名と対応づけられたセル値を更新しない。
【0070】
ステップ512では、ファイル管理装置100は、ステップ412でRAM403のワークエリアに記憶した文書IDとステップ506でRAM403のワークエリアに記憶したセル名、セルの値を入力履歴(更新履歴)として、自動入力ログ一時ファイルを作成し、RAM403のワークエリアに記憶し、ステップ514へ進める。
つまり、更新した場合には、更新した表計算ファイルともに格納された更新ログファイルに、更新した更新したセル名とセル値と一意に対応づけて書き込む。
ステップ513では、ファイル管理装置100は、ステップ505へ戻る。
ステップ514では、ファイル管理装置100は、ステップ503へ戻る。
【0071】
ステップ515では、ファイル管理装置100は、ステップ512で記憶した自動入力ログ一時ファイルを自動入力ログファイルとして外部メモリ411へ保存し、ステップ516へ進め、図5のフローチャートを終える。
図6を説明する。
図6は自動入力対象ファイルに対して、初回入力を行う図である。
【0072】
初回更新のため、自動入力ログファイルは存在しないため、自動入力ファイルと自動入力対象ファイルでセル名が一致していれば、ファイル管理装置100は自動入力対象ファイルに対して、更新を行い、自動入力ログファイルの作成を行う。
601は自動入力定義ファイルのセル情報を初回入力する場合の流れを示した図である。
611は自動入力対象ファイル(表計算ファイル)のセル名であり、予め設定されている。
【0073】
612は自動入力対象ファイル(表計算ファイル)のセル値であり、ここでは、初回入力の流れを説明する場合であるため、空欄(入力されいない)状態である。611のセル名は612のセル値と一意に対応づけて予め設定されている。
【0074】
613は自動入力対象ファイル(表計算ファイル)のセル値であり、ここでは、初回入力の流れを説明する場合であるため、空欄(入力されいない)状態である。611のセル名は613のセル値と一意に対応づけて予め設定されている。
614は自動入力定義ファイル(定義ファイル)のセル名であり、予め設定されている。
615は自動入力定義ファイル(定義ファイル)のセル値であり、予め設定されている。
【0075】
614のセル名は615のセル値と一意に対応づけて予め設定されている。この自動入力定義ファイル(定義ファイル)セル値が、本願発明の処理に従って自動入力対象ファイル(表計算ファイル)のセル値に入力される。
616は自動入力定義ファイル(定義ファイル)のセル値であり、予め設定されている。
【0076】
614のセル名は616のセル値と一意に対応づけて予め設定されている。この自動入力定義ファイル(定義ファイル)セル値が、本願発明の処理に従って自動入力対象ファイル(表計算ファイル)のセル値に入力される。
【0077】
617は自動入力ログファイル(更新ログファイル)のセル名であり、本願発明の処理に従って自動入力対象ファイル(表計算ファイル)のセル値入力される前は、空欄(設定されいない)状態である。
【0078】
618は自動入力ログファイル(更新ログファイル)のセル値であり、本願発明の処理に従って自動入力対象ファイル(表計算ファイル)のセル値入力される前は、空欄(設定されいない)状態である。
(1)でステップ507のように、自動入力定義ファイルのセル名と自動入力対象ファイルのセル名が一致していることを確認する。
(2)でステップ511のように、自動入力定義ファイル(定義ファイル)のセル値を自動入力対象ファイル(表計算ファイル)のセル値に入力する。
(3)ステップ512のように、入力したセル名、セル値を入力履歴として、自動入力ログ一時ファイル(更新ログファイル)を作成し、登録する。
【0079】
(4)でステップ503のように、自動入力定義ファイルの最後のセルでなければ、次のセルに進む。ここでは定義ファイル(自動入力定義ファイル)に4種類のセル名が記載されているので、4種類のセル名全てに関して、(1)〜(4)の処理を実行する。
【0080】
セル名すべてに関して(1)〜(4)の処理を実行後、(2)を一回でも実行している場合、ステップ415のようにマイナーバージョンアップファイルとして保存する。(2)を一回も実行していない場合、ステップ416のようにマイナーバージョンアップせずにファイルを処理済みとする。
図7を説明する。
図7は自動入力対象ファイルに対して、2回目以降の更新を行う図であり、図7の701の場合及び図7の702の場合の2つのケースがある。
【0081】
701は自動入力ファイルと自動入力対象ファイルでセル名が一致していて、自動入力ファイルと自動入力ログファイルのセル名とセルの値が一致してない図である。
【0082】
2回目以降に、自動入力ファイルと自動入力対象ファイルでセル名が一致していて、自動入力ファイルと自動入力ログファイルのセル名とセルの値が一致していなければ、ファイル管理装置100は自動入力対象ファイルに対して、更新を行わない。
(1)でステップ507のように、自動入力定義ファイルのセル名と自動入力対象ファイルのセル名が一致していることを確認する。
(2)でステップ509のように、自動入力対象ファイル(表計算ファイル)のセル名と自動入力ログファイルのセル名が一致していることを確認する。
【0083】
(3)でステップ510のように、自動入力対象ファイル(表計算ファイル)のセル値と自動入力ログファイルのセル値が一致していないことを確認し、自動入力対象ファイルのセル値に更新しない。つまり本願発明の更新処理ではない、ユーザが手動で自動入力対象ファイル(表計算ファイル)のセル値を変更したということである。
【0084】
(4)ステップ503のように、自動入力定義ファイルの最後のセルでなければ、次のセルに進む。ここでは定義ファイル(自動入力定義ファイル)に4種類のセル名が記載されているので、4種類のセル名全てに関して、(1)〜(4)の処理を実行する。
【0085】
702は自動入力ファイルと自動入力対象ファイルでセル名が一致していて、自動入力ファイルと自動入力ログファイルのセル名とセルの値が一致している図である。
【0086】
2回目以降は、自動入力ログファイルが存在するため、自動入力ファイルと自動入力対象ファイルでセル名が一致していて、自動入力ファイルと自動入力ログファイルのセル名とセルの値が一致していれば、ファイル管理装置100は自動入力対象ファイルに対して、更新を行い、自動入力ログファイルの作成を行う。
【0087】
(1)でステップ507のように、自動入力定義ファイル(定義ファイル)のセル名と自動入力対象ファイル(表計算ファイル)のセル名が一致していることを確認する。
【0088】
(2)でステップ509のように、自動入力ログファイル(更新ログファイル)のセル名と自動入力対象ファイル(表計算ファイル)のセル名が一致していることを確認する。
【0089】
(3)でステップ510のように、自動入力ログファイル(更新ログファイル)のセル値と自動入力対象ファイル(表計算ファイル)のセル値が一致していることを確認する。
(4)でステップ511のように、自動入力対象ファイル(表計算ファイル)のセル値を自動入力定義ファイル(定義ファイル)のセル値に更新する。
(5)ステップ512のように、更新したセル名、セル値を更新履歴として、自動入力ログ一時ファイル(更新ログファイル)に登録する。
【0090】
(6)ステップ503のように、自動入力定義ファイルの最後のセルでなければ、次のセルに進む。ここでは定義ファイル(自動入力定義ファイル)に4種類のセル名が記載されているので、4種類のセル名全てに関して、繰り返し(1)〜(6)の処理を実行する。
【0091】
セル名すべてに関して(1)〜(6)の処理を実行後、(4)を一回でも実行している場合、ステップ415のようにマイナーバージョンアップファイルとして保存する。(4)を一回も実行していない場合、ステップ416のようにマイナーバージョンアップせずにファイルを処理済みとする。
図8を説明する。
図8は本願発明の実施形態の自動入力定義ファイル(定義ファイル)と帳票例(自動入力対象ファイル)と自動入力ログファイルの内容を示す図である。
自動入力定義ファイル(定義ファイル)について説明する。
811は自動入力定義ファイル(定義ファイル)のセル名であり、予め設定されている。
812は自動入力定義ファイル(定義ファイル)のセル値であり、予め設定されている。
自動入力定義ファイル(定義ファイル)のファイル形式は、このようにテキストファイル形式であってもよい。
入力対象ファイルに入力する値は、この自動入力定義ファイルを元に入力される。
自動入力定義ファイルはフォルダ毎に登録(格納)される。
自動入力定義ファイルは、セル名=セルの組合せが定義したい行数分だけ記述される。
帳票例(自動入力対象ファイル)について説明する。
813は帳票に定義されたセル名であり、予め設定されている。
【0092】
帳票に定義されたセル名と自動入力定義ファイル(定義ファイル)のセル名を元に、帳票のセルに自動入力定義ファイル(定義ファイル)から入力される値が決定される。
814は、夜間バッチにより、自動でメジャーバージョンアップするかどうかを判断するセル名であり、予め設定されている。
815は、夜間バッチにより、自動でメジャーバージョンアップするかどうかを判断するセル値である。
816は、夜間バッチにより、日付から自動でメジャーバージョンアップするかどうかを判断するセル名であり、予め設定されている。
817は、夜間バッチにより、日付から自動でメジャーバージョンアップするかどうかを判断するセル値である。
自動入力ログファイルについて説明する。
自動入力定義ファイルから入力対象ファイルに入力するかどうかを判断するために作成する。
自動入力ログファイルは、1ファイル作成され、内部が入力対象ファイルごとに分かれ、セル名、セルの値が記述される。
自動入力ログファイルはフォルダ毎に作成(格納)される。
図9を説明する。(フローチャート)
【0093】
図9は本願発明の実施形態である、マイナーバージョンのファイルをそのファイルのセル値をもとにメジャーバージョンアップを行う処理のフローチャートである。
図9はファイル管理装置100のCPU401の制御の元で実行する処理である。
【0094】
ステップ901では、ファイル管理装置100は、図12の1209の自動アップデート用セル情報テーブルを参照し、メジャーバージョンアップの判断処理に使用する「公開日」と「自動アップデート」のセル名を取得し、RAM403のワークエリアに記憶して、処理をステップ902に進める。
【0095】
ステップ902では、ファイル管理装置100は、図12の1201のプロジェクト情報データベースを参照し、プロジェクトIDのASCIIコードの昇順にプロジェクトIDを取得し、それを利用して、取得したプロジェクトIDと値にはすべて未処理と入力されたプロジェクト処理結果の表を図12の1203のプロジェクト処理情報テーブルとして作成し、RAM403のワークエリアに記憶して、処理をステップ903に進める。
なお、プロジェクト処理結果の値は、ステップ918にて、処理が済んだプロジェクトIDのプロジェクト処理結果に対して、処理済みと更新される。
【0096】
ステップ903では、ファイル管理装置100は、RAM403に記憶したプロジェクト処理情報テーブルのプロジェクト処理結果を参照し、未処理と一致するものが1件でもあるかを判断し、1件でもある場合は、ステップ904に進める。1件も存在しない場合は、プロジェクトはすべて処理済みであるとして、ステップ920へ進める。
【0097】
ステップ904では、ファイル管理装置100は、RAM403に記憶したプロジェクト処理情報テーブルのプロジェクト処理結果を参照し、未処理と一致するプロジェクトIDをASCIIコードの昇順で抽出し、配列にセットし、配列にセットされた1件目のプロジェクトIDを図12の1204の処理プロジェクト情報としてRAM403のワークエリアに記憶して、処理をステップ905に進める。
【0098】
ステップ905では、ファイル管理装置100は、ステップ904でRAM403に記憶した処理プロジェクト情報のプロジェクトIDをキーとして、プロジェクト情報データベース(図12の1201)のプロジェクトIDを参照し、プロジェクトIDが一致するフォルダIDと値にはすべて未処理と入力されたフォルダ処理結果の表をフォルダ処理情報テーブル(図12の1205)として作成し、RAM403のワークエリアに記憶して、処理をステップ906に進める。
なお、フォルダ処理結果の値は、ステップ916にて、処理が済んだフォルダIDのフォルダ処理結果に対して、処理済みと更新される。
【0099】
ステップ906では、ファイル管理装置100は、RAM403に記憶したフォルダ処理情報テーブル(図12の1205)のフォルダ処理結果を参照し、未処理と一致するものが1件でもあるかを判断し、1件でもある場合は、ステップ907に進める。1件も存在しない場合は、フォルダはすべて処理済みであるとして、ステップ918へ進める。
【0100】
ステップ907では、ファイル管理装置100は、RAM403に記憶したフォルダ処理情報テーブル(図12の1205)のフォルダ処理結果を参照し、未処理と一致するフォルダIDをASCIIコードの昇順で抽出し、配列にセットし、配列にセットされた1件目のフォルダIDを処理フォルダ情報としてRAM403のワークエリアに記憶して、処理をステップ908に進める。
【0101】
ステップ908では、ステップ907でRAM403に記憶された処理フォルダ情報(図12の1206)のフォルダIDをキーとして、文書情報データベース(図12の1202)のフォルダIDを参照し、フォルダIDと一致する最新バージョンを所得し、最新バージョンがマイナーバージョン(小数点以下が0以外もの)である行が1行でもあるかの判断を行う。
1行でもある場合は、ステップ909に進める。1行も存在しない場合は、文書はすべて処理済みであるとして、ステップ916へ進める。
【0102】
ステップ909では、ステップ907でRAM403に記憶された処理フォルダ情報(図12の1206)のフォルダIDをキーとして、文書情報データベース(図12の1202)のフォルダIDを参照し、フォルダIDと一致する文書IDと最新バージョンを所得し、最新バージョンがマイナーバージョン(小数点以下が0以外もの)である行の文書IDをASCIIコードの昇順で取得し、それを利用して、取得した文書IDと値にはすべて未処理と入力された文書処理結果の表を文書処理情報テーブル(図12の1207)として作成し、RAM403のワークエリアに記憶して、処理をステップ910に進める。
【0103】
ステップ910では、ファイル管理装置100は、RAM403に記憶した文書処理情報テーブル(図12の1207)の文書処理結果を参照し、未処理と一致するものが1件でもあるかを判断し、1件でもある場合は、ステップ911に進める。1件も存在しない場合は、文書はすべて処理済みであるとして、ステップ916へ進める。
【0104】
ステップ911では、ファイル管理装置100は、RAM403に記憶した文書処理情報テーブル(図12の1207)の文書処理結果を参照し、未処理と一致する文書IDをASCIIコードの昇順で抽出し、配列にセットし、配列にセットされた一つ目の文書IDを処理文書情報(図12の1208)としてRAM403のワークエリアに記憶して、処理をステップ912に進める。
【0105】
ステップ912では、ファイル管理装置100は、RAM403のワークエリアに記憶された処理文書情報の文書IDと一致するファイルを取得し、オープンし、ファイルの内容をRAM403のワークエリアに記憶する。
【0106】
ステップ901でRAM403に記憶したセル名と一致するセル名に対応するセルの値をRAM403に記憶したファイルの内容から取得し、RAM403のワークエリアに記憶して、処理をステップ913に進める。
【0107】
ステップ913では、ファイル管理装置100は、システム日付を取得し、RAM403に記憶し、ステップ912でRAM403のワークエリアに記憶した「公開日」と「自動アップデート」のセルの値の判断処理を行う。
公開されているファイルに記載されている公開日を確認する(確認手段)。
ここで確認手段が確認を実行した日(システム日付)が、公開されているファイルに記載されている公開日と一致するかいなか判断する(判断手段)。
判断手段が公開日と一致すると判断した場合には、公開制御手段が禁止した公開されているファイルのクライアント端末への公開を再開する(再開手段)。
【0108】
「公開日」のセルの値が夜間バッチ処理日より古いかつ「自動アップデート」のセルの値が「YES」の場合、ステップ911でRAM403に記憶された文書処理情報の文書IDをキーとして、バージョン管理テーブル(図12の1211)の文書IDを参照し、一致する文書IDの行のバージョンの値のうち最大の値をRAM403に記憶し、その値の小数点を「0」にし、整数部に「1.0」を加算した値を最新バージョン番号としてRAM403に記憶する。
【0109】
RAM403に記憶された処理文書情報の文書ID+「_(アンダーバー」+RAM403に記憶された最新バージョン番号をメジャーバージョンアップファイル名として、RAM403に記憶し、それを物理ファイル名としてRAM403に記憶された自動入力済みファイルを外部メモリ411にマイナーバージョンアップファイルとして保存する。
【0110】
さらに、バージョン管理テーブル(図12の1211)にRAM403に記憶された処理文書情報の文書ID、最新バージョン番号、システム日付、メジャーバージョンファイル名を値として最新バージョンファイル情報としてレコードを作成し、ステップ914へ進める。
再開手段が再開した場合には、公開を再開したファイルの整数バージョン番号(メジャーバージョン)を増加する(増加手段)。
上記条件を満たさない場合、処理をステップ916に進める。
【0111】
ステップ914では、ステップ911でRAM403に記憶した処理文書情報(図12の1208)の文書IDをキーとして、RAM403に記憶された文書処理情報テーブル(図12の1207)の文書IDを参照し、一致する文書IDの行の文書処理結果(図12の1207)の値を未処理から処理済みに更新し、RAM403のワークエリアに記憶し、ステップ915へ進める。
ステップ915では、ステップ910に進める。
【0112】
つまり文書処理情報テーブル(図12の1207)から文書処理結果が未処理の表計算ファイル(文書ID)が無くなるまでステップ910からステップ915までの処理を繰り返すループである。
【0113】
ステップ916では、ステップ907でRAM403に記憶した処理フォルダ情報(図12の1206)のフォルダIDをキーとして、RAMに記憶されたフォルダ処理情報テーブル(図12の1205)のフォルダIDを参照し、一致するフォルダIDの行のフォルダ処理結果(図12の1205)の値を未処理から処理済みに更新し、RAM403のワークエリアに記憶し、ステップ917へ進める。
ステップ917では、ステップ906に進める。
【0114】
つまりフォルダ処理情報テーブル(図12の1205)からフォルダ処理結果が未処理のフォルダ情報(フォルダID)が無くなるまでステップ906からステップ917までの処理を繰り返すループである。
【0115】
ステップ918では、ステップ904でRAM403に記憶した処理プロジェクト情報(図12の1204)のプロジェクトIDをキーとして、RAMに記憶されたプロジェクト処理情報テーブル(図12の1203)のプロジェクトIDを参照し、一致するプロジェクトIDの行のプロジェクト処理結果(図12の1203)の値を未処理から処理済みに更新し、RAM403のワークエリアに記憶し、ステップ919へ進める。
ステップ919では、ステップ903に進める。
【0116】
つまりプロジェクト処理情報テーブル(図12の1203)からプロジェクト処理結果が未処理のプロジェクト情報(プロジェクトID)が無くなるまでステップ903からステップ919までの処理を繰り返すループである。
ステップ920では、ファイル管理装置が保存する全てのプロジェクト情報に関して自動更新処理を終了(完了)する。
図10を説明する。(フローチャート)
図10は本願発明の実施形態の自動入力定義ファイルを、クライアント端末から送信し、ファイル管理装置に登録する処理を示すフローチャートである。
【0117】
ステップ1001では、クライアント端末200は、ファイル管理装置100から受信した画面情報を用いて表示されるドキュメントの追加ボタン(図11の1101)を押下される。
図11の1101は、ファイル管理装置100において、新規に自動定義ファイルの作成処理を進める指示が可能なボタンである。
【0118】
クライアント端末200は、ドキュメントの追加ボタン(図11の1101)が押下されたと判定した場合に、クライアント端末200は、ドキュメント作成要求の指示をファイル管理装置100に送信する。
送信後、ステップ1021へ処理を進める。
ステップ1021では、ファイル管理装置100は、ドキュメント追加画面(図11の1002)の表示情報をクライアント端末200に送信する。
送信後、ステップ1002へ処理を進める。
ステップ1002では、ファイル管理装置100から受信した画面情報を用いて表示されるドキュメント追加画面を表示する。
【0119】
ステップ1003では、クライアント端末200は、ファイルと自動定義区分が指定され、追加ボタン(図11の1103)が押下される。クライアント端末200は、追加する定義ファイル(自動定義ファイル)をファイル管理装置100に送信する。
【0120】
ステップ1022では、ファイル管理装置100は、クライアント端末200から受信した自動定義ファイルをプロジェクト情報データベースに登録し、一覧に表示させる文書情報を作成し、クライアント端末200に文書一覧表示画面の表示指示をし、画面情報を送信する。その際に、フォルダ内部に受信した定義ファイルを格納し、格納した定義ファイルを識別可能にすべく定義ファイル情報(定義ファイルID)が自動で付与し、プロジェクト情報データベースに自動付与した定義ファイル情報を登録する。
クライアント端末200は、ファイル管理装置100から受信した画面情報を用いて表示される文書一覧表示画面(図11の1104)を表示する。
図11を説明する。
図11の1101はドキュメントの追加ボタンである。
図11の1102はドキュメント追加画面である。
図11の1103は追加ボタンである。
図11の1104は文書一覧表示画面であり、自動入力定義ファイルが追加された状態である。
図12を説明する。
図12は、ファイル管理装置100の記憶部(外部メモリ411及びRAM403)が記憶するデータテーブルである。
1201はプロジェクト情報データベースであり、外部メモリ411が記憶している。
プロジェクト、プロジェクトに含まれるフォルダ、フォルダごとの定義ファイル、ログファイルを管理している。
【0121】
つまり、プロジェクト情報データベースは、格納している定義ファイルを識別可能に付与された定義ファイル情報(定義ファイルID)と、当該定義ファイル情報に対応する定義ファイルをフォルダ内部に格納しているフォルダ情報(フォルダID)とを一意に対応づけて記憶している。
【0122】
つまり、プロジェクト情報データベースは、格納している更新ログファイルを識別可能に付与された更新ログファイル情報(ログファイルID)と、当該更新ログファイル情報に対応する更新ログファイルをフォルダ内部に格納しているフォルダ情報(フォルダID)とを一意に対応づけて記憶している。
1202は文書情報データベースであり、外部メモリ411が記憶している。
プロジェクトの各フォルダに含まれるファイルを管理している。
1203はプロジェクト処理情報テーブルである。
更新処理を行う上で、どのプロジェクトIDまで更新が終わったか(ステップ1302の更新処理を実行したか)の進捗情報を管理している。
1204は処理プロジェクト情報である。
これから更新処理を行う(現在更新処理中の)プロジェクトIDを管理している。
1205はフォルダ処理情報テーブルである。
更新処理を行う上で、どのフォルダIDまで更新が終わったかステップ1302の更新処理を実行したか)の進捗情報を管理している。
1206は処理フォルダ情報である。
これから更新処理を行う(現在更新処理中の)フォルダIDを管理している。
1207は文書処理情報テーブルである。
更新処理を行う上で、どの文書IDまで更新が終わったか(ステップ1302の更新処理を実行したか)の進捗情報を管理している。
1208は処理文書情報である。
これから更新処理を行う(現在更新処理中の)文書IDを管理している。
1209は自動アップデート用セル情報テーブルである。
夜間バッチにより、自動メジャーバージョンアップする際、メジャーバージョンアップするかどうかの判断処理に使用するセル名を管理している。
1210はアクセス権管理テーブルである。
文書に対するユーザごとのアクセス権を管理している。
1211はバージョン管理テーブルである。
文書の保持するバージョン情報を管理している。
1212は自動入力有無テーブル(ファイル管理テーブル)である。
更新処理を行う上で、文書に対して自動入力が行われたかどうかを管理している。
【0123】
公開されているファイルの中から該ファイルに記載されている項目が上書更新されたファイルを特定するための更新フラグ(自動入力が行われたかどうか)をファイル毎に対応づけて記憶している(記憶手段)。自動入力有無テーブルはファイルID(文書ID)毎に、ステップ1302の定義ファイルによる更新処理により、表計算ファイルに記載されている項目(セル値)が、定義ファイルに記載されている項目(セル値)に上書き更新された(有)かいなか(無)の更新フラグを管理しているテーブルである。この自動入力有無テーブルにより、ステップ414において、ファイル毎に表計算ファイルに記載されている項目(セル値)が上書き更新されたかいなかを判断できる。
図13を説明する。
図13はファイル管理装置100のCPU401の制御の元で実行する処理である夜間バッチ処理の種類と順序を示すフローチャートの図である。
【0124】
ステップ1302は、図4で説明しているファイル管理装置が保存する全てのプロジェクト情報に自動入力処理及び自動更新処理及びマイナーバージョンアップを行う夜間バッチである。
ステップ1302の夜間バッチ処理終了後、ステップ1303へ処理を進める。
夜間バッチは所定の間隔(毎日深夜12:00等)で自動的に実行が開始される。
ステップ1303は、図9で説明しているマイナーバージョンのファイルをそのファイルのセル値をもとにメジャーバージョンアップを行う夜間バッチである。
夜間バッチは所定の間隔(毎日深夜12:00等)で自動的に実行が開始される。
図14を説明する。
図14はユーザの文書の権限による表示可否を示す図である。
【0125】
図14のテーブルは本願発明ファイル管理装置が記憶するファイルID(文書ID)毎に、該ファイルIDの公開と非公開(参照権限)を管理している公開管理テーブルである。
【0126】
1401では、ある1つの文書にメジャーバージョン、マイナーバージョンが複数存在し、参照権限のユーザ、編集権限のユーザ、削除権限のユーザがそれぞれどのバージョンにアクセス可能かどうかを示している。
【0127】
最新のファイルバージョンが0.1、0.2、1.1、1.2、2.1のマイナー(小数点)バージョン番号であるファイルID(文書ID)はアクセス不可な(クライアント端末に公開されていない)ファイルである。
【0128】
参照権限のユーザ(USERA)はファイルバージョンが0.1、0.2、1.1、1.2、2.1のファイルID(文書ID)はアクセス不可(禁止)である。
【0129】
すなわちステップ1302にて、ファイルに記載された項目が自動(上書き)更新されたと判断した場合には、1.0のメジャーバージョンが付与されているアクセス可能(公開)のファイルに1.1のマイナーバージョンが新規に付与され、アクセス禁止(非公開)に強制的に公開制御する(公開制御手段)。
【0130】
すなわちステップ1302にて、ファイルに記載された項目が自動(上書き)更新されていないと判断した場合には、1.0のメジャーバージョンが付与されているアクセス可能(公開)のファイルは1.0のメジャーバージョンをそのまま維持し、アクセス可能(公開)もそのまま維持するように公開制御する(公開制御手段)。
【0131】
しかしながら編集権限のユーザ(USERB)は、最新のファイルバージョンが0.1、0.2、1.1、1.2、2.1のマイナー(小数点)バージョン番号である場合であってもアクセス可能(公開)である。
【0132】
最新のファイルバージョンが1.0、2.0のメジャー(整数)バージョン番号であるファイルID(文書ID)はアクセス可能な(クライアント端末に公開されている)ファイルである。
参照権限のユーザ(USERA)はファイルバージョンが1.0、2.0のファイルID(文書ID)はアクセス可能である。
【0133】
すなわちステップ1303にて、公開日に達したと判断した場合には、0.1のマイナーバージョンが付与されているアクセス禁止(非公開)のファイルに1.0のメジャーバージョンが新規に付与され、アクセス可能(公開)に強制的に公開制御する(再開手段)。
編集権限、削除権限のユーザは、マイナーバージョン、メジャーバージョンすべてのバージョンへのアクセスが可能である。
【0134】
1402では、参照権限のユーザがクライアント端末200で、文書管理サーバ100から受信した画面情報を用いて表示される文書一覧表示画面を表示した図である。
1403では、参照権限のユーザがクライアント端末200で、1402で表示した文書のサブメニューでバージョン情報を表示した図である。
参照権限のユーザは、1.0、2.0のメジャーバージョンのみ表示される。
【0135】
1404では、編集権限、削除権限のユーザがクライアント端末200で、文書管理サーバ100から受信した画面情報を用いて表示される文書一覧表示画面を表示した図である。
1405では、参照権限のユーザがクライアント端末200で、1404で表示した文書のサブメニューでバージョン情報を表示した図である。
参照権限のユーザは、メジャーバージョンとマイナーバージョンのすべてのバージョンが表示される。
図15を説明する。
【0136】
図15は文書管理サーバ100及びクライアント端末200が実行するマイナーバージョンの文書またはメジャーバージョンの文書の閲覧処理のフローチャートを示す図である。
図15の1501〜1526は、クライアント端末200のCPU401または文書管理サーバ100のCPU401の制御の元で実行する処理である。
【0137】
ステップ1501では、クライアント端末200は、文書管理サーバ100から受信した画面情報を用いて表示される図示しないユーザログイン画面を表示し、ユーザにより入力されたユーザID(ユーザ情報)及びパスワード等からなるログイン情報を文書管理サーバ100へ送信する。送信後、ステップ1521へ処理を進める。
【0138】
ステップ1521では、文書管理サーバ100は、クライアント端末200からログイン情報を受信する。文書管理サーバ100は受信したログイン情報をRAM403のワークエリアに記憶し、ユーザIDとパスワードとが一致するかのユーザの認証を行う。ユーザIDとパスワードとが一致しない場合、文書管理サーバ100からエラーメッセージをクライアント端末200に送信し、クライアント端末200はエラーメッセージを表示後、再度ユーザIDとパスワードを入力して文書管理サーバ100に送信する。
【0139】
ユーザIDとパスワードが一致した場合、文書管理サーバ100から図示しないログイン許可メッセージをクライアント端末200に送信し、クライアント端末200はログイン許可メッセージ受信する。ステップ1522へ処理を進める。
【0140】
ステップ1522では、文書管理サーバ100は、クライアント端末200にログインしたユーザにアクセス権のあるフォルダ一覧表示画面の表示指示をし、クライアント端末200に画面情報を送信する。送信後、ステップ1502へ処理を進める。
【0141】
ステップ1502では、クライアント端末200は、文書管理サーバ100から受信した画面情報を用いて表示されるフォルダ一覧表示画面を表示する。表示後、ステップ1503へ処理を進める。
【0142】
ステップ1503では、クライアント端末200は、フォルダがダブルクリックされる(フォルダ内閲覧要求の指示)。一覧リストから所望のフォルダをダブルクリックし、一覧リストから所望のフォルダを選択し、ステップ1504へ処理を進める。
ステップ1504では、選択したフォルダIDと文書情報一覧の表示依頼を文書管理サーバに送信する。送信後、1523へ処理を進める。
【0143】
ステップ1523では、文書管理サーバ100は、クライアント端末200から選択したフォルダ情報と文書情報一覧の表示依頼を受信し、フォルダ内の文書からログインしたユーザにアクセス権のある文書を一覧情報として作成し、一覧表示画面の表示指示をし、クライアント端末200に画面情報を送信する。
【0144】
ステップ1505では、クライアント端末200は、文書管理サーバ100から受信した画面情報を用いて表示される文書一覧表示画面を表示する。表示後、1506へ処理を進める。
【0145】
ステップ1506では、クライアント端末200は文書一覧画面よりダウンロードもしくは開く文書を選択して、文書管理サーバ100へ選択された文書の文書IDと「開く」の操作情報を送信する。
【0146】
ステップ1524では、文書管理サーバ100は、クライアント端末200から受信したフォルダIDと文書IDをキーとして、文書情報データベース(図12の1202)の文書IDを参照し、文書IDが一致する文書の最新のバージョンの値を取得し、RAM403に記憶し、最新バージョンがメジャーバージョンかどうか(小数点が0かどうか)の判断を行う。最新バージョンがメジャーバージョンである場合は、ステップ1525に処理を進める。最新バージョンがメジャーバージョンでない場合は、ステップ1526へ処理を進める。
【0147】
ステップ1525では、文書管理サーバ100は、クライアント端末200で特定された文書のメジャーバージョンをRAM403のワークエリアに記憶して、クライアント端末200へ送信し、ステップ1507へ処理を進める。
【0148】
ステップ1526では、文書管理サーバ100は、文書IDとログインユーザIDをキーとして、アクセス権管理テーブル(図12の1210)の文書IDを参照し、文書IDが一致する文書に対するログインユーザのアクセス権を取得し、RAM403に記憶し、編集権限より上の権限であるかの判断を行う。
【0149】
編集権限より上の権限である場合は、文書の最新のマイナーバージョンをRAM403のワークエリアに記憶して、クライアント端末200へ送信し、ステップ1507へ処理を進める。編集権限より上の権限でない場合は、文書の最新のメジャーバージョンをRAM403のワークエリアに記憶して、クライアント端末200へ送信し、ステップ1507へ処理を進める。
ステップ1507では、クライアント端末200は、文書管理サーバ100より受信した文書を開く。
【0150】
また、本願発明におけるプログラムは、図4、図5、図9、図10、図13、図15に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本願発明の記憶媒体は図4、図5、図9、図10、図13、図15の処理方法をコンピュータが実行可能なプログラムとして、ファイル管理装置100の外部メモリ411に記憶されている。
【0151】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読出し実行することによっても、本願発明の目的が達成されることは言うまでもない。
【0152】
この場合、記録媒体から読み出されたプログラム自体が本願発明の新規な機能を実現することになり、そのプログラムを記憶した記録媒体は本願発明を構成することになる。
【0153】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD−ROM,磁気テープ,不揮発性のメモリカード,ROM,EEPROM,シリコンディスク等を用いることができる。
【0154】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0155】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0156】
また、本願発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本願発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本願発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本願発明の効果を享受することが可能となる。
【0157】
さらに、本願発明を達成するためのプログラムをネットワーク上のサーバ,データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本願発明の効果を享受することが可能となる。
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本願発明に含まれるものである。
【符号の説明】
【0158】
100 ファイル管理装置(文書管理サーバ)
200 クライアント端末
401 CPU
402 ROM
403 RAM(記憶部)
411 外部メモリ(記憶部)

【特許請求の範囲】
【請求項1】
ネットワークを介して接続されているクライアント端末に公開するファイルを管理するファイル管理装置であって、
公開されているファイルの中から該ファイルに記載されている項目が上書更新されたファイルを特定するための更新フラグをファイル毎に対応づけたファイル管理テーブルを記憶する記憶手段と、
所定の間隔で前記記載されている項目に関連する上書更新用の項目があるかいなかを判断し、あると判断した場合には前記公開されているファイルの前記記載されている項目を前記上書更新用の項目に更新する上書更新手段と、
前記ファイル管理テーブルに前記上書更新された前記公開されているファイルに前記更新フラグを対応づけて登録する登録手段と、
前記ファイル管理テーブルを参照し、前記更新フラグがない前記公開されているファイルは前記クライアント端末へ公開を維持し、前記更新フラグがある前記公開されているファイルは前記クライアント端末への公開を禁止する公開制御手段と、
を備えることを特徴とするファイル管理装置。
【請求項2】
前記公開されているファイルに記載されている公開日を確認する確認手段と、
前記確認手段が確認を実行した日が前記公開日と一致するかいなか判断する判断手段と、
前記判断手段が公開日と一致すると判断した場合には、前記公開制御手段が禁止した前記公開されているファイルの前記クライアント端末への公開を再開する再開手段と、
を備えることを特徴とする請求項1に記載のファイル管理装置。
【請求項3】
公開制御手段が禁止した場合には、前記公開を禁止したファイルに小数点バージョン番号を付与する付与手段と、
を備えることを特徴とする請求項1または請求項2に記載のファイル管理装置。
【請求項4】
再開手段が再開した場合には、前記公開を再開したファイルの整数バージョン番号を増加する増加手段と、
を備えることを特徴とする請求項2に記載のファイル管理装置。
【請求項5】
ネットワークを介して接続されているクライアント端末に公開するファイルを管理し、公開されているファイルの中から該ファイルに記載されている項目が上書更新されたファイルを特定するための更新フラグをファイル毎に対応づけたファイル管理テーブルを記憶する記憶手段を備えるファイル管理装置の制御方法であって、
前記ファイル管理装置の上書更新手段が、所定の間隔で前記記載されている項目に関連する上書更新用の項目があるかいなかを判断し、あると判断した場合には前記公開されているファイルの前記記載されている項目を前記上書更新用の項目に更新する上書更新工程と、
前記ファイル管理装置の登録手段が、前記ファイル管理テーブルに前記上書更新された前記公開されているファイルに前記更新フラグを対応づけて登録する登録工程と、
前記ファイル管理装置の公開制御手段が、前記ファイル管理テーブルを参照し、前記更新フラグがない前記公開されているファイルは前記クライアント端末へ公開を維持し、前記更新フラグがある前記公開されているファイルは前記クライアント端末への公開を禁止する公開制御工程と、
を含むことを特徴とする制御方法。
【請求項6】
ネットワークを介して接続されているクライアント端末に公開するファイルを管理するファイル管理装置で読み取り実行可能なプログラムであって、
前記ファイル管理装置を、
公開されているファイルの中から該ファイルに記載されている項目が上書更新されたファイルを特定するための更新フラグをファイル毎に対応づけたファイル管理テーブルを記憶する記憶手段と、
所定の間隔で前記記載されている項目に関連する上書更新用の項目があるかいなかを判断し、あると判断した場合には前記公開されているファイルの前記記載されている項目を前記上書更新用の項目に更新する上書更新手段と、
前記ファイル管理テーブルに前記上書更新された前記公開されているファイルに前記更新フラグを対応づけて登録する登録手段と、
前記ファイル管理テーブルを参照し、前記更新フラグがない前記公開されているファイルは前記クライアント端末へ公開を維持し、前記更新フラグがある前記公開されているファイルは前記クライアント端末への公開を禁止する公開制御手段と、
して機能させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2013−97755(P2013−97755A)
【公開日】平成25年5月20日(2013.5.20)
【国際特許分類】
【出願番号】特願2011−243044(P2011−243044)
【出願日】平成23年11月7日(2011.11.7)
【出願人】(390002761)キヤノンマーケティングジャパン株式会社 (656)
【出願人】(301015956)キヤノンソフトウェア株式会社 (364)