(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0008】
次に、本発明の実施の形態について、詳細に説明する。なお、本実施形態では出力システムの一例として印刷システムを例として説明するが、印刷システムに限定するものではない。出力システムは投影システムや表示システムの他、蓄積先に蓄積してあるジョブを出力するシステムであればよい。
【0009】
<システム構成>
図1は、本実施形態に係る印刷システムの一例の構成図である。
図1の印刷システム1
はLANなどのネットワークN1を介して接続された管理者端末11、アプリケーションサーバ装置12、認証サーバ装置13、印刷サーバ装置14、クライアント端末16、共有の出力装置17を有する。また、印刷システム1はクライアント端末16と接続されたローカルの出力装置15を有する。
【0010】
管理者端末11、アプリケーションサーバ装置12、認証サーバ装置13、印刷サーバ装置14、ローカルの出力装置15、クライアント端末16、共有の出力装置17は無線又は有線による通信手段を有している。
【0011】
図1では管理者端末11、アプリケーションサーバ装置12、認証サーバ装置13、印刷サーバ装置14、ローカルの出力装置15、クライアント端末16、共有の出力装置17が1台である例を示しているが、複数台であってもよい。
【0012】
管理者端末11は管理者が利用するPC等の情報処理装置(コンピュータシステム)である。管理者端末11は管理者からの要求に基づき、各ユーザのクライアント端末16に対する設定等を行うことができる。
【0013】
アプリケーションサーバ装置12は一台以上の情報処理装置によって実現される。アプリケーションサーバ装置12はクライアント端末16に配布する印刷アプリケーションソフトウェア等のアプリケーションソフトウェアや該アプリケーションソフトウェアに関する設定データである印刷設定データ等を保有している。アプリケーションサーバ装置12は保有している印刷アプリケーションソフトウェアや印刷設定データをクライアント端末16に配布する。
【0014】
認証サーバ装置13は一台以上の情報処理装置によって実現される。認証サーバ装置13はユーザ情報を保有し、出力装置17等からの要求に基づき認証を行う。印刷サーバ装置14は一台以上の情報処理装置によって実現される。印刷サーバ装置14は印刷データや印刷ジョブ情報を保有している。印刷サーバ装置14は出力装置17等からの要求に基づき、印刷データや印刷ジョブ情報を出力装置17等に送信する。
【0015】
出力装置15は有線や無線通信でクライアント端末16に直接接続されるプリンタ等の画像形成装置等である。出力装置15はプリンタ、コピー機、複合機、レーザプリンタ等の画像形成装置の他、プロジェクタやモニタなどの表示出力を実行する投影装置や表示装置、オーディオなどの音声データを出力する音声出力装置等であってもよい。
【0016】
クライアント端末16はユーザが利用するPC等の情報処理装置である。クライアント端末16はスマートフォンや携帯電話、PCなどの端末装置である。出力装置17は有線や無線通信でネットワークN1に接続されるプリンタ等の画像形成装置等である。出力装置17は、プリンタ、コピー機、複合機、レーザプリンタなどの画像形成装置の他、プロジェクタやモニタなどの表示出力を実行する投影装置や表示装置、オーディオなどの音声データを出力する音声出力装置等であってもよい。
【0017】
なお、
図1の印刷システム1は一例であり、管理者端末11、アプリケーションサーバ装置12が無い構成であってもよい。また、クライアント端末16から出力要求を受信し、出力装置15または出力装置17への出力を実行を制御する役割を果たす装置(例えば、認証サーバ装置13及び印刷サーバ装置14)が備える機能は、1台の情報処理装置によって実現されてもよい。従って、認証サーバ装置13及び印刷サーバ装置14が備える一部あるいは全部の機能は、1台以上の情報処理装置で構成され、印刷データ等の出力データを管理して出力データの出力を制御する出力制御システムを実現する。
【0018】
<ハードウェア構成>
図1の管理者端末11、アプリケーションサーバ装置12、認証サーバ装置13、印刷サーバ装置14、クライアント端末16は、
図2に示すハードウェア構成のコンピュータシステム等により実現される。
図2は、本実施形態に係るコンピュータシステムの一例のハードウェア構成図である。
【0019】
図2に示したコンピュータシステム100は、入力装置101、表示装置102、外部I/F103、RAM(Random Access Memory)104、ROM(Read Only Memory)105、CPU(Central Processing Unit)106、通信I/F107、及びHDD(Hard Disk Drive)108などを備え、それぞれがバスBで相互に接続されている。なお、入力装置101及び表示装置102は必要なときに接続して利用する形態であってもよい。
【0020】
入力装置101はキーボードやマウスなどを含み、ユーザが各操作信号を入力するのに用いられる。表示装置102はディスプレイなどを含み、コンピュータシステム100による処理結果を表示する。
【0021】
通信I/F107はコンピュータシステム100をネットワークN1等に接続するインタフェースである。これにより、コンピュータシステム100は通信I/F107を介してデータ通信を行うことができる。
【0022】
HDD108はプログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、例えばコンピュータシステム100全体を制御する基本ソフトウェアであるOS(Operating System)や、OS上において各種機能を提供するアプリケーションソフトウェアなどがある。HDD108は格納しているプログラムやデータを所定のファイルシステム及び/又はDB(データベース)により管理している。
【0023】
外部I/F103は、外部装置とのインタフェースである。外部装置には、記録媒体103aなどがある。これにより、コンピュータシステム100は外部I/F103を介して記録媒体103aの読み取り及び/又は書き込みを行うことができる。記録媒体103aにはフレキシブルディスク、CD(Compact Disk)、DVD(Digital Versatile Disk)、SDメモリカード、USBメモリ(Universal Serial Bus memory)などがある。
【0024】
ROM105は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。ROM105には、コンピュータシステム100の起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定などのプログラムやデータが格納されている。RAM104は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。
【0025】
CPU106は、ROM105やHDD108などの記憶装置からプログラムやデータをRAM104上に読み出し、処理を実行することで、コンピュータシステム100全体の制御や機能を実現する演算装置である。
【0026】
本実施形態に係る管理者端末11、アプリケーションサーバ装置12、認証サーバ装置13、印刷サーバ装置14、クライアント端末16は、上記したコンピュータシステム100のハードウェア構成により後述するような各種処理を実現できる。
【0027】
<ソフトウェア構成>
《クライアント端末》
本実施形態に係るクライアント端末16は、例えば
図3に示す処理ブロックにより実現される。
図3は本実施形態に係るクライアント端末の一例の処理ブロック図である。
【0028】
クライアント端末16はプログラムを実行することにより、仮想プリンタドライバ21、実プリンタドライバ22、プラグイン23、プラットフォームAPI24、プラットフォーム25、記憶部26を実現している。
【0029】
プラグイン23は印刷フロープラグイン31、ジョブ蓄積プラグイン32、ジョブ管理プラグイン33を有する。プラットフォーム25は表示制御(UI制御)部41、設定部42、通信部43を有する。
【0030】
仮想プリンタドライバ21はアプリケーションデータを機種依存しない中間印刷データに変換して出力するプリンタドライバである。なお、中間印刷データは、出力装置15等の機種に依存しない印刷データである。XPS(XML Paper Specification)形式のデータは中間印刷データの一例である。また、アプリケーションデータはユーザが出力の対象として指定する出力対象データの一例である。
【0031】
実プリンタドライバ22はアプリケーションデータ又は中間印刷データを出力装置15又は出力装置17が印刷できる形式の実印刷データに変換して出力するプリンタドライバである。RAW形式のデータは、実印刷データの一例である。以下、中間印刷データと実印刷データを区別しない場合、単に印刷データと記載する。
【0032】
なお、アプリケーションデータ(アプリケーションに従ったデータ形式のデータ)等の出力対象データ、中間形式または実形式の印刷データ等は、ユーザが出力を要求してから出力装置に出力されるまでの間、出力の対象として取り扱われる出力データと捉えることが出来る。従って、出力の要求から出力の実行までにどのようなデータ形式となっているかは関係なく、アプリケーションデータ、中間形式の印刷データ、実形式の印刷データ等は全て出力対象データと言える。また、出力データは印刷出力に利用するデータに限らず、表示(投影)出力に利用するデータ(表示(画像)データ等)や、音声出力に利用するデータ(音声データ等)であってもよく、印刷、表示、音声再生等の1または複数の出力用途に応じた出力データを取り扱うことが出来る。
【0033】
プラグイン23はプラットフォーム25上で動作するソフトウェアである。プラグイン23はプラットフォームAPI24を利用することで、プラットフォーム25の機能を利用できる。
【0034】
プラグイン23の印刷フロープラグイン31は印刷フロー制御を行う。ジョブ蓄積プラグイン32は印刷ジョブの蓄積、管理を行う。ジョブ管理プラグイン33は印刷ジョブ情報を印刷サーバ装置14から取得を行ったり、印刷サーバ装置14に蓄積されている印刷ジョブの削除を行う。また、ジョブ管理プラグイン33は、印刷要求を行った印刷ジョブの印刷ジョブ情報と同様の印刷ジョブ情報が印刷サーバ装置14に蓄積されているか否かの判定を行う。
【0035】
プラットフォームAPI24はプラグイン23が、プラットフォーム25の機能を利用するためのインタフェースである。プラットフォームAPI24はプラグイン23からの要求をプラットフォーム25が受信するために設けられた予め定義されたインタフェースであり、例えば関数やクラス等により構成される。
【0036】
プラットフォーム25の表示制御部41は例えばプラグイン23等からの要求に基づいて表示装置102の表示を制御する。設定部42はプラグイン23の設定を行う。通信部43は印刷サーバ装置14等との通信を実行する。記憶部26は設定等を記憶する。
【0037】
クライアント端末16はプラグイン23が共通に利用する機能をプラットフォーム25に集約することで、処理を集約している。なお、
図3の処理ブロック図の分類形態は一例であり、
図3に示されるような階層で分類されていることは必須でない。
【0038】
《印刷フロープラグイン》
クライアント端末16の印刷フロープラグイン31は例えば
図4に示す処理ブロックで実現される。
図4は印刷フロープラグインの一例の処理ブロック図である。
【0039】
図4の印刷フロープラグイン31は、印刷フロー制御部51、機能選択部52、表示部53、印刷フロー設定記憶部54を有する。印刷フロー制御部51は印刷フローの実行を制御する。機能選択部52は印刷時の機能選択を行う。表示部53は後述の機能選択画面を表示装置102等に表示させる。印刷フロー設定記憶部54は印刷フローの設定を記憶する。
【0040】
《ジョブ蓄積プラグイン》
クライアント端末16のジョブ蓄積プラグイン32は例えば
図5に示す処理ブロックで実現される。
図5はジョブ蓄積プラグインの一例の処理ブロック図である。
図5に示したジョブ蓄積プラグイン32は、印刷ジョブ蓄積部61、印刷ジョブ管理部62、サーバ接続部63、印刷ジョブ情報記憶部64、印刷データ記憶部65を有している。
【0041】
印刷ジョブ蓄積部61は印刷ジョブの蓄積を行う。印刷ジョブ管理部62は印刷ジョブの管理を行う。サーバ接続部63は認証サーバ装置13や印刷サーバ装置14などとの接続を行う。印刷ジョブ情報記憶部64は印刷ジョブに関する情報である印刷ジョブ情報を記憶する。印刷データ記憶部65は印刷ジョブのデータの実体(中間印刷データ、実印刷データなど)を記憶する。なお、印刷データはクライアント端末11の記憶部26に記憶してもよい。
【0042】
《ジョブ管理プラグイン》
クライアント端末16のジョブ管理プラグイン33は例えば
図6に示す処理ブロックで実現される。
図6はジョブ管理プラグインの一例の処理ブロック図である。
図6に示したジョブ管理プラグイン33は、ジョブ情報管理部71、ジョブ操作部72、印刷ジョブ情報チェック部73、サーバ接続部74、表示部75、印刷ジョブ情報記憶部76を有している。
【0043】
ジョブ情報管理部71は印刷ジョブ情報を管理する。ジョブ操作部72は印刷ジョブ情報の一覧の取得や印刷ジョブの削除を行う。印刷ジョブ情報チェック部73はユーザが印刷要求を行った印刷ジョブの印刷ジョブ情報と同一の印刷ジョブ情報が印刷サーバ装置14に蓄積されているか否かの判定を行う。サーバ接続部74は認証サーバ装置13や印刷サーバ装置14などとの接続を行う。表示部75は後述の旧ジョブ削除確認画面を表示装置102等に表示させる。印刷ジョブ情報記憶部76は印刷ジョブ情報を記憶する。
【0044】
《印刷ジョブ情報》
図7は印刷ジョブ情報の一例の構成図である。印刷ジョブ情報は、ジョブID,ジョブ名、蓄積先、蓄積形式、ジョブ状態、ユーザIDなどのデータ項目を有している。
【0045】
ジョブIDは印刷ジョブの識別情報である。ジョブ名は印刷ジョブの名前である。蓄積先は中間印刷データ又は実印刷データが蓄積されている場所を示している。例えば蓄積先が「Server01」である場合、中間印刷データ又は実印刷データは印刷サーバ装置14に蓄積されている。
【0046】
蓄積先が「Client01」又は「Client02」である場合、中間印刷データ又は実印刷データは「Client01」又は「Client02」により特定されるクライアント端末16に蓄積されている。例えば出力装置17は
図7に示す印刷ジョブ情報に従って、実印刷データの要求先を制御する。
【0047】
蓄積形式は蓄積先に蓄積されている印刷データの形式を示している。例えば
図7の印刷ジョブ情報では蓄積形式が「XPS」である場合、蓄積先に中間印刷データが蓄積されていることを示し、蓄積形式が「PCL」である場合、蓄積先に実印刷データが蓄積されていることを示す。
【0048】
なお、中間印刷データとはフォーマットに関する共通仕様が一般に公開され、かつ、再編集が容易な形式の印刷データである。また、中間印刷データのデータ形式はXPS(XML Paper Specification)に限らない。例えば中間印刷データのデータ形式はPDF(Portable Document Format)等であってもよい。
【0049】
一方、実印刷データとは印刷装置に依存したPDL(Page Description Language)の印刷データである。実印刷データのデータ形式はPCL(Printer Control Language)に限らない。例えば実印刷データのデータ形式はPS(Post Script)等であってもよい。
【0050】
中間印刷データと、実印刷データとの性質の違いの一例として、例えば両面/片面などの印刷面の設定やカラー/白黒などのカラーモードの設定、2in1などの集約の設定といった印刷データの出力態様に関する設定の変更(出力データの編集)に対する自由度の違いが挙げられる。例えば、XPSといった中間印刷データであれば、印刷面の設定変更、カラーモードの設定変更、集約の設定変更が行えるが、PCLといった実印刷データであれば、印刷面の設定変更、カラーを白黒にする設定変更は行える一方で、白黒をカラーにする設定変更や集約の設定変更は行えないといった設定変更の制約が生じる。中間印刷データが、再編集が容易な形式のデータであるとは、一つの側面として、このような出力態様に関する設定の変更の自由度が挙げられる。
【0051】
ジョブ状態は印刷ジョブの状態を示す。例えばジョブID「1」の印刷ジョブは未だ印刷されておらず、ジョブID「2」の印刷ジョブは既に印刷済であることを示している。
【0052】
ユーザIDは印刷データのオーナを示す識別情報である。
【0053】
<処理の詳細>
以下では、本実施形態に係る印刷システム1の処理の詳細について説明する。
【0054】
《印刷ジョブ蓄積処理》
例えばユーザはクライアント端末16にインストールされている文書作成アプリケーション等を操作して
図8のような印刷設定画面1000を開き、仮想プリンタドライバ21を選択して印刷を要求することで、印刷ジョブ蓄積処理を開始できる。
【0055】
図8は印刷設定画面の一例のイメージ図である。ユーザは印刷設定画面1000のプリンタ選択欄1001から仮想プリンタドライバ21を選択できる。なお、ユーザは印刷設定画面1000のプリンタ選択欄1001から、ローカルの出力装置15に直接、印刷を実行させる実プリンタドライバ22を選択することもできる。
【0056】
また、ユーザは印刷設定画面1000から印刷部数を指定できる。さらに、ユーザは印刷設定画面1000の「プロパティ」ボタン1002を押下することで詳細な印刷設定を行う画面を開き、両面/片面などの印刷面の設定やカラー/白黒などのカラーモードの設定、2in1などの集約の設定を行うことができる。そして、ユーザは印刷設定画面1000の「OK」ボタン1003を押下することで印刷を要求できる。
【0057】
ユーザが仮想プリンタドライバ21を選択して印刷を要求すると、クライアント端末16は
図10に示すような印刷ジョブ蓄積処理を開始する。
図10は印刷ジョブ蓄積処理の一例のシーケンス図である。
【0058】
ステップS101において、クライアント端末16にインストールされている文書作成アプリケーション等は印刷イベントを仮想プリンタドライバ21に送信する。仮想プリンタドライバ21は印刷フロープラグイン31の印刷フロー制御部51に印刷イベントを送信する。また、仮想プリンタドライバ21はアプリケーションデータを中間印刷データに変換する。
【0059】
さらに、印刷フロー制御部51は仮想プリンタドライバ21からの印刷イベントに基づき、表示部53に機能選択画面を表示させる。
図10は機能選択画面の一例のイメージ図である。
【0060】
機能選択画面1010は「サーバにジョブを保存する」機能、「このPCにジョブを保存する」機能、から一つの機能をユーザに選択させる場合の例である。印刷フロープラグイン31の機能選択部52は機能選択画面1010からユーザが選択した機能を判定する。また、このとき、ジョブ蓄積プラグイン32の印刷ジョブ蓄積部61はユーザの印刷要求と機能選択画面1010で選択した機能から印刷ジョブを生成する。なお、以降では、ユーザは「サーバにジョブを保存する」機能を選択したものとして説明する。
【0061】
ステップS102において、ジョブ管理プラグイン33のジョブ操作部72は印刷ジョブ情報の一覧の取得要求を生成する。ジョブ管理プラグイン33のサーバ接続部74は印刷サーバ装置14に対し、印刷ジョブ情報の一覧の取得要求を送信する。このとき、クライアント端末16を操作している(ログインしている)ユーザのユーザ情報(ユーザID、パスワード等の認証情報)も送信する。
【0062】
ステップS103において、印刷サーバ装置14は認証サーバ装置13に対し、クライアント端末16から受信したユーザ情報の認証要求を行い、認証結果を取得する。
【0063】
ステップS104において、印刷サーバ装置14は認証サーバ装置13からの認証結果が認証成功である場合、印刷ジョブ情報の一覧をクライアント端末16に送信する。ここでは、認証結果が認証成功であったものとして説明を続ける。なお、認証結果が認証失敗である場合は例えば認証に失敗した旨を表示装置102等に表示し、ステップS105以降の処理は行わない。
【0064】
ジョブ管理プラグイン33のジョブ情報管理部71は取得した印刷ジョブ情報の一覧を管理対象として管理する。なお、印刷サーバ装置14がクライアント端末16に送信する印刷ジョブ情報の一覧は、ステップS102において印刷ジョブ情報の一覧の取得要求を行ったクライアント端末16のユーザが印刷データのオーナである印刷ジョブ情報の一覧(つまり、クライアント端末16から受信したユーザIDと一致する「ユーザID」が登録されている印刷ジョブの印刷ジョブ情報一覧)であることが好ましいが、全ての印刷ジョブ情報の一覧であってもよい。
【0065】
ステップS105において、ジョブ管理プラグイン33は旧ジョブ削除判断処理を行う。旧ジョブ削除判断処理の詳細については後述する。ここで、旧ジョブとは、すでに蓄積先に蓄積されている印刷ジョブであって、ユーザが仮想プリンタドライバ21を選択して印刷を要求して生成される印刷ジョブと同じジョブ名の印刷ジョブのことである。例えば、ユーザが仮想プリンタドライバ21を選択して「2.doc−○○○2010」の印刷要求を行った場合、
図7に示すジョブID「2」の印刷ジョブは旧ジョブである。なお、旧ジョブは、前述に加えて、さらにジョブ状態が「未印刷」の印刷ジョブとしてもよい。
【0066】
ステップS106において、ジョブ管理プラグイン33はステップS105の旧ジョブ削除判断処理の処理結果に応じてステップS106−1〜S106−3の処理のいずれか1つの処理を行う。
【0067】
旧ジョブ削除判断処理において、旧ジョブが存在しないか、又は旧ジョブを削除しない場合は何も行わない(ステップS106−1)。
【0068】
旧ジョブ削除判断処理において、旧ジョブを削除する場合であって、旧ジョブの印刷データがクライアント端末16に蓄積されている場合、以下のステップS106−2−1〜S106−2−2の処理を行う(ステップS106−2)。
【0069】
ステップS106−2−1において、ジョブ管理プラグイン33のジョブ操作部72は旧ジョブの印刷ジョブ情報の削除要求を印刷サーバ装置14に対し行う。
【0070】
ステップS106−2−2において、ジョブ管理プラグイン33のジョブ操作部72は旧ジョブの印刷データをクライアント端末16から削除する。
【0071】
旧ジョブ削除判断処理において、旧ジョブを削除する場合であって、旧ジョブの印刷データが印刷サーバ装置14に蓄積されている場合、以下のステップS106−3−1の処理を行う(ステップS106−3)。
【0072】
ステップS106−3−1において、ジョブ管理プラグイン33のジョブ操作部72は旧ジョブの印刷ジョブ情報及び印刷データの削除要求を印刷サーバ装置14に対して行う。
【0073】
ステップS107において、ジョブ蓄積プラグイン32のサーバ接続部63は印刷ジョブ情報と印刷データを印刷サーバ装置14に送信する。なお、ステップS101の機能選択画面1010において、ユーザが「このPCにジョブを保存する」機能を選択した場合、ジョブ蓄積プラグイン32のサーバ接続部63は印刷ジョブ情報のみを印刷サーバ装置14に送信する。この場合、クライント端末16は印刷データを記憶部26に記憶させる。
【0074】
ステップS108において、印刷サーバ装置14は印刷ジョブ情報と印刷データを例えばHDD108などの記憶領域に蓄積させる。なお、ステップS101の機能選択画面1010において、ユーザが「このPCにジョブを保存する」機能を選択した場合、印刷サーバ装置14は印刷ジョブ情報を例えばHDD108などの記憶領域に蓄積させる。
【0075】
図9の印刷ジョブ蓄積処理によれば、ユーザの選択により印刷データを印刷サーバ装置14又はクライアント端末16に印刷データを蓄積させることができる。
【0076】
また、
図9の印刷ジョブ蓄積処理によれば、印刷要求から生成した印刷ジョブのジョブ名と同じジョブ名の印刷ジョブ(旧ジョブ)がすでに蓄積されている場合、旧ジョブを削除することができる。これにより、例えば過去に印刷要求を行った文書の印刷ジョブ(旧ジョブ)が印刷サーバ装置14に蓄積されている場合に、同じ文書に変更を加えて印刷要求を行う際に、管理ツール等を用いることなく旧ジョブの削除を行うことができる。
【0077】
また、
図9の印刷ジョブ蓄積処理によれば、印刷毎に機能選択画面1010をクライアント端末16に表示して、ユーザに機能を選択させることで、機能に応じた蓄積先や蓄積形式などの蓄積設定の変更を容易に行わせることができる。
【0078】
なお、「サーバにジョブを保存する」機能が選択されたものとしてステップS102以降の処理を説明したが、「このPCにジョブを保存する」機能が選択された場合にも同様の処理を実行することが出来る。但し、ステップS107及びステップS108の処理については上述した通りである。
【0079】
つまり、本発明の印刷システム1において、ユーザは印刷データの蓄積先としてユーザの操作するクライアント端末16か印刷サーバ装置14を選択することが出来る一方で、いずれの蓄積先に蓄積した印刷データであっても印刷ジョブ情報は印刷サーバ装置14で統合して管理される(また、クライアント端末16は、自身に蓄積した印刷データの蓄積先(保存場所)だけを管理していればよい)。従って、例えばユーザが印刷サーバ装置14に印刷データを蓄積する選択を行なった印刷ジョブの旧ジョブが、クライアント端末16に蓄積されていたといったような、蓄積先の異なる装置間に印刷ジョブと、印刷ジョブの旧ジョブが蓄積されている場合でも、印刷サーバ装置14から統合的に管理されている印刷ジョブ情報の一覧を取得することで旧ジョブの存在判定を行い、蓄積先から適切に旧ジョブを削除することが出来る。
【0080】
また、印刷サーバ装置14が印刷ジョブ情報を統合的に管理していることからもわかるように、ステップS105の判断処理はクライアント端末16で行う代わりに印刷サーバ装置14で行ってもよい。この時、クライアント端末16は、印刷要求に応じて生成した印刷ジョブの印刷ジョブ情報(少なくとも、判定処理に用いる情報が含まれていればよい)を印刷サーバ装置14に送信して、旧ジョブ削除判断処理を要求し、判断処理の結果をクライアント端末16が受信してステップS106の処理を実行するようにしてもよい。
【0081】
さらに、ステップS106の処理についても印刷サーバ装置14が行うようにしてもよい。この時、ステップS106−2の場合は、印刷サーバ装置14からクライアント端末16に対して印刷データの削除要求を送信し、また自身の印刷ジョブ情報から該当する印刷ジョブ情報を削除するようになる。また、ステップS106−3の場合は、自身で蓄積する印刷ジョブ情報と印刷データから、削除対象の印刷ジョブ情報と印刷データを削除するようになる。
【0082】
《旧ジョブ削除判断処理》
次に、
図9のステップS105の旧ジョブ削除判断処理について説明する。
図11は旧ジョブ削除判断処理の一例のフローチャートである。
【0083】
ステップS201において、ジョブ管理プラグインの印刷ジョブ情報チェック部73はユーザの印刷要求から生成した印刷ジョブの印刷ジョブ情報と同一の印刷ジョブ情報(旧ジョブの印刷ジョブ情報)が印刷サーバ装置14に蓄積されているか否かの判定を行う。すなわち、印刷ジョブ情報チェック部73は
図9のステップS104の処理で印刷サーバ装置14から取得した印刷ジョブ情報の一覧から、ユーザの印刷要求から生成した印刷ジョブと同一のジョブ名の印刷ジョブ(旧ジョブ)が存在するか否かの判定を行う。
【0084】
旧ジョブが存在する場合、ステップS202に進み、旧ジョブが存在しない場合、ステップS207に進む。
【0085】
ステップS202において、ジョブ管理プラグインの印刷ジョブ情報チェック部73は表示部75に旧ジョブ削除確認画面を表示させる。
図12は旧ジョブ削除確認画面の一例のイメージ図である。
【0086】
旧ジョブ削除確認画面1020はユーザが仮想プリンタドライバ21を選択して「2.doc−○○○2010」の印刷要求を行った場合において表示される旧ジョブ削除確認画面の一例を示している。旧ジョブ削除確認画面1020の「OK」ボタン1021を押下すると、次のステップS203において、旧ジョブを削除するものと判定される。旧ジョブ削除確認画面1020の「キャンセル」ボタン1022を押下すると、旧ジョブは削除しないものと判定される。
【0087】
ステップS203において、ジョブ管理プラグインの印刷ジョブ情報チェック部73は旧ジョブを削除するか否かについて判定する。旧ジョブを削除する場合、ステップS204に進み、旧ジョブを削除しない場合、ステップS207に進む。
【0088】
ステップS204において、ジョブ管理プラグインの印刷ジョブ情報チェック部73は旧ジョブの印刷データが蓄積先について判定する。旧ジョブの印刷データの蓄積先が印刷サーバ装置14である場合、ステップS205に進み、旧ジョブの印刷データの蓄積先がクライアント端末16である場合ステップS206に進む。
【0089】
ステップS205〜S207については、次の通りである。旧ジョブを削除する場合であって、旧ジョブの印刷データが印刷サーバ装置14に蓄積されている場合は、
図9の印刷ジョブ蓄積処理のステップS106−3の処理を行う(ステップS205)。旧ジョブを削除する場合であって、旧ジョブの印刷データがクライアント端末16に蓄積されている場合は、
図9の印刷ジョブ蓄積処理のステップS106−2の処理を行う(ステップS206)。旧ジョブが存在しない場合、又は旧ジョブを削除しない場合は、
図9の印刷ジョブ蓄積処理のステップS106−1の処理を行う(ステップS207)。
【0090】
図11の旧ジョブ削除判定処理によれば、ユーザの印刷要求から生成した印刷ジョブと同じジョブ名の印刷ジョブ(旧ジョブ)が印刷サーバ装置14又はクライアント端末16にすでに蓄積されているか否かについて判定することができる。また、旧ジョブが存在する場合には、旧ジョブを削除するか否かについてユーザに対し選択させることで、旧ジョブを削除せずに印刷サーバ装置14又はクライアント端末16に残しておくこともできる。このように旧ジョブを削除しないことも選択可能とすることで、例えばユーザが印刷要求した印刷ジョブ(新しい文書データ)と旧ジョブの印刷ジョブ(古い文書データ)の両方を印刷することもできる。
【0091】
なお、ユーザが旧ジョブを削除しない選択をした場合は、ユーザの印刷要求から生成した印刷ジョブのジョブ名は、旧ジョブと異なるジョブ名で印刷サーバ装置14(又はクライアント端末16)に蓄積させることが好ましい。このとき、ユーザの印刷要求から生成した印刷ジョブのジョブ名をユーザに入力させてもよい。
【0092】
なお、以上の旧ジョブ削除判断処理の処理内容について、ユーザが設定できるようにしてもよい。例えば設定部42は表示制御部41にジョブ管理設定画面を表示させ、ユーザに旧ジョブ削除判断処理の処理内容について設定させてもよい。
図13はジョブ管理設定画面の一例のイメージ図である。
【0093】
ジョブ管理設定画面1030は旧ジョブの存在チェック行うか否かについて選択させる場合の例である。「旧ジョブが存在するか確認する」を選択した場合、旧ジョブ削除判断処理を行い、「旧ジョブが存在するか確認しない」を選択した場合、旧ジョブ削除判断処理は行わない。
【0094】
ジョブ管理設定画面1030は旧ジョブの削除を自動で行うか否かについて選択させる場合の例である。「自動で削除する」を選択した場合、ステップS202の旧ジョブ削除確認画面は表示されずに旧ジョブが削除される。「毎回選択する」を選択した場合、ステップS202の旧ジョブ削除確認画面が表示され、ユーザは、旧ジョブを削除するか否かについて毎回選択することができる。
【0095】
ジョブ管理設定画面1030は印刷時に毎回、ジョブ管理設定画面1030を表示させるか否かについて選択することができる場合の例である。「印刷時に毎回選択する」を選択した場合、例えば
図8の「OK」ボタン1003を押下した都度、ジョブ管理設定画面1030を表示させるようにすることができる。
【0096】
《印刷ジョブ出力処理》
次に、印刷ジョブの出力処理について説明する。
図14は印刷ジョブ出力処理の一例のシーケンス図である。なお、ここでは出力装置17において印刷ジョブを実行する例を説明する。また、ここでは印刷データが印刷サーバ装置14に蓄積されている例について説明する。
【0097】
ステップS301において、ユーザは出力装置17の操作パネル等から認証情報を入力してログインを要求する。ユーザからログインを要求された出力装置17はステップS302において、認証サーバ装置13に認証情報を送信して認証を要求する。認証サーバ装置13は受信した認証情報を利用して認証を行い、認証結果を出力装置17に返す。ここでは認証結果が認証成功であったものとして説明を続ける。なお、認証結果が認証失敗である場合は例えばログインに失敗した旨を操作パネル等の表示装置に表示し、ステップS303以降の処理を行わない。
【0098】
ステップS303において、出力装置17は認証に成功したユーザの印刷ジョブ情報を印刷サーバ装置14に要求する。ステップS304において、印刷サーバ装置14は認証に成功したユーザのユーザIDが付与されている印刷ジョブ情報を検索する。印刷サーバ装置14は検索した印刷ジョブ情報の一覧を出力装置17に送信する。
【0099】
出力装置17は受信した印刷ジョブ情報の一覧を表示し、印刷ジョブ情報の一覧から印刷ジョブ情報をユーザに選択させる。ユーザが印刷ジョブ情報の一覧から印刷ジョブ情報を選択すると、出力装置17はユーザにより選択された印刷ジョブ情報の蓄積先から印刷ジョブの印刷データの蓄積先を判断できる。ここでは前述した通り、印刷サーバ装置14が印刷データの蓄積先として判断される。出力装置17はステップS305において、ユーザにより選択された印刷ジョブの印刷データを蓄積先(ここでは印刷サーバ装置14)に要求する。
【0100】
ステップS306において、印刷サーバ装置14は出力装置17から要求された印刷ジョブの印刷データを出力装置17に送信する。ステップS207において、出力装置17は受信した印刷データを出力する。
【0101】
なお、選択された印刷ジョブの印刷データをクライアント端末16が蓄積していた場合(つまり、蓄積先がクライアント端末16だった場合)、上記のステップS305の処理において、出力装置17は印刷ジョブの印刷データをクライアント端末16に要求する。そして、ステップS306において、クライアント端末16は要求された印刷ジョブの印刷データを出力装置17に送信する。
【0102】
なお、クライアント端末16に蓄積されている印刷データが中間印刷データである場合、クライアント端末16は印刷データを実印刷データに変換して、出力装置17に送信してもよい。
【0103】
図14の印刷ジョブ出力処理によれば、ユーザは印刷サーバ装置14に蓄積された印刷データを出力装置17から出力することができる。また、ユーザはクライアント端末16に蓄積された印刷データを出力装置17から出力することもできる。
【0104】
<まとめ>
本実施形態に係る印刷システム1は、ユーザが行った印刷要求の印刷ジョブと同じジョブ名の印刷ジョブ(旧ジョブ)が存在する場合、旧ジョブを削除することができる。これにより、例えば印刷サーバ装置14に蓄積されている印刷ジョブについて印刷データの修正が必要となった場合でも管理ツール等を用いてこの印刷ジョブを明示的に削除する必要がなく便利である。
【0105】
また、旧ジョブが存在する場合であっても、旧ジョブを削除するか否かについて、ユーザが選択することができる。これにより、例えば旧ジョブを削除しないことにより、修正前の印刷データと修正後の印刷データの両方について印刷を行うことができる。
【0106】
本発明は、具体的に開示された上記の実施形態に限定されるものではく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。上述した実施形態における印刷システム1は、出力システムの一例である。ジョブ操作部72は、取得手段及び削除手段の一例である。印刷ジョブ情報チェック部73は、判定手段の一例である。