JP4656651B2 - サーバ装置、及びその制御方法 - Google Patents

サーバ装置、及びその制御方法 Download PDF

Info

Publication number
JP4656651B2
JP4656651B2 JP2005346768A JP2005346768A JP4656651B2 JP 4656651 B2 JP4656651 B2 JP 4656651B2 JP 2005346768 A JP2005346768 A JP 2005346768A JP 2005346768 A JP2005346768 A JP 2005346768A JP 4656651 B2 JP4656651 B2 JP 4656651B2
Authority
JP
Japan
Prior art keywords
print job
job
print
business
processing queue
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.)
Expired - Fee Related
Application number
JP2005346768A
Other languages
English (en)
Other versions
JP2007156532A (ja
JP2007156532A5 (ja
Inventor
英邦 篭原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Marketing Japan Inc
Original Assignee
Canon Marketing Japan Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Marketing Japan Inc filed Critical Canon Marketing Japan Inc
Priority to JP2005346768A priority Critical patent/JP4656651B2/ja
Publication of JP2007156532A publication Critical patent/JP2007156532A/ja
Publication of JP2007156532A5 publication Critical patent/JP2007156532A5/ja
Application granted granted Critical
Publication of JP4656651B2 publication Critical patent/JP4656651B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)

Description

本発明は、外部から受信した印刷対象データを処理するための技術に関するものである。
プリントサーバは印刷処理を行うのみではなく、ジョブの出力順序を管理することが必要である。そこで、転送された出力データの形式毎、若しくはアクセス権を管理する単位(この単位を以降区画と表記する)でキューを持ち、出力順序の管理を行うことが必要となる。また、プリンタのパフォーマンスを考慮し、効率的にプリンタに出力を行わせる処理も求められる。
その実現例として、従来より、Windows(登録商標)サーバやUNIX(登録商標)サーバ、及びメインフレーム等のマルチプラットフォームからの印刷データを受信し、そのデータをデータの種別毎、及び出力業務毎(例えば人事業務や経理業務etc)に区画分けして出力管理を行っているようなシステムがある。
このようなシステムにおいて、処理要求があった順番に各区画の処理キュー内の印刷データを参照し、その順番で変換プログラムが走り、プリンタへの出力が行われる。出力の順番がきたところで、プリンタ出力用の変換プログラムが起動するようになっている。
図8は、ある区画の処理キューの内容を示す従来のGUIの表示例を示す図である。同図では「PPADEMO-URIAGEC_0001」成る名称の印刷ジョブが先頭にあるため、まずこのデータから変換処理が行われる。その後は同図GUIに表示されている上のジョブから順に変換処理が行われる。この場合、他の区画で同一の出力先を対象とした変換処理があってもその事象は感知しない。
しかし、この構成では異なるデータ種別のデータ間、出力業務間での印刷順序は不定となってしまう。例えば、図11に示す如く、PPADEMO-URIAGE_0001A(A)、PPADEMO-URIAGE_0002B(B)が同じ区画(売上業務区画)、PPADEMO-JINJI_0003C(C)とPPADEMO-JINJI_0004D(D)が同じ区画(人事業務区画)であり、プリントサーバが受信した順番が(A),(B),(C),(D)であった場合を考える。このとき、データ(A)のサイズが大きく変換処理に時間がかかる場合、その間にデータ(C)、データ(D)の変換処理が終ってしまう。このときプリンタへ出力される順番は(A), (C),(D) ,(B)となってしまい、受信した順序と異なってしまう。
同じように印刷プログラムの順番を制御するシステムとして、例えば、特許文献1には印刷順序を制御するシステムが開示されている。しかしながら、特許文献1に記載のシステムは、事前にデータの出力順序を定義し、その定義どおりの順序で出力するシステムであり、定義されたデータがすべて揃ってから出力を開始する処理を行っている。従って、データを受信した時点で変換を始めるような本システムでは印刷順を守ることはできないという問題があった。
また、接続されたプリンタの台数やパフォーマンスを考慮して、同時に出力を行うデータの個数などについての制御がなく、プリントサーバの能力を超えて処理を行ってしまったような場合では、処理能力が低下してしまうという問題点があった。
特開2001−075768号公報
本発明は以上の問題に鑑みて成されたものであり、印刷対象のデータを受信した場合には、そのサイズや種類などに関係なく、受信した順に印刷を可能にするための技術を提供することを目的とする。
本発明の目的を達成するために、例えば、本発明のサーバ装置は以下の構成を備える。
即ち、複数の業務アプリケーションで生成される印刷ジョブを出力するそれぞれの外部装置が接続されているネットワークに接続されており、当該外部装置から出力された印刷ジョブを、当該ネットワークを介して受信可能なサーバ装置であって、
前記ネットワークを介して受信した印刷ジョブを、前記業務アプリケーション毎に設けられている処理キューのうち、該受信した印刷ジョブを生成した業務アプリケーションに対して設けられている処理キューに登録する登録手段と、
前記ネットワークを介して受信した印刷ジョブを、出力先の印刷装置に適したデータ形式に変換する処理を行う、前記業務アプリケーション毎に設けられている変換手段と、
前記業務アプリケーション毎の処理キューを監視し、該処理キューに印刷ジョブが登録された場合、当該印刷ジョブを、前記サーバ装置が受信した順に印刷ジョブを統合して管理するための統合処理キューとして登録し、該統合処理キューとして登録されている印刷ジョブ群から、前記サーバ装置が受信した順に、変換対象の印刷ジョブを選択する印刷データ管理手段と、
前記データ管理手段による選択印刷ジョブを、該選択印刷ジョブを生成した業務アプリケーションに対して設けられている前記選択印刷ジョブ用の変換手段、に対して送出する送出手段と、
前記選択印刷ジョブ用の変換手段が動作中であるか否かを判定する判定手段とを備え、
前記送出手段は、
前記選択印刷ジョブ用の変換手段が、前記判定手段により動作中でないと判定され、且つ前記選択印刷ジョブが、前記統合処理キューとして登録されていて状態が未処理である印刷ジョブのうち前記選択印刷ジョブと同一の出力先である印刷ジョブの先頭であった場合には、前記選択印刷ジョブを前記選択印刷ジョブ用の変換手段へ送出し、一方、前記判定手段により動作中でないと判定されかつ、前記選択印刷ジョブが前記先頭でない場合は、前記選択印刷ジョブの送出は行わない
ことを特徴とする。
本発明の目的を達成するために、例えば、本発明のサーバ装置の制御方法は以下の構成を備える。
即ち、複数の業務アプリケーションで生成される印刷ジョブを出力するそれぞれの外部装置が接続されているネットワークに接続されており、当該外部装置から出力された印刷ジョブを、当該ネットワークを介して受信可能なサーバ装置の制御方法であって、
前記ネットワークを介して受信した印刷ジョブを、前記業務アプリケーション毎に設けられている処理キューのうち、該受信した印刷ジョブを生成した業務アプリケーションに対して設けられている処理キューに登録する登録工程と、
前記ネットワークを介して受信した印刷ジョブを、前記業務アプリケーション毎に前記サーバ装置に設けられている、出力先の印刷装置に適したデータ形式に変換する処理を行う変換手段のうち、該受信した印刷ジョブを生成した業務アプリケーションに対して設けられている変換手段で変換する変換工程と、
前記業務アプリケーション毎の処理キューを監視し、該処理キューに印刷ジョブが登録された場合、当該印刷ジョブを、前記サーバ装置が受信した順に印刷ジョブを統合して管理するための統合処理キューとして登録し、該統合処理キューとして登録されている印刷ジョブ群から、前記サーバ装置が受信した順に、変換対象の印刷ジョブを選択する印刷データ管理工程と、
前記データ管理工程による選択印刷ジョブを、該選択印刷ジョブを生成した業務アプリケーションに対して設けられている前記選択印刷ジョブ用の変換手段、に対して送出する送出工程と、
前記選択印刷ジョブ用の変換手段が動作中であるか否かを判定する判定工程とを備え、
前記送出工程では、
前記選択印刷ジョブ用の変換手段が、前記判定工程で動作中でないと判定され、且つ前記選択印刷ジョブが、前記統合処理キューとして登録されていて状態が未処理である印刷ジョブのうち前記選択印刷ジョブと同一の出力先である印刷ジョブの先頭であった場合には、前記選択印刷ジョブを前記選択印刷ジョブ用の変換手段へ送出し、一方、前記判定工程で動作中でないと判定されかつ、前記選択印刷ジョブが前記先頭でない場合は、前記選択印刷ジョブの送出は行わない
ことを特徴とする。
本発明の構成により、印刷対象のデータを受信した場合には、そのサイズや種類などに関係なく、受信した順に印刷を可能にすることができる。
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
[第1の実施形態]
図1は、本実施形態に係るシステムの概略構成を示すブロック図である。同図に示す如く、本実施形態に係るシステムは、ホストコンピュータ101、UNIX(登録商標)サーバ102、クライアントPC105、プリントサーバ103、印刷装置104により構成されている。
ホストコンピュータ101、UNIX(登録商標)サーバ102は、一般のPC(パーソナルコンピュータ)やWS(ワークステーション)等により構成されており、印刷対象のデータ(印刷ジョブ)を作成するためのアプリケーションを保持している。ホストコンピュータ101(若しくはUNIX(登録商標)サーバ102)の操作者がこのアプリケーションを用いて印刷対象のデータを作成し、その後、この印刷対象のデータに基づいた印刷を印刷装置104によって印刷させる旨の指示を入力した場合には、この印刷対象のデータは、ネットワーク106を介してプリントサーバ103に送出される。
従って、印刷対象のデータを作成し、プリントサーバ103に対して送出可能な装置であれば、ホストコンピュータ101、UNIX(登録商標)サーバ102以外の装置を用いても良いので、その台数や装置の種類などについては特に限定するものではない。
プリントサーバ103は、外部(本実施形態の場合には、ホストコンピュータ101やUNIX(登録商標)サーバ102)から受信した印刷対象データを受け、これを印刷装置104に適したデータ形式に変換し、その後、印刷装置104に送出する処理を行うものである。プリントサーバ103が行う処理について、詳しくは後述する。
印刷装置104は、プリンタや複合機などの装置により構成されており、プリントサーバ103から受信したデータに基づいて、紙やOHPなどの記録媒体上に画像や文字の記録処理を行う。記録方法については特に限定するものではなく、インクジェット方式、レーザビーム方式、熱転写方式等、各種の記録方式の何れを用いても良い。なお、印刷装置104の動作状況など、印刷装置104の状況については、適宜プリントサーバ103が監視している。
クライアントPC105は、プリントサーバ103の状況を監視し、クライアントPC105が有する表示装置の表示画面上にその監視した状況を適宜表示するものである。プリントサーバ103における処理状況や印刷結果などについては、プリントサーバ103が適宜クライアントPC105に対して送信しているので、クライアントPC105はこの送信された処理状況や印刷結果などを表示装置の表示画面上に表示する処理を行う。もちろん、ホストコンピュータ101やUNIX(登録商標)サーバ102と同様に、印刷対象データを作成してプリントサーバ103に対して送出しても良い。
ネットワーク106は、インターネットやLANやWANや電話回線、専用デジタル回線、ATMやフレームリレー回線、通信衛星回線、ケーブルテレビ回線、データ放送用無線回線等の何れか、若しくはその組み合わせにより構成されているものであり、上述の各装置間におけるデータ通信を実現するものである。即ち、上述の各装置はこのネットワーク106に接続されていることになる。なお、このネットワーク106については無線、有線は特には問わない。
図2は、プリントサーバ103に適用可能なコンピュータのハードウェア構成を示す図である。なお、本実施形態ではホストコンピュータ101、UNIX(登録商標)サーバ102、クライアントPC105についてもプリントサーバ103と同様の構成を有しているものとして説明するが、以下説明する各処理が実現可能で有れば、適宜変更しても良い。
21はCPUで、RAM22やROM23に格納されているプログラムやデータを用いて、本コンピュータ全体の制御を行うと共に、本コンピュータが行う後述の各処理を実行する。
22はRAMで、ハードディスク28やCD−ROMドライブ29からロードされたプログラムやデータ、NIC(ネットワークインターフェース)24を介して外部から入力されたプログラムやデータを一時的に記憶するためのエリア、CPU21が各種の処理を実行する際に用いるワークエリア等のエリアを適宜提供することができる。
23はROMで、本コンピュータの設定データやブートプログラムなどを格納する。
24はNICで、本コンピュータを上記ネットワーク106に接続するためのインターフェースとして機能するものであり、本コンピュータはこのNIC24を介してネットワーク106上に接続されている各装置とのデータ通信を行うことができる。
26は入力部の一例としてのキーボード、27は入力部の一例としてのマウスで、それぞれは本コンピュータの操作者が操作することで各種の指示をCPU21に対して入力することができる。なお、本コンピュータをホストコンピュータ101、UNIX(登録商標)サーバ102、クライアントPC105等に適用した場合には、操作者はこの入力部26,27を用いてアプリケーションを操作し、印刷対象データを作成することになる。
28はハードディスクで、OS(オペレーティングシステム)や、本コンピュータを適用した装置が行うべき後述の各処理をCPU21に実行させるためのプログラムやデータが保存されており、これらはCPU21による制御に従って適宜RAM22にロードされる。
29はCD−ROMドライブで、記憶媒体の一例としてのCD−ROMに記録されているプログラムやデータを読み出し、ハードディスク28やRAM22等に出力する。なお、ハードディスク28に保存されている上記各種のプログラムやデータの一部をCD−ROMに記録しておき、記録されたプログラムやデータをCD−ROMドライブ29によって適宜RAM22にロードするようにしても良い。なお、上述の通り、CD−ROMは記憶媒体の一例として用いているのみであって、本実施形態に適用可能な記憶媒体については特に限定するものではない。
20はシステムバスで、例えば、PCIバス、AGPバス、メモリバス等により構成されている。なお、同図では、各バス間の接続用チップやキーボードインタフェースやいわゆるSCSIやATAPIのような入出力用インタフェースは省略されている。
図3は、プリントサーバ103の機能構成、及びその周辺環境を示すブロック図である。同図において301,302はそれぞれ教務A用アプリケーション、業務B用アプリケーションで、それぞれ異なる業務におけるデータを作成するためのものである。業務A用アプリケーション301,業務B用アプリケーション302は本実施形態の場合、ホストコンピュータ101、UNIX(登録商標)サーバ102の何れかにインストールされているものであり、ホストコンピュータ101、UNIX(登録商標)サーバ102の何れかの操作者が操作することで、それぞれの業務に応じたデータを作成することができる。
ここで、それぞれのアプリケーションを操作することによって、作成したデータを印刷するための指示をプリントサーバ103に送出することができる。例えば、業務A用アプリケーション301がホストコンピュータ101にインストールされている場合には、ホストコンピュータ101の操作者がこの業務A用アプリケーション301を操作することで業務A用のデータを作成することができるし、このデータを印刷装置104にて印刷したい場合には、その旨をホストコンピュータ101に備わっているキーボードやマウスを用いて入力すれば、このデータをプリントサーバ103に送出することができる。これについては業務B用アプリケーション302についても同様であるし、それぞれのアプリケーションがどのような装置にインストールされていても同様である。
次に、プリントサーバ103の機能構成について説明する。同図に示す如く、プリントサーバ103は、プリントデータ管理部303、業務A用処理キュー306、業務B用処理キュー307、統合処理キュー312、印刷データ管理部313、変換プログラム308,309により構成されている。また、プリントデータ管理部303は、業務A用管理テーブル304、業務B用管理テーブル305により構成されている。
ここで、業務A用管理テーブル304、業務A用処理キュー306、変換プログラム308のセットについては、業務A用アプリケーション301から送出される業務A用印刷ジョブを処理すべく設けられているものであり、業務B用管理テーブル305、業務B用処理キュー307、変換プログラム309のセットについては、業務B用アプリケーション302から送出される業務B用印刷ジョブを処理すべく設けられているものである。
本実施形態に係るプリントサーバ103は、これらの各部に加えて、統合処理キュー312、印刷データ管理部313を設けている。以下、プリントサーバ103を構成するこれら各部の動作について説明する。
プリントデータ管理部303は、業務A用アプリケーション301から送出された業務A用印刷ジョブを受けると、これを業務A用管理テーブル304に登録すると共に、業務A用処理キュー306に送出する。図9は、業務A用管理テーブル304の構成例を示す図である。業務A用管理テーブル304は同図に示す如く、業務A用印刷ジョブのジョブ名(データ名)、ジョブの出力先(本実施形態の場合、印刷装置104)、状態(処理中、若しくは処理待ち)、印刷開始時間、印刷終了時間を管理している。
また、プリントデータ管理部303は、業務B用アプリケーション302から送出された業務B用印刷ジョブを受けると、これを業務B用管理テーブル305に登録すると共に、業務B用処理キュー307に送出する。なお、業務B用管理テーブル305の構成については、業務A用管理テーブル304と同様のものであるとする。
業務A用処理キュー306は、業務A用管理テーブル304から送出されたジョブ(業務A用印刷ジョブ)を保持するためのキューであり、このキューには業務A用印刷ジョブが、業務A用アプリケーション301から送出された順に登録される。図10は、業務A用処理キュー306の構成例を示す図で、同図に示す如く、業務A用処理キュー306には、業務A用印刷ジョブのジョブ名(データ名)、ジョブの出力先(本実施形態の場合、印刷装置104)、状態が管理されている。
一方、業務B用処理キュー307についてもその動作は同様である。即ち、業務B用処理キュー307は、業務B用管理テーブル305から送出されたジョブ(業務B用印刷ジョブ)を保持するためのキューであり、このキューには業務B用印刷ジョブが、業務B用アプリケーション302から送出された順に登録される。
印刷データ管理部313は、常に業務A用処理キュー306、業務B用処理キュー307を監視しており、新たにジョブがキューに投入された場合には、その投入されたジョブを統合処理キュー312に投入する処理を行う。即ち、印刷データ管理部313は、業務A用印刷ジョブ、業務B用印刷ジョブを問わず、プリントサーバ103に投入された順(受信順)に印刷ジョブを統合処理キュー312に投入する。これにより、統合処理キュー312には、プリントサーバ103に投入された順に印刷ジョブが登録されていることになる。
図5は、統合処理キュー312の構成例を示す図で、同図に示す如く、統合処理キュー312には、印刷ジョブの名前(データ名)、この印刷ジョブが業務A用印刷ジョブか業務B用印刷ジョブであるのかを示す区画ID、出力先印刷装置のセットが印刷ジョブ毎に登録されている。
更に、印刷データ管理部313は、業務A用印刷ジョブについては変換プログラム308へ、業務B用印刷ジョブについては変換プログラム309に送出する。変換プログラム308、変換プログラム309はそれぞれ、受けた印刷ジョブを出力先の印刷装置に適したデータ形式に変換する処理を行う。なお、変換プログラム308、309は1つのジョブの変換処理が終わってから次のジョブの変換処理を行う。
そして、変換プログラム308、309は変換後のデータを指定された印刷装置(本実施形態の場合、印刷装置104)に送出する。なお、変換プログラム308、309は、変換処理が終了した後、若しくは変換後のデータを印刷装置に送出した後に、この変換した印刷ジョブの元データを、この元データを保持しているキューから削除するよう、印刷データ管理部313に通知する。従って、印刷データ管理部313は、この通知を受けると、指示された印刷ジョブを、この印刷ジョブを保持しているキューから削除する処理を行う。
一方、印刷装置104は、変換済みのデータを受けると、受けたデータに従って、紙やOHPなどの記録媒体上に画像や文字などの記録を行う。
図4は、上記印刷データ管理部313が行う処理の詳細を示すフローチャートである。
上述の通り、印刷データ管理部313は常に、業務A用処理キュー306、業務B用処理キュー307を監視することで、印刷ジョブの投入を監視している。更に、上述の通り、印刷データ管理部313は、変換プログラム308、309が変換処理を終了させた印刷ジョブの元データを、この元データを保持しているキューから削除するための通知を受け付けている。
従って、業務A用処理キュー306、業務B用処理キュー307の何れかに印刷ジョブが投入されたことを印刷データ管理部313が検知した場合、即ち、この投入された印刷ジョブを統合処理キュー312に投入する要求が発生した場合には、処理をステップS402を介してステップS403に進め、この投入された印刷ジョブを、統合処理キュー312が保持する印刷ジョブ群の最後尾に追加する処理を行う(ステップS403)。
一方、変換プログラム308、309の何れかから、変換が終了した印刷ジョブの元データを、この元データを保持するキューから削除する旨の通知を受けた場合には、処理をステップS402を介してステップS404に進め、削除通知を受けた元データを、この元データを保持しているキューから削除する処理を行う(ステップS404)。
更に、現在変換プログラム308、309のそれぞれによって処理されている印刷ジョブの合計数(同時変換数)から1つデクリメントする(ステップS405)。本実施形態では1つの変換プログラムは一度に1つの印刷ジョブしか変換できないとしているが、複数個の印刷ジョブを並列に処理可能としても良い。
次に、印刷データ管理部313は同時変換数と、変換プログラム308、309によって処理可能な印刷ジョブの合計数の最大数(同時変換可能数)とを比較する(ステップS406)。
この比較処理の結果、同時変換数≧同時変換可能数である場合、即ち、変換プログラム308、309が共に、更なる印刷ジョブの変換処理ができない状態である場合には本処理を終了するのであるが、同時変換数<同時変換可能数である場合には、処理をステップS407に進め、統合処理キュー312の先頭の印刷ジョブ、即ち、現在統合処理キュー312に格納されている印刷ジョブのうち、最も古い時刻に投入(登録)された印刷ジョブを参照する(ステップS407)。
そして、この先頭の印刷ジョブの「状態」が「変換処理中」であるのか否かをチェックする(ステップS408)。例えば、この先頭の印刷ジョブが業務A用印刷ジョブである場合には、図10に例示した構成を有する業務A用処理キュー306を参照し、この印刷ジョブの「状態」を参照する。
この「状態」は、変換プログラム308、309が変換処理を行っているか否かを示すもので、例えば、データ名が「AAADATA01」である印刷ジョブを変換プログラム308が変換している最中である場合には、変換プログラム308はこの印刷ジョブを変換している最中である旨を印刷データ管理部313に通知するので、印刷データ管理部313は、その旨を業務A用管理テーブル304、業務A用処理キュー306で管理されているこの印刷ジョブの「状態」に書き込む。もちろん、この「状態」は、未だ変換処理される前である場合には「処理待ち」と設定されている。
そして、このチェックの結果、「変換処理中」である場合には、処理をステップS410に進め、現在統合処理キュー312に格納されている印刷ジョブのうち、2番目に古い時刻に投入された印刷ジョブを参照し(ステップS410)、処理をステップS413に進める。
一方、参照した印刷ジョブの状態が「変換処理中」ではない(「処理待ち」である)場合には処理をステップS409に進め、参照中の印刷ジョブを変換する変換プログラムが現在動作中であるのか否かをチェックする(ステップS409)。即ち、本実施形態では、変換プログラムは一度に1つの印刷ジョブしか変換することができないため、現在1つの印刷ジョブを変換しているような状態では、次の印刷ジョブは、現在変換している印刷ジョブの変換処理が終了してからでないと、変換することができない。また参照中の印刷ジョブが出力すべき印刷装置に対して、すでに他の印刷ジョブが変換処理中であったり、参照中の印刷ジョブより前にキューに入っている印刷ジョブがあった場合、印刷順序を考慮し変換処理は行わない。
そこで、本実施形態の場合には、参照中の印刷ジョブが変換可能であるのか否かをチェックするためには、参照中の印刷ジョブを変換する変換プログラムが現在変換処理中であるのか否かをチェックする。さらにはキュー内で出力先として指示されている印刷装置が同一の印刷ジョブの中で先頭かどうかチェックする。
そして、参照中の印刷ジョブを変換する変換プログラムが現在変換処理中である場合には処理をステップS410へ移し、キューの次のデータを参照する(ステップS410)。そして次に、キュー内に次のジョブが存在するかを確認する(ステップS413)。ここでキュー内に参照中の印刷ジョブの後にジョブがなければ変換可能な印刷ジョブを決定する処理を終了する。一方、ジョブがあれば処理をステップS408に戻し、キューの次のデータを参照する。
一方、参照中の印刷ジョブを変換する変換プログラムが現在変換処理中ではない場合には処理をステップS411に進め、同時変換数を1つインクリメントする(ステップS411)。そして、参照中の印刷ジョブを、この印刷ジョブを変換する変換プログラムに送出する(ステップS412)。なお、どの印刷ジョブをどの変換プログラムに渡すのかについては、例えば、印刷ジョブのヘッダに、変換処理で用いるプログラム名を記しておくようにしても良いし、第3の実施形態でも説明するように、ジョブ名から特定可能なように、予め設定しておいても良い。
以上の処理により、印刷ジョブを受信した順に変換し、印刷装置に対して送出することができる。
ここで、1つの変換プログラムが複数の印刷ジョブの変換処理を並行して行うことができるので有れば、ステップS409では、先頭の印刷ジョブを変換する変換プログラムが現在変換している印刷ジョブの数が、規定数以上であるか否かをチェックし、規定数よりも少ないので有れば、処理をステップS411に進めるようにすればよい。
なお、図3に示したプリントサーバ103を構成する各部についてであるが、テーブル、処理キューに関してはRAM22内、若しくはハードディスク28内に設けるようにすればよいし、印刷データ管理部313、変換プログラム308、309に関してはプログラムの形態でもって実装し、CPU21がこのプログラムを実行するようにすればよい。この場合、図4のフローチャートに従った処理をCPU21に実行させるためのプログラムやデータ(図3に示したプリントサーバ103を構成する各部の機能を実現するためのプログラムやデータ)は、ハードディスク28内に保持されており、これはCPU21による制御に従って適宜RAM22にロードされる。そして、CPU21がこのプログラムやデータを用いて処理を実行することで、プリントサーバ103は、図4に示したフローチャートに従った処理を実行することになる。
[第2の実施形態]
第1の実施形態では、印刷ジョブの供給元を業務A用アプリケーション、業務B用アプリケーションの2つとし、更に、印刷装置を1つ(印刷装置104)とした場合について説明したが、それぞれの数はこれに限定するものではなく、それぞれがいくつの場合についても、第1の実施形態に係る処理の本質は同じである。
図6は、業務A用アプリケーション、業務B用アプリケーションのそれぞれから受けた印刷ジョブを印刷装置1,2の何れかに出力する構成における統合処理キュー312の構成例を示す図である。
図7は、業務A用アプリケーション、業務B用アプリケーション、業務C用アプリケーション、業務D用アプリケーション、業務E用アプリケーション、業務F用アプリケーションのそれぞれから送出された印刷ジョブを印刷装置1〜印刷装置4の何れかに送出する場合の統合処理キュー312の構成例を示す図である。
後者の例を用いて説明すると、この場合、プリントサーバ103内には、それぞれの業務アプリケーションに対応するテーブル(業務A用アプリケーションの場合には業務A用管理テーブル304)、処理キュー(業務A用アプリケーションの場合には業務A用処理キュー306)、変換プログラム(業務A用アプリケーションの場合には変換プログラム308)が設けられていることになり、且つ変換プログラムの出力先には、印刷装置1〜4が存在することになる。
この場合、それぞれのアプリケーションから送出された印刷ジョブを、対応する変換プログラムでもって一気に変換すると、CPU21のパフォーマンスが落ちるなどの問題が生じる。そこでこのような場合には、上記同時変換可能数を調整し、全てのアプリケーションに対応する印刷ジョブの変換処理を行わないようにすればよい。これにより、CPU21のパフォーマンスを越えて無理に処理を行うことでCPU21のパフォーマンスが低下するといった問題を回避することができる。
また、出力先が異なる場合、即ち、複数の出力先が存在する場合には、統合処理キュー312が保持するジョブ群を同じ出力先毎にグループ分割し、印刷データ管理部313は、それぞれのグループ毎に、第1の実施形態と同様の処理を行う。即ち、グループ毎に先頭の印刷ジョブを参照し、参照した印刷ジョブの変換処理が可能で有れば(上記ステップS408,S409における判断結果が共にYESとなるような場合)、グループ毎の先頭の印刷ジョブを、対応する変換プログラムに送出する処理を行う。
このような場合、例えば、同時変換可能数を「3」と設定したとすると、区画は5つあるため変換プログラムは5つ存在するが、そのうち同時には3つまで動作することが可能となる。この条件において変換されるのは印刷装置1に出力する印刷ジョブ群のうち先頭の印刷ジョブである“データA1”、印刷装置2に出力する印刷ジョブ群のうち先頭のジョブである“データC1”、印刷装置3に出力する印刷ジョブ群のうち先頭のジョブである“データD2”がそれぞれ変換プログラムに送出される。
ここで業務Dの“データD1”は業務Dの区画の先頭のデータであるが、出力対象が印刷装置2であるため“データC1”、“データC2”の後に出力されるべきである。そのため“データD1”は変換対象とならない。また、“データE1”は業務Eの先頭のデータであり、印刷装置4の先頭であるが、キューの上位にすでに3つ変換対象が存在するため変換対象とはならない。
また、この状態で“データC1”、“データC2”がデータが小さく先に変換処理が終わった時、次に変換対象として候補となるのは出力装置2へ出力する”データD1“と出力装置4に出力する”データE1“である。この状態において、”データD1”の属する業務D用の区画は既に“データD2”の変換処理が行われている。そのため“データD1”は変換対象とせず、印刷装置4へ出力を行う“データE1”が業務E用の変換プログラムへ通知される。
[第3の実施形態]
第1の実施形態でも説明したとおり、新たな業務用アプリケーションからの印刷ジョブを処理するためには、この業務用アプリケーションに対応する管理テーブル、処理キュー、変換プログラムのセットを新たに設ける必要がある。
より詳しくは、この新たな業務用アプリケーション(以下、「業務用アプリケーションC」と呼称する)からの印刷ジョブを処理するためには、業務用アプリケーションCからの印刷ジョブ(業務C用印刷ジョブ)を管理するための管理テーブル(業務C用管理テーブル)、処理キュー(業務C用処理キュー)をRAM22内、若しくはハードディスク28内に設ける必要があるし、業務C用処理キューに業務C用印刷ジョブが投入された場合には、印刷データ管理部313によってこの業務C用印刷ジョブを統合処理キュー312に投入させるべく、印刷データ管理部313にこの業務C用処理キューを認知させる必要がある。また、業務C用印刷ジョブを、この業務C用印刷ジョブを変換するための変換プログラム(業務C用変換プログラム)に渡す必要があるし、変換後の印刷ジョブを指定された印刷装置に送出する必要がある。
このような一連の処理を行うためには、このような処理を行うためのプログラムやデータをハードディスク28内にインストールした後に、例えば、プリントサーバ103が有するマウス27やキーボード26などを操作し、プリントデータ管理部303が有する表示装置に表示されているGUIなどを用いて、様々な設定を行う必要がある。
このように、様々な業務毎に設定された内容を記した設定データには、例えば以下の項目が記述されている。
[Section1]
Directory=d:\rs\sec\sec1\
Name=経理
[Section2]
Directory=d:\rs\sec\sec2\
Name=人事
即ち、ハードディスク28内の「d:\rs\sec\sec1\」には、ある業務用アプリケーション(例えば、業務A用アプリケーション)から受けた印刷ジョブを処理する際の様々な設定事項が記された設定ファイルが格納されており、この設定ファイルには、「経理」なる名称が付けられている。また、この設定ファイルには、「Section1」なるタグが付けられている。
一方、ハードディスク28内の「d:\rs\sec\sec2\」には、別の業務用アプリケーション(例えば、業務B用アプリケーション)から受けた印刷ジョブを処理する際の様々な設定事項が記された設定ファイルが格納されており、この設定ファイルには、「人事」なる名称が付けられている。また、この設定ファイルには、「Section2」なるタグが付けられている。
更に設定データには、以下の事項も記されている。
[DataAA]
Section=1
[DataBB]
Section=2
即ち、この設定事項は、外部から受けた印刷ジョブのジョブ名の先頭に「AA」が付いていれば、この印刷ジョブは、例えば業務A用アプリケーションからのものであると判断し、外部から受けた印刷ジョブのジョブ名の先頭に「BB」が付いていれば、この印刷ジョブは、例えば業務B用アプリケーションからのものであると判断するよう、設定されたものである。この判断結果は、区画IDに反映される。
従って、このような設定によれば、複数の業務のそれぞれに対応する変換プログラムのうち何れかに印刷ジョブを送出する場合には、この印刷ジョブのジョブ名の先頭を参照することで、印刷ジョブの供給元を特定することができるし、供給元に対応する変換プログラムに、この印刷ジョブを送出することができる。
なお、以上の各実施形態では、業務毎に設けられたアプリケーションによって、印刷ジョブの種類を分けていたが、これに限定するものではなく、印刷ジョブの種類分けはどのようなジャンル毎に分けても良い。
[その他の実施形態]
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。 また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
本発明の第1の実施形態に係るシステムの概略構成を示すブロック図である。 プリントサーバ103に適用可能なコンピュータのハードウェア構成を示す図である。 プリントサーバ103の機能構成、及びその周辺環境を示すブロック図である。 印刷データ管理部313が行う処理の詳細を示すフローチャートである。 統合処理キュー312の構成例を示す図である。 業務A用アプリケーション、業務B用アプリケーションのそれぞれから受けた印刷ジョブを印刷装置1,2の何れかに出力する構成における統合処理キュー312の構成例を示す図である。 業務A用アプリケーション、業務B用アプリケーション、業務C用アプリケーション、業務D用アプリケーション、業務E用アプリケーション、業務F用アプリケーションのそれぞれから送出された印刷ジョブを印刷装置1〜印刷装置4の何れかに送出する場合の統合処理キュー312の構成例を示す図である。 ある区画の処理キューの内容を示す従来のGUIの表示例を示す図である。 業務A用管理テーブル304の構成例を示す図である。 業務A用処理キュー306の構成例を示す図である。 従来技術について説明する図である。

Claims (5)

  1. 複数の業務アプリケーションで生成される印刷ジョブを出力するそれぞれの外部装置が接続されているネットワークに接続されており、当該外部装置から出力された印刷ジョブを、当該ネットワークを介して受信可能なサーバ装置であって、
    前記ネットワークを介して受信した印刷ジョブを、前記業務アプリケーション毎に設けられている処理キューのうち、該受信した印刷ジョブを生成した業務アプリケーションに対して設けられている処理キューに登録する登録手段と、
    前記ネットワークを介して受信した印刷ジョブを、出力先の印刷装置に適したデータ形式に変換する処理を行う、前記業務アプリケーション毎に設けられている変換手段と、
    前記業務アプリケーション毎の処理キューを監視し、該処理キューに印刷ジョブが登録された場合、当該印刷ジョブを、前記サーバ装置が受信した順に印刷ジョブを統合して管理するための統合処理キューとして登録し、該統合処理キューとして登録されている印刷ジョブ群から、前記サーバ装置が受信した順に、変換対象の印刷ジョブを選択する印刷データ管理手段と、
    前記データ管理手段による選択印刷ジョブを、該選択印刷ジョブを生成した業務アプリケーションに対して設けられている前記選択印刷ジョブ用の変換手段、に対して送出する送出手段と、
    前記選択印刷ジョブ用の変換手段が動作中であるか否かを判定する判定手段とを備え、
    前記送出手段は、
    前記選択印刷ジョブ用の変換手段が、前記判定手段により動作中でないと判定され、且つ前記選択印刷ジョブが、前記統合処理キューとして登録されていて状態が未処理である印刷ジョブのうち前記選択印刷ジョブと同一の出力先である印刷ジョブの先頭であった場合には、前記選択印刷ジョブを前記選択印刷ジョブ用の変換手段へ送出し、一方、前記判定手段により動作中でないと判定されかつ、前記選択印刷ジョブが前記先頭でない場合は、前記選択印刷ジョブの送出は行わない
    ことを特徴とするサーバ装置。
  2. 前記印刷データ管理手段は、出力先の印刷装置が複数存在する場合、前記統合処理キューとしての印刷ジョブを、出力先の印刷装置毎にグループ分けして登録し、グループ毎に変換対象の印刷ジョブを選択し、
    前記送出手段は、グループ毎に選択された選択印刷ジョブを、該選択印刷ジョブを生成した業務アプリケーションに対して設けられている選択印刷ジョブ用の変換手段、に対して送出する
    ことを特徴とする請求項1に記載のサーバ装置。
  3. 複数の業務アプリケーションで生成される印刷ジョブを出力するそれぞれの外部装置が接続されているネットワークに接続されており、当該外部装置から出力された印刷ジョブを、当該ネットワークを介して受信可能なサーバ装置の制御方法であって、
    前記ネットワークを介して受信した印刷ジョブを、前記業務アプリケーション毎に設けられている処理キューのうち、該受信した印刷ジョブを生成した業務アプリケーションに対して設けられている処理キューに登録する登録工程と、
    前記ネットワークを介して受信した印刷ジョブを、前記業務アプリケーション毎に前記サーバ装置に設けられている、出力先の印刷装置に適したデータ形式に変換する処理を行う変換手段のうち、該受信した印刷ジョブを生成した業務アプリケーションに対して設けられている変換手段で変換する変換工程と、
    前記業務アプリケーション毎の処理キューを監視し、該処理キューに印刷ジョブが登録された場合、当該印刷ジョブを、前記サーバ装置が受信した順に印刷ジョブを統合して管理するための統合処理キューとして登録し、該統合処理キューとして登録されている印刷ジョブ群から、前記サーバ装置が受信した順に、変換対象の印刷ジョブを選択する印刷データ管理工程と、
    前記データ管理工程による選択印刷ジョブを、該選択印刷ジョブを生成した業務アプリケーションに対して設けられている前記選択印刷ジョブ用の変換手段、に対して送出する送出工程と、
    前記選択印刷ジョブ用の変換手段が動作中であるか否かを判定する判定工程とを備え、
    前記送出工程では、
    前記選択印刷ジョブ用の変換手段が、前記判定工程で動作中でないと判定され、且つ前記選択印刷ジョブが、前記統合処理キューとして登録されていて状態が未処理である印刷ジョブのうち前記選択印刷ジョブと同一の出力先である印刷ジョブの先頭であった場合には、前記選択印刷ジョブを前記選択印刷ジョブ用の変換手段へ送出し、一方、前記判定工程で動作中でないと判定されかつ、前記選択印刷ジョブが前記先頭でない場合は、前記選択印刷ジョブの送出は行わない
    ことを特徴とするサーバ装置の制御方法。
  4. コンピュータを、請求項1又は2に記載のサーバ装置が有する各手段として機能させるためのコンピュータプログラム。
  5. 請求項に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
JP2005346768A 2005-11-30 2005-11-30 サーバ装置、及びその制御方法 Expired - Fee Related JP4656651B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005346768A JP4656651B2 (ja) 2005-11-30 2005-11-30 サーバ装置、及びその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005346768A JP4656651B2 (ja) 2005-11-30 2005-11-30 サーバ装置、及びその制御方法

Publications (3)

Publication Number Publication Date
JP2007156532A JP2007156532A (ja) 2007-06-21
JP2007156532A5 JP2007156532A5 (ja) 2009-04-02
JP4656651B2 true JP4656651B2 (ja) 2011-03-23

Family

ID=38240861

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005346768A Expired - Fee Related JP4656651B2 (ja) 2005-11-30 2005-11-30 サーバ装置、及びその制御方法

Country Status (1)

Country Link
JP (1) JP4656651B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5235595B2 (ja) 2008-10-14 2013-07-10 キヤノン株式会社 ファイル制御装置及びその制御方法、印刷システム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05265775A (ja) * 1992-03-19 1993-10-15 Hitachi Ltd ジョブ実行予測制御方法およびジョブ実行状況表示方法
JP2000181565A (ja) * 1998-12-18 2000-06-30 Fujitsu Ltd メッセージの表示装置、方法およびそのための記録媒体とメッセージの監視システム
JP2001043041A (ja) * 1999-07-30 2001-02-16 Tokyo Denshi Sekkei Kk プリンタ接続装置、該装置への変換プログラムインストール方法およびプリントシステム
JP2003143214A (ja) * 2001-11-02 2003-05-16 Sony Corp 端末装置、パケット中継装置、パケット送信プログラム送信方法、パケット送信プログラム指定方法、パケット送信方法、記録媒体、ネットワーク中継システム及びパケット送信プログラム設定方法
JP2003323273A (ja) * 2002-04-30 2003-11-14 Ricoh Co Ltd 印刷サーバとプログラムと記録媒体

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05265775A (ja) * 1992-03-19 1993-10-15 Hitachi Ltd ジョブ実行予測制御方法およびジョブ実行状況表示方法
JP2000181565A (ja) * 1998-12-18 2000-06-30 Fujitsu Ltd メッセージの表示装置、方法およびそのための記録媒体とメッセージの監視システム
JP2001043041A (ja) * 1999-07-30 2001-02-16 Tokyo Denshi Sekkei Kk プリンタ接続装置、該装置への変換プログラムインストール方法およびプリントシステム
JP2003143214A (ja) * 2001-11-02 2003-05-16 Sony Corp 端末装置、パケット中継装置、パケット送信プログラム送信方法、パケット送信プログラム指定方法、パケット送信方法、記録媒体、ネットワーク中継システム及びパケット送信プログラム設定方法
JP2003323273A (ja) * 2002-04-30 2003-11-14 Ricoh Co Ltd 印刷サーバとプログラムと記録媒体

Also Published As

Publication number Publication date
JP2007156532A (ja) 2007-06-21

Similar Documents

Publication Publication Date Title
EP0882580B1 (en) A method of managing print files in an electronic prepress system, and system using the method
US7719703B2 (en) Print control program and medium and information processing apparatus
US8032464B2 (en) Server printing apparatus and its control method, and computer program
JP3854963B2 (ja) 情報処理装置、印刷システム、負荷分散印刷方法、及び制御プログラム
US8279462B2 (en) Information processing apparatus and notification method
US20070112441A1 (en) Modular layer for abstracting peripheral hardware characteristics
US20070091361A1 (en) Printer, print control method, and program for executing print control method
US7538902B2 (en) Print control program and information processing apparatus
US8711390B2 (en) Method and apparatus for executing load distributed printing
US8689242B2 (en) Information processing apparatus for controlling installation, method for controlling the apparatus and control program for executing the method
US20120162714A1 (en) Printing system, printing device, host device, and computer accessible storage storing program therefor
JP3927949B2 (ja) 情報処理装置、負荷分散印刷方法、プログラム、及び記憶媒体
JP5371611B2 (ja) データ処理システム、サーバ、サーバの制御方法、及びプログラム
US20070002359A1 (en) Image forming system, image forming apparatus and data management method thereof
US20090164671A1 (en) Macro transmission server apparatus and control method therefor
JP4656651B2 (ja) サーバ装置、及びその制御方法
US8424063B2 (en) Workflow management apparatus and workflow management method
JP4886501B2 (ja) 印刷装置、印刷制御方法、及びプログラム
US20050068556A1 (en) Method and system to manage multiple format fonts in an image generating device
JP5164649B2 (ja) 処理フロー実行装置及びその制御方法、並びにプログラム
US7623253B1 (en) Indirect processing of print jobs
JP4049269B2 (ja) サーバ装置及びその制御方法、プログラム
JP2008027217A (ja) 情報処理装置および印刷装置を備える印刷システム
JP2005222267A (ja) 印刷制御装置,印刷制御方法,プログラム,および記録媒体遠隔管理システム
JP2019106606A (ja) 情報処理装置、その制御方法、及びプログラム、並びに、情報処理システム、その制御方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081128

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100823

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101022

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101217

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101220

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140107

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees