(57)【要約】【課題】  文書管理アプリケーションにＯＳ上のファイルやフォルダをＤ＆Ｄでアップロードする際、所望の格納個所が見当たらない場合に、Ｄ＆Ｄ操作の一時中断を可能にする領域を自動で表示する。【解決手段】  文書管理装置は、文書管理サーバで管理されているフォルダ階層構造の情報を取得し、フォルダ階層構造を表示領域内に表示する。また、ポインティングデバイスにより、所定の時間を越えてファイルがドラッグされると一時表示領域を表示領域内に表示する。さらに、一時表示領域でファイルがドロップされると、ファイルの情報を保存し、ファイルのアイコンを一時表示領域に表示する。一時表示領域に表示されているファイルがドラッグされ、ポインティングデバイスのアイコンがフォルダ階層構造に含まれるフォルダのいずれかに重なる位置でドロップされると、該ファイル情報を基にして、ファイルを当該フォルダにアップロードする。【選択図】  図５
2013125498.tif 000002
【特許請求の範囲】
【請求項１】
文書管理サーバで管理されているフォルダ階層構造の情報を取得し、取得した情報に従って、前記フォルダ階層構造を表示領域内に表示する手段と、
ポインティングデバイスにより、所定の時間を越えてファイルがドラッグされた場合に、一時表示領域を前記表示領域内に表示する手段と、
ポインティングデバイスにより、前記一時表示領域で前記ファイルがドロップされた場合に、前記ファイルの情報をデータ保持部に保存し、保存したファイルのアイコンを前記一時表示領域に表示する手段と、
ポインティングデバイスにより、前記一時表示領域に表示されているファイルがドラッグされ、ポインティングデバイスのアイコンが前記フォルダ階層構造に含まれるフォルダのいずれかに重なる位置でドロップされた場合、前記データ保持部に保存しているファイル情報を基にして、前記ファイルを当該重なるフォルダにアップロードする手段とを有する事を特徴とする文書管理装置。
【請求項２】
前記一時表示領域を表示する手段は、所定の時間を越えてファイルがドラッグされ、かつ当該時間の間、ポインティングデバイスのアイコンの位置が変わらない場合に、前記一時表示領域を表示する事を特徴とする請求項１に記載の文書管理装置。
【請求項３】
前記一時表示領域から複数のファイルがドラッグされた場合、前記複数のファイルを一つにアーカイブして登録する手段をさらに有することを特徴とする請求項１または２に記載の文書管理装置。
【請求項４】
ポインティングデバイスのアイコンの位置と前記フォルダ階層構造に含まれる各フォルダの位置とを比較することにより、ポインティングデバイスのアイコンが前記フォルダ階層構造に含まれるフォルダのいずれかに重なっているかどうかを判断する手段をさらに有することを特徴とする請求項１〜３のいずれか１項に記載の文書管理装置。
【請求項５】
文書管理サーバで管理されているフォルダ階層構造の情報を取得し、取得した情報に従って、前記フォルダ階層構造を表示領域内に表示するステップと、
ポインティングデバイスにより、所定の時間を越えてファイルがドラッグされた場合に、一時表示領域を前記表示領域内に表示するステップと、
ポインティングデバイスにより、前記一時表示領域で前記ファイルがドロップされた場合に、前記ファイルの情報をデータ保持部に保存し、保存したファイルのアイコンを前記一時表示領域に表示するステップと、
ポインティングデバイスにより、前記一時表示領域に表示されているファイルがドラッグされ、ポインティングデバイスのアイコンが前記フォルダ階層構造に含まれるフォルダのいずれかに重なる位置でドロップされた場合、前記データ保持部に保存しているファイル情報を基にして、前記ファイルを当該重なるフォルダにアップロードするステップとを有する事を特徴とする文書管理方法。
【請求項６】
コンピュータを、請求項１〜４のいずれか１項に記載の文書管理装置に記載の各手段として機能させるためのプログラム。
【請求項７】
請求項６に記載のプログラムを記憶する記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書管理サーバへ文書をアップロードするための、クライアントＰＣで実行される文書管理技術に関する。
【背景技術】
【０００２】
近年、クライアントＰＣから文書管理システムに対して文書ファイルを登録するうえで、ドラッグ・アンド・ドロップ（以後、「ドラッグ＆ドロップ」と記す）を用いてアップロードする方法が用いられている。ドラッグ＆ドロップによるアップロード方法では、対象ファイルのドラッグ処理を開始してから文書管理システム上の目的の個所（フォルダや、ライブラリなど）にドロップするまでが一連の処理となる。（例えば、特許文献１参照）
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−２５６２４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、この方法では、ドラッグ処理を開始後に、目的の個所が画面上表示領域から外れて隠されているなど、ドロップが行えない場合には、一旦ドラッグ処理を中止したのち、再度ファイル選択からやり直す必要があり、操作性が悪いという問題があった。
【課題を解決するための手段】
【０００５】
上記課題を解決するため、本発明の文書管理装置は、文書管理サーバで管理されているフォルダ階層構造の情報を取得し、取得した情報に従って、前記フォルダ階層構造を表示領域内に表示する手段と、ポインティングデバイスにより、所定の時間を越えてファイルがドラッグされた場合に、一時表示領域を前記表示領域内に表示する手段と、ポインティングデバイスにより、前記一時表示領域で前記ファイルがドロップされた場合に、前記ファイルの情報をデータ保持部に保存し、保存したファイルのアイコンを前記一時表示領域に表示する手段と、ポインティングデバイスにより、前記一時表示領域に表示されているファイルがドラッグされ、ポインティングデバイスのアイコンが前記フォルダ階層構造に含まれるフォルダのいずれかに重なる位置でドロップされた場合、前記データ保持部に保存しているファイル情報を基にして、前記ファイルを当該重なるフォルダにアップロードする手段とを有する。
【発明の効果】
【０００６】
本発明によって、ドラッグ＆ドロップ処理において、ドラッグ開始後にも、一旦アップロード処理を動的に一時停止することができ、ユーザの文書ファイル登録処理をスムーズに行うための方法を提供することが可能になる。
【図面の簡単な説明】
【０００７】
【図１】本発明の実施形態に係る文書管理システムの構成図
【図２】図１の文書管理システムの文書管理サーバ及びクライアントＰＣのブロック構成図
【図３】実施例１のソフトウェア構成図
【図４】実施例１のＵＩ構造図
【図５】実施例１のファイルアップロード処理のメインシーケンス図
【図６】実施例１のフォルダを表示する処理の流れを示すフローチャート
【図７】実施例１のマウス位置にあるオブジェクトを検知する処理の流れを示すフローチャート
【図８】実施例１のファイルをアップロードする処理の流れを示すフローチャート
【図９】実施例２のソフトウェア構成図
【図１０】実施例２のウェブブラウザ構成図
【図１１】実施例２のファイルアップロード処理のメインシーケンス図
【図１２】実施例２のマウスイベントの通知処理の流れを示すフローチャート
【図１３】実施例２のファイルをアップロードする処理の流れを示すフローチャート
【図１４】実施例３のマウス位置にあるオブジェクトを検知する処理の流れを示すフローチャート
【図１５】実施例４のＵＩ構造図
【図１６】実施例４のファイルをアップロードする処理の流れを示すフローチャート
【発明を実施するための形態】
【０００８】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【０００９】
＜システム構成＞
図１は、本発明の実施形態に係る文書管理システムの構成図である。本システムは、文書管理サーバ１０とクライアントＰＣ２０より構成され、文書管理サーバ１０とクライアントＰＣ２０は、ＬＡＮ３０を介して接続される。文書管理サーバ１０は、文書やフォルダなどのコンテンツを管理する文書管理機能と、アプリケーションサーバ機能とを提供するサーバである。クライアントＰＣ２０は、文書管理アプリケーションを介して文書管理サーバ１０に接続してコンテンツを操作する機能を提供する。文書管理サーバ１０とクライアントＰＣ２０は、一般的な情報処理装置（ＰＣ）のハードウェアで構成することができる。
【００１０】
図２は、本文書管理システムを構成する各ＰＣのハードウェア構成図である。図２において、ＣＰＵ２０１は、ＲＯＭ２０３内のプログラム用ＲＯＭに記憶されたプログラムや、ハードディスク２１０からＲＡＭ２０２にロードされたＯＳ（オペレーションシステム）やアプリケーション等のプログラムを実行する。すなわち、コンピュータ（ＣＰＵ）が、コンピュータ読み取り可能な記憶媒体に格納された該プログラムを実行することにより、後述する各フローチャートの処理を実行する各処理部として機能する。ＲＡＭ２０２は、ＣＰＵ２０１のメインメモリであり、ワークエリア等として機能する。キーボードコントローラ２０４は、キーボード２０８や図示しないポインティングデバイス（マウス、タッチパッド、タッチパネル、トラックボールなど）からの操作入力を制御する。ディスプレイコントローラ２０５はディスプレイ２０９の表示を制御する。ディスクコントローラ２０６は、各種データを記憶するハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）等の外部メモリ２１０へのデータアクセスを制御する。ネットワークコントローラ（ＮＣ）２０７はネットワークに接続されて、ネットワークに接続された他の機器との通信制御処理を実行する。
【００１１】
〔実施例１〕
＜処理の説明＞
以下、本発明の実施例１に係るシステムの処理の流れについて説明する。図３に、実施例１のシステムにおいて、文書管理サーバ１０とクライアントＰＣ２０が提供する各処理部の構成例を示す。
【００１２】
文書管理サーバ１０のＣＰＵ２０１がプログラムを実行することにより、文書管理サーバは各処理部３００〜３０２として機能する。なお、コンテンツなどの情報は、外部メモリ２１０に保持され、必要なときにＲＡＭ２０２にロードし処理される。メイン制御部３００は、文書管理サーバのアプリケーションを司るメイン制御処理を行う。また、メイン制御部３００は、入出力制御部３０１、コンテンツ制御部３０２を制御し、コンテンツ情報などの橋渡しを行う。入出力制御部３０１は、クライアントＰＣ２０からのコマンドのリクエストを受信して、クライアントＰＣ２０へコマンドのレスポンスを送信する。コンテンツ制御部３０２は、クライアントＰＣ２０からリクエストのあったコンテンツ情報を取得する。なお、コンテンツ情報については、ＤＢやファイルなどで管理されていても良く、特に形態は問わない。
【００１３】
クライアントＰＣ２０のＣＰＵ２０１が各処理部のプログラムを読み出して実行することにより、クライアントＰＣは各処理部３１０〜３１３として機能する。メイン制御部３１０は、クライアントＰＣ２０のアプリケーションを司るメイン制御処理を行う。また、メイン制御部３１０は、入出力制御部３１１、コンテンツ表示部３１２、ブリッジデータ保持部３１３を制御し、コンテンツ情報などの橋渡しを行う。また、ＯＳなどの文書管理アプリケーションとは異なるプログラムから受けたマウスイベント（ポインティングデバイスによるイベント）に基づいて、マウスイベント情報を取得する。メイン制御部３１０は、当該取得したマウスイベント情報に基づいて、イベント種類、座標位置、ドラッグされているファイルが何かを判断する。更に、メイン制御部３１０は、コンテンツ表示部３１２においてドロップしたときのマウス座標に重なっていると検知したフォルダに、ドラッグ元で設定されているファイルをアップロードする。
【００１４】
入出力制御部３１１は、文書管理サーバ１０へコマンドのリクエストを送信して、文書管理サーバ１０からのコマンドのレスポンスを受信する。コンテンツ表示部３１２は、文書管理サーバ１０から受信したコンテンツ情報を解釈して文書管理アプリケーション上に表示する。なお、コンテンツとは、ファイルやファイルを管理するフォルダを示す。また、コンテンツ表示部３１２は、メイン制御部３１０で取得したマウス座標（ポインティングデバイスにより指示される座標位置）に基づいて、表示しているコンテンツに重なっているかどうかを検知する。また、コンテンツ表示部３１２は、メイン制御部３１０でファイルのアップロード処理に失敗した場合、失敗した旨を示すエラーメッセージを表示する。ブリッジデータ保持部３１３は、ドラッグ＆ドロップによって文書管理アプリケーション内にドロップされたコンテンツ情報を一時的に保管する場所である。なお、本実施例では、ポインティングデバイスによるイベントをマウスイベント、ポインティングデバイスの座標位置をマウス座標位置と称するが、ポインティングデバイスの種類はマウスに限るものではない。
【００１５】
図４（a）に、コンテンツ表示部３１２によって文書管理アプリケーションで表示するメイン画面４００を示す。メイン画面４００は、ヘッダー表示領域４０１、ツリー表示領域４０２、コンテンツ表示領域４０３、プロパティ表示領域４０４、フッター表示領域４０５、一時表示領域４０６により構成される。
【００１６】
コンテンツ表示部３１２は、ヘッダー表示領域４０１に、文書管理システムの名前やメニューなどを表示する。また、ツリー表示領域４０２内に、文書を格納するフォルダを階層的に表示する。更に、コンテンツ表示領域４０３に、ツリー表示領域４０２で選択されたフォルダ内に格納されている文書やフォルダを表示する。なお、図４（a）は、ツリー表示領域４０２で「トップフォルダ」が選択されている場合のコンテンツ表示領域４０３の表示例を示している。なお、コンテンツ表示部３１２は、コンテンツ表示領域４０３の表示形式を変更することが可能であり、切り替えボタンなどの操作によりアイコン表示とリスト表示を切り替えることができる。
【００１７】
コンテンツ表示部３１２は、プロパティ表示領域４０４に、コンテンツ表示領域４０３で選択されている文書（またはフォルダ）のプロパティを表示する。プロパティには、当該文書の名称やパスなどの情報が含まれる。また、フッター表示領域４０５に、アプリケーションバージョンや著作権などの情報を表示する。さらに、コンテンツ表示部３１２は、マウスイベント情報から座標位置を取得し、当該取得したマウス座標に基づいて、ツリー表示領域４０２やコンテンツ表示領域４０３に表示されているフォルダの表示位置との重なりを検知する。
【００１８】
一時表示領域４０６は、ツリー表示領域４０２、コンテンツ表示領域４０３など文書管理サーバ１０内のコンテンツを表示するものとは異なり、文書管理サーバ１０以外のコンテンツの一時置き場として提供される。この一時表示領域４０６は、通常は表示されないが、ユーザのドラッグ＆ドロップ操作の状況に合わせて動的に表示／非表示が制御される。
【００１９】
図４（ｂ）は、ツリー表示領域４０２やコンテンツ表示領域４０３に表示されるフォルダの１つに対して定義されている座標情報を説明するための図である。フォルダ表示領域４１０は、表示しているフォルダとマウス座標位置との重なりを検知するために定義されている領域であり、左上を始点とし、右下を終点として当該領域の位置を保持している。コンテンツ表示部３１２は、フォルダ表示領域４１０の中にマウス座標４１１が含まれている場合、フォルダとマウス座標が重なっていると判断する。
【００２０】
フォルダ表示領域は、フォルダが表示されている領域や表示形式に応じて、定義される形状が異なる。例えば、ツリー表示領域４０２に表示されるフォルダに対して定義されるフォルダ表示領域は、図４（ｃ）の領域４２０のように長方形の領域で定義される。コンテンツ表示領域４０３でアイコン表示している場合、コンテンツ表示領域４０３に表示されるフォルダに対して定義されるフォルダ表示領域は、図４（ｄ）の領域４３０のように定義される。また、コンテンツ表示領域４０３でリスト表示している場合、コンテンツ表示領域４０３に表示されるフォルダに対して定義されるフォルダ表示領域は、図４（ｅ）の領域４４０のように定義される。
【００２１】
一時表示領域４０６にコンテンツを表示したものが図４（ｆ）であり、コンテンツ表示領域４０３の表示形式と同様の表示形式となる。すなわち、図４（ｆ）では、アイコン表示しているが、コンテンツ表示領域４０３がリスト表示である場合は同様にリスト表示となる。この一時表示領域４０６には、アップロード対象となるコンテンツが配置されるため、領域４５０のように文書を表わすものと、領域４５１のようにフォルダを表わすものを混在して表示する。
【００２２】
以下、シーケンスおよびフローチャートを交えて本システムの処理の流れについて説明する。
【００２３】
＜メインシーケンス＞
図５に、文書管理アプリケーションを用いてフォルダを表示した後、クライアントＰＣ２０のＯＳなどで管理されているファイルをドラッグ＆ドロップすることにより、文書管理サーバ１０上の対応するフォルダにアップロードするまでのシーケンスを示す。シーケンスは大きく分けて以下の３つの処理に分かれている。すなわち、フォルダを表示するフロー（Ｓ１０）、イベントから取得したマウス座標がフォルダに重なっているかどうかを検知するフロー（Ｓ２０）、ファイルをフォルダにアップロードするフロー（Ｓ３０）である。
【００２４】
各処理の詳細について以下に記す。まず、ステップＳ１０において、コンテンツ表示部３１２は、文書管理サーバ１０で管理されているフォルダに関する情報（フォルダ情報）を取得する。すなわち、コンテンツ表示部３１２は、文書管理サーバにフォルダ情報取得リクエストを送信し、当該リクエストに応じて文書管理サーバから返信されてくるフォルダ情報を取得する。フォルダ情報は、名称やフォルダを示す一意のＩＤをひとまとめにした情報である。なお、フォルダを示す一意のＩＤは、パスであってもかまわない。また、複数のフォルダに関するフォルダ情報を同時に取得することが可能である。
【００２５】
そして、コンテンツ表示部３１２は、当該取得したフォルダ情報に基づいて、ツリー表示領域４０２およびコンテンツ表示領域４０３にフォルダを表示する。フォルダを表示する位置や大きさについては、コンテンツ表示部３１２が定義するものとするが、定義の方法については、内部リソースとして定義しても良いし、外部ファイルで定義しても良い。
【００２６】
ステップＳ２０において、メイン制御部３１０は、クライアントＰＣのＯＳで発生したマウスイベントを取得し、当該取得したマウスイベントに基づきマウスの位置がメイン画面４００内にあれば、マウスイベント情報を内部メモリに保持する。このマウスイベント情報は、イベント種類、座標位置、ドラッグされている選択ファイル（または選択フォルダ）の情報を含んでいる。ここで、イベント種類には、マウスがメイン画面４００に入った事を示すドラッグエンター、マウスがメイン画面４００上でドラッグ中を示すドラッグオーバー、マウスがメイン画面４００から出たことを示すドラッグアウトが含まれる。さらに、メイン画面４００上にドラッグされた選択ファイル（フォルダ）がドロップされたことを示すドロップも含まれる。
【００２７】
次に、メイン制御部３１０は、メモリ上に保持したマウスイベント情報をコンテンツ表示部３１２に設定（通知）する。コンテンツ表示部３１２は、設定されたマウスイベント情報に含まれている座標位置を取得し、メイン画面４００に表示しているフォルダの座標位置と比較することにより、表示中のフォルダにマウスが重なっているかどうかを検知する。また、マウスイベントの状況を判断し、既定の条件に合致した場合にはメイン画面４００に一時表示領域４０６を表示する。
【００２８】
一時表示領域４０６とマウス座標位置が重なった状態でのドロップイベントを検知した場合、コンテンツ表示部３１２は、当該ドロップされたフォルダやファイルに関するコンテンツ情報をメイン画面４００の一時表示領域４０６に表示する。そして、コンテンツ表示部３１２は、一時表示領域４０６に対してコンテンツ情報をドロップした旨をメイン制御部３１０に通知する。通知を受けたメイン制御部３１０は、ドロップされたコンテンツ情報を、ブリッジデータ保持部３１３に格納する。
【００２９】
ツリー表示領域４０２およびコンテンツ表示領域４０３のフォルダとマウス座標位置が重なった状態でのドロップイベントを検知した場合、コンテンツ表示部３１２はドロップされたマウス座標に合致するフォルダ情報をメイン制御部３１０に通知する。通知するフォルダ情報は、ドラッグされたコンテンツのアップロード先となる。この場合、通知を受けたメイン制御部３１０は、通知されたフォルダ情報を、ブリッジデータ保持部３１３に格納する。なお、コンテンツ情報に関しては、マウス座標位置とフォルダとが重なっていると判定した後に設定するのではなく、コンテンツ表示部３１２が、アップロードを行うかどうかを促す画面を表示して、ユーザからのアップロード指示を受けた時に設定しても良い。また、ユーザからのアップロードをキャンセルする指示を受けた時には、設定しないようにしても良い。
【００３０】
ステップＳ３０において、メイン制御部３１０は、ブリッジデータ保持部３１３からアップロード先のフォルダ情報とアップロード対象の選択ファイル（選択フォルダ）の情報とを取得する。メイン制御部３１０は、文書管理サーバ１０のアップロード先のフォルダへ、当該選択対象のファイル（またはフォルダ）をアップロードする。文書管理サーバ１０は、指示を受けたアップロード先のフォルダに、当該受信したファイルやフォルダを登録し、登録結果をメイン制御部３１０へ返す。登録結果は、正常に登録が行われたのか、エラーが発生したのかを示す一意の処理結果番号を含んでいる。メイン制御部３１０は、処理結果番号がエラーと判断した場合、エラー情報としてエラーコード（処理結果番号）を、コンテンツ表示部３１２に通知する。コンテンツ表示部３１２は、当該設定されたエラー情報に基づいてエラーコードに対応するエラーメッセージを表示する。
【００３１】
次に、上述したＳ１０〜Ｓ３０の各処理の詳細について、フローチャートを用いて説明する。
【００３２】
＜フォルダを表示する処理（Ｓ１０）の詳細＞
図６は、コンテンツ表示部３１２が、文書管理サーバ１０からフォルダ情報を取得して、メイン画面４００にフォルダ表示する処理の流れを示すフローチャートである。
【００３３】
ステップＳ６００において、コンテンツ表示部３１２は、フォルダ情報を取得するためのリクエスト情報を作成し、文書管理サーバ１０にフォルダ情報取得のリクエストを送信する。ステップＳ６０１において、文書管理サーバ１０は、このリクエストを受信すると、コンテンツ制御部３０２よりサーバで管理しているフォルダに関するフォルダ情報を取得し、取得したフォルダ情報を、レスポンスとしてコンテンツ表示部３１２へ送信する。
【００３４】
ステップＳ６０２はループ端である。コンテンツ表示部３１２は、受信したフォルダ情報数分だけ、以降のＳ６０３〜Ｓ６０６の処理を行う。
【００３５】
ステップＳ６０３において、コンテンツ表示部３１２は、フォルダ情報に基づいて、ツリー表示領域にフォルダの表示を行う。ステップＳ６０４において、コンテンツ表示部３１２は、コンテンツ表示領域４０３の表示形式としてアイコン表示形式とリスト表示形式のいずれが指定されているか判断する。アイコン表示形式が指定されていると判断した場合はステップＳ６０５に進み、リスト表示形式が指定されていると判断した場合はステップＳ６０６に進む。ステップＳ６０５において、コンテンツ制御部３１２は、フォルダ情報に基づいて、対応するフォルダをアイコン形式でコンテンツ表示領域４０３に表示する。また、ステップＳ６０６において、コンテンツ制御部３１２は、フォルダ情報に基づいて、対応するフォルダをリスト形式でコンテンツ表示領域４０３に表示する。
【００３６】
ステップＳ６０７は終了ループ端である。コンテンツ表示部３１２は、フォルダ情報数分の処理を行ったらＳ６０３〜Ｓ６０６の繰り返し処理を終了する。
【００３７】
＜マウスが表示フォルダに重なっているかどうかを検知する処理（Ｓ２０）の詳細＞
図７は、マウスイベント情報に含まれているマウス座標位置に基づいて、マウスと重なるフォルダを検知する処理の流れを示すフローチャートである。
【００３８】
ステップＳ７００において、メイン制御部３１０は、ＯＳからのマウスイベントに基づき、メイン画面４００に関わるマウスイベント情報を取得して、コンテンツ表示部３１２に設定する。コンテンツ表示部３１２は、当該設定されたマウスイベント情報に含まれているマウス座標位置を取得する。ステップＳ７０１において、メイン制御部３１０は、ステップＳ７００で取得したマウスイベント情報に含まれるドラッグ元のファイルとフォルダの情報（ドラッグされているファイルとフォルダの情報）を、ブリッジデータ保持部３１３に保存する。ステップＳ７０２において、メイン制御部３１０は、一時表示領域４０６を表示するかどうかの判定を行い、条件に合致した場合には一時表示領域４０６を表示する。ステップＳ７０２は、以下のステップＳ７０３からステップＳ７０７により構成される。
【００３９】
まず、ステップＳ７０３において、ステップＳ７００で取得したイベント種類がドラッグエンターである場合には、ステップＳ７０４に進む。ステップＳ７０３のイベント種類がドラッグオーバーである場合には、ステップ７０５に進む。そのほかの場合にはステップＳ７０８に進む。ステップＳ７０４において、イベントの発生時刻をＯＳより取得し、ブリッジデータ保存部３１３に保存する。このステップにおいては、一時表示領域４０６を表示する必要はないため、ステップＳ７０２の処理を終了し、ステップＳ７０８に進む。ステップＳ７０５において、イベントの発生時刻をＯＳより取得し、既にブリッジデータ保存部３１３に保存されている時刻データとの差異を計算し、その結果をステップＳ７０６に渡す。
【００４０】
ステップＳ７０６において、ステップＳ７０５から受け取った差異データが所定の時間（システム規定時間）よりも長いかどうかの判断を行う。このシステム規定時間は、メイン制御部３１０内で規定されたものであるが、管理者等がこの設定値を指定するようにしてもよい。差異データがこのシステム規定時間を越える値を示す場合には、ステップＳ７０７へ進み、越えない場合には、そのままステップＳ７０２の処理を終了し、ステップＳ７０８に進む。ステップＳ７０７において、コンテンツ表示部３１２に、一時表示領域４０６を表示するように通知する。コンテンツ表示部３１２は、一時表示領域４０６をメイン画面４００に表示する。ただし、既に一時表示領域４０６が表示されている場合には、そのままの状態で何もしない。一時表示領域４０６の表示を終えたら、ステップＳ７０２の処理を終了し、ステップＳ７０８に進む。
【００４１】
ステップＳ７０８において、コンテンツ表示部３１２は、当該設定されたマウスイベント情報に含まれているマウス座標位置を取得する。ステップＳ７０９において、コンテンツ表示部３１２は、ドラッグ中アイコンを表示する。ステップＳ７１０において、コンテンツ表示部３１２は、マウス座標がどの領域にあるかを判断する。マウス座標がツリー表示領域４０２、コンテンツ表示領域４０３、または一時表示領域４０６のいずれかの領域内にあると判定した場合は、ステップＳ７１１に進み、アップロード可能アイコンを表示する。一方、コンテンツ表示部３１２は、ステップＳ７１０でマウス座標がヘッダー表示領域４０１、プロパティ表示領域４０４、フッター表示領域４０５のいずれかの領域内にあると判定した場合は、ステップＳ７１２に進み、アップロード不可アイコンを表示する。
【００４２】
ステップＳ７１３はループ端である。コンテンツ表示部３１２は、ツリー表示領域４０２、コンテンツ表示領域４０３および一時表示領域４０６に表示しているフォルダそれぞれを順に判定対象として、Ｓ７１４〜Ｓ７１６の処理を繰り返し行う。
【００４３】
ステップＳ７１４において、コンテンツ表示部３１２は、判定対象のフォルダに関するフォルダ表示領域４１０の座標位置（図４（ｃ）〜（ｅ）の４２０〜４４０）を取得する。ステップＳ７１５において、コンテンツ表示部３１２は、マウス座標のＸ座標と当該判定対象フォルダのフォルダ表示領域のＸ座標範囲とを比較し、マウス座標が範囲内にあると判断した場合は、ステップＳ７１６に進む。ステップＳ７１６では、コンテンツ表示部３１２は、更に、マウス座標のＹ座標とフォルダ表示領域のＹ座標範囲とを比較し、マウス座標が範囲内にあると判断した場合は、ループ処理を終了してステップＳ７１８に進む。
【００４４】
ステップＳ７１７はループの終了を示すループ端である。Ｓ７１５またはＳ７１６でマウス座標が当該判定対象のフォルダのフォルダ表示範囲外であると判定した場合、判定対象フォルダを次のフォルダに変更してＳ７１４〜Ｓ７１６の処理を行う。なお、表示しているフォルダ全てとの判定が終わった場合は、マウス座標に重なっているフォルダが無いと判断して、ループ処理を終了する。
【００４５】
ステップＳ７１８において、コンテンツ表示部３１２は、マウス座標がフォルダと重なっているかどうか判定し、重なっていると検知した場合、ステップＳ７１９に進み、重なっていないと検知した場合には、ステップＳ７２３に進む。ステップＳ７１９において、コンテンツ表示部３１２は、当該設定されたマウスイベント情報に含まれているマウスイベント種類を取得する。
【００４６】
ステップＳ７２０において、コンテンツ表示部３１２は、当該取得したマウスイベント種類がドラッグオーバーであるかどうかを判断する。コンテンツ表示部３１２は、ドラッグオーバーであると判断した場合、ステップＳ７２１に進み、メイン画面４００に表示されているフォルダのうち、当該マウス座標と重なっていると判断したフォルダをフォーカス表示（強調表示）する。次に、ステップＳ７２２に進み、コンテンツ表示部３１２は、当該マウス座標と重なっていると判断したフォルダに関するフォルダ情報を作成してメイン制御部３１０へ返す。一方、ステップＳ７２０でドラッグオーバー以外であると判断した場合は、ステップＳ７２２に進む。なお、ここで作成されるフォルダ情報は、名称やフォルダを示す一意のＩＤをひとまとめにした情報（すなわち、アップロード先となるフォルダを識別するための情報）である。
【００４７】
ステップＳ７２３において、コンテンツ表示部３１２は、当該マウス座標の位置が一時表示領域４０６の表示領域と重なっているかどうか判断し、重なっていると検知した場合、ステップＳ７２４に進む。ステップＳ７２４において、一時表示領域４０６がドロップ場所として認識されたことが分かるように、領域全体をフォーカス表示（強調表示）する。そして、処理をメイン制御部３１０へ返す。一方、ステップＳ７２３において、当該マウス座標の位置が一時表示領域４０６の表示領域と重なっていないと検知した場合、処理をメイン制御部３１０へ返す。
【００４８】
ステップＳ７２５において、メイン制御部３１０は、ファイルがドロップされたフォルダに関するフォルダ情報が返ってきたか（すなわちフォルダ情報が設定されたか）どうか判断する。フォルダ情報が返ってきたと判断した場合、メイン制御部３１０は、ステップＳ７２６に進んで、当該フォルダ情報をブリッジデータ保持部３１３へ保存し、処理を終了する。一方、フォルダ情報が返ってきたと判断しない場合は、そのまま処理を終了する。
【００４９】
＜複数のドラッグ元ファイルとフォルダをアップロードする処理（Ｓ３０）の詳細＞
図８は、メイン制御部３１０が、ブリッジデータ保持部３１３に保存されているフォルダ情報を取得して、ドラッグされていた複数のファイルとフォルダを、文書管理サーバ１０の対象フォルダにアップロードする処理の流れを示すフローチャートである。なお、ドラッグ元にフォルダが設定されていた場合、文書管理サーバ１０にフォルダ作成を行い、内部にあるファイルをアップロードする。また、フォルダ内にフォルダが有る場合、再帰的にアップロード処理を行う。
【００５０】
ステップＳ８００において、メイン制御部３１０は、Ｓ７２５でブリッジデータ保持部３１３に保存されているフォルダ情報（アップロード先となるフォルダに関する情報）を取得する。ステップＳ８０１において、メイン制御部３１０は、ブリッジデータ保持部３１３から、Ｓ７０１において保存したドラッグ元ファイルとフォルダ情報を取得する。
【００５１】
ステップＳ８０２はループ端である。メイン制御部３１０は、ドラッグ元ファイルとドラッグ元フォルダの数分、Ｓ８０３〜Ｓ８２０の処理を行う。
【００５２】
メイン制御部３１０は、ステップＳ８０３において、ブリッジデータ保持部に保存しているドラッグ元情報の種類を調べる。メイン制御部３１０は、ドラッグ元ファイル情報であると判断した場合はステップＳ８０４に進み、ドラッグ元ファイル情報からファイルパスを取得してファイルの読み込みを行う。続いて、ステップＳ８０５において、メイン制御部３１０は、読み込んだファイルを文書管理サーバ１０のＳ８００で取得したフォルダへアップロードを行う。一方、メイン制御部３１０は、ステップＳ８０３において、ドラッグ元情報がドラッグ元フォルダ情報であると判断した場合はステップＳ８０６に進み、ドラッグ元フォルダ情報からフォルダ名を取得して、文書管理サーバ１０へフォルダ作成のリクエストを行う。
【００５３】
ステップＳ８０７において、文書管理サーバ１０のコンテンツ制御部３０２は、指定されたフォルダにアップロードする権限があるかどうか判断し、権限が無いと判断した場合は、ステップＳ８１２に進む。一方、ステップＳ８０７でアップロード権限があると判断した場合は、ステップＳ８０８に進み、コンテンツ制御部３０２は、当該対象ファイルに適正なファイル名が指定されているか否かを判断する。コンテンツ制御部３０２は、ステップＳ８０８において、適正なファイル名が指定されている（不正なファイル名ではない）と判断した場合、ステップＳ８０９に進み、アップロード先のフォルダ内に同名のファイル名が存在するか否かを判断する。コンテンツ制御部３０２は、ステップＳ８０９で同名ファイルが無いと判断した場合、ステップＳ８１１に進む。一方、Ｓ８０９で同名ファイルがあると判断した場合は、ステップＳ８１０に進む。ステップＳ８１０において、コンテンツ制御部３０２は、当該対象ファイルでアップロード先にある同名ファイルを上書きするか否か判断する。Ｓ８１０で上書きする（例えば上書きモードである）と判断した場合はステップＳ８１１に進み、上書きしないと判断した場合はステップＳ８１２に進む。
【００５４】
ステップＳ８１１において、コンテンツ制御部３０２は、当該対象ファイルをアップロード先のフォルダに登録する登録処理を行い、登録が正常終了した旨をメイン制御部３１０へ返す。ステップＳ８１２において、コンテンツ制御部３０２は、どのようなエラーが生じたのかを識別するためのエラーコードを含むエラー情報を作成し、メイン制御部３１０へ返す。
【００５５】
また、コンテンツ制御部３０２は、ステップＳ８１３において、指定されたフォルダについてフォルダ作成する権限があるか否か判断し、権限がないと判断した場合は、ステップＳ８１６に進み、エラーコードを含むエラー情報を作成してメイン制御部３１０へ返す。一方、ステップＳ８１３でフォルダ作成権限ありと判断した場合、ステップＳ８１４に進み、コンテンツ制御部３０２は、適正なフォルダ名が指定されているかどうかの判断を行う。コンテンツ制御部３０２は、ステップＳ８１４において、適正なフォルダ名が指定されていると判断した場合、ステップＳ８１５に進んでフォルダ作成処理を行い、正常終了した旨をメイン制御部３１０へ返す。一方、コンテンツ制御部３０２は、ステップＳ８１４において、不正なフォルダ名が指定されていると判断した場合、ステップＳ８１６に進み、エラーコードを含むエラー情報を作成してメイン制御部３１０へ返す。
【００５６】
ステップＳ８１７において、メイン制御部３１０は、エラー情報が返されたか否かを判断し、エラー情報が返されてきたと判断した場合は、ステップＳ８１８に進み、当該エラー情報をブリッジデータ保持部３１３へ保存する。メイン制御部３１０は、ステップＳ８１７においてエラー情報が返されなかったと判断した場合、ステップＳ８１９に進み、ブリッジデータ保持部３１３に保存しているドラッグ元情報の判断を行う。メイン制御部３１０は、ステップＳ８１９において、ブリッジデータ保持部３１３に保存しているドラッグ元情報がフォルダと判断した場合、ステップＳ８２０に進み、ドラッグ元情報からフォルダパスを取得してフォルダ内のファイルとフォルダ一覧を取得する。メイン制御部３１０は、ステップＳ８０２に処理を遷移してフォルダ内のファイルと一覧について再帰的に処理を行う。一方、メイン制御部３１０は、ステップＳ８２０において、ブリッジデータ保持部に保存しているドラッグ元情報がファイルと判断した場合、ステップＳ８２１に進む。
【００５７】
ステップＳ８２１はループ端である。全てのドラッグ元ファイルとフォルダの処理が終了したと判断した場合にループを終了する。
【００５８】
〔実施例２〕
＜処理の説明＞
以下、本発明の実施例２に係るシステムの処理の流れについて、図９〜図１２を用いて説明する。実施例１では、クライアントＰＣ２０上で動作する一般アプリケーションを想定した構成、処理について述べた。実施例２においては、クライアントＰＣ２０のウェブブラウザ１０００上で動作するアプリケーションで構成した場合について述べる。実施例２は、実施例１の図３、図５、図７、図８について拡張を行うものであり、それ以外の部分については、実施例１と同様であるので、異なる部分について説明する。
【００５９】
図９に、実施例２のシステムにおける、文書管理サーバ１０とクライアントＰＣ２０が提供する各処理部の構成例を示す。これは、実施例１の図３に相当しており、差異はクライアントＰＣ２０のみになる。クライアントＰＣ２０のＣＰＵ２０１が各処理部のプログラムを読み出して実行することにより、クライアントＰＣは各処理部３１０〜３１３、９００として機能する。実施例２では、メイン制御部３１０は、入出力制御部３１１、コンテンツ表示部３１２、ブリッジデータ保持部３１３、マウスイベント制御部９００を制御し、コンテンツ情報などの橋渡しを行う。入出力制御部３１１、コンテンツ表示部３１２については、実施例１と同じ構成であるため、説明を省略する。
【００６０】
クライアントＰＣ２０のメイン制御部３１０は、クライアントＰＣ２０のアプリケーションを司るメイン制御処理を行う。この制御処理は、後述のウェブブラウザ１０００が行うことになるが、本実施例ではマウスのイベント処理の制御、およびコンテンツのアップロード処理をブラウザとは別のモジュールで行うため、マウスイベント制御部９００を設け、その機能を移譲する。
【００６１】
マウスイベント制御部９００は、ウェブブラウザ１０００とは異なるプログラム（ＯＳなどのプログラム）から受けたマウスイベント（ポインティングデバイスによるイベント）に基づいて、マウスイベント情報を取得する。マウスイベント制御部９００は、当該取得したマウスイベント情報に基づいて、イベント種類、座標位置、ドラッグされているファイルが何かを判断する。更に、マウスイベント制御部９００は、コンテンツ表示部３１２においてドロップしたときのマウス座標に重なっていると検知したフォルダに、ドラッグ元で設定されているファイルをアップロードする。マウスイベント制御部９００を実現するプログラムは、ブリッジデータ保持部３１３に情報を設定したことを通知するために、ウェブブラウザ１０００とＪａｖａＳｃｒｉｐｔ（登録商標）を介して通信するためのインターフェースを提供する。
【００６２】
ブリッジデータ保持部３１３は、マウスイベント情報やコンテンツ表示部３１２が表示しているフォルダ情報を、マウスイベント制御部９００との間で送受信するための情報を保持する。更に、ブリッジデータ保持部３１３を実現するプログラムは、マウスイベント情報、フォルダ情報を送受信するための、ウェブブラウザ１０００とのインターフェースを提供する。
【００６３】
なお、本実施例でも、ポインティングデバイスによるイベントをマウスイベント、ポインティングデバイスの座標位置をマウス座標位置と称するものとするが、ポインティングデバイスの種類はマウスに限るものではない。
【００６４】
図１０は、実施例２に係るウェブブラウザ上で実行するアドオンプログラム（コンテンツ表示部３１２、マウスイベント制御部９００およびブリッジデータ保持部３１３としてコンピュータを機能させるための文書管理プログラム）の構成図である。ウェブブラウザ１０００は、ＨＴＭＬの解釈、ＪａｖａＳｃｒｉｐｔ（登録商標）の実行、外部拡張機能のアドオン機能を提供するアプリケーションであり、メイン制御部３１０の機能を受け持つ部分である。ＨＴＭＬ１００１は、「ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ」の略で、ウェブブラウザ１０００で利用可能な、Ｗｅｂページを記述するためのマークアップ言語である。ＪａｖａＳｃｒｉｐｔ（登録商標）１００２は、ウェブブラウザ１０００で利用可能なスクリプト言語で記述されたプログラム（スクリプトプログラム）であり、以下の機能をウェブブラウザ１０００に提供する。提供される機能は、先ず、マウスイベント制御部９００からマウスイベント情報を受信する機能、ブリッジデータ保持部３１３に情報を設定する機能である。さらに、ブリッジデータ保持部３１３に保存されている情報を取得する機能、コンテンツ表示部３１２へブリッジデータ保持部３１３から取得した情報を設定する機能である。
【００６５】
外部拡張機能アドオン１００３と１００４は、ウェブブラウザ１０００の機能を拡張する拡張プログラム（アドオンプログラム）である。外部拡張機能アドオン１００３は、マウスイベント制御部９００とブリッジデータ保持部３１３の機能を提供するためのアドオンプログラムである。外部拡張機能アドオン１００４は、コンテンツ表示部３１２の機能を提供するためのアドオンプログラムである。外部拡張機能アドオン１００４は、ウェブブラウザ上で動作するＡｄｏｂｅ  Ｆｌａｓｈ（商標）などのＲＩＡを用いて記述されたプログラムであり、コンテンツ表示部３１２の機能を提供する。
【００６６】
ウェブブラウザは、文書管理サーバから読み込んだＨＴＭＬのウェブページの記述に従い、外部拡張機能アドオン１００４により定義される画面を表示するための表示領域を、ウェブブラウザのウィンドウ内に定義する。そして、ウェブブラウザ上の当該表示領域内に、外部拡張機能アドオン１００４により定義される画面（図４（ａ）のメイン画面４００のようなＵＩ）が表示される。すなわち、外部拡張機能アドオン１００４によって実現されるコンテンツ表示部３１２は、ウェブブラウザのウィンドウ内に表示されるメイン画面４００において、文書管理サーバ１０で管理している文書やフォルダ階層構造を表示する。
【００６７】
外部拡張機能アドオン１００３は、ＡｃｔｉｖｅＸ技術を用いて、ＯＳ（ウェブブラウザ１０００と異なる外部アプリ）で発生したマウスイベントに基づいてマウスイベント情報を取得する機能や、該マウスイベント情報を保持する機能を実現する。更に、外部拡張機能アドオン１００３は、マウスイベント情報やメイン画面４００上に表示されているフォルダの情報を、ＪａｖａＳｃｒｉｐｔ（登録商標）１００２を介して外部拡張機能アドオン１００４との間で通信する。このように構成することにより、ＯＳなどで管理しているファイルをメイン画面４００上に表示されている所望のフォルダにドラッグ＆ドロップする操作に応じて、当該ファイルを所望のフォルダへアップロードできるように機能させる。
【００６８】
図１１に、ウェブブラウザ上でＲＩＡを用いてフォルダを表示した後、クライアントＰＣ２０のＯＳなどで管理されているファイルをドラッグ＆ドロップすることにより、文書管理サーバ１０上の対応するフォルダにアップロードするまでのシーケンスを示す。本シーケンス図は、実施例１の図５に加えて、実施例２の構成要素であるマウスイベント制御部９００が追加されている部分が異なる。そのため、シーケンス図のフローについては、以下の５つの処理に別れている。先ず、フォルダを表示するフロー（Ｓ１０）、マウスイベント情報を取得するフロー（Ｓ２１）、マウス座標がフォルダに重なっているかどうかを検知するフロー（Ｓ２２）である。さらに、ファイルをフォルダにアップロードするフロー（Ｓ３１）、エラーメッセージを表示するフロー（Ｓ３２）である。
【００６９】
各処理の詳細について以下に記す。まず、ステップＳ１０については、図５のＳ１０と同一の処理内容であるため、説明を省略する。ステップＳ２１とステップＳ２２は、図５のＳ２０の処理フローを分けたものとなる。また、ステップＳ３１とステップＳ３２は、図５のＳ３０の処理フローを分けたものとなる。
【００７０】
ステップＳ２１において、マウスイベント制御部９００は、クライアントＰＣのＯＳで発生したマウスイベントを取得し、取得したマウスイベントに基づきマウスの位置がメイン画面４００内にあるかどうかを判定する。メイン画面４００内にあれば、マウスイベント情報としてブリッジデータ保持部３１３に設定する。マウスイベント情報は、イベント種類、座標位置、ドラッグされている選択ファイル（または選択フォルダ）の情報を含んでいる。ここで、イベント種類には、マウスがメイン画面４００に入った事を示すドラッグエンター、マウスがメイン画面４００上でドラッグ中を示すドラッグオーバー、マウスがメイン画面４００から出たことを示すドラッグアウトが含まれる。さらに、メイン画面４００上にドラッグされた選択ファイル（フォルダ）がドロップされたことを示すドロップも含まれる。マウスイベント制御部９００は、マウスイベント情報をブリッジデータ保持部３１３に保存した旨を、ウェブブラウザ１０００に通知する。
【００７１】
ステップＳ２２において、ウェブブラウザ１０００は、ブリッジデータ保持部３１３に保持されているマウスイベント情報を取得し、当該取得したマウスイベント情報をコンテンツ表示部３１２に設定（通知）する。コンテンツ表示部３１２は、設定されたマウスイベント情報に含まれている座標位置を取得し、メイン画面４００に表示しているフォルダの座標位置と比較することにより、表示中のフォルダにマウスが重なっているかどうかを検知する。フォルダとの重なりを検知した場合は、コンテンツ表示部３１２は、当該重なっていると判定したフォルダに関するフォルダ情報をウェブブラウザ１０００に設定する。ウェブブラウザ１０００は、当該設定されたフォルダ情報をアップロード先のフォルダ情報としてブリッジデータ保持部３１３に保存し、更に、該フォルダ情報をブリッジデータ保持部３１３に保存した旨を、マウスイベント制御部９００に通知する。なお、フォルダ情報に関しては、マウス座標位置とフォルダとが重なっていると判定した後に設定するのではなく、コンテンツ表示部３１２が、アップロードを行うかどうかを促す画面を表示して、ユーザからのアップロード指示を受けた時に設定しても良い。また、ユーザからのアップロードをキャンセルする指示を受けた時には、設定しないようにしても良い。
【００７２】
ステップＳ３１において、マウスイベント制御部９００は、ブリッジデータ保持部３１３からアップロード先のフォルダ情報とアップロード対象の選択ファイル（選択フォルダ）の情報とを取得する。マウスイベント制御部９００は、文書管理サーバ１０のアップロード先のフォルダへ、当該選択対象のファイル（またはフォルダ）をアップロードする。文書管理サーバ１０は、指示を受けたアップロード先のフォルダに、当該受信したファイル（フォルダ）を登録し、登録結果をマウスイベント制御部９００へ返す。登録結果は、正常に登録が行われたのか、エラーが発生したのかを示す一意の処理結果番号を含んでいる。マウスイベント制御部９００は、処理結果番号がエラーと判断した場合、エラー情報としてエラーコード（処理結果番号）をブリッジデータ保持部３１３へ設定保存し、更に、ウェブブラウザ１０００にエラー情報設定の通知を行う。
【００７３】
ステップＳ３２において、ウェブブラウザ１０００は、エラー情報設定の通知を受けると、エラー情報をブリッジデータ保持部３１３から取得し、当該取得したエラー情報をコンテンツ表示部３１２に設定する。コンテンツ表示部３１２は、当該設定されたエラー情報に基づいてエラーコードに対応するエラーメッセージを表示する。
【００７４】
次に、上述したＳ２１〜Ｓ３１の各処理の詳細について、実施例１との差分をフローチャートを用いて説明する。
【００７５】
＜マウスイベント情報を取得する処理（Ｓ２１）の詳細＞
図１２は、マウスイベント制御部９００がＯＳからのマウスイベントに基づきマウスイベント情報を取得し、ブリッジデータ保持部３１３へ当該マウスイベント情報を保存する処理の流れを示すフローチャートである。
【００７６】
ステップＳ１２００において、マウスイベント制御部９００は、ＯＳからのマウスイベントに基づき、メイン画面４００に関わるマウスイベント情報を取得する。ステップＳ１２０１において、マウスイベント制御部９００は、当該マウスイベント情報に含まれるマウスイベント種類を取得し、ステップＳ１２０２において、マウスイベント種類がドラッグエンターかそれ以外かを判断する。ドラッグエンターと判断した場合、Ｓ１２０３に進み、ドラッグエンター以外と判断した場合、Ｓ１２０８に進む。
【００７７】
ステップＳ１２０３とＳ１２０７はループ端である。マウスイベント制御部９００は、ユーザにより選択された複数のドラッグ元ファイルとフォルダを順に処理対象として、その選択された数分、Ｓ１２０４〜Ｓ１２０６の処理を行う。
【００７８】
ステップＳ１２０４において、マウスイベント制御部９００は、ドラッグ元のオブジェクト種類を判定し、ドラッグ元がファイルであると判断した場合は、ステップＳ１２０５に進み、ブリッジデータ保持部３１３へドラッグ元ファイル情報を保存する。一方、マウスイベント制御部９００は、ステップＳ１２０４でドラッグ元がフォルダと判断した場合は、ステップＳ１２０６に進み、ブリッジデータ保持部３１３へドラッグ元フォルダ情報を保存する。
【００７９】
一方、Ｓ１２０２において、マウスイベント種類がドラッグエンター以外と判断した場合、Ｓ１２０８に進み、マウスイベント制御部９００は、マウスイベント種類がドラッグオーバー、ドラッグアウト、ドロップであるか否かを判断する。そして、マウスイベント種類がドラッグオーバー、ドラッグアウト、ドロップのいずれかであると判断した場合はＳ１２０９に進み、それ以外と判断した場合は処理を終了する。ステップＳ１２０９において、マウスイベント制御部９００は、マウスイベント情報に含まれるマウスイベント種類を、ブリッジデータ保持部３１３に保存する。ステップＳ１２１０において、マウスイベント制御部９００は、マウスイベント情報に含まれているマウス座標位置を取得し、当該マウス座標位置をメイン画面４００の左上を起点とした相対座標に変換した後、ブリッジデータ保持部３１３に保存する。ステップＳ１２１１において、マウスイベント制御部９００は、ブリッジデータ保持部３１３にマウスイベント情報を保存した旨を、ウェブブラウザ１０００に通知する。
【００８０】
＜マウスイベント情報を取得する処理（Ｓ２２）の詳細＞
Ｓ２２のフローチャートについては、実施例１の図７が相当する。実施例１ではステップＳ７０１でイベント情報の保存処理も行っていたが、その部分の処理は前述のＳ２１で行うように機能を分割した。そのため、ステップＳ７００においては、ブリッジデータ保存部３１３からの取得処理となり、ステップＳ７０１を行わずにステップＳ７０２を次に実行する。それ以外の処理フローは、図７と同様であるため記述を省略する。
【００８１】
＜複数のドラッグ元ファイルとフォルダをアップロードする処理（Ｓ３１）の詳細＞
図１３は、マウスイベント制御部９００が、ブリッジデータ保持部３１３に保存されているフォルダ情報を取得して、ドラッグされていた複数のファイルとフォルダを、文書管理サーバ１０の対象フォルダにアップロードする処理の流れを示すフローチャートである。実施例１における図８との違いは、実施場所がメイン制御部３１０からマウスイベント制御部９００に変更されているところと、実行場所が変わったため、エラー発生時の通知処理が加わることである。そのため、図８との差であるステップＳ１３００についてのみ説明を行い、その他の処理については記述を省略する。ステップＳ１３００において、マウスイベント制御部９００は、ブリッジデータ保持部９００にエラー情報を保存した旨を、ウェブブラウザ１０００へ通知する。
【００８２】
〔実施例３〕
＜処理の説明＞
以下、本発明の実施例３に係るシステムの処理の流れについて、図１４を用いて説明する。本実施例では、実施例１、実施例２と異なるところは一時表示領域４０６の表示の判定処理であり、その差異について説明する。
【００８３】
＜マウスが表示フォルダに重なっているかどうかを検知する処理の詳細＞
図１４は、図７のステップＳ７０２で行われる一時表示領域判定処理に関するフローチャートである。図７では、ユーザがドラッグ操作を開始した時からの経過時間が閾値を超えた場合の処理フローを記述したが、本実施例ではユーザのマウスがドラッグしたまま動かなくなった状態の経過時間を計測し、一時表示領域４０６を表示するかを判定するところが特徴となる。
【００８４】
ステップＳ１４００において、メイン制御部３１０は、ブリッジデータ保存部３１３に保存しているマウス座標と時刻情報を取得する。ブリッジデータ保存部３１３にデータが存在しない場合でもそのまま処理を続ける。ステップＳ１４０１において、メイン制御部３１０は、ステップＳ７００で取得しているイベント情報の中に含まれているマウス座標と、前述のステップＳ１４００で取得しているマウス座標とを比較する。マウス座標情報が異なっていればユーザがマウスを動かしている状態と判断し、ステップＳ１４０２において、イベント情報内のマウス座標データをブリッジデータ保存部３１３に上書き保存して、ステップＳ７０２の処理を終わる。マウス座標情報が同じであればユーザがマウスを動かしていない状態と判断されるため、ステップＳ１４０３において、クライアントＰＣ２０の現在時刻を取得する。
【００８５】
ステップＳ１４０４において、ステップＳ１４００で取得した時刻情報と、ステップＳ１４０３で取得したクライアントＰＣ２０の現在時刻を比較しシステムが規定している時間よりも長いかどうかを比較する。規定時間よりも長い場合には、コンテンツ表示部３１２に、一時表示領域４０６を表示するように通知する。ステップＳ１４０５において、コンテンツ表示部３１２は、一時表示領域４０６をメイン画面４００に表示する。ただし、既に一時表示領域４０６が表示されている場合には、そのままの状態でなにもしない。ステップＳ１４０５で一時表示領域４０６を表示する、もしくは規定時間よりも短い時間である場合には、ステップＳ７０２の処理を終わる。本実施例では、検知できるタイミングとしてマウスの座標の動きを用いたが、そのほかの画面内での動作（例えば、ドラッグしたままスクロールしている時間）などを用いた判定処理としてもよい。
【００８６】
〔実施例４〕
＜処理の説明＞
以下、本発明の実施例４に係るシステムの処理の流れについて、図１５、１６を用いて説明する。本実施例では、実施例１、実施例２、実施例３と異なるところは一時表示領域４０６に機能を追加しているところと、その機能によるアップロード処理フローが変わるところであり、その差異について説明する。
【００８７】
図１５は、図４（ａ）で説明した一時表示領域４０６に機能を追加した際の表示内容を記載したものである。アップロード形式選択肢１５００は、一時表示領域４０６に表示されたファイルやフォルダをアップロード処理する際の動作モードを表わしている。本実施例では、実施例２のＳ３０、Ｓ３１で述べた処理モードである「個別」登録に加え、一時表示領域４０６に表示されたファイルおよびフォルダをアーカイブして一つのファイルとして登録する「アーカイブ」登録を、ユーザが選択できる。そのため、アップロード形式選択肢１５００は、「個別」「アーカイブ」の選択肢から選択できるプルダウンリストの形式で表示する。
【００８８】
図１６は、図１５でユーザが選択したアップロード形式に従って、アップロード処理を行うためのフローチャートを表わしたものである。アップロード処理自体の基本フローは図８と変わらないため、追加する処理についてのみ説明する。
【００８９】
図８のステップＳ８０１とステップＳ８０２の間で、メイン制御部３１０は、コンテンツ表示部３１２に対して一時表示領域４０６のアップロード形式の取得を依頼する。ステップＳ１６００において、コンテンツ表示部３１２は、一時表示領域４０６のアップロード形式選択肢１５００で選択されているアップロード形式を取得し、メイン制御部３１０に送信する。ステップＳ１６０１において、メイン制御部３１０は、ステップＳ１６００で取得したアップロード形式を判定する。アップロード形式で通常の「個々」が選択されている場合には、図８の動作と同様になるためステップＳ８０２に進み、「アーカイブ」が選択されている場合にはステップＳ１６０２に進む。
【００９０】
ステップＳ１６０２において、ブリッジデータ保存部３１３に保存されているアップロードファイル、およびフォルダのアーカイブ処理を行う。このステップＳ１６０２は、次のステップＳ１６０３〜Ｓ１６１０までで構成される。ステップＳ１６０３とＳ１６１０はループ端であり、メイン制御部３１０は、ユーザによりあらかじめ取得したファイルとフォルダを順に処理対象として、一つのファイルにアーカイブ処理をＳ１６０４〜Ｓ１６０９の手順で行う。
【００９１】
ステップＳ１６０４において、ステップＳ１６０３で選択したコンテンツがファイルかフォルダの判定を行う。ファイルの場合にはステップＳ１６０５において、メイン制御部３１０は、対象ファイルのファイルパスを取得し、クライアントＰＣ２０がアクセスできるディスク領域から当該ファイルのデータを読み込む。ステップＳ１６０６において、メイン処理部３１０でファイルをアーカイブファイル内に追加し、ステップＳ１６１０に進む。フォルダの場合にはステップＳ１６０７において、メイン処理部３１０でフォルダ情報をアーカイブファイル内に追加する。ステップＳ１６０８において、メイン処理部３１０でそのフォルダの１階層下位にあるファイル、フォルダのリストを取得し、次のステップＳ１６０９で、下位階層のアーカイブ処理を再帰的に行う。ステップＳ１６０９を用いた下位階層のアーカイブ処理が終了したら、ステップＳ１６１０に進む。
【００９２】
ユーザの指定した全てのファイル、フォルダをアーカイブファイル内に格納したら、次のステップＳ１６１１において、メイン制御部３１０は、作成したアーカイブファイルを文書管理サーバ１０のＳ８００で取得したフォルダへアップロードを行う。
【００９３】
ステップＳ１６１１におけるアップロードが終了したら、本処理フローを終了する。
なお、本処理フローは、実施例１の図８をもとにして記述を行ったが、実施例２の図１３の場合には、本追加処理フローの処理を行う場所を、マウスイベント制御部９００とすることで同様のフローで説明できる。
【００９４】
〔その他の実施例〕
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2013125498.tif 000003
【図２】
2013125498.tif 000004
【図３】
2013125498.tif 000005
【図４】
2013125498.tif 000006
【図５】
2013125498.tif 000007
【図６】
2013125498.tif 000008
【図７】
2013125498.tif 000009
【図８】
2013125498.tif 000010
【図９】
2013125498.tif 000011
【図１０】
2013125498.tif 000012
【図１１】
2013125498.tif 000013
【図１２】
2013125498.tif 000014
【図１３】
2013125498.tif 000015
【図１４】
2013125498.tif 000016
【図１５】
2013125498.tif 000017
【図１６】
2013125498.tif 000018