(57)【要約】【課題】印刷順序のばらつきを解消できるデータ処理プログラムを提供する。【解決手段】データ処理プログラムは、画像形成装置に対応付けられた情報を受信した場合に、第１データを管理するサーバ装置に対し、前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データの少なくとも１つを要求し、少なくとも１つの前記第１データを受信した後に、前記サーバ装置に対し、前記画像形成装置に送信する第２データに応じた第１データのうち、少なくとも１つの前記第１データと異なる第１データを要求する、処理をコンピュータに実行させる。【選択図】図７
2019121081.tif 000002
【特許請求の範囲】
【請求項１】
画像形成装置に対応付けられた情報を受信した場合に、第１データを管理するサーバ装置に対し、前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データの少なくとも１つを要求し、
少なくとも１つの前記第１データを受信した後に、前記サーバ装置に対し、前記画像形成装置に送信する第２データに応じた第１データのうち、少なくとも１つの前記第１データと異なる第１データを要求する、
処理をコンピュータに実行させるためのデータ処理プログラム。
【請求項２】
前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データのうち、少なくとも１つの前記第１データと異なる第１データを要求する場合に、前記サーバ装置に対し、前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データのうち、印刷順序に応じた第１データを要求する、
処理をコンピュータに実行させることを特徴とする請求項１に記載のデータ処理プログラム。
【請求項３】
前記コンピュータと機能が異なる別のコンピュータ、前記コンピュータと機能が共通する他のコンピュータ、又は、前記サーバ装置のいずれかが前記コンピュータの障害を検知した場合、請求項１又は２に記載の処理を前記他のコンピュータに実行させるためのデータ処理プログラム。
【請求項４】
前記第１データは前記画像形成装置に依存しない印刷ジョブであり、
前記第２データは前記画像形成装置に依存する印刷ジョブである、
ことを特徴とする請求項１から３のいずれか１項に記載のデータ処理プログラム。
【請求項５】
コンピュータに処理を実行させるデータ処理プログラムであって、
前記処理は、
前記コンピュータに対応付けられた第１情報を送信し、
画像形成装置に依存しない印刷ジョブである第１データ、及び、前記第１情報と、印刷指示を受け付けた特定の画像形成装置に対応付けられた第２情報と、を対応付けた第３情報を管理するサーバ装置から、送信した前記第１情報と対応付けられた前記第２情報を含む第１データを取得し、
取得した前記第１データに基づいて、前記特定の画像形成装置に依存する印刷ジョブである第２データを生成し、
生成した前記第２データを前記特定の画像形成装置に送信する、
ことを特徴とするデータ処理プログラム。
【請求項６】
前記第１データを取得する処理は、前記印刷指示の受付日時が早い順に前記第１データを取得する、
ことを特徴とする請求項５に記載のデータ処理プログラム。
【請求項７】
印刷指示を受け付けた特定の画像形成装置に対応付けられた第１情報を受信した場合、画像形成装置に依存しない印刷ジョブである第１データに基づいて前記特定の画像形成装置に依存する印刷ジョブである第２データをそれぞれ生成して前記特定の画像形成装置に送信する複数のサーバ装置の各負荷に応じて、受信した第１情報を前記複数のサーバ装置のいずれかに送信し、
前記第１情報を受信したサーバ装置から送信された該サーバ装置に対応付けられた第２情報を受信した場合、前記第１情報と前記第２情報とを関連付けて管理し、前記第２情報と関連付けられた前記第１情報を含む前記第１データを、前記第１情報を受信したサーバ装置に送信する、
処理をコンピュータに実行させるためのデータ処理プログラム。
【請求項８】
前記第１データを送信する処理は、前記印刷指示の受付日時が早い順に前記第１データを送信する、
ことを特徴とする請求項７に記載のデータ処理プログラム。
【請求項９】
画像形成装置に対応付けられた情報を受信した場合に、第１データを管理するサーバ装置に対し、前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データの少なくとも１つを要求し、
少なくとも１つの前記第１データを受信した後に、前記サーバ装置に対し、前記画像形成装置に送信する第２データに応じた第１データのうち、少なくとも１つの前記第１データと異なる第１データを要求する、
処理をコンピュータが実行するデータ処理方法。
【請求項１０】
画像形成装置に対応付けられた情報を受信した場合に、第１データを管理するサーバ装置に対し、前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データの少なくとも１つを要求し、
少なくとも１つの前記第１データを受信した後に、前記サーバ装置に対し、前記画像形成装置に送信する第２データに応じた第１データのうち、少なくとも１つの前記第１データと異なる第１データを要求する、
処理を実行する制御部を有するデータ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、データ処理プログラム、データ処理方法、及びデータ処理装置に関する。
【背景技術】
【０００２】
クライアントからのリクエストを、多重化した処理サーバへ振り分ける負荷分散技術が知られている。また、印刷ジョブの処理においては、同一プリンタに対する印刷ジョブを要求順に処理することが望ましいなど、処理の順序が意味を有することも知られている。さらに、印刷ジョブのような処理の順序が意味を持つ用途においては、上記技術では、処理サーバへ処理を振り分ける前の処理の順序を保証することが難しいことも知られている（以上、例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１０５２３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えば、連続する２つの印刷ジョブが、上記技術に基づいて同等の性能を有する異なる処理サーバに振り分けられると、２つの印刷ジョブの処理に要する処理量（例えばデータ量やページ量など）によっては、２つの印刷ジョブの処理が完了する順序が振り分けられた順序と変わる可能性がある。
【０００５】
そして、処理が完了した印刷ジョブが各処理サーバから同一プリンタに出力されると、先に処理が完了した印刷ジョブがそのプリンタで実行され、次いで、後に処理が完了した印刷ジョブがそのプリンタで実行される。すなわち、印刷ジョブを要求した順序と異なる印刷順序でそのプリンタから印刷対象が出力される場合があり、印刷順序にばらつきが発生するという問題がある。
【０００６】
そこで、１つの側面では、印刷順序のばらつきを解消できるデータ処理プログラム、データ処理方法、及びデータ処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
１つの実施態様では、データ処理プログラムは、画像形成装置に対応付けられた情報を受信した場合に、第１データを管理するサーバ装置に対し、前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データの少なくとも１つを要求し、少なくとも１つの前記第１データを受信した後に、前記サーバ装置に対し、前記画像形成装置に送信する第２データに応じた第１データのうち、少なくとも１つの前記第１データと異なる第１データを要求する、処理をコンピュータに実行させる。
【発明の効果】
【０００８】
印刷順序のばらつきを解消することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は印刷支援システムの一例を説明するための図である。
【図２】図２はサーバ装置のハードウェア構成の一例である。
【図３】図３は第１実施形態に係るデータセンターの詳細を説明するための図である。
【図４】図４（ａ）はＷｅｂサーバのブロック図の一例である。図４（ｂ）は管理サーバのブロック図の一例である。
【図５】図５（ａ）は保管サーバのブロック図の一例である。図５（ｂ）はＤＢサーバのブロック図の一例である。
【図６】図６はジョブ情報記憶部の一例である。
【図７】図７は印刷サーバのブロック図の一例である。
【図８】図８は保管処理の一例を示す処理シーケンス図である。
【図９】図９は表示処理の一例を示す処理シーケンス図である。
【図１０】図１０は印刷対象選択画面の一例である。
【図１１】図１１は第１実施形態に係る印刷処理の一例を示す処理シーケンス図（その１）である。
【図１２】図１２は第１実施形態に係る印刷処理の一例を示す処理シーケンス図（その２）である。
【図１３】図１３（ａ）〜（ｃ）は第１管理テーブルの一例である。
【図１４】図１４（ａ）〜（ｃ）は第２管理テーブルの一例である。
【図１５】図１５は第２実施形態に係るデータセンターの詳細を説明するための図である。
【図１６】図１６は監視サーバのブロック図の一例である。
【図１７】図１７は第２実施形態に係る印刷処理の一例を示す処理シーケンス図である。
【図１８】図１８（ａ）及び（ｂ）は第２管理テーブルの他の一例である。
【発明を実施するための形態】
【００１０】
以下、本件を実施するための形態について図面を参照して説明する。
【００１１】
（第１実施形態）
図１は印刷支援システムＳの一例を説明するための図である。印刷支援システムＳはクライアント端末１００とサーバ装置２００と複合機３００とを備えている。複合機３００は少なくとも印刷機能と通信機能とを備えた事務機器である。複合機３００はファクシミリ機能やスキャナ機能の少なくとも一方を備えていてもよい。図１では、画像形成装置の一例として複数の複合機３００が示されているが、複数の複合機３００はメーカと機種の少なくとも一方が相違する。詳細は後述するが、複数の複合機３００の一部又は全部がプリンタであってもよい。一方、サーバ装置２００はクラウドＣＬ上のデータセンターＤＣに設置される。サーバ装置２００をデータセンターＤＣに設置せずに、サーバ装置２００を自社内に設置してもよい。すなわち、印刷支援システムＳをクラウド型で運用してもよいし、オンプレミス型で運用してもよい。尚、図１では、複数のサーバ装置２００が示されているが、複数のサーバ装置２００が備える機能の詳細については後述する。
【００１２】
クライアント端末１００は印刷支援システムＳを利用するユーザ１０によって操作される。クライアント端末１００は例えば拠点Ｘで操作される。拠点Ｘとしては例えば事業所や工場といった企業の保有施設やユーザ１０の自宅などがある。クライアント端末１００はユーザ１０の操作に基づいて種々の文書ファイルを生成する。また、クライアント端末１００はユーザ１０の操作に基づいて印刷ジョブを生成して出力する。印刷ジョブは文書ファイルをプリンタ１１０や複合機３００に印刷させるデータである。
【００１３】
例えば、拠点Ｘに設置されたプリンタ１１０に文書ファイルを印刷させる操作をユーザ１０が行うと、クライアント端末１００は当該操作に基づいてプリンタ１１０のメーカや機種に依存する描画形式の印刷ジョブを生成し、生成した描画形式の印刷ジョブをプリンタ１１０に向けて送信する。尚、描画形式の印刷ジョブとしては、例えばPage Description Language（ＰＤＬ）形式の印刷ジョブがある。以下、描画形式の印刷ジョブを描画ジョブと呼ぶ。
【００１４】
クライアント端末１００とプリンタ１１０は通信ネットワークＮＷ１と接続されたアクセスポイントＡＰを介して接続されている。したがって、クライアント端末１００から送信された描画ジョブは無線通信ＷＬ１によってアクセスポイントＡＰに到達し、アクセスポイントＡＰは無線通信ＷＬ２によって描画ジョブをプリンタ１１０に転送する。これにより、プリンタ１１０は描画ジョブの解析結果に基づいて文書ファイルに応じた画像を紙媒体１１１に印刷する。尚、通信ネットワークＮＷ１としては例えばLocal Area Network（ＬＡＮ）などがある。無線通信ＷＬ１，ＷＬ２としては例えばＷｉ−Ｆｉ（登録商標）といった近距離無線通信がある。無線通信ＷＬ１，ＷＬ２に代えて、有線通信を利用してもよい。
【００１５】
一方、拠点Ｘと場所や地域が異なる拠点Ｙや拠点Ｚに設置された複合機３００又は拠点Ｘに設置された複合機（不図示）に文書ファイルを印刷させる操作をユーザ１０がクライアント端末１００に対して行うと、クライアント端末１００は当該操作に基づいて複合機３００のメーカや機種に依存しない中間形式の印刷ジョブを生成する。中間形式の印刷ジョブはユーザ１０を識別するユーザＩＤを含んでいる。そして、クライアント端末１００は生成した中間形式の印刷ジョブのサーバ装置２００への保管を指示する保管指示のデータ（以下、単に保管指示という。）をサーバ装置２００に向けて送信する。保管指示は中間形式の印刷ジョブを含んでいる。尚、中間形式の印刷ジョブとしては、例えばXML Paper Specification（ＸＰＳ）やEnhanced Meta File（ＥＭＦ）形式の印刷ジョブがある。以下、中間形式の印刷ジョブを中間ジョブと呼ぶ。
【００１６】
ここで、図１に示すように、クライアント端末１００とサーバ装置２００はアクセスポイントＡＰ、通信ネットワークＮＷ１及び通信ネットワークＮＷ２を介して接続されている。通信ネットワークＮＷ２としては、例えばインターネットがある。印刷支援システムＳが上述したオンプレミス型で運用されている場合には、通信ネットワークＮＷ２としてWide Area Network（ＷＡＮ）が利用される。したがって、クライアント端末１００から送信された保管指示は無線通信ＷＬ１によってアクセスポイントＡＰに到達し、通信ネットワークＮＷ１，ＮＷ２を介してサーバ装置２００に到達する。サーバ装置２００はクライアント端末１００から送信された保管指示を受信すると、受信した保管指示に含まれる中間ジョブを保管する。
【００１７】
その後、図１に示すように、ユーザ１０が拠点Ｘから例えば拠点Ｙに移動し、拠点Ｙに設置された複合機３００に対し中間ジョブの一覧表示を指示する操作を行うと、複合機３００は当該操作に応じた表示指示のデータ（以下、単に表示指示という。）をサーバ装置２００に向けて送信する。サーバ装置２００は表示指示を受信すると、表示指示を送信した複合機３００に向けて、保管した中間ジョブの一覧を送信する。
【００１８】
また、ユーザ１０が複合機３００で中間ジョブの一覧の中から少なくとも１つの中間ジョブを選択し、選択した中間ジョブに対応する文書ファイルの印刷を指示する操作を行うと、複合機３００は当該操作に応じた印刷指示のデータ（以下、単に印刷指示という。）をサーバ装置２００に向けて送信する。サーバ装置２００は印刷指示を受信すると、印刷指示の送信元と印刷対象の文書ファイルを特定し、特定した文書ファイルに対応する中間ジョブを、印刷指示を送信した複合機３００に依存する描画ジョブに変換する。そして、サーバ装置２００はその複合機３００に向けて描画ジョブを送信する。
【００１９】
これにより、ユーザ１０が操作を行った複合機３００は描画ジョブの解析結果に基づいて文書ファイルに応じた画像を紙媒体（不図示）に印刷する。したがって、クライアント端末１００で生成した文書ファイルの中間ジョブをサーバ装置２００に送信しておけば、ユーザ１０は拠点Ｘで印刷した紙媒体１１１を持参して拠点Ｙに移動しなくてもよい。結果的に、移動中の紙媒体１１１の紛失や盗難を回避することができる。
【００２０】
以下、印刷支援システムＳの詳細について説明する。
【００２１】
図２はサーバ装置２００のハードウェア構成の一例である。尚、上述したクライアント端末１００及び複合機３００については基本的にサーバ装置２００と同様のハードウェア構成であるため、説明を省略する。図２に示すように、サーバ装置２００は、少なくともハードウェアプロセッサとしてのCentral Processing Unit（ＣＰＵ）２００Ａ、Random Access Memory（ＲＡＭ）２００Ｂ、Read Only Memory（ＲＯＭ）２００Ｃ及びネットワークＩ／Ｆ（インタフェース）２００Ｄを含んでいる。サーバ装置２００は、必要に応じて、Hard Disk Drive（ＨＤＤ）２００Ｅ、入力Ｉ／Ｆ２００Ｆ、出力Ｉ／Ｆ２００Ｇ、入出力Ｉ／Ｆ２００Ｈ、ドライブ装置２００Ｉの少なくとも１つを含んでいてもよい。ＣＰＵ２００Ａからドライブ装置２００Ｉまでは、内部バス２００Ｊによって互いに接続されている。このように、サーバ装置２００はコンピュータによって実現することができる。尚、ＣＰＵ２００Ａに代えてMicro Processing Unit（ＭＰＵ）をハードウェアプロセッサとして利用してもよい。
【００２２】
入力Ｉ／Ｆ２００Ｆには、入力装置７１０が接続される。入力装置７１０としては、例えばキーボードやマウスなどがある。出力Ｉ／Ｆ２００Ｇには、表示装置７２０が接続される。表示装置７２０としては、例えば液晶ディスプレイがある。入出力Ｉ／Ｆ２００Ｈには、半導体メモリ７３０が接続される。半導体メモリ７３０としては、例えばUniversal Serial Bus（ＵＳＢ）メモリやフラッシュメモリなどがある。入出力Ｉ／Ｆ２００Ｈは、半導体メモリ７３０に記憶されたプログラムやデータを読み取る。入力Ｉ／Ｆ２００Ｆ及び入出力Ｉ／Ｆ２００Ｈは、例えばＵＳＢポートを備えている。出力Ｉ／Ｆ２００Ｇは、例えばディスプレイポートを備えている。
【００２３】
ドライブ装置２００Ｉには、可搬型記録媒体７４０が挿入される。可搬型記録媒体７４０としては、例えばCompact Disc（ＣＤ）−ＲＯＭ、Digital Versatile Disc（ＤＶＤ）といったリムーバブルディスクがある。ドライブ装置２００Ｉは、可搬型記録媒体７４０に記録されたプログラムやデータを読み込む。ネットワークＩ／Ｆ２００Ｄは、例えば通信回路及びＬＡＮポートを備えている。ネットワークＩ／Ｆ２００Ｄは上述した通信ネットワークＮＷ２と接続される。
【００２４】
上述したＲＡＭ２００Ｂには、ＲＯＭ２００ＣやＨＤＤ２００Ｅに記憶されたプログラムがＣＰＵ２００Ａによって一時的に格納される。ＲＡＭ２００Ｂには、可搬型記録媒体７４０に記録されたプログラムがＣＰＵ２００Ａによって一時的に格納される。格納されたプログラムをＣＰＵ２００Ａが実行することにより、ＣＰＵ２００Ａは後述する各種の機能を実現し、また、後述する各種の処理を実行する。尚、プログラムは後述する処理シーケンス図に応じたものとすればよい。
【００２５】
図３は第１実施形態に係るデータセンターＤＣの詳細を説明するための図である。図３ではデータの流れの一例を矢印によって表現しているが、データの流れは図３に示す流れに限定されず、矢印によって表現されてないデータの流れが発生する場合もある。データセンターＤＣは、上述したサーバ装置２００として、複数のＷｅｂサーバ２１０、複数の管理サーバ２２０、保管サーバ２３０、Database（ＤＢ）サーバ２４０、及び複数の印刷サーバ２５０を備えている。印刷サーバ２５０が後述するデータ処理装置に相当する。複数のＷｅｂサーバ２１０は並列に配置され、いずれも共通する機能を有する。同様に、複数の管理サーバ２２０は並列に配置され、いずれも共通する機能を有する。複数の印刷サーバ２５０は並列に配置され、いずれも共通する機能を有する。すなわち、複数のＷｅｂサーバ２１０、複数の管理サーバ２２０、及び複数の印刷サーバ２５０はいずれも多重化又は冗長化されている。尚、複数のＷｅｂサーバ２１０、複数の管理サーバ２２０、及び複数の印刷サーバ２５０の全てが多重化又は冗長化されている必要はなく、少なくとも複数の印刷サーバ２５０が多重化又は冗長化されていればよい。
【００２６】
また、データセンターＤＣは第１のロードバランサ（以下、第１ＬＢという。）２１、第２のロードバランサ（以下、第２ＬＢという。）２２、及び第３のロードバランサ（以下、第３ＬＢという。）２３を備えている。第１ＬＢ２１、第２ＬＢ２２、及び第３ＬＢ２３は、例えば、Ｗｅｂサーバ２１０、管理サーバ２２０、保管サーバ２３０、ＤＢサーバ２４０、及び印刷サーバ２５０と異なるサーバ装置２００や負荷を分散する処理を実行する所定の機器で実現することができる。第１ＬＢ２１は複数のＷｅｂサーバ２１０にかかる負荷を分散する。例えば、第１ＬＢ２１はクライアント端末１００から送信された保管指示を受信すると、複数のＷｅｂサーバ２１０のいずれかをサイクリック（循環的）に選択し、選択したＷｅｂサーバ２１０に保管指示を送信する。第１ＬＢ２１は複数のＷｅｂサーバ２１０の負荷を監視し、最も負荷がかかっていないＷｅｂサーバ２１０を選択してもよい。これにより、１つのＷｅｂサーバ２１０に負荷が集中することが回避される。第１ＬＢ２１が複合機３００から表示指示や印刷指示を受信した場合についても保管指示の場合と同様である。尚、第２ＬＢ２２，第３ＬＢ２３は基本的に第１ＬＢ２１と同様の処理を行うため、詳細な説明を省略する。このように、データセンターＤＣが第１ＬＢ２１、第２ＬＢ２２、及び第３ＬＢ２３を備えることで、データセンターＤＣが提供するサービスの可用性が確保される。尚、仮に複数の印刷サーバ２５０のみが多重化又は冗長化されている場合には、データセンターＤＣは第３ＬＢ２３を備えていればよい。
【００２７】
ここで、Ｗｅｂサーバ２１０は第１ＬＢ２１から送信された保管指示、表示指示、及び印刷指示を受信すると、受信した保管指示、表示指示、及び印刷指示を第２ＬＢ２２に送信する。第２ＬＢ２２は保管指示、表示指示、及び印刷指示を受信すると、第１ＬＢ２１と同様の方式により管理サーバ２２０のいずれかを選択し、選択した管理サーバ２２０に保管指示、表示指示、及び印刷指示を送信する。
【００２８】
管理サーバ２２０は保管サーバ２３０及びＤＢサーバ２４０を管理する。管理サーバ２２０は第２ＬＢ２２から送信された保管指示、表示指示、及び印刷指示を受信すると、指示の種別を判断する。管理サーバ２２０は保管指示を受信したと判断した場合、保管指示に含まれる中間ジョブを保管サーバ２３０に保管する。管理サーバ２２０は表示指示を受信したと判断した場合、保管サーバ２３０から中間ジョブの一覧を取得し、取得した中間ジョブの一覧を複合機３００に向けて送信する。管理サーバ２２０は印刷指示を受信したと判断した場合、印刷指示に含まれる中間ジョブに関する各種情報をジョブ情報としてＤＢサーバ２４０に登録したり、印刷サーバ２５０に描画ジョブの生成処理を依頼する処理依頼を第３ＬＢ２３に送信したりする。尚、管理サーバ２２０が印刷指示を受信した場合に実行する処理の詳細については後述する。
【００２９】
第３ＬＢ２３は処理依頼を受信すると、第１ＬＢ２１と同様の方式により印刷サーバ２５０のいずれかを選択し、選択した印刷サーバ２５０に処理依頼を送信する。印刷サーバ２５０は第３ＬＢ２３から送信された処理依頼を受信すると、自身に割り当てられた識別情報（以下、サーバＩＤという。）を第２ＬＢ２２に送信したり、管理サーバ２２０に中間ジョブを要求するジョブ要求を送信したりする。尚、詳細は後述するが、印刷サーバ２５０は管理サーバ２２０からジョブ要求に応じて送信された中間ジョブを、第３ＬＢ２３を介さずに管理サーバ２２０から直接取得した場合、中間ジョブから描画ジョブを生成し、生成した描画ジョブを、印刷指示を送信した複合機３００に向けて送信する。これにより、描画ジョブを受信した複合機３００は描画ジョブの解析結果に基づいた印刷処理を実行する。
【００３０】
次に、図４から図７を参照して、上述したＷｅｂサーバ２１０、管理サーバ２２０、保管サーバ２３０、ＤＢサーバ２４０、及び印刷サーバ２５０の機能について説明する。
【００３１】
図４（ａ）はＷｅｂサーバ２１０のブロック図の一例である。図４（ｂ）は管理サーバ２２０のブロック図の一例である。図５（ａ）は保管サーバ２３０のブロック図の一例である。図５（ｂ）はＤＢサーバ２４０のブロック図の一例である。図６はジョブ情報記憶部２４３の一例である。図７は印刷サーバ２５０のブロック図の一例である。
【００３２】
尚、通信部２１１，２２１，２３１，２４１，２５１は上述したネットワークＩ／Ｆ２００Ｄによって実現することができる。処理部２１２，２２２，２３２，２４２、制御部２５２、並びに第１生成部２５３、第２生成部２５４、及び第３生成部２５５は上述したＣＰＵ２００Ａによって実現することができる。中間ジョブ記憶部２３３及びジョブ情報記憶部２４３は上述したＲＡＭ２００ＢやＨＤＤ２００Ｅによって実現することができる。
【００３３】
まず、Ｗｅｂサーバ２１０について説明する。図４（ａ）に示すように、Ｗｅｂサーバ２１０は通信部２１１と処理部２１２を備えている。通信部２１１はＷｅｂサーバ２１０と第１ＬＢ２１及び第２ＬＢ２２との通信を制御する。処理部２１２は第１ＬＢ２１から送信された保管指示、表示指示、及び印刷指示を通信部２１１が受信すると、通信部２１１が受信した保管指示、表示指示、及び印刷指示に対して種々の処理を実行する。処理部２１２が実行する処理としては、例えばプロトコルに関するプロトコル処理などがある。保管指示、表示指示、及び印刷指示が暗号化されている場合には、処理部２１２が暗号を復号する復号処理を実行してもよい。処理部２１２は保管指示、表示指示、及び印刷指示に対して種々の処理を実行し終えると、処理済の保管指示、表示指示、及び印刷指示を通信部２１１を介して送信する。
【００３４】
次に、管理サーバ２２０について説明する。管理サーバ２２０は通信部２２１と処理部２２２を備えている。通信部２２１は管理サーバ２２０と第２ＬＢ２２、第３ＬＢ２３、保管サーバ２３０、及びＤＢサーバ２４０との通信を制御する。処理部２２２は第２ＬＢ２２から送信された保管指示、表示指示、及び印刷指示を受信すると、指示の種別を判断し、指示の種別に応じた処理を実行する。
【００３５】
例えば、処理部２２２は保管指示や表示指示を受信したと判断した場合、通信部２２１を介して保管指示や表示指示を保管サーバ２３０に送信する。一方、処理部２２２は印刷指示を受信したと判断した場合、印刷指示に含まれるジョブ情報のＤＢサーバ２４０への登録を指示する登録指示を生成したり、印刷サーバ２５０に描画ジョブの生成処理を依頼する処理依頼を生成したりする。処理部２２２は登録指示を生成した場合、通信部２２１を介して登録指示をＤＢサーバ２４０に送信する。登録指示はジョブ情報を含んでいる。処理部２２２は処理依頼を生成した場合、通信部２２１を介して処理依頼を第３ＬＢ２３に送信する。
【００３６】
次に、保管サーバ２３０について説明する。保管サーバ２３０は通信部２３１と処理部２３２と中間ジョブ記憶部２３３を備えている。通信部２３１は保管サーバ２３０と管理サーバ２２０との通信を制御する。処理部２３２は管理サーバ２２０から送信された保管指示を受信すると、保管指示に含まれる中間ジョブを中間ジョブ記憶部２３３に保管する。一方、処理部２３２は管理サーバ２２０から送信された表示指示を受信すると、中間ジョブ記憶部２３３に保管された中間ジョブの一覧を取得し、中間ジョブの一覧を通信部２３１を介して管理サーバ２２０に送信する。尚、管理サーバ２２０は中間ジョブの一覧を受信すると、表示指示を送信した複合機３００に向けて中間ジョブの一覧を送信する。
【００３７】
次に、ＤＢサーバ２４０について説明する。ＤＢサーバ２４０は通信部２４１と処理部２４２とジョブ情報記憶部２４３を備えている。通信部２４１はＤＢサーバ２４０と管理サーバ２２０との通信を制御する。処理部２４２は管理サーバ２２０から送信された登録指示を受信すると、登録指示に含まれるジョブ情報をジョブ情報記憶部２４３に登録する。
【００３８】
特に、処理部２４２は、図６に示すように、ジョブ情報に含まれる機器ＩＤ、印刷指示受付日時、及び文書名をジョブ情報記憶部２４３の第１管理テーブルＴ１に登録する。処理部２４２は、文書名が付与された文書ファイルに設定された各種設定情報（モノクロ印刷やカラー印刷など）を第１管理テーブルＴ１に登録してもよい。ここで、機器ＩＤは複合機３００に対応付けられた識別子である。印刷指示受付日時はユーザ１０が印刷を指示する操作を複合機３００に行った日時を表している。図６では、一例として秒単位の印刷指示受付日時が示されているが、０．０１秒単位まで拡張してもよい。これにより、秒単位で印刷指示受付日時が同時であっても、０，０１秒単位で異なっていれば、印刷指示受付日時を区別することができる。文書名はユーザ１０が印刷対象として選択した文書ファイルの名称を表している。尚、処理部２４２はジョブ情報を登録する際にジョブ情報を識別するジョブＩＤを生成し、生成したジョブＩＤをジョブ情報と関連付けて登録する。一方、処理部２４２は管理サーバ２２０による中間ジョブの送信状況に応じてステータスを定期的に更新する。
【００３９】
また、処理部２４２は、図６に示すように、ジョブ情報に含まれる機器ＩＤをジョブ情報記憶部２４３の第２管理テーブルＴ２に登録する。処理部２４２は、ジョブ情報に含まれる機器ＩＤと重複する機器ＩＤが第２管理テーブルＴ２に登録されている場合、その機器ＩＤの第２管理テーブルＴ２への登録を中止する。これにより、第２管理テーブルＴ２内での機器ＩＤの重複は回避される。尚、処理部２４２は所定のタイミングでサーバＩＤを第２管理テーブルＴ２に登録する。処理部２４２がサーバＩＤを登録する際の処理については後述する。
【００４０】
次に、印刷サーバ２５０について説明する。印刷サーバ２５０は通信部２５１と制御部２５２と第１生成部２５３と第２生成部２５４と第３生成部２５５とを備えている。通信部２５１は印刷サーバ２５０と第３ＬＢ２３及び複合機３００との通信を制御する。制御部２５２は第３ＬＢ２３から送信された処理依頼を通信部２５１を介して受信すると、処理依頼を送信した管理サーバ２２０に向けて自身のサーバＩＤを送信する。
【００４１】
尚、詳細は後述するが、制御部２５２は処理依頼を送信した管理サーバ２２０から中間ジョブを受信した場合、その中間ジョブに対応する第１生成部２５３、第２生成部２５４、及び第３生成部２５５のいずれかを選択する。制御部２５２は選択した第１生成部２５３、第２生成部２５４、及び第３生成部２５５のいずれかに中間ジョブを出力する。第１生成部２５３、第２生成部２５４、及び第３生成部２５５は、いずれも中間ジョブから複合機３００の機種又はメーカに応じた描画ジョブを生成する。第１生成部２５３、第２生成部２５４、及び第３生成部２５５はいずれも複合機３００の機種又はメーカに応じたプリンタドライバによって実現することができる。例えば、第２生成部２５４が中間ジョブを受け付けると、中間ジョブから描画ジョブを生成し、生成した描画ジョブを、通信部２５１を介して複合機３００に向けて送信する。
【００４２】
続いて、印刷支援システムＳの動作について説明する。
【００４３】
まず、図８を参照して、中間ジョブを保管サーバ２３０に保管する保管処理について説明する。図８は保管処理の一例を示す処理シーケンス図である。クライアント端末１００は保管指示を第１ＬＢに送信する（ステップＳ１０１）。より詳しくは、クライアント端末１００が備える制御部（不図示）が保管指示を第１ＬＢ２１に送信する。尚、上述したように、保管指示は中間ジョブを含んでいる。クライアント端末１００が保管指示を送信すると、第１ＬＢ２１が保管指示を受信し、Ｗｅｂサーバ２１０のいずれかを選択する（ステップＳ１０２）。第１ＬＢ２１はＷｅｂサーバ２１０のいずれかを選択すると、選択したＷｅｂサーバ２１０に保管指示を送信する（ステップＳ１０３）。
【００４４】
Ｗｅｂサーバ２１０は第１ＬＢ２１から送信された保管指示を受信する。より詳しくは、Ｗｅｂサーバ２１０の処理部２１２は通信部２１１を介して保管指示を受信する。Ｗｅｂサーバ２１０は保管指示を受信すると、受信した保管指示を第２ＬＢ２２に送信する（ステップＳ１０４）。より詳しくは、Ｗｅｂサーバ２１０の処理部２１２は保管指示を受信すると、受信した保管指示を、通信部２１１を介して第２ＬＢ２２に送信する。Ｗｅｂサーバ２１０が保管指示を送信すると、第２ＬＢ２２が保管指示を受信し、管理サーバ２２０のいずれかを選択する（ステップＳ１０５）。第２ＬＢ２２は管理サーバ２２０のいずれかを選択すると、選択した管理サーバ２２０に保管指示を送信する（ステップＳ１０６）。
【００４５】
管理サーバ２２０は第２ＬＢ２２から送信された保管指示を受信する。より詳しくは、管理サーバ２２０の処理部２２２は通信部２２１を介して第２ＬＢ２２から送信された保管指示を受信する。管理サーバ２２０は保管指示を受信すると、保管指示に含まれる中間ジョブを保管サーバ２３０に保管する（ステップＳ１０７）。より詳しくは、管理サーバ２２０の処理部２２２は保管指示を受信すると、受信した保管指示を保管サーバ２３０に送信し、保管サーバ２３０の処理部２３２は保管指示を受信すると、受信した保管指示に含まれる中間ジョブを中間ジョブ記憶部２３３に保管する。これにより、中間ジョブ記憶部２３３にはクライアント端末１００で生成された中間ジョブが蓄積される。尚、本実施形態では、上述したように、中間ジョブを含む保管指示をクライアント端末１００が送信し、管理サーバ２２０がその保管指示に含まれる中間ジョブを保管サーバ２３０に保管する例を説明したが、このような例に特に限定されない。例えば、クライアント端末１００の制御部（不図示）は中間ジョブと中間ジョブを含まない保管指示とを異なるタイミングで別々に送信してもよい。この場合、管理サーバ２２０の処理部２２２はクライアント端末１００から送信された中間ジョブを受信すると、受信した中間ジョブを保管サーバ２３０に送信する。保管サーバ２３０の処理部２３２は中間ジョブを受信すると、保管指示を受信するまで、受信した中間ジョブを保持する。したがって、保管サーバ２３０には中間ジョブが溜まる。その後、管理サーバ２２０の処理部２２２はクライアント端末１００から送信された保管指示を受信すると、受信した保管指示を保管サーバ２３０に送信する。保管サーバ２３０の処理部２３２は保管指示を受信すると、保持している中間ジョブをまとめて中間ジョブ記憶部２３３に保管する。このような保管手法であってもよい。
【００４６】
続いて、図９及び図１０を参照して、中間ジョブの一覧を複合機３００に一覧表示する表示処理について説明する。
【００４７】
図９は表示処理の一例を示す処理シーケンス図である。図１０は印刷対象選択画面の一例である。まず、図９に示すように、複合機３００は表示指示を第１ＬＢに送信する（ステップＳ２０１）。上述したように、複合機３００に対し中間ジョブの一覧表示を指示する操作（例えばログイン操作など）をユーザ１０が行うと、複合機３００が備える制御部（不図示）が表示指示を第１ＬＢ２１に送信する。表示指示はユーザ１０を識別するユーザＩＤを含んでいる。複合機３００が表示指示を送信すると、第１ＬＢ２１が表示指示を受信し、Ｗｅｂサーバ２１０のいずれかを選択する（ステップＳ２０２）。第１ＬＢ２１はＷｅｂサーバ２１０のいずれかを選択すると、選択したＷｅｂサーバ２１０に表示指示を送信する（ステップＳ２０３）。
【００４８】
Ｗｅｂサーバ２１０は第１ＬＢ２１から送信された表示指示を受信する。より詳しくは、Ｗｅｂサーバ２１０の処理部２１２は通信部２１１を介して表示指示を受信する。Ｗｅｂサーバ２１０は表示指示を受信すると、受信した表示指示を第２ＬＢ２２に送信する（ステップＳ２０４）。より詳しくは、Ｗｅｂサーバ２１０の処理部２１２は表示指示を受信すると、受信した表示指示を、通信部２１１を介して第２ＬＢ２２に送信する。Ｗｅｂサーバ２１０が表示指示を送信すると、第２ＬＢ２２が表示指示を受信し、管理サーバ２２０のいずれかを選択する（ステップＳ２０５）。第２ＬＢ２２は管理サーバ２２０のいずれかを選択すると、選択した管理サーバ２２０に表示指示を送信する（ステップＳ２０６）。
【００４９】
管理サーバ２２０は第２ＬＢ２２から送信された表示指示を受信する。より詳しくは、管理サーバ２２０の処理部２２２は通信部２２１を介して第２ＬＢ２２から送信された表示指示を受信する。管理サーバ２２０は表示指示を受信すると、保管サーバ２３０から中間ジョブの一覧を取得する（ステップＳ２０７）。より詳しくは、管理サーバ２２０の処理部２２２は表示指示を受信すると、受信した表示指示を保管サーバ２３０に送信する。保管サーバ２３０の処理部２３２は表示指示を受信すると、受信した表示指示に含まれるユーザＩＤに基づいて中間ジョブ記憶部２３３からユーザＩＤに応じた中間ジョブに取得して管理サーバ２２０の処理部２２２に送信する。これにより、管理サーバ２２０は保管サーバ２３０から中間ジョブの一覧を取得する。
【００５０】
管理サーバ２２０は中間ジョブの一覧を取得すると、取得した中間ジョブの一覧を複合機３００に送信する（ステップＳ２０８）。より詳しくは、管理サーバ２２０の処理部２２２は通信部２２１を介して中間ジョブの一覧を送信する。これにより、図１０に示すように、複合機３００の表示部（不図示）には、ユーザ１０が行った操作に応じた中間ジョブ２０の一覧が表示される。特に、図１０に示すように、ユーザ１０は印刷対象として中間ジョブ２０を選択し、選択した中間ジョブに対応する文書ファイルの印刷を指示する操作を行うことができる。
【００５１】
続いて、図１１から図１４を参照して、複合機３００による印刷処理について説明する。
【００５２】
図１１は第１実施形態に係る印刷処理の一例を示す処理シーケンス図（その１）である。図１２は第１実施形態に係る印刷処理の一例を示す処理シーケンス図（その２）である。図１３（ａ）〜（ｃ）は第１管理テーブルＴ１の一例である。図１４（ａ）〜（ｃ）は第２管理テーブルＴ２の一例である。尚、図１１の処理シーケンス図（その１）と図１２の処理シーケンス図（その２）は対応する記号（具体的には記号「Ａ」〜「Ｇ」）によって連続している。
【００５３】
図１１に示すように、まず、複合機３００は印刷指示を第１ＬＢ２１に送信する（ステップＳ３０１）。上述したように、選択した中間ジョブに対応する文書ファイルの印刷を指示する操作をユーザ１０が行うと、複合機３００が備える制御部（不図示）が印刷指示を第１ＬＢ２１に送信する。印刷指示は選択した中間ジョブに関するジョブ情報を含んでいる。印刷指示は、ジョブ情報と併せて、印刷指示受付日時及び操作を受け付けた複合機３００の機器ＩＤも含んでいる。複合機３００が印刷指示を送信すると、第１ＬＢ２１が印刷指示を受信し、Ｗｅｂサーバ２１０のいずれかを選択する（ステップＳ３０２）。第１ＬＢ２１はＷｅｂサーバ２１０のいずれかを選択すると、選択したＷｅｂサーバ２１０に印刷指示を送信する（ステップＳ３０３）。
【００５４】
Ｗｅｂサーバ２１０は第１ＬＢ２１から送信された印刷指示を受信する。より詳しくは、Ｗｅｂサーバ２１０の処理部２１２は通信部２１１を介して印刷指示を受信する。Ｗｅｂサーバ２１０は印刷指示を受信すると、受信した印刷指示を第２ＬＢ２２に送信する（ステップＳ３０４）。より詳しくは、Ｗｅｂサーバ２１０の処理部２１２は印刷指示を受信すると、受信した印刷指示を、通信部２１１を介して第２ＬＢ２２に送信する。Ｗｅｂサーバ２１０が印刷指示を送信すると、第２ＬＢ２２が印刷指示を受信し、管理サーバ２２０のいずれかを選択する（ステップＳ３０５）。第２ＬＢ２２は管理サーバ２２０のいずれかを選択すると、選択した管理サーバ２２０に印刷指示を送信する（ステップＳ３０６）。
【００５５】
管理サーバ２２０は第２ＬＢ２２から送信された印刷指示を受信する。より詳しくは、管理サーバ２２０の処理部２２２は通信部２２１を介して第２ＬＢ２２から送信された印刷指示を受信する。管理サーバ２２０は印刷指示を受信すると、ＤＢサーバ２４０にジョブ情報を登録する（ステップＳ３０７）。より詳しくは、管理サーバ２２０の処理部２２２は印刷指示を受信すると、受信した印刷指示をＤＢサーバ２４０に送信する。ＤＢサーバ２４０の処理部２４２は印刷指示を受信すると、受信した印刷指示に含まれるジョブ情報、印刷指示受付日時及び機器ＩＤを互いに関連付けてジョブ情報記憶部２４３に登録する。
【００５６】
これにより、図１３（ａ）に示すように、第１管理テーブルＴ１には印刷対象選択画面で選択された文書名「アジェンダ」に関するジョブ情報と文書名「サンプルα」に関するジョブ情報が、ジョブ情報と関連付けられた機器ＩＤ「Ｍ０２」及び印刷指示受付日時「１７／１０／１０  １４：１５：２０」とともに登録される。また、図１４（ａ）に示すように、第２管理テーブルＴ２には、ユーザ１０が選択した中間ジョブに対応する文書ファイルの印刷を指示する操作を行った複合機３００の機器ＩＤ「Ｍ０２」が登録される。
【００５７】
図１１に戻り、管理サーバ２２０はジョブ情報を登録すると、処理依頼を第３ＬＢ２３に送信する（ステップＳ３０８）。より詳しくは、管理サーバ２２０の処理部２２２は通信部２２１を介して処理依頼を送信する。処理依頼は機器ＩＤを含んでいる。管理サーバ２２０が処理依頼を送信すると、第３ＬＢ２３が処理依頼を受信し、印刷サーバ２５０のいずれかを選択する（ステップＳ３０９）。第３ＬＢ２３は印刷サーバ２５０のいずれかを選択すると、図１２に示すように、選択した印刷サーバ２５０に処理依頼を送信する（ステップＳ３１０）。
【００５８】
印刷サーバ２５０は第３ＬＢ２３から送信された処理依頼を受信する。より詳しくは、印刷サーバ２５０の制御部２５２は通信部２５１を介して第３ＬＢ２３から送信された処理依頼を受信する。印刷サーバ２５０は処理依頼を受信すると、第２ＬＢ２２にサーバＩＤを送信する（ステップＳ３１１）。より詳しくは、印刷サーバ２５０の制御部２５２は通信部２５１を介して自身に割り当てられたサーバＩＤを第２ＬＢ２２に送信する。尚、制御部２５２はサーバＩＤを第１ＬＢ２１に送信してもよい。
【００５９】
印刷サーバ２５０がサーバＩＤを送信すると、第２ＬＢ２２がサーバＩＤを受信し、管理サーバ２２０のいずれかを選択する（ステップＳ３１２）。第２ＬＢ２２は管理サーバ２２０のいずれかを選択すると、選択した管理サーバ２２０にサーバＩＤを送信する（ステップＳ３１３）。
【００６０】
管理サーバ２２０は第２ＬＢ２２から送信されたサーバＩＤを受信する。より詳しくは、管理サーバ２２０の処理部２２２は通信部２２１を介して第２ＬＢ２２から送信されたサーバＩＤを受信する。管理サーバ２２０はサーバＩＤを受信すると、ＤＢサーバ２４０に登録されたジョブ情報を更新する（ステップＳ３１４）。より詳しくは、管理サーバ２２０の処理部２２２はサーバＩＤを受信すると、受信したサーバＩＤをＤＢサーバ２４０に送信する。ＤＢサーバ２４０の処理部２４２はサーバＩＤを受信すると、受信したサーバＩＤに基づいてジョブ情報記憶部２４３を更新する。
【００６１】
具体的には、処理部２４２は第２管理テーブルＴ２からサーバＩＤが関連付けられていない機器ＩＤを特定し、特定した機器ＩＤに受信したサーバＩＤを関連付ける。これにより、図１４（ｂ）に示すように、第２管理テーブルＴ２に既に登録された機器ＩＤ「Ｍ０２」に印刷サーバ２５０から送信されたサーバＩＤ「ＰＳ０２」が関連付けられる。すなわち、機器ＩＤ「Ｍ０２」が割り当てられた複合機３００に送信する描画ジョブの生成は、サーバＩＤ「ＰＳ０２」が割り当てられた印刷サーバ２５０が担当すると決定される。
【００６２】
また、印刷サーバ２５０がステップＳ３１１の処理を実行し、予め定めた設定時間を経過した後、図１２に示すように、印刷サーバ２５０は中間ジョブを要求するジョブ要求を第２ＬＢ２２に送信する（ステップＳ３１５）。ジョブ要求は要求元のサーバＩＤとユーザが操作を行った複合機３００の機器ＩＤの両方を含んでいる。ジョブ要求はサーバＩＤと機器ＩＤのいずれか一方を含んでいてもよい。尚、設定時間は上述したステップＳ３１２からＳ３１４までの処理が十分に完了する程度の時間であることが望ましい。設定時間に代えて、印刷サーバ２５０が管理サーバ２２０にステップＳ３１４の処理が完了したか否かを問い合わせるポーリングを定期的に実行し、ステップＳ３１４の処理が完了したことを確認した場合に、印刷サーバ２５０はステップＳ３１５の処理を実行してもよい。
【００６３】
印刷サーバ２５０がジョブ要求を送信すると、第２ＬＢ２２がジョブ要求を受信し、管理サーバ２２０のいずれかを選択する（ステップＳ３１６）。第２ＬＢ２２は管理サーバ２２０のいずれかを選択すると、選択した管理サーバ２２０にジョブ要求を送信する（ステップＳ３１７）。
【００６４】
管理サーバ２２０は第２ＬＢ２２から送信されたジョブ要求を受信する。より詳しくは、管理サーバ２２０の処理部２２２は通信部２２１を介して第２ＬＢ２２から送信されたジョブ要求を受信する。管理サーバ２２０はジョブ要求を受信すると、保管サーバ２３０に保管された中間ジョブを第３ＬＢ２３を介さずに印刷サーバ２５０に送信する（ステップＳ３１８）。より詳しくは、管理サーバ２２０の処理部２２２はジョブ要求を受信すると、受信したジョブ要求をＤＢサーバ２４０に送信する。ＤＢサーバ２４０の処理部２４２はジョブ要求を受信すると、受信したジョブ要求に基づいてジョブ情報記憶部２４３からジョブ情報を取得する。
【００６５】
具体的には、処理部２４２はジョブ要求に含まれる機器ＩＤに基づいてその機器ＩＤに応じたジョブ情報の中から印刷指示受付日時が最も早いジョブ情報を第１管理テーブルＴ１から特定する。また、処理部２３２はジョブ要求に含まれる機器ＩＤに基づいてその機器ＩＤに応じたサーバＩＤを第２管理テーブルＴ２から特定する。処理部２４２は特定したジョブ情報とサーバＩＤを通信部２４１を介して管理サーバ２２０に送信する。
【００６６】
管理サーバ２２０はジョブ情報とサーバＩＤを受信すると、受信したジョブ情報に基づいて、保管サーバ２３０から中間ジョブを取得する。特に、管理サーバ２２０の処理部２２２は受信したジョブ情報を含む取得依頼を生成して保管サーバ２３０に送信し、保管サーバ２３０の処理部２３２は取得依頼に含まれるジョブ情報に基づいて、中間ジョブ記憶部２３３からジョブ情報に応じた中間ジョブを取得する。ジョブ情報には少なくとも文書名が含まれているため、処理部２３２は中間ジョブ記憶部２３３から文書名に応じた中間ジョブを取得することができる。処理部２３２は中間ジョブを取得すると、通信部２３１を介して中間ジョブを管理サーバ２２０に送信する。これにより、管理サーバ２２０は中間ジョブを取得する。管理サーバ２２０は中間ジョブを取得すると、取得した中間ジョブに機器ＩＤを関連付ける。そして、管理サーバ２２０は機器ＩＤを関連付けた中間ジョブを、ＤＢサーバ２４０から受信したサーバＩＤの印刷サーバ２５０に送信する。
【００６７】
尚、管理サーバ２２０は中間ジョブを送信すると、ＤＢサーバ２４０を更新する。より詳しくは、管理サーバ２２０の処理部２２２は送信した中間ジョブに対応するジョブ情報の更新依頼をＤＢサーバ２４０に送信する。ＤＢサーバ２４０の処理部２４２は更新依頼を受信すると、その更新依頼に基づいて、図１３（ｂ）に示すように、印刷サーバ２５０に送信した中間ジョブに対応するジョブ情報のステータスを待機から処理中に変更する。
【００６８】
印刷サーバ２５０は管理サーバ２２０から送信された中間ジョブを受信すると、受信した中間ジョブから描画ジョブを生成する（ステップＳ３１９）。より詳しくは、印刷サーバ２５０の制御部２５２は通信部２５１を介して中間ジョブを受信すると、中間ジョブと関連付けられた機器ＩＤに対応する第１生成部２５３、第２生成部２５４、及び第３生成部２５５のいずれかを選択する。
【００６９】
例えば、第１生成部２５３が機器ＩＤ「Ｍ０１」の複合機３００で処理可能な描画ジョブを生成し、第２生成部２５４が機器ＩＤ「Ｍ０２」の複合機３００で処理可能な描画ジョブを生成し、第３生成部２５５が機器ＩＤ「Ｍ０３」の複合機３００で処理可能な描画ジョブを生成する場合、制御部２５２が機器ＩＤ「Ｍ０２」と関連付けられた中間ジョブを受信すると、機器ＩＤ「Ｍ０２」に基づいて第２生成部２５４を選択する。
【００７０】
制御部２５２は第１生成部２５３、第２生成部２５４、及び第３生成部２５５のいずれかを選択すると、選択した第１生成部２５３、第２生成部２５４、及び第３生成部２５５のいずれかに中間ジョブを送信する。例えば、制御部２５２が第２生成部２５４を選択した場合、選択した第２生成部２５４に中間ジョブを送信する。これにより、第２生成部２５４は中間ジョブから描画ジョブを生成する。
【００７１】
図１２に示すように、印刷サーバ２５０は描画ジョブを生成し終えると、生成した描画ジョブを複合機３００に送信する（ステップＳ３２０）。例えば、第２生成部２５４が描画ジョブを生成し終えると、第２生成部２５４は通信部２５１を介して描画ジョブを複合機３００に送信する。特に、第２生成部２５４は中間ジョブと関連付けられた機器ＩＤの複合機３００に描画ジョブを送信する。これにより、複合機３００は受信した描画ジョブに応じた画像を紙媒体に印刷することができる。
【００７２】
尚、印刷サーバ２５０は描画ジョブを送信すると、管理サーバ２２０にジョブ情報の更新を依頼する更新依頼を送信する。管理サーバ２２０の処理部２２２は更新依頼を受信すると、更新依頼に基づいて、図１３（ｃ）に示すように、印刷サーバ２５０に送信した中間ジョブに対応するジョブ情報を第１管理テーブルＴ１から削除する。また、印刷サーバ２５０は描画ジョブを送信すると、再びステップＳ３１５の処理を実行する。すなわち、印刷サーバ２５０は管理サーバ２２０にジョブ要求を送信し、既に受信した中間ジョブと異なる、印刷順序に応じた次の中間ジョブを要求する。これにより、印刷サーバ２５０は次の中間ジョブを受信し、受信した次の中間ジョブから描画ジョブを生成する。中間ジョブから描画ジョブを生成する印刷サーバ２５０は第２管理テーブルＴ２により一意に特定されるため、次の中間ジョブも先に中間ジョブを処理した同じ印刷サーバ２５０が受信する。言い換えれば、次の中間ジョブが先に中間ジョブを処理した印刷サーバ２５０とは異なる別の印刷サーバ２５０が受信することが回避される。印刷サーバ２５０はこの次の中間ジョブから次の描画ジョブを生成して複合機３００に送信する。
【００７３】
すなわち、先に処理した中間ジョブに対応する描画ジョブが複合機３００に送信され、印刷順序に応じた次の中間ジョブに対応する次の描画ジョブが複合機３００に送信される。したがって、複合機３００では印刷順序のばらつきが解消され、印刷順序が保証される。尚、管理サーバ２２０の処理部２２２は更新依頼を受信し、印刷サーバ２５０に送信した中間ジョブに対応するジョブ情報を第１管理テーブルＴ１に存在しないと判断した場合、図１４（ｃ）に示すように、その機器ＩＤに応じた情報を第２管理テーブルＴ２から削除する。
【００７４】
以上、第１実施形態によれば、印刷サーバ２５０は制御部２５２を備えている。制御部２５２は複合機３００に対応付けられた機器ＩＤを受信した場合に、中間ジョブを管理する管理サーバ２２０に対し、複合機３００に送信する描画ジョブに応じた中間ジョブの少なくとも１つを要求するジョブ要求を送信する。そして、制御部２５２は、少なくとも１つの中間ジョブを受信し、又は描画ジョブを送信した後に、管理サーバ２２０に対し、複合機３００に送信する描画ジョブに応じた中間ジョブのうち、少なくとも１つの中間ジョブと異なる中間ジョブを要求するジョブ要求を送信する。これにより、印刷順序のばらつきを解消することができる。
【００７５】
（第２実施形態）
続いて、本件の第２実施形態について説明する。
【００７６】
図１５は第２実施形態に係るデータセンターＤＣの詳細を説明するための図である。図１５に示すように、データセンターＤＣは上述したサーバ装置２００として監視サーバ２６０を更に備えている点で第１実施形態と相違する。監視サーバ２６０は印刷サーバ２５０を監視する。監視サーバ２６０は印刷サーバ２５０に障害が発生していることを検知すると、第１ＬＢ２１を通じて、管理サーバ２２０に印刷サーバ２５０の障害を通知する。これにより、管理サーバ２２０は障害が発生している印刷サーバ２５０に送信した処理依頼と同様の処理依頼を障害が発生していない印刷サーバ２５０に送信する。結果的に、処理依頼を受信した印刷サーバ２５０は障害が発生している印刷サーバ２５０が実行していた処理と同様の処理を実行でき、描画ジョブの複合機３００への送信を継続することができる。尚、障害としては、例えばサーバダウン、プロセスダウン、ネットワーク障害、スローダウンなどがある。
【００７７】
図１６は監視サーバ２６０のブロック図の一例である。監視サーバ２６０は通信部２６１と処理部２６２を備えている。尚、通信部２６１は上述したネットワークＩ／Ｆ２００Ｄによって実現することができる。処理部２６２は上述したＣＰＵ２００Ａによって実現することができる。
【００７８】
通信部２６１は監視サーバ２６０と印刷サーバ２５０及び第１ＬＢ２１との通信を制御する。処理部２６２は印刷サーバ２５０を監視し、印刷サーバ２５０に障害が発生していることを検知すると、印刷サーバ２５０の障害を通知する。
【００７９】
続いて、図１７及び図１８を参照して、複合機３００による印刷処理について説明する。
【００８０】
図１７は第２実施形態に係る印刷処理の一例を示す処理シーケンス図である。図１８（ａ）及び（ｂ）は第２管理テーブルＴ２の他の一例である。まず、図１７に示すように、印刷サーバ２５０が描画ジョブを生成している最中に、印刷サーバ２５０に障害が発生すると、監視サーバ２６０は印刷サーバ２５０の障害を検知する（ステップＳ４０１）。より詳しくは、監視サーバ２６０の処理部２６２は印刷サーバ２５０の障害を検知する。
【００８１】
監視サーバ２６０は印刷サーバ２５０の障害を検知すると、第１ＬＢ２１に障害を通知する（ステップＳ４０２）。第１ＬＢ２１は障害が通知されると、Ｗｅｂサーバ２１０のいずれかを選択する（ステップＳ４０３）。第１ＬＢ２１はＷｅｂサーバ２１０のいずれかを選択すると、選択したＷｅｂサーバ２１０に障害を通知する（ステップＳ４０４）。
【００８２】
Ｗｅｂサーバ２１０は障害が通知されると、第２ＬＢ２２に障害を通知する（ステップＳ４０５）。第２ＬＢ２２は障害が通知されると、管理サーバ２２０のいずれかを選択する（ステップＳ４０６）。第２ＬＢ２２は管理サーバ２２０のいずれかを選択すると、選択した管理サーバ２２０に障害を通知する（ステップＳ４０７）。
【００８３】
管理サーバ２２０は障害が通知されると、ＤＢサーバ２４０に登録されたジョブ情報を更新する（ステップＳ４０８）。より詳しくは、管理サーバ２２０の処理部２２２は障害が通知されると、障害が発生した印刷サーバ２５０のサーバＩＤをＤＢサーバ２４０に送信する。ＤＢサーバ２４０の処理部２４２はサーバＩＤを受信すると、受信したサーバＩＤに基づいてジョブ情報記憶部２４３を更新する。
【００８４】
例えば、サーバＩＤ「ＰＳ０２」の印刷サーバ２５０に障害が発生し、図１８（ａ）に示すように、機器ＩＤ「Ｍ０２」にサーバＩＤ「ＰＳ０２」が関連付けられている場合、処理部２４２は、図１８（ｂ）に示すように、機器ＩＤ「Ｍ０２」に対応付けられたサーバＩＤ「ＰＳ０２」を削除する。また、処理部２４２は、サーバＩＤ「ＰＳ０２」を削除する前又は削除した後に、機器ＩＤ「Ｍ０２」に応じたジョブ情報のステータスを処理中又は待機からエラーに変更する。
【００８５】
図１７に戻り、管理サーバ２２０はジョブ情報を更新すると、処理依頼を第３ＬＢ２３に送信する（ステップＳ４０９）。より詳しくは、管理サーバ２２０の処理部２２２は通信部２２１を介して処理依頼を送信する。管理サーバ２２０が処理依頼を送信すると、第３ＬＢ２３が処理依頼を受信し、印刷サーバ２５０のいずれかを選択する（ステップＳ４１０）。特に、第３ＬＢ２３は障害が発生していない印刷サーバ２５０のいずれかを選択する。第３ＬＢ２３は障害が発生していない印刷サーバ２５０のいずれかを選択すると、選択した印刷サーバ２５０に処理依頼を送信する。以後、図１２を参照して説明した処理と同様の処理を印刷サーバ２５０などは実行する。尚、管理サーバ２２０はジョブ情報の更新に基づいて処理依頼を動的に第３ＬＢ２３に送信せずに、印刷サーバ２５０に障害が発生した旨を複合機３００に通知して表示させ、選択した中間ジョブに対応する文書ファイルの印刷を指示する操作を再び行うようユーザ１０に促してもよい。
【００８６】
以上、第２実施形態によれば、描画ジョブを生成している最中の印刷サーバ２５０に障害が発生しても、監視サーバ２６０が管理サーバ２２０に印刷サーバ２５０の障害を通知する。これにより、管理サーバ２２０は障害が発生していない別の印刷サーバ２５０に描画ジョブを生成させることができ、複合機３００は別の印刷サーバ２５０が生成した描画ジョブに基づいて印刷処理を継続することができる。尚、第２実施形態では、データセンターＤＣに印刷サーバ２５０と機能が異なる監視サーバ２６０を設けたが、監視サーバ２６０が実行する処理と同様の処理を印刷サーバ２５０と機能が異なるＷｅｂサーバ２１０若しくは第３ＬＢ２３、障害が発生していない他の印刷サーバ２５０、又は管理サーバ２２０が実行し、データセンターＤＣに監視サーバ２６０を含めなくてもよい。特に、第３ＬＢ２３は印刷サーバ２５０のそれぞれの処理状況を確認した上で処理依頼を送信するため、監視サーバ２６０が実行する処理と同様の処理を第３ＬＢ２３が実行することが効率的である。
【００８７】
以上、本発明の好ましい実施形態について詳述したが、本発明に係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。例えば、上述した第１実施形態及び第２実施形態では、印刷サーバ２５０は自ら送信したジョブ要求に基づいて１つの中間ジョブを取得したが、例えば、ジョブ要求に基づいて２つの中間ジョブを取得してもよい。すなわち、印刷サーバ２５０は、管理サーバ２２０に対し、少なくとも１つの中間ジョブを要求してもよい。
【００８８】
また、上述した第１実施形態及び第２実施形態では、画像形成装置の一例として複合機３００を利用したが、複合機３００に代えてプリンタを利用してもよい。この場合、プリンタは操作可能な表示部を備えていないことが多いため、クライアント端末１００が中間ジョブを生成するタイミングで、印刷処理を実行させるプリンタを特定することが求められる。クライアント端末１００が中間ジョブを生成すると、図８を参照して説明したように、中間ジョブを含む保管指示をクライアント端末１００が管理サーバ２２０に向けて送信し、管理サーバ２２０は中間ジョブを保管する。以後、図１１及び図１２を参照して説明した処理と同様の処理を管理サーバ２２０や印刷サーバ２５０などが実行することで、プリンタでも複合機３００と同様に印刷順序を保証することができる。
【００８９】
さらに、上述した第１実施形態及び第２実施形態では、印刷サーバ２５０がジョブ要求を送信し、ジョブ要求を受信した管理サーバ２２０が印刷サーバ２５０に中間ジョブを送信したが、印刷サーバ２５０がジョブ要求を送信せずに、ジョブ情報を更新した後に管理サーバ２２０が印刷サーバ２５０に中間ジョブを送信してもよい。しかしながら、管理サーバ２２０は中間ジョブの保管並びにジョブ情報の登録及び更新など、種々の処理が実行し、処理負荷が高い可能性がある。一方で、印刷サーバ２５０は処理負荷が低いタイミングでジョブ要求を送信した方が印刷支援システムＳ全体で処理効率が高いと想定される。このため、上述した第１実施形態及び第２実施形態では、印刷サーバ２５０がジョブ要求を送信し、ジョブ要求を受信した管理サーバ２２０が印刷サーバ２５０に中間ジョブを送信する構成を採用している。
【００９０】
さらに、上述した第１実施形態及び第２実施形態では、第２ＬＢ２２を各Ｗｅｂサーバ２１０と別の構成としたが、第２ＬＢ２２が実行する処理と同様の処理を各Ｗｅｂサーバ２１０が実行し、第２ＬＢ２２をデータセンターＤＣに含めないようにしてもよい。同様に、第３ＬＢ２３を各管理サーバ２２０と別の構成としたが、第３ＬＢ２３が実行する処理と同様の処理を各管理サーバ２２０が実行し、第３ＬＢ２３をデータセンターＤＣに含めないようにしてもよい。さらに、複数の中間ジョブを選択してから印刷の指示を１回行った場合、印刷指示受付日時が重複するおそれがある。このような場合、印刷順序を特定する連番などを印刷指示受付日時の末尾に付与するようにしてもよい。さらに、複合機３００が中間ジョブの解析結果に基づいて文書ファイルに応じた画像を印刷できる場合、印刷サーバ２５０は管理サーバ２２０から送信されて受信した中間ジョブを複合機３００に転送してもよい。すなわち、印刷サーバ２５０は管理サーバ２２０から送信されて受信した中間ジョブから描画ジョブを生成しなくてもよい。この場合、印刷サーバ２５０は描画ジョブを生成しないため、描画ジョブを送信しない。
【００９１】
なお、以上の説明に関して更に以下の付記を開示する。
（付記１）画像形成装置に対応付けられた情報を受信した場合に、第１データを管理するサーバ装置に対し、前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データの少なくとも１つを要求し、少なくとも１つの前記第１データを受信した後に、前記サーバ装置に対し、前記画像形成装置に送信する第２データに応じた第１データのうち、少なくとも１つの前記第１データと異なる第１データを要求する、処理をコンピュータに実行させるためのデータ処理プログラム。
（付記２）前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データのうち、少なくとも１つの前記第１データと異なる第１データを要求する場合に、前記サーバ装置に対し、前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データのうち、印刷順序に応じた第１データを要求する、処理をコンピュータに実行させることを特徴とする付記１に記載のデータ処理プログラム。
（付記３）前記コンピュータと機能が異なる別のコンピュータ、前記コンピュータと機能が共通する他のコンピュータ、又は、前記サーバ装置のいずれかが前記コンピュータの障害を検知した場合、付記１又は２に記載の処理を前記他のコンピュータに実行させるためのデータ処理プログラム。
（付記４）前記第１データは前記画像形成装置に依存しない印刷ジョブであり、前記第２データは前記画像形成装置に依存する印刷ジョブである、ことを特徴とする付記１から３のいずれか１項に記載のデータ処理プログラム。
（付記５）コンピュータに処理を実行させるデータ処理プログラムであって、前記処理は、前記コンピュータに対応付けられた第１情報を送信し、画像形成装置に依存しない印刷ジョブである第１データ、及び、前記第１情報と、印刷指示を受け付けた特定の画像形成装置に対応付けられた第２情報と、を対応付けた第３情報を管理するサーバ装置から、送信した前記第１情報と対応付けられた前記第２情報を含む第１データを取得し、取得した前記第１データに基づいて、前記特定の画像形成装置に依存する印刷ジョブである第２データを生成し、生成した前記第２データを前記特定の画像形成装置に送信する、ことを特徴とするデータ処理プログラム。
（付記６）前記第１データを取得する処理は、前記印刷指示の受付日時が早い順に前記第１データを取得する、ことを特徴とする付記５に記載のデータ処理プログラム。
（付記７）印刷指示を受け付けた特定の画像形成装置に対応付けられた第１情報を受信した場合、画像形成装置に依存しない印刷ジョブである第１データに基づいて前記特定の画像形成装置に依存する印刷ジョブである第２データをそれぞれ生成して前記特定の画像形成装置に送信する複数のサーバ装置の各負荷に応じて、受信した第１情報を前記複数のサーバ装置のいずれかに送信し、前記第１情報を受信したサーバ装置から送信された該サーバ装置に対応付けられた第２情報を受信した場合、前記第１情報と前記第２情報とを関連付けて管理し、前記第２情報と関連付けられた前記第１情報を含む前記第１データを、前記第１情報を受信したサーバ装置に送信する、処理をコンピュータに実行させるためのデータ処理プログラム。
（付記８）前記第１データを送信する処理は、前記印刷指示の受付日時が早い順に前記第１データを送信する、ことを特徴とする付記７に記載のデータ処理プログラム。
（付記９）画像形成装置に対応付けられた情報を受信した場合に、第１データを管理するサーバ装置に対し、前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データの少なくとも１つを要求し、少なくとも１つの前記第１データを受信した後に、前記サーバ装置に対し、前記画像形成装置に送信する第２データに応じた第１データのうち、少なくとも１つの前記第１データと異なる第１データを要求する、処理をコンピュータが実行するデータ処理方法。
（付記１０）画像形成装置に対応付けられた情報を受信した場合に、第１データを管理するサーバ装置に対し、前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データの少なくとも１つを要求し、少なくとも１つの前記第１データを受信した後に、前記サーバ装置に対し、前記画像形成装置に送信する第２データに応じた第１データのうち、少なくとも１つの前記第１データと異なる第１データを要求する、処理を実行する制御部を有するデータ処理装置。
（付記１１）前記制御部は、前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データのうち、少なくとも１つの前記第１データと異なる第１データを要求する場合に、前記サーバ装置に対し、前記画像形成装置に転送する第１データ又は前記画像形成装置に送信する第２データに応じた第１データのうち、印刷順序に応じた第１データを要求する、処理を実行することを特徴とする付記１０に記載のデータ処理装置。
（付記１２）前記データ処理装置と機能が異なる別のデータ処理装置、前記データ処理装置と機能が共通する他のデータ処理装置、又は、前記サーバ装置のいずれかが前記データ処理装置の障害を検知した場合、付記１０又は１１に記載の処理を実行する制御部を有するデータ処理装置。
（付記１３）前記第１データは前記画像形成装置に依存しない印刷ジョブであり、前記第２データは前記画像形成装置に依存する印刷ジョブである、ことを特徴とする付記１０から１２のいずれか１項に記載のデータ処理装置。
【符号の説明】
【００９２】
Ｓ  印刷支援システム
１００  クライアント端末
１１０  プリンタ
２００  サーバ装置
２１０  Ｗｅｂサーバ
２２０  管理サーバ
２３０  保管サーバ
２４０  ＤＢサーバ
２５０  印刷サーバ
２６０  監視サーバ
３００  複合機
【図１】
2019121081.tif 000003
【図２】
2019121081.tif 000004
【図３】
2019121081.tif 000005
【図４】
2019121081.tif 000006
【図５】
2019121081.tif 000007
【図６】
2019121081.tif 000008
【図７】
2019121081.tif 000009
【図８】
2019121081.tif 000010
【図９】
2019121081.tif 000011
【図１０】
2019121081.tif 000012
【図１１】
2019121081.tif 000013
【図１２】
2019121081.tif 000014
【図１３】
2019121081.tif 000015
【図１４】
2019121081.tif 000016
【図１５】
2019121081.tif 000017
【図１６】
2019121081.tif 000018
【図１７】
2019121081.tif 000019
【図１８】
2019121081.tif 000020