説明

画像処理装置、画像処理方法及び画像処理プログラム

【課題】印刷不良を防止可能であると共に、コード画像化された情報と、当該情報に対応付けられる情報との対応関係の整合性を保持可能な画像処理技術を提供する。
【解決手段】コントローラ10は、エンコードの機能により、紙IDをエンコードして生成したコード画像と、電子文書を表す画像とを画像合成の機能により合成し、当該紙への印刷を印刷部61に行わせる。また、コントローラ10は、印刷部61により当該紙に印刷されたコード画像をデコードの機能により読み取らせて紙IDを取得する。そして、コントローラ10は、エンコードする前の紙IDと、デコードした紙IDとを照合し、これらが不一致である場合又はデコードの機能により紙IDを取得できない場合、当該紙に対するNG記録をNG記録部74に行わせ、紙搬送路切替部75により、紙の排出先をガベージトレイ72に切り替えて、当該紙を排出させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷対象の紙をスキャナにより読み取った画像又は電子文書に対するパーソナルコンピュータなどからの印刷命令に基づいて、印刷画像を形成して紙に印刷する画像処理装置、画像処理方法及び画像処理プログラムに関するものである。
【背景技術】
【0002】
従来より、数字や文字などからなる識別情報をバーコード化して文書と共に紙に印刷する技術が開発されている(例えば、特許文献1参照)。特許文献1においてバーコード化される識別情報とは、例えば、患者の氏名やIDである。このような技術においては、紙に印刷されたバーコードを読み取って、デコードすることにより当該識別情報を得ることができる。しかし、このバーコードの印刷が不良である場合、当該バーコードを読み取ることができなかったり、デコードの結果が本来のものと異なったりすることがある。近年では、ページ毎に、印刷されたバーコードをカメラにより読み取ってデコードして得られる情報と、バーコード化する前の情報とを照合し、照合結果が一致しない場合、読取不能コードを出力する技術が開発されている(例えば、特許文献2参照)。このような技術によれば、照合結果が一致しない印刷物を排除して、照合結果が一致するよう印刷を行うことにより、結果として、印刷不良を防止することができる。
【0003】
【特許文献1】特開2004−181945号公報
【特許文献2】特開2006−79571号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかし、上述の技術においては、ページ毎にバーコード化された情報に対して、当該情報に関連する情報が対応付けられ記憶手段に別途記憶されている場合、これらの情報間の対応関係については考慮されていない恐れがあった。このため、例えば、ページ毎のバーコードの印刷不良により、当該バーコードを不使用にした場合、当該バーコード化された情報と当該情報に対応付けられている情報との対応関係に不整合が生じる恐れがあった。
【0005】
本発明は、上記に鑑みてなされたものであって、印刷不良を防止可能であると共に、コード画像化された情報と、当該情報に対応付けられる情報との対応関係の整合性を保持可能な画像処理装置、画像処理方法及び画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、請求項1にかかる発明は、画像処理装置であって、記憶手段に記憶された所定の情報に関連付けられた識別情報をエンコードしてコード画像を生成するコード画像生成手段と、印刷対象の電子文書を用いて印刷画像を生成し当該印刷画像と共に、前記コード画像生成手段が生成したコード画像を紙媒体に印刷する印刷手段と、前記印刷手段が印刷した前記紙媒体を走査することにより前記コード画像を読み取るコード画像読取手段と、前記コード画像読取手段が読み取った前記コード画像を用いて、読取識別情報を取得するコード取得手段と、前記コード取得手段が取得した前記読取識別情報と、前記コード画像生成手段がエンコードして前記コード画像を生成した前記識別情報とを照合する照合手段と、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、所定の画像を前記紙媒体に印刷する第2印刷手段と、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記所定の情報を前記記憶手段から削除する情報制御手段とを備えることを特徴とする。
【0007】
請求項2にかかる発明は、請求項1にかかる発明において、前記情報制御手段は、前記所定の情報を識別可能な前記識別情報を発行し、前記記憶手段に記憶される前記所定の情報を当該識別情報と関連付けて管理し、前記情報制御手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記所定の情報に対して新たな識別情報を発行し、当該所定の情報を当該新たな識別情報と関連付けて前記記憶手段に新たに登録し、前記コード画像生成手段は、前記情報制御手段が発行した前記新たな識別情報をエンコードしてコード画像を生成し、前記印刷手段は、前記コード画像生成手段が当該新たな識別情報をエンコードして生成したコード画像を前記印刷画像と共に新たな紙媒体に印刷することを特徴とする。
【0008】
請求項3にかかる発明は、請求項1にかかる発明において、前記所定の情報は、当該所定の情報が前記記憶手段に登録された日時又は前記記憶手段に記憶された当該所定の情報が更新された日時のうち少なくとも一方を示す日時情報を含み、前記情報制御手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記所定の情報に含まれる前記日時情報を更新して当該所定の情報を前記記憶手段に新たに登録することを特徴とする。
【0009】
請求項4にかかる発明は、画像処理装置であって、記憶手段に記憶される所定の情報に対して識別情報を発行し、前記所定の情報を当該識別情報と関連付けて管理する情報制御手段と、前記記憶手段に記憶された前記所定の情報を識別可能な前記識別情報をエンコードしてコード画像を生成するコード画像生成手段と、印刷対象の電子文書を用いて印刷画像を生成し当該印刷画像と共に、前記コード画像生成手段が生成したコード画像を紙媒体に印刷する印刷手段と、前記印刷手段が印刷した前記紙媒体を走査することにより前記コード画像を読み取るコード画像読取手段と、前記コード画像読取手段が読み取った前記コード画像を用いて、読取識別情報を取得するコード取得手段と、前記コード取得手段が取得した読取識別情報と、前記コード画像生成手段がエンコードして前記コード画像を生成した前記識別情報とを照合する照合手段と、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、所定の画像を前記紙媒体に印刷する第2印刷手段とを備え、前記情報制御手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記記憶手段に記憶された前記所定の情報を更新し、前記印刷手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記コード画像生成手段がエンコードして生成した前記コード画像を前記印刷画像と共に新たな紙媒体に印刷することを特徴とする。
【0010】
請求項5にかかる発明は、請求項4にかかる発明において、前記所定の情報は、前記記憶手段に記憶された当該所定の情報を更新した日時を示す日時情報を含み、前記情報制御手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記記憶手段に記憶された前記所定の情報に含まれる前記日時情報を更新することを特徴とする。
【0011】
請求項6にかかる発明は、請求項1又は請求項4にかかる発明において、前記第2印刷手段は、前記コード画像読取手段が前記コード画像を読み取ることができない場合、前記所定の画像を前記紙媒体に印刷することを特徴とする。
【0012】
請求項7にかかる発明は、請求項1又は請求項4にかかる発明において、前記印刷手段が印刷した紙媒体の排出先を第1トレイ又は第2トレイに切り替える紙搬送路切替手段を更に備え、前記印刷手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記紙媒体の排出先を前記紙搬送路切替手段により前記第2トレイに切り替えることを特徴とする。
【0013】
請求項8にかかる発明は、請求項1又は請求項4にかかる発明において、前記所定の情報は、印刷対象の前記紙媒体を特定する紙情報であり、当該紙媒体への印刷の際の印刷条件を示す印刷条件情報と、当該紙媒体の複写元の紙媒体を特定する紙情報又は前記印刷対象の電子文書を特定する電子情報のうち一方とを含むことを特徴とする。
【0014】
請求項9にかかる発明は、請求項1又は請求項4にかかる発明において、前記第2印刷手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記所定の画像を前記コード画像に重ねて印刷することを特徴とする。
【0015】
請求項10にかかる発明は、画像処理方法であって、記憶手段に記憶される所定の情報に関連付けられた識別情報をエンコードしてコード画像を生成するコード画像生成ステップと、印刷対象の電子文書を用いて印刷画像を生成し当該印刷画像と共に、前記コード画像生成ステップで生成したコード画像を紙媒体に印刷する印刷ステップと、前記印刷ステップで印刷した前記紙媒体を走査することにより前記コード画像を読み取るコード画像読取ステップと、前記コード画像読取ステップで読み取った前記コード画像を用いて、読取識別情報を取得するコード取得ステップと、前記コード取得ステップで取得した前記読取識別情報と、前記コード画像生成ステップでエンコードして前記コード画像を生成した前記識別情報とを照合する照合ステップと、前記照合ステップにおける照合の結果、前記識別情報と前記読取識別情報が一致しない場合、所定の画像を前記紙媒体に印刷する第2印刷ステップと、前記照合ステップにおける照合の結果、前記識別情報と前記読取識別情報が一致しない場合、前記所定の情報を前記記憶手段から削除する情報制御ステップとを備えることを特徴とする。
【0016】
請求項11にかかる発明は、画像処理方法であって、記憶手段に記憶される所定の情報に関連付けられた識別情報を発行し、前記所定の情報を当該識別情報と関連付けて管理する情報制御ステップと、前記記憶手段に記憶された前記所定の情報を識別可能な前記識別情報をエンコードしてコード画像を生成するコード画像生成ステップと、印刷対象の電子文書を用いて印刷画像を生成し当該印刷画像と共に、前記コード画像生成手段が生成したコード画像を紙媒体に印刷する印刷ステップと、前記印刷ステップで印刷した前記紙媒体を走査することにより前記コード画像を読み取るコード画像読取ステップと、前記コード画像読取ステップで読み取った前記コード画像を用いて、読取識別情報を取得するコード取得ステップと、前記コード取得ステップで取得した前記読取識別情報と、前記コード画像生成手段がエンコードして前記コード画像を生成した前記識別情報とを照合する照合ステップと、前記照合ステップにおける照合の結果、前記識別情報と前記読取識別情報が一致しない場合、所定の画像を前記紙媒体に印刷する第2印刷ステップとを備え、前記情報制御ステップでは、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記記憶手段に記憶された前記所定の情報を更新し、前記印刷ステップでは、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記コード画像生成ステップでエンコードして生成した前記コード画像を前記印刷画像と共に新たな紙媒体に印刷することを特徴とする。
【0017】
請求項12にかかる発明は、画像処理プログラムであって、請求項10又は請求項11に記載された画像処理方法をコンピュータで実行させることを特徴とする。
【発明の効果】
【0018】
本発明によれば、所定の情報と関連付けられている識別情報がエンコードされたコード画像を紙に印刷する場合、紙に印刷されたコード画像を読み取って取得した識別情報を、エンコードする前の識別情報と照合することにより、コード画像の印刷不良を判別する。そして、コード画像の印刷不良を判別した場合、当該紙に所定の画像を印刷することにより、当該コード画像の印刷不良をユーザに報知することができる。更に、コード画像の印刷不良を判別した場合、当該コード画像にエンコードされる前の識別情報と関連付けられた所定の情報を記憶手段から削除することにより、識別情報と所定の情報との対応関係の整合性を保持することができる。
【0019】
また、本発明によれば、コード画像の印刷不良を判別した場合、当該コード画像にエンコードされる前の識別情報と関連付けられて記憶手段に記憶された所定の情報を更新することにより、識別情報と所定の情報との対応関係の整合性を保持することができる。
【発明を実施するための最良の形態】
【0020】
以下に添付図面を参照して、この発明にかかる画像処理装置、画像処理方法及び画像処理プログラムの最良な実施の形態を詳細に説明する。
【0021】
(1)構成
<画像処理システムの構成>
図1は、本実施の形態にかかる画像処理システム全体の構成を示すブロック図である。本図に示すように、例えば、3つの事業所J1,J2,J3があり、各事業所には、イントラネットNT1,NT2,NT3に各々接続される所内システムSYM1,SYM2,SYM3がある。これらの各所内システムSYM1,SYM2,SYM3がインターネットNT0を介して各々接続されて、画像処理システムが構成される。所内システムSYM1は、3台の複写機MFP1,MFP2,MFP3と1台のパーソナルコンピュータPC1とが接続されて構成される。所内システムSYM2は、2台の複写機MFP4,MFP5と1台のパーソナルコンピュータPC2とが接続されて構成される。所内システムSYM3は、3台の複写機MFP6,MFP7,MFP8が接続されて構成される。各複写機MFP1〜8及び各パーソナルコンピュータPC1〜2は、これらを一意に識別可能なIPアドレスが割り当てられており、HTTP/FTP/UDPなどのネットワークプロトコルに従って通信可能である。このようなネットワークの構築には、種々の公知の技術を用いることができる。ネットワークの構築に用いる技術は本実施の形態においては限定されない。尚、以下では、所内システムSYM1〜SYM3について区別する必要がない場合には、その符号のうち「1」〜「3」を省略して、単に、所内システムSYMと記載する。パーソナルコンピュータPC1〜PC2について区別する必要がない場合には、その符号のうち「1」〜「2」を省略して、単に、パーソナルコンピュータPCと記載する。また、複写機MFP1〜MFP8について区別する必要がない場合には、その符号のうち「1」〜「8」を省略して、単に、複写機MFPと記載する。
【0022】
<画像処理システムの概要>
本実施の画像処理システムにおいては、複写機MFPにおいて電子文書を画像として紙に印刷する際に、複写機MFPは、当該紙に対して当該紙を一意に識別可能な紙ID(識別情報)を発行しこれをエンコードしたコード画像を当該紙に印刷すると共に、当該紙の印刷条件や当該紙の印刷元の電子文書を特定する情報を含む紙情報を当該紙IDと対応付けて記憶する。このようにして紙情報を紙IDと関連付ける。一方、このような紙を複写機MFPにおいて複写する際に、複写機MFPは、当該紙に印刷されたコード画像を読み取り、当該コード画像をデコードして当該紙IDを取得し、当該紙IDに対応付けられた紙情報を取得する。そして、複写機MFPは、当該紙情報を用いて印刷元の電子文書を取得し、取得した電子文書を用いて紙に印刷を行う。この紙への印刷の際に、複写機MFPは、当該紙に対して当該紙を一意に識別可能な紙IDを発行してこれをエンコードしたコード画像を当該紙に印刷すると共に、当該紙IDと対応付けて、複写元の紙IDを含む紙情報を記憶する。
【0023】
<パーソナルコンピュータPCの構成>
次に、パーソナルコンピュータPCの構成について説明する。パーソナルコンピュータPCは、パーソナルコンピュータPC全体を制御するCPU(Central Processing Unit)と、各種制御プログラムや各種データなどを記憶するROM(Read Only Memory)と、RAM(Random Access Memory)と、各種アプリケーションプログラムや各種データを記憶するHDD(Hard Disk Drive)と、外部装置とのデータ通信を制御する通信部と、これらを接続するバス(いずれも図示せず)とを有する一般的なコンピュータの構成を有している。更に、パーソナルコンピュータPC1には、有線又は無線の接続手段を介して、モニタなどの表示部と、キーボードなどの操作部(いずれも図示せず)とが接続される。また、パーソナルコンピュータPCのROMにはプリンタドライバが記憶される。このプリンタドライバがCPUにより起動されると、ユーザからの印刷指示に応じて、通信部を介して、同じ所内システムSYM内にある複写機MFPに印刷命令を送信する。
【0024】
<MFPの構成>
次に、複写機MFPの構成について説明する。図2は、複写機MFPの電気的構成を示すブロック図である。図2に示すように、複写機MFPは、コントローラ10とエンジン部(Engine)60とをPCI(Peripheral Component Interconnect)バスで接続した構成となる。コントローラ10は、複写機MFP全体の制御と描画、通信、図示しない操作部からの入力を制御するコントローラである。エンジン部60は、PCIバスに接続可能なプリンタエンジン等であり、スキャナなどの走査部を備えると共に、たとえば白黒プロッタ、1ドラムカラープロッタ、4ドラムカラープロッタ等の印刷部(いずれも図示せず)を備える。なお、このエンジン部60には、プロッタ等のいわゆるエンジン部分に加えて、誤差拡散やガンマ変換等の画像処理部分が含まれる。また、複写機MFPは、ユーザからの操作が入力される操作装置と情報を表示する表示装置とを一体的に形成した操作パネル20を備える。操作パネル20は、ASIC16に接続される。また、コントローラ10の有するCPU11は、計時機能を有し、現在日時を計時する。このような複写機MFPの詳細な電気的構成については、例えば特開2006−177990に開示されているため、その説明を省略する。
【0025】
次に、複写機MFPのハードウェア構成及び機能的構成について、本実施の形態に係わる部分の概略を説明する。図3は、複写機MFPの本実施の形態に係るハードウェア構成及び機能的構成を簡略化して図示したものである。複写機MFPは、紙を収容する収容トレイ70と、紙の排出先である排紙トレイ71及びガベージトレイ72と、紙搬送路73に沿って紙を搬送する紙搬送機構(図示せず)と、NG記録部74と、紙搬送路切替部75と、コード画像読取部76とを備える。符号61は、上述のエンジン部60の印刷部である。排紙トレイ71は、通常に印刷した紙の排出先であり、ガベージトレイ72は、印刷不良の紙や印刷不能な紙などの排出先である。コード画像読取部76は、当該紙をスキャンすることにより印刷部61で紙に印刷されたコード画像を読み取り、読み取ったコード画像をコントローラ10に渡す。NG記録部74は、コントローラ10の制御の下、紙に画像を形成する記録手段であり、例えば、「NG」などの文字や「×」のマークを形成するスタンプ等の記録手段により構成される。紙搬送路切替部75は、紙搬送路73の途中にあるNG記録部74の下流に設けられ、コントローラ10の制御の下、印刷した紙の排出先を排紙トレイ71又はガベージトレイ72に切り替える機能を有する。
【0026】
上述したコントローラ10は、画像合成の機能と、エンコードの機能と、データ照合の機能と、デコードの機能とを有する。コントローラ10は、エンコードの機能により紙IDをエンコードして生成したコード画像と、電子文書を表す画像とを画像合成の機能により合成する。また、コントローラ10は、収容トレイ70に収容された紙を紙搬送機構により印刷部61まで搬送させ、当該紙への印刷を印刷部61に行わせる。また、コントローラ10は、印刷部61により印刷された紙をコード画像読取部76まで搬送させ、当該紙に印刷されたコード画像をデコードの機能により読み取らせて紙IDを取得する。そして、コントローラ10は、エンコードする前の紙ID(識別情報)と、デコードした紙ID(読取識別情報)とを照合し、これらが不一致である場合又はデコードの機能により紙IDを取得できない場合、紙搬送機構によりNG記録部74まで搬送させた当該紙に対してコードが不具合であることを示すNG記録をNG記録部74に行わせ、紙搬送路切替部75により、紙の排出先をガベージトレイ72に切り替えて、当該紙を排出させる。コントローラ10のこれらの機能は、以下の機能的構成の説明において及び後述の動作欄で詳細に説明する。
【0027】
次に、CPU11がROM(Read Only Memory)12aに記憶された各種プログラムを実行することにより実現される機能、即ち、複写機MFPの機能的構成について説明する。図4は、複写機MFPの機能的構成を示すブロック図である。複写機MFPの機能は、アプリケーション層M1と、サービス/モジュール層M2と、データベース層M3とに大別される。アプリケーション層M1は、印刷アプリ100とスキャンアプリ101とを有する。サービス/モジュール層M2は、情報処理サービス(以下、単にサービスという)として、SRMS(Service Resource Management Service)200と、PIDS(Paper ID Service)201と、EIDS(Electric ID Service)202とを有し、更に、モジュールとして、エンコーダ203と、デコーダ204と、リポジトリ205とを有する。データベース層M3は、サービスDB(Data Base)300と、紙情報DB301と、電子情報DB302と、電子文書を記憶する電子文書DB303とを有する。これらのDB300〜303は、HDDなどに記憶されている。
【0028】
印刷アプリ100は、SRMS200、PIDS201、EIDS202及びエンコーダ203を用いて、印刷対象の電子文書を取得し、当該電子文書の印刷を印刷部により行なう。また、印刷アプリ100は、スキャンアプリ101からの印刷命令により、印刷を印刷部により行う。スキャンアプリ101は、SRMS200、PIDS201、EIDS202及びデコーダ204を用いて、スキャンした印刷対象の紙について、印刷元の電子文書を取得し、印刷命令と共に印刷アプリ100に渡す。
【0029】
SRMS200は、サービスDB300を利用して、SRMS200、PIDS201、EIDS202の各サービスに関する情報の管理を行なう。PIDS201は、紙情報DB301を利用して、印刷した紙に係る情報を管理する。EIDS202は、電子情報DB302及びリポジトリ205を利用して、印刷対象の電子文書に係る情報を管理する。リポジトリ205は、電子文書DB303に記憶される電子文書を管理する。リポジトリ205は、電子文書を管理する機能を有する公知の文書管理システムである。このため、リポジトリ205の詳細については説明を省略するが、リポジトリ205は、電子文書を取得したり、電子文書を電子文書DB303に登録したり、電子文書DB303に記憶されている電子文書を更新したり又は削除したりする機能を有する。EIDS202は、リポジトリ205のこれらの機能を利用して、電子文書本体に係る処理(電子文書の登録/更新/削除/取得)を行う。尚、電子文書DB303への電子文書を登録するとは、電子文書DB303における電子文書の記憶を開始するということである。他のDBへの他の情報の登録についても同様の意味を有するものとする。
【0030】
SRMS200、PIDS201、EIDS202の各サービスは、アプリケーション層M1からの処理命令や、SOAP通信による外部の装置からの処理命令により、各種処理を行う。また、SRMS200については、UDP通信による他の複写機MFPの有するSRMS200からの処理命令も受け付け、当該処理命令により、各種処理を行う。
【0031】
以下、各サービス、各モジュールの詳しい機能の構成及び各データベースの構成について説明する。尚、説明の便宜上、複写機MFP1〜MFP8は各々、その符号のうち「1」〜「8」をアンダーラインと共に印刷アプリ100、スキャンアプリ101、SRMS200、PIDS201、EIDS202、エンコーダ203、デコーダ204、リポジトリ205、サービスDB300、紙情報DB301、電子情報DB302及び電子文書DB303の各末尾に付加したものを有するものとする。即ち、複写機MFP1は、印刷アプリ100_1、スキャンアプリ101_1、SRMS200_1、PIDS201_1、EIDS202_1、エンコーダ203_1、デコーダ204_1、リポジトリ205_1、サービスDB300_1、紙情報DB301_1、電子情報DB302_1及び電子文書DB303_1を有する。複写機MFP2〜MFP8についても同様である。また、以下に説明する各部についても同様である。尚、これらの区別が必要ない場合には、アンダーライン及び「1」〜「8」の符号を省略して説明する。
【0032】
<SRMSの構成>
SRMS200は、サービス情報を管理する機能のことである。図5は、SRMS200の構成を示すブロック図である。SRMS200は、インターフェース部SR1と、処理機能部SR2とを有する。インターフェース部SR1は、更に9つのインターフェースを有する。図5に示すように、各インターフェースは、サービス登録、サービス変更、サービス削除、サービス取得、信頼関係構築、信頼関係破棄、同期、サービス検索、サービス問合せである。このうち、サービス登録、サービス変更、サービス削除、サービス取得、信頼関係構築、信頼関係破棄、同期、サービス検索は、Webサービスを利用可能なインターフェースである。Webサービスは、現在非常に多く利用されているネットワーク通信の1つであり、標準化されたSOAP(Simple Object Access Protocol)メッセージという構造化されたデータをネットワークに送信あるいはネットワークから受信する仕組みである。この仕組みを取り入れているプログラミング技法としては、C言語/C_言語/Basic言語ではMicorosoft(登録商標)のNET Framework(登録商標)や、Java(登録商標)言語ではApacheのAXISなどが有名であり、これらのプログラミング技法が多く利用されている。本実施の形態では、上記のいずれのプログラミング技法を使ってWebサービスの仕組みを構築しても構わない。また、サービス問い合わせは、UDP通信を用いたインターフェースである。UDP(User Datagram Protocol)とは、TCP/IPにおける、データグラム通信を実現するためのトランスポート層プロトコルである。処理機能部SR2も同様に、サービス登録処理部SR20、サービス変更処理部SR21、サービス削除処理部SR22、サービス取得処理部SR23、信頼関係構築処理部SR24、信頼関係破棄処理部SR25、同期処理部SR26、サービス検索処理部SR27、サービス問合せ処理部SR28の9つの各処理部からなる。尚、インターフェース部SR1のサービス問合せ及びサービス問合せ処理部SR28の機能と、インターフェース部SR1のサービス検索及びサービス検索処理部SR27の機能とは、ブロードキャスト機能を有し、多数の通信相手に対してデータを送信する。
【0033】
インターフェース部SR1の各インターフェースは、上記した順に上記の処理機能部SR2の各処理部SR20〜SR28に各々繋がっており、外部装置又はアプリケーション層M1から処理の要求を受け付けると、要求された処理に対応する処理部に対して、処理に用いるパラメータを渡し、対応する各処理部から当該パラメータを用いた処理結果を受け取って、処理の要求元へ返す機能を実現させる。各処理部は、対応する各インターフェースからパラメータを渡されると、サービスDB300にアクセスし、当該パラメータを用いて処理を実行して、対応するインターフェースに処理結果を返す。
【0034】
<サービスDBの構成>
次に、サービスDB300について説明する。サービスDB300は、SRMS200を表すサービス情報、PIDS201を表すサービス情報、EIDS202を表すサービス情報を各々1レコードとして記憶するサービス情報テーブル300Aと、後述する信頼関係情報を記憶する信頼関係情報テーブル300Bとを有する。
【0035】
図6は、サービス情報テーブル300Aのデータ構成を例示する図である。サービス情報テーブル300Aには、サービスID毎に、SRMS200を表すサービス情報、PIDS201を表すサービス情報、EIDS202を表すサービス情報が各々記憶される。サービスIDとは、各サービス情報を一意に識別可能なIDのことであり、SRMS200が後述するサービス登録機能によって各サービス情報をサービス情報テーブル300Aに登録する際に発行するものである。具体的には、サービスIDは、以下に説明するサービスのUUID及びローカルIDの組み合わせによって構成される。サービス情報テーブル300Aに記憶される各サービス情報は、図6に示されるように、「名称」、「説明」、「名前空間」、「バージョン」、「URI(Uniform Resource Identifier)」、「サービスのUUID」、「ローカルID」、「マスターUUID」、「登録日時」、「更新日時」をデータとして含む。「名称」と「説明」とは、ユーザがそのサービスが何であるかを理解するために各々付与された文字列である。「名称」は、例えば、「SRMS」、「PIDS」、「EIDS」と表現される。「名前空間」は、サービスを一意に識別可能な文字列である。即ち、「名前空間」は、この「名前空間」によって、同じ名称のサービスであっても名前空間が異なれば異なるサービスであることを識別可能にするための文字列であり、例えば「jp.co.ricoh.srms」のように表現される。「バージョン」は、そのサービスのバージョンを示す文字列である。「URI」は、そのサービスがネットワーク上のどこに存在するかを示す文字列である。例えば図1における複写機MFP5のPIDS201_5の「URI」は、「http://192.168.1.15/pids/」のように表現される。
【0036】
「サービスのUUID」は、SRMS200、PIDS201及びEIDS202の各サービスをグローバルに一意に識別するためのIDであり、例えば、Windows(登録商標)で用いられるオブジェクトクラスIDであるGUIDやネットワークカードに割り振られるMACアドレスなどである。サービスに対してUUIDを発行する技術は、既に公知であり、多数の技術が存在するが、本実施の形態においては、いずれの技術を用いても良い。UUIDが発行されるタイミングは、SRMS200、PIDS201及びEIDS202の機能を実現させるプログラムが複写機MFPにインストールされる時であり、当該プログラムが複写機MFPからアンインストールされるまでUUIDは変更されないものとする。「ローカルID」は、同一のSRMS200においてサービス情報を一意に識別するためのIDであり、上述のサービスのUUIDとの組み合わせにより、サービス情報をグローバルに一意に識別可能にする。「マスターUUID」は、そのサービス情報を管理しているSRMS200に付与されているUUIDである。この「マスターUUID」は、後述する同期機能を実現する際に用いられる。登録日時及び更新日時は、そのサービス情報をサービス情報テーブル300Aに登録した日時及び更新した日時を各々示す。
【0037】
図7は、信頼関係情報テーブル300Bのデータ構成を例示する図である。信頼関係情報テーブル300Bには、信頼関係情報として、信頼関係を結んでいるSRMS200のUUIDが記憶される。信頼関係を結ぶとは、他の複写機MFPの有するSRMS200とサービス情報を共有し、サービス情報を同期させることを可能にすることである。この詳細については後述する。
【0038】
<PIDSの構成>
次に、3つのサービスのうちPIDS201の構成について説明する。図8は、PIDS201の構成を示すブロック図である。PIDS201は、紙情報を管理する機能のことである。紙情報とは、印刷した紙に関する情報である。PIDS201の機能は更に、インターフェース部PI1と、処理機能部PI2とを有する。インターフェース部PI1は、更に4つのインターフェースを有する。各インターフェースは、紙登録、紙情報変更、紙削除、紙取得である。これらは全て、Webサービスを利用可能なインターフェースである。処理機能部PI2も同様に、紙登録処理部PI20、紙変更処理部PI21、紙削除処理部PI22、紙取得処理部PI23の4つの各処理部からなる。
【0039】
インターフェース部PI1の各インターフェースは、上記した順に上記の各処理部に各々繋がっており、外部装置又はアプリケーション層M1から処理の要求を受け付けると、要求された処理に対応する処理部に対して、処理に用いるパラメータを渡し、対応する各処理部から当該パラメータを用いた処理結果を受け取って、処理の要求元へ返す機能を実現させる。各処理部は、対応する各インターフェースからパラメータを渡されると、紙情報DB301にアクセスし、当該パラメータを用いて処理を実行して、処理結果を対応するインターフェースに返す。各処理部PI20〜PI23の行う処理については、後述の動作欄で詳述する。
【0040】
<紙情報DBの構成>
ここで、紙情報DB301について説明する。紙情報DB301は、印刷した1枚毎の紙に関する紙情報を1レコードとして記憶する紙情報テーブル301Aを有する。
【0041】
図9は、紙情報テーブル301Aのデータ構成を例示する図である。紙情報テーブル301Aには、紙ID毎に紙情報が記憶される。紙IDとは、印刷対象の紙1枚毎に当該各紙を一意に識別可能なIDであり、PIDS201が後述する紙登録機能によって紙情報を紙情報テーブル301Aに登録する際に発行するものである。具体的には、紙IDは、以下に説明するPIDS201のUUID及びローカルIDの組み合わせによって構成される。また、例えば、一度の印刷処理で3枚の紙に印刷を行った場合、3つの紙IDが発行され、当該3枚の紙に対して各々対応付けられる。紙情報テーブル301Aに記憶される紙情報は、「名称」、「説明」、「PIDSのUUID」、「ローカルID」、「登録日時」、「更新日時」、「元文書へのリンク」、「印刷条件」をデータとして含む。「名称」と「説明」とは、ユーザがその紙が何であるかを理解するために各々付与された文字列である。「PIDSのUUID」とは、紙情報を管理するPIDS201のUUIDである。UUIDの発行方法はSRMS200の場合と同様である。「ローカルID」は、同一のPIDS201において紙情報を一意に識別するためのIDであり、上述のPIDS201のUUIDとの組み合わせにより、紙情報をグローバルに一意に識別可能にする。「登録日時」は、紙情報を紙情報テーブル301Aに登録した日時を示す。「更新日時」は、紙情報テーブル301Aに登録されている紙情報を更新した日時を示す。「元文書へのリンク」は、その紙がどの電子文書を印刷したものかを示す情報、即ち、印刷元の電子文書を特定する情報、あるいは、その紙がどの紙を複写したものかを示す情報、即ち、複写元の紙を特定する情報を示す。電子文書を特定する情報とは、例えば、後述のEIDS202のUUID及びEIDS202が発行するローカルIDの組み合わせ(電子ID)である。紙を特定する情報とは、例えば、PIDS201のUUID及びPIDS201が発行するローカルIDの組み合わせ(紙ID)である。これによって、ある紙を複写する際に当該紙をスキャンしたとき、複写元の紙がどれかを特定することができ、さらにその紙に係る紙情報における「元文書へのリンク」を参照することにより、印刷元の電子文書を特定する情報を最終的に取得することができ、当該電子文書を取得することが可能になる。「印刷条件」は、その紙を印刷する際の条件としてユーザにより設定された、例えば、紙の大きさ、集約、割付、拡大/縮小、などであり、パーソナルコンピュータPCのプリンタドライバから渡されるものである。
【0042】
<EIDSの構成>
次に、3つのサービスのうちのEIDS202の構成について説明する。図10は、EIDS202の構成を示すブロック図である。EIDS202は、電子情報を管理する機能のことである。電子情報とは、電子文書に関する情報である。電子情報の詳細については後述する。EIDS202は、インターフェース部EI1と、処理機能部EI2とを有する。インターフェース部EI1は更に、4つのインターフェースを有する。図10においては、各インターフェースは、電子情報登録、電子情報変更、電子情報削除、電子情報取得である。これらは全て、Webサービスを利用可能なインターフェースである。処理機能部EI2も同様に、電子情報登録処理部EI20、電子情報変更処理部EI21、電子情報削除処理部EI22、電子情報取得処理部EI23の4つの各処理部からなる。
【0043】
インターフェース部EI1の各インターフェースは、上記した順に上記の各処理部に各々繋がっており、外部装置又はアプリケーション層M1から処理の要求を受け付けると、要求された処理に対応する処理部に対して、処理に用いるパラメータを渡し、対応する各処理部から当該パラメータを用いた処理結果を受け取って、処理の要求元へ返す機能を実現させる。各処理部は、対応する各インターフェースからパラメータを渡されると、リポジトリ205を利用して電子文書本体に係る処理を行うと共に、電子情報DB302にアクセスし、当該パラメータを用いて処理を実行して、処理結果を対応するインターフェースに返す。このように、EIDS202は、電子情報を管理すると共に、リポジトリ205と連携して電子文書本体を管理する。
【0044】
<電子情報DBの構成>
ここで、電子情報DB302について説明する。電子情報DB302は、電子情報を1レコードとして記憶する電子情報テーブル302Aを有する。
【0045】
図11は、電子情報テーブル302Aのデータ構成を例示する図である。電子情報テーブル302Aには、電子ID毎に、電子情報が記憶される。電子IDとは、電子情報を一意に識別可能なIDであり、EIDS202が当該電子情報を電子情報テーブル302Aに登録する際に発行するものである。具体的には、電子IDは、以下に説明するEIDS202のUUID及びローカルIDの組み合わせによって構成される。電子情報テーブル302Aに記憶される電子情報は、「名称」、「説明」、「EIDSのUUID」、「ローカルID」、「登録日時」、「更新日時」、「リポジトリへのリンク」をデータとして含む。「名称」及び「説明」は、人間がその電子文書が何であるかを理解するための文字列である。「EIDSのUUID」は、電子情報を管理するEIDS202のUUIDである。UUIDの発行方法はSRMS200の場合と同様である。「ローカルID」は、同一のEIDS202において電子情報を一意に識別するためのIDであり、上述のEIDS202のUUIDとの組み合わせにより、電子情報をグローバルに一意に識別可能にする。「登録日時」及び「更新日時」は、その電子情報を電子情報テーブル302Aに登録した日時及び更新した日時を各々示す。「リポジトリへのリンク」は、電子文書へのリンクを示すものであり、例えば、電子文書に対してリポジトリ205が発行するIDやファイルパスなどを示す。
【0046】
<エンコーダの構成>
次に、エンコーダ203について説明する。本実施の形態におけるエンコーダ203は、種々の任意の公知技術を用いて構成することができる。エンコーダ203は、指定された文字列やバイト配列を、1次元のバーコードまたは2次元のコード画像に変換する。1次元のバーコードとしては、Code39、EAN-8、EAN-13、NW-7、Code128などのコードがあり、2次元のコード画像としては、QR、DataMatrix、PDF417などのコードがある。いずれのコードを用いるかは、本実施の形態においては限定されない。また、それぞれのコードは、コード画像を作成するための各々公知のパラメータを有しており、本実施の形態においては、エンコーダ203は、エンコード対象のコードに対応するパラメータを正しくセットし、コード画像を生成する。
【0047】
<デコーダの構成>
次に、デコーダ204について説明する。本実施の形態におけるデコーダ204は、種々の任意の公知技術を用いて構成することができる。デコーダ204は、上述のエンコーダ203により生成したコード画像から、元の文字列やバイト配列を復元する。また、デコーダ204は、1枚の任意の画像の中からコード画像が存在する位置を特定するディテクト機能を有し、特定した位置に現れる画像をコード画像としてデコーダに入力することにより、当該コード画像から元の文字列やバイト配列を復元する。このディテクト機能についても公知技術を利用することができる。
【0048】
<印刷アプリの構成>
次に、印刷アプリ100について説明する。印刷アプリ100は、印刷命令元の違いに応じた2つの機能がある。具体的には、ドライバ印刷機能と、スキャン印刷機能とである。ドライバ印刷機能は、パーソナルコンピュータPCのプリンタドライバからの印刷命令を受け付け、当該印刷命令に従って印刷する機能である。更に、ドライバ印刷機能においては、上述した電子文書と共にコード画像を紙に印刷した場合、当該紙に印刷されたコード画像を読み取り、当該コード画像をデコードして得られる紙IDと、当該コード画像の基に紙IDとを照合し、これらが不一致の場合又はコード画像自体が読み取り不能である場合、当該紙に対してNG記録を行い、当該紙をガベージトレイ72に排出させる。スキャン印刷機能は、当該複写機MFPにおいて複写対象の紙をスキャンした後述のスキャンアプリ101からの印刷命令を受け付け、当該印刷命令に従って印刷する機能である。
【0049】
<スキャンアプリの構成>
次に、スキャンアプリ101について説明する。スキャンアプリ101は、複写機MFPに複写対象の紙がセットされ、当該複写機MFPの操作パネル20においてユーザからの印刷指示が入力されることにより、走査部が当該紙をスキャンして読み取った、当該紙に印刷されたコード画像を取得し、デコーダ204によって当該コード画像からデコードされた紙IDを取得する。そして、スキャンアプリ101は、PIDS201の機能により、当該紙IDから、紙情報DB301に記憶されている紙情報を取得し、当該紙情報に基づいて、EIDSの機能により、電子情報DB302に記憶されている電子情報を取得し、当該電子情報を用いて電子文書DB303に格納されている電子文書を取得して、当該電子文書、紙ID及び印刷条件を含む印刷命令を印刷アプリ100に渡す。
【0050】
(2)動作
<SRMSの動作>
次に、本実施の形態における複写機MFPの動作について説明する。まず、複写機MFPの有するSRMS200が他の複写機MFP又はパーソナルコンピュータPCとの間でデータ通信を行い、各種の処理を実行する動作の手順について説明する。まず、SRMS200のインターフェース部SR1が上述したWebサービスにおけるSOAPメッセージを用いて行うSOAP通信の基本的な処理の手順について、図12のフローチャートを参照しながら説明する。図12は、WebサービスにおいてSOAPメッセージを用いたSOAP通信の基本的な処理の手順を示すフローチャートである。尚、図12においては、便宜上、SRMS200の通信相手をクライアントと表記しているが、これは、当該複写機MFP以外の他の複写機MFP又はパーソナルコンピュータPCのいずれかである。
【0051】
まず、クライアントは、SRMS200のインターフェース部SR1に対し、セッションの確立を要求する(ステップS1)。セッションの確立は、上述したNET FrameworkやAXISによって提供されているモジュールを利用することで行なうことができる。そのモジュールによってインターフェース部SR1でセッション管理することもできるが、ここでは、インターフェース部SR1が、処理機能部SR2の上述のいずれかの処理部に情報を渡し、当該処理部で独自にセッションを管理する。このような技術において、インターフェース部SR1は、クライアントからのセッションの確立の要求を受け付けると、処理機能部SR2に対してセッションの確立を要求する(ステップS2)。処理機能部SR2は、インターフェース部SR1からのセッションの確立の要求を受け付けると、当該セッションを管理するためのセッションIDを発行すると共に、当該セッションの有効期限などの情報を含むセッション情報を生成する(ステップS3)。そして、処理機能部SR2は、セッションIDをインターフェース部SR1に送信する(ステップS4)。インターフェース部SR1は、セッションIDを受信すると、このセッションIDを管理するためのセッション情報を生成すると共に、セッションIDをクライアントに送信する(ステップS5)。クライアントは、当該セッションIDを受信する(ステップS6)。この結果、クライアントと、サーバとの間でセッションが確立される。このセッションが確立されている間、SRMS200は、上述の各処理を行うことができる。
【0052】
そして、クライアントが、各処理の実行をインターフェース部SR1に要求すると(ステップS7)、インターフェース部SR1は、クライアントからの要求に応じたインターフェースにアクセスし、処理機能部SR2の各処理部SR20〜28のうち当該インターフェースに対応する処理部(対象処理部という)に処理の実行を要求する(ステップS8)。尚、クライアントは、処理の実行にパラメータを要する場合、処理の実行の要求時に、当該パラメータをSOAPメッセージにシリアライズして、インターフェース部SR1に送る。インターフェース部SR1は、クライアントから送られたSOAPメッセージをデシリアライズしてパラメータを得て、処理の実行を処理部に要求する際に、このパラメータを対象処理部に渡す。また、クライアントは、処理の実行の要求時に、セッションの確立時に得たセッションIDをWebサーバに渡すようにしても良い。この場合、インターフェース部SR1は、クライアントから受け取ったセッションIDと、保持しているセッション情報とを照合し、当該セッションIDに対応するセッションが存在するかどうか、当該セッションの有効期限は切れていないかどうかなどを判断し、問題がなければ、クライアントから渡されたパラメータを対象処理部へ渡し、処理の完了を待つ。
【0053】
一方、対象処理部は、インターフェース部SR1からの処理実行要求に従って、処理を実行し(ステップS9)、対応するインターフェースを介して処理結果をインターフェース部SR1に返す(ステップS10)。インターフェース部SR1は、対象処理部から処理結果を受信すると、これをクライアントに送信し(ステップS11)、クライアントは当該処理結果を受信する(ステップS12)。そして、セッションを終了する際には、クライアントはセッションの破棄をインターフェース部SR1へ要求する(ステップS13)。インターフェース部SR1は、管理していたセッション情報を削除すると共に、セッションの破棄を処理部へ要求する(ステップS14)。対象処理部も、同様にして、セッション情報を削除し(ステップS15)、その削除が成功した旨を示す削除結果をインターフェース部SR1へ送信する(ステップS16)。インターフェース部SR1が当該削除結果をクライアントへ送信し(ステップS17)、当該削除結果をクライアントが受信して(ステップS18)、クライアントとサーバとの間のセッションを終了する。尚、セッションを終了する時も、セッションを確立した時の方法に準じて、上述のNET FrameworkやAXISによって提供されているモジュールによってセッション管理するようにしても良いし、対象処理部で独自にセッション管理するようにしていても良い。
【0054】
次に、ステップS7の処理の実行要求に従って、ステップS8,S11で行われる各インターフェースの動作及びS9,S10で行われる各処理部の動作の詳細について説明する。
【0055】
a)サービス登録
サービス登録とは、サービス情報をサービスDB300に格納されているサービス情報テーブル300Aへ登録する機能のことである。図13は、サービス登録の機能により実現されるサービス登録処理の手順を示すフローチャートである。まず、サービス登録処理部SR20は、インターフェース部SR1を介してクライアントからサービス情報を受け取る(ステップS20)。そして、サービス登録処理部SR20は、サービス情報テーブル300Aに記憶されているサービス情報のローカルIDの最大値を調べる(ステップS21)。例えば、その最大値が「10」だった場合、サービス登録処理部SR20は、「11」を新しいローカルIDとして発行し、受け取ったサービス情報のローカルIDに「11」をセットする(ステップS22)。次に、サービス登録処理部SR20は、受け取ったサービス情報のマスターUUIDに、自身のSRMS200のUUIDの値をセットする(ステップS23)。この結果、当該サービス情報に対して、SRMS200のUUID及びローカルIDの組み合わせであるサービスIDが発行されて、当該サービスIDが当該サービス情報に対応付けられる。尚、自身のSRMS200のUUIDはインストール時に発行されており、例えば、HDD18などの記憶装置に記憶さている。次に、サービス登録処理部SR20は、CPU11の有する計時機能により現在日時を取得し、受け取ったサービス情報の登録日時と更新日時に当該現在日時をセットする(ステップS24)。そして、サービス登録処理部SR20は、各情報をセットしたサービス情報をサービス情報テーブル300Aに登録する(ステップS25)。次いで、サービス登録処理部SR20は、インターフェース部SR1を介して要求元のクライアントへ本SRMS200のUUIDと、発行したサービスIDとを返す(ステップS26)。
【0056】
b)サービス変更
サービス変更とは、サービス情報テーブル300Aに登録済みのサービス情報を新しいサービス情報に変更する機能のことである。図14は、サービス変更の機能により実現されるサービス変更処理の手順を示すフローチャートである。サービス変更処理部SR21は、インターフェース部SR1のうちサービス変更のインターフェースを介してクライアントからサービス情報を受け取る(ステップS40)。サービス変更処理部SR21は、サービス情報テーブル300Aを参照し、受け取ったサービス情報のサービスのUUIDの値が一致するサービス情報のレコードを検索する(ステップS41)。該当するレコードが存在しない場合(ステップS42:NO)、サービス変更処理部SR21は、「指定のサービス情報がない」旨を示すエラー情報を返す(ステップS49)。該当するレコードが存在する場合(ステップS42:YES)、サービス変更処理部SR21は、該当したレコードのマスターUUIDを参照し、本SRMS200のUUIDの値と一致するか否かを判定する(ステップS43)。UUIDの値が一致しない場合(ステップS43:NO)、該当したレコードは、後述する同期機能によって他の複写機MFPのSRMS200から取得したサービス情報であるため、このサービス情報を本SRMS200のサービス変更処理部SR21は変更することができない。このため、サービス変更処理部SR21は、「本SRMSが管理するサービス情報ではない」旨を示すエラー情報を返す(ステップS48)。UUIDの値が一致する場合(ステップS43:YES)、サービス変更処理部SR21は、当該レコードのローカルID、マスターUUID及び登録日時を、受け取ったサービス情報にセットする(ステップS44)。これは、ローカルID、マスターUUID及び登録日時を変更させないようにするためである。そして、サービス変更処理部SR21は、CPU11の有する計時機能により現在日時を取得し、受け取ったサービス情報の更新日時に当該現在日時をセットする(ステップS45)。サービス変更処理部SR21は、以上のようにして各情報をセットしたサービス情報をサービス情報テーブル300Aに対して更新(上書き)する(ステップS46)。次いで、サービス変更処理部SR21は、インターフェース部SR1を介して要求元のクライアントへ処理の成功を示す情報を返す(ステップS47)。
【0057】
c)サービス削除
サービス削除とは、サービス情報テーブル300Aに登録済みのサービス情報を削除する機能のことである。図15は、サービス削除の機能により実現されるサービス削除処理の手順を示すフローチャートである。まず、サービス削除処理部SR22は、インターフェース部SR1を介してクライアントから削除対象のサービスのUUIDを受け取る(ステップS60)。サービス削除処理部SR22は、サービス情報テーブル300Aを参照し、受け取ったサービスUUIDの値が一致するサービス情報のレコードを検索する(ステップS61)。該当するレコードが存在しない場合(ステップS62:NO)、サービス削除処理部SR22は、「指定のサービス情報がない」旨を示すエラー情報を返す(ステップS67)。該当するレコードが存在する場合(ステップS62:YES)、サービス削除処理部SR22は、該当したレコードのマスターUUIDを参照し、本SRMS200のUUIDの値と一致するか否かを判定する(ステップS63)。UUIDの値が一致しない場合(ステップS63:NO)、サービス削除処理部SR22は、「本SRMSが管理するサービス情報ではない」旨を示すエラー情報を返す(ステップS66)。UUIDの値が一致する場合(ステップS63:YES)、サービス削除処理部SR22は、サービス情報テーブル300Aから当該レコードを削除する(ステップS64)。次いで、サービス削除処理部SR22は、インターフェース部SR1を介して要求元のクライアントへ処理の成功を示す成功情報を返す(ステップS65)。
【0058】
d)サービス取得
サービス取得とは、サービス情報テーブル300Aに登録されているサービス情報を取得する機能のことである。このサービス取得機能を細分化すると、3つのインターフェースに分けられる。これらのインターフェースを各々、サービス取得1〜3とする。サービス取得1は、サービス情報のサービスのUUIDを指定してサービス情報を取得する機能である。サービス取得2は、サービス情報のサービスのUUIDを指定せず、そのSRMS200が直接管理するサービス情報のリストを取得する機能である。尚、そのSRMS200が直接管理するか否かは、マスターUUIDがそのSRMS200のUUIDの値に一致するか否かにより判別することができる。サービス取得3は、サービス情報テーブル300A内のSRMS200のサービス情報のみのリストを取得する機能である。図16は、サービス取得の機能により実現されるサービス取得処理の手順を示すフローチャートである。まず、サービス取得処理部SR23は、インターフェース部SR1を介してクライアントからサービス取得要求を受け取る(ステップS80)。サービス取得処理部SR23は、要求されたサービス取得の種別を判別し(ステップS81、ステップS87)、このサービス取得要求がサービス取得1を要求するものである場合(ステップS81:YES)、サービス取得処理部SR23は、取得対象のサービス情報のサービスのUUIDを受け取る(ステップS82)。そして、サービス取得処理部SR23は、サービス情報テーブル300Aを参照し、受け取ったUUIDの値が一致するサービス情報のレコードを検索する(ステップS83)。該当するレコードが存在しない場合(ステップS84:NO)、サービス取得処理部SR23は、「該当のサービス情報がない」旨を示すエラー情報を返す(ステップS86)。該当するレコードが存在する場合(ステップS84:YES)、サービス取得処理部SR23は、該当したレコードであるサービス情報を、インターフェース部SR1を介してクライアントへ返す(ステップS85)。
【0059】
また、サービス取得要求がサービス取得2を要求するものである場合(ステップS81:NO,ステップS87:YES)、サービス取得処理部SR23は、サービス取得1の場合と異なり、取得対象のサービス情報のサービスのUUIDなどのパラメータを受け取らず、サービス情報テーブル300Aを参照して、サービス情報のマスターUUIDが本SRMS200のUUIDの値に一致するレコードを検索する(ステップS88)。該当するレコードが存在しない場合(ステップS89:NO)、サービス取得処理部SR23は、「該当のサービス情報がない」旨を示すエラー情報を返す(ステップS86)。該当するレコードが存在する場合(ステップS89:YES)、サービス取得処理部SR23は、該当するレコードをリスト化してサービス情報リストとしてインターフェース部SR1を介してクライアントへ返す(ステップS90)。
【0060】
また、サービス取得要求がサービス取得3を要求するものである場合(ステップS81:NO,ステップS87:NO)、サービス取得処理部SR23は、サービス取得1の場合と異なり、取得対象のサービス情報のサービスのUUIDなどのパラメータを受け取らず、サービス情報テーブル300Aを参照して、サービス情報の名前空間が「SRMS」であることを示す(例えば、jp.co.ricoh.srms)レコードを検索する(ステップS91)。該当するレコードが存在しない場合(ステップS92:NO)、サービス取得処理部SR23は、「該当のサービス情報がない」旨を示すエラー情報を返す(ステップS86)。該当するレコードが存在する場合(ステップS92:YES)、サービス取得処理部SR23は、該当するレコードをリスト化してサービス情報リストとしてインターフェース部SR1を介してクライアントへ返す(ステップS93)。
【0061】
e)信頼関係構築
信頼関係構築とは、当該複写機MFPのSRMS200と信頼関係を結ぶ他の複写機MFPの有するSRMS200が管理するサービスを、当該複写機MFPの有するサービス情報テーブル300Aに登録する機能のことである。信頼関係を結ぶとは、具体的には、SRMS200が他のSRMS200とサービス情報を交換して、サービス情報を同期させることが可能な関係を当該SRMS200が他のSRMS200とが結ぶことである。図17は、信頼関係構築機能により実現される信頼関係構築処理の手順を示すフローチャートである。まず、信頼関係構築処理部SR24は、インターフェース部SR1を介してクライアントから信頼関係構築要求を受け取り、信頼関係を結ぶ対象のSRMS200のサービス情報を受け取る(ステップS100)。そして、信頼関係構築処理部SR24は、サービス情報テーブル300Aを参照して、サービス情報のサービスのUUIDを参照し、次いで、信頼関係情報テーブル300BにすでにそのUUIDの値が存在するか否かを判定する(ステップS101)。該当するUUIDの値が既に存在している場合(ステップS102:YES)、信頼関係構築処理部SR24は、「すでに登録されている」旨を示すエラー情報を返す(ステップS106)。該当するUUIDの値が存在しない場合(ステップS102:NO)、信頼関係構築処理部SR24は、信頼関係情報テーブル300Bに該当のUUIDの値を登録する(ステップS103)。そして、信頼関係構築処理部SR24は、該当のUUIDを有するサービス情報をサービス情報テーブル300Aに登録する(ステップS104)。これは、後述する同期処理で、同期対象のSRMS200のサービス情報を参照する必要があるためである。次いで、信頼関係構築処理部SR24は、インターフェース部SR1を介して要求元のクライアントへ処理の成功を示す成功情報を返す(ステップS105)。
【0062】
図18は、図1に示した画像処理システムにおいて、信頼関係を結んでいる複写機MFPの関係を模式的に例示した図である。同図においては、点線で繋がれている複写機MFP同士が信頼関係を結んでいるものとする。例えば、複写機MFP1は複写機MFP2と信頼関係を結んでいる。複写機MFP2は複写機MFP1と複写機MFP3と複写機MFP4と信頼関係を結んでいる。複写機MFP3は複写機MFP2と複写機MFP7と信頼関係を結んでいる。複写機MFP4は複写機MFP2と複写機MFP5と信頼関係を結んでいる。複写機MFP5は複写機MFP4と信頼関係を結んでいる。複写機MFP7は複写機MFP3と複写機MFP8と信頼関係を結んでいる。複写機MFP8は複写機MFP7と信頼関係を結んでいる。複写機MFP6は他の複写機MFP1〜5とは信頼関係を結んでいない。
【0063】
図19は、画像処理システムにおいて以上のような信頼関係があるときの複写機MFP3の有するサービス情報テーブル300A_3の状態を示す図である。図20は、画像処理システムにおいて以上のような信頼関係があるときの複写機MFP7の有するサービス情報テーブル300A_7の状態を示す図である。複写機MFP3は、MFP2とMFP7と信頼関係を結んでいるので、複写機MFP3の有するサービス情報テーブル300A_3には、SRMS200_3が直接管理するSRMS200_3、PIDS201_3及びEIDS202_3の各サービス情報に加え、複写機MFP2の有するSRMS200_2が直接管理するSRMS200_2、PIDS201_2及びEIDS202_2の各サービス情報と、複写機MFP7の有するSRMS200_7が直接管理するSRMS200_7、PIDS201_7及びEIDS202_7の各サービス情報とが記憶される。同様に、複写機MFP7は、複写機MFP3と複写機MFP8と信頼関係を結んでいるので、複写機MFP7の有するサービス情報テーブル300A_7には、複写機MFP7の有するSRMS7が直接管理するSRMS200_7、PIDS201_7及びEIDS202_7の各サービス情報に加え、複写機MFP3の有するSRMS200_3が直接管理するSRMS200_3、PIDS201_3及びEIDS202_3の各サービス情報と、複写機MFP8の有するSRMS200_8が直接管理するSRMS200_8、PIDS201_8及びEIDS202_8の各サービス情報とが記憶される。以上のように、サービス情報テーブル300Aには、同じ複写機MFP内のSRMS200が直接管理するサービス情報以外に、信頼関係を結んでいる他の複写機MFPの有するSRMS200が直接管理するサービス情報が記憶される。他のSRMS200が直接管理するサービス情報の取得については、後述の同期機能により実現される。このような構成により、複写機MFPにおいては、後述するスキャンアプリ101の機能により、自身の有するSRMS200が直接管理するサービス情報のみならず他の複写機MFPの有するSRMS200が直接管理するサービス情報の中から該当のサービス情報を探し出し、当該サービス情報を用いて印刷元の電子文書に辿り着くことができる。また、他の複写機MFP1〜5,7〜8のいずれとも信頼関係を結んでいない複写機MFP6は、後述するサービス検索の機能により、他の複写機MFP1〜5,7〜8に記憶されているサービス情報を探し出すことができる。
【0064】
f)信頼関係破棄
信頼関係破棄とは、既に結ばれていた他の複写機MFPとの信頼関係を破棄する機能のことである。信頼関係を破棄するとは、具体的には、信頼関係情報テーブル300Bに登録済みの他の複写機MFPの有するSRMS200の信頼関係情報を削除することである。図21は、信頼関係破棄機能により実現される信頼関係破棄処理の手順を示すフローチャートである。まず、信頼関係破棄処理部SR25は、インターフェース部SR1を介してクライアントから信頼関係情報を削除する対象のSRMS200のUUIDを受け取る(ステップS120)。そして、信頼関係破棄処理部SR25は、受け取ったUUIDの値が、信頼関係情報テーブル300Bに存在するか否かを判定する(ステップS121)。該当するUUIDの値が存在しない場合(ステップS122:NO)、信頼関係破棄処理部SR25は、「該当の信頼関係情報がない」旨を示すエラー情報を返す(ステップS126)。該当するUUIDの値が存在する場合(ステップS122:YES)、信頼関係破棄処理部SR25は、ここでは、該当するUUIDが信頼関係情報に相当するので、このUUIDの値を信頼関係情報テーブル300Bから削除する(ステップS123)。更に、信頼関係破棄処理部SR25は、サービス情報のマスターUUIDが該当のUUIDの値に一致するサービス情報を全てサービス情報テーブル300Aから削除する(ステップS124)。次いで、信頼関係破棄処理部SR25は、インターフェース部SR1を介して要求元のクライアントへ処理の成功を示す成功情報を返す(ステップS125)。
【0065】
g)同期
同期とは、信頼関係を結んでいる他の複写機MFPのSRMS200、即ち、信頼関係情報テーブル300BにそのUUIDの値が登録されている他の複写機MFPのSRMS200とサービス情報を交換して、サービス情報を同期させる機能のことである。図22は、同期機能により実現される同期処理の手順を示すフローチャートである。同期処理部SR26は、同期対象のサービス情報のサービスのUUIDなどのパラメータを受け取らず、信頼関係情報テーブル300Bを参照し、信頼関係を結んでいる他の複写機MFPのSRMS200のUUIDのリスト(UUIDリスト)を受け取る(ステップS140)。そして、同期処理部SR26は、リストにある全てのUUIDについて、UUID毎に以下の処理を行う。まず、同期処理部SR26は、サービス情報テーブル300Aを参照して、処理対象のUUIDのサービス情報を取得する(ステップS141)。そして、同期処理部SR26は、サービス情報のURIを参照し、当該URIにアクセスすることにより、同期対象の他のSRMS200に接続する。そして、同期処理部SR26は、同期対象の他のSRMS200における上述のサービス取得の機能を利用し、同期対象の他のSRMS200が直接管理するサービス情報のリストを取得する(ステップS142)。次に、同期処理部SR26は、マスターUUIDが処理対象のサービスのUUIDの値と一致するサービス情報をすべてサービス情報テーブル300Aから削除する(ステップS143)。そして、同期処理部SR26は、同期対象のSRMS200から取得したリストに存在するサービス情報を全てサービス情報テーブル300Aに登録する(ステップS144)。同期処理部SR26は、以上のようなステップS141〜S144の処理を、UUIDリストに存在する全てのUUIDについて行う。UUIDリストに存在する全てのUUIDについて処理が終了すると(ステップS145:YES)、同期処理部SR26は、UUIDリストに存在しないUUIDの値と一致するマスターUUIDを有するサービス情報をサービス情報テーブル300Aから検索し、当該サービス情報テーブル300Aから当該サービス情報を削除する(ステップS146)。これにより、信頼関係を破棄された他のSRMS200のサービス情報がサービス情報テーブル300Aから消滅することになる。最後に、同期処理部SR26は、インターフェース部SR1を介して要求元へ成功を返す(ステップS147)。
【0066】
h-1)サービス問い合わせ
次に、ブロードキャスト機能のうちのサービス問合せの機能について説明する。サービス問い合わせとは、他のSRMS200からサービス情報の問合わせを受けて、当該サービス情報を他のSRMS200に返す機能のことである。図23は、サービス問い合わせの機能により実現されるサービス問い合わせ処理の手順を示すフローチャートである。尚、サービス問合せにおいては、上述のWebサービスではなく、UDPを用いてデータ通信を行う。UDPを用いたデータ通信は公知であるため、データ通信の詳細な手順についての説明を省略する。ここでは、複写機MFPのSRMS200が、上述のWebサービスを用いたデータ通信の場合と同様のクライアントとデータ通信を行い、処理を行う場合の手順について説明する。
【0067】
サービス問い合わせ処理部SR28は、UDPでクライアントからサービス問合せ要求を受け取ると(ステップS160)、処理を開始する。尚、このサービス問合せ要求には、処理に用いるパラメータは含まれず、要求元のクライアントのIPアドレスが含まれる。次いで、サービス問い合わせ処理部SR28は、サービス情報テーブル300Aを参照して、本SRMS200のサービス情報を取得する(ステップS161)。そして、サービス問い合わせ処理部SR28は、サービス問合せ要求に含まれているIPアドレスを取得して(ステップS162)、当該IPアドレス宛にサービス情報をUDPで返す(ステップS163)。これにより、要求元の他の複写機MFPのSRMS200は、本SRMS200のサービス情報を取得することができる。
【0068】
h-2)サービス検索
サービス検索とは、他のSRMS200にサービス情報を問合わせて、他のSRMS200の有するサービス情報を取得する機能のことである。図24は、サービス検索の機能により実現されるサービス検索処理の手順を示すフローチャートである。
【0069】
サービス検索処理部SR27は、UDPでクライアントからサービス検索要求を受け取ると(ステップS180)、処理を開始する。ここでは、サービス検索処理部SR27は、処理に用いるパラメータは受け取らない。次いで、サービス検索処理部SR27は、UDPを用いて、本SRMS200を有する複写機MFPと同じ所内システムSYM内の全IPアドレスに対して、即ち、同じ所内システムSYM内の複写機MFP及びパーソナルコンピュータPCに対して、上述のサービス問い合わせ要求を送信する(ステップS181)。尚、画像処理システム内の全ての複写機MFPのIPアドレスに対してUDPパケットを送出し、本SRMS200を有する複写機MFPと同じ所内システムSYM内に存在するSRMS200からのみレスポンスがあるように構成しても良い。一方、サービス問い合わせ要求を受けた他の複写機MFPのSRMS200は、上述のサービス問合せ処理を行い、当該SRMS200が管理するサービス情報を、本SRMS200に返す。図23の例では、2つの他のSRMS200からサービス情報が本SRMS200に返る。この結果、本SRMS200のサービス検索処理部SR27は、他のSRMS200からサービス情報を収集し(ステップS182)、当該収集したサービス情報をリスト化してサービス情報リストとして要求元のクライアントへ返す(ステップS183)。以上のような構成によれば、例えば、図18の複写機MFP6のように、どの複写機MFPとも信頼関係がなく、従って、自身のサービス情報テーブル300Aに他のSRMS200が直接管理するサービス情報が記憶されていない場合でも、このサービス検索の機能により、他の複写機MFPの有するSRMS200が管理するサービス情報を取得することができる。
【0070】
<PIDSの動作>
a)紙登録
次に、PIDS201の各インターフェースの機能及び動作について説明する。紙登録とは、紙情報を紙情報DB301の紙情報テーブル301Aへ登録する機能のことである。図25は、紙登録の機能により実現される紙登録処理の手順を示すフローチャートである。紙登録処理部PI20は、インターフェース部PI1を介してクライアントから紙情報を受け取る(ステップS200)。そして、紙登録処理部PI20は、紙情報テーブル301Aに記憶されている紙情報のローカルIDの最大値を調べる(ステップS201)。例えば、その最大値が「10」だった場合、紙登録処理部PI20は、「11」を新しいローカルIDとして発行し、受け取ったサービス情報のローカルIDに「11」をセットする(ステップS202)。次に、紙登録処理部PI20は、受け取った紙情報に、本PIDS201のUUIDの値をセットする(ステップS203)。次に、紙登録処理部PI20は、CPU11の有する計時機能により現在日時を取得し、受け取った紙情報の登録日時と更新日時にセットする(ステップS204)。この結果、当該紙情報に対して、PIDS201のUUID及びローカルIDの組み合わせである紙IDが発行されて、当該紙IDが当該紙情報に対応付けられる。そして、紙登録処理部PI20は、各情報をセットした紙情報を紙情報テーブル301Aに登録する(ステップS205)。最後に、紙登録処理部PI20は、インターフェース部PI1を介して要求元のクライアントへ本PIDS201のUUID及びローカルIDの組み合わせを紙IDとして返す(ステップS206)。
【0071】
b)紙情報変更
紙情報変更とは、紙情報テーブル301Aに登録済みの紙情報を新しい紙情報に変更する機能のことである。図26は、紙情報変更の機能により実現される紙情報変更処理の手順を示すフローチャートである。まず、紙変更処理部PI21は、インターフェース部PI1を介してクライアントから紙情報を受け取る(ステップS220)。紙変更処理部PI21は、紙情報テーブル301Aを参照し、受け取った紙情報のPIDS201のUUID及びローカルIDの組み合わせ(紙ID)の値が一致する紙情報のレコードを検索する(ステップS221)。該当するレコードが存在しない場合(ステップS222:NO)、紙変更処理部PI21は、「該当の紙情報がない」旨を示すエラー情報を返す(ステップS227)。該当するレコードが存在する場合(ステップS222:YES)、紙変更処理部PI21は、当該レコードにセットされている登録日時、ローカルID及びマスターUUIDを、受け取った紙情報にセットする(ステップS223)。そして、サービス変更処理部PI21は、CPU11の有する計時機能により現在日時を取得し、受け取った紙情報の更新日時にセットする(ステップS224)。サービス変更処理部PI21は、以上のようにして各情報をセットした紙情報を紙情報テーブルに対して更新(上書き)する(ステップS225)。次いで、紙変更処理部PI21は、インターフェース部PI1を介して要求元のクライアントへ処理の成功を示す情報を返す(ステップS226)。
【0072】
c)紙削除
紙削除とは、紙情報テーブルに登録済みの紙情報を削除する機能のことである。図27は、紙削除の機能により実現される紙削除処理の手順を示すフローチャートである。まず、紙削除処理部PI22は、インターフェース部PI1を介してクライアントから削除対象の紙情報についてPIDS201のUUID及びローカルIDの組み合わせ(紙ID)を受け取る(ステップS240)。紙削除処理部PI22は、紙情報テーブル301Aを参照し、受け取ったPIDS201のUUID及びローカルIDの組み合わせ(紙ID)の値が一致する紙情報のレコードを検索する(ステップS241)。該当するレコードが存在しない場合(ステップS242:NO)、紙削除処理部PI22は、「該当の紙情報がない」旨を示すエラー情報を返す(ステップS245)。該当するレコードが存在する場合(ステップS242:YES)、紙削除処理部PI22は、紙情報テーブル301Aから当該レコードを削除する(ステップS243)。次いで、紙削除処理部PI22は、インターフェース部PI1を介して要求元のクライアントへ処理の成功を示す成功情報を返す(ステップS244)。
【0073】
d)紙取得
紙取得とは、紙情報テーブル301Aに登録されている紙情報を取得する機能のことである。図28は、紙取得の機能により実現される紙取得処理の手順を示すフローチャートである。まず、紙取得処理部PI23は、インターフェース部PI1を介してクライアントから紙取得要求と共に、取得対象の紙情報のPIDS201のUUID及びローカルIDの組み合わせ(紙ID)を受け取る(ステップS260)。そして、紙取得処理部PI23は、紙情報テーブル301Aを参照し、受け取ったPIDS201のUUID及びローカルIDの組み合わせ(紙ID)の値が一致する紙情報のレコードを検索する(ステップS261)。該当するレコードが存在しない場合(ステップS262:NO)、紙取得処理部PI23は、「該当の紙情報がない」旨を示すエラー情報を返す(ステップS264)。該当するレコードが存在する場合(ステップS262:YES)、紙取得処理部PI23は、該当したレコードである紙情報を、インターフェース部PI1を介してクライアントへ返す(ステップS263)。
【0074】
<EIDSの動作>
a)電子情報登録
次に、EIDS202の各インターフェースの機能及び動作について説明する。電子情報登録とは、電子情報を電子情報DB302の電子情報テーブル302Aへ登録すると共に、リポジトリ205の機能を利用して、電子文書を電子文書DB303へ登録する機能のことである。図29は、電子情報登録の機能により実現される電子情報登録処理の手順を示すフローチャートである。まず、電子情報登録処理部EI20は、インターフェース部EI1を介して要求元のクライアントから電子情報及び電子文書を受け取る(ステップS300)。電子情報登録処理部EI20は、リポジトリ205の文書登録機能を利用し、リポジトリ205を介して電子文書を電子文書DB303へ登録し、その結果として文書IDをリポジトリ205から受け取る(ステップS301)。文書IDとは、リポジトリが登録対象の電子文書を管理するために独自に発行するIDのことである。または、リポジトリとしてWindowsのファイルシステムのような文書管理システムを用いた場合には、文書IDは、ファイルパスでも構わない。電子情報登録処理部EI20は、リポジトリ205から受け取った文書IDを、電子情報における「リポジトリへのリンク」にセットする(ステップS302)。次に、電子情報登録処理部EI20は、電子情報テーブル302Aを参照し、ローカルIDの最大値を調べる(ステップS303)。そして、例えば、最大値が「10」だった場合、電子情報登録処理部EI20は、「11」を新しいローカルIDとして発行し、これを受け取った電子情報のローカルIDにセットする(ステップS304)。また、電子情報登録処理部EI20は、当該電子情報に、本EIDS202のUUIDをセットする(ステップS305)。この結果、当該電子情報に対して、EIDS202のUUID及びローカルIDの組み合わせである電子情報IDが発行されて、当該電子IDが当該電子情報に対応付けられる。次に、電子情報登録処理部EI20は、CPU11の有する計時機能により現在日時を取得し、受け取った電子情報の登録日時と更新日時にセットする(ステップS306)。そして、電子情報登録処理部EI20は、以上のように各情報をセットした電子情報を電子情報テーブル302Aに登録する(ステップS307)。最後に、電子情報登録処理部EI20は、インターフェース部EI1を介して要求元のクライアントへ本EIDS202のUUID及びローカルIDの組み合わせ(電子ID)を返す(ステップS308)。
【0075】
b)電子情報変更
電子情報変更とは、電子情報テーブル302Aに登録済みの電子情報を変更する機能のことである。図30は、電子情報変更機能により実現される電子情報変更処理の手順を示すフローチャートである。まず、電子情報変更処理部EI21は、インターフェース部EI1を介して要求元のクライアントから電子情報及び電子文書本体を受け取る(ステップS320)。電子情報変更処理部EI21は、電子情報テーブル302Aを参照し、受け取った電子情報のEIDS202のUUID及びローカルIDの組み合わせ(電子ID)の値が一致するレコードを検索する(ステップS321)。該当するレコードが存在しない場合(ステップS322:NO)、電子情報変更処理部EI21は、「指定の電子情報がない」旨を示すエラー情報を返す(ステップS328)。該当するレコードが存在する場合(ステップS322:YES)、電子情報変更処理部EI21は、リポジトリ205の文書変更機能を利用し、電子文書DB303に記憶されている電子文書本体を更新する(ステップS323)。次に、電子情報変更処理部EI21は、該当するレコードにセットされている登録日時を受け取った電子情報にセットする(ステップS324)。そして、電子情報変更処理部EI21は、CPU11の有する計時機能により現在日時を取得し、受け取った電子情報の更新日時にセットする(ステップS325)。電子情報変更処理部EI21は、以上のようにして各情報をセットした電子情報を電子情報テーブル302Aに対して更新(上書き)する(ステップS326)。次いで、電子情報変更処理部EI21は、インターフェース部EI1を介して要求元のクライアントへ処理の成功を示す情報を返す(ステップS327)。
【0076】
c)電子情報削除
電子情報削除とは、電子情報テーブル302Aに登録済みの電子情報を削除する機能のことである。図31は、電子情報削除の機能により実現される電子情報削除処理の手順を示すフローチャートである。まず、電子情報削除処理部EI22は、インターフェース部EI1を介してクライアントから削除対象の電子情報についてEIDS202のUUID及びローカルIDの組み合わせ(電子ID)を受け取る(ステップS340)。電子情報削除処理部EI22は、電子情報テーブル302Aを参照し、受け取ったEIDS202のUUID及びローカルIDの組み合わせ(電子ID)と一致する電子情報のレコードを検索する(ステップS341)。該当するレコードが存在しない場合(ステップS342:NO)、電子情報削除処理部EI22は、「指定の電子情報がない」旨を示すエラー情報を返す(ステップS346)。該当するレコードが存在する場合(ステップS342:YES)、電子情報削除処理部EI22は、リポジトリ205の文書削除機能を利用して電子文書DB303に記憶されている電子文書本体を削除すると共に(ステップS343)、電子情報テーブル302Aから当該レコードを削除する(ステップS344)。次いで、電子情報削除処理部EI22は、インターフェース部EI1を介して要求元のクライアントへ処理の成功を示す成功情報を返す(ステップS345)。
【0077】
d)電子情報取得
電子情報取得とは、電子情報テーブル302Aに登録されている電子情報を取得する機能のことである。図32は、電子情報取得の機能により実現される電子情報取得処理の手順を示すフローチャートである。まず、電子情報取得処理部EI23は、インターフェース部EI1を介してクライアントから電子情報取得要求と共に、取得対象の電子情報のEIDS202のUUID及びローカルIDの組み合わせ(電子ID)を受け取る(ステップS360)。そして、電子情報取得処理部EI23は、電子情報テーブル302Aを参照し、受け取ったEIDS202のUUID及びローカルIDの組み合わせ(電子ID)の値が一致する電子情報のレコードを検索する(ステップS361)。該当するレコードが存在しない場合(ステップS362:NO)、電子情報取得処理部EI23は、「指定の電子情報がない」旨を示すエラー情報を返す(ステップS365)。該当するレコードが存在する場合(ステップS362:YES)、電子情報取得処理部EI23は、リポジトリ205の文書取得を利用して電子文書DB303に記憶されている電子文書本体を取得し(ステップS363)、これを、該当したレコードである電子情報と共にインターフェース部EI1を介して要求元のクライアントへ返す(ステップS364)。
【0078】
<印刷アプリの動作>
次に、印刷アプリ100の動作について説明する。印刷アプリには、上述したように、ドライバ印刷機能と、スキャン印刷機能とがある。まず。ドライバ印刷機能による印刷アプリの動作の手順について説明する。図33〜35は、ドライバ印刷機能による印刷アプリ100の動作の手順を示すフローチャートである。
【0079】
a)ドライバ印刷
ここでは、例えば、パーソナルコンピュータPC1から複写機MFP1へ印刷命令がなされる場合について説明する。パーソナルコンピュータPC1において、3ページの文書の印刷の指示や印刷条件の設定をユーザが入力すると、パーソナルコンピュータPC1は当該指示入力を受け付け、当該パーソナルコンピュータPC1のプリンタドライバは、当該印刷対象の文書の情報及び印刷条件を含む印刷命令をイントラネットNT1を介して複写機MFP1の印刷アプリ100_1へ送信する。ここまでの処理の手順は公知の技術であり、このような処理の手順を実現させる種々の公知のプリンタドライバを用いることができる。
【0080】
印刷アプリ100_1は、パーソナルコンピュータPC1のプリンタドライバからの印刷命令を受け取り(ステップS400)、当該印刷命令に含まれる印刷対象の文書の情報及び印刷条件を用いて、レンダリングを行ない、印刷対象の文書を表する画像(レンダリング画像)を生成する(ステップS401)。ここでは、印刷対象の文書は、3ページあるので、印刷アプリ100_1は、3枚の紙に各々印刷するレンダリング画像を生成する。次に、印刷アプリ100_1は、生成したレンダリング画像を所定の表現形式の電子文書に変換する(ステップS402)。例えば、TIFF形式のデータ(TIFFファイル)などである。尚、この変換は、当該電子文書を電子文書DB303に登録するために行う。次に、印刷アプリ100_1は、各情報がセットされていない初期状態の電子情報を生成し、生成した電子情報における「ファイル名」に電子文書のファイル名をセットする。このファイル名には、プリンタドライバから電子文書のファイル名が送信される場合にはそれをセットするようにしても良いし、印刷アプリ100_1が、電子文書に対して所定の方法により付与したものをセットするようにしても良い。そして、印刷アプリ100_1は、生成した電子情報と電子文書とをパラメータとしてEIDS202_1に渡す(ステップS403)。尚、ここでは、印刷アプリ100_1と、EIDS202_1とのデータの受け渡しは、同一の複写機MFP1内で行うため、上述したWebサービスは利用しない。
【0081】
EIDS202_1は、上述した電子情報登録の機能により、印刷アプリ100_1から渡された電子情報を電子情報DB302_1の電子情報テーブル302A_1に登録すると共に(ステップS404)、リポジトリ205の文書登録の機能を利用して、電子文書を電子文書DB303_1に登録して、登録した電子情報に係るEIDS202_1のUUID及びローカルIDの組み合わせを電子IDとして印刷アプリ100_1に返す(ステップS405)。印刷アプリ100_1は、当該電子IDを受け取ると(ステップS406)、各情報がセットされていない初期状態の紙情報を生成し、生成した紙情報における「名称」にファイル名をセットする(ステップS407)。このファイル名には、プリンタドライバからファイル名が送信される場合にはそれをセットするようにしても良いし、印刷アプリ100_1が、電子文書に対して所定の方法により付与したものをセットするようにしても良い。また、印刷アプリ100_1は、プリンタドライバから送られてきた印刷条件を紙情報の「印刷条件」にセットし、EIDS202_1から取得した電子ID(EIDS202_1のUUID及びローカルIDの組み合わせ)を紙情報の「元文書へのリンク」へセットする。ここでは、印刷対象の画像が3ページ分、即ち3枚分あるので、印刷アプリ100_1は、3つの紙情報を生成する。そして、印刷アプリ100_1は、PIDS201_1に対して紙情報の登録を要求し、生成した紙情報をパラメータとしてPIDS201_1に渡す(ステップS408)。尚、ここでは、印刷アプリ100_1と、PIDS201_1とのデータの受け渡しは、同一の複写機MFP1内で行うため、上述したWebサービスは利用しない。
【0082】
PIDS201_1は、上述した紙情報登録機能により、印刷アプリ100_1から渡された紙情報に対してローカルIDを各々発行すると共に、当該紙情報を紙情報DB301_1の紙情報テーブル301A_1に登録する(ステップS409)。そして、PIDS201_1は、登録した各紙情報に係るPIDS201_1のUUID及びローカルIDの組み合わせを紙IDとして印刷アプリ100_1に返す(ステップS410)。ここでは、PIDS201_1は3つの紙情報を登録したため、3つの紙IDが印刷アプリ100_1に返される。ここでは例えば、この3つの紙IDをページ順に各々紙ID1−1,紙ID1−2,紙ID1−3とする。次に、印刷アプリ100_1は、3つの紙IDを受け取ると(ステップS411)、次いで、3つの紙IDをエンコーダ203_1に渡し各紙IDのエンコードを要求する(ステップS412)。
【0083】
エンコーダ203_1は、各紙IDをエンコードして、コード画像を各々生成する(ステップS413)。即ち、エンコーダ203_1は、1ページ目に対応するコード画像、2ページ目に対応するコード画像、3ページ目に対応するコード画像の3つを生成する。尚、ここでエンコーダ203_1がエンコードするコードの種類は、例えば、2次元バーコードのQRコードである。そして、エンコーダ203_1は、生成したコード画像を印刷アプリ100_1に渡す(ステップS414)。そして、印刷アプリ100_1は、コード画像を受け取ると(ステップS415)、各ページに対応する各レンダリング画像に対して、生成した各コード画像を順に合成する。レンダリング画像にコード画像を合成する方法には、各種公知技術を用いることができる。コード画像を合成する位置は、予め決めておいた位置(例えば、紙面の右上の余白部)でも構わないし、紙面内の余白(レンダリング画像において描画されていない領域)を探し出し、当該余白のいずれかの位置でも構わない。そして、印刷アプリ100_1は、コード画像を合成したレンダリング画像をページ毎に紙に印刷する(ステップS416)。その結果、PIDS201_1で発行された3つの紙ID(紙ID1−1,紙ID1−2,紙ID1−3)が各々コード画像として印刷された3枚の各印刷結果が得られる。
【0084】
次に、印刷アプリ100_1は、印刷した3枚の紙を複写機MFP1の有する紙搬送機構により順にコード画像読取部76まで搬送させ、ベリファイスキャンを実行する(ステップS4000)。具体的には、印刷アプリ100_1は、当該紙をコード画像読取部76にスキャンさせて、当該紙に印刷されたコード画像を読み取らせる。尚、このコード画像が紙において印刷される位置(コード印刷位置)は予め決められた位置であり、コード画像読取部76は、当該位置に印刷されたコード画像を読み取る。又は、コード印刷位置が不定である場合には、公知の技術を用いて、コード画像読取部76が紙全体をスキャンしてコード画像を検索することにより、紙に印刷されたコード画像を読み取るように構成しても良い。そして、印刷アプリ100_1は、このように取得したコード画像をデコーダ204_1に渡して、デコードを要求する。デコーダ204_1は、上述のデコード機能により、スキャンアプリ101_5から渡されたスキャン画像に含まれるコード画像をデコードし、紙IDを取得する。そして、デコーダ204_1は、この紙IDをデコード結果として印刷アプリ100_1に渡す(ステップS4001)。尚、デコーダ204_1は、当該コード画像をデコードできず、紙IDを取得することができない場合、エラーを示すデコード結果を印刷アプリ100_1に渡す。
【0085】
印刷アプリ100_1は、デコーダ204_1からデコード結果を受け取ると(ステップS4002)、当該デコード結果を解析して、デコードが成功して紙IDを取得できたか否かを判別する(ステップS4003)。当該判別結果が肯定的である場合(ステップS4003:YES)、印刷アプリ100_1は、デコード結果として取得した紙IDと、上述のステップS411で取得した紙IDとを照合する(ステップS4004)。これらが照合する場合(ステップS4004:YES)、印刷アプリ100_1は、紙排紙機構により当該紙を排紙トレイ71に搬送させる。また、ステップS4003の判定結果が否定的である場合及びステップS411で受け取った紙IDと、ステップS4002で取得した紙IDが照合しない場合(ステップS4004:NO)、印刷アプリ100_1は、紙搬送機構により当該紙(以下、NG紙という)をNG記録部74に搬送させ、当該NG紙に対してコードに不具合があることを示すNG記録を当該NG記録部74に行わせる(ステップS4005)。尚、NG記録の位置は、当該NG紙に印刷されたコード画像に不具合があることが分かるような場所であればどこでも構わないが、コード画像に重なる位置であることが望ましい。そして、印刷アプリ100_1は、紙搬送路切替部75により紙の排出先をガベージトレイ72に切り替えて、紙搬送機構により当該NG紙をガベージトレイ72に搬送させる(ステップS4006)。この結果、印刷されたコード画像に不具合があるNG紙と、印刷されたコード画像に不具合のない紙とを分けて排出することができる。
【0086】
以下、1〜3ページ目の紙のうち、2ページ目の1枚の紙だけがNG紙となったものとして説明する。印刷アプリ100_1は、当該NG紙について、ステップS411で取得した紙IDをPIDS201_1に渡して、紙情報の取得を要求する(ステップS4007)。PIDS201_1は、上述の紙取得機能により、紙情報DB301_1に格納されている紙情報テーブル301A_1を参照して、当該紙IDに対応する紙情報を取得し、これをスキャンアプリ101_1に返す(ステップS4008)。印刷アプリ100_1は、紙情報を取得すると(ステップS4009)、次いで、印刷アプリ100_1は、当該紙IDをPIDS201_1に渡して、紙情報の削除を要求する(ステップS4010)。PIDS201_1は、上述した紙情報削除機能により、紙情報DB301_1に格納されている紙情報テーブル301A_1を参照して、当該紙IDに対応する紙情報を削除し、成功情報を印刷アプリ100_1に渡す(ステップS4011)。印刷アプリ100_1は、成功情報を受け取ると(ステップS4012)、PIDS201_1に対して、ステップS4009で取得した紙情報をパラメータとして渡し当該紙情報の登録を要求する(ステップS4013)。PIDS201_1は、上述した紙情報登録機能により、印刷アプリ100_1から渡された紙情報に対して新たなローカルIDを各々発行すると共に、当該紙情報の「登録日時」及び「更新日時」に値をセットして、当該紙情報を紙情報DB301_1の紙情報テーブル301A_1に新たに登録する。そして、PIDS201_1は、当該PIDS201_1のUUID及び紙IDの組み合わせを紙IDとして印刷アプリ100_1に返す(ステップS4014)。印刷アプリ100_1は、新たな紙IDを受け取ると(ステップS4015)、次いで、当該紙IDをPIDS201_1に渡して、当該紙IDに対応する新たな紙情報の取得を要求する(ステップS4016)。PIDS201_1が、上述の紙取得機能により、当該紙IDに対応する紙情報をスキャンアプリ101_1に返す(ステップS4017)。
【0087】
印刷アプリ100_1は、新たな紙情報を受け取ると(ステップS4018)、当該紙情報の「元文書へのリンク」にセットされているIDを取得する。この「元文書へのリンク」には、上述したように、紙IDがセットされることもあるし、電子IDがセットされることもあるので、どちらがセットされているかはこの時点では判断できない。しかし、紙IDも電子IDもサービスのUUIDとローカルIDとの組み合わせであることは変わらない。このため、印刷アプリ100_1は、まず、「元文書へのリンク」にセットされているIDから、サービスのUUIDを抽出する(ステップS4019)。尚、ここでは、EIDS202_1のUUIDが抽出されるものとする。そして、印刷アプリ100_1は、そのUUIDをパラメータとしてSRMS200_1に渡し、当該UUIDのサービス情報の取得を要求する(ステップS4020)。SRMS200_1は、上述したサービス取得1の機能により、該当するEIDS202_1のサービス情報を取得し、これを印刷アプリ100_1に返す(ステップS4021)。印刷アプリ100_1は、SRMS200_1からサービス情報を受け取ると、当該サービス情報の「名前空間」を参照し、当該サービス情報が何のサービスを示すものかを判断する(ステップS4022)。ここでは、印刷アプリ100_1は、当該サービス情報の示すサービスはEIDS202であると判断する。そして、印刷アプリ100_1は、当該サービス情報の「URI」を参照して、EIDS202_1にアクセスして、ステップS4018において取得したID(ここでは、電子IDである)をEIDS202_1に渡して、電子情報取得の実行を要求する(ステップS4023)。EIDS202_1は、電子情報DB302_1に格納されている電子情報テーブル302A_1を参照して、当該電子IDに対応する電子情報を取得し、リポジトリ205_1の文書取得機能を利用して、電子文書DB303_1に記憶されている電子文書(TIFFファイル)を取得し、これを、電子情報と共に印刷アプリ100_1へ返す(ステップS4024)。
【0088】
印刷アプリ100_1は、電子情報及びTIFFファイルを取得すると(ステップS4025)、次いで、ステップS4015で取得した新たな紙IDをエンコーダ203_1に渡し当該紙IDのエンコードを要求する(ステップS4026)。エンコーダ203_1は、当該紙IDをエンコードしてコード画像を生成し(ステップS4027)、生成したコード画像を印刷アプリ100_1に渡す(ステップS4028)。印刷アプリ100_1は、コード画像を受け取ると(ステップS4029)、ステップS4025で取得したTIFFファイル及びステップS4018で取得した紙情報にセットされている「印刷条件」を用いて、レンダリング画像を生成し、次いで、上述のステップS416の処理を行う。このステップS416では、印刷アプリ100_1は、収容トレイ70に収容された新たな紙を紙搬送機構により印刷部61まで搬送させ、印刷部61に印刷を行わせる。
【0089】
以上のような構成によれば、確実に読み取り可能であり且つ正確にデコード可能なコード画像が印刷された紙を提供可能であり、印刷するコード画像の品質を保証することができる。この結果、コード画像の印刷不良によって、例えば、当該コード画像から誤った紙IDが取得され、この紙IDから印刷対象ではない電子文書が取得されることによる誤印刷を防ぐこともできる。また、紙IDをエンコードして生成したコード画像が印刷不良である場合又はデコード不良である場合、当該紙IDを抹消すると共に、当該紙IDと対応付けられて紙情報テーブル301に記憶されている紙情報を削除することにより、紙IDと紙情報との対応関係の整合性を常に保持することができる。
【0090】
尚、上述においては、複数ページのうち1枚の紙がNG紙となった場合について説明したが、複数ページのうち複数枚の紙がNG紙となった場合には、紙1枚毎にステップS4007〜S4019の処理を行うようにすれば良い。
【0091】
b)スキャン印刷
スキャン印刷について説明する。ここでは、例として、図33〜35で説明した処理によって複写機MFP1で印刷された紙を、複写機MFP5のスキャンアプリ101_5の実行により走査部でスキャンし、同じく複写機MFP5の印刷アプリ100_5の実行により再印刷する場合の印刷アプリ100_5の動作について説明する。スキャンアプリ101_5の動作については後述する。図36は、スキャン印刷機能による印刷アプリ100の動作の手順を示すフローチャートである。
【0092】
ユーザが複写機MFP5において複写対象の紙(図33で説明した処理によって複写機MFP1で印刷された紙)をセットし、印刷条件を設定して、印刷を指示すると、複写機MFP5のスキャンアプリ101_5が、当該紙を走査部がスキャンして読み取った、当該紙に印刷されたコード画像を取得し、その結果に基づいて得られるTIFFファイル及び紙IDと、ユーザから設定された印刷条件とを含む印刷命令を印刷アプリ100_5に渡す。ここでのスキャンアプリ101_5の詳細な動作の手順については後述する。尚、TIFFファイルは、上述したEIDS202の電子情報登録の機能により電子文書DB303に記憶されたTIFFファイルであり、EIDS202から取得されたものである。紙IDは、当該紙に付加されている紙IDであり、ここでは、上述した紙ID1−1,紙ID1−2及び紙ID1−3のいずれかである。
【0093】
印刷アプリ100_5は、印刷命令を受け取ると(ステップS420)、当該印刷命令に含まれるTIFFファイル及び印刷条件からレンダリングを行ない、印刷対象の文書を表す画像(レンダリング画像)を生成する(ステップS421)。尚、ここでは、TIFFファイルは、3ページの文書を表す情報であるため、印刷アプリ100_5は、ページ毎にレンダリングを行い、3つのレンダリング画像を生成する。また、印刷アプリ100_5は、各情報がセットされていない初期状態の紙情報を生成し、生成した紙情報における「名称」にファイル名をセットし、スキャンアプリ101_5から渡された印刷条件を紙情報の「印刷条件」にセットし、スキャンアプリ101_5から渡された紙ID(ここでは、上述した紙ID1−1,紙ID1−2及び紙ID1−3のいずれかである)を紙情報の「元文書へのリンク」へセットする(ステップS422)。そして、印刷アプリ100_5は、PIDS201_5に対して紙情報の登録を要求し、生成した紙情報をパラメータとしてPIDS201_5に渡す(ステップS423)。以降のステップS424〜S431の動作の手順は、上述のステップS409〜S416と略同様であるため、その説明を省略する。但し、ステップS427〜S430で印刷アプリ100_5がエンコードを要求するのは、エンコーダ203_5に対してである。
【0094】
そして、上述のドライバ印刷の場合と同様に、処理の結果、PIDS201_5で発行された3つの紙IDがエンコードされて印刷された3枚の各印刷結果が得られる。ここで、例えば、各印刷結果に付加された紙IDをページ順に各々紙ID5−1,紙ID5−2,紙ID5−3とする。このとき、これらの紙IDに対応する紙情報の「元文書へのリンク」には、上述したように、紙ID1−1,紙ID1−2,紙ID1−3のいずれかがセットされているため、紙ID5−1,紙ID5−2,紙ID5−3に対して紙ID1−1,紙ID1−2及び紙ID1−3のいずれかをリンク付けすることができる。また、紙ID1−1,紙ID1−2及び紙ID1−3に対応する各紙情報の「元文書へのリンク」には、上述のステップS407で説明したように、電子IDがセットされているため、この電子IDを用いて、印刷対象の電子文書を取得することを可能にする。即ち、紙を複写する毎に、複写先の紙IDに複写元の紙IDをリンクさせる構成によれば、紙を複写する際に、紙IDに対応する紙情報のリンクを辿ることにより、印刷元の電子文書がリンク付けされた紙情報に辿り着くことができ、その結果、電子文書に辿り着くことができる。また、このように紙ID及び紙IDに対応する紙情報を介在させることにより、当該電子文書に係る印刷をいつどこで行ったのかをトレースすることも可能になる。
【0095】
<スキャンアプリの動作>
次に、スキャンアプリ101の動作の手順を、以下の2つのケースに分けて説明する。
a)複写機MFP1で印刷した紙の2ページ目(紙ID1−2)を、複写機MFP5でスキャンし、再印刷する
b)a)の複写機MFP5で再印刷した紙の1ページ目(紙ID5−1)を、複写機MFP6でスキャンし、再々印刷する
【0096】
ケースa)としては、事業所J1で印刷した紙を事業所J2へ持参し、事業所J2の複写機MFPで再印刷する場合を想定している。ケースb)としては、事業所J1で印刷した紙を事業所J2へ持参し、事業所J2の複写機MFPで再印刷した紙をさらに事業所J3へ持参し、事業所J3の複写機MFPで再々印刷する場合を想定している。尚、複写機MFP間の信頼関係は、図18に示す関係になっているものとする。
【0097】
a)の場合の動作の手順
図37は、複写機MFP1で印刷した紙の2ページ目(ここでは、紙ID1−2に対応するものとする)を、複写機MFP5でスキャンし、再印刷する場合のスキャンアプリ101_5の動作の手順を示すフローチャートである。複写機MFP5において電源が投入され、スキャンアプリ101_5が起動すると、印刷条件を設定する項目とスキャンを指示するためのスキャンボタンとを操作パネル20に表示させる。そして、ユーザが、複写機MFP1で印刷した3枚の紙のうち、2ページ目を複写機MFP5のスキャン部(図示せず)にセットして、操作パネル20において印刷条件を設定し、スキャンボタンを押下すると、スキャンアプリ101_5は、印刷条件を取得し、スキャン部にセットされた紙のスキャンを実行する(ステップS440)。そして、スキャンアプリ101_5は、スキャンの結果得られるスキャン画像をデコーダ204_5に渡してデコードを要求する(ステップS441)。デコーダ204_5は、上述のデコード機能により、スキャンアプリ101_5から渡されたスキャン画像に含まれるコード画像をデコードし、紙ID(紙ID1−2)を取得する(ステップS442)。そして、デコーダ204_5は、この紙ID1−2をスキャンアプリ101_5に渡す(ステップS443)。
【0098】
スキャンアプリ101_5は、紙ID1−2を受け取ると(ステップS444)、当該紙ID1−2から、PIDS201のUUIDを抽出する(ステップS445)。ここでは、スキャンアプリ101_5は、UUIDだけではPIDS201_1であるか否かを判断できないので、そのUUIDをパラメータとしてMFP5のSRMS200_5に渡し、当該UUIDのサービス情報の取得を要求する、即ち、上述したサービス取得1の実行を要求する(ステップS446)。尚、ここでは、スキャンアプリ101_5と、SRMS200_5とのデータの受け渡しは、同一の複写機MFP5内で行うため、上述したWebサービスは利用しない。SRMS200_5は、サービス取得1の機能により、指定されたUUIDのサービス情報を検索する(ステップS447)。ここでは、SRMS200_5はPIDS201_1のサービス情報を管理していないので、「指定のサービス情報がない」旨のエラー情報をスキャンアプリ101_5に返す(ステップS447)。スキャンアプリ101_5は、このエラー情報を受け取ると(ステップS448)、次いで、SRMS200_5に対して、サービス情報のリストを要求する、即ち、サービス取得3の実行を要求する(ステップS449)。SRMS200_5は、サービス取得3の機能により、サービスDB300_5に格納されている信頼関係情報テーブル300B_5を参照して、SRMS200_5と信頼関係にあるSRMS200のサービス情報をリスト化してスキャンアプリ101_5に渡す(ステップS450)。ここでは、SRMS200_5は、自身のサービス情報と、SRMS200_4のサービス情報とを渡す。スキャンアプリ101_5は、サービス情報のリストを受け取ると(ステップS451)、当該リストにあるSRMS200_4に対して、ステップS445で抽出したUUIDをパラメータとして渡し、当該UUIDのサービス情報の取得(サービス取得1の実行)を要求する(ステップS452)。ここでは、スキャンアプリ101_5を有する複写機MFP5が、上述の図12で説明した処理の要求元のクライアントとなり、当該クライアントと、SRMS200_4とがWebサービスを利用したSOAP通信を行う。尚、スキャンアプリ101_5は、SRMS200_5に対してはサービス取得1の実行は要求済なので、ここでは、SRMS200_5に対してサービス取得1の実行を要求しない。
【0099】
SRMS200_4は、サービス取得1の機能により、指定されたUUIDのサービス情報を検索する。ここでは、SRMS200_4はPIDS201_1のサービス情報を管理していないので、「指定のサービス情報がない」旨のエラー情報をスキャンアプリ101_5に返す(ステップS453)。スキャンアプリ101_5は、このエラー情報を受け取ると(ステップS454)、次いで、SRMS200_4に対してサービス情報のリスト(サービス取得3の実行)を要求する(ステップS455)。SRMS200_4は、サービス取得3の機能により、サービスDB300_4に格納されている信頼関係情報テーブル300B_4を参照して、SRMS200_4と信頼関係にあるSRMS200のサービス情報をリスト化してスキャンアプリ101_5に渡す。ここでは、SRMS200_4は、自身のサービス情報と、SRMS200_2及びSRMS200_5の各サービス情報とを渡す(ステップS456)。スキャンアプリ101_5は、サービス情報のリストを受け取ると(ステップS457)、当該リストにあるSRMS200_2に対して、ステップS445で抽出したUUIDをパラメータとして渡し、当該UUIDのサービス情報の取得(サービス取得1の実行)を要求する(ステップS458)。ここでも、スキャンアプリ101_5を有する複写機MFP5が、上述の図12で説明した処理の要求元のクライアントとなり、当該クライアントと、SRMS200_2とがWebサービスを利用したSOAP通信を行う。尚、スキャンアプリ101_5は、SRMS200_4及びSRMS200_5に対してはサービス取得1の実行は要求済なので、ここでは、SRMS200_4及びSRMS200_5に対してサービス取得1の実行を要求しない。
【0100】
SRMS200_2は、サービス取得1の機能により、指定されたUUIDのサービス情報を検索する(ステップS459)。ここでは、SRMS200_2はSRMS200_1と信頼関係にあるため、PIDS201_1のサービス情報がSRMS200_2の管理するサービス情報テーブル300A_2に記憶されている。このため、SRMS200_2は、検索の結果、該当するPIDS201_1のサービス情報を取得し、これをスキャンアプリ101_5に返す(ステップS459)。以上のように、紙IDに含まれるUUIDを用いてサービス取得1を実行して、該当するサービス情報を検索し、サービス情報が得られなかった場合にはサービス取得3を実行して、信頼関係にあるSRMS200を検索し、当該信頼関係にあるSRMS200に対してサービス取得1を実行させ、サービス情報が得られるまでサービス取得1及びサービス取得3を繰り返す。この処理をサービス情報検索という。
【0101】
スキャンアプリ101_5は、SRMS200_2からサービス情報を受け取ると、当該サービス情報の「名前空間」を参照し、当該サービス情報が何のサービスを示すものかを判断する(ステップS460)。スキャンアプリ101_5は、例えば、名前空間に「jp.co.ricoh.pids」がセットされていれば、そのサービス情報がPIDSを示すものであると判断し、名前空間に「jp.co.ricoh.eids」がセットされていれば、そのサービス情報がEIDSを示すものであると判断する。ここでは、PIDS201_1のサービス情報が返ってくるので、名前空間が「jp.co.ricoh.pids」であり、従って、スキャンアプリ101_5は、当該サービス情報の示すサービスはPIDS201であると判断する。そして、スキャンアプリ101_5は、サービスがPIDS201であると判断した場合、当該サービス情報の「URI」を参照して、PIDS201_1にアクセスして、ステップS444で取得した紙ID1−2をPIDS201_1に渡して、紙情報の取得を要求する(ステップS461)。ここでも、スキャンアプリ101_5を有する複写機MFP5が、上述の図12で説明した処理の要求元のクライアントとなり、当該クライアントと、PIDS201_1とがWebサービスを利用したSOAP通信を行う。PIDS201_1は、紙情報DB301_1に格納されている紙情報テーブル301A_1を参照して、当該紙ID1−2に対応する紙情報を取得し、これをスキャンアプリ101_5に返す(ステップS462)。スキャンアプリ101_5は、紙情報を取得すると、当該紙情報の「元文書へのリンク」にセットされているIDを取得する。この「元文書へのリンク」には、紙IDがセットされることもあるし、電子IDがセットされることもあるので、どちらがセットされているかはこの時点では判断できない。しかし、紙IDも電子IDもサービスのUUIDとローカルIDとの組み合わせであることは変わらない。このため、スキャンアプリ101_5は、まず、「元文書へのリンク」にセットされているIDから、サービスのUUIDを抽出する(ステップS463)。
【0102】
そして、スキャンアプリ101_5は、抽出したUUIDで、上記のサービス情報探索で最終的にサービス情報を見つけたSRMS200_2に対して、サービス取得1の実行を要求する(ステップS464)。ここで、SRMS200_2からサービス情報探索を行なうのは、ステップS459でPIDS201_1のサービス情報を見つけたSRMS200_2に、今回の検索対象のUUIDに対応するサービス情報が存在する可能性が高いからである。しかし、SRMS200_2から探索を始めるのではなく、上記と同じように、SRMS200_5から探索を始めても構わない。ここでは、SRMS200_2はSRMS200_1と信頼関係にあるため、SRMS200_2の管理するサービス情報テーブル300A_2には、EIDS202_1のサービス情報が記憶されている。このため、SRMS200_2は、検索の結果、EIDS202_1のサービス情報を取得し、これをスキャンアプリ101_5に返す(ステップS465)。
【0103】
スキャンアプリ101_5は、EIDS202_1のサービス情報を取得すると、当該サービス情報の「名前空間」を参照して、当該サービス情報が何のサービスを示すものかを判断する(ステップS466)。ここでは、名前空間には「jp.co.ricoh.eids」がセットされているので、スキャンアプリ101_5は、当該サービス情報の示すサービスはEIDSであると判断する。そして、スキャンアプリ101_5は、サービスがEIDSであると判断した場合、当該サービス情報の「URI」を参照して、EIDS202_1にアクセスして、ステップS463で取得したID(ここでは、電子IDである)をEIDS202_1に渡して、電子情報取得の実行を要求する(ステップS467)。ここでも、スキャンアプリ101_5を有する複写機MFP5が、上述の図12で説明した処理の要求元のクライアントとなり、当該クライアントと、EIDS202_1とがWebサービスを利用したSOAP通信を行う。EIDS202_1は、電子情報DB302_1に格納されている電子情報テーブル302A_1を参照して、当該電子IDに対応する電子情報を取得し、リポジトリ205_1の文書取得機能を利用して、電子文書DB303_1に記憶されている電子文書(TIFFファイル)を取得し、これを、電子情報と共にスキャンアプリ101_5へ返す(ステップS468)。スキャンアプリ101_5は、電子情報及びTIFFファイルを取得すると、印刷アプリ100_5に対して、TIFFファイルと、スキャン画像からステップS444で得た紙ID1−2と、ユーザが操作パネル20において設定した印刷条件とを含む印刷命令を渡す(ステップS469)。すると、印刷アプリ100_5は、上述のステップS420〜S431の処理を実行して、3枚の印刷結果を得ることができる。ここでは、印刷結果の各紙には、ページ順に紙ID5−1,紙ID5−2,紙ID5−3の各紙IDを表すコード画像が各々印刷されているものとする。
【0104】
以上のようにして、紙IDに含まれるUUIDを用いてサービス取得1を実行して、該当するサービス情報を検索し、サービス情報が得られなかった場合にはサービス取得3を実行して、信頼関係にあるSRMS200を検索し、当該信頼関係にあるSRMS200に対してサービス取得1を実行させ、該当のサービス情報が得られるまでサービス取得1及びサービス取得3を繰り返すサービス情報検索を行う。更に、得られたサービス情報を用いて紙情報を取得し、当該紙情報の「元文書へのリンク」から電子ID又は紙IDを得て、紙IDを得た場合にはさらに当該紙IDに対応する紙情報を取得し、電子IDを得られるまで紙情報の取得を繰り返す。電子IDを得た場合には、当該電子IDに対応する電子情報及び電子文書(TIFFファイル)を得て、この結果、当該電子文書を用いて印刷を行うことができる。
【0105】
b)の場合の動作の手順
図38〜39は、上述のa)の複写機MFP5で再印刷した紙の1ページ目(ここでは、紙ID5−1に対応するものとする)を、複写機MFP6でスキャンし、再々印刷する場合のスキャンアプリ101_6の動作の手順を示すフローチャートである。ここでは、スキャンアプリ101_6の起動後、上述のa)のケースにおいてステップS469の結果得られた印刷結果である紙3枚のうち1ページ目(紙ID5−1に対応する)を、ユーザが複写機MFP6のスキャン部へセットして、操作パネル20において印刷条件を設定し、スキャンボタンを押下して処理が始まる。スキャンアプリ101_6は、印刷条件を取得し、スキャン部にセットされた紙のスキャンを実行する(ステップS480)。そして、スキャンアプリ101_6は、スキャンの結果得られるスキャン画像を複写機MFP6のデコーダ204_6に渡す(ステップS481)。尚、ステップS482〜S484の処理については、上述のステップS442〜S444の処理を略同様であるため、その説明を省略する。また、上述のa)の場合の動作の手順と共通する部分についても、その説明を省略する。
【0106】
ステップS485では、スキャンアプリ101_6は、デコーダ204_6から渡された紙ID5−1から、PIDS201のUUIDを抽出する。ここでは、スキャンアプリ101_6は、当該UUIDについて、当該UUIDだけではPIDS201_5であるか否かを判断できないため、上述のステップS446と同様にして、当該UUIDをパラメータとして複写機MFP6のSRMS200_6に渡し、上述したサービス取得1の実行を要求する(ステップS486)。SRMS200_6は、サービス取得1の機能により、指定されたUUIDのサービス情報を検索する。ここでは、SRMS200_6はPIDS201_5のサービス情報を管理していないので、「指定のサービス情報がない」旨のエラー情報をスキャンアプリ101_6に返す(ステップS487)。スキャンアプリ101_6は、このエラー情報を受け取ると(ステップS488)、次いで、SRMS200_6に対してサービス情報のリスト(サービス取得3の実行)を要求する(ステップS489)。SRMS200_6は、サービス取得3の機能により、サービスDB300_6に格納されている信頼関係情報テーブル300B_6を参照する。ここでは、複写機MFP6は、どの複写機MFP1〜5,7〜8とも信頼関係を結んでいないため、他のSRMS200のサービス情報は、複写機MFP6のサービス情報テーブル300A_6には記憶されていない。このため、SRMS200_6は、「指定のサービス情報がない」旨のエラー情報をスキャンアプリ101_6に返す(ステップS490)。
【0107】
この場合、スキャンアプリ101_6は、エラー情報を受け取ると(ステップS491)、SRMS200_6に対してサービス検索を要求する(ステップS492)。すると、SRMS200_6は、複写機MFP6と同じイントラネットNT3に接続されている複写機MFP7,8の各SRMS200_7,SRMS200_8に対して上述のサービス検索を行い、SRMS200_7,SRMS200_8の各サービス情報のリストを得て、これをスキャンアプリ101_6に返す(ステップS493)。スキャンアプリ101_6は、サービス情報のリストを受け取ると(ステップS494)、そのサービス情報が当該リストにある全てのSRMS200に対して順に上述のサービス情報探索を行なう(ステップS495)。まずSRMS200_7を起点にサービス情報探索を行なうと、SRMS200_7からSRMS200_3のサービス情報を得て、SRMS200_3からSRMS200_2のサービス情報を得て、SRMS200_2からSRMS200_4のサービス情報を得る。SRMS200_4とSRMS200_5とは信頼関係にあることから、SRMS200_4の管理するサービス情報テーブル300A_4には、PIDS201_5のサービス情報が記憶されている。このため、SRMS200_4は、PIDS201_5のサービス情報をサービス情報テーブル300A_4から読み出して、これをスキャンアプリ101_6に返す。この結果、スキャンアプリ101_6は、PIDS201_5のサービス情報を取得する。尚、ここでは、ステップS494で得たサービス情報のリストにあったSRMS200_7を起点にサービス情報探索を行なった結果、検索対象のサービス情報(ここでは、PIDS201_5のサービス情報)を得た。このため、スキャンアプリ101_6は、そのサービス情報が当該リストにあるSRMS200_8を起点にサービス情報探索は行なわない。尚、もしSRMS200_7を起点にサービス情報探索を行なった結果、PIDS201_5のサービス情報が得られなければ、スキャンアプリ101_6は、次に、SRMS200_8を起点にサービス情報探索を行なう。
【0108】
そして、スキャンアプリ101_6は、得られたサービス情報の「名前空間」を参照して、当該サービス情報の示すサービスを判断する(ステップS496)。ここでは、PIDS201_5のサービス情報が返ってくるので、名前空間が「jp.co.ricoh.pids」であり、従って、スキャンアプリ101_6は、当該サービス情報の示すサービスはPIDSであると判断する。そして、スキャンアプリ101_6は、サービスがPIDSであると判断した場合、当該サービス情報の「URI」を参照して、PIDS201_5にアクセスして、ステップS484で取得したID(ここでは、紙ID5−1である)をPIDS201_5に渡して、紙取得の実行を要求する(ステップS497)。PIDS201_5は、紙情報DB301_5に格納されている紙情報テーブル301A_5を参照して、当該紙ID5−1に対応する紙情報を取得し、これをスキャンアプリ101_6に返す(ステップS498)。スキャンアプリ101_6は、紙情報を取得すると、上述のステップS463と同様にして、当該紙情報の「元文書へのリンク」にセットされているID(ここでは、紙ID1−2である)を取得し、当該IDからサービスのUUIDを抽出する(ステップS499)。
【0109】
そして、スキャンアプリ101_6は、抽出したUUIDで、上記のサービス情報探索で最終的にサービス情報を見つけたSRMS200_4を起点にサービス情報検索を行う(ステップS500)。または、上記SRMS200_6を起点にしたサービス情報の問合せから始めて、サービス情報検索を行っても良い。ここでは、スキャンアプリ101_6は、SRMS200_4を起点にサービス情報探索を行なうと、SRMS200_4からSRMS200_2のサービス情報を得る。SRMS200_2とSRMS200_1とは信頼関係にあることから、SRMS200_2の管理するサービス情報テーブル300A_2には、PIDS201_1のサービス情報が記憶されている。このため、SRMS200_2は、PIDS201_1のサービス情報をサービス情報テーブル300A_2から読み出して、これをスキャンアプリ101_6に返す。この結果、スキャンアプリ101_6は、PIDS201_1のサービス情報を取得する。次いで、スキャンアプリ101_6は、得られたサービス情報の「名前空間」を参照して、当該サービス情報の示すサービスを判断する(ステップS501)。ここでは、PIDS201_1のサービス情報が返ってくるので、名前空間が「jp.co.ricoh.pids」であり、従って、スキャンアプリ101_6は、当該サービス情報の示すサービスはPIDSであると判断する。
【0110】
そして、スキャンアプリ101_6は、サービスがPIDSであると判断した場合、当該サービス情報の「URI」を参照して、PIDS201_1にアクセスして、ステップS499で取得したID(ここでは、紙ID1−2である)をPIDS201_1に渡して、紙取得の実行を要求する(ステップS502)。PIDS201_1は、紙情報DB301_1に格納されている紙情報テーブル301A_1を参照して、当該紙ID1−2に対応する紙情報を取得し、これをスキャンアプリ101_6に返す(ステップS503)。スキャンアプリ101_6は、紙情報を取得すると、上述のステップS463と同様にして、当該紙情報の「元文書へのリンク」にセットされているID(ここでは、電子IDである)を取得し、当該IDから、サービス(ここでは、EIDS202_1である)のUUIDを抽出する(ステップS504)。そして、スキャンアプリ101_6は、抽出したUUIDで、上記のサービス情報探索で最終的にサービス情報を見つけたSRMS200_2を起点にサービス情報探索を行なう(ステップS505)。SRMS200_2を起点にサービス情報探索を行なうと、SRMS200_2とSRMS200_1とは信頼関係にあることから、SRMS200_2の管理するサービス情報テーブル300A_2には、EIDS202_1のサービス情報が記憶されている。このため、SRMS200_2は、EIDS202_1のサービス情報をサービス情報テーブル300A_2から読み出して、これをスキャンアプリ101_6に返す。この結果、スキャンアプリ101_6は、EIDS202_1のサービス情報を取得する。そして、スキャンアプリ101_6は、得られたサービス情報の「名前空間」を参照して、当該サービス情報が何のサービスを示すものかを判断する(ステップS506)。ここでは、名前空間には「jp.co.ricoh.eids」がセットされているので、スキャンアプリ101_6は、当該サービス情報の示すサービスはEIDSであると判断する。
【0111】
そして、スキャンアプリ101_6は、サービスがEIDSであると判断した場合、当該サービス情報の「URI」を参照して、EIDS202_1にアクセスして、ステップS504で取得したID(ここでは、電子IDである)をEIDS202_1に渡して、電子情報取得の実行を要求する(ステップS507)。EIDS202_1は、電子情報DB302_1に格納されている電子情報テーブル302A_1を参照して、当該電子IDに対応する電子情報を取得し、リポジトリ205_1の文書取得機能を利用して、電子文書DB303_1に記憶されている電子文書(TIFFファイル)を取得し、これを、電子情報と共にスキャンアプリ101_6へ返す(ステップS508)。スキャンアプリ101_6は、電子情報及びTIFFファイルを取得すると、印刷アプリ100_6に対して、当該TIFFファイルと、スキャン画像からステップS484で得た紙ID5−1と、ユーザが操作パネル20において指定した印刷条件とを含む印刷命令を渡す(ステップS509)。すると、印刷アプリ100_6は、上述のステップS420〜S431の処理を実行して、3枚の印刷結果を得ることができる。ここでは、例えば、新たな紙ID6−1,紙ID6−2,紙ID6−3を各々表すコード画像が各々印刷された3枚の印刷結果を得ることができる。
【0112】
その後、事業所J3で再々印刷した紙を、いずれかの事業所J1〜J3で再度印刷することがあっても、上述のようにして、サービス取得、サービス検索、サービス情報検索、紙取得、電子情報取得の機能が実現されることにより、印刷元の電子文書を取得することができる。従って、印刷した紙を何度複写しても、印刷元の電子文書を用いて、印刷することができる。このため、ユーザの利便性を向上させることができる。
【0113】
(3)変形例
また、上述した各実施の形態に限定されるものではなく、以下に例示するような種々の変形が可能である。
【0114】
<変形例1>
上述した実施の形態の複写機MFPで実行される各種プログラムを、ROM12aではなく、HDD18に記憶させるように構成しても良い。また、当該各種プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、当該各種プログラムを、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital VersatilEIDSk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成しても良い。
【0115】
<変形例2>
また、上述した実施の形態において複写機MFPの機能として説明した印刷アプリ100、スキャンアプリ101、エンコーダ203、デコーダ204及びリポジトリ205の機能は、上述のものに限定されるものではなく、これらのうち少なくとも2つ以上を組み合わせても良いし、これらのうち少なくとも1つの機能の一部を他の機能に組み込んでも良いし、これらの機能を細分化しても良い。
【0116】
<変形例3>
上述の実施の形態においては、ページ毎に異なるローカルIDを発行し、ページ毎に異なるローカルIDを含む紙IDのコード画像を生成するようにした。しかし、1つの電子文書に含まれる全てのページに対して同じローカルIDを発行して紙IDを発行するようにしても良いし、所定のぺージ毎に紙IDを発行するようにしても良い。また、複数枚の紙のうち少なくとも1枚以上にコード画像を印刷すれば良く、1ページ目のみや特定のページにのみコード画像を印刷しても良いし、また、各ページに同一のコード画像を印刷しても良い。
【0117】
また、エンコードしてコード画像として紙に印刷する情報は、上述の紙IDに限らず、また、当該情報に対応付けられる情報も、上述の紙情報に限らない。
【0118】
<変形例4>
上述の実施の形態において複写機MFPが備えるサービスDB300,紙情報DB301,電子情報DB302,電子文書DB303は、ハードディスクなどの記憶装置に記憶されるものであっても良いし、当該複写機MFPに着脱可能なCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等の記録媒体に記憶されるものであっても良い。
【0119】
<変形例5>
上述の実施の形態においては、ステップS4014でNG紙に対して新たな紙IDを発行するように構成した。しかし、NG紙に対して新たな紙IDを発行せず、ステップS410で発行された紙IDを利用するように構成しても良い。図40は、本変形例における動作の手順を示すフローチャートである。ステップS4000〜S4006については、上述の実施の形態と同様であるため、その説明を省略する。ステップS4007´では、印刷アプリ100_1は、当該NG紙について、ステップS411で取得した紙IDをPIDS201_1に渡して、紙情報の変更を要求する。PIDS201_1は、上述の紙情報変更機能により、紙情報DB301_1に格納されている紙情報テーブル301A_1を参照して、当該紙IDに対応する紙情報を取得し、当該紙情報の「登録日時」及び「更新日時」の値を変更して、紙情報DB301_1に記憶されている当該紙情報を更新する。そして、PIDS201_1は、処理の終了を示す成功情報を印刷アプリ100_1に返す(ステップS4008´)。印刷アプリ100_1は、成功情報を取得すると(ステップS4009´)、次いで、ステップS411で取得した当該紙IDをPIDS201_1に渡して、上述のように更新された紙情報の取得を要求する(ステップS4010´)。PIDS201_1が、上述の紙取得機能により、当該紙IDに対応する紙情報を印刷アプリ100_1に返す(ステップS4011´)。印刷アプリ100_1は、新たな紙情報を取得すると(ステップS4012´)、上述と同様にして、ステップS4019以降の処理を行う。このような構成によれば、印刷するコード画像の品質を保証可能であると共に、発行する紙IDの数や、処理するステップ数を抑えることができるので、必要な資源を最小限に抑えることができる。また、紙IDをエンコードして生成したコード画像が印刷不良である場合又はデコード不良である場合、当該紙IDと対応付けられて紙情報テーブル301に記憶されている紙情報を変更することにより、紙IDと紙情報との対応関係の整合性を常に保持することができる。
【0120】
<変形例6>
上述の実施の形態においては、NG紙について、ステップS4007〜S4029,S416の処理を行うことにより、自動的に再印刷を行うように構成したが、NG紙を自動的に再印刷しないように構成しても良い。このような構成においては、図34のステップS4006の後、ステップS4010〜S4012の処理のみを行うように構成すれば良い。また、例えば、操作パネル20を介してユーザからの指示があった場合には、ステップS4007〜S4029,S416の処理を行うように構成しても良い。このような構成によっても、紙IDと紙情報との対応関係の整合性を常に保持することができる。
【0121】
また、上述の実施の形態においては、NG紙について、ステップS4005に係るNG記録と、ステップS4006に係るガベージトレイ72への排出とを行ったが、いずれか一方のみを行うように構成しても良い。
【0122】
<変形例7>
上述の実施の形態においては、複写機MFPは、他の複写機MFPとネットワークNTにより接続させる構成としたが、他の複写機MFPと接続されない構成であっても良い。
【産業上の利用可能性】
【0123】
以上のように、本発明にかかる画像処理装置、画像処理方法及び画像処理プログラムは、コード画像化された情報を紙に印刷すると共に、当該情報に対応付けられる情報を保持する画像処理技術に用いて好適である。
【図面の簡単な説明】
【0124】
【図1】本実施の形態にかかる画像処理システム全体の構成を示すブロック図である。
【図2】同実施の形態にかかる複写機MFPのハードウェア構成を示すブロック図である。
【図3】複写機MFPの本実施の形態に係るハードウェア構成及び機能的構成を簡略化して示した図である。
【図4】同実施の形態にかかる複写機MFPの機能的構成を示すブロック図である。
【図5】同実施の形態にかかるSRMS200の構成を示すブロック図である。
【図6】同実施の形態にかかるサービス情報テーブル300Aのデータ構成を例示する図である。
【図7】同実施の形態にかかる信頼関係情報テーブル300Bのデータ構成を例示する図である。
【図8】同実施の形態にかかるPIDS201の構成を示すブロック図である。
【図9】同実施の形態にかかる紙情報テーブル301Aのデータ構成を例示する図である。
【図10】同実施の形態にかかるEIDS202の構成を示すブロック図である。
【図11】同実施の形態にかかる電子情報テーブル302Aのデータ構成を例示する図である。
【図12】同実施の形態にかかるWebサービスにおいてSOAPメッセージを用いたSOAP通信の基本的な処理の手順を示すフローチャートである。
【図13】同実施の形態にかかるサービス登録の機能により実現されるサービス登録処理の手順を示すフローチャートである。
【図14】同実施の形態にかかるサービス変更の機能により実現されるサービス変更処理の手順を示すフローチャートである。
【図15】同実施の形態にかかるサービス削除の機能により実現されるサービス削除処理の手順を示すフローチャートである。
【図16】同実施の形態にかかるサービス取得の機能により実現されるサービス取得処理の手順を示すフローチャートである。
【図17】同実施の形態にかかる信頼関係構築機能により実現される信頼関係構築処理の手順を示すフローチャートである。
【図18】図1に示した画像処理システムにおいて、信頼関係を結んでいる複写機MFPの関係を模式的に例示した図である。
【図19】同実施の形態にかかる画像処理システムにおいて以上のような信頼関係があるときの複写機MFP3の有するサービス情報テーブル300A_3の状態を示す図である。
【図20】同実施の形態にかかる画像処理システムにおいて以上のような信頼関係があるときの及び複写機MFP7の有するサービス情報テーブル300A_7の状態を示す図である。
【図21】同実施の形態にかかる信頼関係破棄機能により実現される信頼関係破棄処理の手順を示すフローチャートである。
【図22】同実施の形態にかかる同期機能により実現される信頼関係破棄処理の手順を示すフローチャートである。
【図23】同実施の形態にかかるサービス問い合わせの機能により実現されるサービス問い合わせ処理の手順を示すフローチャートである。
【図24】同実施の形態にかかるサービス検索の機能により実現されるサービス検索処理の手順を示すフローチャートである。
【図25】同実施の形態にかかる紙登録の機能により実現される紙登録処理の手順を示すフローチャートである。
【図26】同実施の形態にかかる紙情報変更の機能により実現される紙情報変更処理の手順を示すフローチャートである。
【図27】同実施の形態にかかる紙削除の機能により実現される紙削除処理の手順を示すフローチャートである。
【図28】同実施の形態にかかる紙取得の機能により実現される紙取得処理の手順を示すフローチャートである。
【図29】同実施の形態にかかる電子情報登録の機能により実現される電子情報登録処理の手順を示すフローチャートである。
【図30】同実施の形態にかかる電子情報変更機能により実現される電子情報変更処理の手順を示すフローチャートである。
【図31】同実施の形態にかかる電子情報削除の機能により実現される電子情報削除処理の手順を示すフローチャートである。
【図32】同実施の形態にかかる電子情報取得の機能により実現される電子情報取得処理の手順を示すフローチャートである。
【図33】同実施の形態にかかるドライバ印刷機能による印刷アプリ100の動作の手順を示すフローチャートである。
【図34】同実施の形態にかかるドライバ印刷機能による印刷アプリ100の動作の手順を示すフローチャートである。
【図35】同実施の形態にかかるドライバ印刷機能による印刷アプリ100の動作の手順を示すフローチャートである。
【図36】同実施の形態にかかるスキャン印刷機能による印刷アプリ100の動作の手順を示すフローチャートである。
【図37】同実施の形態にかかる複写機MFP1で印刷した紙を、複写機MFP5で再印刷する場合のスキャンアプリ101_5の動作の手順を示すフローチャートである。
【図38】複写機MFP5で再印刷した紙を、複写機MFP6で再々印刷する場合のスキャンアプリ101_6の動作の手順を示すフローチャートである。
【図39】複写機MFP5で再印刷した紙を、複写機MFP6で再々印刷する場合のスキャンアプリ101_6の動作の手順を示すフローチャートである。
【図40】本実施の形態の変形例に係る動作の手順を示すフローチャートである。
【符号の説明】
【0125】
10 コントローラ
11 CPU
12a ROM
20 操作パネル
60 エンジン部
61 印刷部
62 コード画像読取部
70 収容トレイ
71 排紙トレイ(第1トレイ)
72 ガベージトレイ(第2トレイ)
74 NG記録部(第2印刷手段)
75 紙搬送路切替部
100 印刷アプリ(印刷手段)
101 スキャンアプリ(読取手段)
200 SRMS(サービス情報制御手段)
201 PIDS(紙情報制御手段)
202 EIDS(電子情報制御手段)
203 エンコーダ(コード取得手段)
204 デコーダ(コード画像生成手段)
205 リポジトリ(電子文書制御手段)
300 サービスDB
300A サービス情報テーブル
300B 信頼関係情報テーブル
301 紙情報DB
301A 紙情報テーブル
302 電子情報DB
302A 電子情報テーブル
303 電子文書DB
EI1 インターフェース部
EI2 処理機能部
EI20 電子情報登録処理部
EI21 電子情報変更処理部
EI22 電子情報削除処理部
EI23 電子情報取得処理部
MFP1〜6 複写機
NT0 インターネット
NT1〜NT3 イントラネット
PC1〜2 パーソナルコンピュータ
PI1 インターフェース部
PI2 処理機能部
PI20 紙登録処理部
PI21 サービス変更処理部
PI21 紙変更処理部
PI22 紙削除処理部
PI23 紙取得処理部
SR1 インターフェース部
SR2 処理機能部
SR20 サービス登録処理部
SR21 サービス変更処理部
SR22 サービス削除処理部
SR23 サービス取得処理部
SR24 信頼関係構築処理部
SR25 信頼関係破棄処理部
SR26 同期処理部
SR27 サービス検索処理部
SR28 サービス問い合せ処理部

【特許請求の範囲】
【請求項1】
記憶手段に記憶された所定の情報に関連付けられた識別情報をエンコードしてコード画像を生成するコード画像生成手段と、
印刷対象の電子文書を用いて印刷画像を生成し当該印刷画像と共に、前記コード画像生成手段が生成したコード画像を紙媒体に印刷する印刷手段と、
前記印刷手段が印刷した前記紙媒体を走査することにより前記コード画像を読み取るコード画像読取手段と、
前記コード画像読取手段が読み取った前記コード画像を用いて、読取識別情報を取得するコード取得手段と、
前記コード取得手段が取得した前記読取識別情報と、前記コード画像生成手段がエンコードして前記コード画像を生成した前記識別情報とを照合する照合手段と、
前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、所定の画像を前記紙媒体に印刷する第2印刷手段と、
前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記所定の情報を前記記憶手段から削除する情報制御手段とを備える
ことを特徴とする画像処理装置。
【請求項2】
前記情報制御手段は、前記識別情報を発行し、前記記憶手段に記憶される前記所定の情報を当該識別情報と関連付けて管理し、
前記情報制御手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記所定の情報に対して新たな識別情報を発行し、当該所定の情報を当該新たな識別情報と関連付けて前記記憶手段に新たに登録し、
前記コード画像生成手段は、前記情報制御手段が発行した前記新たな識別情報をエンコードしてコード画像を生成し、
前記印刷手段は、前記コード画像生成手段が当該新たな識別情報をエンコードして生成したコード画像を前記印刷画像と共に新たな紙媒体に印刷する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記所定の情報は、当該所定の情報が前記記憶手段に登録された日時又は前記記憶手段に記憶された当該所定の情報が更新された日時のうち少なくとも一方を示す日時情報を含み、
前記情報制御手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記所定の情報に含まれる前記日時情報を更新して当該所定の情報を前記記憶手段に新たに登録する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項4】
記憶手段に記憶される所定の情報に対して識別情報を発行し、前記所定の情報を当該識別情報と関連付けて管理する情報制御手段と、
前記記憶手段に記憶された前記所定の情報を識別可能な前記識別情報をエンコードしてコード画像を生成するコード画像生成手段と、
印刷対象の電子文書を用いて印刷画像を生成し当該印刷画像と共に、前記コード画像生成手段が生成したコード画像を紙媒体に印刷する印刷手段と、
前記印刷手段が印刷した前記紙媒体を走査することにより前記コード画像を読み取るコード画像読取手段と、
前記コード画像読取手段が読み取った前記コード画像を用いて、読取識別情報を取得するコード取得手段と、
前記コード取得手段が取得した前記読取識別情報と、前記コード画像生成手段がエンコードして前記コード画像を生成した前記識別情報とを照合する照合手段と、
前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、所定の画像を前記紙媒体に印刷する第2印刷手段とを備え、
前記情報制御手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記記憶手段に記憶された前記所定の情報を更新し、
前記印刷手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記コード画像生成手段がエンコードして生成した前記コード画像を前記印刷画像と共に新たな紙媒体に印刷する
ことを特徴とする画像処理装置。
【請求項5】
前記所定の情報は、前記記憶手段に記憶された当該所定の情報を更新した日時を示す日時情報を含み、
前記情報制御手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記記憶手段に記憶された前記所定の情報に含まれる前記日時情報を更新する
ことを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記第2印刷手段は、前記コード画像読取手段が前記コード画像を読み取ることができない場合、前記所定の画像を前記紙媒体に印刷する
ことを特徴とする請求項1又は請求項4に記載の画像処理装置。
【請求項7】
前記印刷手段が印刷した紙媒体の排出先を第1トレイ又は第2トレイに切り替える紙搬送路切替手段を更に備え、
前記印刷手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記紙媒体の排出先を前記紙搬送路切替手段により前記第2トレイに切り替える
ことを特徴とする請求項1又は請求項4に記載の画像処理装置。
【請求項8】
前記所定の情報は、印刷対象の前記紙媒体を特定する紙情報であり、当該紙媒体への印刷の際の印刷条件を示す印刷条件情報と、当該紙媒体の複写元の紙媒体を特定する紙情報又は前記印刷対象の電子文書を特定する電子情報のうち一方とを含む
ことを特徴とする請求項1又は請求項4に記載の画像処理装置。
【請求項9】
前記第2印刷手段は、前記照合手段における照合の結果、前記識別情報と前記読取識別情報とが一致しない場合、前記所定の画像を前記コード画像に重ねて印刷する
ことを特徴とする請求項1又は請求項4に記載の画像処理装置。
【請求項10】
記憶手段に記憶された所定の情報に関連付けられた識別情報をエンコードしてコード画像を生成するコード画像生成ステップと、
印刷対象の電子文書を用いて印刷画像を生成し当該印刷画像と共に、前記コード画像生成ステップで生成したコード画像を紙媒体に印刷する印刷ステップと、
前記印刷ステップで印刷した前記紙媒体を走査することにより前記コード画像を読み取るコード画像読取ステップと、
前記コード画像読取ステップで読み取った前記コード画像を用いて、読取識別情報を取得するコード取得ステップと、
前記コード取得ステップで取得した読取識別情報と、前記コード画像生成ステップでエンコードして前記コード画像を生成した前記識別情報とを照合する照合ステップと、
前記照合ステップにおける照合の結果、前記識別情報と前記読取識別情報が一致しない場合、所定の画像を前記紙媒体に印刷する第2印刷ステップと、
前記照合ステップにおける照合の結果、前記識別情報と前記読取識別情報が一致しない場合、前記所定の情報を前記記憶手段から削除する情報制御ステップとを備える
ことを特徴とする画像処理方法。
【請求項11】
記憶手段に記憶される所定の情報に対して識別情報を発行し、前記所定の情報を当該識別情報と関連付けて管理する情報制御ステップと、
前記記憶手段に記憶された前記所定の情報を識別可能な前記識別情報をエンコードしてコード画像を生成するコード画像生成ステップと、
印刷対象の電子文書を用いて印刷画像を生成し当該印刷画像と共に、前記コード画像生成ステップで生成したコード画像を紙媒体に印刷する印刷ステップと、
前記印刷ステップで印刷した前記紙媒体を走査することにより前記コード画像を読み取るコード画像読取ステップと、
前記コード画像読取ステップで読み取った前記コード画像を用いて、読取識別情報を取得するコード取得ステップと、
前記コード取得ステップで取得した読取識別情報と、前記コード画像生成ステップでエンコードして前記コード画像を生成した前記識別情報とを照合する照合ステップと、
前記照合ステップにおける照合の結果、前記識別情報と前記読取識別情報が一致しない場合、所定の画像を前記紙媒体に印刷する第2印刷ステップとを備え、
前記情報制御ステップでは、前記照合ステップにおける照合の結果、前記識別情報と前記読取識別情報が一致しない場合、前記記憶手段に記憶された前記所定の情報を更新し、
前記印刷ステップでは、前記照合ステップにおける照合の結果、前記識別情報と前記読取識別情報が一致しない場合、前記コード画像生成ステップでエンコードして生成した前記コード画像を前記印刷画像と共に新たな紙媒体に印刷する
ことを特徴とする画像処理方法。
【請求項12】
請求項10又は請求項11に記載された画像処理方法をコンピュータで実行させることを特徴とする画像処理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate


【公開番号】特開2008−204081(P2008−204081A)
【公開日】平成20年9月4日(2008.9.4)
【国際特許分類】
【出願番号】特願2007−38237(P2007−38237)
【出願日】平成19年2月19日(2007.2.19)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】