JP2004021458A - 印刷システム - Google Patents
印刷システム Download PDFInfo
- Publication number
- JP2004021458A JP2004021458A JP2002173714A JP2002173714A JP2004021458A JP 2004021458 A JP2004021458 A JP 2004021458A JP 2002173714 A JP2002173714 A JP 2002173714A JP 2002173714 A JP2002173714 A JP 2002173714A JP 2004021458 A JP2004021458 A JP 2004021458A
- Authority
- JP
- Japan
- Prior art keywords
- job
- printing
- stop
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
【課題】ネットワークを介して印刷装置を複数のユーザで共用する際、あるユーザによる多量印刷、至急印刷等のために、他のユーザに迷惑のかからないような印刷ジョブの印刷停止,印刷再開機能を可能にすること。
【解決手段】印刷データを一時的に格納しておくジョブスプーリング手段と、停止指定手段によって印刷ジョブに付随されたパラメータによって印刷データか停止指定であるかどうかを、印刷データの投入時にただちに判断するジョブプリプロセス手段と、前記ジョブプリプロセス手段によって停止指定であると認識された場合、当該停止指定のある印刷ジョブを前記ジョブスプーリング手段から取り出すのを停止し、その印刷ジョブの印刷を停止させておく停止手段と、時計手段と、印刷を再開する指令を受信して、あるいは、あらかじめ指定された再開時刻になると、当該印刷を停止しているジョブを前記ジョブスプーリング手段から取り出して印刷を行なう再開手段とを有することを特徴とする。
【選択図】 図1
【解決手段】印刷データを一時的に格納しておくジョブスプーリング手段と、停止指定手段によって印刷ジョブに付随されたパラメータによって印刷データか停止指定であるかどうかを、印刷データの投入時にただちに判断するジョブプリプロセス手段と、前記ジョブプリプロセス手段によって停止指定であると認識された場合、当該停止指定のある印刷ジョブを前記ジョブスプーリング手段から取り出すのを停止し、その印刷ジョブの印刷を停止させておく停止手段と、時計手段と、印刷を再開する指令を受信して、あるいは、あらかじめ指定された再開時刻になると、当該印刷を停止しているジョブを前記ジョブスプーリング手段から取り出して印刷を行なう再開手段とを有することを特徴とする。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、ユーザの指示にしたがって印刷データを生成するホストコンピュータと、所定の通信媒体を介して前記ホストコンピュータから送信された印刷データをデータ処理して画像データを生成し、用紙などのメディアに実際に印刷を行なう印刷装置からなる印刷システムに関するものである。
【0002】
【従来の技術】
従来、ホストコンピュータと印刷装置から構成された印刷システムにおいては、ホストコンピュータから生成される印字データを印刷するだけではなく、ホストコンピュータから印刷装置の情報獲得、環境設定を行なうといった機能が要求されている。特に昨今のネットワークの普及により、印刷処理時間の速い高機能な1台の印刷装置を複数のユーザでネットワークを介して共有することにより、オフィスにおける大量の印刷ニーズを満たしながら管理コストを最低限に抑えるといった使用形態が一般化している。この状況下で、管理者はリアルタイムで遠隔地にある印刷装置の管理を行ないたいという要求があり、また一般ユーザは自分が発行した印刷ジョブの処理状況の確認や、取り消しといった2次操作を行ないたいという要求があり、この要求を満たす印刷システムが数多く実現化されている。
【0003】
図12は従来の印刷システムにおける、ホストコンピュータから印刷装置への印刷ジョブ送信、印刷装置の情報獲得、環境設定を行なう仕組みを具現化した印刷システムの機能構成を示すブロック図である。従来の印刷システムは、ホストコンピュータ100と印刷装置150とが所定の印刷媒体180を介して接続されているという構成になっている。
【0004】
ホストコンピュータ100はアプリケーンョン部101、プリンタドライバ部102,送信バッファ103,I/Fドライバ部104,ユーティリティ部105,論理チャネル制御部106,ジョブパケット生成部107から構成されている。
【0005】
アプリケーション部101はユーザにグラフィカルユーザインタフェースを提供し、ユーザの目的に適った画像データを生成する。プリンタドライバ部102は、アプリケーション部101が生成した画像データを印刷装置150で印刷可能なページ記述言語(以下PDLと略称)データに変換する。送信バッファ103はプリンタドライバ部102が生成したPDLデータを一時的に格納しておく。ジョブパケット生成部107は送信バッファ103に蓄えられたデータに、アプリケーション部101が所有する印刷ジョブの情報を付加して所定のフォーマットに従ってジョブパケットを生成する。
【0006】
ユーティリティ部105は印刷装置150に関する情報を獲得してグラフッィクユーザインタフェースを提供して、ユーザや管理者の要望に従って、印刷装置150における機器の情報を設定したり、印刷ジョブの状態の獲得や取り出し要求を行なうための管理パケットの生成を行なう。論理チャネル制御部106はジョブパケット生成部107が生成するジョブパケットとユーティリティ部105が生成する管理パケットとの多重化の制御を行ない、OSI7階層におけるトランスボート層の役割を受け持つ。I/Fドライバ部104は論理チャネル制御部106から生成されたデータの送信と印刷装置150から送信されたデータの受信を行なう。
【0007】
印刷装置150は、論理チャネル制御部151,機器データベース部152,ジョブプリプロセッサ部153,受信バッファ154,PDLトランスレータ部155,描画バッファ156,描画部157,プリンタエンジン部158,I/Fドライバ部159,情報管理部160,操作パネル161から構成されている。I/Fドライバ部159はホストコンピュータ100から送信されたデータの受信と、論理チャネル制御部151から生成されたデータの送信を行なう。論理チャネル制御部151はI/Fドライバ部159が受信したデータを解析し、ジョブパケットはジョブプリプロセッサ部153、管理パケットは情報管理部160に分別し、逆に情報管理部160から送信される管理パケットをI/Fドライバ部151に送信する。ジョブプリプロセッサ部153は、ジョブパケットを受け取って解釈し、PDLデータを受信バッファ154に、ジョブの管理情報を機器テーダベース部152に送る。
【0008】
受信バッファ154はPDLデータが受信された順番に格納されている。
【0009】
機器データベース部152はコピー数などのジョブ情報や、機器に関する情報が格納されている。
【0010】
PDLトランスレータ部155は受信バッファ154に格納されたPDLデータと機器データベースに格納されたジョブ情報を元にトランスレート処理を行ない、描画部157がリアルタイムに描画できる中間データに変換し、描画バッファ156に送信する。
【0011】
描画バッファ156は複数ページ分の中間データを格納し、描画部157に渡す。
【0012】
描画部157は描画バッファ156から中間データを取得し、プリンタエンジン部158が行なう用紙搬送処理とともにリアルタイムに中間データのレンダリングを行ない、プリンタエンジン部158にビデオデータとして送信を行なう。
【0013】
プリンタエンジン部158は既知の電子写真技術を用いて描画部157から送信されたビデオデータを元に、用紙に物理的に印刷を行なう。
【0014】
情報管理部160はユーティリティ部105の情報獲得要求を管理パケットの形で受け取り、機器データベース部152に必要な情報を獲得し、管理パケットに変換して論理チャネル制御部151を介してホストコンピュータに返答する。また、ジョブの終了を検知して自発的に終了の通知を管理パケットに変換して通知する。
【0015】
操作パネル161は印刷装置150の本体に備え付けられている液晶やLEDなどのディスプレイ装置と操作ボタンから構成されており、ユーザからの設定を情報管理部160を通して機器データベース部152に反映させ、あるいは現在の機器の状態を表示するという処理を行なう。
【0016】
次に従来例におけるジョブの取り消し機能の仕組みを説明する。
【0017】
ジョブの取り消し機能は、印刷要求を出したユーザあるいは管理者が印刷装置に対して送信されたジョブの印刷取り消しを要求する機能で、ユーティリティ部105にあるユーザインタフェース、あるいは操作パネル161から取り消しを要求する。
【0018】
印刷装置150は印刷ジョブの印刷要求を受けると、ジョブプリプロセッサ部153で新規ジョブを認識し、印刷装置内で一意に保たれるジョブIDをジョブに対して割り振り、その情報を機器データベース部152に格納する。この情報は印刷ジョブの全ページが解釈、描画され、プリンタエンジン部158で最後の1ページの排紙が完了したと検知された段階で削除が行なわれる。
【0019】
ユーティリティ部105は印刷装置150に対して、装置内ジョブリストの獲得を要求する管理パケットを発行し、印刷装置150は装着内で認識しているすべてのジョブの前記ジョブIDのリストを送信する。ユーティリティ部105はこれを受け取り、グラフッィクユーザインタフェースを用いて表示を行なう。
【0020】
印刷ジョブを送信したユーザあるいは印刷装置の管理者は、ジョブの取り消しが可能である。すなわち、これはユーティリティ部105のグラフィックユーザインタフェースから削除を行なうジョブIDの指定が行なわれ、管理パケットに変換されて印刷装置150に取り消し要求の指令が行なわれる。印刷装置150へジョブ取り消し要求の管理パケットが送信されると、情報管理部160が検知を行ない、印刷パス上に該当ジョブが存在する場含にはその印刷の取り消しを行なう。
【0021】
操作パネル161から取り消しを行なう場合は、ジョブIDを明示的に指定するのが困難であるので、印刷バス上もっとも処理が進んでいるジョブを取り消しの対象とする。具体的にはプリンタエンジン部158で、ジョブを処理しているときはそのジョブIDを取り消しの対象とし、そうでない場合には描画部157、PDLトランスレート部155といった感じに印刷バス上で処理中のジョブが見つかった段階で該当ジョブIDの決定を行ない、取り消しの対象とする。操作パネル161によるとジョブの取り消しは、該当ジョブIDの決定方法が異なるだけで、実際の印刷装置内の取り消し処理はユーティリティ部105による取り消しと同じである。
【0022】
以上の操作によって、印刷装置150内に格納された任意のジョブの取り消し動作が可能となっている。
【0023】
【発明が解決しようとする課題】
ネットワークの普及に伴い、高速、高機能な印刷装置を複数のユーザで共有する利用形態が増えてきた結果、新しいサービスのニーズかでてきた。
【0024】
・多量の部数分印刷した
・データサイズか大きく、解析処理が困難である
などの理由で印刷処理に時間がかかり、共有プリンタを占有してしまうケースがある。
【0025】
そこで、多量に印刷したいのだが、特に急いでいる訳ではなく、また、複数ユーザにより使用頻度の高いプリンタなので他のユーザに迷惑をかけないタイミンクで印刷したい、というような要求がある。
【0026】
このような要求を遂行するために、印刷装置に印刷ジョブの印刷停止、印刷再開機能が望まれている。
【0027】
さらに、再開時刻を指定した自動再開機能も望まれている。
【0028】
本発明は上述した点に鑑みてなされたものであり、印刷ジョブの印刷の停止を指定された場合には、停止指定された印刷ジョブは、データは受信して格納しておくか、実際の印刷は停止しておき、印刷を再開をするようにあらかじめ指定されている時刻になると、自動的に格納してあるデータを取り出して実際に印刷を行なうことを可能としている。
【0029】
【課題を解決するための手段】
上記目的を達成するために、本発明に係る印刷システムは、印刷データを一時的に格納しておくジョブスプーリング手段と、停止指定手段によって印刷ジョブに付随されたパラメータによって印刷データか停止指定であるかどうかを、印刷データの投入時にただちに判断するジョブプリプロセス手段と、前記ジョブプリプロセス手段によって停止指定であると認識された場合、当該停止指定のある印刷ジョブを前記ジョブスプーリング手段から取り出すのを停止し、その印刷ジョブの印刷を停止させておく停止手段と、時計手段と、印刷を再開する指令を受信して、あるいは、あらかじめ指定された再開時刻になると、当該印刷を停止しているジョブを前記ジョブスプーリング手段から取り出して印刷を行なう再開手段とを有することを特徴とする。
【0030】
【発明の実施の形態】
〔第1実施形態〕
以下、本発明の第1の実施例を説明する。図1は本発明の第1の実施例の印刷システムにおける、ホストコンピュータから印刷装置への印刷ジョブ送信、印刷装置情報獲得、環境設定を行なう仕組みを具現化した印刷システムの機能構成を示すブロック図である。印刷システムは印刷すべきジョブを生成するホストコンピュータ200と、実際に用紙に印刷を行なう印刷装置300、および所定のインタフェース210から構成されている。インタフェース210はIEEE1284で規定されているローカルインタフェースでもEthernet(登録商標)のようなネットワークインタフェースでもよく、本実施例ではローカルインタフェースの場合の説明を行なう。
【0031】
図1において、ホストコンピュータ200は、ユーザがグラフィックユーザインタフェースを操作しなから所望の印刷データを生成するアプリケーション部201、アプリケーション部201が作成した画像データを、印刷装置300が印刷可能なページ記述言語(以下PDLと略称)データに変換するプリンタドライバ部202,プリンタドライバ部202が変換したPDLデータを一時的に格納しておく送信バッファ203、送信バッファ203に格納されたPDLデータとアプリケーション部201が有するジョブ属性情報とから所定のジョブパケットを生成するジョブパケット生成部207、印刷装置300の状態の確認や送信した印刷ジョブの印刷状態の確認や、印刷ジョブの取り消し、停止などの操作をグラフッィクユーザインタフェースを用いて、これらの要求を印刷装置300が解釈可能な管理パケットに変換するユーティリティ部205、ジョブパケットと管理パケットをそれぞれ異なるチャネルに割り振り、OSI7階層におけるトランスボート層の多重化を行なう論理チャネル制御部206,論理的なデータを電気信号に変換し、インタフェースとのやりとりを行なうI/Fドライバ部204から構成される。
【0032】
印刷装置300は、論理的なデータを電気信号に変換し、インタフェースとのやりとりを行なうI/Fドライバ部301,I/Fドライバ部から受信したデータを解析し、ジョブパケットと管理パケットをそれぞれ異なるチャネルに割り振り、OSI7階層におけるトランスボート層の多重化を行なう論理チャネル制御部302、ジョブパケットを受け取って解析を行ない、印刷ジョブの属性情報は機器データベース部305,PDLデータはジョブスプーラ304に割り分けて格納するジョブプリプロセッサ部303,HDDやフラッシュメモリ、あるいはDRAMなどの大容量メモリデバイスから構成され、印刷ジョブの管理データを印刷完了まで一時的に保存するジョブスプーラ304、ジョブの処理順番および停止しているかどうかを記述したジョブ読み出しテーブル313、ジョブ読み出しテーブル313に記述された順番にジョブを取りだし、機器データベース部305に格納された属性情報とジョブスプーラ304に格納されたPDLデータを解析し、リアルタイムに描画処理可能な中間データを生成して描画バッファ307に格納するPDLトランスレータ部306、中間データをページ単位に印刷完了まで一時的に保持する描画バッファ307、描画バッファ307から中間データを取得し、プリンタエンジン部309が行なう用紙搬送処理とともにリアルタイムに中間データのレンダリングを行ない、プリンタエンジン部309にビデオデータとして送信を行なう描画部308、既知の電子写真技術を用いて描画部308から送信されたビデオデータを元に、用紙に物理的に印刷を行なうプリンタエンジン部309、ホストコンピュータ200から送信された管理パケットを受け取り、要求に応じて機器データベース部305から情報の獲得を行ない、またジョブの取り消し要求や停止要求、再開要求を行ない、またジョブの終了や機器の異常を検知して自立的にホストコンピュータ200に通知イベントを発行する情報管理部310、ジョブの停止指定および再開指定か行なわれた時に、実際の停止処理および再開処理を行なう停止/再開処理部312から構成される。
【0033】
ホストコンピュータ部200の論理チャネル制御部206から印刷装置300の論理チャネル制御部302までに行なわれるデータ通信は、たとえばネットワークの場合はTCP/IP、ローカルの場合はIEEE1284/IEEE1284.4による規定のプロトコルにより、トランスボート層レベルの多重化が行なわれているものとし、詳細な説明については省略する。
【0034】
論理的にジョブパケット生成部207から送信されるジョブパケットはジョブプリプロセッサ部303によって受信され、この経路をジョブチャネルといい、ユーティリティ部205から送受信される管理パケットは情報管理部310によって送受信され、この経路を管理チャネルという。双方のチャネルは双方向通信が可能であることを規定しているが、ジョブチャネルに関してはホストコンピュータ印刷装置の片方向だけでも本実施例の実施形態を阻害するものではない。ジョブチャネルと管理チャネルはOSI7階層におけるトラースポート層レベルで多重化されており、片方のフロー処理が他力に影響することはない。次にジョブパケット、管理パケットの構造について説明する。
【0035】
ジョブパケット、管理パケットはアプリケーション層のプロトコルであり、ヘッダ部、パラメータ部から構成されるパケット構造になっている。
【0036】
1つの印刷ジョブは複数のジョブパケットから構成される。印刷ジョブを構成する一連のジョブパケットの集まりをジョブスクリプトと呼ぶ。
【0037】
図2はジョブパケットの構造を示す説明図である。縦軸はバイトを示し、横軸は各バイトビットを示している。図中において0〜1バイト目のオペレーションコードは、パケットの機能を示す長さ2バイトのIDである。ジョブパケットにおいては以下の値を取ることかできる。
【0038】
0x0201 ジョブ開始オペレーション
0x0202 ジョブ属性設定オペレーション
0x0204 PDLデータ送信オペレーション
0x0205 ジョブ終了オペレーション
2〜3バイト目のブロック番号は、ジョブパケットを送信した側が、返答を要求する場合に、受信側からの返答が送信側のどの返答要求に対するものであるか、その対応を取るために使用する番号である。例えばそれぞれブロック番号=1,2,3というジョブパケットを立て続けに送信した時にブロック番号=2というエラーパケットが帰ってきた場合、返答が帰ってきたとき、送信側は、2番目に送ったジョブパケットにエラーが発生したことを特定することが可能である。
【0039】
4〜5バイト目のパラメータ長はデータ部のバイト長さを示す領域で、0〜64Kバイトまでを示すことが可能である。
【0040】
6〜7バイト目はジョブパケットの各種フラグを示す領域で、それぞれ以下の値を示す。
【0041】
エラーフラグ:
この値が1の場合、印刷装置で何らかのエラーが発生したことを示す。このフラグは印刷装置からホストコンピュータに送られる返信パケットに付加される。
【0042】
通知フラグ:
ここの値が1の場合は、ホストコンピュータからの要求パケットに対する返答ではなく、印刷装置がなんらかの通知事項があることをホストコンピュータに通知することを示している。
【0043】
継続フラグ
この値が1の場合、テーダ部にすべてのデータか入らなかったため、次のジョブパケットで残りのデータが送られることを示す。次のジョブパケットは前のパケットと同じオペレーションコード、ブロック番号を設定しなくてはならない。
【0044】
返答要求
ホストコンピュータから印刷装置に対して返答パケットが必要な場合に1をセットする。0のときは要求パケットは正常に処理された場合には返答は返さない。印刷装置でエラーが発生した場合には返答要求の0/1に関わらず、つねにエラーフラグを1にした返答パケットを送出する。
【0045】
8〜9バイト目のユーザIDおよび10〜11バイト目のパスワードは、要求パケットでできる操作にセキュリティ的制限を設ける際に認証に使われる領域である。本実施例には影響しない。
【0046】
12バイト目以降はオペレーションコードに対応した追加データが格納される。
【0047】
ジョブ開始オペレーションの場合、追加データとして、ジョブの実行モードが記述される。指定可能な実行モードを以下に述べる。
【0048】
0x01: ジョブの通常実行。当該ジョブは通常ジョブとして印刷装置キューの最後に追加され、スケジューリングが回ってきたら印刷処理を行なう。
【0049】
0x04 ジョブの印刷停止。当該ジョブは投入と同時に停止ジョブとして扱い、当該ジョブはデータの格納のみ行ない、印刷は停止しておく。
【0050】
ジョブ開始オペレーションの場合、追加データとして前記ジョブの実行モードに加えて、再開時刻が記述される。再開時刻を指定するデータについて説明する。図3は、年月日および時刻を示すデータ(以下、時刻データと呼ぶ)の構成を説明する図である。縦軸はバイトを示し、横軸は各バイトのビットを示している。図中において、12bitを占めるYearは西暦年を示し、0〜4095の値を取ることができる。
【0051】
Monthは月を示す。1〜12の値を取ることかできる。
【0052】
Dateは日を示す。1〜31の値を取ることかできる。
【0053】
Hourは時を示す。24時間表記で、0〜23の値を取ることができる。
【0054】
Minuteは分を示す。0〜59の値を取ることができる。
【0055】
Secondは秒を示す。0〜59の値を取ることができる。
【0056】
この時刻データにより何年何月何日何時何分何秒という情報を示すことができる。
【0057】
ジョブ属性設定オペレーションの場合、設定したいジョブ属性IDとジョブ属性値を設定する。ジョブ属性IDとは、ジョブに関する属性あるいは環境に対応した識別子を示すもので、ISO−10175(DPA)で規定されるジョブの属性に相当するIDが予め割り振られている。以下にジョブ属性の代表的なものを挙げる。
【0058】
ジョブ属性ID
0x0101 ジョブ名称
0x0103 ジョブオーナ名
0X016a ジョブサイズ
この他、印刷装置の機能に応じて、印刷部数、モノクロ・カラーなどのジョブ属性とそれに対応するIDを割り振ることができる。
【0059】
PDLデータ送信オペレーションの場合は、追加データ部にはPDLデータが入る。
【0060】
1つのジョブパケットのデータは前記パラメータ長に格納できる最大サイズまでなので、64KBまで格納可能であり、それ以上のデータは複数のPDLデータ送信オペレーションに返信して送信する。この場合は前記継続フラグに1を立てる。
【0061】
ジョブ終了オペレーョンの場合は追加データは存在しない。
【0062】
次にホストコンピュータにあるジョブパケット生成部207を説明する。
【0063】
図4,図5はジョブパケット生成部207の動作を説明するフローチャートである。
【0064】
ジョブパケット生成部207は、アプリケーション部201により、印刷指定が選択された時にプリンタドライバ部202が起動し、プリンタドライバ部202が印刷データを送信バッファ部203に生成を完了した後に処理が開始される。
【0065】
S501において、当該ジョブが停止指定がされたかどうかを判断する。停止指定はプリンタドライバ部202のユーザインタフェースが提供するプロパティによって指定される。その際、該ユーザインタフェースでは、何時に再開時刻も指定される。停止指定ありの場合にはS503において動作モードを0x04、そうでない場合にはS502において動作モードを0x01に設定される。
【0066】
S504において、図2のオペレーションコードを格納する領域にジョブ開始オペレーションコード(0x0201)を指定したジョブパケットを論理チャネル制御部206に発行する。この時、ジョブパケットの追加データ領域に動作モードおよび再開時刻が設定され、通常ジョブか停止指定ジョブかの指定がなされる。
【0067】
以降、ジョブ終了オペレーションを発行するまで、全てのオペレーションは当該ジョブの情報設定のためだけに用いられる。
【0068】
S505において、ジョブの名称の設定が行なわれる。図2のオペレーションコードを格納する領域にジョブ属性設定オペレーションコード(0x0202)、パラメータ部に、ジョブ名称を示すジョブ属性ID(=0x0101)、およびジョブ属性値となる名称を指定したジョブパケットを論理チャネル制御部206に発行する。
【0069】
S506において、ジョブの所有者の設定が行なわれる。図5のオペレーションコードを格納する領域にジョブ属性設定オペレーションコード(0x0202)、パラメータ部に、ジョブ所有者を示すジョブ属性ID(=0x0103)、およびジョブ属性値となる所有者名を指定したジョブパケットを論理チャネル制御部206に発行する。
【0070】
S507において、ジョブサイズの設定が行なわれる。図2のオペレーションコードを格納する領域にジョブ属性設定オペレーションコード(0x0202)、パラメータ部に、ジョブサイズを示すジョブ属性ID(=0x016a)、およびジョブ属性値となるジョブのデータサイズを指定したジョブパケットを論理チャネル制御部206に発行する。
【0071】
S508において、変数sizeに送信すべきPDLデータのサイズを代入する。
【0072】
S601において、変数sizeの大きさをチェックし、64Kより大きいかどうかを比較する。ジョブパケットに指定できるパラメータのサイズはパケットヘッダのパラメータ長のサイズが16ビットで表現されているため、最大64Kバイトの制限があるので、それ以上のデータは複数のジョブパケットに分割して発行されることになる。もしデータのサイズが64Kよりも大きい時は、S605において図2のパケットヘッダ継続フラグを1に設定し、さらにS606において、送信バッファ203から64Kバイト分のPDLデータが取り出され、図2のオペレーションコードを格納する領域にPDLデータ送信オペレーション(0x0204)に、パラメータ部に前記取り出されたPDLデータを指定したジョブパケットを論理チャネル制御部206に発行する。またS607において、送信した分の64Kをsizeから減じて、S601の分岐に戻る。
【0073】
S601において、データサイズが64K以下の場合は、後1回のPDLデータ送信オペレーションで全データの送信が完了する。この場合、S602において、図2のパケットヘッダの継続フラグを0にして、PDLデータ送信が最後であることを設定し、さらにS603において送信バッファ203からすべてのPDLデータか取り出され、図2のオペレーションコードを格納する領域にPDLデータ送信オペレーション(0x0204)に、パラメータ部に前記取り出されたPDLデータを指定したジョブパケットを論理チャネル制御部206に発行する。
【0074】
その後S604において、図2のオペレーションコードを格納する領域にジョブ終了オペレーションコード(0x0205)を指定したジョブパケットを論理チャネル制御部206に発行して終了する。
【0075】
次にジョブプリプロセッサ部303の説明を行なう。
【0076】
図5はジョブプリプロセッサ部303の動作を説明するフローチャートである。
【0077】
図5において、ジョブフリプロセッサ部303は印刷装置300の起動時に開始され、以後印刷装置300の電源遮断まで処理を継続する。
【0078】
最初にS701においてジョブパケットの受信を行なう。受信するとS702においてジョブ開始オペレーションかどうかの比較が行なわれる。ここでジョブ開始オペレーション以外のオペレーションが到着した場合には不正動作となり、S703でジョブパケットの破棄が行なわれ、S701に戻る。ジョブ開始オペレーションと判断されると、S704で当該ジョブのジョブIDの獲得が行なわれる。ジョブIDは2バイトの番号として割り振られ、機器データベース部305におけるジョブ属性情報の読み書き処理のキーとして利用される。次にS705においてジョブ読み出しテーブルに当該ジョブのジョブIDが追加される。S706において、ジョブパケットの追加データを検索し、動作モードが0x04かどうかが比較される。0x04の場合は前記のとおり停止指定を示しており、その場合にはS707において停止/再開処理部312に対してジョブの印刷停止の指示を出す。この際、ジョブ読み出しテーブルの当該ジョブの停止フラグにTをセットする。さらに、追加データに設定されている再開時刻データも、ジョブ読み出しテーブルにセットする。
【0079】
統いてS708で次のジョブパケットの受け付けを行なう。S709において受信したジョブパケットが属性設定オペレーンョンの場合は、S710において機器データベース部305において属性データの設定を行なう。この時キーとなるのはS704で獲得したジョブIDとジョブパケットの追加データに記述されてある属性IDおよび属性データである。属性設定が完了すると次のジョブパケットを受信するため、S708に戻る。
【0080】
S711においてジョブパケットがPDLデータ送信オペレーションであるかどうかの比較を行ない、そうである場合にはS712においてジョブスプーラ304にPDLデータの追加を行なう。この時、ジョブIDをキーとして渡し、後で取り出すときにもジョブIDをキーとして取り出せるようにしておく。ジョブスプーラ304への追加が完了すると次のジョブパケットを受信するため、S708に戻る。
【0081】
S713においてジョブパケットがジョブ終了オペレーションであるかどうかの比較を行ない、そうである場合には、一連のループを抜けてS701の初期状態に戻る。
【0082】
いずれのオペレーションに該当しない場合には、不正なジョブパケットであるので、S714においてジョブパケットの破棄を行なう。
【0083】
以上の動作によって、ジョブプリプロセッサ部303はジョブパケットを機器データベース部305とジョブスプーラ304にデータの振り分けを行なう。
【0084】
次にジョブ読み出しテーブル313の説明を行なう。
【0085】
図6はジョブ読み出しテーブルを表す説明図である。
【0086】
図6(a)は読み出しテーブルにジョブ1〜4が登録されていることを示す。停止フラグは、そのジョブが停止ししているかどうかを示す。この停止フラグがT(=TRUE)の場合そのジョブは停止しており、F(=FALSE)の場合そのジョブは停止していない通常ジョブであることを示す。図6(a)の例の場合、ジョブ1,ジョブ2,ジョブ3は停止していない通常ジョブで、ジョブ4は停止しているジョブである。
【0087】
なお、ジョブ4は2000年5月1日23時30分になったら再開するよう指定されている。
【0088】
PDLトランスレータ部305はトランスレートを実行する時、読み出しテーブルの上から順番に印刷ジョブの取り出しを行なう。ただし、この際、停止フラグにTがセットされているものは取り出さない。すなわち、停止しているジョブは取り出さない。
【0089】
なお、読み出しテーブルにおいて、停止フラグにTがセットされているジョブの再開時刻部分は、意味がないゴミデータか入っているので、参照したり使用したりしてはいけない。
【0090】
ジョブプリプロセッサ部がS705においてジョブ読み出しテーブルに停止指定のされていないジョブ5を追加する場合、図6(b)のように、ジョブ5は読み出しテーブルの停止フラグにFがセットされているものの最後尾に追加される。すなわち、この図6(b)の例の場合には、ジョブ3とジョブ4の間に追加されることになる。この際、ジョブ5は停止指定されていないので、停止フラグはFがセットされる。
【0091】
また、ジョブ1を最後まで読み出しを完了したと認識すると、図6(c)のようにジョブ1はジョブ読み出しテーブルから削除される。以上のようにジョブ読み出しテーブル313はPDLトランスレータ部が処理するジョブの順番の制御を行なう。PDLトランスレータ以降の印刷ジョブの処理については従来系と同じ処理であるため、説明を省略する。
【0092】
次に停止処理について説明する。
【0093】
ジョブプリプロセッサ部303が印刷ジョブの停止指定を認識すると、S707において停止/再開処理部に対して停止指定が行なわれる。この時、停止を行なうジョブIDと再開時刻も通知される。
【0094】
図7は停止/再開処理部312の動作を説明するフローチャートである。
【0095】
図7においてS901で停止指示がされたかどうかを判断し、指示がない場合はS904にすすむ。停止指示がされると、S902において停止ジョブのジョブIDをジョブ読み出しテーブルの最後尾に追加する。
【0096】
そして、S903にすすみ、停止フラグにTをセットし、再開時刻もセットする。これによって当該印刷ジョブは、再開時刻に達するあるいはホストからの再開指定がくることにより、再開されるまでは読み出されないので、停止ジョブということになる。
【0097】
つづいてS904において、再開指示がされたかどうかを判断し、再開指示がされると、S905において再開指定されたジョブが実際に停止されているかどうかを調べる。これは、読み出しテーブルの停止フラグかTかFかを調べる。ここて、停止されていない場合、先頭に戻る。
【0098】
停止されていたジョブへ再開指定が発行されていた場合、S906にすすみ、当該再開指定されたジョブの停止フラグをFにセットする。そしてS907で、停止フラグにFがセットされている最後尾へ移動する。
【0099】
一方、S904において、再開指示がない場合は、S908で読み出しテーブル上の全ての停止ジョブについて、再開時刻になったかどうかのチェックを行なう。そして、S909で再開時刻になった停止ジョブについては、停止フラグをFにセットし、S910で停止フラグにFがセットされている最後尾へ移動する。
【0100】
図8は停止処理時におけるジョブ読み出しテーブルの状態を表す説明図である。図8(a)において、通常ジョブかジョブ1〜4まて投入された状態で、ジョブ5が停止ジョブとして投入された場合を想定しており図8(b)において、停止ジョブであるジョブ5はジョブ読み出しテーブルの最後に追加されている。
【0101】
PDLトランスレータ部306はジョブ読み出しテーブルに記述された順番に印刷ジョブのトランスレートを行なうことによって、ジョブ1〜4の順番に印刷処理が行なわれ、停止フラグかTにセットされた停止ジョブ5のみ残ったままになる。この停止しているジョブ5は、再開指定により、停止フラグがFにセットされた後、PDLトランスレータ部306に読み出されることになる。あるいは、再開時刻に達した場合、停止フラグかFにセットされた後、PDLトランスレータ部306に読み出されることになる。
【0102】
次に、ユーティリティ部205の説明を行なう。
【0103】
ユーティリティ部は印刷装置300に対して、印刷ジョブのリストや属性表示およびジョブのキャンセル停止、再開指示等の操作を指定するために存在する。
【0104】
ユーティリティが行なう操作は論理チャネルを用い、印刷ジョブを送信するジョブパケットと同等の管理パケットを送受信することとによって行なわれる。管理パケットはジョブパケットと同様、図2に示すようなデータ構造を持つ。0〜11バイト目のパケットヘッダの各情報の内容もジョブパケットと同様で、オペレーションコードのみが以下のように異なる。
【0105】
0x010b 印刷ジョブのキャンセル指定
0x0123 印刷ジョブの割り込み指定
0x010d 印刷ジョブのリスト獲得
0x0120 印刷ジョブの停止指定
0x0121 印刷ジョブの再開指定
0x0105 属性の設定
0x0106 属例の獲得
ジョブパケットと異なり、管理パケットは個々のパケットが固有の目的に使用される。ジョプパケットにより、印刷ジョブが送信されると、印刷装置はジョブプリプロセッサ部303の働きにより、機器データベース部305に、ジョブの情報が格納される。ユーティリティ部205が印刷装置にどのジョブが格納されているかを知りたい時は、前記印刷ジョブのリスト獲得のオペレーションコード(0x010d)を指定した管理パケットを管理チャネルに送信する。パラメータ部には獲得したいオブジェクトである印刷ジョブクラスを示すオブジェクトID=0x0102を指定する。
【0106】
この管理パケットは論理チャネル制御部206に送られ、インタフェース210を介して印刷装置300の情報管理部310に送られる。
【0107】
情報管理部310は、受け取った管理パケットのオペレーションコードによって、印刷ジョブのリスト獲得だと確認し、機器データベース部305に蓄えられた印刷ジョブのリスト情報を獲得して、送信パケットの送信を行なう。返信パケットのパラメータ部には、印刷装置が認識している印刷ジョブの個数および、各印刷ジョブによって一意に決まるオブシェクトIDのリストか格納されている。
【0108】
各印刷ジョブが、ジョブ属性設定オペレーションによりジョブ名称、オーナ、サイズの情報を持っている場合、ユーティリティ部205は印刷ジョブに関する詳細な情報を獲得可能である。
【0109】
ユーティリティ部は印刷ジョブのリストを獲得した場合、さらに個々の印刷ジョブに対して、詳細な属性を獲得するために、属性の獲得をオペレーションコード(=0x0106)に指定した管理パケットを印刷装置に送信する。
【0110】
情報管理部310は、受け取った管理パケットのオペレーションコードによって、属性の獲得だと認識し、機器データベース部305に蓄えられた指定印刷ジョブのオブジェクトIDに対応する指定した属性IDの属性を獲得し、返信パケットの返信を行なう。管理パケットのパラメータ部には、獲得したい印刷ジョブのオブジェクトID、獲得したい属性のIDを指定する。例えば、1番の印刷ジョブのジョブ名称を獲得したい場合には、オブジェクトIDに1,属性IDに0x0101を指定する。
【0111】
次に再開処理について説明する。
【0112】
ユーティリティ部205によって、印刷装置に入った停止している任意のジョブの印刷の再開を行ないたい時は、印刷ジョブの再開指定をオペレーションコード(=0x0121)に指定した管理パケットを印刷装置300に送信する。この時、追加データとして、再開を行なう印刷ジョブのジョブIDを指定する。
【0113】
情報管理部310は、受け取った管理パケットのオペレーションコードによって、印刷ジョブの再開指定だと認識し、停止/再開処理部312に再開の指示を行なう。
【0114】
停止/再開処理部312が再開の指示を受けた時の動きは、図7の説明の時に行なった。
【0115】
以上により、停止しているジョブは、あらかじめ指定されている再開時刻になった場合に、自動的に再開され実際の印刷処理が行なわれる。さらに、ユーザによりユーティリティ部から再開指定が行なわれた場合は、再開指定時刻になっていなくても、再開され印刷処理か行なわれる。
【0116】
〔第2実施形態〕
第1の実施例でジョブパケットのジョブ開始オペレーションの追加データに記述された動作モードを見て停止処理を行なうかどうかの判断をしていたが、通常ジョブとして投入されたジョブに関して後で停止指定を行なうことが可能である。
【0117】
本発明の第2の実施例ではユーティリティから停止指定を行なう方法について説明する。
【0118】
実施構成は第1の実施例と同じであり、図1の構成図をそのまま使用する。
【0119】
ユーティリティ部205によって印刷装置に入った任意のジョブの停止を行ないたい時は、印刷ジョブの停止指定をオペレーションコード(=0x0120)に指定した管理パケットを印刷装置300に送信する。
【0120】
この時、追加データとして、停止を行なう印刷ジョブのジョブIDを指定する。さらに追加データとして、そのジョブの自動再開を希望する時刻も指定する。
【0121】
情報管理部310は、受け取った管理パケットのオペレーションコードによって、印刷ジョブの停止指定だと認識し、停止/再開処理部312に停止の指示を行なう。
【0122】
この場合、第1の実施例とは異なり、停止するジョブは新規追加ではなく、すでにある印刷ジョブが停止ジョブに変化するのであるため、停止/再開処理部312の処理が若干変更される。
【0123】
図9は第2の実施例における停止/再開開処理部312の動作を説明するフローチャートである。第1の実施例における図7のフローチャートとほぼ同等であるが、S1102の読み出し開始しているかどうかのチェックが入る点が異なる。そのジョブの印刷データを1バイトでも読み出し開始してしまっていた場合、そのジョブを停止することはできない。
【0124】
図10は停止処理におけるジョブ読み出しテーブルの状態を表す説明図である。図10(a)において、通常ジョブがジョブ1〜4まで投入された状態で、ジョブ4がユーティリティから停止指定された場合を想定しており、図10(b)において、停止ジョブになったジョブ3はジョブ読み出しテーブルの最後尾に移動されている。
【0125】
PDLトランスレータ部306はジョブ読み出しテーブルに記述された順番に印刷ジョブのトランスレートを行なうことによって、ジョブ1,2,4の順番に印刷処理が行なわれ、停止フラグがTにセットされた停止ジョブ3のみ残ったままになる。この停止しているジョブ3は、再開指定により、停止フラグがFにセットされた後、PDLトランスレータ部306に読み出されることになる。あるいは、再開時刻に達した場合、停止フラグがFにセットされた後、PDLトランスレータ部306に読み出されることになる。
【0126】
〔第3実施形態〕
第2の実施例において、停止処理として図9のS1103とS1104で示したように、そのジョブの順序を最後尾に移動し、かつ、停止フラグにTをセットし、再開指定時刻をセットした。しかし、読み出しテーブルでのジョブの順序はそのままにして、停止フラグをTにセットするのみにするやり方もある。この場合、再開指定が発行されなければ結果として第2の実施例と全く同じことで、停止フラグがTにセットされた停止ジョブ3のみ残ったままになる。
【0127】
ただし、途中でジョブ3に対して再開指定が発行された場合、第2の実施例とは異なる動きになる。
【0128】
すなわち、図10(a)において、ジョブ3を停止指定した場合、ジョブの順序は移動しないので、図11(a)のようになる。そして、ジョブ1の読み出しが完了し、ジョブ2の読み出しを開始したタイミングでは図11(b)のようになる。ここで、ジョブ3に対して再開指定した場合、ジョブの順序を変えずに停止フラグのみFにセットし直すので、図11(c)のようになり、この後ジョブ2,ジョブ3,ジョブ4の順で印刷されることになる。
【0129】
第2の実施例で同様のタイミングで再開を行なった場合には、停止した時点でジョブ3はジョブ読み出しテーブルの最後尾に移動されてしまっているので、ジョブ2,ジョブ4,ジョブ3の順序で印刷され、この点に特徴がある。
【0130】
すなわち、第2の実施例も停止したジョブは再開時点の通常ジョブの最後尾という扱いになるが、第3の実施例の場合は停止したジョブが再開された場合、停止された時の順序あるいはそれに近い順序で通常ジョブに戻ることとができる。
【0131】
〔第4実施形態〕
以上の実施例において、再開時刻について、何年何月何日何時何分何秒というような絶対的な時刻で扱ってきた。しかし、相対的な時間で扱っても構わない。
【0132】
たとえば、印刷装置へのジョブの投入後何時間何分後に再開せよ、というように指定するやり方でも構わない。
【0133】
本実施例は、絶対時刻を保持する時計機能は持っていないが、電源起動時を起点とする相対タイマを持っている印刷装置においては特に有効である。
【0134】
【発明の効果】
以上説明したように、本発明によれば、ユーザがホストコンピュータ上から印刷処理を行なう場合に、停止指定を行なって印刷実行を行なうことによって、停止指定のジョブのデータは格納するのみで印刷せずに惇止しておき、再開指定を行なうことにより、実際の印刷を行なうことが可能である。
【0135】
さらにすでに印刷装置に投入した印刷ジョブに対して、ユーティリティから停止指定を行なうことによって印刷の停止をすることとが可能であるため、ジョブ投入後に印刷の停止をする必要性が発生しても、同様の効果が期待できる。
【図面の簡単な説明】
【図1】本発明の第1の実施例の印刷システムの機能構成を示すブロック図である。
【図2】ジョブパケットの構成を示す説明図である。
【図3】時刻データの構成を示す説明図である。
【図4】ジョブパケット生成部の動作を説明するフローチャートである。
【図5】ジョブプリプロセッサ部の動作を説明するフローチャートである。
【図6】ジョブ読み出しテーブルを表す説明図である。
【図7】停止/再開処理部の動作を説明するフローチャートである。
【図8】停止処理時におけるジョブ読み出しテーブルの状態を表す説明図である。
【図9】第2の実施例における停止/再開処理部の動作を説明するフローチャートである。
【図10】停止処理時におけるジョブ読み出しテーブルの状態を表す説明図である。
【図11】停止/再開処理時におけるジョブ読み出しテーブルの状態を表す説明図である。
【図12】従来の印刷システムの機能構成を示すブロック図である。
【符号の説明】
200 ホストコンピコータ
300 印刷装置
210 インタフェース
【発明の属する技術分野】
本発明は、ユーザの指示にしたがって印刷データを生成するホストコンピュータと、所定の通信媒体を介して前記ホストコンピュータから送信された印刷データをデータ処理して画像データを生成し、用紙などのメディアに実際に印刷を行なう印刷装置からなる印刷システムに関するものである。
【0002】
【従来の技術】
従来、ホストコンピュータと印刷装置から構成された印刷システムにおいては、ホストコンピュータから生成される印字データを印刷するだけではなく、ホストコンピュータから印刷装置の情報獲得、環境設定を行なうといった機能が要求されている。特に昨今のネットワークの普及により、印刷処理時間の速い高機能な1台の印刷装置を複数のユーザでネットワークを介して共有することにより、オフィスにおける大量の印刷ニーズを満たしながら管理コストを最低限に抑えるといった使用形態が一般化している。この状況下で、管理者はリアルタイムで遠隔地にある印刷装置の管理を行ないたいという要求があり、また一般ユーザは自分が発行した印刷ジョブの処理状況の確認や、取り消しといった2次操作を行ないたいという要求があり、この要求を満たす印刷システムが数多く実現化されている。
【0003】
図12は従来の印刷システムにおける、ホストコンピュータから印刷装置への印刷ジョブ送信、印刷装置の情報獲得、環境設定を行なう仕組みを具現化した印刷システムの機能構成を示すブロック図である。従来の印刷システムは、ホストコンピュータ100と印刷装置150とが所定の印刷媒体180を介して接続されているという構成になっている。
【0004】
ホストコンピュータ100はアプリケーンョン部101、プリンタドライバ部102,送信バッファ103,I/Fドライバ部104,ユーティリティ部105,論理チャネル制御部106,ジョブパケット生成部107から構成されている。
【0005】
アプリケーション部101はユーザにグラフィカルユーザインタフェースを提供し、ユーザの目的に適った画像データを生成する。プリンタドライバ部102は、アプリケーション部101が生成した画像データを印刷装置150で印刷可能なページ記述言語(以下PDLと略称)データに変換する。送信バッファ103はプリンタドライバ部102が生成したPDLデータを一時的に格納しておく。ジョブパケット生成部107は送信バッファ103に蓄えられたデータに、アプリケーション部101が所有する印刷ジョブの情報を付加して所定のフォーマットに従ってジョブパケットを生成する。
【0006】
ユーティリティ部105は印刷装置150に関する情報を獲得してグラフッィクユーザインタフェースを提供して、ユーザや管理者の要望に従って、印刷装置150における機器の情報を設定したり、印刷ジョブの状態の獲得や取り出し要求を行なうための管理パケットの生成を行なう。論理チャネル制御部106はジョブパケット生成部107が生成するジョブパケットとユーティリティ部105が生成する管理パケットとの多重化の制御を行ない、OSI7階層におけるトランスボート層の役割を受け持つ。I/Fドライバ部104は論理チャネル制御部106から生成されたデータの送信と印刷装置150から送信されたデータの受信を行なう。
【0007】
印刷装置150は、論理チャネル制御部151,機器データベース部152,ジョブプリプロセッサ部153,受信バッファ154,PDLトランスレータ部155,描画バッファ156,描画部157,プリンタエンジン部158,I/Fドライバ部159,情報管理部160,操作パネル161から構成されている。I/Fドライバ部159はホストコンピュータ100から送信されたデータの受信と、論理チャネル制御部151から生成されたデータの送信を行なう。論理チャネル制御部151はI/Fドライバ部159が受信したデータを解析し、ジョブパケットはジョブプリプロセッサ部153、管理パケットは情報管理部160に分別し、逆に情報管理部160から送信される管理パケットをI/Fドライバ部151に送信する。ジョブプリプロセッサ部153は、ジョブパケットを受け取って解釈し、PDLデータを受信バッファ154に、ジョブの管理情報を機器テーダベース部152に送る。
【0008】
受信バッファ154はPDLデータが受信された順番に格納されている。
【0009】
機器データベース部152はコピー数などのジョブ情報や、機器に関する情報が格納されている。
【0010】
PDLトランスレータ部155は受信バッファ154に格納されたPDLデータと機器データベースに格納されたジョブ情報を元にトランスレート処理を行ない、描画部157がリアルタイムに描画できる中間データに変換し、描画バッファ156に送信する。
【0011】
描画バッファ156は複数ページ分の中間データを格納し、描画部157に渡す。
【0012】
描画部157は描画バッファ156から中間データを取得し、プリンタエンジン部158が行なう用紙搬送処理とともにリアルタイムに中間データのレンダリングを行ない、プリンタエンジン部158にビデオデータとして送信を行なう。
【0013】
プリンタエンジン部158は既知の電子写真技術を用いて描画部157から送信されたビデオデータを元に、用紙に物理的に印刷を行なう。
【0014】
情報管理部160はユーティリティ部105の情報獲得要求を管理パケットの形で受け取り、機器データベース部152に必要な情報を獲得し、管理パケットに変換して論理チャネル制御部151を介してホストコンピュータに返答する。また、ジョブの終了を検知して自発的に終了の通知を管理パケットに変換して通知する。
【0015】
操作パネル161は印刷装置150の本体に備え付けられている液晶やLEDなどのディスプレイ装置と操作ボタンから構成されており、ユーザからの設定を情報管理部160を通して機器データベース部152に反映させ、あるいは現在の機器の状態を表示するという処理を行なう。
【0016】
次に従来例におけるジョブの取り消し機能の仕組みを説明する。
【0017】
ジョブの取り消し機能は、印刷要求を出したユーザあるいは管理者が印刷装置に対して送信されたジョブの印刷取り消しを要求する機能で、ユーティリティ部105にあるユーザインタフェース、あるいは操作パネル161から取り消しを要求する。
【0018】
印刷装置150は印刷ジョブの印刷要求を受けると、ジョブプリプロセッサ部153で新規ジョブを認識し、印刷装置内で一意に保たれるジョブIDをジョブに対して割り振り、その情報を機器データベース部152に格納する。この情報は印刷ジョブの全ページが解釈、描画され、プリンタエンジン部158で最後の1ページの排紙が完了したと検知された段階で削除が行なわれる。
【0019】
ユーティリティ部105は印刷装置150に対して、装置内ジョブリストの獲得を要求する管理パケットを発行し、印刷装置150は装着内で認識しているすべてのジョブの前記ジョブIDのリストを送信する。ユーティリティ部105はこれを受け取り、グラフッィクユーザインタフェースを用いて表示を行なう。
【0020】
印刷ジョブを送信したユーザあるいは印刷装置の管理者は、ジョブの取り消しが可能である。すなわち、これはユーティリティ部105のグラフィックユーザインタフェースから削除を行なうジョブIDの指定が行なわれ、管理パケットに変換されて印刷装置150に取り消し要求の指令が行なわれる。印刷装置150へジョブ取り消し要求の管理パケットが送信されると、情報管理部160が検知を行ない、印刷パス上に該当ジョブが存在する場含にはその印刷の取り消しを行なう。
【0021】
操作パネル161から取り消しを行なう場合は、ジョブIDを明示的に指定するのが困難であるので、印刷バス上もっとも処理が進んでいるジョブを取り消しの対象とする。具体的にはプリンタエンジン部158で、ジョブを処理しているときはそのジョブIDを取り消しの対象とし、そうでない場合には描画部157、PDLトランスレート部155といった感じに印刷バス上で処理中のジョブが見つかった段階で該当ジョブIDの決定を行ない、取り消しの対象とする。操作パネル161によるとジョブの取り消しは、該当ジョブIDの決定方法が異なるだけで、実際の印刷装置内の取り消し処理はユーティリティ部105による取り消しと同じである。
【0022】
以上の操作によって、印刷装置150内に格納された任意のジョブの取り消し動作が可能となっている。
【0023】
【発明が解決しようとする課題】
ネットワークの普及に伴い、高速、高機能な印刷装置を複数のユーザで共有する利用形態が増えてきた結果、新しいサービスのニーズかでてきた。
【0024】
・多量の部数分印刷した
・データサイズか大きく、解析処理が困難である
などの理由で印刷処理に時間がかかり、共有プリンタを占有してしまうケースがある。
【0025】
そこで、多量に印刷したいのだが、特に急いでいる訳ではなく、また、複数ユーザにより使用頻度の高いプリンタなので他のユーザに迷惑をかけないタイミンクで印刷したい、というような要求がある。
【0026】
このような要求を遂行するために、印刷装置に印刷ジョブの印刷停止、印刷再開機能が望まれている。
【0027】
さらに、再開時刻を指定した自動再開機能も望まれている。
【0028】
本発明は上述した点に鑑みてなされたものであり、印刷ジョブの印刷の停止を指定された場合には、停止指定された印刷ジョブは、データは受信して格納しておくか、実際の印刷は停止しておき、印刷を再開をするようにあらかじめ指定されている時刻になると、自動的に格納してあるデータを取り出して実際に印刷を行なうことを可能としている。
【0029】
【課題を解決するための手段】
上記目的を達成するために、本発明に係る印刷システムは、印刷データを一時的に格納しておくジョブスプーリング手段と、停止指定手段によって印刷ジョブに付随されたパラメータによって印刷データか停止指定であるかどうかを、印刷データの投入時にただちに判断するジョブプリプロセス手段と、前記ジョブプリプロセス手段によって停止指定であると認識された場合、当該停止指定のある印刷ジョブを前記ジョブスプーリング手段から取り出すのを停止し、その印刷ジョブの印刷を停止させておく停止手段と、時計手段と、印刷を再開する指令を受信して、あるいは、あらかじめ指定された再開時刻になると、当該印刷を停止しているジョブを前記ジョブスプーリング手段から取り出して印刷を行なう再開手段とを有することを特徴とする。
【0030】
【発明の実施の形態】
〔第1実施形態〕
以下、本発明の第1の実施例を説明する。図1は本発明の第1の実施例の印刷システムにおける、ホストコンピュータから印刷装置への印刷ジョブ送信、印刷装置情報獲得、環境設定を行なう仕組みを具現化した印刷システムの機能構成を示すブロック図である。印刷システムは印刷すべきジョブを生成するホストコンピュータ200と、実際に用紙に印刷を行なう印刷装置300、および所定のインタフェース210から構成されている。インタフェース210はIEEE1284で規定されているローカルインタフェースでもEthernet(登録商標)のようなネットワークインタフェースでもよく、本実施例ではローカルインタフェースの場合の説明を行なう。
【0031】
図1において、ホストコンピュータ200は、ユーザがグラフィックユーザインタフェースを操作しなから所望の印刷データを生成するアプリケーション部201、アプリケーション部201が作成した画像データを、印刷装置300が印刷可能なページ記述言語(以下PDLと略称)データに変換するプリンタドライバ部202,プリンタドライバ部202が変換したPDLデータを一時的に格納しておく送信バッファ203、送信バッファ203に格納されたPDLデータとアプリケーション部201が有するジョブ属性情報とから所定のジョブパケットを生成するジョブパケット生成部207、印刷装置300の状態の確認や送信した印刷ジョブの印刷状態の確認や、印刷ジョブの取り消し、停止などの操作をグラフッィクユーザインタフェースを用いて、これらの要求を印刷装置300が解釈可能な管理パケットに変換するユーティリティ部205、ジョブパケットと管理パケットをそれぞれ異なるチャネルに割り振り、OSI7階層におけるトランスボート層の多重化を行なう論理チャネル制御部206,論理的なデータを電気信号に変換し、インタフェースとのやりとりを行なうI/Fドライバ部204から構成される。
【0032】
印刷装置300は、論理的なデータを電気信号に変換し、インタフェースとのやりとりを行なうI/Fドライバ部301,I/Fドライバ部から受信したデータを解析し、ジョブパケットと管理パケットをそれぞれ異なるチャネルに割り振り、OSI7階層におけるトランスボート層の多重化を行なう論理チャネル制御部302、ジョブパケットを受け取って解析を行ない、印刷ジョブの属性情報は機器データベース部305,PDLデータはジョブスプーラ304に割り分けて格納するジョブプリプロセッサ部303,HDDやフラッシュメモリ、あるいはDRAMなどの大容量メモリデバイスから構成され、印刷ジョブの管理データを印刷完了まで一時的に保存するジョブスプーラ304、ジョブの処理順番および停止しているかどうかを記述したジョブ読み出しテーブル313、ジョブ読み出しテーブル313に記述された順番にジョブを取りだし、機器データベース部305に格納された属性情報とジョブスプーラ304に格納されたPDLデータを解析し、リアルタイムに描画処理可能な中間データを生成して描画バッファ307に格納するPDLトランスレータ部306、中間データをページ単位に印刷完了まで一時的に保持する描画バッファ307、描画バッファ307から中間データを取得し、プリンタエンジン部309が行なう用紙搬送処理とともにリアルタイムに中間データのレンダリングを行ない、プリンタエンジン部309にビデオデータとして送信を行なう描画部308、既知の電子写真技術を用いて描画部308から送信されたビデオデータを元に、用紙に物理的に印刷を行なうプリンタエンジン部309、ホストコンピュータ200から送信された管理パケットを受け取り、要求に応じて機器データベース部305から情報の獲得を行ない、またジョブの取り消し要求や停止要求、再開要求を行ない、またジョブの終了や機器の異常を検知して自立的にホストコンピュータ200に通知イベントを発行する情報管理部310、ジョブの停止指定および再開指定か行なわれた時に、実際の停止処理および再開処理を行なう停止/再開処理部312から構成される。
【0033】
ホストコンピュータ部200の論理チャネル制御部206から印刷装置300の論理チャネル制御部302までに行なわれるデータ通信は、たとえばネットワークの場合はTCP/IP、ローカルの場合はIEEE1284/IEEE1284.4による規定のプロトコルにより、トランスボート層レベルの多重化が行なわれているものとし、詳細な説明については省略する。
【0034】
論理的にジョブパケット生成部207から送信されるジョブパケットはジョブプリプロセッサ部303によって受信され、この経路をジョブチャネルといい、ユーティリティ部205から送受信される管理パケットは情報管理部310によって送受信され、この経路を管理チャネルという。双方のチャネルは双方向通信が可能であることを規定しているが、ジョブチャネルに関してはホストコンピュータ印刷装置の片方向だけでも本実施例の実施形態を阻害するものではない。ジョブチャネルと管理チャネルはOSI7階層におけるトラースポート層レベルで多重化されており、片方のフロー処理が他力に影響することはない。次にジョブパケット、管理パケットの構造について説明する。
【0035】
ジョブパケット、管理パケットはアプリケーション層のプロトコルであり、ヘッダ部、パラメータ部から構成されるパケット構造になっている。
【0036】
1つの印刷ジョブは複数のジョブパケットから構成される。印刷ジョブを構成する一連のジョブパケットの集まりをジョブスクリプトと呼ぶ。
【0037】
図2はジョブパケットの構造を示す説明図である。縦軸はバイトを示し、横軸は各バイトビットを示している。図中において0〜1バイト目のオペレーションコードは、パケットの機能を示す長さ2バイトのIDである。ジョブパケットにおいては以下の値を取ることかできる。
【0038】
0x0201 ジョブ開始オペレーション
0x0202 ジョブ属性設定オペレーション
0x0204 PDLデータ送信オペレーション
0x0205 ジョブ終了オペレーション
2〜3バイト目のブロック番号は、ジョブパケットを送信した側が、返答を要求する場合に、受信側からの返答が送信側のどの返答要求に対するものであるか、その対応を取るために使用する番号である。例えばそれぞれブロック番号=1,2,3というジョブパケットを立て続けに送信した時にブロック番号=2というエラーパケットが帰ってきた場合、返答が帰ってきたとき、送信側は、2番目に送ったジョブパケットにエラーが発生したことを特定することが可能である。
【0039】
4〜5バイト目のパラメータ長はデータ部のバイト長さを示す領域で、0〜64Kバイトまでを示すことが可能である。
【0040】
6〜7バイト目はジョブパケットの各種フラグを示す領域で、それぞれ以下の値を示す。
【0041】
エラーフラグ:
この値が1の場合、印刷装置で何らかのエラーが発生したことを示す。このフラグは印刷装置からホストコンピュータに送られる返信パケットに付加される。
【0042】
通知フラグ:
ここの値が1の場合は、ホストコンピュータからの要求パケットに対する返答ではなく、印刷装置がなんらかの通知事項があることをホストコンピュータに通知することを示している。
【0043】
継続フラグ
この値が1の場合、テーダ部にすべてのデータか入らなかったため、次のジョブパケットで残りのデータが送られることを示す。次のジョブパケットは前のパケットと同じオペレーションコード、ブロック番号を設定しなくてはならない。
【0044】
返答要求
ホストコンピュータから印刷装置に対して返答パケットが必要な場合に1をセットする。0のときは要求パケットは正常に処理された場合には返答は返さない。印刷装置でエラーが発生した場合には返答要求の0/1に関わらず、つねにエラーフラグを1にした返答パケットを送出する。
【0045】
8〜9バイト目のユーザIDおよび10〜11バイト目のパスワードは、要求パケットでできる操作にセキュリティ的制限を設ける際に認証に使われる領域である。本実施例には影響しない。
【0046】
12バイト目以降はオペレーションコードに対応した追加データが格納される。
【0047】
ジョブ開始オペレーションの場合、追加データとして、ジョブの実行モードが記述される。指定可能な実行モードを以下に述べる。
【0048】
0x01: ジョブの通常実行。当該ジョブは通常ジョブとして印刷装置キューの最後に追加され、スケジューリングが回ってきたら印刷処理を行なう。
【0049】
0x04 ジョブの印刷停止。当該ジョブは投入と同時に停止ジョブとして扱い、当該ジョブはデータの格納のみ行ない、印刷は停止しておく。
【0050】
ジョブ開始オペレーションの場合、追加データとして前記ジョブの実行モードに加えて、再開時刻が記述される。再開時刻を指定するデータについて説明する。図3は、年月日および時刻を示すデータ(以下、時刻データと呼ぶ)の構成を説明する図である。縦軸はバイトを示し、横軸は各バイトのビットを示している。図中において、12bitを占めるYearは西暦年を示し、0〜4095の値を取ることができる。
【0051】
Monthは月を示す。1〜12の値を取ることかできる。
【0052】
Dateは日を示す。1〜31の値を取ることかできる。
【0053】
Hourは時を示す。24時間表記で、0〜23の値を取ることができる。
【0054】
Minuteは分を示す。0〜59の値を取ることができる。
【0055】
Secondは秒を示す。0〜59の値を取ることができる。
【0056】
この時刻データにより何年何月何日何時何分何秒という情報を示すことができる。
【0057】
ジョブ属性設定オペレーションの場合、設定したいジョブ属性IDとジョブ属性値を設定する。ジョブ属性IDとは、ジョブに関する属性あるいは環境に対応した識別子を示すもので、ISO−10175(DPA)で規定されるジョブの属性に相当するIDが予め割り振られている。以下にジョブ属性の代表的なものを挙げる。
【0058】
ジョブ属性ID
0x0101 ジョブ名称
0x0103 ジョブオーナ名
0X016a ジョブサイズ
この他、印刷装置の機能に応じて、印刷部数、モノクロ・カラーなどのジョブ属性とそれに対応するIDを割り振ることができる。
【0059】
PDLデータ送信オペレーションの場合は、追加データ部にはPDLデータが入る。
【0060】
1つのジョブパケットのデータは前記パラメータ長に格納できる最大サイズまでなので、64KBまで格納可能であり、それ以上のデータは複数のPDLデータ送信オペレーションに返信して送信する。この場合は前記継続フラグに1を立てる。
【0061】
ジョブ終了オペレーョンの場合は追加データは存在しない。
【0062】
次にホストコンピュータにあるジョブパケット生成部207を説明する。
【0063】
図4,図5はジョブパケット生成部207の動作を説明するフローチャートである。
【0064】
ジョブパケット生成部207は、アプリケーション部201により、印刷指定が選択された時にプリンタドライバ部202が起動し、プリンタドライバ部202が印刷データを送信バッファ部203に生成を完了した後に処理が開始される。
【0065】
S501において、当該ジョブが停止指定がされたかどうかを判断する。停止指定はプリンタドライバ部202のユーザインタフェースが提供するプロパティによって指定される。その際、該ユーザインタフェースでは、何時に再開時刻も指定される。停止指定ありの場合にはS503において動作モードを0x04、そうでない場合にはS502において動作モードを0x01に設定される。
【0066】
S504において、図2のオペレーションコードを格納する領域にジョブ開始オペレーションコード(0x0201)を指定したジョブパケットを論理チャネル制御部206に発行する。この時、ジョブパケットの追加データ領域に動作モードおよび再開時刻が設定され、通常ジョブか停止指定ジョブかの指定がなされる。
【0067】
以降、ジョブ終了オペレーションを発行するまで、全てのオペレーションは当該ジョブの情報設定のためだけに用いられる。
【0068】
S505において、ジョブの名称の設定が行なわれる。図2のオペレーションコードを格納する領域にジョブ属性設定オペレーションコード(0x0202)、パラメータ部に、ジョブ名称を示すジョブ属性ID(=0x0101)、およびジョブ属性値となる名称を指定したジョブパケットを論理チャネル制御部206に発行する。
【0069】
S506において、ジョブの所有者の設定が行なわれる。図5のオペレーションコードを格納する領域にジョブ属性設定オペレーションコード(0x0202)、パラメータ部に、ジョブ所有者を示すジョブ属性ID(=0x0103)、およびジョブ属性値となる所有者名を指定したジョブパケットを論理チャネル制御部206に発行する。
【0070】
S507において、ジョブサイズの設定が行なわれる。図2のオペレーションコードを格納する領域にジョブ属性設定オペレーションコード(0x0202)、パラメータ部に、ジョブサイズを示すジョブ属性ID(=0x016a)、およびジョブ属性値となるジョブのデータサイズを指定したジョブパケットを論理チャネル制御部206に発行する。
【0071】
S508において、変数sizeに送信すべきPDLデータのサイズを代入する。
【0072】
S601において、変数sizeの大きさをチェックし、64Kより大きいかどうかを比較する。ジョブパケットに指定できるパラメータのサイズはパケットヘッダのパラメータ長のサイズが16ビットで表現されているため、最大64Kバイトの制限があるので、それ以上のデータは複数のジョブパケットに分割して発行されることになる。もしデータのサイズが64Kよりも大きい時は、S605において図2のパケットヘッダ継続フラグを1に設定し、さらにS606において、送信バッファ203から64Kバイト分のPDLデータが取り出され、図2のオペレーションコードを格納する領域にPDLデータ送信オペレーション(0x0204)に、パラメータ部に前記取り出されたPDLデータを指定したジョブパケットを論理チャネル制御部206に発行する。またS607において、送信した分の64Kをsizeから減じて、S601の分岐に戻る。
【0073】
S601において、データサイズが64K以下の場合は、後1回のPDLデータ送信オペレーションで全データの送信が完了する。この場合、S602において、図2のパケットヘッダの継続フラグを0にして、PDLデータ送信が最後であることを設定し、さらにS603において送信バッファ203からすべてのPDLデータか取り出され、図2のオペレーションコードを格納する領域にPDLデータ送信オペレーション(0x0204)に、パラメータ部に前記取り出されたPDLデータを指定したジョブパケットを論理チャネル制御部206に発行する。
【0074】
その後S604において、図2のオペレーションコードを格納する領域にジョブ終了オペレーションコード(0x0205)を指定したジョブパケットを論理チャネル制御部206に発行して終了する。
【0075】
次にジョブプリプロセッサ部303の説明を行なう。
【0076】
図5はジョブプリプロセッサ部303の動作を説明するフローチャートである。
【0077】
図5において、ジョブフリプロセッサ部303は印刷装置300の起動時に開始され、以後印刷装置300の電源遮断まで処理を継続する。
【0078】
最初にS701においてジョブパケットの受信を行なう。受信するとS702においてジョブ開始オペレーションかどうかの比較が行なわれる。ここでジョブ開始オペレーション以外のオペレーションが到着した場合には不正動作となり、S703でジョブパケットの破棄が行なわれ、S701に戻る。ジョブ開始オペレーションと判断されると、S704で当該ジョブのジョブIDの獲得が行なわれる。ジョブIDは2バイトの番号として割り振られ、機器データベース部305におけるジョブ属性情報の読み書き処理のキーとして利用される。次にS705においてジョブ読み出しテーブルに当該ジョブのジョブIDが追加される。S706において、ジョブパケットの追加データを検索し、動作モードが0x04かどうかが比較される。0x04の場合は前記のとおり停止指定を示しており、その場合にはS707において停止/再開処理部312に対してジョブの印刷停止の指示を出す。この際、ジョブ読み出しテーブルの当該ジョブの停止フラグにTをセットする。さらに、追加データに設定されている再開時刻データも、ジョブ読み出しテーブルにセットする。
【0079】
統いてS708で次のジョブパケットの受け付けを行なう。S709において受信したジョブパケットが属性設定オペレーンョンの場合は、S710において機器データベース部305において属性データの設定を行なう。この時キーとなるのはS704で獲得したジョブIDとジョブパケットの追加データに記述されてある属性IDおよび属性データである。属性設定が完了すると次のジョブパケットを受信するため、S708に戻る。
【0080】
S711においてジョブパケットがPDLデータ送信オペレーションであるかどうかの比較を行ない、そうである場合にはS712においてジョブスプーラ304にPDLデータの追加を行なう。この時、ジョブIDをキーとして渡し、後で取り出すときにもジョブIDをキーとして取り出せるようにしておく。ジョブスプーラ304への追加が完了すると次のジョブパケットを受信するため、S708に戻る。
【0081】
S713においてジョブパケットがジョブ終了オペレーションであるかどうかの比較を行ない、そうである場合には、一連のループを抜けてS701の初期状態に戻る。
【0082】
いずれのオペレーションに該当しない場合には、不正なジョブパケットであるので、S714においてジョブパケットの破棄を行なう。
【0083】
以上の動作によって、ジョブプリプロセッサ部303はジョブパケットを機器データベース部305とジョブスプーラ304にデータの振り分けを行なう。
【0084】
次にジョブ読み出しテーブル313の説明を行なう。
【0085】
図6はジョブ読み出しテーブルを表す説明図である。
【0086】
図6(a)は読み出しテーブルにジョブ1〜4が登録されていることを示す。停止フラグは、そのジョブが停止ししているかどうかを示す。この停止フラグがT(=TRUE)の場合そのジョブは停止しており、F(=FALSE)の場合そのジョブは停止していない通常ジョブであることを示す。図6(a)の例の場合、ジョブ1,ジョブ2,ジョブ3は停止していない通常ジョブで、ジョブ4は停止しているジョブである。
【0087】
なお、ジョブ4は2000年5月1日23時30分になったら再開するよう指定されている。
【0088】
PDLトランスレータ部305はトランスレートを実行する時、読み出しテーブルの上から順番に印刷ジョブの取り出しを行なう。ただし、この際、停止フラグにTがセットされているものは取り出さない。すなわち、停止しているジョブは取り出さない。
【0089】
なお、読み出しテーブルにおいて、停止フラグにTがセットされているジョブの再開時刻部分は、意味がないゴミデータか入っているので、参照したり使用したりしてはいけない。
【0090】
ジョブプリプロセッサ部がS705においてジョブ読み出しテーブルに停止指定のされていないジョブ5を追加する場合、図6(b)のように、ジョブ5は読み出しテーブルの停止フラグにFがセットされているものの最後尾に追加される。すなわち、この図6(b)の例の場合には、ジョブ3とジョブ4の間に追加されることになる。この際、ジョブ5は停止指定されていないので、停止フラグはFがセットされる。
【0091】
また、ジョブ1を最後まで読み出しを完了したと認識すると、図6(c)のようにジョブ1はジョブ読み出しテーブルから削除される。以上のようにジョブ読み出しテーブル313はPDLトランスレータ部が処理するジョブの順番の制御を行なう。PDLトランスレータ以降の印刷ジョブの処理については従来系と同じ処理であるため、説明を省略する。
【0092】
次に停止処理について説明する。
【0093】
ジョブプリプロセッサ部303が印刷ジョブの停止指定を認識すると、S707において停止/再開処理部に対して停止指定が行なわれる。この時、停止を行なうジョブIDと再開時刻も通知される。
【0094】
図7は停止/再開処理部312の動作を説明するフローチャートである。
【0095】
図7においてS901で停止指示がされたかどうかを判断し、指示がない場合はS904にすすむ。停止指示がされると、S902において停止ジョブのジョブIDをジョブ読み出しテーブルの最後尾に追加する。
【0096】
そして、S903にすすみ、停止フラグにTをセットし、再開時刻もセットする。これによって当該印刷ジョブは、再開時刻に達するあるいはホストからの再開指定がくることにより、再開されるまでは読み出されないので、停止ジョブということになる。
【0097】
つづいてS904において、再開指示がされたかどうかを判断し、再開指示がされると、S905において再開指定されたジョブが実際に停止されているかどうかを調べる。これは、読み出しテーブルの停止フラグかTかFかを調べる。ここて、停止されていない場合、先頭に戻る。
【0098】
停止されていたジョブへ再開指定が発行されていた場合、S906にすすみ、当該再開指定されたジョブの停止フラグをFにセットする。そしてS907で、停止フラグにFがセットされている最後尾へ移動する。
【0099】
一方、S904において、再開指示がない場合は、S908で読み出しテーブル上の全ての停止ジョブについて、再開時刻になったかどうかのチェックを行なう。そして、S909で再開時刻になった停止ジョブについては、停止フラグをFにセットし、S910で停止フラグにFがセットされている最後尾へ移動する。
【0100】
図8は停止処理時におけるジョブ読み出しテーブルの状態を表す説明図である。図8(a)において、通常ジョブかジョブ1〜4まて投入された状態で、ジョブ5が停止ジョブとして投入された場合を想定しており図8(b)において、停止ジョブであるジョブ5はジョブ読み出しテーブルの最後に追加されている。
【0101】
PDLトランスレータ部306はジョブ読み出しテーブルに記述された順番に印刷ジョブのトランスレートを行なうことによって、ジョブ1〜4の順番に印刷処理が行なわれ、停止フラグかTにセットされた停止ジョブ5のみ残ったままになる。この停止しているジョブ5は、再開指定により、停止フラグがFにセットされた後、PDLトランスレータ部306に読み出されることになる。あるいは、再開時刻に達した場合、停止フラグかFにセットされた後、PDLトランスレータ部306に読み出されることになる。
【0102】
次に、ユーティリティ部205の説明を行なう。
【0103】
ユーティリティ部は印刷装置300に対して、印刷ジョブのリストや属性表示およびジョブのキャンセル停止、再開指示等の操作を指定するために存在する。
【0104】
ユーティリティが行なう操作は論理チャネルを用い、印刷ジョブを送信するジョブパケットと同等の管理パケットを送受信することとによって行なわれる。管理パケットはジョブパケットと同様、図2に示すようなデータ構造を持つ。0〜11バイト目のパケットヘッダの各情報の内容もジョブパケットと同様で、オペレーションコードのみが以下のように異なる。
【0105】
0x010b 印刷ジョブのキャンセル指定
0x0123 印刷ジョブの割り込み指定
0x010d 印刷ジョブのリスト獲得
0x0120 印刷ジョブの停止指定
0x0121 印刷ジョブの再開指定
0x0105 属性の設定
0x0106 属例の獲得
ジョブパケットと異なり、管理パケットは個々のパケットが固有の目的に使用される。ジョプパケットにより、印刷ジョブが送信されると、印刷装置はジョブプリプロセッサ部303の働きにより、機器データベース部305に、ジョブの情報が格納される。ユーティリティ部205が印刷装置にどのジョブが格納されているかを知りたい時は、前記印刷ジョブのリスト獲得のオペレーションコード(0x010d)を指定した管理パケットを管理チャネルに送信する。パラメータ部には獲得したいオブジェクトである印刷ジョブクラスを示すオブジェクトID=0x0102を指定する。
【0106】
この管理パケットは論理チャネル制御部206に送られ、インタフェース210を介して印刷装置300の情報管理部310に送られる。
【0107】
情報管理部310は、受け取った管理パケットのオペレーションコードによって、印刷ジョブのリスト獲得だと確認し、機器データベース部305に蓄えられた印刷ジョブのリスト情報を獲得して、送信パケットの送信を行なう。返信パケットのパラメータ部には、印刷装置が認識している印刷ジョブの個数および、各印刷ジョブによって一意に決まるオブシェクトIDのリストか格納されている。
【0108】
各印刷ジョブが、ジョブ属性設定オペレーションによりジョブ名称、オーナ、サイズの情報を持っている場合、ユーティリティ部205は印刷ジョブに関する詳細な情報を獲得可能である。
【0109】
ユーティリティ部は印刷ジョブのリストを獲得した場合、さらに個々の印刷ジョブに対して、詳細な属性を獲得するために、属性の獲得をオペレーションコード(=0x0106)に指定した管理パケットを印刷装置に送信する。
【0110】
情報管理部310は、受け取った管理パケットのオペレーションコードによって、属性の獲得だと認識し、機器データベース部305に蓄えられた指定印刷ジョブのオブジェクトIDに対応する指定した属性IDの属性を獲得し、返信パケットの返信を行なう。管理パケットのパラメータ部には、獲得したい印刷ジョブのオブジェクトID、獲得したい属性のIDを指定する。例えば、1番の印刷ジョブのジョブ名称を獲得したい場合には、オブジェクトIDに1,属性IDに0x0101を指定する。
【0111】
次に再開処理について説明する。
【0112】
ユーティリティ部205によって、印刷装置に入った停止している任意のジョブの印刷の再開を行ないたい時は、印刷ジョブの再開指定をオペレーションコード(=0x0121)に指定した管理パケットを印刷装置300に送信する。この時、追加データとして、再開を行なう印刷ジョブのジョブIDを指定する。
【0113】
情報管理部310は、受け取った管理パケットのオペレーションコードによって、印刷ジョブの再開指定だと認識し、停止/再開処理部312に再開の指示を行なう。
【0114】
停止/再開処理部312が再開の指示を受けた時の動きは、図7の説明の時に行なった。
【0115】
以上により、停止しているジョブは、あらかじめ指定されている再開時刻になった場合に、自動的に再開され実際の印刷処理が行なわれる。さらに、ユーザによりユーティリティ部から再開指定が行なわれた場合は、再開指定時刻になっていなくても、再開され印刷処理か行なわれる。
【0116】
〔第2実施形態〕
第1の実施例でジョブパケットのジョブ開始オペレーションの追加データに記述された動作モードを見て停止処理を行なうかどうかの判断をしていたが、通常ジョブとして投入されたジョブに関して後で停止指定を行なうことが可能である。
【0117】
本発明の第2の実施例ではユーティリティから停止指定を行なう方法について説明する。
【0118】
実施構成は第1の実施例と同じであり、図1の構成図をそのまま使用する。
【0119】
ユーティリティ部205によって印刷装置に入った任意のジョブの停止を行ないたい時は、印刷ジョブの停止指定をオペレーションコード(=0x0120)に指定した管理パケットを印刷装置300に送信する。
【0120】
この時、追加データとして、停止を行なう印刷ジョブのジョブIDを指定する。さらに追加データとして、そのジョブの自動再開を希望する時刻も指定する。
【0121】
情報管理部310は、受け取った管理パケットのオペレーションコードによって、印刷ジョブの停止指定だと認識し、停止/再開処理部312に停止の指示を行なう。
【0122】
この場合、第1の実施例とは異なり、停止するジョブは新規追加ではなく、すでにある印刷ジョブが停止ジョブに変化するのであるため、停止/再開処理部312の処理が若干変更される。
【0123】
図9は第2の実施例における停止/再開開処理部312の動作を説明するフローチャートである。第1の実施例における図7のフローチャートとほぼ同等であるが、S1102の読み出し開始しているかどうかのチェックが入る点が異なる。そのジョブの印刷データを1バイトでも読み出し開始してしまっていた場合、そのジョブを停止することはできない。
【0124】
図10は停止処理におけるジョブ読み出しテーブルの状態を表す説明図である。図10(a)において、通常ジョブがジョブ1〜4まで投入された状態で、ジョブ4がユーティリティから停止指定された場合を想定しており、図10(b)において、停止ジョブになったジョブ3はジョブ読み出しテーブルの最後尾に移動されている。
【0125】
PDLトランスレータ部306はジョブ読み出しテーブルに記述された順番に印刷ジョブのトランスレートを行なうことによって、ジョブ1,2,4の順番に印刷処理が行なわれ、停止フラグがTにセットされた停止ジョブ3のみ残ったままになる。この停止しているジョブ3は、再開指定により、停止フラグがFにセットされた後、PDLトランスレータ部306に読み出されることになる。あるいは、再開時刻に達した場合、停止フラグがFにセットされた後、PDLトランスレータ部306に読み出されることになる。
【0126】
〔第3実施形態〕
第2の実施例において、停止処理として図9のS1103とS1104で示したように、そのジョブの順序を最後尾に移動し、かつ、停止フラグにTをセットし、再開指定時刻をセットした。しかし、読み出しテーブルでのジョブの順序はそのままにして、停止フラグをTにセットするのみにするやり方もある。この場合、再開指定が発行されなければ結果として第2の実施例と全く同じことで、停止フラグがTにセットされた停止ジョブ3のみ残ったままになる。
【0127】
ただし、途中でジョブ3に対して再開指定が発行された場合、第2の実施例とは異なる動きになる。
【0128】
すなわち、図10(a)において、ジョブ3を停止指定した場合、ジョブの順序は移動しないので、図11(a)のようになる。そして、ジョブ1の読み出しが完了し、ジョブ2の読み出しを開始したタイミングでは図11(b)のようになる。ここで、ジョブ3に対して再開指定した場合、ジョブの順序を変えずに停止フラグのみFにセットし直すので、図11(c)のようになり、この後ジョブ2,ジョブ3,ジョブ4の順で印刷されることになる。
【0129】
第2の実施例で同様のタイミングで再開を行なった場合には、停止した時点でジョブ3はジョブ読み出しテーブルの最後尾に移動されてしまっているので、ジョブ2,ジョブ4,ジョブ3の順序で印刷され、この点に特徴がある。
【0130】
すなわち、第2の実施例も停止したジョブは再開時点の通常ジョブの最後尾という扱いになるが、第3の実施例の場合は停止したジョブが再開された場合、停止された時の順序あるいはそれに近い順序で通常ジョブに戻ることとができる。
【0131】
〔第4実施形態〕
以上の実施例において、再開時刻について、何年何月何日何時何分何秒というような絶対的な時刻で扱ってきた。しかし、相対的な時間で扱っても構わない。
【0132】
たとえば、印刷装置へのジョブの投入後何時間何分後に再開せよ、というように指定するやり方でも構わない。
【0133】
本実施例は、絶対時刻を保持する時計機能は持っていないが、電源起動時を起点とする相対タイマを持っている印刷装置においては特に有効である。
【0134】
【発明の効果】
以上説明したように、本発明によれば、ユーザがホストコンピュータ上から印刷処理を行なう場合に、停止指定を行なって印刷実行を行なうことによって、停止指定のジョブのデータは格納するのみで印刷せずに惇止しておき、再開指定を行なうことにより、実際の印刷を行なうことが可能である。
【0135】
さらにすでに印刷装置に投入した印刷ジョブに対して、ユーティリティから停止指定を行なうことによって印刷の停止をすることとが可能であるため、ジョブ投入後に印刷の停止をする必要性が発生しても、同様の効果が期待できる。
【図面の簡単な説明】
【図1】本発明の第1の実施例の印刷システムの機能構成を示すブロック図である。
【図2】ジョブパケットの構成を示す説明図である。
【図3】時刻データの構成を示す説明図である。
【図4】ジョブパケット生成部の動作を説明するフローチャートである。
【図5】ジョブプリプロセッサ部の動作を説明するフローチャートである。
【図6】ジョブ読み出しテーブルを表す説明図である。
【図7】停止/再開処理部の動作を説明するフローチャートである。
【図8】停止処理時におけるジョブ読み出しテーブルの状態を表す説明図である。
【図9】第2の実施例における停止/再開処理部の動作を説明するフローチャートである。
【図10】停止処理時におけるジョブ読み出しテーブルの状態を表す説明図である。
【図11】停止/再開処理時におけるジョブ読み出しテーブルの状態を表す説明図である。
【図12】従来の印刷システムの機能構成を示すブロック図である。
【符号の説明】
200 ホストコンピコータ
300 印刷装置
210 インタフェース
Claims (2)
- ホストコンピュータと印刷システムとからなる印刷システムにおいて、前記ホストコンピュータにあって、
ユーザの指示によって、印刷ジョブに停止指定であることを示すパラメータおよび再開時刻を付随させて送信する停止指定手段と、
前記印刷装置にあって時計手段と、
最低1つの印刷ジョブのEDLデータを印刷完了まて格納保持するジョブスプーリング手段と、
前記停止指定手段によって印刷ジョブに付随されたパラメータによって印刷データか停止指定であるかどうかを、印刷データの投入時に直ちに判断するジョブプリプロセス手段と、
前記ジョブプリプロセス手段によって停止指定であると認識された場合、当該停止指定のある印刷ジョブを前記ジョブスプーリング手段から取り出すのを停止し、その印刷ジョブの印刷を停止させておく停止手段と、
さらに前記ホストコンピュータにあって、すでに印刷装置に投入されて印刷を停止しているジョブに対して、ユーザの指示によって印刷を再開する指令を発行する再開指定手段と、
前記印刷装置にあって、前記再開指定手段によって発行された印刷を再開する指令を受信して、あるいは、前記停止指定手段により再開時刻になると、当該印刷を停止しているジョブを前記ジョブスプーリング手段から取り出して印刷を行なう再開手段と、
を有することを特徴とする印刷システム。 - さらに前記ホストコンピュータにあって、
すでに印刷装置に投入された印刷ジョブに対して、ユーザの指示によって任意の印刷ジョブの印刷を再開時刻まで停止する指令を再開時刻を付加して発行するユーティリティ手段と、
前記印刷装置にあって時計手段と、
前記ユーティリティ手段によって発行された印刷を停止する指令を受信して、当該停止指定のある印刷ジョブを前記ジョブスプーリンク手段から取り出すのを停止し、その印刷ジョブの印刷を停止させておく停止手段と、
さらに前記ホストコンピュータにあって、
すでに印刷装置に投入されて印刷を停止している印刷ジョブに対して、ユーザの指示によって印刷を再開する指令を発行する再開指定手段と、
前記印刷装置にあって、
前記再開指定手段によって発行された印刷を御開する指令を受信して、あるいは、前記ユーティリティ手段により指定された再開時刻になると、当該印刷を停止しているジョブを前記ジョブスプーリング手段から取り出して印刷を行なう再開手段と、
を有することを特徴とする印刷システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002173714A JP2004021458A (ja) | 2002-06-14 | 2002-06-14 | 印刷システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002173714A JP2004021458A (ja) | 2002-06-14 | 2002-06-14 | 印刷システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004021458A true JP2004021458A (ja) | 2004-01-22 |
Family
ID=31172869
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002173714A Pending JP2004021458A (ja) | 2002-06-14 | 2002-06-14 | 印刷システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004021458A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8218160B2 (en) | 2007-08-08 | 2012-07-10 | Sharp Laboratories Of America, Inc. | Adaptive automatic printing |
JP2012132984A (ja) * | 2010-12-20 | 2012-07-12 | Konica Minolta Business Technologies Inc | 画像形成装置 |
-
2002
- 2002-06-14 JP JP2002173714A patent/JP2004021458A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8218160B2 (en) | 2007-08-08 | 2012-07-10 | Sharp Laboratories Of America, Inc. | Adaptive automatic printing |
JP2012132984A (ja) * | 2010-12-20 | 2012-07-12 | Konica Minolta Business Technologies Inc | 画像形成装置 |
US9552488B2 (en) | 2010-12-20 | 2017-01-24 | Konica Minolta Business Technologies, Inc. | Image forming apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8233179B2 (en) | Print management system including management of storage status of print data | |
US20040105104A1 (en) | Image-processing apparatus and image-processing system | |
JP4965330B2 (ja) | ネットワークシステム、データ出力方法、出力装置およびプログラム | |
JP4164280B2 (ja) | 周辺機器およびジョブ管理方法およびコンピュータが読み取り可能な記憶媒体およびプログラム | |
JP2001154819A (ja) | 印刷制御装置及び印刷制御方法及び印刷制御プログラムが格納された記録媒体及び印刷制御プログラム製品 | |
JPH1153277A (ja) | 情報処理装置 | |
JP2002202871A (ja) | 印刷システム、印刷制御装置、情報処理方法、制御プログラム | |
JP2011138395A (ja) | サーバ装置及び端末装置及び印刷システムと印刷システムのデータ変換方法 | |
JP2007299225A (ja) | 印刷制御装置及びその制御方法及びコンピュータプログラム | |
JP2010267031A (ja) | Web環境で動作するシステム及びその制御方法 | |
JP2006004077A (ja) | 情報処理装置及びジョブ転送制御方法 | |
US8294924B2 (en) | Printing system, printing method and printing apparatus | |
CN103763449A (zh) | 打印设备、控制打印的方法,以及程序 | |
US8291089B2 (en) | Image processing device, control method therefor, and program | |
US7190469B1 (en) | Printing system for printing interrupt jobs | |
JP2008165653A (ja) | 情報処理装置、代理応答装置、画像形成装置、状態取得方法、記憶媒体、プログラム | |
JP2004021458A (ja) | 印刷システム | |
JP2009037409A (ja) | 印刷データ蓄積装置 | |
JP4995001B2 (ja) | 画像処理装置、情報処理装置、ログ処理方法、方法、プログラム | |
JP3102836B2 (ja) | プリンタシステムおよびプリンタシステムの印字ジョブ処理方法 | |
JPH11134134A (ja) | 印刷システム | |
JP4541581B2 (ja) | 印刷制御装置およびデータ処理方法および記憶媒体 | |
JP2001080143A (ja) | 印刷制御装置及び印刷制御方法及び印刷制御プログラムを格納したコンピュータに読取可能な記録媒体 | |
JP4416220B2 (ja) | 情報処理装置、情報処理方法及びコンピュータ読み取り可能な記憶媒体 | |
JP2003308191A (ja) | 印刷システム、情報処理装置、情報処理方法、制御プログラム |