JP6272080B2 - 情報処理装置及び分散印刷システム、印刷制御方法、プログラム - Google Patents

情報処理装置及び分散印刷システム、印刷制御方法、プログラム Download PDF

Info

Publication number
JP6272080B2
JP6272080B2 JP2014036000A JP2014036000A JP6272080B2 JP 6272080 B2 JP6272080 B2 JP 6272080B2 JP 2014036000 A JP2014036000 A JP 2014036000A JP 2014036000 A JP2014036000 A JP 2014036000A JP 6272080 B2 JP6272080 B2 JP 6272080B2
Authority
JP
Japan
Prior art keywords
printer
print
document data
information processing
printed
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
JP2014036000A
Other languages
English (en)
Other versions
JP2015162026A (ja
JP2015162026A5 (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 Inc
Original Assignee
Canon 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 Inc filed Critical Canon Inc
Priority to JP2014036000A priority Critical patent/JP6272080B2/ja
Priority to US14/601,383 priority patent/US9691010B2/en
Publication of JP2015162026A publication Critical patent/JP2015162026A/ja
Publication of JP2015162026A5 publication Critical patent/JP2015162026A5/ja
Application granted granted Critical
Publication of JP6272080B2 publication Critical patent/JP6272080B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/40Details not directly involved in printing, e.g. machine management, management of the arrangement as a whole or of its constitutive parts
    • G06K15/408Handling exceptions, e.g. faults
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J29/00Details of, or accessories for, typewriters or selective printing mechanisms not otherwise provided for
    • B41J29/38Drives, motors, controls or automatic cut-off devices for the entire printing mechanism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1206Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1228Printing driverless or using generic drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Description

本発明は、情報処理装置及び分散印刷システム、印刷制御方法、プログラムに関する。
複数のクライアント端末からの印刷リクエストに対しサーバで一括して印刷ジョブを扱うプリントサーバにおいて、プリントサーバを複数配備し、各サーバで分散して印刷処理を行う分散プリントシステムが実現されている。このような分散印刷システムでは、印刷を担当するプリンタを各プリントサーバで分担し管理することで印刷処理の負荷分散を実現している。サーバの分散構成をとることで、プリントサーバは大量の印刷ジョブを扱うことが可能であり、更に特定のプリントサーバの稼働状態に異常が発生した場合、他のプリントサーバが引き継いで印刷を行うことが可能なサーバの冗長構成を実現している。このように分散設置される複数の処理装置を介して文書データ等の出力を行うシステムの処理分散化技術について、例えば、特許文献1では、プリントサーバに対するプリンタの割当を管理し、プリントサーバ、プリンタの稼働状態、負荷状況により、プリントサーバに対するプリンタオブジェクト(または論理プリンタ)の割り当てを変更する技術が提案されている。なおプリンタオブジェクトすなわち論理プリンタとは、プリンタサーバのソフトウェアから見たプリンタであり、指定したプリンタオブジェクトに対してデータや指示等を含むメッセージを与えることでプリンタオブジェクトに対応したプリンタ(あるいは仮想的なプリンタ)により印刷が実行される。このような論理プリンタをソフトウェアにより作成して、それを通して印刷を行う技術は、例えばウインドウズ(登録商標)等のオペレーティングシステムにより提供されるが、ウインドウズ等に限られるものではない。
また、通常、プリントサーバで扱う文書データ等は、プリンタに印刷データを送る前にプリンタが解釈できるプリンタ言語にプリンタドライバを用いて変換するために、プリンタドライバに対応するプリンタオブジェクトが必要となる。プリンタオブジェクトはあらかじめプリントサーバに作成しておき、印刷時にそのプリンタオブジェクトを使用し印刷するのが一般的である。しかし、動的にプリンタオブジェクトを作成して印刷を行う技術として、特許文献2が提案されている。これはプリンタドライバをインストールしていないプリンタを用いて印刷を行うたびに、専用プリンタドライバに対応するプリンタオブジェクトを自動的に作成する方法を提案している。
特開2006−260216号公報 特開2011−76226号公報
スケールアウトが容易に可能な分散プリントサーバにおいて、印刷データをプリンタ言語に変換するためには、プリンタに対応したプリンタドライバごとのプリンタオブジェクトを複数ある各プリントサーバにあらかじめ登録しておく必要がある。しかし、この場合サーバを増やすごとに各プリントサーバにプリンタオブジェクトを登録するには多大な作業量がかかる。また、あらかじめ必要なプリンタオブジェクトを最大値登録しておくことは、印刷データの種類によりプリンタ言語に変換が不要でプリンタオブジェクトを使用しない印刷の場合でも無駄なリソースもサーバに登録することになりスプーラサービスに多大な負荷を与えてしまう。また、動的にプリンタオブジェクトを登録する技術として特許文献2があるが、この技術は、1サーバ内で動的にプリンタオブジェクトを登録する技術であり、分散サーバ構成における動的プリンタオブジェクト登録を実現することは困難である。
また、特許文献1に記載の、サーバを分散して動的にプリンタオブジェクトの割り当てを変更する技術では、各サーバが担当するプリンタの割り当てが決まっており、印刷量の増大に対するサーバのスケールアウトのためにサーバ構成を容易に変更することは難しい。
本発明は、これらの課題を解決する方法を提案することを目的としており、具体的には、リソースを無駄に使用しない、効率的なスケールアウト可能な分散印刷システムの実現を目的とする。
上記目的を達成するために本発明は以下の構成を備える。
システムにより提供される、プリンタに対応したプリンタオブジェクトを介して、あるいは介さずに前記プリンタによる印刷の指示を行う情報処理装置であって、
印刷対象の文書データが、指定されたプリンタに対応したプリンタオブジェクトを介さずに印刷可能な文書データであるか否かを判定する第1の判定手段と、
前記第1の判定手段により印刷可能ではないと判定された場合に、前記指定されたプリンタに対応したプリンタオブジェクトが存在するか否か判定する第2の判定手段と、
前記第2の判定手段により、前記指定されたプリンタに対応したプリンタオブジェクトが存在しないと判定された場合、当該プリンタオブジェクトを、前記システムにより生成させるための手段と
を有し、
前記情報処理装置は、クライアント端末からの印刷要求がロードバランサにより分散して送信される複数の情報処理装置のひとつであることを特徴とする。
本発明によれば、印刷するデータによりプリンタオブジェクトの必要性を判断して、必要なデータ種の場合に動的にプリンタオブジェクトを作成して印刷を行うことで、リソースを無駄に使用しない効率的なスケールアウト可能な分散印刷システムが実現可能となる。
ネットワーク構成を示すブロック図 プリントサーバ、クライアント端末、プリンタのハードウェア構成図 プリントサーバ、プリントWebサーバのモジュール構成図 プリントサーバ、プリントWebサーバのソフトウェア構成図 プリントサーバで管理する文書情報、印刷ジョブ情報、印刷履歴情報、プリンタ情報の構成図 プリンタオブジェクトが必要ない文書種の印刷シーケンス図 プリンタオブジェクトが必要な文書種の印刷シーケンス図 プリンタオブジェクト作成フロー プリンタ削除情報の構成図 プリンタ情報、プリンタオブジェクト削除フロー
以下、本発明を実施するための形態について図面を用いて説明する。
[実施例1]
<分散印刷システムの構成>
図1は、本発明の実施の形態に係る印刷システムの全体構成を示す図である。
図1において、クライアント端末101〜102、プリントサーバ103〜105、記憶装置106、プリントWebサーバ107〜109、プリンタ110〜112、ロードバランサ113〜114は、ネットワーク115を介して接続されている。図において、クライアント端末101〜102、プリントサーバ103〜105、プリントWebサーバ107〜109、プリンタ110〜112、ロードバランサ113〜114は、複数台接続されていることを仮定している。クライアント端末101〜102、プリントサーバ103〜105、プリントWebサーバ107〜109、ロードバランサ113〜114は、例えば汎用コンピュータにそれぞれの機能に応じたソフトウェアをインストールすることで実現される。ネットワーク115は、例えば、インターネット等のLAN、WAN、電話回線、専用デジタル回線、ATMやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等のいずれである。またこれらの組み合わせにより実現される、いわゆる通信ネットワークである。ネットワーク115は、データの送受信が可能であればよい。そして、クライアント端末101〜102からロードバランサ114を介したプリントWebサーバ107〜109への通信手段、プリントサーバ103〜105からプリンタ110〜112への通信手段は異なっていてもよい。クライアント端末101〜102は、例えば、デスクトップパソコン、ノートパソコン、モバイル端末、PDA(パーソナルデータアシスタント)等であるが、プログラムの実行環境が内蔵された携帯電話であってもよい。クライアント端末101〜102では、Webブラウザ(インターネットブラウザ、WWWブラウザ、World Wide Webの利用に供するブラウザ)等のプログラムを実行する環境が内蔵されている。プリントWebサーバ107〜109は、印刷する文書を識別する情報と、出力先プリンタを印刷リクエスト(あるいは印刷要求あるいは印刷指示)と共にクライアント端末101〜102のWebブラウザからロードバランサ114を介して受ける。ロードバランサ114は、クライアント端末101〜102から受けたリクエストを、サーバ数均等、または、コネクション数均等、または、データ通信量均等、または応答時間が短いサーバへの分散、またはラウンドロビン等の分散方式によりプリントWebサーバ107〜109に振り分ける。また、ロードバランサ113は、プリントWebサーバ107〜109からの処理リクエストを前述の分散方式によりプリントサーバ103〜105に振り分ける。プリントサーバ103〜105は、プリントWebサーバ107〜109から受けた処理リクエストに従って文書データを印刷データに変換し、その印刷データをプリンタ110〜112に送る。または、プリントサーバ103〜105は、文書データの文書種によっては、印刷データに変換せずに、文書データそのものをプリンタ110〜112に送る。プリンタ110〜112はプリントサーバ103〜105から印刷データまたは、文書データを受け取ると印刷を行う。ストレージ106はハードディスクドライブ(HDD)ソリッドステートドライブ(SSD)等の記憶装置を備えたデータ保存領域でありNAS(Network Attached Storage)等のネットワーク接続ストレージである。プリントサーバ103〜105は他サービス、または他プログラムから投入された文書データをファイルとしてストレージ106に保持する。また、プリントサーバ103〜105は後述の文書情報501、印刷ジョブ情報511、印刷履歴情報521、プリンタ情報531をデータベースとしてストレージ106に保持する。文書データの文書種506としてはPDF(ポータブルドキュメントフォーマット、Portable Document Format)であったり、PDL(ページ記述言語、page description language)であったり、アプリケーションデータフォーマットであったりする。この文書種506は文書情報501に保持する。
<サーバ及びクライアントのハードウェア>
図2は、本発明の実施形態に係る印刷システムのクライアント端末101〜102、プリントサーバ103〜105、プリントWebサーバ107〜109とプリンタ110〜112のハードウェア構成図である。図2において、装置全体の制御を行うCPU202は、ハードディスク(HDD)205に格納されているアプリケーションプログラム、OS等を実行し、RAM203にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。記憶手段としてのROM204の内部には、基本I/Oプログラム等のプログラム、印刷処理の際に使用する印刷データ、プリンタ情報等の各種データを記憶する。一時記憶手段としてのRAM203は、CPU202の主メモリ、ワークエリア等として機能する。ハードディスク(HDD)205は外部記憶手段の一つであり、大容量メモリとして機能する。ハードディスク(HDD)205は、Webブラウザ等のアプリケーションプログラム、プリントサーバプログラム、プリントWebサーバ、OS、関連プログラム等を格納している。表示手段であるディスプレイ206は、キーボード207から入力したコマンドや、プリントサーバ103〜105に入稿された文書情報等を表示したりするものである。外部装置I/F208は、プリンタ、USB機器、周辺機器を接続するためのI/Fである。キーボード207は指示入力手段であるキーボードである。システムバス201は、印刷システムのプリントサーバ内におけるデータの流れを司るものである。ネットワークインタフェースカード(NIC)209は、該インタフェース209、ネットワーク115を介して外部装置とのデータのやり取りを行う。なお、上記コンピュータの構成はその一例であり、図2の構成例に限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてROM、RAM、HDDなどで変更することも可能である。
また、プリンタ110〜112のコントローラ209は、プリンタの制御系を司る機器である。プリンタの装置全体の制御を行うCPU210は、システムバス218に接続される各種デバイスとのアクセスを統括的に制御する。この制御は、ROM212に記憶された制御プログラム等あるいはディスクコントローラ(DKC216)を介して接続された外部メモリ223に記憶された制御プログラムやリソースデータ(資源情報)等に基づく。RAM211はCPU210の主メモリ、ワークエリア等として機能する。RAM211は、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。外部記憶手段213は大容量メモリとして機能し、関係プログラム等を格納している。操作パネル(操作部)221には、プリンタ110〜112の動作モード等の設定やプリンタ110〜112の動作状況の表示、複写指定等の操作を行うためのボタンおよび液晶パネルやLED214等の表示部が配置される。ネットワークインタフェースカード(NIC)219は、該インタフェース219を介して外部装置とのデータのやり取りを行う。なお、本図で示したプリントエンジン220は既知の印刷技術を利用するものであり、好適な実施系として例えば電子写真方式(レーザービーム方式)やインクジェット方式、昇華方(熱転写)方式等が挙げられる。ラスタコントローラ215は、PDL言語・PDF言語である印刷データを画像データに変換するコントローラである。機器I/F217は、USB等で接続可能な外部機器との接続I/Fである。
ここで、図3、図4、図5を用いて印刷システムにプリンタを登録する処理と、印刷システムに他サービス、または他プログラムから投入された文書データを保持する処理と、ユーザー操作によりWebブラウザ301から送られた印刷リクエストに対し、プリントサーバ103〜105が印刷データをプリンタに送信し、印刷を行う処理について説明する。図3はクライアント端末からの印刷要求に始まり、プリンタで印刷されるまでの処理の流れを、図4は、プリントWebサーバとプリントサーバそれぞれの機能ブロックを、図5はプリントサーバのジョブ管理サービス304で管理され、データベース管理部405により保存される各種情報の詳細を示す。本印刷システムはスケールアウト可能な分散構成をとったプリントサーバ103〜105を含み、プリントWebサーバ107〜109とプリントサーバ103〜105の前段にはロードバランサ113、114がそれぞれ配置され、リクエストはすべて分散されてプリントWebサーバ107〜109のいずれか、もしくはプリントサーバ103〜105の何れかが受ける構成をとる。プリントサーバ103〜105が管理する文書情報501、印刷ジョブ情報511、印刷履歴情報521、プリンタ情報531はそれぞれのプリントサーバ103〜105が共有情報としてアクセス可能なストレージ106に保持される。ただし、プリントサーバ103〜105配下で管理されるスプーラサービス305のプリンタオブジェクト412、印刷ポート413の各リソースはそれぞれのプリントサーバ103〜105が管理する。
<プリンタの登録処理>
まず、印刷システムにプリンタを登録する処理すなわちプリントサーバにプリンタを登録する処理について説明する。例えばプリンタを印刷システムに新たに追加した場合、存プリンタに関する情報(プリンタ情報)をプリントサーバに登録する。そのためにユーザー操作によりWebブラウザ301でプリンタ情報を指定するとその情報が、ロードバランサ113で振り分けられたプリントWebサーバ107〜109のWebアプリケーション108が受ける。プリンタ情報には、プリンタ名、ドライバ名、プリンタオブジェクト名、ポート名、IPアドレス・ホスト名、機種名、PDFダイレクトプリント機能の有無を示すPDFダイレクトプリント有無等の情報が含まれる。PDFダイレクトプリント機能とは、PDF形式の文書データを、プリンタがそのまま印刷する機能である。詳しくは、Webアプリケーション108のリクエスト受付部401が指定されたプリンタ情報を受けて、その受信したプリンタ情報をプリントサーバ通信部403に送る。プリントサーバ通信部403は、プリンタ情報をロードバランサ114で振り分けられたプリントサーバ103〜105のジョブ管理サービス304に送信する。送られたプリンタ情報は、ジョブ管理サービス304の登録プリンタ管理部410が受け取る。登録プリンタ管理部410は、受け取ったプリンタ情報をデータベースサービス303のデータベース管理部405に送る。データベース管理部405は受け取ったプリンタ情報のプリンタ名532が既にデータベースに登録されているか確認し、登録されていない場合は、そのプリンタ情報をストレージ106のデータベースに新たなプリンタ情報531として保存する。ここで、プリンタ情報531には、プリンタ名532、ドライバ名533、IPアドレスまたはホスト名536、機種名537、PDFダイレクト機能の有無538の各情報がある。プリンタ名532はシステムでユニーク文字列である。PDFダイレクト機能の有無538は、プリンタのオプション機能である、PDFダイレクト機能が装備されているかどうかを示すフラグである。この値が有の場合、PDFファイルを、ドライバを介することなく直接プリンタに送り印刷することが可能である。無の場合はドライバでPDLに変換し、プリンタに送る印刷される。ここで、プリンタオブジェクト名とは、プリンタオブジェクトすなわち論理プリンタの識別情報である。プリンタオブジェクトは、プリンタサーバから見たソフトウェア上のプリンタ、すなわち論理プリンタであり、ドライバを用いた印刷の際には、特定したプリンタオブジェクトすなわち論理プリンタに対してデータや指示等を含むメッセージを与えることでプリンタオブジェクトに対応したプリンタにより印刷が実行される。またプリンタオブジェクトにはあらかじめ指定された印刷設定が関連付けられており、あるいは含まれており、プリンタオブジェクトを指定することで、使用するプリンタのほか印刷設定も指定される。この印刷設定は変更することもできる、ここでいうプリンタには、ソフトウェアで実現した仮想的なプリンタも含む。またプリンタに対応したドライバは、本例では予めインストールされているものとする。このドライバはアプリケーションデータをPDLに変換する機能を有するものであるので、たとえプリンタ110〜112が複数の機種のプリンタであったとしても、同一のPDL(ページ記述言語)に対応したものであれば、共通のドライバを用いることができる。ここまでが、印刷システムにプリンタを登録する処理の説明となる。
<文書データの投入及び保持>
次に、印刷システムに他サービス、または他プログラムから投入された文書データをプリントサーバ103〜105が保持する処理について以下で説明する。印刷システムは、他サービス、または他プログラムから投入される文書データと文書情報である文書名503、文書種506をロードバランサ113で振り分けられたプリントWebサーバ107〜109のWebアプリケーション108が受ける。文書種とは文書データの種類であり、例えばPDFファイルであることを示す情報である。もちろん示される情報はPDFファイルに限らず、例えばJPEGファイルなど、プリンタドライバを用いずともプリンタ単独で印刷し得る文書とそうでない文書とを区別するための情報である。詳しくは、文書データおよび文書情報をWebアプリケーション108のリクエスト受付部401が受けて、その受信した文書データおよび文書情報をプリントサーバ通信部403に送る。プリントサーバ通信部403は、文書データおよび文書情報をロードバランサ114で振り分けられたプリントサーバ103〜105のジョブ管理サービス304に送信する。送られた文書データおよび文書情報は、ジョブ管理サービス304の文書データ管理部407が受け取る。文書データ管理部407は、文書ID502を発行し、文書名503、文書種506、受付日時505と、文書ステータス504として「待機中」の文書情報501を作成する。文書ステータス504としては、「待機中」「印刷待ち」「印刷中」「印刷済み」「エラー終了」「キャンセル終了」等がある。また、前述の文書情報501は、Webブラウザ301で文書情報一覧情報として表示する。文書データ管理部407は、文書情報501をデータベースサービス309のデータベース管理部405に送る。文書情報501を受け取ったデータベース管理部405は、ストレージ106のデータベースに保存する。また、文書データ管理部407は、文書データをデータベースサービス309のデータファイル管理部405に送る。データファイル管理部405は、受け取った文書データをストレージ106のファイルシステムに保存する。ここで、データベースサービス303は、ストレージ106に文書データおよび文書情報501、印刷ジョブ情報511、印刷履歴情報521、プリンタ情報531を管理する。このストレージ106は複数に分かれたプリントサーバ103〜105の各データベースサービス303から共有管理されている。ここまでが、印刷システムに他サービス、または他プログラムから投入された文書データをプリントサーバ103〜105が保存する処理の説明となる。
<印刷処理>
次に、ユーザー操作によりWebブラウザ301から送られた印刷リクエストに対し、プリントサーバ103〜105が印刷データをプリンタに送信し、印刷を行う処理すなわち印刷制御の手順について図6、7のシーケンス図を交えて説明する。図6は、文書種によりスプーラサービスを介さない印刷シーケンスであり、図7は文書種によりスプーラサービスを介し、印刷を行うシーケンス図となる。なお図は別々となっているが、後述のように処理はS606、S706から条件に応じて分岐すればよい。また、図7においては、PDL生成ドライバ411、プリンタオブジェクト412、印刷ポート413が、それらを含むスプーラサービス305と同列に記載されているが、これは説明の便宜であって、図7のスプーラサービス305は、PDL生成ドライバ411、プリンタオブジェクト412、印刷ポート413以外のモジュールによる機能を代表している。また図7のポートモニタは、図4には図示されていないが、例えばウインドウズ(登録商標)などのオペレーティングシステムにより提供され、要求に応じて印刷ポート413を作成し、あるいは削除するなどの機能を有する。これはウィンドウズ(登録商標)には限らず、他のオペレーティングシステムであっても同等な機能に対応している。
S601、S701において、Webブラウザ301からの印刷リクエストをロードバランサ114が受ける。印刷リクエストには、ユーザーがWebブラウザ301で表示される文書一覧と印刷プリンタ一覧から指定した印刷対象の文書データIDとプリンタ名というそれぞれの識別情報が含まれている。S602、S702において、ロードバランサ114は印刷リクエストを振り分け、印刷リクエストが振り分けられたプリントWebサーバのWebアプリケーション302のリクエスト受付部401が受ける。S603、S703で、Webアプリケーション302は、印刷リクエストに含まれた文書ID502とプリンタ名532をWebブラウザ301から受け取る。リクエスト受付部401は受信した文書ID502とプリンタ名532をプリントサーバ通信部403に送る。S603、S703において、プリントサーバ通信部403は、文書ID502とプリンタ名532を含む印刷指示をロードバランサ114に送信する。S604、S704において、ロードバランサ114は、プリントサーバの負荷等に応じて印刷指示を振り分け、プリントサーバ103〜105のいずれかのジョブ管理サービス304に送信する。ジョブ管理サービス304では、このデータを文書データ管理部407が受ける。Web画面生成部404は印刷リクエストを受けた旨を表した画面を作成し、レスポンス送信部402を介し、Webブラウザ301にレスポンス画面を返す。
印刷リクエストを受けたジョブ管理サービス304の文書データ管理部407は、データベース管理部405から文書ID502を基に文書情報501を取得する。具体的には印刷リクエストに含まれた文書IDを含む文書情報を取得する。また、文書データ管理部407は、文書情報501を取得できた場合にデータファイル管理部406から文書ID502に紐づく文書データを取得する。そして、文書データ管理部407は、文書情報501とプリンタ名532と文書データとを印刷ジョブ管理部409に送る。文書データ管理部407は、文書情報501のステータス504を「印刷待ち」に変更するため、変更リクエストをデータベース管理部405に送る。データベース管理部405は文書情報501のステータス504を「印刷待ち」に変更する。次に、文書情報501とプリンタ名532と文書データを受け取った印刷ジョブ管理部409は、印刷ジョブ情報511を作成する。この時、印刷ジョブ管理部409は、S605、S705において、印刷ジョブID512を発行し、新たな印刷ジョブを印刷ジョブ情報511に登録する。そしてその新たに登録した印刷ジョブ情報のステータス513を「スプール待ち」に設定する。ここで、ステータス512の値は、「スプール待ち」「スケジュール待機中」「転送中」「転送済み」「印刷中」等の値がある。そして、印刷開始日時514とプリンタ名515を設定し、データベース管理部405に印刷ジョブ情報511を送る。データベース管理部405では、この情報をストレージ106に保存する。
次に、印刷ジョブ管理部409は、S606、S706において、印刷対象の文書情報501から文書種506を確認する。すなわち文書種506を参照してプリンタドライバが必要な文書データであるか、具体的にはPDFまたはPDL(ただし指定プリンタで処理可能なPDLに限る。)のいずれかであるか否かを判定する。PDFの場合、印刷ジョブ管理部409は登録プリント管理部410に対し、プリンタ名532を渡しプリンタ情報531を取得する。登録プリント管理部410は、データベース管理部405からプリンタ名532を基にプリンタ情報531を取得し、印刷ジョブ管理部409に渡す。そして、印刷ジョブ管理部409はプリンタ情報531のPDFダイレクト機能の有無538を判定する。ここで印刷対象がPDF文書であり、かつPDFダイレクト機能があれば図6のS607から実行される。一方、印刷対象の文書がPDFでないか、あるいはPDFダイレクト機能がないなら、図7のS707から実行される。
印刷対象がPDF文書でありかつ使用するプリンタにPDFダイレクト機能がある場合、または文書種506がPDLの場合、印刷ジョブ管理部409はS607において、文書データと印刷ジョブID512とプリンタ情報531とをプリンタ制御サービス306の印刷リクエスト受付部414に送る。また、S607において、印刷ジョブ管理部409は文書種506がPDLの場合も文書データと印刷ジョブID512とプリンタ情報531とをプリンタ制御サービス306の印刷リクエスト受付部414に送る。
S607において、印刷ジョブ管理部409から、PDLの文書データまたはPDFの文書データと印刷ジョブID512とプリンタ情報531とを含む印刷リクエスト(印刷指示)を受け取ったプリンタ制御サービス306の印刷リクエスト受付部414は、S608において、印刷データ送信部415を介してその文書データをプリンタ110〜112に転送する。データを受け取ったプリンタ110〜112は、S609において印刷を行う。そして、プリント制御サービス306はこの状態を印刷ジョブ管理部409に通知する。印刷ジョブ管理部409はデータベース管理部405を介して印刷ジョブ情報511のステータス513を「スケジュール待機中」(プリンタ110〜112にデータを転送する前の状態)、「転送中」、「転送済み」、「印刷中」に順次変更する。
一方、S606、S706において、文書種506がPDLデータではないか(例えばアプリケーションデータフォーマット)、またはPDFであるが指定プリンタにPDFダイレクト機能が無い場合、次の処理を行う。S707において、指定されたプリンタのプリンタ情報531のプリンタオブジェクト名534が空の場合は、つまりスプーラサービス305に指定されたプリンタのプリンタオブジェクト412が存在しない場合、印刷ジョブ管理部409は、S708において、プリンタ制御サービス306のプリンタ管理部416に対して、新たな印刷システムの印刷ポート作成要求を出す。S709において、プリンタ管理部416は、スプーラサービス305に対し印刷システムの印刷ポート作成要求を出す。S710において、スプーラサービス305は、印刷システムの印刷ポート413を作成する。そして、S711において、印刷ジョブ管理部409は、プリンタ制御サービス306のプリンタ管理部416に、指定されたプリンタに対応したプリンタオブジェクト412の登録リクエストを送る。S712において、プリンタ管理部416は、作成された印刷システムの印刷ポートに紐づく、プリンタオブジェクト412の登録リクエストをスプーラサービス305に対して送る。S713において、スプーラサービス305は、指定の印刷システムの印刷ポートに紐づくプリンタオブジェクト412を作成する。プリンタオブジェクトの作成は、例えばウインドウズ(登録商標)等のオペレーティングシステムにより提供される機能の一つである。スプーラサービス305は指定されたプリンタに対応するプリンタオブジェクトが生成されたことをプリンタ制御サービス306に応答する。その応答を受信したプリンタ制御サービス306は、S714において、プリンタ制御サービス306の印刷ジョブ管理部409は、登録されたプリンタオブジェクト412の名称を登録プリンタ管理部410に送る。登録プリンタ管理部410は、プリンタオブジェクト412の名称をプリンタ情報531のプリンタオブジェクト名534にデータベース管理部405を介して登録する。
ここで、S707において、プリンタ情報531にプリンタオブジェクト名534があると判定された場合は、つまりスプーラサービス305にプリンタオブジェクト412が存在する場合、印刷ジョブ管理部409は、プリンタ管理部416を介してスプーラサービス305からプリンタオブジェクト名534に紐づく印刷ポートの情報を取得する。印刷ジョブ管理部409は、取得した印刷ポート情報から印刷ポートが印刷システムの印刷ポート413であるか判定する。印刷システムの印刷ポート413でない場合は、S708において、印刷ジョブ管理部409は、プリンタ管理部416にスプーラサービス305に印刷システムの印刷ポート413の作成依頼を出す。S709において、プリンタ管理部416はスプーラサービス305に印刷システムの印刷ポート413の作成依頼を出す。スプーラサービス305は、S710において、印刷ポート413の作成を行う。そしてS711において、印刷ジョブ管理部409は、プリンタ管理部416にスプーラサービス305に作成された印刷ポートをプリンタオブジェクト412に紐づける設定変更依頼を出す。更に、S712において、プリンタ管理部416は、スプーラサービス305に印刷ポートをプリンタオブジェクト412に紐づける設定変更依頼を出す。S713において、スプーラサービス305は、印刷ポート設定変更依頼をプリンタオブジェクト412に出す。そして、プリンタオブジェクト412は、印刷ポートをプリンタオブジェクト412に紐づける。
ここで、前述のS707において、プリンタオブジェクト名534がある場合は、それに一致するプリンタオブジェクト412がスプーラサービス305に存在していることになる。しかし、このプリンタオブジェクト412が印刷システムの印刷ポート413でないケースがある。それは、ユーザーがプリンタオブジェクト412に直接設定可能な印刷属性を使用するために、印刷システムに自動的にプリンタオブジェクト412を作成させるのではなく、ユーザーが手動でプリンタオブジェクト412を登録しておいた場合である。この場合ユーザーは指定したプリンタのプリンタオブジェクト412に対する印刷ポートとしてはOSにデフォルトで登録されているポートを指定して登録しておく。そこで、印刷システムはプリンタオブジェクト412が存在したとしても印刷システムの印刷ポート413に紐づいているか判定し、紐づいていない場合は、印刷システムの印刷ポート413を作成し、プリンタオブジェクト412と紐づける。
次に、S715において、印刷ジョブ管理部409は、印刷ジョブID512、プリンタオブジェクト名534をプリンタ制御サービス306の印刷リクエスト受付部414に送る。更に、S716において、印刷ジョブ管理部409は、スプーラサービス305のプリンタオブジェクト412に対し、文書データ、印刷ジョブID512を送る。S717において、プリンタオブジェクト412は、PDL作成ドライバ411に文書データを送る。S718において、PDL作成ドライバ411は文書データをPDLデータに変換し、印刷ポート413にPDLデータに送る。そして、S719において、印刷ポート413は、プリント制御サービス306の印刷リクエスト受付部414に対してPDLデータができた旨をジョブIDとともに通知する。S720において、印刷リクエスト受付部414はPDLデータを取得し、印刷データ送信部415に送る。S721において、印刷データ送信部415は、PDLデータをプリンタ110〜112に転送する。データを受け取ったプリンタ110〜112は、S722において印刷を行う。そして、プリント制御サービス306はこの状態を印刷ジョブ管理部409に通知する。印刷ジョブ管理部409はデータベース管理部405を介して印刷ジョブ情報511のステータス513を「スケジュール待機中」(プリンタ110〜112にデータを転送する前の状態)、「転送中」、「転送済み」、「印刷中」に順次変更する。
次にプリンタ110〜112は印刷が終わるとS610、S723において、完了通知をプリント制御サービス306に送る。S611、S724において、プリント制御サービス306は、印刷ジョブID512とともに完了通知をジョブ管理サービス304の印刷ジョブ管理部409に送る。印刷ジョブ管理部409はデータベース管理部405を介して印刷ジョブ情報511のステータス513を「印刷済み」「エラー終了」「キャンセル終了」の何れかに変える。また、印刷ジョブ管理部409は印刷ジョブ情報511を元に印刷履歴情報521を作成し、データベース管理部405を介して登録する。印刷履歴情報521の印刷ジョブID522と印刷ジョブID512は同じ値であり、完了ステータス523は「印刷済み」「エラー終了」「キャンセル終了」の何れかとなる。また、印刷完了日時524は印刷完了時の日時であり、プリンタ名525は、印刷を行ったプリンタのプリンタ名532と同値である。
<プリンタオブジェクト作成フロー>
図8はひとつのプリントサーバにおいてスプーラサービスを介して印刷を行う場合の、プリントサーバにより実行される印刷時の処理フローである。これは図7のS706〜S714の処理手順を示したものである。
S801において、印刷対象の文書データの種類(文書種)がPDFであるか判定する。PDFの場合、印刷ジョブ管理部409は登録プリント管理部410に対し、プリンタ名532を渡しプリンタ情報531を取得する。登録プリント管理部410は、データベース管理部405からプリンタ名532を基にプリンタ情報531を取得し、印刷ジョブ管理部409に渡す。そして、印刷ジョブ管理部409はプリンタ情報531のPDFダイレクト機能の有無538を判定する。ここで印刷対象がPDF文書であり、かつPDFダイレクト機能があれば図8の処理は終了して図6のS607から実行される。一方、印刷対象の文書がPDFでないか、あるいはPDFダイレクト機能がないなら、図7のS707から実行される。なおステップS801、S802の判定は、印刷対象の文書データが、プリンタドライバなしで印刷可能か否かのテストであり、可能であれば図8の処理は終了となる。
印刷対象がPDF文書でないかまたは使用するプリンタにPDFダイレクト機能がなく、かつPDLデータでもない場合には、文書種506がアプリケーションデータフォーマット、または、文書種がPDFであっても指定プリンタにPDFダイレクト機能が無い場合、次の処理を行う。まず、S803において、指定されたプリンタのプリンタ情報531のプリンタオブジェクト名534が空であるか判定する。空の場合、つまりスプーラサービス305に指定されたプリンタのプリンタオブジェクト412が存在しない場合、印刷ジョブ管理部409は、S805において、プリンタ制御サービス306のプリンタ管理部416に対して、新たな印刷システムの印刷ポート作成要求を出する。プリンタ管理部416は、スプーラサービス305に対し印刷システムの印刷ポート作成要求を出す。スプーラサービス305は、印刷システムの印刷ポート413を作成する。そして、S806において、印刷ジョブ管理部409は、プリンタ制御サービス306のプリンタ管理部416に、指定されたプリンタに対応したプリンタオブジェクト412の登録リクエストを送る。プリンタ管理部416は、作成された印刷システムの印刷ポートに紐づく、プリンタオブジェクト412の登録リクエストをスプーラサービス305に対して送る。スプーラサービス305は、指定の印刷システムの印刷ポートに紐づくプリンタオブジェクト412を作成する。
一方、S804において、プリンタ情報531にプリンタオブジェクト名534があると判定された場合は、つまりスプーラサービス305にプリンタオブジェクト412が存在する場合、印刷ジョブ管理部409は、S807において、プリンタ管理部416を介してスプーラサービス305からプリンタオブジェクト名534に紐づく印刷ポートの情報を取得し、取得した印刷ポート情報から印刷ポートが印刷システムの印刷ポート413であるか判定する。印刷システムの印刷ポート413でない場合は、S808において、印刷ジョブ管理部409は、プリンタ管理部416にスプーラサービス305に印刷システムの印刷ポート413の作成依頼を出す。プリンタ管理部416はスプーラサービス305に印刷システムの印刷ポート413の作成依頼を出す。スプーラサービス305は、S710において、印刷ポート413の作成を行う。そして印刷ジョブ管理部409は、プリンタ管理部416にスプーラサービス305に作成された印刷ポートをプリンタオブジェクト412に紐づける設定変更依頼を出す。更に、プリンタ管理部416は、スプーラサービス305に印刷ポートをプリンタオブジェクト412に紐づける設定変更依頼を出す。スプーラサービス305は、印刷ポート設定変更依頼をプリンタオブジェクト412に出す。そして、プリンタオブジェクト412は、新たに生成した印刷ポートをプリンタオブジェクト412に紐づける。
以上の手順により、印刷対象の文書データが、プリンタドライバを必要とするデータであり、指定されたプリンタに対応したプリンタオブジェクトすなわち論理プリンタがプリントサーバにない場合には、印刷リクエストに応じて新たに作成することができる。また、プリンタオブジェクトに対応した印刷ポートがない場合にも、印刷リクエストに応じて新たに作成することができる。このように、プリントサーバは、実際に印刷を行うトリガとなる印刷リクエストに応じてプリンタオブジェクトおよび/または印刷ポートが作成されるため、分散印刷システムの拡張に際して、プリントサーバにマニュアル操作でプリンタオブジェクトを用意し、また印刷ポートを割り当てることなく、印刷を実施できる。また、プリントサーバとプリンタとの対応関係も柔軟なものとなり、ロードバランサによるプリントサーバの選択の自由度を高くすることができる。
ここで、Webアプリケーション302、データベースサービス303、ジョブ管理サービス304、スプーラサービス305、プリンタ制御サービス306はそれぞれ独立したプログラムであり、それぞれ別々の情報処理装置に配置することが可能である。これらのプログラムはそれぞれネットワークに繋がった情報処理装置に配置し、それぞれのプログラム間で通信を行う。またこれらのプログラムを同情報処理装置に配置することも可能である。
以上が、ロードバランサを配置した分散構成の印刷システムにおける、プリンタを登録する処理と、印刷システムに他サービス、または他プログラムから投入された文書データを保持する処理と、ユーザー操作によりWebブラウザ301から送られた印刷リクエストに対し、プリントサーバ103〜105が文書種により、プリンタオブジェクトの必要性を判断して、必要な文書種の場合にプリンタオブジェクトを作成して印刷を行う分散印刷システムに関する説明となる。上記のように文書種により動的にプリンタオブジェクトを作成することにより、ロードバランサ経由でリクエストが分散されルスケールアウト可能な印刷システムが実現可能となる。
[実施例2]
ここでは、本発明における印刷システムのプリンタ削除処理について図9、図10を用いて説明する。プリンタを本実施例の分散印刷システムから切り離した場合、そのプリンタ情報をプリントサーバから削除することで、資源の節約や存在しないプリンタの利用を防止できる。そのためにプリンタ削除処理すなわちプリンタ情報の削除が行われる。なお本実施例のプリンタ情報は、図9に示す通り削除フラグ901が図5のプリンタ情報に対して新たに加わっている。したがってプリンタの登録に際しては、この削除フラグ901も指定されている。削除フラグ901は、プリンタ情報の削除に際して、プリンタ情報に登録されたプリンタオブジェクトも併せて削除することを示すフラグである。
本印刷システムのプリンタ情報531は各プリントサーバ103〜105が共有しているストレージ106に管理されている。また、プリンタオブジェクト412、印刷ポート413は、各プリントサーバ103〜105配下にスプーラサービス305のリソースとして管理されている。クライアント端末からのプリンタ削除リクエストは、ロードバランサ経由でプリントWebサーバ107〜109を介してプリントサーバ103〜105の中の1台が受ける。削除リクエストには削除対象のプリンタ名が含まれている。まず、プリンタ削除リクエストを受けるとプリントサーバ103〜105の登録プリンタ管理部410が、S1001において、データベース管理部405を介してプリンタ情報531の中から削除対象のプリンタ名を検索する。S1002において、プリンタ情報531の中に削除対象のプリンタ名532が存在すると、S1003において、登録プリンタ管理部410はデータベース管理部405を介して該当するプリンタ名を含むプリンタ情報531を削除する。なお削除前に、削除対象のプリンタ情報に含まれたプリンタオブジェクト名534およびポート名535および削除フラグ901については一時保存するなどして削除後にも参照できるようにしておく。S1004において、削除したプリンタ情報531のプリンタオブジェクト名534に一致するプリンタオブジェクト名を有するプリンタ情報531を検索する。S1005において、他にあるか判定し、ある場合は、そこで削除処理は終了する。「他にある場合」とは、印刷の際に同じプリンタオブジェクトを使用するプリンタ情報が他に登録されている場合であるので、そのプリンタオブジェクトは削除せず残しておく。
削除したプリンタ情報531のプリンタオブジェクト名534に一致するプリンタオブジェクト名を有するプリンタ情報が他にない場合は、S1006において、保存しておいた削除フラグ901を参照する。このフラグは、前述のプリンタオブジェクト412の印刷設定を使用するユーザーが、プリンタオブジェクト412を印刷システムが自動的に削除しないで残しておくためのフラグである。S1006において、削除フラグ901がONの場合は、S1007において、まず削除されたプリンタ情報に含まれたプリンタオブジェクト名のプリンタオブジェクトを削除する。そのために、登録プリンタ管理部410は削除するプリンタオブジェクト名534を、プリント制御サービス306のプリンタ管理部416に送信してプリンタ削除を依頼する。プリンタ管理部416は、スプーラサービス305に対しプリンタオブジェクト412の削除を依頼する。スプーラサービス305は指定されたプリンタオブジェクト412の削除を実行する。そして、登録プリンタ管理部410は、削除プリンタオブジェクト情報911のプリンタオブジェクト名912(図9参照)に、削除依頼したプリンタオブジェクト412のプリンタオブジェクト名534を登録する。そしてS1008において、削除したプリンタ情報531に含まれたポート名535を持つ印刷ポートを削除する。そのために、印刷ジョブ管理部409は、プリンタ制御サービス306のプリンタ管理部416に対して、指定した印刷ポートの削除要求を出す。プリンタ管理部416は、スプーラサービス305に対し指定された印刷ポートの削除要求を出す。スプーラサービス305は、指定された印刷ポート413を削除する。さらに、削除プリンタオブジェクト情報911は、プリンタ削除リクエストを受け付けたプリントサーバ以外のプリントサーバに対しても送信などで拡散され、当該プリントサーバの有する削除プリンタオブジェクト情報911とマージされる。
一方、S1006において削除フラグ901がOFFの場合は、S1009において、登録プリンタ管理部410は、削除したプリンタ情報531に登録されたプリンタオブジェクト名534を持つプリンタオブジェクト412の印刷ポートを、OSにデフォルトで登録されているポート(例えばLPTポート等)に変更する依頼をプリンタ管理部416に出す。プリンタ管理部416は、スプーラサービス305に該当するプリンタオブジェクト412のポート変更依頼を出す。スプーラサービス305はプリンタオブジェクト412のポート変更を実行する。ここまでが、プリンタ削除リクエストを受けた1台のプリントサーバ103〜105のプリンタ削除処理となる。
プリンタ削除リクエストを受けていない他のプリントサーバ103〜105は、1日1回の定期処理として特定の決められた時間になると、登録プリンタ管理部410が定刻に動作し、データベース管理部405を介して削除プリンタオブジェクト情報911のプリンタオブジェクト名912を参照する。そしてプリンタ管理部416を介してスプーラサービス305にプリンタオブジェクト名912の存在を判定し、このプリンタオブジェクト412が存在する場合は、そのプリンタオブジェクトの削除依頼を行う。削除プリンタオブジェクト情報911は、該当するプリンタオブジェクトの削除が完了した後で消去してもよい。
以上が、本印刷システムの処理によりプリンタ、プリンタオブジェクト削除処理の説明となる。これによりスケールアウトが可能な分散印刷システム構成であっても、リクエスト直接受けないプリントサーバのプリンタオブジェクト412の削除が可能となる。また、プリンタ情報の削除に伴い、当該プリンタに対応するプリンタオブジェクトを削除するか否かを、ユーザにより指定することができる。
[その他の実施例]
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (12)

  1. システムにより提供される、プリンタに対応したプリンタオブジェクトを介して、あるいは介さずに前記プリンタによる印刷の指示を行う情報処理装置であって、
    印刷対象の文書データが、指定されたプリンタに対応したプリンタオブジェクトを介さずに印刷可能な文書データであるか否かを判定する第1の判定手段と、
    前記第1の判定手段により印刷可能ではないと判定された場合に、前記指定されたプリンタに対応したプリンタオブジェクトが存在するか否か判定する第2の判定手段と、
    前記第2の判定手段により、前記指定されたプリンタに対応したプリンタオブジェクトが存在しないと判定された場合、当該プリンタオブジェクトを、前記システムにより生成させるための手段と
    を有し、
    前記情報処理装置は、クライアント端末からの印刷要求がロードバランサにより分散して送信される複数の情報処理装置のひとつであることを特徴とする情報処理装置。
  2. 前記第1の判定手段は、前記印刷対象の文書データの種類が、前記指定されたプリンタにより印刷するためには変換が必要である場合に、前記指定されたプリンタに対応したプリンタオブジェクトを介さずに印刷可能な文書データではないと判定することを特徴とする請求項1に記載の情報処理装置。
  3. 前記第1の判定手段は、前記印刷対象の文書データの種類がポータブルドキュメントフォーマット(PDF)でありかつ前記指定されたプリンタがPDFを印刷する機能を有しているか、あるいは前記印刷対象の文書データの種類が前記指定されたプリンタにより実行ができるページ記述言語である場合に、前記印刷対象の文書データの種類は前記指定されたプリンタにより印刷するために変換が必要ではないと判定し、それ以外の場合に、前記印刷対象の文書データの種類は前記指定されたプリンタにより印刷するために変換が必要であると判定ることを特徴とする請求項2に記載の情報処理装置。
  4. 前記第2の判定手段により、前記指定されたプリンタに対応したプリンタオブジェクトが存在しないと判定された場合、前記指定されたプリンタに対応した印刷ポートを前記システムにより生成させ、生成された前記プリンタオブジェクトに関連付ける手段を更に有することを特徴とする請求項1乃至3のいずれか一項に記載の情報処理装置。
  5. 前記第2の判定手段により、前記指定されたプリンタに対応したプリンタオブジェクトが存在すると判定された場合、該プリンタオブジェクトに関連付けられた印刷ポートの有無を判定し、ない場合には、印刷ポートを前記システムにより生成させ、生成された前記印刷ポートを前記プリンタオブジェクトに関連付ける手段を更に有することを特徴とする請求項1乃至4のいずれか一項に記載の情報処理装置。
  6. 前記第1の判定手段により、前記印刷対象の文書データが、前記指定されたプリンタに対応したプリンタオブジェクトを介さずに印刷可能な文書データであると判定された場合には、当該文書データを印刷の指示とともに前記指定されたプリンタに送信し、
    前記第1の判定手段により、前記印刷対象の文書データが、前記指定されたプリンタに対応したプリンタオブジェクトを介さずに印刷可能な文書データではないと判定された場合には、当該文書データを前記指定されたプリンタに対応したプリンタオブジェクトに送信する手段を更に有することを特徴とする請求項1乃至5のいずれか一項に記載の情報処理装置。
  7. 要求に応じて、前記システムにより前記プリンタオブジェクトを削除させるための手段と、
    削除された前記プリンタオブジェクトの識別情報を他の情報処理装置と共有するための手段と、
    他の情報処理装置と共有する、前記他の情報処理装置により削除された前記プリンタオブジェクトの識別情報で特定されるプリンタオブジェクトを前記システムにより削除させるための手段と
    を更に有することを特徴とする請求項1乃至6のいずれか一項に記載の情報処理装置。
  8. ユーザーの指定に応じて、前記指定されたプリンタに対応したプリンタ情報を削除し、前記プリンタ情報が削除された際に、削除されたプリンタ情報に関連付けられたプリンタオブジェクトを、予め指定された設定に応じて削除するための手段を更に有することを特徴とする請求項に記載の情報処理装置。
  9. 前記プリンタオブジェクトは、プリンタ及び印刷設定と関連付けられており、前記文書データを受信した場合には、前記プリンタのプリンタドライバにより前記文書データをページ記述言語に変換し、前記印刷設定にしたがって印刷する指示を対応するプリンタに送信することを特徴とする請求項1乃至のいずれか一項に記載の情報処理装置。
  10. クライアント端末と、
    請求項1乃至に記載した複数の情報処理装置と、
    前記クライアント端末からの印刷要求を前記複数の情報処理装置のいずれかに送信するロードバランサと、
    前記情報処理装置から受信した指示に応じて文書データの印刷を実行するプリンタと
    を含むことを特徴とする分散印刷システム。
  11. システムにより提供される、プリンタに対応したプリンタオブジェクトを介して、あるいは介さずに前記プリンタによる印刷の指示を行う情報処理装置による印刷制御方法であって、
    印刷対象の文書データが、指定されたプリンタに対応したプリンタオブジェクトを介さずに印刷可能な文書データであるか否かを判定する第1の判定工程と、
    前記第1の判定工程により印刷可能ではないと判定された場合に、前記指定されたプリンタに対応したプリンタオブジェクトが存在するか否か判定する第2の判定工程と、
    前記第2の判定工程により、前記指定されたプリンタに対応したプリンタオブジェクトが存在しないと判定された場合、当該プリンタオブジェクトを、前記システムにより生成させるための工程と
    を有し、
    前記情報処理装置は、クライアント端末からの印刷要求がロードバランサにより分散して送信される複数の情報処理装置のひとつであることを特徴とする印刷制御方法。
  12. オペレーティングシステムにより提供される、プリンタに対応したプリンタオブジェクトを介して、あるいは介さずに、前記プリンタによる印刷の指示をコンピュータにより行わせるためのプログラムであって、
    印刷対象の文書データが、指定されたプリンタに対応したプリンタオブジェクトを介さずに印刷可能な文書データであるか否かを判定する第1の判定手段と、
    前記第1の判定手段により印刷可能ではないと判定された場合に、前記指定されたプリンタに対応したプリンタオブジェクトが存在するか否か判定する第2の判定手段と、
    前記第2の判定手段により、前記指定されたプリンタに対応したプリンタオブジェクトが存在しないと判定された場合、当該プリンタオブジェクトを、前記オペレーティングシステムにより生成させるための手段と
    してコンピュータを機能させるためのプログラムであって、
    前記コンピュータは、クライアント端末からの印刷要求がロードバランサにより分散して送信される複数のコンピュータのひとつであることを特徴とするプログラム
JP2014036000A 2014-02-26 2014-02-26 情報処理装置及び分散印刷システム、印刷制御方法、プログラム Expired - Fee Related JP6272080B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014036000A JP6272080B2 (ja) 2014-02-26 2014-02-26 情報処理装置及び分散印刷システム、印刷制御方法、プログラム
US14/601,383 US9691010B2 (en) 2014-02-26 2015-01-21 Information processing apparatus, distributed printing system, and method of controlling printing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014036000A JP6272080B2 (ja) 2014-02-26 2014-02-26 情報処理装置及び分散印刷システム、印刷制御方法、プログラム

Publications (3)

Publication Number Publication Date
JP2015162026A JP2015162026A (ja) 2015-09-07
JP2015162026A5 JP2015162026A5 (ja) 2017-03-30
JP6272080B2 true JP6272080B2 (ja) 2018-01-31

Family

ID=53882252

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014036000A Expired - Fee Related JP6272080B2 (ja) 2014-02-26 2014-02-26 情報処理装置及び分散印刷システム、印刷制御方法、プログラム

Country Status (2)

Country Link
US (1) US9691010B2 (ja)
JP (1) JP6272080B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9794447B2 (en) * 2015-09-30 2017-10-17 Ricoh Company, Ltd. Service providing system, cooperation processing method, and information processing system
JP7059752B2 (ja) 2018-03-29 2022-04-26 ブラザー工業株式会社 アプリケーションプログラム
JP6950627B2 (ja) * 2018-06-19 2021-10-13 沖電気工業株式会社 画像形成システム
JP2024043890A (ja) * 2022-09-20 2024-04-02 セイコーエプソン株式会社 印刷システム、印刷システムの制御方法、及び情報処理装置

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5832487A (en) * 1994-12-15 1998-11-03 Novell, Inc. Replicated object identification in a partitioned hierarchy
JPH09258931A (ja) * 1996-03-27 1997-10-03 Fuji Xerox Co Ltd 印刷制御装置
JP3591259B2 (ja) * 1997-12-12 2004-11-17 セイコーエプソン株式会社 ネットワークシステム並びにネットワーク印刷方法
US6230165B1 (en) * 1998-10-16 2001-05-08 Cerulean Method for encoding and transporting database objects over bandwidth constrained networks
JP2001043042A (ja) * 1999-07-30 2001-02-16 Tokyo Denshi Sekkei Kk プリンタ接続装置および該装置を用いるプリントシステム
US7706017B2 (en) * 2001-01-11 2010-04-27 Sharp Laboratories Of America, Inc. Systems and methods for providing load balance rendering for direct printing
JP2003131839A (ja) * 2001-10-29 2003-05-09 Canon Inc ネットワークシステム、情報処理装置、情報処理方法、及び、制御プログラム
JP3774702B2 (ja) 2003-02-12 2006-05-17 キヤノン株式会社 印刷制御プログラム及び情報処理装置
EP1452956A3 (en) 2003-02-12 2010-03-17 Canon Kabushiki Kaisha print control system
US7243089B2 (en) * 2003-11-25 2007-07-10 International Business Machines Corporation System, method, and service for federating and optionally migrating a local file system into a distributed file system while preserving local access to existing data
US20060070082A1 (en) * 2004-06-15 2006-03-30 Manjula Sridhar Managed object framework for network management application development
JP2006260216A (ja) 2005-03-17 2006-09-28 Fuji Xerox Co Ltd 文書出力管理システム、その方法及びプログラム
US20070130224A1 (en) * 2005-11-22 2007-06-07 Fischer Uwe E Deleting master data
JP2007172087A (ja) * 2005-12-19 2007-07-05 Brother Ind Ltd 仮想オブジェクトを登録するためのプログラム、該プログラムを記憶する記憶媒体、仮想オブジェクト登録方法、及び情報処理装置
US7777905B2 (en) * 2006-01-24 2010-08-17 Ricoh Company, Ltd. MIME type-based printer driver selection
JP4847212B2 (ja) * 2006-05-29 2011-12-28 キヤノン株式会社 情報処理装置、印刷制御方法、プログラム及びコンピュータ可読の記憶媒体
JP2008152579A (ja) * 2006-12-18 2008-07-03 Canon Marketing Japan Inc 印刷システム、情報処理装置及びそれらの制御方法、コンピュータプログラム
US9135284B1 (en) * 2008-03-13 2015-09-15 Blue Coat Systems, Inc. Composite execution of rename operations in wide area file systems
JP5278047B2 (ja) * 2009-03-04 2013-09-04 株式会社リコー 情報処理装置とプログラムとコンピュータ読み取り可能な記録媒体
JP5489619B2 (ja) 2009-09-29 2014-05-14 キヤノン株式会社 情報処理装置及びその方法
JP2012063944A (ja) 2010-09-15 2012-03-29 Canon Inc 印刷システム、制御方法、クライアント端末、プリントサーバ、及びプログラム
JP5680926B2 (ja) * 2010-09-30 2015-03-04 キヤノン株式会社 プリントシステム、印刷方法、プリントサーバ及びその制御方法、並びにプログラム
JP5665582B2 (ja) * 2011-02-08 2015-02-04 キヤノン株式会社 画像形成装置、画像形成装置の制御方法、およびそのプログラム
US8693022B2 (en) * 2011-04-28 2014-04-08 Hewlett-Packard Development Company, L.P. Distributed print processing
JP5936366B2 (ja) * 2012-01-19 2016-06-22 キヤノン株式会社 印刷システム、画像形成装置、中間処理装置、ウェブサービス提供装置、印刷システムの制御方法およびコンピュータプログラム
JP5927950B2 (ja) * 2012-02-03 2016-06-01 ブラザー工業株式会社 制御装置
US20140211255A1 (en) * 2013-01-30 2014-07-31 Seiko Epson Corporation Control system and control method of a control system
JP6090020B2 (ja) * 2013-07-10 2017-03-08 富士ゼロックス株式会社 画像形成システム

Also Published As

Publication number Publication date
US20150242161A1 (en) 2015-08-27
JP2015162026A (ja) 2015-09-07
US9691010B2 (en) 2017-06-27

Similar Documents

Publication Publication Date Title
EP2703998B1 (en) Information processing apparatus, output system, information processing method, information processing program, and recording medium
US20120218595A1 (en) Information processing system, print system, and method and computer readable storage medium for controlling information processing system
JP6272080B2 (ja) 情報処理装置及び分散印刷システム、印刷制御方法、プログラム
JP2015203981A (ja) 印刷システム、印刷サーバー及び印刷制御方法とプログラム
JP7362855B2 (ja) 画像形成装置、画像形成装置の制御方法、及びプログラム
JP2019040528A (ja) サーバ装置及びその制御方法、プログラム、並びに印刷システム
JP5031539B2 (ja) 印刷システム、印刷装置及び印刷方法
JP5704947B2 (ja) 情報処理装置、制御方法、及び、プログラム
JP2014172394A (ja) 印刷装置、プログラム及び印刷システム
JP2009151467A (ja) 配信印刷システム
JP2013073369A (ja) 印刷制御システム、印刷制御方法、画像処理装置、及び印刷制御プログラム
JP2008293278A (ja) 分散処理プログラム、分散処理装置、および分散処理方法
KR100643758B1 (ko) 인쇄순서제어가 가능한 네트워크 인쇄장치 및 그의인쇄순서제어방법
JP2019160057A (ja) プリントサーバーと、その制御方法とプログラム
JP5887900B2 (ja) ジョブ制御システム、ジョブ制御方法、情報処理装置、ジョブ制御プログラム
JP2016053862A (ja) 情報処理装置、プログラム及び制御方法
JP2015005148A (ja) 印刷システム、方法、及びプログラム
US20190205069A1 (en) Data processing apparatus and non-transitory computer-readable storage medium for storing program
JP2021026707A (ja) クラウドプリントサービスの提供方法及びサーバ
JP6115253B2 (ja) プリントシステム、スプールサーバ、スプール方法、及びプログラム
JP6295644B2 (ja) 印刷制御装置、印刷制御システムおよびプログラム
JP2015212859A (ja) 情報処理装置、情報処理方法及びプログラム
JP6172515B2 (ja) 画像形成装置、管理装置、画像形成システム及びプログラム
JP5696744B2 (ja) 画像処理装置、画像処理方法、画像処理システムおよびプログラム
JP2015099475A (ja) 情報処理システム及びその制御方法、並びにプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170221

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170221

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171016

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171106

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: 20171204

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171228

R151 Written notification of patent or utility model registration

Ref document number: 6272080

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees