JP2015032002A - 文書管理プログラム、情報処理装置 - Google Patents

文書管理プログラム、情報処理装置 Download PDF

Info

Publication number
JP2015032002A
JP2015032002A JP2013159179A JP2013159179A JP2015032002A JP 2015032002 A JP2015032002 A JP 2015032002A JP 2013159179 A JP2013159179 A JP 2013159179A JP 2013159179 A JP2013159179 A JP 2013159179A JP 2015032002 A JP2015032002 A JP 2015032002A
Authority
JP
Japan
Prior art keywords
content
information
document management
web browser
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013159179A
Other languages
English (en)
Other versions
JP6265644B2 (ja
Inventor
田中 裕介
Yusuke Tanaka
裕介 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2013159179A priority Critical patent/JP6265644B2/ja
Priority to US14/446,108 priority patent/US10007415B2/en
Publication of JP2015032002A publication Critical patent/JP2015032002A/ja
Application granted granted Critical
Publication of JP6265644B2 publication Critical patent/JP6265644B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/168Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs

Abstract

【課題】 ウェブブラウザ上で実行されるRIAにより表示されるコンテンツを、ウェブブラウザと異なるプログラム(OSのファイルシステムなど)で管理されているフォルダにD&D操作することで、ダウンロードできるようにする。【解決手段】 本発明では、ウェブブラウザ上で動作する第1の拡張プログラムと第2の拡張プログラムとを用いる。第1の拡張プログラムは、文書管理サーバで管理されているコンテンツをブラウザの表示領域内に表示し、コンテンツがドラッグアウトされた場合、当該コンテンツの情報をブリッジデータ保持部に書き込む。第2の拡張プログラムは、ブリッジデータ保持部に書き込まれた前記コンテンツの情報を含むドラッグオブジェクトを生成し、該ドラッグオブジェクトがウェブブラウザ外でドロップされたか監視し、ドロップされた場合、ドラッグオブジェクトに含まれる前記コンテンツの情報を用いてダウンロード処理を実行する。【選択図】 図6

Description

本発明は、文書管理サーバで管理されている文書を処理するための文書管理プログラム、情報処理装置に関する。
近年、文書管理システムにおいて、専用の文書管理クライアントアプリケーションを用いずに、一般的なウェブブラウザ(Microsoft Internet Explorer(商標)など)を用いて文書管理サーバにアクセスすることが望まれている。一方で、文書管理サーバは複数のフォルダの階層構造を用いて文書ファイルを分類しており、ウェブブラウザを用いて文書管理サーバにアクセスする場合も、ユーザはこのフォルダ階層構造をインタラクティブに操作できるようにするのが望ましい。そこで、Adobe Flash Player(商標)などのRIA(Rich Internet Application)を用いて、文書管理サーバのフォルダ階層構造を操作するための拡張プログラムをウェブブラウザ上で実行することが考えられる。
また、特許文献1の図9では、ウェブブラウザにおいて、サーバへのアップロードパスを含むHTMLオブジェクト(アップロード用の領域)を表示しておく。そして、ユーザが、OS(Operating System)のファイルシステムで管理しているファイルを、該HTMLオブジェクトにドラッグ&ドロップ(以後、D&Dと称する)した場合は、HTMLオブジェクトに含まれるアップロードパスに対応する記憶領域へ、当該ファイルをアップロードするようにしている。しかしながら、特許文献1の技術では、HTMLオブジェクトに対応付けられたアップロードパスで特定される1つの記憶領域にしかファイルをアップロードできなかった。すなわち、特許文献1の技術では、アップロードパスで定められた1つの記憶領域にファイルをアップロードするものであるので、RIAを用いてフォルダ階層構造を表示したとしても、当該表示されたフォルダ階層構造の中の所望のフォルダに、OS上のファイルをD&Dでアップロードすることはできない。これに対して、本出願人は、特許文献2において、フォルダ階層構造を表示させるためにRIAを用いて記述されたアドオンと、OSで発生したマウスイベントの情報を取得および保持するためにActiveX技術を用いて記述されたアドオンと、該アドオン間でマウスイベント情報を中継するためのJavaScript(登録商標)で記述されたスクリプトプログラムを設けることにより、OS上のファイルを、RIAを用いた表示されたフォルダ階層構造上のフォルダへD&Dでアップロードする技術について提案している。
また、特許文献1では、ウェブブラウザによって表示されているHTMLオブジェクトを、ウェブブラウザの表示領域外へドラッグすると、アドインプログラムにより、OSのドラッグオブジェクトを作成し、当該作成されたドラッグオブジェクトをOSに登録することで、D&D操作でHTMLオブジェクトのダウンロードを行う技術を開示している。
WO2008/029774号公報 特開2012−243145号公報
しかしながら、特許文献1は、ウェブブラウザによって表示されているHTMLオブジェクトをダウンロード対象とするものである。すなわち、特許文献1の技術では、Adobe Flash Player(商標)などのRIAにより表示されているコンテンツ(ファイルやフォルダ)を、D&D操作によりダウンロードすることはできない。
また、特許文献2は、上述したように、OS上のファイルをドロップした時のウェブブラウザ上の座標を、Flash Player側に通知することにより、アップロード先のフォルダを特定するものであるが、ダウンロード時の構成については記載していなかった。すなわち、特許文献2はデータをアップロードするための構成を開示するものであるので、Flash PlayerなどのRIAにより表示されているコンテンツをD&D操作によるダウンロードの構成としてそのまま適用することはできない。
上記課題を解決するために、本発明の文書管理プログラムは、ウェブブラウザ上で動作する第1の拡張プログラムと第2の拡張プログラムとを含む文書管理プログラムであって、前記第1の拡張プログラムは、コンピュータを、文書管理サーバで管理されているコンテンツの情報を取得する第1の取得手段、前記第1の取得手段で取得した情報にしたがって、前記文書管理サーバで管理されているコンテンツを、前記ウェブブラウザ上に定義された表示領域内に表示する表示手段、前記ウェブブラウザ上で発生したマウスイベント情報が、前記表示手段により表示されたコンテンツが前記表示領域外にドラッグされたことを示すドラッグアウトであると判断した場合、当該ドラッグされたコンテンツの情報をブリッジデータ保持部に書き込む第1の保存手段、として機能させ、前記第2の拡張プログラムは、前記コンピュータを、前記ブリッジデータ保持部に書き込まれた前記コンテンツの情報を受信して、当該受信したコンテンツの情報を含むドラッグオブジェクトを生成し、当該ドラッグオブジェクトが前記ウェブブラウザ外でドロップされたか監視する監視手段、前記ドラッグオブジェクトが前記ウェブブラウザ外でドロップされた場合、当該ドラッグオブジェクトに含まれる前記コンテンツの情報を用いて、文書管理サーバに該当するコンテンツを送信するように指示することによりダウンロード処理を実行するダウンロード手段、として機能させることを特徴とする。
本発明によれば、ウェブブラウザ上で実行されるRIAによって表示されるコンテンツを、ウェブブラウザと異なるプログラム(OSのファイルシステムなど)で管理されているフォルダへD&D操作することにより、サーバで管理されている該コンテンツを容易にダウンロードできるようになる。
システム構成図 文書管理サーバおよび文書管理クライアントのハードウェア構成例 文書管理サーバおよび文書管理クライアントが提供する各処理部の構成例 ウェブブラウザ構成図 UI構造図 マウスイベントを取得してファイルをダウンロードするメインシーケンス図 実施例1のコンテンツを表示する処理の流れを示すフローチャート 実施例1のコンテンツがドラッグされたときの処理の流れを示すフローチャート 実施例1のコンテンツをダウンロードする処理の流れを示すフローチャート マウスイベントを取得してファイルをアップロードするメインシーケンス図 マウスイベントをウェブブラウザに通知する処理の流れを示すフローチャート マウス位置にあるフォルダを検知する処理の流れを示すフローチャート ファイルをアップロードする処理の流れを示すフローチャート アップロード失敗時のエラーメッセージを表示する処理の流れを示すフローチャート 実施例2のファイルの過去バージョンを表示する処理の流れを示すフローチャート 実施例3のダウンロード済みファイルの更新日時を更新する処理の流れを示すフローチャート 実施例4のウィジェットプログラムがコンテンツを取得する処理の流れを示すフローチャート
[実施例1]
<システム構成>
図1は、本発明の実施形態に係る文書管理システムの構成図である。該システムは、LAN30を介して接続された文書管理サーバPC10とクライアントPC20により構成される。文書管理サーバPC10は、ファイルやフォルダなどのコンテンツを管理する文書管理機能と、Webアプリケーションサーバ機能とを提供する。なお、本実施形態では、文書管理機能とWebアプリケーションサーバ機能は、同一サーバ内で実現するものとしたが、別々のサーバで実現するようにしても構わない。クライアントPC20は、ウェブブラウザを介して文書管理サーバPC10に接続してコンテンツを操作する機能を提供する。
<ハードウェア構成>
図2は、本発明の実施形態に係る文書管理システムを構成する各PCのハードウェア構成例を示している。文書管理サーバ10とクライアントPC20は、一般的なPCのハードウェアを用いて構成できる。
CPU201は、ROM203やハードディスク等の外部メモリ210に記憶されたOS(オペレーションシステム)やアプリケーション等のプログラムを実行することにより、後述する各フローチャートの各ステップを実行する処理部として機能する。RAM202は、CPU201の主メモリ、ワークエリア等として機能する。キーボードコントローラ204は、キーボード208や図示しないポインティングデバイスからの入力を制御する。ディスプレイコントローラ205は、各種ディスプレイ209の表示を制御する。ディスクコントローラ206は、各種データを記憶する外部メモリ210(ハードディスクなど)におけるデータアクセスを制御する。NC(ネットワークコントローラ)207は、ネットワークに接続されて、ネットワークに接続された他の機器との通信制御処理を実行する。
<ソフトウェア構成>
図3は、文書管理サーバPC10とクライアントPC20が提供する各処理部の構成例を示している。
文書管理サーバPC10のCPU201がプログラムを実行することにより、文書管理サーバは各処理部300〜302として機能する。なお、コンテンツなどの情報は、外部メモリ210に保持され、必要なときにRAM201にロードし処理される。
文書管理サーバPC10におけるメイン制御部300は、文書管理サーバのアプリケーションを司るメイン制御処理を行う。また、メイン制御部300は、入出力制御部301、コンテンツ制御部302を制御し、コンテンツ情報などの橋渡しを行う。入出力制御部301は、クライアントPC20からのコマンドのリクエストを受信して、クライアントPC20へコマンドのレスポンスを送信する。また、コンテンツ制御部302は、クライアントPC20からリクエストのあったコンテンツ情報を取得する。なお、コンテンツ情報については、DBやファイルなどで管理されていても良く、特に形態は問わない。
クライアントPC20のCPU201が各処理部のプログラムを読み出して実行することにより、クライアントPCは各処理部310〜314として機能する。
クライアントPC20のメイン制御部310は、クライアントPC20のアプリケーションを司るメイン制御処理を行う。また、メイン制御部310は、入出力制御部311、コンテンツ表示部312、マウスイベント制御部313、ブリッジデータ保持部314を制御し、コンテンツ情報などの橋渡しを行う。入出力制御部311は、文書管理サーバPC10へコマンドのリクエストを送信して、文書管理サーバPC10からのコマンドのレスポンスを受信する。
コンテンツ表示部312は、文書管理サーバPC10から受信したコンテンツ情報を解釈してウェブブラウザ上に表示する。コンテンツとは、文書などのファイルや、ファイルを管理するフォルダを示す。また、コンテンツ表示部312は、マウスイベント制御部313が取得したマウス座標(ポインティングデバイスにより指示される座標位置)に基づいて、表示されているコンテンツの重なっているかを検知する。コンテンツ表示部312は、マウスイベント制御部313が処理に失敗した場合、失敗した旨を示すエラーメッセージを表示する。更に、コンテンツ表示部312は、ウェブブラウザ400と通信をするためのインターフェースを公開している。また、コンテンツ表示部312は、ウェブブラウザ400内で発生したマウスイベント(コンテンツのドラッグ開始やドラッグアウトなどのイベント)を取得すること、マウスイベント情報を保持することを実現する。
マウスイベント制御部313は、ウェブブラウザ400とは異なるプログラム(OSなどのプログラム)から受けたマウスイベント(ポインティングデバイスによるイベント)に基づいて、マウスイベント情報を取得する。マウスイベント制御部313は、当該取得したマウスイベント情報に基づいて、イベント種類、座標位置、ドラッグされているファイルは何かを判断する。ファイルのアップロードを行う場合、マウスイベント制御部313は、コンテンツ表示部312においてドロップしたときのマウス座標に重なっていると検知したフォルダに、ドラッグ元で設定されているファイルをアップロードする。一方、ファイルのダウンロードを行う場合、マウスイベント制御部313は、クライアントPC20のOS上のフォルダへのドロップ操作を検知し、文書管理サーバPC10から、ドロップ先のフォルダにドロップしたコンテンツのダウンロードを行う。マウスイベント制御部313を実現するプログラムは、ブリッジデータ保持部314に情報を設定したことを通知するために、ウェブブラウザ400とJavaScript(登録商標)を介して通信するためのインターフェースを公開している。
ブリッジデータ保持部314は、マウスイベント情報やコンテンツ表示部312が表示しているフォルダ情報を、マウスイベント制御部313との間で送受信するための情報を保持する。更に、ブリッジデータ保持部314を実現するプログラムは、マウスイベント情報、フォルダ情報を送受信するための、ウェブブラウザ400とのインターフェースを公開している。
図4は、本発明の実施例1に係るウェブブラウザ上で実行するアドオンプログラム(コンテンツ表示部312、マウスイベント制御部313およびブリッジデータ保持部314としてコンピュータを機能させるための文書管理プログラム)の構成図である。
ウェブブラウザ400は、HTMLの解釈、JavaScript(登録商標)の実行、外部拡張機能のアドオン機能を提供するアプリケーションである。
HTML400は、「HyperText Markup Language」の略で、ウェブブラウザ400で利用可能な、Webページを記述するためのマークアップ言語である。
JavaScript(登録商標)402は、ウェブブラウザ400で利用可能なスクリプト言語で記述されたプログラム(スクリプトプログラム)であり、以下の機能をウェブブラウザ400に提供する。提供される機能は、マウスイベント制御部313からマウスイベント情報を受信する機能、ブリッジデータ保持部314に情報を設定する機能、ブリッジデータ保持部314に保存されている情報を取得する機能、コンテンツ表示部312へブリッジデータ保持部314から取得した情報を設定する機能である。
外部拡張機能アドオン403と404は、ウェブブラウザ400の機能を拡張する拡張プログラム(アドオンプログラム)である。外部拡張機能アドオン403は、マウスイベント制御部313とブリッジデータ保持部314の機能を提供するためのアドオンプログラムである。外部拡張機能アドオン404は、コンテンツ表示部の機能を提供するためのアドオンプログラムである。
外部拡張機能アドオン404は、ウェブブラウザ上で動作するAdobe Flash(商標)などのRIAを用いて記述されたプログラムであり、コンテンツ表示部312の機能(ユーザインタフェース機能)を提供する。ウェブブラウザは、文書管理サーバから読み込んだHTMLのウェブページの記述に従い、外部拡張機能アドオン404により定義される画面を表示するための表示領域を、ウェブブラウザのウィンドウ内に定義する。そして、ウェブブラウザ上の当該表示領域内に、外部拡張機能アドオン404により定義される画面(図5(A)のメイン画面500のようなUI)が表示される。すなわち、外部拡張機能アドオン404によって実現されるコンテンツ表示部312は、ウェブブラウザのウィンドウ内に表示されるメイン画面500において、文書管理サーバPC10で管理しているファイルやフォルダ階層構造を表示する。
外部拡張機能アドオン403は、ActiveX技術を用いて、OS(ウェブブラウザ400と異なる外部アプリ)で発生したマウスイベントに基づいてマウスイベント情報を取得する機能や、該マウスイベント情報を保持する機能を実現するためのプログラムである。更に、外部拡張機能アドオン403は、マウスイベント情報やメイン画面500上に表示されているフォルダの情報を、JavaScript(登録商標)402を介して外部拡張機能アドオン404との間で通信する。これにより、メイン画面500上に表示されているファイルをOSなどで管理されている所望のフォルダにD&Dする操作に応じて、文書管理サーバPC10で管理しているファイルをクライアントPC20へダウンロードするように機能させる。
コンテンツ表示部312によってウェブブラウザのウィンドウ上に表示される図5のメイン画面500は、ヘッダー表示領域501、ツリー表示領域502、コンテンツ表示領域503、プロパティ表示領域504、フッター表示領域505より構成される。
コンテンツ表示部312は、ヘッダー表示領域501に、文書管理システムの名前やメニューなどを表示する。また、コンテンツ表示部312は、ツリー表示領域502内に、(文書)ファイルを格納するフォルダを階層的に表示する。更に、コンテンツ表示領域503には、ツリー表示領域502で選択されたフォルダ内に格納されている文書やフォルダが表示される。なお、図5のメイン画面500は、ツリー表示領域502で「トップフォルダ」が選択されている場合のコンテンツ表示領域503の表示例を示している。なお、コンテンツ表示部312は、コンテンツ表示領域503の表示形式を変更することが可能であり、切り替えボタンなどの操作によりアイコン表示とリスト表示を切り替えることができる。また、プロパティ表示領域504には、コンテンツ表示領域503で選択されているコンテンツ(ファイルまたはフォルダ)のプロパティが表示される。プロパティは、当該コンテンツの名称やパスなどの情報が含まれる。また、フッター表示領域505には、アプリケーションバージョンやCopyRightsなどの情報が表示される。
コンテンツのダウンロードにおいて、ダウンロード対象のコンテンツはドラッグ操作が行われた時のマウス座標により判定する。ツリー表示領域502に表示されるフォルダ、あるいは、コンテンツ表示領域503に表示されるフォルダとファイルが、ダウンロード対象としてD&D操作されるコンテンツとなりうる。
コンテンツのアップロードにおいては、アップロード先のフォルダは、ドロップ操作が行われたときのマウス座標により判定する。コンテンツ表示部312は、マウスイベント情報から座標位置を取得し、当該取得したマウス座標に基づいて、ツリー表示領域502やコンテンツ表示領域503に表示されているフォルダの表示位置との重なりを検知する。図5(B)は、ツリー表示領域502やコンテンツ表示領域503に表示されるフォルダの1つに対して定義されている座標情報を説明するための図である。フォルダ表示領域510は、表示しているフォルダのマウス座標の重なりを検知するために定義されている領域であり、左上を始点とし、右下を終点として当該領域の位置を保持している。コンテンツ表示部312は、フォルダ表示領域510の中にマウス座標511が含まれている場合、フォルダとマウス座標が重なっていると判断する。なお、フォルダ表示領域は、フォルダが表示されている領域や表示形式に応じて、定義される形状が異なる。例えば、ツリー表示領域502に表示されるフォルダに対して定義されるフォルダ表示領域は、図5(C)のフォルダアイコンとフォルダ名を囲むような長方形の領域520で定義される。また、コンテンツ表示領域503でアイコン表示している場合、コンテンツ表示領域503に表示されるフォルダに対して定義されるフォルダ表示領域は、図5(D)の領域530のように定義される。また、コンテンツ表示領域503でリスト表示している場合、コンテンツ表示領域503に表示されるフォルダに対して定義されるフォルダ表示領域は、図5(E)の領域540のように定義される。
<<処理の説明>>
以下、本実施例1のシステムの処理の流れについて、図6〜図9を用いて説明する。
図6は、ウェブブラウザにおいてAdobe Flash等のRIAにより文書管理サーバで管理されているコンテンツを表示し、ドラッグされたコンテンツをクライアントPC20のOS上のフォルダにダウンロードするまで一連の流れを示すシーケンスである。シーケンスは大きく分けて以下の3つの処理に分かれている。すなわち、文書管理サーバPC10で管理されているコンテンツを表示するシーケンス(S10)、RIAにより表示されているコンテンツがドラッグされたときの処理のシーケンス(S20)、コンテンツがOSのフォルダにドロップされ、該コンテンツ(ファイル)がダウンロードされるシーケンス(S30)である。各シーケンスにおける処理の詳細について以下に記す。
ステップS10において、コンテンツ表示部312は、文書管理サーバPC10よりコンテンツ情報(フォルダ情報とファイル情報を含む)を取得する。コンテンツ情報は、コンテンツの名称や、コンテンツを特定するための一意のIDをひとまとめにした情報である。コンテンツを特定するための一意の情報は、パスであってもかまわない。また複数のコンテンツ情報を同時に取得することが可能である。コンテンツ表示部312は、取得したコンテンツ情報に基づいて、ツリー表示領域502およびコンテンツ表示領域503にコンテンツを表示する。コンテンツを表示する位置や大きさについては、コンテンツ表示部312の中で定義するものとするが、定義の方法については、内部リソースとして定義しても良いし、外部ファイルで定義しても良い。
ステップS20において、コンテンツ表示部312は、マウスイベントを取得すると、当該取得したマウスイベント情報のイベント種類により処理を振り分ける。すなわち、マウスイベント情報が、コンテンツがドラッグされ且つメイン画面500外にドラッグされるドラッグアウトが行われたか、メイン画面500内でのドラッグかに応じて処理を切り替える。マウスがメイン画面500から出たことを示すドラッグアウトでない場合(すなわちメイン画面500内でのドラッグの場合)、コンテンツ表示部312は、ドラッグ操作に合わせた位置にコンテンツ再描画を行う。一方、マウスイベント情報がドラッグアウトの場合、コンテンツ表示部312は、ドラッグ対象コンテンツの情報を取得し、ブリッジデータ保持部314に該コンテンツ情報を送信してドラッグ開始を通知する。更に、ブリッジデータ保持部314は、マウスイベント制御部313に当該受信したコンテンツ情報を送信することにより、ドラッグ開始を通知する。マウスイベント制御部313は、受信したコンテンツの情報を含むドラッグオブジェクトを生成し、更に、ウェブブラウザ外(すなわちOSのフォルダ)へのドロップの監視を開始する。
ウェブブラウザ外(すなわちOSのフォルダ)へのドロップ操作が行われると、ステップS30において、マウスイベント制御部313は、OS(エクスプローラ)からの通知に基づきマウスのドロップ操作を検知する。ドロップされたコンテンツがフォルダである場合は、マウスイベント制御部313は、文書管理サーバPC10にドロップされたフォルダのコンテンツ情報を送信し、コンテンツリスト(該フォルダに含まれるファイルのリスト)を受信する。その後、マウスイベント制御部313は、文書管理サーバPC10にコンテンツリストに含まれるファイルを送信するように指示することによりダウンロード処理を実行する。なお、ドロップされたコンテンツがファイルの場合は、該ファイルのコンテンツ情報を送信して、該ファイルのダウンロード処理を指示する。これら一連の処理の間、マウスイベント制御部313は、ブリッジデータ保持部314を介してコンテンツ表示部313に進捗通知(ファイルリスト取得通知、ダウンロードの進捗通知、ダウンロード完了通知)を行う。コンテンツ表示部313は、受信した進捗通知の情報を基に進捗状況をメイン画面500上に表示する。
上記S10〜S30の各処理の詳細について、下記のフローチャートを用いて説明する。
<文書管理サーバPC10で管理されているコンテンツを表示する処理(S10)>
図7は、コンテンツ表示部312が、文書管理サーバPC10からフォルダ情報およびファイル情報を含むコンテンツ情報を取得し、当該取得したコンテンツ情報を、ウェブブラウザ400上のメイン画面500に表示する処理(S10)の詳細を示すフローチャートである。
ステップS700において、コンテンツ表示部312は、コンテンツ情報を取得するためのリクエストを作成し、当該作成したコンテンツ情報取得のリクエストを文書管理サーバPC10へ送信する。
ステップS701において、文書管理サーバPC10のコンテンツ制御部302は、コンテンツ情報取得のリクエストを受信すると、コンテンツ情報を取得し、当該取得したコンテンツ情報をレスポンスとしてコンテンツ表示部312へ送信する。
ステップS702はループ端の開始記号であり、コンテンツ表示部312は、文書管理サーバPC10から取得したコンテンツ情報の数分だけ、S703〜S707の処理を繰り返し行う。
ステップS703において、コンテンツ表示部312は、当該取得したコンテンツ情報がフォルダの情報であるか否か判断を行う。当該取得したコンテンツ情報がフォルダの情報である場合はステップS704に遷移し、ツリー表示領域502に当該取得したフォルダ情報に基づいてフォルダアイコンの表示を行う。一方、当該取得したコンテンツ情報がファイルの情報である場合はステップS705に遷移する。
ステップS705において、コンテンツ表示部312は、コンテンツ表示領域503に対して設定されている表示形式の判断を行う。表示形式がアイコン形式であると判断した場合は、ステップS706に遷移し、コンテンツ制御部312は、当該取得したコンテンツ情報に対応するコンテンツをアイコン形式でコンテンツ表示領域503に表示する。一方、表示形式がリスト形式と判断した場合は、ステップS707に遷移し、コンテンツ制御部312は、当該取得したコンテンツ情報に対応するコンテンツをリスト形式でコンテンツ表示領域503に表示する。
ステップS708はループ端の終了記号であり、コンテンツ表示部312は、文書管理サーバPC10から取得したコンテンツ情報全てに対してS703〜S707の処理を行えばループを抜けて、図7のフローチャートの処理を終了する。
<RIAにより表示されているコンテンツがドラッグされたときの処理(S20)>
図8は、ウェブブラウザ400上で実行されるRIAによってメイン画面500内に表示されているコンテンツがドラッグされた場合の処理(S20)の詳細を示すフローチャートである。特に、コンテンツがウェブブラウザのメイン画面500外へドラッグアウトされた場合、ドロップ処理の監視を開始するまでの処理を示す。
ステップS800において、コンテンツ表示部312は、ウェブブラウザ内において発生したマウスイベントに基づき、メイン画面500に関わるマウスイベント情報を取得する。ステップS801において、コンテンツ表示部312は、当該取得したマウスイベント情報に含まれるマウスイベント種類を取得する。
ステップS802において、マウスイベント制御部313は、マウスイベント種類がドラッグアウト以外である(メイン画面500内でのドラッグなどのマウス操作)と判断した場合、ステップS803に遷移する。一方、マウスイベント種類が、コンテンツをメイン画面500外にドラッグするドラッグアウトであると判断した場合、ステップS804に遷移する。
ステップS803において、コンテンツ表示部312は、当該為されたマウスイベント(メイン画面500内でのドラッグなど)に応じて、コンテンツを再描画して、処理を終了し、次のマウスイベントの発生を待機する。
ステップS804において、コンテンツ表示部312は、当該ドラッグアウトされたコンテンツに関する情報(ドラッグ元コンテンツ情報)を取得し、ブリッジデータ保持部314に送信する。ここで、ドラッグ元コンテンツ情報とは、該ドラッグアウトされたコンテンツを特定するためのURI情報(例えば文書管理サーバに保存されているコンテンツを特定するためのURL情報)、およびコンテンツの種類を示す情報を含むものとする。ステップS805において、ブリッジデータ保持部314は、コンテンツ表示部312から受信したドラッグ元コンテンツ情報を、ドラッグ開始通知としてマウスイベント制御部313に送信する。
マウスイベント制御部313は、ブリッジデータ保持部314からドラッグ開始通知としてドラッグ元コンテンツ情報を受信すると、ドラッグオブジェクトを生成して(S806)、更に、ドラッグ元コンテンツ情報をドラッグオブジェクトに保存する(S807)。ステップS808において、マウスイベント制御部313は、ドラッグ元コンテンツ情報が設定されたドラッグオブジェクトを、クライアントPC20のOSに登録することにより、ウェブブラウザ外でドロップ操作が行われたかの監視を開始する。
<コンテンツをフォルダにダウンロードする処理(S30)>
図9は、ウェブブラウザ外でコンテンツのドロップ操作が為された場合に、コンテンツをダウンロードする処理の流れを示すフローチャートである。
ステップS900において、マウスイベント制御部313は、ドラッグオブジェクトをドロップするドロップ操作のマウスイベントをOSから受信する。
ステップS901において、マウスイベント制御部313は、ドラッグオブジェクトに保存されているドラッグ元コンテンツ情報の種類がフォルダであるかファイルであるか判断する。ドラッグ元コンテンツ情報の種類がフォルダである場合、マウスイベント制御部313は、文書管理サーバPC10にドラッグ元コンテンツ情報を送信して、当該フォルダ内に含まれるダウンロード対象のコンテンツのリスト(コンテンツリスト)の取得リクエストを行い、ステップS902に遷移する。一方、ドラッグ元コンテンツ情報の種類がファイルである場合、ステップS903に遷移する。
ステップS902において、文書管理サーバPC10は、マウスイベント制御部313から受信したドラッグ元コンテンツ情報により特定されるフォルダの配下に含まれる全てのコンテンツの情報(コンテンツ情報)を取得する。コンテンツ情報には、該コンテンツを特定するためのURI情報が含まれる。そして、該フォルダと該フォルダに含まれる全てのコンテンツとに関するコンテンツ情報のリスト(コンテンツリスト)を、マウスイベント制御部313に返却する。
ステップS903において、マウスイベント制御部313は、コンテンツ種類がファイルであった場合は、そのファイルのコンテンツ情報を、処理対象のコンテンツリストとして設定する。また、マウスイベント制御部313は、コンテンツ種類がフォルダであった場合は、ステップS902で文書管理サーバPC10から送信されたコンテンツ情報のリストを、処理対象のコンテンツリストとして設定する。
ステップS904において、マウスイベント制御部313は、コンテンツリスト取得完了をブリッジデータ保持部314に通知する。ステップS905において、ブリッジデータ保持部314は、マウスイベント制御部313からコンテンツリスト取得完了通知を受信すると、更に、コンテンツ表示部312にコンテンツリスト取得完了通知を送信する。ステップS906において、コンテンツ表示部312は、ブリッジデータ保持部314から受信したコンテンツリスト取得完了通知に基づいて、進捗状況をメイン画面500上に表示する。
ステップS907はループ端の開始記号であり、コンテンツリストに設定されているコンテンツ情報を順に処理対象として、S908〜S913の処理を繰り返し行う。
ステップS908において、マウスイベント制御部313は、処理対象のコンテンツ情報の種類を確認する。コンテンツ情報の種類がフォルダである場合、ステップS909に遷移する。一方、コンテンツ情報の種類がファイルである場合、マウスイベント制御部313は、コンテンツ情報を文書管理サーバPC10に送信して、ファイルのダウンロード指示を行い、ステップS910に遷移する。
ステップS909において、マウスイベント制御部313は、ダウンロード先のフォルダ内に、コンテンツ情報に対応するフォルダを作成する。
ステップS910において、文書管理サーバPC10は、マウスイベント制御部313から受信したコンテンツ情報に基づいてダウンロード対象のコンテンツ(ファイル)を特定し、クライアントPC20に当該特定したファイルの送信を開始する。
ステップS911において、マウスイベント制御部313は、ダウンロード進捗通知をブリッジデータ保持部314に送信する。ダウンロード進捗の情報の一例としては、ダウンロード済みのファイルの件数や、コンテンツリスト中のダウンロード済みファイルのパーセンテージなどがあるが、それ以外の情報であっても構わない。
ステップS912において、ブリッジデータ保持部314は、マウスイベント制御部313からダウンロード進捗の情報を受信すると、当該受信したダウンロード進捗の情報をコンテンツ表示部312に送信する。ステップS913において、コンテンツ表示部312は、ブリッジデータ保持部314から受信したダウンロード進捗の情報に基づいて、進捗状況をメイン画面500上に表示するように制御する。
ステップS914はループ端の終了記号であり、コンテンツリストに設定されている全てのコンテンツ情報を処理対象としてS908〜S913の処理の実行が行われれば、ループを抜けてS915の処理に遷移する。
ステップS915において、ダウンロード対象のコンテンツ(ファイル)全てのダウンロードが終了すれば、マウスイベント制御部313は、ブリッジデータ保持部314にダウンロード完了通知を送信する。ステップS916において、ブリッジデータ保持部314は、マウスイベント制御部313からダウンロード完了通知を受信すると、コンテンツ表示部312にダウンロード完了通知を送信する。ステップS917において、コンテンツ表示部312は、ブリッジデータ保持部314からダウンロード完了通知を受信すると、ダウンロード完了メッセージをメイン画面500上に表示する。
上述したように構成することにより、RIAにより表示されたコンテンツのダウンロードを、D&D操作で実行することができる。
<コンテンツのダウンロード処理とアップロード処理の切り替え>
D&Dによるファイルのダウンロード処理とアップロード処理の切り替えは、以下のようにして行われる。すなわち、ドラッグが開始されたときのマウスイベントが、ウェブブラウザ上のRIAにより表示されているメイン画面500内のコンテンツに対するドラッグであると判断した場合は、上述した図6〜9の処理によりダウンロード処理が実行される。一方、ドラッグが開始されたときのマウスイベントが、OS等のファイルシステムで管理されているファイルに対するドラッグであり、更に、ウェブブラウザ上のRIAにより表示されているメイン画面500内のフォルダに対するドロップであると判断した場合は、後述する図10〜14の処理によりアップロード処理が実行される。アップロード処理は、特許文献2におけるアップロード処理と同様である。
<ファイルのアップロード処理の詳細>
図10は、ウェブブラウザ上でRIAを用いてフォルダを表示した後、クライアントPC20のOSなどで管理されているファイルをD&Dすることにより、文書管理サーバPC10上の対応するフォルダにアップロードするまで一連の流れを示すシーケンスである。
シーケンスは大きく分けて以下の5つの処理に分かれている。すなわち、フォルダを表示するフロー(S40)、マウスイベント情報を取得するフロー(S50)、マウス座標からフォルダに重なっているかを検知するフロー(S60)、ファイルをフォルダにアップロードするフロー(S70)、エラーメッセージを表示するフロー(S80)である。各処理の詳細について以下に記す。なお、ステップS40の処理については、図6のS10と同様のため、詳細な説明を省略する。
ステップS50において、マウスイベント制御部313は、クライアントPCのOSで発生したマウスイベントを取得し、当該取得したマウスイベントに基づきマウスの位置がメイン画面500内にあれば、マウスイベント情報としてブリッジデータ保持部314に設定する。マウスイベント情報は、イベント種類、座標位置、ドラッグされている選択ファイル(または選択フォルダ)の情報を含んでいる。ここで、イベント種類は、マウスがメイン画面500に入った事を示すドラッグエンター、マウスがメイン画面500上でドラッグ中を示すドラッグオーバー、マウスがメイン画面500から出たことを示すドラッグアウト、メイン画面500上にドラッグされた選択ファイル(フォルダ)がドロップされたことを示すドロップがある。マウスイベント制御部313は、マウスイベント情報をブリッジデータ保持部314に保存した旨を、ウェブブラウザ400に通知する。
ステップS60において、ウェブブラウザ400は、ブリッジデータ保持部314に保持されているマウスイベント情報を取得し、当該取得したマウスイベント情報をコンテンツ表示部312に設定(通知)する。コンテンツ表示部312は、設定されたマウスイベント情報に含まれている座標位置を取得し、メイン画面500に表示しているフォルダの座標位置と比較することにより、表示中のフォルダにマウスが重なっているかを検知する。フォルダとの重なりを検知した場合、コンテンツ表示部312は、当該重なっていると判定したフォルダに関するフォルダ情報をウェブブラウザ400に設定する。ウェブブラウザ400は、当該設定されたフォルダ情報をアップロード先のフォルダ情報としてブリッジデータ保持部314に保存し、更に、該フォルダ情報をブリッジデータ保持部314に保存した旨を、マウスイベント制御部313に通知する。なお、フォルダ情報に関しては、マウス座標位置とフォルダとが重なっていると判定した後に設定するのではなく、コンテンツ表示部312が、アップロードを行うかどうかを促す画面を表示して、ユーザからのアップロード指示を受けた時に設定しても良い。また、ユーザからのアップロードをキャンセルする指示を受けた時には、設定しないようにしても良い。
ステップS70において、マウスイベント制御部313は、ブリッジデータ保持部314からアップロード先のフォルダ情報とアップロード対象の選択ファイル(選択フォルダ)の情報とを取得する。マウスイベント制御部313は、文書管理サーバPC10のアップロード先のフォルダへ、当該選択対象のファイル(またはフォルダ)をアップロードする。文書管理サーバPC10は、指示を受けたアップロード先のフォルダに、当該受信したファイル(フォルダ)を登録する。そして、文書管理サーバPC10は、登録結果をマウスイベント制御部313へ返す。登録結果は、正常に登録が行われたのか、エラーが発生したのかを示す一意の処理結果番号を含んでいる。マウスイベント制御部313は、処理結果番号がエラーと判断した場合、エラー情報としてエラーコード(処理結果番号)をブリッジデータ保持部314へ設定保存し、更に、ウェブブラウザ400にエラー情報設定の通知を行う。
ステップS80において、ウェブブラウザ400は、エラー情報設定の通知を受けると、エラー情報をブリッジデータ保持部314から取得し、当該取得したエラー情報をコンテンツ表示部312に設定する。コンテンツ表示部312は、当該設定されたエラー情報に基づいてエラーコードに対応するエラーメッセージを表示する。
次に、上述したS50〜S80の各処理の詳細について、フローチャートを用いて説明する。
<マウスイベント情報を取得する処理(S50)の詳細>
図11は、マウスイベント制御部313がOSからのマウスイベントに基づきマウスイベント情報を取得し、ブリッジデータ保持部314へ当該マウスイベント情報を保存する処理の流れを示すフローチャートである。
ステップS1000において、マウスイベント制御部313は、OSからのマウスイベントに基づき、メイン画面500に関わるマウスイベント情報を取得する。ステップS1001において、マウスイベント制御部313は、当該マウスイベント情報に含まれるマウスイベント種類を求める。
ステップS1002において、マウスイベント制御部313は、マウスイベント種類がドラッグエンターと判断した場合、S1003に進む。S1003において、マウスイベント制御部313は、マウスイベント情報に含まれるドラッグ元のファイル情報(ドラッグされているファイルの情報)を、ブリッジデータ保持部314に保存する。
一方、S1002において、マウスイベント種類がドラッグエンター以外と判断した場合、S1004に進み、マウスイベント制御部313は、マウスイベント種類がドラッグオーバー、ドラッグアウト、ドロップのいずれかであるか否かを判断する。そして、マウスイベント種類がドラッグオーバー、ドラッグアウト、ドロップのいずれかであると判断した場合はS1005に進む一方、それ以外と判断した場合は処理を終了する。
ステップS1005において、マウスイベント制御部313は、マウスイベント情報に含まれるマウスイベント種類を、ブリッジデータ保持部314に保存する。ステップS1006において、マウスイベント制御部313は、マウスイベント情報に含まれているマウス座標位置を取得し、当該マウス座標位置をメイン画面500の左上を起点とした相対座標に変換した後、ブリッジデータ保持部314に保存する。ステップS1007において、マウスイベント制御部313は、ブリッジデータ保持部314にマウスイベント情報を保存した旨を、ウェブブラウザ400に通知する。
<マウスが表示フォルダに重なっているかを検知する処理(S60)の詳細>
図12は、マウスイベント情報に含まれているマウス座標位置に基づいて、マウスと重なるフォルダを検知する処理の流れを示すフローチャートである。
ステップS1100において、ウェブブラウザ400は、S1007で為されたマウスイベント情報保存の通知を受けると、ブリッジデータ保持部314に保存されているマウスイベント情報を取得して、コンテンツ表示部312に設定する。
ステップS1101において、コンテンツ表示部312は、当該設定されたマウスイベント情報に含まれているマウス座標位置を取得する。
ステップS1102はループ端を示しており、コンテンツ表示部312は、ツリー表示領域502およびコンテンツ表示領域503に表示しているフォルダそれぞれを順に判定対象として、S1103〜S1105の処理を繰り返し行う。
ステップS1103において、コンテンツ表示部312は、判定対象のフォルダに関するフォルダ表示領域510の座標位置(図5の520〜540)を取得する。
ステップS1104において、コンテンツ表示部312は、マウス座標のX座標値と当該判定対象フォルダのフォルダ表示領域のX座標範囲とを比較し、マウス座標が範囲内にあると判断した場合は、ステップS1105に進む。ステップS1105では、コンテンツ表示部312は、更に、マウス座標のY座標値とフォルダ表示領域のY座標範囲とを比較し、マウス座標が範囲内にあると判断した場合は、ループ処理を終了してステップS1107に進む。
ステップS1106はループの終了を示すループ端であり、S1104またはS1105でマウス座標が当該判定対象のフォルダのフォルダ表示範囲外であると判定した場合、判定対象フォルダを次のフォルダに変更してS1103〜S1105の処理を行う。なお、表示しているフォルダ全てとの判定が終わった場合は、マウス座標に重なっているフォルダが無いと判断して、ループ処理を終了する。
ステップS1107において、コンテンツ表示部312は、マウス座標がフォルダと重なっていると検知した場合、ステップS1108に進み、コンテンツ表示部312は、マウスイベント情報に含まれているマウスイベント種類を取得する。
ステップS1109において、コンテンツ表示部312は、当該取得したマウスイベント種類がドラッグオーバーであるかドロップであるか判断する。コンテンツ表示部312は、ドラッグオーバーであると判断した場合、S1110に進み、メイン画面500に表示されているフォルダのうち、当該マウス座標と重なっていると判断したフォルダをフォーカス表示(強調表示)する。
一方、S1109でドロップであると判断した場合は、ステップS1111に進み、コンテンツ表示部312は、当該マウス座標と重なっていると判断したフォルダに関するフォルダ情報を作成してウェブブラウザ400へ返す。なお、ここで作成されるフォルダ情報は、名称やフォルダを示す一意のIDをひとまとめにした情報(すなわち、アップロード先となるフォルダを識別するための情報)である。
ステップS1112において、ウェブブラウザ400は、ファイルがドロップされたフォルダに関するフォルダ情報が返ってきた(すなわちフォルダ情報が設定された)と判断した場合、ステップS1113に進んで、当該フォルダ情報をブリッジデータ保持部314へ保存する。
ステップS1114において、ウェブブラウザ400は、フォルダ情報をブリッジデータ保持部314に保存した旨を、マウスイベント制御部313へ通知する。
<ファイルをアップロードする処理(S70)の詳細>
図13は、マウスイベント制御部313が、ブリッジデータ保持部314に保存されているフォルダ情報を取得して、ドラッグされていたファイルを、文書管理サーバPC10の対象フォルダにアップロードする処理の流れを示すフローチャートである。
ステップS1200において、マウスイベント制御部313は、S1113でブリッジデータ保持部314に保存されたフォルダ情報(アップロード先となるフォルダの情報)を取得する。
ステップS1201において、マウスイベント制御部313は、S1003でブリッジデータ保持部314に保存されたドラッグ元ファイル情報(ドラッグ対象のファイルに関する情報)を取得する。
ステップS1202において、マウスイベント制御部313は、ドラッグ元ファイル情報に含まれているファイルパスを取得し、当該取得したファイルパスに基づいて特定される当該対象ファイルの読み込みを行う。
ステップS1203において、マウスイベント制御部313は、当該読み込んだ対象ファイルを、S1200で取得したフォルダ情報に基づいて特定されるフォルダにアップロードを試みる。
ステップS1204において、文書管理サーバPC10のコンテンツ制御部302は、当該指定されたフォルダにアップロードする権限があるかどうか判断し、権限が無いと判断した場合は、ステップS1209に進む。
一方、ステップS1204でアップロード権限があると判断した場合は、ステップS1205に進み、コンテンツ制御部302は、当該対象ファイルに不正なファイル名が指定されているか否か判断を行う。なお、不正なファイル名の定義については、内部リソースとして定義しても良いし、外部ファイルに定義しても良い。S1205で正しいファイル名が指定されていない(不正なファイル名である)と判断した場合はステップS1209に進む。
コンテンツ制御部302は、ステップS1205で正しいファイル名が指定されている(不正なファイル名ではない)と判断した場合、ステップS1206に進み、アップロード先のフォルダ内に同名のファイルが存在するか否かを判断する。コンテンツ制御部302は、ステップS1206で同名ファイルが無いと判断した場合は、ステップS1208に進む一方、ステップS1206で同名ファイルがあると判断した場合は、ステップS1207に進む。
ステップS1207において、コンテンツ制御部302は、当該対象ファイルでアップロード先にある同名ファイルを上書きするか否か判断する。S1207で上書きする(例えば上書きモードである)と判断した場合はステップS1208に進み、上書きしないと判断した場合はステップS1209に進む。
ステップS1208において、コンテンツ制御部302は、当該対象ファイルをアップロード先のフォルダに登録する登録処理を行い、登録が正常終了した旨をマウスイベント制御部313へ返す。
ステップS1209において、コンテンツ制御部302は、どのようなエラーが生じたのかを識別するためのエラーコードを含むエラー情報を作成し、マウスイベント制御部313へ返す。
ステップS1210において、マウスイベント制御部313は、エラー情報が返されたか否かを判断し、エラー情報が返されてきたと判断した場合は、ステップS1211に進み、当該エラー情報をブリッジデータ保持部314へ保存する。
ステップS1212において、マウスイベント制御部313は、ブリッジデータ保持部314にエラー情報を保存した旨を、ウェブブラウザ400へ通知する。
<エラーメッセージを表示するフロー(S80)>
図14は、ウェブブラウザ400が、ブリッジデータ保持部314からエラー情報を取得して、コンテンツ表示部312に設定し、コンテンツ表示部312がエラーメッセージを表示する処理を示すフローチャートである。
ウェブブラウザ400は、マウスイベント制御部313からS1212におけるエラー情報保存の通知を受けると、ステップS1300において、ブリッジデータ保持部314からエラー情報を取得し、当該取得したエラー情報をコンテンツ表示部312に設定する。
ステップS1301において、コンテンツ表示部312は、当該設定されたエラー情報に含まれているエラーコードを取得する。
ステップS1302において、コンテンツ表示部312は、当該取得したエラーコードに対応するエラーメッセージを取得する。なお、各エラーコードに対応するエラーメッセージは、内部リソースとして予め定義されていても良いし、外部ファイルに定義されていても良い。
ステップS1303において、コンテンツ表示部312は、エラーコードとエラーメッセージを画面に表示する。
上述したように、コンテンツのダウンロード処理とアップロード処理とを、D&D操作で容易に切り替えることができる。
[実施例2]
本発明の実施例2に係るシステムの処理の流れについて、図15を用いて概要を説明する。
文書管理サーバには、各ファイルの過去バージョンを保存するバージョン管理機能を有するものがある。実施例1においては、図7のフローにおいて表示しているファイルは、各フォルダの配下にあるファイルの最新版であるため、過去バージョンのダウンロードについては考慮されていなかった。実施例2では、ファイルの過去バージョンのダウンロードについて記載する。なお、実施例2は、図7のフローについて拡張を行うものであり、それ以外の部分については、実施例1と同じである。以下、異なる部分についてフローチャートを用いて説明する。
<過去バージョンのコンテンツを表示する(S1400)>
図15は、図7のフローにより表示されたファイルに対して、ユーザにより過去バージョンを表示するように指示された場合の処理の流れを示すフローチャートである。ウェブブラウザ400上のメイン画面500に、文書管理サーバPC10から特定のファイルの過去バージョンのファイル情報を取得して、各バージョンのファイルを表示する。
ステップS1400において、コンテンツ表示部312は、ユーザにより指定されたファイルの過去バージョンに関する情報を取得するためのリクエスト情報を作成し、文書管理サーバPC10に該ファイルの過去バージョン取得リクエストを送信する。
ステップS1401において、文書管理サーバPC10のコンテンツ制御部302は、過去バージョン取得リクエストを受信すると、当該指定されたファイルの過去バージョンのファイル情報をコンテンツ制御部302から取得する。そして、コンテンツ制御部302は、当該取得した過去バージョンのファイル情報を、レスポンスとしてコンテンツ表示部312へ送信する。
ステップS1402はループ端の開始記号であり、当該受信したファイルの過去バージョンそれぞれを順に処理対象として、S1403の処理を繰り返し行う。ステップS1403において、コンテンツ制御部312は、処理対象の過去バージョンのファイルの情報をコンテンツ表示領域502にリスト形式で表示する。ステップS1404はループ端の終了記号であり、全ての過去バージョンに対してS1403の処理を行ったら、ループを抜けて処理を終了する。
図15の処理により表示された過去バージョンのファイルのアイコンに対してD&D操作が行われた場合は、実施例1の図6のS20〜S30で説明した処理と同様の処理を行うことにより、RIAにより表示されている過去バージョンのファイルをD&D操作でダウンロードすることができる。
[実施例3]
上述した実施例1〜2の図9の処理によりダウンロードしたファイルのOSのファイルシステムにおける更新日時は、ダウンロードを実行した日時となるので、文書管理サーバPC10上で管理している更新日時とは差異が発生する。これに対し、実施例3では、図9のフローについて拡張を行うものであり、それ以外の部分については、実施例1〜2と同様である。以下、本発明の実施例3に係るシステムの処理の流れについて、図16を用いて概要を説明する。
図16は、図9のフローのS910〜S911の間の処理を拡張するものであり、ダウンロードしたファイルの更新日時を、文書管理サーバPC10で管理している更新日時に合わせる処理を示すフローチャートである。すなわち、図9のフローに対して追加するステップ(S1500〜S1502)は、ステップS910およびS911の間に挿入される。
ステップS1500において、マウスイベント制御部313は、文書管理サーバPC10に対して、S902で取得したダウンロード済みファイルのURLを指定して、文書管理サーバPC10上における該ファイルの更新日時の取得リクエストを送信する。
ステップS1501において、文書管理サーバPC10は、受信したURLにより特定されるファイルの文書管理サーバPC10上で管理している更新日時を取得し、マウスイベント制御部313に返却する。
ステップS1502において、マウスイベント制御部313は、受信したファイルの更新日時をダウンロード済みのファイルに適用する。
[実施例4]
実施例1においては、ドロップ先がクライアントPC20上のOSのファイルシステムにおけるフォルダであり、そのフォルダへのダウンロードを実現するものであった。本実施例4では、ドロップ先が、クライアントPC20のデスクトップ上に配置された、ファイルのドロップを受け入れるウィジェットのようなプログラムに関して記載する。ウィジェットの機能としては、ウィジェット上にドロップしたファイルを印刷するなどが考えられるが、それ以外の機能を持つものでも構わない。以下、実施例4に係るシステムの処理の流れについて、図17を用いて概要を説明する。
図17は、図9のフローを拡張するものであり、クライアントPC20のデスクトップ上に配置されたウィジェットにコンテンツがドロップされた場合に、コンテンツがウィジェットプログラムにダウンロードされる処理の流れを示すフローチャートである。以下、図9と異なる部分について説明する。
図17は、図9に対してステップS900の前にステップS1600を追加し、ステップS917の後にステップS1601〜S1602を追加している。
ステップS1600において、ウィジェットプログラムは、マウスのドロップイベントを受信すると、該ドロップ操作がなされたことを示すドロップイベントをマウスイベント制御部313に送信する。ステップS900〜ステップS915の処理は、図9と同様のため、説明を割愛する。
ステップS1601において、マウスイベント制御部313は、クライアントPC20にダウンロードしたファイルのファイルパスをウィジェットプログラムに返却する。
ステップS1602において、ウィジェットプログラムは、受信したファイルパスを保存し、更に、当該保存したファイルパスを利用することにより、当該クライアントPC20にダウンロードしたファイルを操作することが可能となる。例えば、ウィジェットプログラムがファイル印刷機能を有するものであれば、ファイルパスに基づいて該ファイルを特定して印刷することが可能となる。
[その他の実施例]
また、本発明は、以下の処理を実行することによっても実現される。その処理は、上述した実施例の機能を実現させるソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (11)

  1. ウェブブラウザ上で動作する第1の拡張プログラムと第2の拡張プログラムとを含む文書管理プログラムであって、
    前記第1の拡張プログラムは、コンピュータを、
    文書管理サーバで管理されているコンテンツの情報を取得する第1の取得手段、
    前記第1の取得手段で取得した情報にしたがって、前記文書管理サーバで管理されているコンテンツを、前記ウェブブラウザ上に定義された表示領域内に表示する表示手段、
    前記ウェブブラウザ上で発生したマウスイベント情報が、前記表示手段により表示されたコンテンツが前記表示領域外にドラッグされたことを示すドラッグアウトであると判断した場合、当該ドラッグされたコンテンツの情報をブリッジデータ保持部に書き込む第1の保存手段、
    として機能させ、
    前記第2の拡張プログラムは、前記コンピュータを、
    前記ブリッジデータ保持部に書き込まれた前記コンテンツの情報を受信して、当該受信したコンテンツの情報を含むドラッグオブジェクトを生成し、当該ドラッグオブジェクトが前記ウェブブラウザ外でドロップされたか監視する監視手段、
    前記ドラッグオブジェクトが前記ウェブブラウザ外でドロップされた場合、当該ドラッグオブジェクトに含まれる前記コンテンツの情報を用いて、文書管理サーバに該当するコンテンツを送信するように指示することによりダウンロード処理を実行するダウンロード手段、
    として機能させることを特徴とする文書管理プログラム。
  2. 前記コンテンツは、ファイルまたはフォルダの少なくともいずれかであることを特徴とする請求項1に記載の文書管理プログラム。
  3. 前記ブリッジデータ保持部に書き込まれた前記コンテンツの情報は、該コンテンツのURI情報であることを特徴とする請求項1に記載の文書管理プログラム。
  4. 前記監視手段は、前記ドラッグオブジェクトをOSに登録することにより、当該ドラッグオブジェクトが前記ウェブブラウザ外でドロップされたか監視することを特徴とする請求項1に記載の文書管理プログラム。
  5. 前記ドラッグされたコンテンツがフォルダであった場合、前記ダウンロード手段は、当該ドロップされたドラッグオブジェクトに含まれるフォルダの情報に基づいて、前記文書管理サーバから当該フォルダの配下に含まれるファイルの情報を取得し、更に、当該取得したファイルの情報を用いて、前記文書管理サーバに該当するファイルを送信するように指示することによりダウンロード処理を実行することを特徴とする請求項1に記載の文書管理プログラム。
  6. 前記表示手段は、前記文書管理サーバで管理されているコンテンツの過去バージョンのコンテンツを、前記ウェブブラウザ上に定義された表示領域内に表示し、
    前記ドラッグされるコンテンツは前記過去バージョンのコンテンツであることを特徴とする請求項1に記載の文書管理プログラム。
  7. 前記ダウンロード手段は、前記文書管理サーバ上で管理されている前記コンテンツの更新日時を前記文書管理サーバから取得し、当該取得した前記文書管理サーバ上で管理されている前記コンテンツの更新日時を用いて、前記ダウンロードしたコンテンツの更新日時を更新することを特徴とする請求項1に記載の文書管理プログラム。
  8. 前記ダウンロード手段は、前記ドラッグオブジェクトのドロップ先がウィジェットプログラムであった場合、当該ダウンロードされたコンテンツのファイルパスを前記ウィジェットプログラムに通知することを特徴とする請求項1に記載の文書管理プログラム。
  9. ドラッグが開始されたときのマウスイベントが、前記ウェブブラウザ外に表示されているファイルに対するドラッグであり、且つ、前記表示手段により表示された表示領域内のコンテンツに対してドロップされた場合、当該ドラッグされたファイルのアップロード処理を実行することを特徴とする請求項1に記載の文書管理プログラム。
  10. 請求項1乃至9のいずれかに記載の文書管理プログラムを格納した、コンピュータ読み取り可能な記憶媒体。
  11. ウェブブラウザ上で動作する第1の拡張プログラムと第2の拡張プログラムとを格納したコンピュータ読み取り可能な記憶媒体と、前記ウェブブラウザのプログラムと前記第1の拡張プログラムと前記第2の拡張プログラムとを実行するCPUと、を含む情報処理装置であって、
    前記第1の拡張プログラムは、前記CPUを、
    文書管理サーバで管理されているコンテンツの情報を取得する第1の取得手段、
    前記第1の取得手段で取得した情報にしたがって、前記文書管理サーバで管理されているコンテンツを、前記ウェブブラウザ上に定義された表示領域内に表示する表示手段、
    前記ウェブブラウザ上で発生したマウスイベント情報が、前記表示手段により表示されたコンテンツが前記表示領域外にドラッグされたことを示すドラッグアウトであると判断した場合、当該ドラッグされたコンテンツの情報をブリッジデータ保持部に書き込む第1の保存手段、
    として機能させ、
    前記第2の拡張プログラムは、前記CPUを、
    前記ブリッジデータ保持部に書き込まれた前記コンテンツの情報を受信して、当該受信したコンテンツの情報を含むドラッグオブジェクトを生成し、当該ドラッグオブジェクトが前記ウェブブラウザ外でドロップされたか監視する監視手段、
    前記ドラッグオブジェクトが前記ウェブブラウザ外でドロップされた場合、当該ドラッグオブジェクトに含まれる前記コンテンツの情報を用いて、文書管理サーバに該当するコンテンツを送信するように指示することによりダウンロード処理を実行するダウンロード手段、
    として機能させる
    ことを特徴とする情報処理装置。
JP2013159179A 2013-07-31 2013-07-31 文書管理プログラム、情報処理装置 Active JP6265644B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013159179A JP6265644B2 (ja) 2013-07-31 2013-07-31 文書管理プログラム、情報処理装置
US14/446,108 US10007415B2 (en) 2013-07-31 2014-07-29 Document management program with drag and drop operations for processing content

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013159179A JP6265644B2 (ja) 2013-07-31 2013-07-31 文書管理プログラム、情報処理装置

Publications (2)

Publication Number Publication Date
JP2015032002A true JP2015032002A (ja) 2015-02-16
JP6265644B2 JP6265644B2 (ja) 2018-01-24

Family

ID=52428845

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013159179A Active JP6265644B2 (ja) 2013-07-31 2013-07-31 文書管理プログラム、情報処理装置

Country Status (2)

Country Link
US (1) US10007415B2 (ja)
JP (1) JP6265644B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6188530B2 (ja) * 2013-10-17 2017-08-30 キヤノン株式会社 文書管理システム、文書管理方法およびプログラム
US9870420B2 (en) * 2015-01-19 2018-01-16 Google Llc Classification and storage of documents

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010028363A1 (en) * 2000-04-10 2001-10-11 Mitsubishi Corporation And Starnet Co., Ltd. Method for receiving and managing electronic files and file-managing device used therefor
JP2006085253A (ja) * 2004-09-14 2006-03-30 Canon Inc 情報処理装置および印刷制御方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
WO2008029774A1 (en) * 2006-09-04 2008-03-13 Visionarts, Inc. Download add-in program, upload add-in program, rewriting add-in program, download method and upload method
JP2010020645A (ja) * 2008-07-11 2010-01-28 Canon Inc 文書管理装置、文書管理システム及び文書管理方法
JP2012216222A (ja) * 2012-06-06 2012-11-08 Konica Minolta Business Technologies Inc 情報処理装置、およびプログラム
JP2012226579A (ja) * 2011-04-20 2012-11-15 Canon Inc 情報処理装置、情報処理方法及びプログラム
JP2012243145A (ja) * 2011-05-20 2012-12-10 Canon Inc 文書管理プログラム、情報処理装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040254913A1 (en) * 1998-01-30 2004-12-16 David Bernstein System, method and apparatus for navigating and selectively pre-caching data from a heterarchical network of databases
US20090064284A1 (en) * 2007-02-26 2009-03-05 Pado Metaware Ab Method and System for Access to Material on a Web Site
US20100005138A1 (en) * 2008-04-21 2010-01-07 Topia Technology Electronic file sharing
US20150193108A1 (en) * 2010-07-30 2015-07-09 Jian Li Drag and Drop Downloading of Content Referenced by Displayed Elements

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010028363A1 (en) * 2000-04-10 2001-10-11 Mitsubishi Corporation And Starnet Co., Ltd. Method for receiving and managing electronic files and file-managing device used therefor
JP2006085253A (ja) * 2004-09-14 2006-03-30 Canon Inc 情報処理装置および印刷制御方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
WO2008029774A1 (en) * 2006-09-04 2008-03-13 Visionarts, Inc. Download add-in program, upload add-in program, rewriting add-in program, download method and upload method
JP2010020645A (ja) * 2008-07-11 2010-01-28 Canon Inc 文書管理装置、文書管理システム及び文書管理方法
JP2012226579A (ja) * 2011-04-20 2012-11-15 Canon Inc 情報処理装置、情報処理方法及びプログラム
JP2012243145A (ja) * 2011-05-20 2012-12-10 Canon Inc 文書管理プログラム、情報処理装置
JP2012216222A (ja) * 2012-06-06 2012-11-08 Konica Minolta Business Technologies Inc 情報処理装置、およびプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
""ダウンロード編 欲しい物は全部落とす それがネットの醍醐味"", ネットランナー, vol. 第6巻, 第10号, JPN6017016315, 1 October 2004 (2004-10-01), JP, pages 22 - 27 *
アレックス・マッカウ, "ステートフルJAVASCRIPT", vol. 初版, JPN6017016314, 11 June 2012 (2012-06-11), pages 93 - 99 *

Also Published As

Publication number Publication date
JP6265644B2 (ja) 2018-01-24
US20150039997A1 (en) 2015-02-05
US10007415B2 (en) 2018-06-26

Similar Documents

Publication Publication Date Title
CN102939583B (zh) 创建任务会话
KR102113147B1 (ko) 문서 관리 서버 및 문서 관리 방법
KR101381535B1 (ko) 정보 처리 장치, 제어 방법 및 컴퓨터 판독가능한 기억 매체
JP5655347B2 (ja) 画像処理制御プログラム、及び画像形成装置
JP5812507B2 (ja) 端末装置及びアノテーション方法並びにコンピュータシステム及びコンピュータプログラム
JP2005338940A (ja) インストール方法、情報処理装置、及びデバイスドライバ
US20090303515A1 (en) Printer driver program, and printing instruction device
US20140026104A1 (en) Display control device, display control method, and program
JP5183770B2 (ja) 文書管理プログラム、情報処理装置
JP2011215738A (ja) 画像形成制御プログラム、及び制御装置
JPWO2008029774A1 (ja) ダウンロード用アドインプログラム、アップロード用アドインプログラム、書き換え用アドインプログラム、ダウンロード方法及びアップロード方法
JP6265644B2 (ja) 文書管理プログラム、情報処理装置
WO2011001945A1 (ja) 画像処理装置、画像処理方法及び記録媒体
JP6303390B2 (ja) 印刷装置、印刷システム及びプログラム
JP6423933B2 (ja) 情報処理装置、帳票管理システム、帳票管理サーバ、情報処理方法、及びそのプログラム
JP6570436B2 (ja) ソフトウェア開発プログラム及びソフトウェア開発方法
JP2010134879A (ja) ビジュアルプログラミング支援装置、ビジュアルプログラミング支援装置のビジュアルプログラミング支援方法、プログラム、および記憶媒体
JP2011244222A (ja) データ送信装置
JPH10307745A (ja) ドキュメント処理システム
JP6061466B2 (ja) 文書管理装置及び方法
JP2017167954A (ja) システム、サーバ、システムの制御方法、サーバの制御方法、及びプログラム
JP2023034112A (ja) 情報処理装置、情報処理方法およびプログラム
RU2575691C2 (ru) Невременный считываемый компьютером носитель информации, хранящий программу управления документами, и устройство обработки информации
JP2014167668A (ja) 文書管理装置、文書管理方法およびそのプログラム
JP2015156077A (ja) 情報処理システム、その制御方法、及びプログラム、並びに情報処理サーバ、その制御方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160721

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170516

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171121

R151 Written notification of patent or utility model registration

Ref document number: 6265644

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151