JP2008289170A - プログラム、記憶媒体、データ管理装置及びデータ管理システム - Google Patents
プログラム、記憶媒体、データ管理装置及びデータ管理システム Download PDFInfo
- Publication number
- JP2008289170A JP2008289170A JP2008151091A JP2008151091A JP2008289170A JP 2008289170 A JP2008289170 A JP 2008289170A JP 2008151091 A JP2008151091 A JP 2008151091A JP 2008151091 A JP2008151091 A JP 2008151091A JP 2008289170 A JP2008289170 A JP 2008289170A
- Authority
- JP
- Japan
- Prior art keywords
- data
- command
- storage device
- response
- data storage
- 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.)
- Pending
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Facsimiles In General (AREA)
Abstract
【課題】汎用性を高め、設計や改良を容易にする。
【解決手段】クライアント側でGUI表示層101が受けたユーザからの指示に従って、データ蓄積手段を有するデジタル複合機(MFP)に対するコマンドを、そのMFPにアクセスするためのコマンドを扱うドキュメントボックスプラグイン103がXMLジェネレータ106にXML形式のデータとして生成させ、ネットファイルラッパ108を介してMFPに送信する。MFP側では、ネットファイル201がこのコマンドを受け付けて適切なアプリにコマンドに対応するジョブの実行を指示すると共に、XML形式の応答データをクライアント側に返す。ドキュメントボックスプラグイン103はネットファイルラッパ108を介してこの応答データを受け取り、XMLパーサ107に解釈させる。
【選択図】図1
【解決手段】クライアント側でGUI表示層101が受けたユーザからの指示に従って、データ蓄積手段を有するデジタル複合機(MFP)に対するコマンドを、そのMFPにアクセスするためのコマンドを扱うドキュメントボックスプラグイン103がXMLジェネレータ106にXML形式のデータとして生成させ、ネットファイルラッパ108を介してMFPに送信する。MFP側では、ネットファイル201がこのコマンドを受け付けて適切なアプリにコマンドに対応するジョブの実行を指示すると共に、XML形式の応答データをクライアント側に返す。ドキュメントボックスプラグイン103はネットファイルラッパ108を介してこの応答データを受け取り、XMLパーサ107に解釈させる。
【選択図】図1
Description
この発明は、データ蓄積装置にコマンドを送信することによってデータ蓄積装置に蓄積しているデータに対して種々の処理を行わせるデータ管理装置、コンピュータをこのようなデータ管理装置として機能させるためのプログラム、このようなプログラムを記録した記録媒体、データ管理装置により制御されるデータ蓄積装置、このようなデータ管理装置とデータ蓄積装置とによって構成されるデータ管理システム、及びデータ蓄積装置の制御方法に関する。
従来から、データ蓄積装置として、文書等のデータを蓄積し、クライアントからの指示に応じてそのデータをプリンタに送信して印刷させたり、クライアントに送信して編集に供したりする文書管理サーバが知られている。そして、近年では、プリンタ、コピー、ファクシミリ(FAX)通信等の機能を備えたデジタル複合機(MFP)に文書等のデータを蓄積するための大容量の不揮発性記憶手段を設け、蓄積しているデータの印刷やFAX送信が自身で可能なデータ蓄積装置として用いることも行われている。そして、これらのデータ蓄積装置にコマンドを発してその動作を指示するクライアント装置であるデータ管理装置と組み合わせ、データ管理システムとして運用することも行われている。
このようなデータ蓄積装置は、パーソナルコンピュータ(PC)等のクライアント装置からのコマンドに従って種々の動作を行うが、従来、これらのコマンドは装置毎の一連のコマンドセットとして設計されていた。そして、データ蓄積装置側とクライアント側の両方にこのコマンドセットに対応するためのプログラムをインストールする等して、設計したコマンドセットによる動作指示を可能にしていた。
しかしながら、このようなコマンドセットを用いる場合、例えば新たなコマンドを設けてデータ蓄積装置に新たな動作を行わせようとする場合には、データ蓄積装置側のコマンドセットを改良して新たなコマンドに対応させるだけでなく、クライアント側についても全ての装置でこの改良に対応した更新を行う必要があった。なぜなら、クライアント側で更新を行わなかった場合、データ蓄積装置に送信するコマンドに必要なデータが含まれない等の理由によりデータ蓄積装置が従来のコマンドすら正常に解釈できないといった事態が発生し得るからである。
従って、必ずしも新機能への対応を必要としないクライアント装置にまで新たなコマンドに対応するための更新を行う必要があり、データ管理システムを運用するために余計な労力を有するという問題があった。この問題は、多数のクライアント装置からデータ蓄積装置に対してコマンドを送信可能なシステムを構成する場合に特に顕著である。
さらに、コマンドセット自体も、コマンド相互間の関連性を考慮して設計しなければならないため、汎用性が低く、新機能の追加や他機種への流用を容易に行うことができないので、新機能や新機種の設計に大きな労力を必要とするという問題もあった。
この発明は、このような問題を解決し、データ蓄積装置に対して動作を指示するためのプログラムや装置の汎用性を高め、設計や改良を容易にすることを目的とする。また、データ管理装置とデータ蓄積装置とによって構成されるデータ管理システムにおいても、各装置の汎用性を高め、設計や改良を容易にすることを目的とする。
上記の目的を達成するため、この発明は、データ蓄積装置とデータの授受が可能なように接続されたコンピュータを、上記データ蓄積装置に対するコマンドを構造化文書形式で生成するコマンド生成手段と、その手段が作成したコマンドを上記データ蓄積装置に送信するコマンド送信手段と、送信したコマンドに対する上記データ蓄積装置からの構造化文書形式の応答データを受信する応答受信手段と、その手段が受信した応答データを解釈する応答解釈手段として機能させるためのプログラムを提供する。
上記コマンドはXML形式等の構造化文書形式で表現されている。データ蓄積装置が上記コマンドを受信すると、コマンドに含まれる理解できる要素のみを認識し、理解できない要素は無視し、一方、期待していた要素が上記コマンドに含まれていなくても、その要素がないものとして取り扱うことができる。従って、例えデータ管理装置のプログラムとデータ蓄積装置のプログラム間にバージョンアップ等に起因するそごが生じても、データ管理装置はデータ蓄積装置を制御することができる。
また、上記データ蓄積装置は、蓄積文書に対する処理手段による処理の結果を、XML等の構造化文書形式で記述し応答データとして返信する。従って、これを受信したデータ管理装置は、受信した上記コマンドを応答解釈手段に解釈させ、これに含まれる理解できる要素のみを認識し、理解できない要素は無視し、一方、期待していた要素が上記コマンドに含まれていなくても、その要素がないものとして取り扱うことができる。従って、例えデータ管理装置のプログラムとデータ蓄積装置のプログラム間にバージョンアップ等に起因するそごが生じても、データ管理装置はデータ蓄積装置による処理の結果を知ることができる。
このようなプログラムに、上記コンピュータを、上記応答解釈手段による解釈結果を表示手段に表示させる手段として機能させるためのプログラムをさらに含めるようにするとよい。
さらに、このプログラムを画像形成手段を有するデータ蓄積装置とデータの授受が可能なように接続されたコンピュータを上記の各手段として機能させるためのプログラムとし、上記コマンドにその画像形成手段による画像形成を指示するコマンドを含めるようにするとよい。
あるいは、このプログラムをファクシミリ通信手段を有するデータ蓄積装置とデータの授受が可能なように接続されたコンピュータを上記の各手段として機能させるためのプログラムとし、上記コマンドにそのファクシミリ通信手段による送信を指示するコマンドを含めるようにするとよい。
さらに、このプログラムをスキャナ配信手段を有するデータ蓄積装置とデータの授受が可能なように接続されたコンピュータを上記の各手段として機能させるためのプログラムとし、上記コマンドにそのスキャナ配信手段による配信を指示するコマンドを含めるようにするとよい。
これらのプログラムにおいて、上記コマンドに上記データ蓄積装置に蓄積されている文書にパスワード等の認証情報が必要かどうかを確認するコマンドを含めるようにするとよい。また、上記パスワード等の認証情報が必要な場合、ユーザが入力した認証情報が正しいかどうかを確認するコマンドを含むようにするとよい。
さらに、これらのプログラムにおいて、上記構造化文書形式として拡張マークアップ言語(XML)形式を用いるとよい。
上記のプログラムにおいて、上記コマンド生成手段が拡張マークアップ言語生成手段を含み、上記応答解釈手段がデータ変換手段を含むようにするとよい。
また、これらのプログラムにおいて、上記コマンド送信手段は上記拡張マークアップ言語生成手段が生成した拡張マークアップ言語形式のデータをSOAPメッセージとして送信し、上記応答受信手段はデータ蓄積装置からの応答データをSOAPメッセージとして受信するようにしてもよい。
また、この発明は、上記のようなプログラムを記録したコンピュータ読み取り可能な記録媒体も提供する。
また、この発明のデータ管理装置は、データ蓄積装置とデータの授受を行うための通信手段を有するデータ管理装置であって、上記データ蓄積装置に対するコマンドを構造化文書形式で作成するコマンド作成手段と、その手段が作成したコマンドを上記データ蓄積装置に送信するコマンド送信手段と、送信したコマンドに対する上記データ蓄積装置からの構造化文書形式の応答を受信する応答受信手段と、その手段が受信した応答を解釈する応答解釈手段とを設けたものである。
また、この発明のデータ蓄積装置は、複数の蓄積文書を蓄積する蓄積手段と、複数の処理手段と、前記データ管理装置からの構造化文書形式のコマンドに基づき、少なくとも一の処理手段にコマンドを実行させ、構造化文書形式の応答データを前記データ管理装置に送信する処理管理手段とを設けたことを特徴とする。
上記コマンドはXML等の構造化文書形式で記述されている。上記データ管理装置から受信した上記コマンドは、上記解釈手段により解釈される。この時、コマンドに含まれる理解できる要素のみを認識し、理解できない要素は無視し、一方、期待していた要素が上記コマンドに含まれていなくても、その要素がないものとして取り扱うことができる。従って、例えデータ管理装置のプログラムとデータ蓄積装置のプログラム間にバージョンアップ等に起因するそごが生じても、データ蓄積装置はデータ管理装置の制御を受けることができる。
また、上記データ蓄積装置は、蓄積文書に対する処理手段による処理の結果を、XML等の構造化文書形式で記述し応答データとして返信する。従って、これを受信したデータ管理装置は、受信した上記コマンドに含まれる理解できる要素のみを認識し、理解できない要素は無視し、一方、期待していた要素が上記コマンドに含まれていなくても、その要素がないものとして取り扱うことができる。従って、例えデータ管理装置のプログラムとデータ蓄積装置のプログラム間にバージョンアップ等に起因するそごが生じても、データ蓄積装置はデータ管理装置による処理の結果を知らせることができる。
また、この発明のデータ管理システムは、このようなデータ管理装置とデータ蓄積装置とによって構成するものである。
また、この発明による、ネットワークを介してデータ蓄積装置を管理する方法は、前記データ蓄積装置に対するコマンドを構造化文書形式で生成するコマンド生成段階と、該段階において作成したコマンドを前記データ蓄積装置に送信するコマンド送信段階と、送信したコマンドに対する前記データ蓄積装置からの構造化文書形式の応答データを受信する応答受信段階と、該段階において受信した応答データを解釈する応答解釈段階とから構成されることを特徴とする。
以上説明してきたように、この発明のデータ管理装置、データ蓄積装置、及びデータ管理システムによれば、装置やシステムの汎用性を高め、設計や改良を容易にすることができる。
また、この発明のプログラムによれば、コンピュータを、汎用性が高く、設計や改良が容易なデータ管理装置として機能させることができる。
また、この発明の記録媒体によれば、上記のプログラムを記憶していないコンピュータにそのプログラムを記憶させ、その実行によって上記のデータ管理装置として機能させることができる。
また、この発明の方法によれば、データ蓄積装置を容易に制御することができる。
以下、この発明の好ましい実施の形態を図面を参照して説明する。
〔実施形態:図1、図2〕
まず、この発明の実施形態である、クライアント装置とデジタル複合機とによって構成されたデータ管理システムについて説明する。まず、図1及び図2を用いてそのデータ管理システムの構成について説明する。図1はそのデータ管理システムにおけるソフトウェア構成を示す構成図、図2はそのデータ管理システムの概略構成を示すブロック図である。
〔実施形態:図1、図2〕
まず、この発明の実施形態である、クライアント装置とデジタル複合機とによって構成されたデータ管理システムについて説明する。まず、図1及び図2を用いてそのデータ管理システムの構成について説明する。図1はそのデータ管理システムにおけるソフトウェア構成を示す構成図、図2はそのデータ管理システムの概略構成を示すブロック図である。
このデータ管理システムは、データ蓄積装置として機能するデジタル複合機(MFP)2と、このMFP2に対して種々のコマンドを発し、蓄積されているデ−タ(蓄積文書)に対する印刷等の処理を行わせるためのデータ管理装置であるクライアント装置として機能するパーソナルコンピュータ(PC)1と、MFP2に蓄積されているデータを複数のトレイに分類整理して保管するための配信サーバ4とを、ネットワーク3を介して接続して構成している。ここで、ネットワーク3としては、ローカルエリアネットワーク(LAN)、イントラネット、インターネット等のいかなるネットワークを用いてもよく、有線であると無線であるとも問わない。
PC1は、ハードウェア構成としては公知のPCと同様である。すなわち、CPU11、ROM12、RAM13、ハードディスクドライブ(HDD)14、ディスプレイインタフェース(I/F)15、ネットワークI/F16を備え、これらがシステムバスによって接続され、またネットワークI/F16を介してネットワーク3に接続されている。そして、HDD14に種々のアプリケーションプログラムをインストールしてCPU11に実行させることにより、様々な機能を果たすことができる。ここでは、PC1をこのデータ管理システムのクライアント装置として機能させるためのプログラムである、図1に示すクライアントモジュール100をインストールしてCPU11に実行させ、CPU11を後述する種々の手段として機能させている。
また、このPC1には、ディスプレイI/F15を介して表示手段であるディスプレイ18が接続されており、このディスプレイ18によって、ユーザからの指示を受け付けるためのグラフィカル・ユーザ・インタフェース(GUI)や動作の結果等の、必要な表示を行うことができる。なお、ディスプレイ18は液晶ディスプレイやブラウン管による公知のものを利用することができ、PC1に内蔵するようにしても構わない。
さらに、図示は省略したが、キーボードやマウス等による操作部も備え、ユーザからの指示や操作を受け付けることができる。
MFP2は、制御部20、プリンタエンジン31、スキャナエンジン32を備えている。そして、制御部20は、CPU21、ROM22、RAM23、データ蓄積手段24、ネットワークI/F25、エンジンI/F26、スキャナI/F27、ファクシミリ(FAX)通信手段28を備え、これらはシステムバス29によって接続されている。
CPU21は、ROM22に格納された図1に示すMFPモジュール200を初めとする各種制御プログラムを実行して、プリンタエンジン31による画像形成、スキャナエンジン32による画像読み取り、ファクシミリ通信手段28による画情報の送受信等を含む各部の動作の制御を行う。また、ネットワークI/F25を介して受信するPC1からのコマンドを解釈し、そのコマンドに対応する動作を実行したり、そのコマンドに対する応答をPC1に返したりする処理も行う。
ROM22は、MFPモジュール200を初めとする各種制御プログラムを記憶する記憶手段である。そして、このROM22を書き換え可能な記憶手段で構成すれば、新たにコマンドや機能を追加する場合等のプログラムのバージョンアップが容易になる。
RAM23は、CPU21のワークメモリとして使用したり、あるいは必要なデータ等を記憶したりするための記憶手段である。
データ蓄積手段24は、文書等のデータを蓄積する手段であり、HDD等の大容量の不揮発性記憶手段によって構成する。ここに記憶させるデータとしては、例えばスキャナエンジン32によって読み取ったりファクシミリ通信手段28によって受信したりした画像データや、ネットワークI/F25を介してPC1から受信した文書データ等が挙げられる。また、データ蓄積手段24にCPU21が実行するプログラムの一部を記憶させるようにしてもよい。
ネットワークI/F25は、MFP2をネットワーク3に接続するためのインタフェースである。また、エンジンI/F26、スキャナI/F27は、それぞれプリンタエンジン31及びスキャナエンジン32と制御部20とを接続するためのインタフェースである。
ファクシミリ通信手段28は、網制御部、FAXモデム等によって構成され、公衆回線を介して他の装置とファクシミリ通信を行うための手段である。
プリンタエンジン31は、与えられたプリントデータに基づいて用紙に画像を形成(印刷)する画像形成手段であり、スキャナエンジン32は、原稿の画像を所定の解像度の画像データとして読み取る手段である。
このように構成されたMFP2は、プリンタ、スキャナ、コピー機、FAX装置等の種々の機能を有する。また、PC1からのコマンドや図示しない操作部からの操作に従って、データ蓄積手段24に蓄積しているデータを管理したり、そのデータの内容をプリンタエンジン31によって画像形成して出力したり、ファクシミリ通信手段28によって他の装置にFAX送信したりすることもできる。
配信サーバ4は、PC1と同様に、CPU41、ROM42、RAM43、ハードディスクドライブ(HDD)44、ディスプレイインタフェース(I/F)45、ネットワークI/F46を備え、これらがシステムバス47によって接続された公知のPCである。またネットワークI/F46を介してネットワーク3に接続されている。配信サーバ4のHDD44には、PCを配信サーバとして動作させるためのアプリケーションプログラム(サーバモジュール)がインストールされている。このアプリケーションプログラムをCPUに実行させることにより、MFP2及びPC1に対して様々なサービスを提供することができる。
また、この配信サーバ4には、ディスプレイI/F45を介して表示手段である図示しないディスプレイが接続されてもよく、このディスプレイによって、管理者からの指示を受け付けるためのグラフィカル・ユーザ・インタフェース(GUI)や動作の結果等の、必要な表示を行うことができる。さらに、図示は省略したが、キーボードやマウス等による操作部も備え、管理者からの指示や操作を受け付けることができる。
この実施形態のデータ管理システムの機能は、このようなハードウェア構成のPC1とMFP2において図1に示す各プログラムを実行させることによって実現されている。そこで、次にこれらの各プログラムについて説明する。なお、配信サーバ4については後述する。
クライアントモジュール100は、上述したように、PC1側で実行させ、PC1をデータ管理装置として機能させるためのプログラムである。そして、GUI表示層101、コントローラ102、ドキュメントボックスプラグイン103、個人文書管理プラグイン104、マイコンピュータプラグイン105、XML(拡張マークアップ言語)ジェネレータ106、XMLパーサ107、ネットファイルラッパ108、SOAPプロキシ109等のプログラムを含む。
GUI表示層101は、ディスプレイ18にGUIを表示させ、ユーザからの指示や操作を受け付けるためのプログラムである。データ蓄積装置に蓄積されているデータから処理すべきデータの選択を受け付けたり、印刷等の指示を受け付けたりする基本動作部分のGUIは、このGUI表示層101が表示させる。
コントローラ102は、各プラグインとGUI表示層101との間でデータの受け渡しを行うためのプログラムである。
ドキュメントボックスプラグイン103、個人文書管理プラグイン104、マイコンピュータプラグイン105の各プラグインは、それぞれ特定の記憶装置あるいは記憶領域に記憶されているデータにアクセスするためのコマンドを集積したプログラムである。例えば、ドキュメントボックスプラグイン103が、MFP2に記憶されているデータにアクセスするためのプログラムである。このようなプラグインは基本的には記憶装置毎に、場合によっては記憶装置の記憶領域毎に設けられている。そして、プラグインを記憶装置毎に設けることにより、記憶装置毎に理解できるコマンドやデータの体系が異なる場合でも、GUI表示層101が受け取ったユーザからの指示を各記憶装置が理解できるコマンドとして送信したり、各記憶装置からの応答をコントローラ102やGUI表示層101が理解できるデータとして返したりすることができる。
またプラグインは、必要に応じて、コントローラ102やGUI表示層101を介さずにディスプレイ18にGUIを表示させ、ユーザからの指示や操作を受け付けることもできる。
XMLジェネレータ106は、与えられたデータに従ってXML形式のデータを生成するプログラムである。そして、ここでは主にドキュメントボックスプラグイン103からの指示に従って、MFP2に送信するコマンドを構造化文書形式である拡張マークアップ言語(XML)形式のデータとして生成する処理を行っている。ここで、構造化文書形式とは、種々のタグを用いて含まれるデータ要素の属性や構造を記述することができる表現形式のことであり、XML形式においては、さらにタグの種類や名称も必要に応じて自由に設定することができる。
XMLパーサ107は、XML形式のデータの内容を解釈し、他のプログラムが理解できる形式のデータに変換するプログラムである。そして、ここでは主にMFP2からのコマンドに対する応答として送られてくるXML形式の応答データをドキュメントボックスプラグイン103が理解できる形式のデータに変換する処理を行っている。
ネットファイルラッパ108は、他の装置とのXML形式のデータの授受を行うためのプログラムであり、XML形式のコマンドをMFPモジュール200のネットファイル201に送信したり、ネットファイル201からXML形式の応答データを受信したりする。そして、このネットファイルラッパ108は、通信先が他の装置である場合でも、ドキュメントボックスプラグイン103には通信先がPC1内にあるように見せることができるので、ネットファイルラッパ108を通して通信を行うことにより、通信先の指定を簡単なもので済ませることができる。なお、このような通信は、ハイパーテキスト転送プロトコル(HTTP)等のプロトコルを用いて行うことができる。
SOAPプロキシ109は、シンプル・オブジェクト・アクセス・プロトコル(SOAP)を用いて、PC1と他の装置との間でXML形式のデータの授受を行うためのプログラムである。SOAPプロキシ109は、XMLジェネレータ106で生成されたXML形式のコマンドを、SOAPエンベロープに格納し、SOAPメッセージとしてネットワーク3を通してMFPモジュール200のSOAPサービス207に送信したり、SOAPサービス207からSOAPメッセージを受信し、受信したSOAPメッセージに格納されているXML形式の応答データをドキュメントボックスプラグイン103に手渡したりする。インターネットの標準技術に基づくSOAPプロトコルを利用することにより、従来の分散オブジェクト技術にあったアーキテクチャ依存性等の問題点を解決することができる。
このようなクライアントモジュール100においては、例えばユーザがGUI表示層101がディスプレイに表示させているGUIからMFP2に蓄積している文書の印刷を指示した場合には、GUI表示層101がその印刷指示をコントローラ102に渡す。そして、コントローラは、MFP2に記憶されているデータにアクセスするためのドキュメントボックスプラグイン103に印刷指示を渡す。ドキュメントボックスプラグイン103は、必要であればディスプレイにGUIを表示させてパスワードや印刷条件の入力を受け付け、その内容をもとにXMLジェネレータ106にXML形式のコマンドを生成させ、ネットファイルラッパ108を通じてMFP2で動作するMFPモジュール200にそのコマンドを送信する。
コマンドがMFP2で処理されると、その応答データはネットファイルラッパ108を介してドキュメントボックスプラグイン103が受け取る。そして、これをXMLパーサ107に解釈させ、さらにコントローラ102が理解できる形式のデータに変換してコントローラ102に返す。そして、ユーザに伝達すべき情報がある場合にはコントローラ102がデータをGUI表示層101に送って必要な表示を行わせることにより、ユーザの指示に従った処理を他の装置(ここではMFP2)に要求すると共に、その結果を表示することができる。結果の表示はドキュメントボックスプラグイン103が行うようにしてもよい。
なお、ここでは図示を省略したが、XMLジェネレータ106、XMLパーサ107、ネットファイルラッパ108、SOAPプロキシ109は、各プラグイン毎に、使用するコマンド、送られてくる応答データ、必要な通信先等に応じた適切なものを用意している。
一方、MFPモジュール200は、MFP2側で実行させ、MFP2をデータ蓄積装置として機能させるためのプログラムである。そして、ネットファイル201及びSOAPサービス207と、コピーアプリ202、プリンタアプリ203、FAXアプリ204、スキャナアプリ205等の各アプリケーションプログラムとを含んでいる。
ネットファイル201は、各アプリケーションプログラムに対するコマンドを取りまとめ、そのコマンドに従って各アプリケーションプログラムを動作させてクライアント装置(ここではPC1)に対するサービスを提供するプログラムである。また、コマンドを受信したりそれに対する応答を応答データとして送信したりする通信の制御も行う。
SOAPサービス207は、クライアントモジュール100のSOAPプロキシ109から送信されるSOAPメッセージを受信し、受信したSOAPメッセージに格納されているXML形式のデータをネットファイル201に手渡したり、ネットファイル201から手渡されたXML形式のデータを、SOAPエンベロープに格納し、ネットワーク3を通して、SOAPメッセージとしてクライアントモジュール100のSOAPプロキシに送信する。
コピーアプリ202、プリンタアプリ203、FAXアプリ204、スキャナアプリ205は、MFP2の各エンジンや通信手段の動作を制御するアプリケーションであり、MFP2をそれぞれコピー機、プリンタ、FAX装置、スキャナとして機能させるためのアプリケーションプログラムである。そして、例えばプリンタアプリの場合には、データ蓄積手段24に蓄積している蓄積データ206を印刷出力したり、FAXアプリ204の場合には蓄積データ206をFAX送信したりというように、データ蓄積手段24に蓄積しているデータに対する処理も行うことができる。
このようなMFPモジュール200によれば、PC1からのコマンドに応じて必要なアプリケーションプログラムを動作させ、データ蓄積手段24に蓄積している文書等のデータの管理・出力・送信等の動作を行うことができる。
〔第1の動作例:図3乃至図9〕
次に、上述した本発明に係るデータ管理システムの第1の動作例として、PC1がMFP2の蓄積データ206に蓄積されている蓄積文書の文書リストを取得する場合について説明する。PC1がMFP2にその蓄積している文書のリストを要求し、この要求に対し、MFP2がその蓄積している文書のリストをPC1に送信する。
〔第1の動作例:図3乃至図9〕
次に、上述した本発明に係るデータ管理システムの第1の動作例として、PC1がMFP2の蓄積データ206に蓄積されている蓄積文書の文書リストを取得する場合について説明する。PC1がMFP2にその蓄積している文書のリストを要求し、この要求に対し、MFP2がその蓄積している文書のリストをPC1に送信する。
図3は、本発明の実施形態であるデータ管理システムにおいて、PC1がMFP2に蓄積文書の文書リストを送信するように要求するためのコマンドを発する場合に、各プログラムが実行する動作を示す図である。図4は、その文書管理システムにおいて、PC1がMFPに蓄積文書の文書リストの送信を要求する場合に、PC1がユーザに各種条件を設定させるために表示する条件設定画面の例を示す図である。図5は、PC1がMFP2に文書リストの送信を要求するためにコマンドを生成する図3に示した処理を示すフローチャートである。図6は、文書リストを取得するためのコマンドの例を示す図である。図7は、文書リストを取得するためにPC1が送信したコマンドがMFP2において正常に受け付けられなかった場合に、MFP2が送信する応答データの例を示す図である。図8は、文書リストを取得するためにPC1が送信したコマンドがMFP2において正常に受け付けられた場合に、MFP2が送信する応答データの例を示す図である。
図1及び図2に示したデータ管理システムにおいて、ユーザは、PC1を操作して、MFP2のデータ蓄積手段24に蓄積されている蓄積文書の文書リストを取得し、PC1のディスプレイ18上に表示させることができる。この場合、クライアントモジュール100を構成する各プログラムは、図3に示す処理を行う。なお、図3において、処理は基本的に下方向に進むものとし、矢印は各プログラム間でデータの受け渡しがあることを示す。
まず、ユーザの操作に応じて、GUI表示層101がコントローラ102に文書リスト取得の指示を伝達する。GUI表示層101は、同時に、取得すべき文書を蓄積している機器(ここではMFP2)にアクセスするためのプラグインのID(プラグインID)、取得すべき文書のフォルダのID(フォルダID)、取得すべき文書の開始番号等の情報もコントローラ102に伝達する。コントローラ102はこの指示及びデータを受け取ると、プラグインIDで指定されたプラグイン(この場合、ドキュメントボックスプラグイン103)に対してMFP2の蓄積文書の文書リストを取得するよう指示を伝達し、同時にフォルダID及び文書の開始番号等のデータも伝達する。
ドキュメントボックスプラグイン103は、フォルダIDをアプリケーションIDに変換する。フォルダID及びアプリケーションIDは、MFP2のアプリケーション(コピーアプリ202、プリンタアプリ203、FAXアプリ204、またはスキャナアプリ205)を特定するためのIDである。PC1は、MFP2のアプリケーションを、各アプリケーションと1対1に対応するフォルダとして管理している。フォルダIDは、このフォルダを特定するものであり、これが対応するアプリケーションIDに変換されてMFP2に送信される。
フォルダIDをアプリケーションIDに変換した後、ドキュメントボックスプラグイン103は例えば図4に示すような条件設定画面をディスプレイ18に表示させ、文書リスト取得条件の入力を受け付ける。ここでは、文書リストのソート条件を設定する例を示している。
ユーザが文書リスト取得条件を設定してOKを選択すると、ドキュメントボックスプラグイン103は、その文書リスト取得条件、アプリケーションID、及び開始番号数をXMLジェネレータ106に送信し、MFP2に文書リスト取得を指示するXML形式のコマンドを生成させる。XMLジェネレータ106とドキュメントボックスプラグイン103とを実行するCPU11がコマンド生成手段として機能する。特に、XMLジェネレータ106を実行するCPU11が、拡張マークアップ言語生成手段として機能する。
ドキュメントボックスプラグイン103は、XMLジェネレータ106が生成したXML形式のコマンドを、ネットファイルラッパ108を介してMFP2のネットファイル201に送信する。ここでは、ネットファイルラッパ108とドキュメントボックスプラグイン103とにより、これらのプログラムを実行するCPU11がコマンド送信手段として機能する。
なお、XML形式のコマンドをSOAPメッセージとして送信する場合、ドキュメントボックスプラグイン103は、XMLジェネレータ106が生成したXML形式のコマンドを、SOAPプロキシ109及びネットワーク3を介してMFP2のSOAPサービス207に送信する。MFP2のSOAPサービス207は、SOAPプロキシ109から受信したSOAPメッセージからXML形式のコマンドを取り出し、ネットファイル201に手渡す。
MFP2側では、MFPモジュール200のネットファイル201が文書リストの送信を要求するXML形式のコマンドを受け取り、その内容を解釈する。コマンドに含まれているアプリケーションIDに基づき、ネットファイル201はアプリケーションIDで指定されたアプリケーションに文書リストを要求し、取得した文書リストをXML形式の応答データに含めてPC1に返す。ネットファイル201は、コマンドを正常に実行することができない場合には、エラーが発生したことを示す応答データをPC1に返す。また、コマンドを正常に処理することができた場合には、要求された文書リストを応答データに含めて送信する。コマンドの受け付けIDとしてリクエストIDも応答データに含めてもよい。
PC1側では、ネットファイルラッパ108がこの応答データを受け取り、ドキュメントボックスプラグイン103に送る。ここでは、ネットファイルラッパ108とドキュメントボックスプラグイン103とにより、これらのプログラムを実行するCPU11が応答受信手段として機能する。
応答データを受け取ると、ドキュメントボックスプラグイン103は、XMLパーサ107にその内容を解釈させる。ここでは、XMLパーサ107とドキュメントボックスプラグイン103とにより、これらのプログラムを実行するCPU11が応答解釈手段として機能する。特に、XMLパーサ107を実行するCPU11がデータ変換手段として機能する。
そして、ドキュメントボックスプラグイン103は、エラーチェックを行ってコマンドを正常に受け付けた旨の応答データが得られたか否かを判断する。
正常に受け付けた旨の応答データでなければ、ドキュメントボックスプラグイン103はエラーメッセージをディスプレイ18に表示させる。ここでは、ドキュメントボックスプラグイン103により、このプログラムを実行するCPU11が解釈結果を表示手段に表示させる手段として機能する。
そして、コントローラ102にはXMLパーサ107による応答データの解釈結果に含まれるエラー番号を返す。この場合、コントローラ102もGUI表示層にエラー番号を返して文書リスト取得に関する処理を終了する。
正常に受け付けた旨の応答データであれば、ドキュメントボックスプラグイン103は、その応答データに含まれる文書リストをXMLパーサ107から取得する。この時点においては、文書リストは、MFP2のネットファイルが蓄積文書を管理するためのファイルIDで記述されている。ドキュメントボックスプラグイン103はこのファイルIDを文書IDに変換する。そして、ドキュメントボックスプラグイン103は、文書IDに変換された文書リストをGUI表示層101に表示させ、処理を戻して文書リスト取得指示に関する処理を終了する。図示は省略したが、この場合にも、コマンドが正常に処理された旨をディスプレイ18に表示させるようにするとよい。
このようにした場合、ここでもCPU11がドキュメントボックスプラグイン103により解釈結果を表示手段に表示させる手段として機能することになる。
このような処理により、XML形式のコマンドを用いてMFP2に文書リストの送信を要求することができる。
次に、PC1がMFP2に蓄積文書の文書リストを要求するXML形式のコマンドを生成する処理について説明する。なお、図6にこの処理によって生成されるコマンドの例を示すが、これはプリンタアプリが管理している蓄積文書の文書リストを、ファイルID0から最大20文書まで取得する場合の例である。
ドキュメントボックスプラグイン103は、コマンドの生成準備が整うと、XMLジェネレータ106に必要なデータを渡して図5に示す処理を実行させる。
まず、ステップS1でヘッダ部分及び定型部分を生成する。ヘッダ部分はXMLデータの形式や転送に用いるプロトコル等を示すもので、図6に示す例では第1行目から第3行目までが、ヘッダ部分に相当する。また、4、5行目及び下から1、2行目の<operation>及び<getList>のタグが、文書リストの送信を要求するコマンドに必ず含まれる定型部分である。
次に、ステップS2でアプリケーションタグ<application>及び最大文書数タグ<maxNumber>を生成する。図6に示した例では、アプリケーションはプリンタアプリ、最大文書数は20文書となっている。なお、この例では、文書ファイルをファイルID0から取得するので、開始番号数を表すタグは省略されている。
次に、ステップS3において、ソート条件タグ<sortParam>を生成する。ソート条件は図4の条件設定画面を通してユーザが設定した条件で、図6に示した例では、文書の作成日がソートキーとして選ばれている。
このような処理により、ドキュメントボックスプラグイン103が取得したフォルダID、開始番号数、ソート条件等の情報に基づいてXML形式で表現したコマンドを生成することができる。
次に、PC1が蓄積文書の文書リストを要求するために送信したコマンドに対して、MFP2が送信する応答データの解釈処理の例について説明する。
MFP2は、図6に示したコマンドを受信すると、例えば図7又は図8に示すようなXML形式の応答データを送信する。図7は受信したコマンドを正常に受け付けることができなかった(エラーが発生した)場合の例、図8は正常に受け付けた場合の例である。
これらの応答データを受信すると、ドキュメントボックスプラグイン103は、XMLパーサ107にその応答データを渡して図9に示す処理を実行させる。なお、図9においては、実行結果が成功か否か、失敗であればどのようなエラーが発生したかについてのみ解釈する処理を示している。
図9の処理では、まずステップS11で結果タグを探索する。図7及び図8に示す例では、<isSucceeded>タグがこれに相当し、このタグの要素としてコマンド実行の成否が記載されている。
ステップS12では結果タグの要素からコマンド実行の成否を判断し、失敗であればステップS13に進む。ステップS13ではエラータイプタグを探索し、ステップS14でその要素であるエラータイプの情報を取得する。
図7に示した例では、ステップS14で、エラータイプの情報として<errorType>タグの要素である"invalidValue"が取得される。また、エラーが発生したファイルIDがファイルIDタグ<fileID>に"10"と記載されている。
次のステップS15では、ステップS14で取得したエラータイプを、ドキュメントボックスプラグイン103が理解できるエラーコードに変換し、ステップS16でそのエラーコード及びファイルIDをドキュメントボックスプラグイン103に返して終了する。このエラーコードは、コントローラ102やGUI表示層101も理解できるものであるとよい。
ステップS12で成功だった場合には、ステップS17で成功した旨のデータをドキュメントボックスプラグイン103に返して終了する。
このような処理により、MFP2からの応答データを解釈し、実行結果の成否と、失敗であればどのようなエラーが発生したかの情報を得ることができる。
なお、必要な場合には、適宜タグを探索してエラー情報以外の情報を取得することができる。図8に示した例では、7行目の結果タグ<result>以下にファイルリストタグ<filelist>及びファイルIDタグ<fileID>があり、ファイルIDで表示された文書リストが記載されている。ドキュメントボックスプラグイン103は、このファイルIDで表示された文書リストを取得し、ファイルIDを文書IDに変換することで、MFP2の蓄積データ207に蓄積されている蓄積文書の文書リストを取得することができる。
以上説明したデータ管理システムにおいては、データ管理装置からデータ蓄積装置に対して指示を行うためのコマンドを構造化文書形式であるXML形式のコマンドで表現するようにしている。そのため、例えクライアントモジュール100(主にプラグインの部分)のバージョンとMFPモジュール200(主にネットファイルの部分)のバージョンが異なり、クライアントモジュール100が生成するコマンドに含まれるデータと、MFPモジュール200が理解(解釈)できるデータに過不足がある場合でも、MFPモジュール200(ネットファイル201)はコマンドに含まれるデータのうち理解できるデータのみを用いてそのコマンドの処理を行うことができる。つまり、PC1が送信したコマンドをMFP2が柔軟に解釈して実行することができる。
また、MFP2がPC1に送信する応答データも構造化文書形式であるXML形式で表現するようにしているので、もしPC1のXMLパーサ107が解釈できないデータが応答データに含まれていても、XMLパーサ107は自分が理解できるデータのみをドキュメントボックスプラグイン103に返すことができる。したがって、ドキュメントボックスプラグイン103は、応答データに含まれるデータのうちXMLパーサ107が理解できるデータのみを用いて以後の処理を行うことができる。結果として、例えクライアントモジュール100またはMFPモジュール200いずれか一方のみをバージョンアップした場合でも、バージョンアップ前の機能は保証される。
なぜなら、XML形式等の構造化文書形式のコマンド又は応答データを解釈する場合、理解できるタグの要素のみ認識され、理解できないタグの要素は単に無視され、また、読み取ろうとしたデータがない場合でも、特にエラーとはならず、そのデータはないものとして扱われるだけであるからである。
従って、以上説明した構成によれば、データ蓄積装置に対して動作を指示するためのプログラムや装置、あるいはデータ管理システムの汎用性を高め、設計や改良を容易にすることができる。
また、応答データの解釈結果を表示手段に表示させるようにすれば、ユーザはコマンドが正常に受け付けられたか否か、エラーが生じていればどのようなエラーか、等を容易に認識することができる。
〔第2の動作例:図10乃至図17〕
次に、上述したデータ管理システムの第2の動作例として、PC1からの指示によりMFP2に文書の蓄積印刷を行わせる例について説明する。
〔第2の動作例:図10乃至図17〕
次に、上述したデータ管理システムの第2の動作例として、PC1からの指示によりMFP2に文書の蓄積印刷を行わせる例について説明する。
図10乃至図12はそのデータ管理システムにおいてPCからMFPに対して蓄積印刷の命令を発する場合の各プログラムの動作を示す一連の図、図13はその文書管理システムにおいて蓄積印刷を指示する場合の印刷条件設定を要求するGUIの表示例を示す図、図14は図12に示した蓄積印刷用XML生成の処理を示すフローチャート、図15は同じく蓄積印刷用XMLの例を示す図、図16は蓄積印刷コマンドを正常に受け付けられなかった場合の応答データの例を示す図、図17は同じく正常に受け付けた場合の応答データの例を示す図である。
なお、蓄積印刷とは、MFP2のデータ蓄積手段24に蓄積している文書のデータを予め印刷出力に供すことのできるプリントデータに変換して蓄積しておき、このプリントデータに基づく印刷出力を行う動作のことであり、「再印刷」とも呼ばれる。1つの文書データを複数回に亘って繰り返し印刷出力する場合等にこの機能を用いると、文書データからプリントデータへの変換を印刷出力毎に行わなくてよいため、処理を高速化できる。
図1及び図2に示したデータ管理システムにおいて、PC1を操作するユーザがMFP2のデータ蓄積手段24にプリントデータとして蓄積されている対象データを指定して蓄積印刷の実行を求めた場合、クライアントモジュール100を構成する各プログラムは、図10乃至図12に示す処理を行う。なお、図10乃至図12において、処理は基本的に下方向に進むものとし、矢印は各プログラム間でデータの受け渡しがあることを示す。
まず、GUI表示層101がコントローラ102に対して蓄積印刷の指示を伝達し、同時に、印刷すべきデータを蓄積している機器(ここではMFP2)にアクセスするためのプラグインのID、印刷すべきデータの文書ID等のデータも伝達する。そしてコントローラ102はこの指示を受け取ると、IDで指定されたプラグイン(ここではドキュメントボックスプラグイン103)に対して蓄積印刷の指示を伝達し、同時に文書ID等のデータも伝達する。
すると、ドキュメントボックスプラグイン103は、PC1側におけるデータの管理IDである文書IDを、MFP2側におけるデータの管理IDであるファイルIDに変換し、そのファイルIDをXMLジェネレータ106に送信して、そのファイルIDのデータに対して処理を要求する際にパスワードが必要であるか否かを確認するためのパスワード有無チェック用XMLを生成させる。そして、生成させたパスワード有無チェック用XML形式のコマンドをネットファイルラッパ108を介してMFP2に送信する。
MFP2側では、MFPモジュール200のネットファイル201がパスワード有無チェック用XML形式のコマンドを受け取ると、そのXML形式のコマンドを解釈し、その内容に従って蓄積データ206を参照してパスワードの有無を調査し、その結果をXML形式の応答データとして生成してPC1に返す。
そして、この応答データはネットファイルラッパ108が受け取り、ドキュメントボックスプラグイン103に返す。
ドキュメントボックスプラグイン103は、応答データを受け取るとXMLパーサ107にその内容を解釈させ、エラーチェックを行ってパスワード有無チェック用XML形式のコマンドを正常に処理できた旨の応答データが得られたか否かを判断する。
正常に処理できた旨の応答データでなければ、ドキュメントボックスプラグイン103はエラーメッセージをディスプレイ18に表示させると共に、コントローラ102にはXMLパーサ107による応答データの解釈結果に含まれるエラー番号を返す。この場合、コントローラ102もGUI表示層にエラー番号を返して蓄積印刷指示に関する処理を終了する。
正常に処理できた旨の応答データであれば、図11に示す処理に進み、応答データの解釈結果からパスワードが必要か否かを判断する。パスワードが不要であればそのまま図12に示す処理に進むが、パスワードが必要であれば、ドキュメントボックスプラグイン103はディスプレイ18にパスワード入力画面を表示してパスワードの入力を要求する。
そして、パスワードが入力されると、そのパスワードと対象ファイルのファイルIDとをXMLジェネレータ106に送信して、パスワードが正しいか否かを確認するためのパスワードチェック用XMLコマンドを生成させる。そして、生成させたパスワードチェック用XMLコマンドをネットファイルラッパ108を介してMFP2に送信する。
MFP2側では、MFPモジュール200のネットファイル201がパスワードチェック用XMLコマンドを受け取ると、そのXMLコマンドを解釈し、その内容に従って蓄積データ206を参照してパスワードが正しいか否かを調査し、その結果をXML形式の応答データとして生成してPC1に返す。
そして、この応答データはネットファイルラッパ108が受け取り、ドキュメントボックスプラグイン103に返す。
ドキュメントボックスプラグイン103は、応答データを受け取るとXMLパーサ107にその内容を解釈させ、応答データの解釈結果から入力されたパスワードが正しいパスワードであったか否かを判断する。正しいものであれば、図12に示す処理に進むが、正しいものでなかったり、そもそもMFP2側でパスワードチェック用XMLコマンドを正常に処理できていなかったりした場合には、パスワードの入力画面表示処理まで戻って処理を繰り返す。所定回数繰り返した場合にはエラーメッセージを表示した上でコントローラ102とGUI表示層101にエラー番号を返し、処理を終了するようにしてもよい。
パスワードが不要であるか正しいパスワードが入力されると、図12に示す処理に進み、ドキュメントボックスプラグイン103は例えば図13に示すようなGUIをディスプレイ18に表示させ、印刷条件の入力を受け付ける。ここでは、印刷部数の設定を受け付ける例を示しているが、他に用紙の向きや大きさ、ステープルやパンチ穴開け処理の有無等の設定も受け付けるようにしてもよい。また、複数の文書をまとめて印刷する場合には、ここまでの処理を印刷文書毎に繰り返して行うようにするとよい。
ユーザが印刷条件を設定してOKを選択すると、その印刷条件と対象ファイルのファイルIDと、必要であればパスワードとをXMLジェネレータ106に送信して、MFP2に蓄積印刷を指示するXML形式の蓄積印刷コマンドを生成させる。ここでは、XMLジェネレータ106とドキュメントボックスプラグイン103とにより、これらのプログラムを実行するCPU11がコマンド生成手段として機能する。特に、XMLジェネレータ106を実行するCPU11が拡張マークアップ言語生成手段として機能する。
そして、生成させたXML形式の蓄積印刷コマンドをネットファイルラッパ108を介してMFP2に送信する。ここでは、ネットファイルラッパ108とドキュメントボックスプラグイン103とにより、これらのプログラムを実行するCPU11がコマンド送信手段として機能する。
MFP2側では、MFPモジュール200のネットファイル201が蓄積印刷コマンドを受け取ると、そのコマンドを解釈し、蓄積印刷の指示であるのでプリンタアプリ203にその蓄積印刷ジョブの実行を指示し、その結果をXML形式の応答データとして生成してPC1に返す。この時点ではまだジョブは実行されていないが、応答データとしては指示を正常に行うことができたか否かを示すデータを返す。また、指示を正常に行うことができた場合には、コマンドの受け付けIDとしてリクエストIDを応答データに含めるものとする。
そして、この応答データはネットファイルラッパ108が受け取り、ドキュメントボックスプラグイン103に返す。ここでは、ネットファイルラッパ108とドキュメントボックスプラグイン103とにより、これらのプログラムを実行するCPU11が応答受信手段として機能する。
応答データを受け取ると、ドキュメントボックスプラグイン103は、XMLパーサ107にその内容を解釈させる。ここでは、XMLパーサ107とドキュメントボックスプラグイン103とにより、これらのプログラムを実行するCPU11が応答解釈手段として機能する。特に、XMLパーサ107を実行するCPU11がデータ変換手段として機能する。
そして、ドキュメントボックスプラグイン103は、エラーチェックを行ってコマンドを正常に受け付けた旨の応答データが得られたか否かを判断する。
正常に受け付けた旨の応答データでなければ、ドキュメントボックスプラグイン103はエラーメッセージをディスプレイ18に表示させる。ここでは、ドキュメントボックスプラグイン103により、このプログラムを実行するCPU11が解釈結果を表示手段に表示させる手段として機能する。
そして、コントローラ102にはXMLパーサ107による応答データの解釈結果に含まれるエラー番号を返す。この場合、コントローラ102もGUI表示層にエラー番号を返して蓄積印刷指示に関する処理を終了する。
正常に受け付けた旨の応答データであれば、その応答データに含まれるリクエストIDを記憶し、コントローラ102、GUI表示層101へと処理を戻して蓄積印刷指示に関する処理を終了する。図示は省略したが、この場合にも、コマンドが正常に処理された旨をディスプレイ18に表示させるようにするとよい。このようにした場合、ここでもCPU11がドキュメントボックスプラグイン103により解釈結果を表示手段に表示させる手段として機能することになる。
このような処理により、XML形式のコマンドを用いてMFP2に蓄積印刷の指示を行うことができる。
次に、蓄積印刷コマンド(蓄積印刷用XML)の生成処理の例について説明する。なお、図15にこの処理によって生成されるコマンドの例を示すが、これはパスワードの設定されているファイルID10の文書とパスワードの設定されていないファイルID20の文書とを2部ずつ蓄積印刷する場合の例である。
ドキュメントボックスプラグイン103は、蓄積印刷コマンドの生成準備が整うと、XMLジェネレータ106に必要なデータを渡して図14に示す処理を実行させる。
まず、ステップS21でヘッダ部分及び定型部分を生成する。ヘッダ部分はXMLデータの形式や転送に用いるプロトコル等を示すもので、図15に示す例では4行目までのデータに相当する。また、5、6行目及び下から1、2行目の<operation>及び<reprint>のタグが、蓄積印刷コマンドには必ず含まれる定型部分である。
次に、ステップS22で最初の印刷ファイルを選択し、そのファイルに対応する<targetFile>タグを生成する。そして、ステップS23でそのファイルのファイルIDを要素とするファイルIDタグを生成する。図15に示す例では、初めの印刷ファイルのファイルIDは10であるので、ファイルIDタグ<fileID>の要素は10である。
次に、ステップS24で選択されている印刷ファイルにパスワードがあるか否かを判断し、あればステップS25に進んでパスワードを要素とするパスワードタグを生成してステップS26に進む。なければそのままステップS26に進む。図15に示す例では、パスワードがあるので、パスワードを要素とするパスワードタグ<password>を生成している。
ステップS26では、次の印刷ファイルがあるか否か判断し、なければステップS27に進んで印刷条件を指定するための印刷条件タグを生成して終了する。あれば、ステップS28に進んで次の印刷ファイルを選択し、ステップS23に戻って処理を繰り返す。
図15に示す例では、次の印刷ファイルがあるので、次のファイルID20のファイルについて<targetFile>と<fileID>のタグを生成する。このファイルにはパスワードが設定されていないので、<password>のタグは生成しない。そして、印刷条件タグとしては、印刷部数を要素とする<copyVolume>のタグを生成している。
このような処理により、ドキュメントボックスプラグイン103が取得した印刷すべき文書のファイルID、パスワード、印刷条件等の情報に基づいてXML形式で表現した蓄積印刷コマンドを生成することができる。
次に、蓄積印刷を指示するコマンドに対する応答データの解釈処理の例について説明する。
図15に示したコマンドをMFP2に送信すると、応答データとしては例えば図16又は図17に示すようなXML形式の応答データが返される。図16はコマンドを正常に受け付けられなかった(エラーが発生した)場合の例、図17は正常に受け付けた場合の例である。
これらの応答データが返されると、ドキュメントボックスプラグイン103は、XMLパーサ107にその応答データを渡して、第1の動作例に関連してすでに説明した図9に示す処理を実行させる。なお、図9においては、実行結果が成功か否か、失敗であればどのようなエラーが発生したかについてのみ解釈する処理を示している。
図9の処理では、まずステップS11で結果タグを探索する。図16及び図17に示す例では、<isSuceeded>タグがこれに相当し、このタグの要素としてコマンド実行の成否が記載されている。
ステップS12では結果タグの要素からコマンド実行の成否を判断し、失敗であればステップS13に進む。ステップS13ではエラータイプタグを探索し、ステップS14でその要素であるエラータイプの情報を取得する。
図16に示した例では、ステップS14で、エラータイプの情報として<errorType>タグの要素である"fileNotFound"が取得される。
次のステップS15では、ステップS14で取得したエラータイプを、ドキュメントボックスプラグイン103が理解できるエラーコードに変換し、ステップS16でそのエラーコードをドキュメントボックスプラグイン103に返して終了する。このエラーコードは、コントローラ102やGUI表示層101も理解できるものであるとよい。
ステップS12で成功だった場合には、ステップS17で成功した旨のデータをドキュメントボックスプラグイン103に返して終了する。
このような処理により、MFP2からの応答データを解釈し、実行結果の成否と、失敗であればどのようなエラーが発生したかのデータを得ることができる。
なお、これ以外のデータも必要な場合には、適宜タグを探索してその要素を取得するようにすればよい。例えば、図17に示した例では8行目のタグ<requestID>の要素を取得すればリクエストIDが得られ、下から5行目のタグ<status>の要素を取得すれば、MFP2がコマンドを受け付けた時点でのそのコマンドに対応するジョブの状態の情報が得られるが、その詳細についての説明は省略する。
以上説明したデータ管理システムにおいては、データ管理装置からデータ蓄積装置に対して指示を行うためのコマンドを構造化文書形式であるXML形式で表現するようにしているので、送信されたコマンドをMFP2側でネットファイル201によって解釈する場合、クライアントモジュール100(主にプラグインの部分)のバージョンとMFPモジュール200(主にネットファイルの部分)のバージョンが異なるためにコマンドに含まれるデータとネットファイル201が理解(解釈)できるデータに過不足がある場合でも、ネットファイル201はコマンドに含まれるデータのうち理解できるデータのみを用いて以後の処理を行うことができる。
また、MFP2からの応答データも構造化文書形式であるXML形式で表現するようにしているので、応答データとXMLパーサ107が解釈できるデータに過不足がある場合でも、ドキュメントボックスプラグイン103は応答データに含まれるデータのうち理解できるデータのみを用いて以後の処理を行うことができる。すなわち、一方のみをバージョンアップした場合でも、バージョンアップ前の動作は保証される。
なぜなら、XML形式等の構造化文書形式のデータを解釈する場合、理解できるタグの要素のみ認識され、理解できないタグの要素は単に無視され、また、読み取ろうとしたデータがない場合でも、特にエラーとはならず、そのデータはないものとして扱われるだけであるからである。
従って、以上説明した構成によれば、データ蓄積装置に対して動作を指示するためのプログラムや装置、あるいはデータ管理システムの汎用性を高め、設計や改良を容易にすることができる。
また、応答データの解釈結果を表示手段に表示させるようにすれば、ユーザはコマンドが正常に受け付けられたか否か、エラーが生じていればどのようなエラーか、等を容易に認識することができる。
〔第3の動作例:図18乃至図25〕
次に、上述したデータ管理システムの第3の動作例として、PC1からの指示によりMFP2に文書の蓄積FAX送信を行わせる例について説明する。
〔第3の動作例:図18乃至図25〕
次に、上述したデータ管理システムの第3の動作例として、PC1からの指示によりMFP2に文書の蓄積FAX送信を行わせる例について説明する。
図18乃至図20は上述したデータ管理システムにおいてPCからMFPに対して蓄積FAX送信の命令を発する場合の各プログラムの動作を示す図10乃至図12と同様な一連の図、図21はその文書管理システムにおいて蓄積FAX送信を指示する場合の印刷条件設定を要求するGUIの表示例を示す図、図22は図20に示した蓄積FAX送信用XML生成の処理を示すフローチャート、図23はその蓄積FAX送信用XMLの例を示す図、図24はその蓄積FAX送信コマンドを正常に受け付けられなかった場合の応答データの例を示す図、図24は同じく正常に受け付けた場合の応答データの例を示す図である。
なお、蓄積FAX送信とは、MFP2のデータ蓄積手段24に蓄積している文書のデータを予めFAX送信に供すことのできる符号化データに変換して蓄積しておき、この符号化データに基づくFAX送信を行う動作のことであり、「再FAX」とも呼ばれる。1つの文書データを複数回に亘って繰り返しFAX送信する場合等にこの機能を用いると、文書データから符号化データへの変換をFAX送信毎に行わなくてよいため、処理を高速化できる。
図1及び図2に示したデータ管理システムにおいて、PC1を操作するユーザがMFP2のデータ蓄積手段24に符号化データとして蓄積されている対象データを指定して蓄積FAX送信の実行を求めた場合、クライアントモジュール100を構成する各プログラムは、図18乃至図20に示す処理を行う。
まず、GUI表示層101がコントローラ102に対して蓄積FAX送信の指示を伝達し、同時にFAX送信すべきデータを蓄積している機器(ここではMFP2)にアクセスするためのプラグインのID、FAX送信すべきデータの文書ID等のデータも伝達する。そして、コントローラ102はこの指示を受け取ると、IDで指定されたプラグイン(ここではドキュメントボックスプラグイン103)に対して蓄積FAX送信の指示を伝達し、同時に、文書ID等のデータも伝達する。
すると、ドキュメントボックスプラグイン103は、PC1側におけるデータの管理IDである文書IDを、MFP2側におけるデータの管理IDであるファイルIDに変換し、そのファイルIDをXMLジェネレータ106に送信して、そのファイルIDのデータに対して処理を要求する際にパスワードが必要であるか否かを確認するためのパスワード有無チェック用XMLを生成させる。
以後のパスワード有無チェックとパスワードの正否チェックの処理は、図10及び図11を用いて説明した第2の動作例の場合と同様であるので説明を省略する。
パスワードが不要であるか正しいパスワードが入力されると、図20に示す処理に進み、ドキュメントボックスプラグイン103は例えば図21に示すようなGUIをディスプレイ18に表示させ、送信条件の入力を受け付ける。ここでは、送信先の設定を受け付ける例を示しているが、親展送信や送付状の付加等の設定も受け付けるようにしてもよい。また、複数の文書をまとめて印刷する場合には、ここまでの処理を印刷文書毎に繰り返して行うようにするとよいことは、第2の動作例の場合と同様である。
ユーザが送信条件を設定してOKを選択すると、その送信条件と対象ファイルのファイルIDと、必要であればパスワードとをXMLジェネレータ106に送信して、MFP2に蓄積FAX送信を指示するXML形式の蓄積FAX送信コマンドを生成させる。ここでは、XMLジェネレータ106とドキュメントボックスプラグイン103とにより、これらのプログラムを実行するCPU11がコマンド生成手段として機能する。特に、XMLジェネレータ106を実行するCPU11が拡張マークアップ言語生成手段として機能する。
そして、生成させたXML形式の蓄積FAX送信コマンドをネットファイルラッパ108を介してMFP2に送信する。ここでは、ネットファイルラッパ108とドキュメントボックスプラグイン103とにより、これらのプログラムを実行するCPU11がコマンド送信手段として機能する。
MFP2側では、MFPモジュール200のネットファイル201が蓄積FAX送信コマンドを受け取ると、そのコマンドを解釈し、蓄積FAX送信の指示であるのでFAXアプリ204にその蓄積FAX送信ジョブの実行を指示し、その結果をXML形式の応答データとして生成してPC1に返す。この時点ではまだジョブは実行されていないが、応答データとしては指示を正常に行うことができたか否かを示すデータを返す。また、指示を正常に行うことができた場合には、コマンドの受け付けIDとしてリクエストIDを応答データに含めるものとする。
そして、この応答データはネットファイルラッパ108が受け取り、ドキュメントボックスプラグイン103に返す。
以下の処理は、図12を用いて説明した第2の動作例の場合と同様であるので説明を省略する。
このような処理により、XML形式のコマンドを用いてMFP2に蓄積FAX送信の指示を行うことができる。
次に、蓄積FAX送信を指示するXML形式のコマンドの生成処理の例について説明する。なお、図23にこの処理によって生成されるコマンドの例を示すが、これはパスワードの設定されているファイルID10の文書とパスワードの設定されていないファイルID20の文書とを電話番号03-xxxx-yyyyの送信先にする場合の例である。
ドキュメントボックスプラグイン103は、蓄積FAX送信コマンドの生成準備が整うと、XMLジェネレータ106に必要なデータを渡して図22に示す処理を実行させる。
まず、ステップS31でヘッダ部分及び定型部分を生成する。ヘッダ部分はXMLデータの形式や転送に用いるプロトコル等を示すもので、図22に示す例では4行目までのデータに相当する。また、5、6行目及び下から1、2行目の<operation>及び<sendFax>のタグが、蓄積FAX送信コマンドには必ず含まれる定型部分である。
次に、ステップS32で最初の送信ファイルを選択し、そのファイルに対応する<targetFile>タグを生成する。ステップS33乃至S35の処理は第2の動作例で説明した図14のステップS23乃至S25の処理と同様であるから説明を省略する。
ステップS36では、次の送信ファイルがあるか否か判断し、なければステップS37に進んで送信条件を指定するための送信条件タグを生成して終了する。あれば、ステップS38に進んで次の送信ファイルを選択し、ステップS33に戻って処理を繰り返す。
図23に示す例では、ファイルID20のファイルについて<targetFile>と<fileID>のタグを生成し、送信条件タグとしては、送信先情報であることを示す<receiver>のタグと、送信先の電話番号を要素とする<receiverID>のタグを生成している。
このような処理により、ドキュメントボックスプラグイン103が取得したFAX送信すべき文書のファイルID、パスワード、送信条件等の情報に基づいてXML形式で表現した蓄積FAX送信コマンドを生成することができる。
次に、蓄積FAX送信コマンドに対する応答データの例について説明する。
図23に示したコマンドをMFP2に送信すると、応答データとしては例えば図24又は図25に示すようなXML形式の応答データが返される。図24はコマンドが正常に処理できなかった(エラーが発生した)場合の例、図25は正常に処理できた場合の例である。
これらの応答データに対し、XMLパーサ107によって第1及び第2の動作例で図9を用いて説明したものと同様な処理を行うことにより、そのデータを解釈して実行結果の成否と、失敗であればどのようなエラーが発生したかのデータを得ることができる。
すなわち、例えば図16に示すデータと図24に示すデータとを比較すると3行目のタグが異なるように、応答データ自体の構造は蓄積印刷の場合と異なるが、実行結果の正否を示すデータやエラータイプを同じタグ(<isSucceeded>や<errorType>)の要素としているので、蓄積FAX送信コマンドに対する応答データも、XMLパーサ107における処理を蓄積印刷の場合と何ら変更することなく解釈を行うことができる。
ここで、上述したように、この蓄積FAX送信コマンド生成の処理についても、第2の動作例で図14を用いて説明した蓄積印刷コマンド生成の処理と実質的に同一な部分が多い。すなわち、図22に示す処理で図14に示す処理と実質的に異なるのは、ステップS31の定型部分の生成処理と、ステップS37の送信条件タグの生成処理のみである。
従って、例えば蓄積印刷コマンドの生成及びこのコマンドに対する応答データの解釈を行うプログラムが開発してあれば、蓄積FAX送信コマンド生成及びこのコマンドに対する応答の解釈を行うプログラムを開発し、装置に新たな機能を持たせる際に、その大部分を流用して開発を行うことができる。これは、コマンドや応答データを構造化文書形式で表現しているので、タグの追加、削除、変更によってデータ構造の改変を容易に行うことができるためである。
そこで、以上説明した構成によれば、このような観点からも、データ蓄積装置に対して動作を指示するためのプログラムや装置、あるいはデータ管理システムの汎用性を高め、設計や改良を容易にすることができるといえる。
〔第4の動作例:図26乃至図33〕
上述したデータ管理システムの第4の動作例として、PC1からの指示により、MFP2のスキャナ機能により事前に蓄積されたスキャナ蓄積文書を、ネットワークに接続された配信サーバに配信する例について説明する。
〔第4の動作例:図26乃至図33〕
上述したデータ管理システムの第4の動作例として、PC1からの指示により、MFP2のスキャナ機能により事前に蓄積されたスキャナ蓄積文書を、ネットワークに接続された配信サーバに配信する例について説明する。
図1に示したサーバモジュール400は、配信サーバ4で実行されるプログラムである。サーバモジュール400はGUI表示層401、コントローラ402、ネットワークインターフェイス403、トレイ管理部404等のプログラムを含む。
GUI表示層401は、ディスプレイ(表示せず)にGUIを表示させ、ユーザからの指示や操作を受け付けるためのプログラムである。ユーザはGUI表示層401を介して、配信サーバを管理することができる。コントローラ402は、他の各プログラムとGUI表示層401との間でデータの受け渡しを行うためのプログラムである。トレイ管理部404には、複数のトレイ410、411、...がさらに設けられている。各トレイ410、411、...には、データを分類整理して蓄積することができる。
図26乃至図28は、上述したデータ管理システムにおいて、PCからMFPに対してスキャナ蓄積文書配信の命令を発する場合の各プログラムの動作を示す一連の図である。図29はその文書管理システムにおいてスキャナ蓄積文書の配信を指示する場合の配信条件設定を要求するGUIの表示例を示す図である。図30は図28に示したスキャナ蓄積文書の配信を要求するXML形式のコマンドを生成する処理を示すフローチャートである。図31はそのスキャナ蓄積文書の配信を要求するXML形式のコマンドの例を示す図である。図32はそのスキャナ蓄積文書の配信を要求するコマンドを正常に受け付けられなかった場合に、MFP2がPC1に送信する応答データの例を示す図である。図33は同じく正常に受け付けた場合に、MFP2がPC1に送信する応答データの例を示す図である。
なお、スキャナ蓄積文書の配信とは、MFP2のスキャナ機能により事前にデータ蓄積手段24に蓄積しているスキャナ蓄積文書のデータを、ネットワークに接続されている配信サーバ4に仮想的に設けられたトレイに、ネットワークを経由して送信、蓄積する動作のことであり、「スキャナ再配信」とも呼ばれる。
図1及び2に示したデータ管理システムにおいて、PC1を操作するユーザがMFP2のデータ蓄積手段24に蓄積されている対象データを指定してスキャナ再配信の実行を求めた場合、クライアントモジュール100を構成する各プログラムは、図26乃至図28に示す処理を行う。
まず、GUI表示層101がコントローラ102に対してスキャナ再配信の指示を伝達し、同時にスキャナ再配信すべきデータを蓄積している機器(ここではMFP2)にアクセスするためのプラグインのID、スキャナ再配信すべきデータの文書ID等のデータも伝達する。そして、コントローラ102はこの指示を受け取ると、IDで指定されたプラグイン(ここではドキュメントボックスプラグイン103)に対してスキャナ再配信の指示を伝達し、同時に、文書ID等のデータも伝達する。
すると、ドキュメントボックスプラグイン103は、PC1側におけるデータの管理IDである文書IDを、MFP2側におけるデータの管理IDであるファイルIDに変換し、そのファイルIDをXMLジェネレータ106に送信して、そのファイルIDのデータに対して処理を要求する際にパスワードが必要であるか否かを確認するためのパスワード有無チェック用にXML形式のコマンドを生成させる。
以後のパスワード有無チェックとパスワードの正否チェックの処理は、図10及び図11を用いて説明した第2の動作例の場合と同様であるので説明を省略する。
パスワードが不要であるか正しいパスワードが入力されると、図28に示す処理に進み、ドキュメントボックスプラグイン103は例えば図29に示すようなGUIをディスプレイ18に表示させ、配信条件の入力を受け付ける。ここでは、配信先の設定を受け付ける例を示しているが、送付状の付加等の設定を受け付けるようにしてもよい。また、複数の文書をまとめて配信する場合には、ここまでの処理を文書毎に繰り返して行うようにするとよいことは、第2の動作例の場合と同様である。
ユーザが配信条件を設定してOKを選択すると、その配信条件と対象ファイルのファイルIDと、必要であればパスワードとをXMLジェネレータ106に送信して、MFP2にスキャナ再配信を指示するXML形式のスキャナ再配信コマンドを生成させる。ここでは、XMLジェネレータ106とドキュメントボックスプラグイン103とにより、これらのプログラムを実行するCPU11がコマンド生成手段として機能する。特に、XMLジェネレータ106を実行するCPU11が拡張マークアップ言語生成手段として機能する。
そして、生成させたXML形式のスキャナ再配信コマンドをネットファイルラッパ108を介してMFP2に送信する。ここでは、ネットファイルラッパ108とドキュメントボックスプラグイン103とにより、これらのプログラムを実行するCPU11がコマンド送信手段として機能する。
MFP2側では、MFPモジュール200のネットファイル201がスキャナ再配信コマンドを受け取り、そのコマンドを解釈する。コマンドを解釈した結果、スキャナ再配信を指示するものであると判断すると、ネットファイル201は、スキャナアプリ205にそのスキャナ再配信ジョブの実行を指示する。
スキャナアプリ205は、ネットファイル201からスキャナ再配信の指示を受けると、蓄積データ206に蓄積されているスキャナ蓄積文書の中から、指定されたファイルIDを持つスキャナ蓄積文書を取得し、配信先の情報とともにネットファイル201に送る。ネットファイル201は、スキャナ蓄積文書及び配信先の情報を受け取ると、指定された配信先にそのスキャナ蓄積文書を配信する。
配信サーバ4側では、ネットワークサービス403が、このスキャナ蓄積文書及び配信先トレイを示す情報を受け取る。受け取ったスキャナ蓄積文書は、コントローラ402経由でトレイ管理部404に送られ、ユーザが指定した配信先トレイに保管される。トレイに保管されたスキャナ蓄積文書は、データ蓄積装置2に配信を指示したユーザのみでなく、そのスキャナ蓄積文書を参照する権限を有するユーザがパスワード等を入力することにより、参照することができる。
一方、MFP2は、その配信の結果を示すXML形式の応答データを生成して、PC1に送信する。応答データとしては指示を正常に行うことができたか否かを示すデータを返す。また、指示を正常に行うことができた場合には、コマンドの受け付けIDとしてリクエストIDを応答データに含めるものとする。
そして、この応答データはネットファイルラッパ108が受け取り、ドキュメントボックスプラグイン103に返す。
以下の処理は、図12を用いて説明した第2の動作例の場合と同様であるので説明を省略する。
このような処理により、XML形式のコマンドを用いてMFP2にスキャナ再配信の指示を行うことができる。
次に、スキャナ再配信を指示するXML形式のコマンドの生成処理の例について説明する。なお、図31にこの処理によって生成されるコマンドの例を示すが、これはパスワードの設定されているファイルID10のスキャナ蓄積文書とパスワードの設定されていないファイルID20のスキャナ蓄積文書とを配信サーバのトレイ"xxxx"に配信する場合の例である。
ドキュメントボックスプラグイン103は、スキャナ再配信コマンドの生成準備が整うと、XMLジェネレータ106に必要なデータを渡して図30に示す処理を実行させる。
まず、ステップS41でヘッダ部分及び定型部分を生成する。ヘッダ部分はXMLデータの形式や転送に用いるプロトコル等を示すもので、図31に示す例では4行目までのデータに相当する。また、5、6行目及び下から1、2行目の<operation>及び<distScan>のタグが、スキャナ再配信コマンドには必ず含まれる定型部分である。
次に、ステップS42で最初の配信ファイルを選択し、そのファイルに対応する<targetFile>タグを生成する。ステップS43乃至S45の処理は第2の動作例で説明した図14のステップS23乃至S25の処理と同様であるから説明を省略する。
ステップS46では、次の配信ファイルがあるか否か判断し、なければステップS47に進んで配信条件を指定するための配信条件タグを生成して終了する。あれば、ステップS48に進んで次の配信ファイルを選択し、ステップS43に戻って処理を繰り返す。
図31に示す例では、ファイルID20のファイルについて<targetFile>と<fileID>のタグを生成し、配信条件タグとしては、配信先情報であることを示す<tray>のタグと、送信先のトレイIDを要素とする<trayID>のタグを生成している。
このような処理により、ドキュメントボックスプラグイン103が取得したスキャナ再配信すべき文書のファイルID、パスワード、配信条件等の情報に基づいてXML形式で表現したスキャナ再配信コマンドを生成することができる。
次に、スキャナ再配信コマンドに対する応答データの例について説明する。
図31に示したコマンドをMFP2に送信すると、応答データとしては例えば図32又は図33に示すようなXML形式の応答データが返される。図32はコマンドが正常に処理できなかった(エラーが発生した)場合の例、図33は正常に処理できた場合の例である。
これらの応答データに対し、XMLパーサ107によって第2の動作例で図9を用いて説明したものと同様な処理を行うことにより、そのデータを解釈して実行結果の成否と、失敗であればどのようなエラーが発生したかのデータを得ることができる。
すなわち、例えば図16に示すデータと図32に示すデータとを比較すると3行目のタグが異なるように、応答データ自体の構造は蓄積印刷の場合と異なるが、実行結果の正否を示すデータやエラータイプを同じタグ(<isSucceeded>や<errorType>)の要素としているので、スキャナ再配信コマンドに対する応答データも、XMLパーサ107における処理を蓄積印刷の場合と何ら変更することなく解釈を行うことができる。
ここで、上述したように、このスキャナ再配信コマンド生成の処理についても、第2の動作例で図14を用いて説明した蓄積印刷コマンド生成の処理と実質的に同一な部分が多い。すなわち、図30に示す処理で図14に示す処理と実質的に異なるのは、ステップS41の定型部分の生成処理と、ステップS47の送信条件タグの生成処理のみである。
従って、例えば蓄積印刷コマンドの生成及びこのコマンドに対する応答データの解釈を行うプログラムが開発してあれば、スキャナ再配信コマンド生成及びこのコマンドに対する応答データの解釈を行うプログラムを開発し、装置に新たな機能を持たせる際に、その大部分を流用して開発を行うことができる。これは、コマンドや応答データを構造化文書形式で表現しているので、タグの追加、削除、変更によってデータ構造の改変を容易に行うことができるためである。
そこで、以上説明した構成によれば、このような観点からも、データ蓄積装置に対して動作を指示するためのプログラムや装置、あるいはデータ管理システムの汎用性を高め、設計や改良を容易にすることができるといえる。
なお、以上説明した実施形態及び動作例において、データ蓄積装置としてコピー、プリンタ、FAX、スキャナの機能を有するMFP2を用いた例について説明したが、これは必須ではなく、例えば第1の動作例の動作を行うためにはプリンタ機能、第2の動作例の動作を行うためにはプリンタ機能、第3の動作例の動作を行うためにはFAX機能、第4の動作例の動作を行うためにはスキャナ機能を有するものであればよい。また、データ蓄積装置として用いる装置はMFPに限られるものではなく、データ蓄積手段を設けた装置と画像形成手段、ファクシミリ通信手段、またはスキャナ配信手段を設けた装置を別体として構成してもよい。
また、動作例においては文書リスト取得、蓄積印刷、FAX送信及びスキャナ配信の例について説明したが、他のコマンドについてももちろんこの発明を適用することができる。汎用性を高め、設計や改良を容易にすることができる点がこの発明の特徴であるので、次々と新しい機能を追加して装置やプログラムをバージョンアップすれば、この特徴を活かし、さらに利便性の高いデータ管理システムを構築することができる。
さらにまた、以上説明した実施形態においては、データ管理装置、データ蓄積装置、配信サーバを1台ずつ設けたデータ管理システムを例として説明したが、データ管理装置やデータ蓄積装置を複数設け、どのデータ管理装置からどのデータ蓄積装置へコマンドを発してもよいようにシステムを構成することはもちろん可能である。
また、上述したPC1のCPU11を上述した各手段として機能させるためのプログラムは、予めPC1のHDD14等に記憶させておくほか、記録媒体であるCD−ROMあるいはフレキシブルディスク、SRAM、EEPROM、メモリカード等の不揮発性記録媒体(メモリ)に記録して提供することもできる。そのメモリに記録されたプログラムをPC1にインストールしてCPU11に実行させるか、CPU11にそのメモリからこのプログラムを読み出して実行させることにより、上述した各手段として機能させることができる。
さらに、プログラムを記録した記録媒体を備える外部機器あるいはプログラムを記憶手段に記憶した外部機器からダウンロードして実行させることも可能である。
1:PC 2:MFP
3:ネットワーク 4:配信サーバ
11、21、41:CPU
12、22、42:ROM 13、23、43:RAM
14、44:HDD 15、45:ディスプレイI/F
16、25、46:ネットワークI/F
17、29、47:システムバス
18:ディスプレイ 20:制御部
24:データ蓄積手段 26:エンジンI/F
27:スキャナI/F 28:ファクシミリ通信手段
31:プリンタエンジン 32:スキャナエンジン
100:クライアントモジュール
101:GUI表示層 102:コントローラ
103:ドキュメントボックスプラグイン
104:個人文書管理プラグイン
105:マイコンピュータプラグイン
106:XMLジェネレータ 107:XMLパーサ
108:ネットファイルラッパ
109:SOAPプロキシ
200:MFPモジュール 201:ネットファイル
202:コピーアプリ 203:プリンタアプリ
204:FAXアプリ 205:スキャナアプリ
206:蓄積データ
207:SOAPサービス
400:サーバモジュール 401:GUI表示層
402:コントローラ 403:ネットワークサービス
404:トレイ管理部 410、411:トレイ
3:ネットワーク 4:配信サーバ
11、21、41:CPU
12、22、42:ROM 13、23、43:RAM
14、44:HDD 15、45:ディスプレイI/F
16、25、46:ネットワークI/F
17、29、47:システムバス
18:ディスプレイ 20:制御部
24:データ蓄積手段 26:エンジンI/F
27:スキャナI/F 28:ファクシミリ通信手段
31:プリンタエンジン 32:スキャナエンジン
100:クライアントモジュール
101:GUI表示層 102:コントローラ
103:ドキュメントボックスプラグイン
104:個人文書管理プラグイン
105:マイコンピュータプラグイン
106:XMLジェネレータ 107:XMLパーサ
108:ネットファイルラッパ
109:SOAPプロキシ
200:MFPモジュール 201:ネットファイル
202:コピーアプリ 203:プリンタアプリ
204:FAXアプリ 205:スキャナアプリ
206:蓄積データ
207:SOAPサービス
400:サーバモジュール 401:GUI表示層
402:コントローラ 403:ネットワークサービス
404:トレイ管理部 410、411:トレイ
Claims (15)
- データ蓄積装置とデータの授受を行うための通信手段を有するデータ管理装置であって、
前記データ蓄積装置に対するコマンドを構造化文書形式で作成するコマンド作成手段と、
該手段が作成したコマンドを前記データ蓄積装置に送信するコマンド送信手段
と、
送信したコマンドに対する前記データ蓄積装置からの構造化文書形式の応答を受信する応答受信手段と、
該手段が受信した応答を解釈する応答解釈手段とを設け、
前記コマンドは前記データ蓄積装置に蓄積されている文書に認証情報が必要かどうかを確認するコマンドを含むことを特徴とするデータ管理装置。 - 前記コマンドは入力された認証情報が正しいかどうかを確認するコマンドを含むことを特徴とする、請求項1記載のデータ管理装置。
- 前記構造化文書形式は拡張マークアップ言語(XML)形式であることを特徴とする請求項1または2記載のデータ管理装置。
- 前記コマンド作成手段は前記データ蓄積装置に送信するコマンドを拡張マークアップ言語形式のデータとして生成する拡張マークアップ言語生成手段を有し、前記応答解釈手段は拡張マークアップ言語形式のデータの内容を解釈し、他のプログラムが理解できる形式のデータに変換させるデータ変換手段を有することを特徴とする、請求項1乃至3いずれか一項記載のデータ管理装置。
- 前記コマンド送信手段はさらに前記拡張マークアップ言語生成手段で生成された拡張マークアップ言語形式のデータをSOAPメッセージとして前記データ蓄積装置に送信し、前記応答受信手段は前記データ蓄積装置からの応答データをSOAPメッセージとして受信することを特徴とする、請求項1乃至4いずれか一項記載のデータ管理装置。
- ネットワークを介してデータ蓄積装置を管理する方法であって、
前記データ蓄積装置に対するコマンドを構造化文書形式で生成するコマンド生成段階と、
該段階において作成したコマンドを前記データ蓄積装置に送信するコマンド送信段階と、
送信したコマンドに対する前記データ蓄積装置からの構造化文書形式の応答データを受信する応答受信段階と、
該段階において受信した応答データを解釈する応答解釈段階とを含み、
前記コマンドは前記データ蓄積装置に蓄積されている文書に認証情報が必要かどうかを確認するコマンドを含むことを特徴とする方法。 - 前記コマンドは入力された認証情報が正しいかどうかを確認するコマンドを含むことを特徴とする、請求項6記載の方法。
- 前記構造化文書形式は拡張マークアップ言語(XML)形式であることを特徴とする、請求項1または2記載の方法。
- 前記コマンド生成段階は、前記データ蓄積装置に送信するコマンドを拡張マークアップ言語形式のデータとして生成する拡張マークアップ言語生成段階を含み、前記応答解釈段階は、拡張マークアップ言語形式のデータの内容を解釈し、他のプログラムが理解できる形式のデータに変換させるデータ変換段階を含むことを特徴とする請求項6乃至8に記載の方法。
- 前記コマンド送信段階において、さらに前記拡張マークアップ言語生成段階で生成された拡張マークアップ言語形式のデータをSOAPメッセージとして前記データ蓄積装置に送信し、前記応答受信段階において、前記データ蓄積装置からの応答データをSOAPメッセージとして受信することを特徴とする、請求項6乃至9いずれか一項記載の方法。
- データ蓄積装置とデータの授受が可能なように接続されたコンピュータを、
前記データ蓄積装置に対するコマンドを構造化文書形式で生成するコマンド生成手段と、
該手段が作成したコマンドを前記データ蓄積装置に送信するコマンド送信手段と、
送信したコマンドに対する前記データ蓄積装置からの構造化文書形式の応答データを受信する応答受信手段と、
該手段が受信した応答データを解釈する応答解釈手段として機能させ、
前記コマンドは前記データ蓄積装置に蓄積されている文書に認証情報が必要かどうかを確認するコマンドを含むことを特徴とするプログラム。 - 前記コマンドは入力された認証情報が正しいかどうかを確認するコマンドを含むことを特徴とする、請求項11記載のプログラム。
- 前記構造化文書形式は拡張マークアップ言語(XML)形式であることを特徴とする、請求項11または12記載のプログラム。
- 前記コマンド生成手段は前記データ蓄積装置に送信するコマンドを拡張マークアップ言語形式のデータとして生成する拡張マークアップ言語生成手段を有し、前記応答解釈手段は拡張マークアップ言語形式のデータの内容を解釈し、他のプログラムが理解できる形式のデータに変換させるデータ変換手段を有することを特徴とする、請求項11乃至13いずれか一項記載のプログラム。
- 前記コマンド送信手段はさらに前記拡張マークアップ言語生成手段で生成された拡張マークアップ言語形式のデータをSOAPメッセージとして前記データ蓄積装置に送信し、前記応答受信手段は前記データ蓄積装置からの応答データをSOAPメッセージとして受信することを特徴とする、請求項11乃至14いずれか一項記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008151091A JP2008289170A (ja) | 2002-05-23 | 2008-06-09 | プログラム、記憶媒体、データ管理装置及びデータ管理システム |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002149121 | 2002-05-23 | ||
JP2008151091A JP2008289170A (ja) | 2002-05-23 | 2008-06-09 | プログラム、記憶媒体、データ管理装置及びデータ管理システム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003143548A Division JP2004046817A (ja) | 2002-05-23 | 2003-05-21 | プログラム、記憶媒体、データ管理装置及びデータ管理システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008289170A true JP2008289170A (ja) | 2008-11-27 |
Family
ID=40148394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008151091A Pending JP2008289170A (ja) | 2002-05-23 | 2008-06-09 | プログラム、記憶媒体、データ管理装置及びデータ管理システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008289170A (ja) |
-
2008
- 2008-06-09 JP JP2008151091A patent/JP2008289170A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004046817A (ja) | プログラム、記憶媒体、データ管理装置及びデータ管理システム | |
US10026029B2 (en) | Image processing apparatus, and control method, and computer-readable storage medium thereof | |
JP4218384B2 (ja) | サービス処理装置、サービス処理方法及びプログラム、並びに画像形成装置 | |
US9277093B2 (en) | Method, apparatus, and computer product for managing image formation resources | |
KR100744728B1 (ko) | 서비스 처리 장치, 시스템 및 서비스 처리 방법 | |
JP4890605B2 (ja) | 複合機、複合機制御システム、プログラムおよび記録媒体 | |
US8526021B2 (en) | Server, control method thereof and storage medium for assisting image processing apparatus in error recovery | |
US7418632B2 (en) | Service processing system, processing result management device and processing result checking method of service processing system | |
US20090164927A1 (en) | Image processing apparatus and method thereof | |
CN102111516B (zh) | 用于利用图像形成装置执行打印的系统、方法和计算机可读记录介质 | |
US20100265544A1 (en) | Image forming system, information processing apparatus, document processing method and printer driver | |
US8384934B2 (en) | Image processing apparatus and method thereof | |
US8395796B2 (en) | Information processing apparatus, image processing apparatus, information processing method, and information processing program which outputs information in the form of a report | |
KR20140074826A (ko) | 화상 처리 장치와 그 제어 방법, 및 기억 매체 | |
US9648179B2 (en) | Screen image providing apparatus, screen image providing method, and computer readable medium | |
US7580143B2 (en) | Image forming apparatus, image forming method, and information processing apparatus for conducting print instruction thereto | |
JP4291856B2 (ja) | Webサービス機能を有する画像形成装置 | |
JP4079722B2 (ja) | ネットワークを介して装置間で連携する画像形成装置 | |
US20050108649A1 (en) | Control apparatus, control instruction apparatus, control program product and control instruction program product for transmitting/receiving data described in extensible markup language | |
JP4520484B2 (ja) | Webサービス機能を有する画像形成装置 | |
JP4141209B2 (ja) | Webサービス機能を有する画像形成装置 | |
JP2008289170A (ja) | プログラム、記憶媒体、データ管理装置及びデータ管理システム | |
JP4136738B2 (ja) | Webサービス機能を有する画像形成装置 | |
JP2007087399A (ja) | 画像形成装置の表示調整方法 | |
JP3802451B2 (ja) | 画像形成装置,蓄積文書出力方法および蓄積文書出力システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090929 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091130 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100105 |