JP2006159509A - Printing control device, printing control method, printing device, program and recording medium - Google Patents
Printing control device, printing control method, printing device, program and recording medium Download PDFInfo
- Publication number
- JP2006159509A JP2006159509A JP2004351514A JP2004351514A JP2006159509A JP 2006159509 A JP2006159509 A JP 2006159509A JP 2004351514 A JP2004351514 A JP 2004351514A JP 2004351514 A JP2004351514 A JP 2004351514A JP 2006159509 A JP2006159509 A JP 2006159509A
- Authority
- JP
- Japan
- Prior art keywords
- print data
- printing
- job
- state
- 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.)
- Withdrawn
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
Description
本発明は、印刷制御装置及び印刷制御方法、印刷装置、プログラム、記憶媒体に関するものである。 The present invention relates to a print control apparatus, a print control method, a printing apparatus, a program, and a storage medium.
近年、インターネットの普及により、印刷装置もネットワークで使われる形態が一般化してきている。通常、高速機やカラー機などの高価格機ではネットワークインターフェイスは内蔵される傾向にあるが、低価格なモノクロ機の場合には、ネットワークインターフェイスは本体には同梱されず、ネットワークカードモジュールとして別に供給される形態が一般的である。 In recent years, with the widespread use of the Internet, printing apparatuses are also commonly used in networks. Generally, high-priced machines such as high-speed machines and color machines tend to have a built-in network interface. However, in the case of low-priced monochrome machines, the network interface is not included in the main unit and is separately provided as a network card module. The supplied form is common.
この場合、印刷装置本体とネットワークカードモジュールは個々にCPUを持ったインテリジェントな形態として構成され、通常ネットワークカードモジュールは、ネットワーク経由でホストコンピュータから送られる印刷要求に関し、各種プリントサービスの統括制御を行なうプリントサーバ機能を備えている。印刷装置とネットワークカードモジュールは接続インターフェイスを介して通信を行ない所望のサービスを実行する。 In this case, the printing apparatus main body and the network card module are each configured as an intelligent form having a CPU. Usually, the network card module performs overall control of various print services regarding print requests sent from the host computer via the network. It has a print server function. The printing apparatus and the network card module communicate with each other via the connection interface and execute a desired service.
このことは逆に負荷の重いネットワークサービスをネットワークカードモジュールに負わせることが可能となり、相対的に印刷装置本体のCPUや周辺パフォーマンスを下げることが可能となり、印刷装置本体のコスト削減をもたらしている。 On the contrary, this makes it possible to place a heavy network service on the network card module, which can lower the CPU and peripheral performance of the printing device itself, resulting in cost reduction of the printing device. .
従来のネットワークインターフェイスは、例えば、LPR(RFC1179)プロトコルに代表されるような印刷データの送信だけできればよかったが、昨今、印刷装置に対して送信したジョブの状態監視や印刷処理の一時停止や削除と言う印刷ジョブ管理のニーズが高くなり、付加技術として各種の手段が提供されている。 The conventional network interface only needs to be able to transmit print data as typified by the LPR (RFC1179) protocol, for example, but recently, monitoring the status of jobs sent to the printing device and pausing or deleting print processing. The need for print job management increases, and various means are provided as additional technologies.
最も単純な例が、印刷データを送信するポートにジョブ制御データ(ジョブ制御言語=Job Language)を付加する形態である。ジョブ制御言語は印刷データに混在して送信したり、ジョブ制御データ単独で印刷データを送信するポートを共有する形で送信することが可能であるため、サービスポートを増加せずに済み、比較的実装が簡単であり、今日でも多くプリンタで採用されている。 The simplest example is a form in which job control data (job control language = Job Language) is added to a port for transmitting print data. The job control language can be sent mixed with print data, or the job control data can be sent by sharing the port for sending print data alone, so there is no need to increase the service port. It is easy to implement and is still used in many printers today.
このジョブ制御データを応用して、送信する印刷データ内にプリンタをオフライン状態に変化させる制御命令を付加し、印刷データを受信後にプリンタを一旦オフライン状態に移行させ一時的に印刷処理を停止させ、プリンタの操作パネルなどからユーザオペレーションによってオンラインキーを押下した時点で、実際の印刷処理が再開させる手法が知られている。 Applying this job control data, a control command for changing the printer to the offline state is added to the print data to be transmitted, and after receiving the print data, the printer is temporarily shifted to the offline state to temporarily stop the printing process, There is known a method of resuming actual printing processing when an online key is pressed by a user operation from a printer operation panel or the like.
この手法の目的は、ネットワーク介して接続されたプリンタがクライアントから離れた場所にあったり、複数のクライアントから同時に印刷要求が行なわれている場合には、自身の印刷ジョブ処理順序が把握できず折角印刷したにもかかわらず、プリンタに印刷された文書がそのまま放置されてしまったり、誤って他人に出力文書が持ち去られてしまうといった問題を解決する手段として用いられている。 The purpose of this method is that if the printer connected via the network is at a location away from the client, or if multiple clients request printing at the same time, the processing order of their own print jobs cannot be determined. It is used as a means for solving problems such as a document printed on a printer being left as it is, or an output document being accidentally taken away by another person.
例えば、上述に関連する先行技術として、特許文献1及び特許文献2には、所定の条件に従って、オフラインモードからオンラインモードへ自動的に移行させることが開示されている。
しかしながら、上述の技術により、オフライン状態に移行した後、印刷データを送信したユーザが、オフライン状態を解除するためのオンラインキーを押下しないままで放置した場合、後続の印刷データは処理待ちの状態のまま滞留するという問題が生じる。 However, if the user who sent the print data after leaving the offline state by using the above-mentioned technique leaves it without pressing the online key for canceling the offline state, the subsequent print data is in a state of waiting for processing. The problem of staying as it is occurs.
また、所定の条件に従って、オフラインモードからオンラインモードへ自動的に移行させると、ユーザオペレーションによって印刷処理が再開されることを所望した印刷ジョブをユーザオペレーションなしに印刷処理することになる。 In addition, when the mode is automatically shifted from the offline mode to the online mode in accordance with a predetermined condition, a print job whose print processing is desired to be resumed by a user operation is printed without the user operation.
本発明は、上記の問題を解決するべく、適切なユーザオペレーションがなされなかった印刷ジョブの印刷処理を進めてしまうことなく、後続の印刷処理の滞留を解消することを目的とする。 In order to solve the above-described problem, an object of the present invention is to eliminate the stagnation of subsequent print processing without proceeding with print processing of a print job for which an appropriate user operation has not been performed.
上記目的を解消するべく、本発明にかかる印刷制御装置は、主として以下の構成を備えることを特徴とする。 In order to solve the above-described object, a printing control apparatus according to the present invention is mainly characterized by having the following configuration.
すなわち、ネットワークを介して接続する情報処理装置で生成された印刷データを、印刷装置に処理させるための印刷制御装置は、
前記情報処理装置から送信される印刷データに基づいて、印刷処理が停止されているオフライン状態に移行させるコマンドが当該印刷データに含まれているか判定する判定手段と、
前記判定手段の判定結果に従い、前記コマンドが前記印刷データに含まれている場合、前記印刷装置をオフライン状態に移行させるオフライン状態移行手段と、
前記オフライン状態に移行させた前記印刷装置について、当該オフライン状態が解除されたかを監視する状態監視手段と、
規定時間内に前記オフライン状態が解除された場合、前記印刷データの処理を前記印刷装置に実行させ、当該規定時間内に当該オフライン状態が解除されない場合、当該印刷データを削除して、当該オフライン状態を解除する制御手段と
を備えることを特徴とする。
That is, a print control apparatus for causing a printing apparatus to process print data generated by an information processing apparatus connected via a network is:
Determination means for determining whether the print data includes a command for shifting to an offline state in which print processing is stopped, based on print data transmitted from the information processing apparatus;
According to the determination result of the determination unit, when the command is included in the print data, an offline state shift unit that shifts the printing apparatus to an offline state;
Status monitoring means for monitoring whether the offline state has been released for the printing apparatus that has been shifted to the offline state;
When the offline state is canceled within a specified time, the processing of the print data is executed by the printing apparatus. When the offline state is not canceled within the specified time, the print data is deleted and the offline state is deleted. And a control means for releasing.
本発明によれは、適切なユーザオペレーションがなされなかった印刷ジョブの印刷処理を進めてしまうことなく、後続の印刷処理の滞留を解消することが可能になる。 According to the present invention, it is possible to eliminate stagnation of subsequent print processing without proceeding with print processing of a print job for which an appropriate user operation has not been performed.
以下、本発明の実施の形態を図面に基づいて説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
<システム構成>
図1は、本発明の実施形態に係るプリントシステムの全体構成を示すブロック図である。本プリントシステムは、情報処理装置としてのクライアントコンピュータ(以下、単に「クライアント」ともいう)101〜103と、印刷装置(プリントデバイス)としてのネットワークプリンタ104、105とを含み、これらが互いに接続されていることにより、全体としてネットワークを構成している。
<System configuration>
FIG. 1 is a block diagram showing the overall configuration of a printing system according to an embodiment of the present invention. The print system includes client computers (hereinafter also simply referred to as “clients”) 101 to 103 as information processing apparatuses, and
クライアントコンピュータ101〜103には、印刷制御プログラムが実行可能に格納されており、本プリントシステムに含まれるネットワークプリンタ104、105を管理する機能のほか、ネットワークで使用されるファイルを蓄積したり、ネットワークの使用状態を監視したりする機能を有する。具体的には、クライアントコンピュータ101〜103は、自身により印刷ジョブを作成し、ネットワークプリンタ104、105のスケジューラにスケジュール要求を発行する機能、ネットワークプリンタ104、105のスケジューラからの指示により、印刷データの転送を開始する機能を有する。
The
ネットワークプリンタ104、105は、クライアントコンピュータ101〜103から、印刷データを含む印刷ジョブを受信し、受信した印刷ジョブを解析して印刷する物理的な装置としてのプリントデバイスである。ネットワークプリンタ104、105としては、電子写真方式を採用したレーザービームプリンタやインクジェット方式を採用したインクジェットプリンタや熱転写方式を利用したプリンタ等、あらゆる方式の印刷装置を採用することができる。
The
また、ネットワークプリンタ104、105は、複数のクライアントコンピュータ101〜103からの印刷要求を受け付け、受け付けた印刷要求の順序を決定し、印刷指示を発行する機能、ネットワークプリンタ104、105に転送された印刷ジョブ、ネットワークプリンタ104、105の状態を監視し、印刷の終了やプリンタ状態をクライアント(コンピュータ)101〜103に通知する機能を有する。
The
なお、本プリントシステムに含まれる装置間の通信は、イーサネット(登録商標)ケーブルなどを利用した有線通信でもよいし、電波や光などを利用した無線通信でもよい。 Note that communication between apparatuses included in the print system may be wired communication using an Ethernet (registered trademark) cable or the like, or wireless communication using radio waves or light.
<プリントサーバ及びクライアントの構成>
図2は、図1に示したクライアントコンピュータ101〜103のハードウェア構成を説明するブロック図である。
<Configuration of print server and client>
FIG. 2 is a block diagram illustrating a hardware configuration of the
図2において、CPU200は、HD(ハードディスク)205に格納されているアプリケーションプログラム、プリンタドライバプログラム、OSや印刷制御プログラム等を読出して実行し、RAM202にプログラムの実行に必要な情報、ファイル等を一時的に格納制御を行うための制御手段である。
In FIG. 2, a
ROM201は、基本I/Oプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する記憶手段である。RAM202は、CPU200の主メモリやワークエリア等として機能する一時記憶手段である。 FD(フロッピー(登録商標)ディスク)ドライブ203は、後述する図5に示すように記憶媒体としてのFD204に記憶されたプログラム等を本コンピュータシステムにロードするための記憶媒体読み込み手段である。なお、クライアントコンピュータ101〜103は、FDドライブ203に代えて、或いはFDドライブ203と共に、他の記憶媒体読込手段を備えてもよい。他の記憶媒体としては、CD−ROM、CD−R、CD−RW、PCカード、DVD、ICメモリカード、MO、メモリスティック等、コンピュータが読み取り可能なあらゆる記憶媒体が挙げられる。
The
HD205は、大容量メモリとして機能する外部記憶手段であり、アプリケーションプログラム、プリンタドライバプログラム、OS、印刷制御プログラム、及び関係プログラム等を格納している。さらに、スプール手段であるスプーラはここに確保される。なお、クライアント(コンピュータ)101〜103ではスプール手段としてスプーラが確保される。
The
キーボード206は、ユーザがプリントサーバ101やクライアント107、108に対して、デバイスの制御コマンドの命令等を入力指示するための指示入力手段である。
The
ディスプレイ207は、キーボード206から入力したコマンドや、プリンタ104、105の状態等を表示する表示手段である。尚、実際にはクライアントコンピュータ101〜103上で稼動するオペレーティングシステムを介して表示手段に表示指示がなされ、このオペレーティングシステムに本印刷処理プログラムによりリソースファイルの表示指示が行われ、後述する各表示が実現される。208はシステムバスであり、クライアント(コンピュータ)101〜103としてのコンピュータ内のデータの流れを司るものである。
A
またインタフェース209は、入出力手段であり、プリントサーバ101またはクライアント107,108は、インタフェース209を介してネットワーク上の他の装置とのデータのやり取りを行う。
The
<メモリマップ等の説明>
図3は、図2に示したRAM202のメモリマップの一例を示す図であり、印刷制御プログラムが、RAM202にロードされ実行可能となった状態のメモリマップである。
<Explanation of memory map>
FIG. 3 is a diagram illustrating an example of a memory map of the
印刷制御プログラム及び関係データは、予めFD204からHD205にインストールされて、HD205からRAM202にロードするようにしてもよいし、FD204から直接RAM202にロードして実行させてもよい。さらに、印刷制御プログラムをROM201に記憶しておき、これをメモリマップの一部となすように構成し、直接CPU200で実行することも可能である。また、以上の各装置と同等の機能を実現するソフトウェアをもって、ハードウェア装置の代替として構成することもできる。
The print control program and related data may be installed in advance from the
印刷制御プログラムは、クライアントにおいては、印刷データを転送したり、印刷ジョブの印刷先の変更を指示したり、印刷順序を変更したりする指示をするための制御を行うプログラムである。 The print control program is a program in the client that performs control for transferring print data, instructing to change the print destination of the print job, or instructing to change the print order.
301は基本I/Oプログラムを記憶するための領域である。基本I/Oプログラムは、装置(プリントサーバ101またはクライアント107,108)の電源がONされたときに、HD205からOSがRAM202に読み込まれ、OSの動作を開始させるIPL(イニシャルプログラムローデイング)機能などを有しているプログラムである。
302はOS(オペレーティングシステム)を記憶する領域であり、303は印刷制御プログラムを記憶する領域である。304は、関係データを記憶する領域である。305はワークエリアで、CPU200が各種のプログラムを実行するための領域である。
An
図4は、図2に示したFD204のメモリマップの一例を示す図である。図4において、400はFD204のデータ内容であり、データの情報を示すボリューム情報401と、ディレクトリ情報402と、印刷制御プログラム403と、その関係データ404を含んでいる。
FIG. 4 is a diagram illustrating an example of a memory map of the
図5は、本発明の実施形態に関わるプリンタのハードウェア構成を説明するブロック図である。500はプリンタで、その内部は、ネットワークプリンタサーバ520と、プリンタコントローラ519からなる、異なる制御系を司る機器で構成されている。ネットワークプリントサーバ520において、501はネットワークプリントサーバ用CPUで、書き換え可能なFlashROM503に記憶された制御プログラムに基づいてシステムバス504に接続されるネットワークコントローラ(LANC)505を介してローカルエリアネットワーク(LAN512)に接続されたホストコンピュータ等の複数の外部装置(不図示)と所定のネットワーク通信プロトコルを用いて、外部装置から送られる印刷データやプリンタ制御命令等の各種データ送受信要求を統括的に制御し、拡張インタフェースコントローラ(EXPC)507を介して接続されるプリンタコントローラ519に対して適切なデータ転送制御を行なう。
FIG. 5 is a block diagram illustrating the hardware configuration of the printer according to the embodiment of the present invention. A
RAM502はCPU501の主メモリ、ワークエリア等の一時記憶領域をして用いられる。LED506はネットワークプリントサーバの動作状態を示す表示部として用いられており、例えば、ネットワークコントローラ(LANC)505とローカルエリアネットワーク(LAN)512の電気的な接続状態(LINK)やネットワーク通信モード(10Baseや100Base、全二重、半二重)等の各種動作状態をLEDの点滅パターンや色で示すこと可能となっている。
The
更に、ネットワークプリントサーバ520とプリンタコントローラ519を繋ぐ拡張インタフェース517は、図示しないコネクタで構成されておりネットワークプリントサーバ520のみが着脱し、同じ構成を持つ別のプリンタ500にネットワークプリントサーバ520を装着することも可能な構成となっている。
Further, an
プリンタコントローラ519において、508はプリンタコントローラ用CPUで、ROM509に記憶された制御プログラム等あるいはディスクコントローラ(DKC)515を介して接続された外部メモリ510に記憶された制御プログラムやリソースデータ(資源情報)等に基づいてシステムバス511に接続される各種デバイスとのアクセスを統括的に制御し、拡張インタフェースコントローラ(EXPC)513を介して接続されるネットワークプリントサーバ520から受信される印刷データを基にラスタコントローラ512によって出力画像情報を生成し、プリントエンジン516に対して画像信号を出力する。
In the
514はCPU508の主メモリ、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。
518は操作パネル(操作部)でプリンタ500の動作モード等の設定や印刷データの取り消し等の操作を行なうためのボタンおよびプリンタ500の動作状態を示す液晶パネルやLED等の表示部が配されている。
なお、本図で示したプリンタエンジン516は既知の印刷技術を利用するものであり、好適な実施形態として、例えば電子写真方式(レーザービーム方式)やインクジェット方式、昇華方(熱転写)方式等が挙げられる。
The
次に、本プリントシステムのクライアントのソフトウェア構成について説明する。 Next, the software configuration of the client of this print system will be described.
図6は、クライアント101〜103におけるソフトウェア構成の一例を示す図である。それぞれの構成間の矢印は、アプリケーションから発行された描画コマンドを含む印刷ジョブが、どのように処理されるかを示したものである。また、各ブロックで示されたソフトウェア構成は、図2のCPU200によって実行され、所望の機能を実現する。
FIG. 6 is a diagram illustrating an example of a software configuration in the
通常、Microsoft Word(登録商標)などの一般的なアプリケーションプログラム601は印刷の指示を受け付けると、一連の描画コマンドをOSを介して生成する。OSを介して生成された描画コマンドを受け取ったPDLドライバ602は、一連の描画コマンドに基づいてネットワークプリンタ104、105で解釈可能なPDLファイルを含む印刷ジョブを生成する。なお、以下の説明ではPDLドライバを例に説明を行うが、これに限定されるものではなく、例えば、BDL(Band description Language)や、圧縮ビットマップを作成するプリンタドライバ、或いは、アプリケーション及びOSによりプリンタドライバを介さずに印刷データを生成する形態などにも適用可能であることはいうまでもない。
In general, when a
PDLドライバ602は、プリントデバイスへ印刷ジョブを送信するためにスプーラ603に渡す。
The
ここではOSをウィンドウズ(登録商標)と仮定しているのでスプーラ603はウィンドウズ(登録商標)スプーラである。ただし、本発明を適用するコンピュータのOSはWindows(登録商標)に限定されるものではなく、描画命令を備えるものであれば他のOSも適用可能であることは言うまでもない。
Here, since the OS is assumed to be Windows (registered trademark), the
スプーラ603は、ユーザがユーザインタフェースを介して選択し指示したジョブ制御ポートモニタ604に印刷ジョブを渡して、ネットワークプリンタ104〜105等のプリントデバイスに送信させる手順をとる(矢印a)。
The
ここでは、ユーザはあらかじめジョブ制御プリントサービス605に印刷データを転送する、ジョブ制御ポートモニタ604を指定して印刷を指示したものとして説明を進める。
Here, the description will proceed on the assumption that the user has designated the job
また、プリンタドライバインタフェースを介して設定された用紙サイズ、ステープル指示等の印刷設定情報も、ジョブ制御ポートモニタ604に送信される。ジョブ制御ポートモニタ604はジョブ制御プリントサービス605に送信する(矢印b)。
In addition, print setting information such as a paper size and a staple instruction set via the printer driver interface is also transmitted to the job
ジョブ制御プリントサービス605は、転送された印刷ジョブ及びデバイスの状態を管理する機能を備える。また、プリントデバイスから通知されるデバイス状態やジョブの状態などの情報を管理したり、また、プリントデバイスに対して所定の命令をする機能も備える。これは、複数のネットワークプリンタ104〜105のデバイス情報やジョブ情報を管理する機能に相当する。
The job
そして、印刷データをプリンタデバイス606に送信する前に、プリンタデバイス606が持つ印刷ジョブの順序管理機能に印刷の要求を発行し、順序管理機能に基づき順番が到来した場合には、プリンタデバイス606からの印刷指示により、ネットワークプリンタ104〜105に印刷データを送信する(矢印c、d、e)。
Before sending the print data to the
プリンタデバイス606は、印刷データの完了を確認すると印刷完了の通知をジョブ制御プリントサービス605に通知(矢印f)したり、また、プリンタデバイス606の状態を通知する(矢印f)。
Upon confirming the completion of the print data, the
プリントマネージャ607は、ユーザが、ジョブ制御プリントサービス605内部でプリントジョブがどのような状態にあるかを調べたり、プリントジョブを操作したりするためのユーザインタフェースを提供するプログラムである。プリントマネージャー607は、ジョブ制御プリントサービス605のソフトウェアのインタフェース(API:Application Program Interface)を介して、ジョブ制御プリントサービス605と情報・指示をやり取りしている。
The
そして、主に、ジョブ制御プリントサービス605が管理するネットワークプリンタ104〜105の状態情報をイベントとして取得する機能を備える。イベントの通知の種別としては、トナー残量が少なくなった警告、クライアントとデバイスとの通信障害、メモリ不足、排紙トレイ満載などのエラー/警告情報の通知や、エラー状態から正常状態に復帰した正常情報の通知などが想定される。ここでのジョブ制御プリントサービス605はネットワークを介して通信可能な各デバイス(印刷装置)の印刷実行中、電力制御状態、障害情報(紙ジャム)等のステータスの通知を受け付ける機能を備える。
It mainly has a function of acquiring status information of the
更に詳細な処理としては、プリントマネージャー607がジョブ制御プリントサービス605に対してデバイスを指定したイベントを発行し、ジョブ制御プリントサービス605は発行されたイベントに基づくデバイスのステータスを認識して、監視に基づく結果をプリントマネージャー607に通知する。
As more detailed processing, the
<印刷ジョブの流れ>
次に、図7を用いてアプリケーション601からプリンタデバイス606、606Aまでの印刷ジョブの流れについて説明する。ここで、図6と同じソフトウェア構成について同じ参照番号を付与しており、その機能については詳細な説明は省略する。図7に示すように、概念的には、PDLドライバ602、スプーラ603、ジョブ制御ポートモニタ604は、プリンタデバイス606、606Aごとに用意されている。OSがウィンドウズ(登録商標)の場合には、これらをまとめてウィンドウズ(登録商標)プリントシステム700と称する場合もある。
<Print job flow>
Next, the flow of a print job from the
ジョブ制御プリントサービス605には、プリンタデバイス606、606Aに対応する数のプリントキュー701、701A及び出力ポート702、702Aが含まれている。これらのプリントキューや出力ポート702、702Aは、それぞれ図18に示す1801、1802に示されるようなテーブルでジョブ制御プリントサービス605が管理している。
The job
この出力ポートには対応する印刷装置のIPアドレス又はDNS(Domain Name System)で使用されるネームが関連付けられている。そして、このIPアドレス又はネームに基づき、ジョブのスケジュール要求先やジョブの送信先が特定されジョブの送信(出力)が行なわれる。 The output port is associated with an IP address of a corresponding printing apparatus or a name used in a DNS (Domain Name System). Based on the IP address or name, the job schedule request destination and job transmission destination are specified, and the job is transmitted (output).
印刷を行なう場合、アプリケーション601はプリンタを指定して印刷指示を発行する。この印刷指示に基づいてPDLドライバ602によって生成された印刷ジョブがジョブ制御ポートモニタ604からジョブ制御プリントサービス605に渡されると、その印刷ジョブ情報は、まずプリントキュー701に保持され、出力ポート702に印刷ジョブを受け付け指示を出す。出力ポート702は、印刷するジョブを受け付けると、出力ポートに設定されたIPアドレスに該当する、プリンタデバイス606の後述するスケジューラに対してスケジュールの要求を発行する。プリンタデバイス606の後述するスケジューラは、自身が持つスケジューリング機能に基づいて、複数のクライアント101〜103から受け付けたジョブのスケジューリング処理を行い、出力ポート702に対して印刷指示を発行する。印刷指示を受け付けた出力ポート702はプリンタデバイス606に印刷データを送信する。
When printing, the
図8は、本発明の実施形態に好適な印刷システムにおけるプリンタ500内の制御機器であるネットワークプリントサーバ520およびプリンタコントローラ519の各記憶デバイスに記憶された制御プログラム内のソフトウェア構成を説明するブロック図である。
FIG. 8 is a block diagram illustrating a software configuration in a control program stored in each storage device of the
尚、各制御プログラムは各制御機器のCPU501、508によってプログラムが解析され処理される。
Each control program is analyzed and processed by the
801はネットワークプリントサーバ520の基本的なデータの入出力制御を統括するオペレーティングシステムである。更に、オペレーティングシステム801内にはプログラム/データ記憶部808との入出力制御を行なうファイルシステム805、プリンタコントローラ519と拡張インタフェース517を介して通信制御を行なう拡張インタフェースドライバ807、ローカルエリアネットワーク(LAN)512の通信媒体を介して不図示のホストコンピュータ等の外部装置と通信を行なうネットワークインタフェースドライバ806を内包している。
802はアプリケーションプログラムインタフェース(API)であり、ネットワークプリントサーバ520で動作するユーザアプリケーション803やプリンタ500やユーザアプリケーションの登録・管理を行う管理アプリケーション等のアプリケーションプログラムに対してオペレーティングシステムが備える各種機能を提供する。またアプリケーションプログラムインタフェース802で提供される機能は、印刷データの送受信機能を提供するデータ転送API、ビットマップ画像や表示メッセージ等のリソースデータの入出力制御を行なうリソース制御API、プリンタ500の再起動や設定値の初期化や設定等の制御を行なうプリンタ制御API、印刷ジョブの取り消しや再印刷指示などを制御するジョブ制御API、ネットワークプリントサーバ520の再起動や設定値の初期化や設定、およびアプリケーションプログラムの起動、登録、削除を行なうプリントサーバ制御APIを備える。
812はプリンタコントローラ519の各種処理制御を統括するオペレーティングシステムであり、内部にプリントエンジンとの通信制御を行なうプリントエンジン制御部814およびネットワークプリントサーバ520から参照されるビットマップ画像やエラーメッセージ等の機種依存リソースおよびネットワークプリントサーバ上で動作する機種依存アプリケーションプログラム等を記憶する機種依存リソース/プログラム記憶部との入出力制御を行なうファイルシステム815を内包している。
813は拡張インタフェース制御部であり、拡張インタフェース517を介してネットワークプリントサーバ520との通信制御を行なう。さらに拡張インタフェース制御部は、制御種別毎に印刷データの入出力を制御するデータ転送論理インタフェース、機種依存リソース/プログラム記憶部509に記憶された各種データの入出力を制御するリソース制御論理インタフェース、プリンタ500の再起動や設定値の初期化や設定等の制御を行なうプリンタ制御論理インタフェース、印刷ジョブの取り消しや再印刷指示などを制御するジョブ制御論理インタフェースを備えており、各論理インタフェースを介してネットワークプリントサーバ520から要求された命令をオペレーティングシステム812に対して転送し、その処理結果をネットワークプリントサーバ520に対して返信する。
811は、ネットワークインターフェースドライバ806がLAN512を介してクライアント101〜103からの通知を受け付けると受信の通知を受け付けるネットワーク制御部であり、どのクライアントからの通信を判断することや、通信の制御を行うことができるモジュールである。
A
810は、クライアントが送信する印刷データを受け付けるプロトコルを制御するモジュール(LPD/RAW)であり、受け付けた印刷データをプリンタコントローラに渡すことができる。
また、アプリケーション803は、プリンタコントローラ519のプログラム記憶部816またはネットワークプリンタサーバ520のプログラム記憶部808に格納されており、プリンタ500が起動するとプログラム記憶部808または、816に格納されたアプリケーションが持つライセンスと、ライセンス記憶部809やライセンス記憶部817が持つライセンスとが比較し一致しているかどうかを判断する。一致していた場合は適正アプリケーションプログラムであると判断し、アプリケーションプログラムはネットワークプリントサーバ520のRAM514にロードされる。
The
次に、スケジューリング機能やクライアント101〜103から受け付けた印刷ジョブの管理機能を有するプリンタデバイス上のユーザアプリケーションであるデバイススケジューラ900のソフトウェア構成について、図9を参照して説明する。
Next, the software configuration of the
901は、印刷するクライアント101〜103の接続状況や、クライアントに通知すべき情報を管理する通信接続管理部901であり、接続しているクライアント情報1002をクライアント管理キューで管理する。通信接続管理部901は、プログラムアプリケーションインターフェース802のデータ転送API、ネットワークインターフェースドライバ806(図8)を経由してクライアントと通信を行う。
A communication
902は、クライアント101〜103から受け付けた印刷ジョブのスケジューリングを行うスケジュール管理部であり、ジョブ管理部903、デバイス管理部904を有する。
A
903は、クライアント101〜103が発行したスケジュール要求や、クライアント101〜103が印刷したジョブを管理するジョブ管理部903である。ジョブ管理部903は、クライアント101〜103が印刷するジョブの情報1102(図11を参照)をジョブ管理キュー1101(図11を参照)で管理している。
A
904は、プリンタコントローラ519が持つプリンタの状態や受け付けた印刷ジョブの状態をイベントハンドラ905経由で受け付けるデバイス管理部であり、プリンタコントローラ519から受け付けたイベントを通信接続管理部901やジョブ管理部903に通知する。
A
スケジュール管理部902は、ジョブ管理部903、デバイス管理部904における管理結果に従い、クライアント101〜103から受け付けた印刷ジョブの予約登録を行い、印刷ジョブの処理状況やデバイスの状態等から予約登録の順序を更新して、印刷ジョブの処理順序を制御するためのスケジューリングを行うことが可能である。
The
図10は、通信管理部901が管理する、接続クライアント101〜103のクライアント情報1002と、複数の接続するクライアント101〜103のクライアント情報1002を管理するクライアント管理キュー1001を示す図である。
FIG. 10 is a diagram showing the
1002は、接続するクライアント毎に接続管理部が割り振ったクライアントID、接続するクライアント101〜103のIPアドレス、接続するクライアントが登録したイベントの種類などの情報を持つクライアント情報である。イベントの種類とは、プリンタコントローラが発行するデバイス状態のイベントやジョブ状態のイベントの種類を表す。 1001は、接続したクライアント101〜103のクライアント情報をキューの形式で保持する管理キューである。クライアントとのセッションが開始されると、該当するクライアントの情報が本管理キューに登録され、切断すると該当するクライアント情報が削除されるようになっている。
図11は、クライアント101〜103が印刷すべく発行したスケジュール要求に付加するジョブ情報1102と、複数発生するジョブ情報を管理するジョブ管理キュー1101を示す図である。
FIG. 11 is a diagram showing
1102は、クライアント101〜103が印刷を開始するために発行するスケジュール要求に付加される印刷ジョブの情報である。このジョブ情報1102は、印刷ジョブのドキュメント名、ジョブ管理部903が発行したジョブID、クライアントで印刷を開始したユーザ名、ジョブのページ数、印刷ジョブの状況を表すジョブ状態、クライアント101〜103が転送する印刷データに含まれるジョブデータID、印刷したクライアントのIPアドレスが登録される。
ジョブ状態は、クライアント101〜103が印刷のスケジュール要求を発行してからジョブがプリンタから無くなるまでの状態を表しており、印刷待機中、スケジュールアップ状態、転送中、転送済み、印刷完了などの状態が存在する。
The job status represents a status from when the
ジョブデータIDは、印刷データに含まれるジョブのIDで、プリンタコントローラ519内でのジョブ状態を通知するときなど、付加されるIDである。
The job data ID is an ID of a job included in the print data, and is an ID added when a job status in the
1101は、複数のジョブ情報1102を管理する管理キューであり、クライアント101〜103からのスケジュール要求を受け付けるとジョブ情報1102が管理キューに登録され、印刷ジョブが印刷終了すると、該当するプリンタ情報が削除されるようになっている。
A management queue 1101 manages a plurality of
図12は、クライアント101〜103のジョブ制御プリントサービス605が、ジョブを受け付け後、プリンタデバイス606にスケジュール要求を発行するところから、プリンタデバイス606で印刷が終了するところまでのやり取りの流れを説明する図である。
FIG. 12 illustrates a flow of communication from when the job
ジョブ制御プリントサービス605は、印刷データを受け付けると、デバイススケジューラ900とセッション接続を開始する。クライアントの情報を通知する接続要求コマンド、ジョブ/デバイス状態を通知してもらうためのイベント登録、デバイススケジューラがスケジュール管理するジョブの情報を取得するジョブリスト取得コマンドを発行する。
When receiving the print data, the job
デバイススケジューラは、接続要求を受け付けると、クライアント情報をクライアント管理キューに登録し、イベントの登録を受け付けると該当するクライアント情報の登録イベントに設定する。ジョブリスト要求を受け付けると、ジョブ管理キューに登録されているジョブ情報のリストを送信する。 When the device scheduler accepts a connection request, it registers the client information in the client management queue, and when accepting the event registration, it sets the corresponding client information registration event. When a job list request is received, a list of job information registered in the job management queue is transmitted.
次に、クライアント101〜103が印刷を予約するためのスケジュール要求のコマンドを発行する。デバイススケジューラ900はスケジュール要求を受け付けると、ジョブ管理キューにジョブ情報を登録する。ジョブ情報には、ドキュメント名等の情報を設定する。デバイススケジューラ900は、後述する判断でプリンタデバイス606が印刷データを受け付けられるようになるとスケジュールUPを発行し、ジョブ制御プリントサービス605に対して印刷データの送信を開始するように促す。
Next, the
また、デバイススケジューラ90がスケジュールUPを発行すると、ジョブ情報のジョブ状態をスケジュールUP状態に更新する。 When the device scheduler 90 issues a schedule UP, the job status of the job information is updated to the schedule UP status.
ジョブ制御プリントサービス605は、スケジュールUPを受け付けるとLPD/RAW810に印刷データの転送を開始し、転送が始まるとデバイススケジューラに対して転送開始の通知を行う。デバイススケジューラは、転送開始通知を受けると、ジョブ情報のジョブ状態に転送中の状態に更新する。
The job
LPD/RAW810が印刷データを受け付けるとプリンタコントローラにデータを転送し、プリンタコントローラで印刷が開始される。
When the LPD /
プリンタコントローラ519は、印刷が開始されるとジョブの状態をデバイススケジューラ900に通知する。デバイススケジューラ900は、クライアント情報の登録イベントの情報を基に、印刷制御プリントサービス605にジョブの印刷状態を通知する。
The
また、ジョブ制御プリントサービス605は印刷データの転送が終了するとデバイススケジューラ900に対して、転送終了通知を送信する。デバイススケジューラ900は、転送終了通知を受けると、ジョブ情報のジョブ状態に転送済の状態に更新する。
The job
プリンタコントローラ519で印刷処理が終了すると、ジョブの状態として印刷完了の通知をデバイススケジューラ900に通知する。デバイススケジューラ900は、クライアント情報の登録イベントの情報を基に、ジョブ制御プリントサービス605にジョブの印刷完了の状態を通知する。
When the
ジョブ制御プリントサービス605は、上記の印刷完了通知により印刷が完了したことを確認すると、デバイスからの通知が必要なくなるので、デバイススケジューラ900からのイベント通知の登録の解除要求を発行する。イベント解除要求を受け付けた、デバイススケジューラ900は、クライアント情報の登録イベントにイベントを通知しない旨の情報を設定する。その後、ジョブ制御プリントサービス605は、デバイススケジューラ900との接続を終了するための切断要求を発行し、セッションを終了する。
When the job
デバイススケジューラ900は、切断要求を受け付けると、クライアント管理キューから該当するクライアント情報を削除し、該クライアントとの処理を終了する。
When the
図13は、クライアント101〜103のジョブ制御プリントサービス605からスケジュール要求を受信し、スケジュールUPから印刷処理を完了するまでのデバイススケジュラ900の処理の流れを説明するフローチャートである。
FIG. 13 is a flowchart for explaining the process flow of the
ここでは特にクライアント101〜103から送信される印刷データ内にプリンタ状態をオンライン状態からオフライン状態に移行させる命令(コマンド)を含んだ印刷データ(以下、「オフラインジョブ」と表記する)を受信した場合の処理方法についても併せて説明する。ここで、オフライン状態とは、印刷処理が停止されている状態をいう。また、このときに、併せて、印刷データの受信処理が停止されるようにしてもよい。また、オンライン状態とは、当該オフライン状態が解除されている状態を言う。
Here, especially when print data (hereinafter referred to as “offline job”) including a command (command) for shifting the printer state from the online state to the offline state is received in the print data transmitted from the
まず、ステップS1301で、クライアント101〜103のジョブ制御プリントサービス605からスケジュール要求を受信すると、ステップS1302において既にスケジュール要求を受信しスケジュールUP待ちの要求が存在するかを判断する。
First, in step S1301, when a schedule request is received from the job
スケジュールUP待ちの要求が存在する場合には(S1302−YES)、処理をステップS1303に進め、スケジュールUP待ちの要求を管理する印刷予約キューの最後尾に登録を行なう。印刷予約キュー内に登録されたスケジュール要求は、印刷予約キュー最上位のスケジュール要求されたジョブの印刷処理が完了する度に順位が更新される。 If there is a request waiting for a schedule UP (S1302-YES), the process proceeds to step S1303, and registration is performed at the end of the print reservation queue that manages the request waiting for the schedule UP. The order of the schedule request registered in the print reservation queue is updated each time the print processing of the job for which the highest schedule is requested in the print reservation queue is completed.
ステップS1304で、当該スケジュール要求の予約順序が印刷予約キューの最上位になったかを判断し、最上位に位置した時点(予約到来)で、スケジュールの実行を決定し、処理をステップS1305に進め、該当するスケジュール要求を送信したクライアントにスケジュールUP要求を送信する。 In step S1304, it is determined whether the reservation order of the schedule request is at the top of the print reservation queue. When the reservation request is positioned at the top (reservation arrival), execution of the schedule is determined, and the process proceeds to step S1305. A schedule UP request is transmitted to the client that has transmitted the corresponding schedule request.
ステップS1306で、スケジュールUP要求を送信したクライアントからの印刷データの受信および受信した印刷データをプリンタコントローラ519への転送を行なう。
In
クライアントから送信される印刷データがオフラインジョブの場合、プリンタコントローラ519に印刷データが転送され、印刷データに含まれるオンライン状態からオフライン状態に移行する命令を解釈した時点でただちにプリンタをオフライン状態に移行し、再度プリンタ状態がオンライン状態に復帰するまで当該印刷データの印刷処理を中断する仕組みとなっている。
If the print data transmitted from the client is an offline job, the print data is transferred to the
ステップS1307でプリンタの状態を判断し、プリンタがオフライン状態に変化した場合には(S1307−YES)、ステップS1308においてクライアントにオフライン状態変化イベント通知を送信し、ステップS1309でオフライン状態からオンライン状態へ復帰するまでの時間を計測するためのタイマーを初期化する。 In step S1307, the printer status is determined. If the printer changes to the offline state (YES in step S1307), an offline state change event notification is transmitted to the client in step S1308, and the offline state is returned to the online state in step S1309. Initialize a timer to measure the time until.
ステップS1310において規定された時間内にプリンタのオンラインキーが押下されプリンタ状態がオンライン状態に復帰したかを判断し、オンライン状態に復帰した場合には(S1310−YES)、処理をステップS1311に進め、プリンタコントローラ519での印刷処理完了を判断し、印刷処理が完了した時点でステップS1312に進み、クライアントに印刷完了通知を送信し処理を終了する。
In step S1310, it is determined whether the printer online key has been pressed within the time specified in step S1310 and the printer state has returned to the online state. If the printer has returned to the online state (S1310—YES), the process proceeds to step S1311. Completion of the printing process in the
一方、ステップS1310の判定において、プリンタのオンラインキーが押下されずプリンタ状態がオフライン状態の場合には(S1310-NO)、ステップS1313でタイマー値が規定時間を超えたかを判断し、タイムアウトと判断した場合には(S1313−YES)、ステップS1314へ進み、受信した印刷データの削除処理を行ないプリンタ状態をオンライン状態へ移行させた後、ステップS1315においてクライアントに当該印刷ジョブがキャンセルされたことを通知し処理を終了する。 On the other hand, if it is determined in step S1310 that the online key of the printer is not pressed and the printer state is offline (NO in step S1310), it is determined in step S1313 whether the timer value has exceeded a specified time, and it is determined that a timeout has occurred. In this case (S1313-YES), the process proceeds to step S1314 to delete the received print data and shift the printer state to the online state. Then, in step S1315, the client is notified that the print job has been canceled. The process ends.
なお、ステップS1313の処理において、タイムアウトを判断するための規定時間値については、プリンタ内の記憶領域に静的に記憶された値でもよく、またステップS1306でクライアントから送信される印刷データ内に印刷制御データとして含んでもよい。 In the process of step S1313, the specified time value for determining timeout may be a value that is statically stored in a storage area in the printer, or printed in the print data transmitted from the client in step S1306. It may be included as control data.
尚、ステップS1314の処理において、印刷データを削除する処理の他、例えば、後続する印刷データの滞留を防止する観点から、該当する印刷データの処理をスキップして、後続の印刷データの処理を順次繰り上げて処理をするようにしてもよい。この場合、スケジュール管理部902は、ジョブ管理部903、デバイス管理部904における管理結果に従い、先頭の印刷ジョブの処理をスキップして、その後続に予約登録されている印刷ジョブの順序を更新して、印刷ジョブの処理順序を制御することができる。
In the process of step S1314, in addition to the process of deleting the print data, for example, from the viewpoint of preventing the stay of the subsequent print data, the process of the corresponding print data is skipped and the process of the subsequent print data is sequentially performed. You may make it carry out and process. In this case, the
図14は、後述するデバイス管理部904からのジョブ状態通知イベントの受け付けからジョブ制御プリントサービス605からのジョブリスト要求の受け付けに対する、ジョブ管理部903の処理の流れを説明するフローチャートである。
FIG. 14 is a flowchart for explaining the flow of processing of the
まず、ステップS1401では、通信接続管理部901やデバイス管理部904からの通知を受け付けると、デバイス管理部904からのジョブ状態通知であるか、ジョブ制御プリントサービス605から発せられたジョブリスト要求であるかを判断する。
First, in step S1401, upon receiving a notification from the communication
デバイス管理部904からのジョブ状態通知であれば(S1401-(A))、ステップS1402に処理を移行し、該当するジョブ情報のジョブ状態(ジョブステータス)を更新設定する。更に、ステップS1403に処理を移行し、印刷完了の通知であるかを判断する。印刷完了でなければ(S1403−No)、処理をステップS1404に移行し、通信接続管理部901にジョブの状態のイベントをクライアントに発行するように通知する。
If it is a job status notification from the device management unit 904 (S1401- (A)), the process proceeds to step S1402, and the job status (job status) of the corresponding job information is updated and set. Furthermore, the process proceeds to step S1403, and it is determined whether it is a notification of printing completion. If printing is not completed (S1403-No), the process proceeds to step S1404, and the communication
一方、ステップS1403で、印刷完了の通知であれば(S1403-Yes)、ステップS1405に処理を移行し、ジョブ管理キューから該当するジョブを削除し、ステップS1406で、通信接続管理部901にジョブの完了イベントをクライアントに発行するように通知し、処理を再び、ステップS1401に移行する。
On the other hand, if it is a print completion notification in step S1403 (S1403-Yes), the process proceeds to step S1405 to delete the corresponding job from the job management queue. In step S1406, the communication
ステップS1401で、ジョブ制御プリントサービス605からのジョブリスト要求の受け付けると(S1401-(B))、ステップS1407において、ジョブ管理キューに登録されたジョブ情報のリストを要求元のクライアントに送信するように通信接続管理部901にジョブ情報リストを通知する。
When a job list request is received from the job
図15は、プリンタコントローラ519からのデバイス状態、ジョブ状態通知をイベントハンドラを経由して受け付け、ジョブ管理部903や通信接続管理部901に通知するデバイス管理部904の処理の流れを説明するフローチャートである。
FIG. 15 is a flowchart for explaining a processing flow of the
ステップS1501では、デバイススケジューラ900が起動すると、デバイス管理部904がイベントハンドラを経由してプリンタコントローラ519に対して、デバイスの状態が変更した場合や、プリンタコントローラ519が処理する印刷ジョブの状態が変更した場合にそれらの状態を通知するようにイベント登録の処理を行う。
In step S1501, when the
ステップS1502では、プリンタコントローラ519で発生したイベントをイベントハンドラ経由で受け付けるとジョブのイベントであるかデバイスのイベントであるかを判断する。
In step S1502, when an event generated in the
ジョブのイベントであれば(S1502-(A))、ステップS1503でジョブ管理部903にジョブイベントを通知し、ステップS1502に処理を移行する。
If it is a job event (S1502- (A)), the
デバイスのイベントであれば(S1502-(B))、処理をステップS1504に移行し、デバイスの状態をデバイス管理部904で保持した後、ステップS1505で通信接続管理部901にデバイスイベントを通知し、処理をステップS1502に移行する。
If it is a device event (S1502- (B)), the process proceeds to step S1504, the device state is held in the
図16は、クライアント101〜103からの要求や通知、デバイス管理部904からの通知、ジョブ管理部903への要求や通知を処理する通信接続管理部901の処理の流れを説明するフローチャートである。
FIG. 16 is a flowchart illustrating a processing flow of the communication
ステップS1601では、クライアント101〜103やデバイス管理部904、ジョブ管理部903からの通知や要求を受け付け、どの通知や要求であるかを判断する。
In step S1601, notifications and requests from the
ステップS1601において、受け付けた要求やイベントがクライアント101〜103からの接続要求であれば(S1601-(A))、ステップS1602に移行し、クライアント管理キューに通信接続管理部901で発行したクライアントIDと、要求を発したクライアントのIPアドレスを設定し、クライアント管理キューにクライアント情報を登録する。
If the received request or event is a connection request from the
ステップS1601において、受け付けた要求やイベントがクライアント101〜103からのイベント登録であれば(S1601-(B))、ステップS1603に処理を移行し、該当するクライアント情報の登録イベントに通知するイベントの種類を設定する。イベントの種類には、ジョブの状態の変化を通知するジョブイベント、デバイスの状態の変化を通知するデバイスイベントがある。
If the received request or event is event registration from the
ステップS1601において、受け付けた要求やイベントがデバイス管理部904からのデバイスイベントやジョブ管理部903からのジョブイベントであれば(S1601-(C))、処理をステップS1604に進め、イベントを通知すべきクライアントを認識するために、クライアント管理キューに登録された全てのクライアント情報からクライアントを検索し、クライアント情報の登録イベントの設定を参照し、通知すべきかどうかを判断する。通知すべきであると判断した場合には、クライアントのIPアドレスを保持し、ステップS1605において通知すべき全てのクライアントに対してイベントを送信して通知する。
In step S1601, if the received request or event is a device event from the
更に、ステップS1601において受け付けた要求やイベントがクライアントからの切断要求であれば(S1601-(D))、ステップS1606に処理を移行し、クライアント管理キューから該当するクライアントのクライアント情報を削除する。 Furthermore, if the request or event received in step S1601 is a disconnection request from the client (S1601- (D)), the process proceeds to step S1606, and the client information of the corresponding client is deleted from the client management queue.
図17は、ジョブ制御プリントサービス605が管理する印刷ジョブの情報1702と、複数のジョブの情報を管理するジョブ管理キュー1701を示す図である。
FIG. 17 is a diagram showing
1702は、自クライアントで印刷したジョブの情報と、デバイススケジューラ900にジョブイベントとして登録される他のクライアントの印刷ジョブのジョブ情報が含まれており、個別のジョブ情報には、印刷ジョブのドキュメント名、ジョブID、クライアント101〜103で印刷を開始したユーザ名、ジョブのページ数、印刷ジョブの状況を表すジョブ状態、印刷データに含まれるジョブデータIDが含まれる。
1702 includes information on a job printed by the own client and job information of a print job of another client registered as a job event in the
ここで、ジョブ状態は、クライアント101〜103が印刷を開始してからジョブがプリンタから無くなるまでの状態を表しており、スプール中、印刷待機中、スケジュールアップ状態、転送中、転送済み、印刷完了などの状態が存在する。
Here, the job status represents a status from when the
ジョブデータIDは、印刷データに含まれるジョブのIDで、デバイススケジューラ900からのジョブイベントに設定される情報である。
The job data ID is an ID of a job included in the print data, and is information set in a job event from the
1701は、複数のジョブ情報1702を管理する管理キューであり、自クライアントで印刷したジョブのジョブ情報とデバイススケジューラ900から通知される他クライアントのジョブ情報が登録される。
図18は、ジョブ制御プリントサービス605が管理するプリンタキュー、出力ポートの情報を示す図である。
FIG. 18 is a diagram showing information on printer queues and output ports managed by the job
1801は、ジョブ制御プリントサービス605が管理するそれぞれのプリンタキューの情報を表していて、プリンタ名などの情報が含まれている。1802は、ジョブ制御プリントサービス605が管理するそれぞれの出力ポートの情報を示しており、印刷するデバイスのIPアドレスなどの情報が含まれている。
図19は、図12で説明した印刷処理の流れで、クライアント101〜103のジョブ制御プリントサービス605が印刷データを受け付けてから、印刷データの転送までの流れを説明するフローチャートである。
FIG. 19 is a flowchart illustrating the flow from the reception of print data by the job
ステップS1901では、ジョブ制御ポートモニタ604から印刷ジョブ(A)を受け付けるか、デバイススケジューラ900から印刷データの転送の開始を指示するスケジュールUP(B)のコマンドを受け付けるか判断する。ジョブ制御ポートモニタ604から印刷ジョブ(A)を受け付ける場合(S1901-(A))、処理をステップS1902に処理を移行し、スケジュールUPのコマンドを受け付けるとステップS1906に処理を移行する。
In step S1901, it is determined whether a print job (A) is received from the job control port monitor 604 or a schedule UP (B) command instructing start of print data transfer is received from the
ステップS1902では、受け付けた印刷ジョブの情報をジョブ情報1702に設定し、ジョブ管理キュー1701にジョブ登録する。ここで、ジョブ情報1702に設定する情報は、プリントシステムから取得したり、印刷データを解析して得ることができる。
In step S1902, the received print job information is set in the
次に、ステップS1903では、デバイススケジューラ900に接続し、接続要求コマンドを発行する。クライアントが接続要求を発行すると、クライアントの情報がデバイススケジューラ900のクライアント管理キューに登録され、以降、クライアントとデバイススケジューラ900との間で情報のやり取りを行うことができる。
Next, in step S1903, connection is made to the
ステップS1904では、デバイススケジューラ900に対して、ジョブイベント、デバイスイベントを登録する。ジョブイベントを登録すると、自クライアントが印刷したジョブや、他のクライアントが印刷したジョブの状態の変化の通知がデバイススケジューラ900より通知されることになる。また、デバイスイベントを登録すると、プリンタデバイス606の状態の変化が通知されるようになる。
In step S1904, a job event and a device event are registered in the
ステップS1905では、デバイススケジューラ900が管理しているジョブ管理キュー1101に登録されているジョブリストを取得する。このジョブリストとジョブイベントにより、デバイススケジューラ900が管理するジョブの印刷状況を把握することが可能となる。
In step S1905, a job list registered in the job management queue 1101 managed by the
以上の処理により、印刷する準備が整い、ステップS1906において印刷するジョブの登録をデバイススケジューラ900に登録し、ステップS1901で次の指示を待機する。
With the above processing, preparation for printing is completed, registration of the job to be printed is registered in the
一方、ステップS1901においてデバイススケジューラ900から印刷データの転送指示であるスケジュールUP(B)のコマンドを受け付けると(S1901-(B))、ステップS1907に処理を移行する。ステップS1907では、印刷指示を受けたジョブの転送を開始しする。
On the other hand, when a command for schedule UP (B), which is a print data transfer instruction, is received from the
印刷データの送信が開始されるとステップS1908において、デバイススケジューラ900に転送が開始されたことを通知するために、転送開始状態を通知する。
When transmission of print data is started, a transfer start state is notified in step S1908 to notify the
そして、ステップS1909で印刷データの転送が終了すると、デバイススケジューラ900に転送が終了したことを通知する。
When the transfer of the print data is completed in step S1909, the
図20は、デバイススケジューラ900からの通知やコマンドを受け付けた場合のジョブ制御プリントサービス605の処理の流れを説明するフローチャートである。
FIG. 20 is a flowchart for explaining the flow of processing of the job
ステップS2001では、デバイススケジューラ900からジョブイベントの通知または、ジョブリストが返送されてくるかを判断しており、ジョブイベントが通知されると(S2001-(A))、ステップS2002に処理を移行し、ジョブリストが返送されると(S2001-(B))、ステップS2008に処理を移行する。
In step S2001, it is determined whether a job event notification or a job list is returned from the
ステップS2008では、ジョブリストが返送されてくるとジョブ制御プリントサービス605が管理するジョブ管理キュー1701にジョブリストから得られたジョブ情報を設定する。
In step S2008, when the job list is returned, the job information obtained from the job list is set in the
一方、ステップS2002では、デバイススケジューラ900から通知されたジョブイベント通知の内、ジョブ完了通知(C)であるか、ジョブ状態変更通知(D)であるかを判断する。ジョブ状態変更通知であれば(S2002-(D))、ステップS2009に処理を進め、該当するジョブ情報のジョブステータスを更新する。
On the other hand, in step S2002, it is determined whether the job event notification notified from the
ステップS2002において、受け付けたジョブイベント通知がジョブ完了通知であれば(S2002-(C))、処理をステップステップS2003に進め、該当するジョブ情報をジョブ管理キュー1701から削除する。
If the received job event notification is a job completion notification in step S2002 (S2002- (C)), the process proceeds to step S2003, and the corresponding job information is deleted from the
ステップS2004では、ジョブ管理キュー1701に、印刷が終了していない自クライアントのジョブが残されているかを確認し、残されていれば(S2004-YES)、まだデバイススケジューラ900とのやり取りが必要であるため、デバイススケジューラ900との接続を継続するために、ステップS2001に処理を移行する。
In step S2004, it is confirmed whether or not the job of the own client that has not finished printing remains in the
ステップS2004で、自クライアントのジョブがなければ(S2005-NO)、ステップS2005に処理を移行し、デバイススケジューラ900との接続を終了するための処理を開始する。
If there is no job of the own client in step S2004 (S2005-NO), the process proceeds to step S2005, and a process for terminating the connection with the
ステップS2005では、接続を開始したときにデバイススケジューラ900に登録したジョブイベント、デバイスイベントの登録解除を依頼する。デバイススケジューラ900は、この依頼によりクライアント情報のイベント登録の内容を削除する。このイベント登録の情報がなければ、デバイススケジュラーが管理するジョブの状態が変化されてもイベントが通知されてくることはない。
In step S2005, a request is made to cancel registration of the job event and device event registered in the
次に、ステップS2006において、デバイススケジューラ900に対して切断の要求を発行する。デバイススケジューラ900が切断要求を受け付けると、クライアント管理キューから該当するクライアント情報を削除する。
In step S2006, a disconnection request is issued to the
ステップS2007では、デバイススケジューラ900とのセッションを切断する処理を行い、処理をステップS2001で待機する。
In step S2007, a process for disconnecting the session with the
以上説明したように、本実施形態に拠れば、ネットワークを介して接続される複数のクライアントとプリンタを共有して利用可能なネットワーク印刷環境においても、プリンタ内の印刷制御装置(例えば、ネットワークプリントサーバ)上で動作するデバイススケジューラによって、印刷要求が登録されている印刷ジョブの処理順序を制御する(例えば、滞留の原因となる印刷データを削除して、スケジュール要求が登録されている予約登録の順序を繰上げる)ことにより、後続の印刷処理の滞留を解消することが可能になる。 As described above, according to this embodiment, even in a network printing environment in which a printer can be shared with a plurality of clients connected via a network, a print control device (for example, a network print server) in the printer can be used. ) Controls the processing order of the print job in which the print request is registered by the device scheduler operating above (for example, the order of reservation registration in which the print data causing the stay is deleted and the schedule request is registered) ), It is possible to eliminate the stagnation of the subsequent printing process.
これにより、あるクライアントから印刷要求された印刷ジョブ(印刷データの処理)が処理されないことによって、後続の印刷データの印刷処理が滞留することを解消し、より効率的かつ公平なネットワーク印刷環境を提供することが可能となる。 As a result, a print job requested to be printed by a client (print data processing) is not processed, so that the print processing of subsequent print data is eliminated and a more efficient and fair network printing environment is provided. It becomes possible to do.
[その他の実施形態]
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、印刷制御装置の制御部に供給し、その制御部のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
[Other embodiments]
An object of the present invention is to supply a storage medium storing software program codes for realizing the functions of the above-described embodiments to a control unit of a print control apparatus, and a computer (or CPU or MPU) of the control unit. Needless to say, this can also be achieved by reading and executing the program code stored in the storage medium.
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。 In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention.
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD、磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。 As a storage medium for supplying the program code, for example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a DVD, a magnetic tape, a nonvolatile memory card, a ROM, or the like is used. it can.
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) operating on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Further, after the program code read from the storage medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.
Claims (16)
前記情報処理装置から送信される印刷データに基づいて、印刷処理が停止されているオフライン状態に移行させるコマンドが当該印刷データに含まれているか判定する判定手段と、
前記判定手段の判定結果に従い、前記コマンドが前記印刷データに含まれている場合、前記印刷装置をオフライン状態に移行させるオフライン状態移行手段と、
前記オフライン状態に移行させた前記印刷装置について、当該オフライン状態が解除されたかを監視する状態監視手段と、
規定時間内に前記オフライン状態が解除された場合、前記印刷データの処理を前記印刷装置に実行させ、当該規定時間内に当該オフライン状態が解除されない場合、当該印刷データを削除して、当該オフライン状態を解除する制御手段と
を備えることを特徴とする印刷制御装置。 A print control apparatus for causing a printing apparatus to process print data generated by an information processing apparatus connected via a network,
Determination means for determining whether the print data includes a command for shifting to an offline state in which print processing is stopped based on print data transmitted from the information processing apparatus;
According to the determination result of the determination unit, when the command is included in the print data, an offline state shift unit that shifts the printing apparatus to an offline state;
Status monitoring means for monitoring whether the offline state has been released for the printing apparatus that has been shifted to the offline state;
When the offline state is canceled within a specified time, the processing of the print data is executed by the printing apparatus. When the offline state is not canceled within the specified time, the print data is deleted and the offline state is deleted. And a control means for canceling the print control device.
当該通信手段は、前記オフライン状態移行手段により、前記印刷装置がオフライン状態に移行したことを前記情報処理装置に通知することを特徴とする請求項1に記載の印刷制御装置。 The information processing apparatus further comprises communication means for communicating the state of the printing apparatus or the processing state of the print data,
The printing control apparatus according to claim 1, wherein the communication unit notifies the information processing apparatus that the printing apparatus has shifted to an offline state by the offline state transition unit.
前記登録に従い、前期情報処理装置に対して、前記印刷データの送信を要求する印刷データ送信要求手段とを有し、
前記スケジュール要求登録手段は、前記情報処理装置から複数のスケジュール要求信号を受信した場合、受信した順序に従いスケジュール要求を予約登録し、前記印刷装置が印刷データを処理可能な状態になったときに、最先の順序で予約登録されているスケジュール要求に対してスケジュールの実行を決定することを特徴とする請求項1に記載の印刷制御装置。 Schedule request registration means for registering a request for processing the print data based on a schedule request signal transmitted from the information processing apparatus;
In accordance with the registration, the previous period information processing apparatus has a print data transmission request means for requesting transmission of the print data,
When the schedule request registration unit receives a plurality of schedule request signals from the information processing apparatus, the schedule request registration unit reserves and registers a schedule request according to the received order, and when the printing apparatus is ready to process print data, The print control apparatus according to claim 1, wherein execution of a schedule is determined for a schedule request that is reserved and registered in the earliest order.
請求項1乃至5のいずれかに記載の印刷制御装置を備えることを特徴とする印刷装置。 A printing device for processing print data,
A printing apparatus comprising the printing control apparatus according to claim 1.
前記情報処理装置から送信される印刷データ対応する、印刷処理が停止されている停止状態に移行させるコマンドに従って、前記印刷装置を前記停止状態に移行させる状態移行手段と、
印刷処理を停止している前記印刷装置について、前記停止状態が解除されたかを監視する状態監視手段と、
規定時間内に前記停止状態が解除されない場合、前記停止状態を解除する解除手段と、
前記規定時間内に前記停止状態が解除された場合、前記印刷データの処理を前記印刷装置に実行させ、当該規定時間内に前記停止状態が解除されない場合、当該印刷データを削除する制御手段と、
を備えることを特徴とする印刷制御装置。 A print control apparatus that processes print data generated by an information processing apparatus connected via a network,
In accordance with the print data transmitted from the information processing apparatus, in accordance with a command for shifting to a stopped state in which printing processing is stopped, a state shifting unit that shifts the printing apparatus to the stopped state;
About the printing apparatus that has stopped printing processing, state monitoring means for monitoring whether the stopped state is released,
If the stop state is not released within a specified time, release means for releasing the stop state;
Control means for causing the printing apparatus to execute processing of the print data when the stop state is canceled within the specified time, and deleting the print data when the stop state is not canceled within the specified time;
A printing control apparatus comprising:
前記情報処理装置から送信される印刷データに基づいて、印刷処理が停止されているオフライン状態に移行させるコマンドが当該印刷データに含まれているか判定する判定工程と、
前記判定工程の判定結果に従い、前記コマンドが前記印刷データに含まれている場合、前記印刷装置をオフライン状態に移行させるオフライン状態移行工程と、
前記オフライン状態に移行させた前記印刷装置について、当該オフライン状態が解除されたかを監視する状態監視工程と、
規定時間内に前記オフライン状態が解除された場合、前記印刷データの処理を前記印刷装置に実行させ、当該規定時間内に当該オフライン状態が解除されない場合、当該印刷データを削除して、当該オフライン状態を解除する制御工程と
を備えることを特徴とする印刷制御方法。 A print control method for causing a printing apparatus to process print data from an information processing apparatus connected via a network,
A determination step of determining whether the print data includes a command for shifting to an offline state in which the print processing is stopped based on the print data transmitted from the information processing apparatus;
According to the determination result of the determination step, when the command is included in the print data, an offline state transition step of shifting the printing apparatus to an offline state;
A state monitoring step for monitoring whether the offline state has been released for the printing apparatus that has been shifted to the offline state;
When the offline state is canceled within a specified time, the processing of the print data is executed by the printing apparatus. When the offline state is not canceled within the specified time, the print data is deleted and the offline state is deleted. A printing control method comprising: a control step of canceling.
当該通信工程は、前記オフライン状態移行工程の処理により、前記印刷装置がオフライン状態に移行したことを前記情報処理装置に通知することを特徴とする請求項9に記載の印刷制御方法。 The information processing apparatus further includes a communication step of communicating a state of the printing apparatus or a processing state of the print data,
The print control method according to claim 9, wherein the communication step notifies the information processing apparatus that the printing apparatus has shifted to an offline state by the processing of the offline state transition process.
前記登録に従い、前期情報処理装置に対して、前記印刷データの送信を要求する印刷データ送信要求工程とを有し、
前記スケジュール要求登録工程は、前記情報処理装置から複数のスケジュール要求信号を受信した場合、受信した順序に従いスケジュール要求を前記記憶手段に予約登録し、前記印刷装置が印刷データを処理可能な状態になったときに、最先の順序で予約登録されているスケジュール要求に対してスケジュールの実行を決定することを特徴とする請求項9に記載の印刷制御方法。 A schedule request registration step of registering a request for processing the print data based on a schedule request signal transmitted from the information processing apparatus;
A print data transmission requesting step for requesting transmission of the print data to the information processing apparatus in the previous period in accordance with the registration;
In the schedule request registration step, when a plurality of schedule request signals are received from the information processing apparatus, the schedule request is reserved and registered in the storage unit in accordance with the received order, and the printing apparatus is ready to process print data. The printing control method according to claim 9, wherein execution of a schedule is determined for a schedule request that is reserved and registered in the earliest order.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004351514A JP2006159509A (en) | 2004-12-03 | 2004-12-03 | Printing control device, printing control method, printing device, program and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004351514A JP2006159509A (en) | 2004-12-03 | 2004-12-03 | Printing control device, printing control method, printing device, program and recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006159509A true JP2006159509A (en) | 2006-06-22 |
Family
ID=36662042
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004351514A Withdrawn JP2006159509A (en) | 2004-12-03 | 2004-12-03 | Printing control device, printing control method, printing device, program and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006159509A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8243307B2 (en) | 2007-03-12 | 2012-08-14 | Konica Minolta Business Technolgies, Inc. | HTTP server and program for transmitting reports with chunked data |
-
2004
- 2004-12-03 JP JP2004351514A patent/JP2006159509A/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8243307B2 (en) | 2007-03-12 | 2012-08-14 | Konica Minolta Business Technolgies, Inc. | HTTP server and program for transmitting reports with chunked data |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7583400B2 (en) | Print controlling method and apparatus that prevents transmission of print data from clients until a predetermined time that is scheduled based on when the client registers with the managing section | |
JP4420421B2 (en) | Information processing apparatus and control method thereof | |
US8045202B2 (en) | Information processing apparatus and print device control method | |
JP4869031B2 (en) | Printing system, server apparatus, and job control method | |
US7804608B2 (en) | Information processing apparatus, information processing method, program, and computer-readable storage medium | |
JP4827615B2 (en) | Information processing apparatus, printing system, monitoring method, program, and storage medium | |
JP3774702B2 (en) | Print control program and information processing apparatus | |
US20140063522A1 (en) | Information processing apparatus, output system, information processing method, and recording medium storing information processing program | |
JP4125044B2 (en) | Information processing apparatus, information processing apparatus control method, program, and storage medium | |
JP2008059372A (en) | Printing controller and its method | |
JP2011253568A (en) | Printing system, server device and job control method | |
US8072628B2 (en) | Printing apparatus, network device, printing control method, and printing control program capable of transmitting print image data to printing hardware prior to registration of print job | |
JP2009037488A (en) | Method for controlling print job, its print system, information processor, and printer | |
JP2008097226A (en) | Information processing device and method | |
JP2021192190A (en) | Printing system | |
JP2007025970A (en) | Pull print system | |
JP2008077355A (en) | Information processor, print system, and transfer control method of print job | |
JP2008107921A (en) | Pull print server and its control method | |
JP2006159509A (en) | Printing control device, printing control method, printing device, program and recording medium | |
JP4164479B2 (en) | Print control program, processing method, storage medium, information processing apparatus, and printing system | |
CN110764720B (en) | Printing apparatus, control method of printing apparatus, and storage medium | |
JP2007004680A (en) | Printing control device, printing control method and printing control program | |
JP3566511B2 (en) | INFORMATION PROCESSING APPARATUS, PRINT SYSTEM, PRINT PROCESSING METHOD, AND COMPUTER-READABLE STORAGE MEDIUM | |
US11409485B2 (en) | Printing system and control method that maintains a response performance when processing load increases | |
JP2008059371A (en) | Printing controller and its method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080205 |