(57)【要約】【課題】印刷装置の機種に応じた印刷設定の不整合を回避するためのモジュールを備えることなく、印刷設定の不整合を容易に検出することができる情報処理装置を提供する。【解決手段】クライアントコンピュータ１が、印刷処理の対象となる第１のページ範囲に含まれる第２のページ範囲毎に第１の印刷設定を行い、第１の印刷設定に基づいて、実行結果をネットワークプリンタ３が印刷処理を実行できない印刷設定の組合せを検出するコンフリクト処理の実行に用いるコンフリクト確認用ジョブを生成して、ネットワークプリンタ３に送信する。クライアントコンピュータ１が、ネットワークプリンタ３からコンフリクト確認用ジョブの実行結果を受信し、受信したコンフリクト確認用ジョブの実行結果に基づいて、コンフリクト処理を実行する。【選択図】図１
2011237853.tif 000002
【特許請求の範囲】
【請求項１】
印刷設定が付加された印刷ジョブを印刷装置に送信し、該印刷装置に前記印刷設定に応じた印刷処理を実行させる情報処理装置であって、
前記印刷処理の対象となる第１のページ範囲に含まれる１又は複数の第２のページ範囲毎に第１の印刷設定を行う印刷設定手段と、
前記第１の印刷設定に基づいて、実行結果を前記印刷装置が印刷処理を実行できない印刷設定の組合せを検出するコンフリクト処理に用いる印刷ジョブであるコンフリクト確認用ジョブを生成するコンフリクト確認用ジョブ生成手段と、
前記生成されたコンフリクト確認用ジョブを前記印刷装置に送信して該コンフリクト確認用ジョブを実行させるジョブ送信手段と、
前記印刷装置から前記コンフリクト確認用ジョブの実行結果を受信するジョブ実行結果受信手段と、
前記受信された前記コンフリクト確認用ジョブの実行結果に基づいて、前記コンフリクト処理を実行するコンフリクト処理実行手段とを備える
ことを特徴とする情報処理装置。
【請求項２】
前記コンフリクト確認用ジョブ生成手段は、前記第２のページ範囲毎の第１の印刷設定が重複するかを判断し、前記第１の印刷設定が重複する場合に、前記第１のページ範囲に含まれる各々のページに対応する印刷設定が変化する箇所を基準として前記第１のページ範囲を区切って第３のページ範囲と該第３のページ範囲に対応する第２の印刷設定とを決定し、各々の第３のページ範囲に含まれる１又は複数の代表ページに対応する第２の印刷設定とコンテンツとを前記生成されるコンフリクト確認用ジョブに付加する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記コンフリクト確認用ジョブ生成手段は、同一の前記第２の印刷設定に対応する前記第３のページ範囲があるかを判断し、同一の前記第２の印刷設定に対応する前記第３のページ範囲がある場合に、該同一の前記第２の印刷設定に対応する前記第３のページ範囲のうち、いずれか１つの第３のページ範囲に含まれる前記代表ページに対応する第２の印刷設定とコンテンツとを前記生成されるコンフリクト確認用ジョブに付加する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記コンフリクト確認用ジョブ生成手段は、前記第２の印刷設定から前記印刷装置の種別に依存する印刷設定を含む第３の印刷設定を選択し、選択された第３の印刷設定と該第３の印刷設定に対応する代表ページのコンテンツとを前記生成されるコンフリクト確認用ジョブに付加する
ことを特徴とする請求項２又は請求項３に記載の情報処理装置。
【請求項５】
前記コンフリクト確認用ジョブ生成手段は、各々の第３のページ範囲に含まれるページのうち先頭のページを前記代表ページとする
ことを特徴とする請求項２乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記コンフリクト確認用ジョブ生成手段は、予め決められた、前記第３の印刷設定に対応する印刷ジョブを実行するために必要なページ数分のページを該第３の印刷設定に対応する代表ページとする
ことを特徴とする請求項２乃至４のいずれか１項に記載の情報処理装置。
【請求項７】
前記コンテンツが白紙コンテンツである
ことを特徴とする請求項２乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記コンフリクト確認用ジョブ生成手段は、前記印刷装置がコンテンツを含まない印刷ジョブを実行可能であるかを判断し、該印刷装置がコンテンツを含まない印刷ジョブを実行可能である場合に、前記コンテンツを含まないコンフリクト確認用ジョブを生成する
ことを特徴とする請求項２乃至６のいずれか１項に記載の情報処理装置。
【請求項９】
印刷設定が付加された印刷ジョブを印刷装置に送信し、該印刷装置に前記印刷設定に応じた印刷処理を実行させる情報処理装置の制御方法であって、
前記印刷処理の対象となる第１のページ範囲に含まれる１又は複数の第２のページ範囲毎に第１の印刷設定を行う工程と、
前記第１の印刷設定に基づいて、実行結果を前記印刷装置が印刷処理を実行できない印刷設定の組合せを検出するコンフリクト処理に用いる印刷ジョブであるコンフリクト確認用ジョブを生成する工程と、
前記生成されたコンフリクト確認用ジョブを前記印刷装置に送信して該コンフリクト確認用ジョブを実行させる工程と、
前記印刷装置から前記コンフリクト確認用ジョブの実行結果を受信する工程と、
前記受信された前記コンフリクト確認用ジョブの実行結果に基づいて、前記コンフリクト処理を実行する工程とを備える
ことを特徴とする情報処理装置の制御方法。
【請求項１０】
請求項９に記載の情報処理装置の制御方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の制御方法、及びコンピュータプログラムに関する。
【背景技術】
【０００２】
印刷設定が付加された印刷ジョブをプリンタに送信し、プリンタに印刷設定に応じた印刷処理を実行させる印刷制御装置が提案されている。ここで、印刷制御装置が行う印刷設定にコンフリクトが発生する場合がある。コンフリクトの発生とは、印刷設定の不整合が生じることであり、例えば、印刷処理対象のページ範囲について行われた印刷設定の組合せについて、プリンタが印刷処理を実行できないことである。
【０００３】
下記の特許文献１は、印刷設定にコンフリクトが発生した場合に、予め登録された印刷設定の不整合を回避するためのモジュールを用いて、この不整合を回避する処理を行う制御装置を開示している。この制御装置は、ユーザインタフェースを介して入力されるデータに対する上記モジュールを、ユーザインタフェースを介さずに入力されるデータに対する不整合を回避する処理とデータ全体の整合処理とで共用可能にする。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−３２８７８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＰＯＤ（Ｐｒｉｎｔ  Ｏｎ  Ｄｅｍａｎｄ）等の商業印刷系のワークフローでは、膨大な用紙種、用紙サイズへの対応が必須である。また、印刷制御装置において、印刷設定可能な項目の多様化に伴って、印刷設定の組合せパターンが増加している。例えば、印刷制御装置が、印刷処理対象のページ全てに対する共通の印刷設定である全体設定の他に、指定されたページ範囲について全体設定とは異なる印刷設定（例外設定）を行う場合がある。
【０００６】
上記特許文献１に開示されているような、予め登録された印刷設定の不整合を回避するためのモジュールを用いて、この不整合を回避する処理を行うと、以下のような問題があった。
（１）プリンタの機種毎に印刷設定の不整合を回避する処理が異なる。従って、使用しているプリンタが複数機種である場合には、印刷制御装置がプリンタ機種毎に印刷設定の不整合を回避するためのモジュールを備える必要がある。しかし、プリンタ機種間に仕様差があるため、印刷制御装置における印刷設定の不整合を回避する処理に矛盾が生じる。
（２）印刷設定の組合せパターンが増加するに伴って、複数のプリンタ機種に対応可能な上記印刷設定の不整合を回避するモジュールの開発に多大な工数を要する。
（３）印刷設定の組合せが膨大となると、印刷設定の不整合を回避するモジュールの処理に漏れが発生する。従って、回避しなければならない印刷設定の不整合が回避できないことがある。
（４）印刷制御装置によっては、印刷設定についての膨大な組合せパターンに対応するため、一部の印刷設定に関しては不整合を回避する処理を行わないといった仕様的な割り切りが発生する。
【０００７】
本発明は、上記の問題の少なくとも一つを解決するためになされたものである。本発明は、印刷装置の機種に応じた印刷設定の不整合を回避するためのモジュールを備えることなく、印刷設定の不整合を容易に検出することができる情報処理装置、情報処理装置の制御方法、及びコンピュータプログラムの提供を目的とする。
【課題を解決するための手段】
【０００８】
本発明の一側面としての情報処理装置は、印刷設定が付加された印刷ジョブを印刷装置に送信し、該印刷装置に前記印刷設定に応じた印刷処理を実行させる情報処理装置である。前記情報処理装置は、前記印刷処理の対象となる第１のページ範囲に含まれる１又は複数の第２のページ範囲毎に第１の印刷設定を行う印刷設定手段と、前記第１の印刷設定に基づいて、実行結果を前記印刷装置が印刷処理を実行できない印刷設定の組合せを検出するコンフリクト処理に用いる印刷ジョブであるコンフリクト確認用ジョブを生成するコンフリクト確認用ジョブ生成手段と、前記生成されたコンフリクト確認用ジョブを前記印刷装置に送信して該コンフリクト確認用ジョブを実行させるジョブ送信手段と、前記印刷装置から前記コンフリクト確認用ジョブの実行結果を受信するジョブ実行結果受信手段と、前記受信された前記コンフリクト確認用ジョブの実行結果に基づいて、前記コンフリクト処理を実行するコンフリクト処理実行手段とを備える。
【発明の効果】
【０００９】
本実施形態の情報処理装置によれば、印刷装置の機種に応じた印刷設定の不整合を回避するためのモジュールを備えることなく、印刷装置によるコンフリクト確認用ジョブの実行結果に基づいて、印刷設定の不整合を検出する。従って、本実施形態の情報処理装置によれば、仕様が異なる複数種の印刷装置を用いる場合や、印刷設定の組合せパターンが多い場合においても、印刷設定の不整合を容易に検出することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態のシステム構成例を示す図である。
【図２】クライアントコンピュータのハードウェア構成例を示す図である。
【図３】本実施形態のシステムの機能ブロック図の例である。
【図４】クライアントコンピュータの全体動作処理フローの例を示す図である。
【図５】印刷設定処理の例である。
【図６】印刷設定入力画面の例を示す図である。
【図７】コンフリクト確認用ジョブの生成処理の例を示す図である。
【図８】印刷設定範囲再編処理の例を示す図（１）である。
【図９】例外設定テーブルの一例（１）である。
【図１０】コンフリクト確認用ジョブの生成処理を示す図（１）である。
【図１１】コンフリクト確認用ジョブの生成処理を示す図（２）である。
【図１２】コンフリクト確認用ジョブの生成・送信処理を示すフローチャートである。
【図１３】コンフリクト確認用ジョブの実行処理フローの例を示す図である。
【図１４】コンフリクト処理の例を説明する図である。
【図１５】実行できない印刷設定を示す情報の表示例である。
【図１６】印刷設定範囲再編処理の例を示す図（２）である。
【図１７】印刷設定のまとめ処理を示すフローチャートである。
【図１８】例外設定テーブルの一例（２）である。
【図１９】印刷設定のまとめ処理の例を説明する図である。
【発明を実施するための形態】
【００１１】
図１は、本実施形態のシステム構成例を示す図である。図１に示すシステムは、複数のクライアントコンピュータ１とプリントサーバ２と複数のネットワークプリンタ３とを備える。本実施形態のシステムが、任意の数のクライアントコンピュータ１、プリントサーバ２、ネットワークプリンタ３を備えていてもよい。クライアントコンピュータ１とプリンタサーバ２とネットワークプリンタ３とは、イーサネット（登録商標）等のネットワークケーブルを介して、ネットワーク４に接続されている。
【００１２】
クライアントコンピュータ１は、本実施形態の情報処理装置である。クライアントコンピュータ１は、印刷設定が付加された印刷ジョブを、プリントサーバ２を介してプリンタ３に送信し、該プリンタ３に上記印刷設定に応じた印刷処理を実行させる。また、クライアントコンピュータ１は、プリンタ３による印刷処理の実行結果を、プリントサーバ２を介してプリンタ３から受信する。このために、クライアントコンピュータ１は、アプリケーションプログラム等の各種のプログラムを実行することが可能である。また、クライアントコンピュータ１には、ネットワークプリンタ３に対応するプリンタ言語に印刷データを変換する機能を有するプリンタドライバがインストールされている。なお、クライアントコンピュータ１は、複数のプリンタドライバを登録することが可能であるものとする。
【００１３】
プリントサーバ２は、ネットワーク４で使用されるファイルを蓄積したり、ネットワーク４の使用状態を監視したりする。プリントサーバ２は、ネットワーク４に接続されている複数のネットワークプリンタ３を管理する。具体的には、プリントサーバ２は、印刷ジョブをクライアントコンピュータ１から受信し、この印刷ジョブを記憶媒体に格納する。そして、プリントサーバ２は、記憶媒体に格納した印刷ジョブをネットワークプリンタ３に送信して実行させる。また、プリントサーバ２は、ネットワークプリンタ３による印刷ジョブの実行結果、ジョブのステータスなどの印刷ジョブに関する各種情報をネットワークプリンタ３から取得し、取得した情報をクライアントコンピュータ１に通知する。なお、クライアントコンピュータ１とプリントサーバ２とは、一般的な情報処理装置に、それぞれ異なる制御を行う印刷制御プログラムを実行可能に格納することによって構成することができる。また、プリントサーバ２として一般的な情報処理装置を用いた場合、プリントサーバ２がクライアントコンピュータ１の機能をも備えるようにしてもよい。
【００１４】
ネットワークプリンタ３は印刷装置である。ネットワークプリンタ３が、例えば、レーザービームプリンタや、インクジェットプリンタや、デジタル複合機等、様々な方式で印刷を行う印刷装置であってもよい。ネットワークプリンタ３は、ネットワークインタフェースを介してネットワーク４に接続されている。ネットワークプリンタ３は、プリントサーバ２を介してクライアントコンピュータ１から印刷ジョブを受信する。ネットワークプリンタ３は、受信した印刷ジョブを解析する。印刷ジョブに印字データが含まれている場合には、ネットワークプリンタ３は、この印字データをページ毎にドットイメージに変換する。そして、ネットワークプリンタ３は、ドットイメージに変換した印字データを、ページ毎に印刷する（印刷ジョブを実行する）。なお、ネットワークプリンタ３は、ＩＳＯ１０１７５（ＤＰＡ）で規定されている印刷ジョブ管理機能を、プリントサーバ２及びクライアントコンピュータ２のうち、何れか１つへ提供可能である。ＤＰＡは、Ｄｏｃｕｍｅｎｔ  Ｐｒｉｎｔｉｎｇ  Ａｐｐｌｉｃａｔｉｏｎの略語である。
【００１５】
ネットワーク４は、クライントコンピュータ１、プリントサーバ２、ネットワークプリンタ３を相互に通信可能に接続する。ネットワーク４は、例えば、インターネットやＬＡＮ（Local Area Network）等を用いて実現される。
【００１６】
図２は、図１に示すクライアントコンピュータのハードウェア構成例を示す図である。なお、プリントサーバ２のハードウェア構成は、クライアントコンピュータ１のハードウェア構成と同様である。図２（Ａ）に示すＣＰＵ１００は、クライアントコンピュータ１全体を制御する。ＣＰＵ１００は、ＨＤ１０５等に格納されているプログラムを実行する。ＨＤは、Ｈａｒｄ  Ｄｉｓｋの略語である。ＨＤ１０５等に格納されているプログラムは、例えば、アプリケーションプログラム、プリンタドライバプログラム、ＯＳ、及びネットワークプリンタ制御プログラム等である。ＯＳは、Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍの略語である。ネットワークプリンタ制御プログラムは、例えば、クライアントコンピュータ１が、印刷ジョブの印刷先を指示する制御を行うプログラムを含む。また、プリントサーバ２においては、ネットワークプリンタ制御プログラムは、例えば、プリントサーバ２が印刷ジョブの印刷終了や印刷先変更要求等を通知するために用いるプログラムを含む。以下では、ネットワークプリンタ制御プログラムを印刷制御プログラムと記述する。また、ＣＰＵ１００は、プログラムを実行しているときに、プログラムの実行に必要な情報やファイル等をＲＡＭ１０２に一時的に格納する制御を行う。ＲＡＭはＲａｎｄｏｍ
Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略語である。
【００１７】
ＲＯＭ１０１は、基本Ｉ／Ｏプログラム等のプログラム、文書処理の際に使用するフォントデータやテンプレート用データ等の各種データを記憶する記憶媒体である。ＲＯＭはＲｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙの略語である。また、Ｉ／ＯはＩｎｐｕｔ／Ｏｕｔｐｕｔの略語である。ＲＡＭ１０２は、データを一時的に記憶する記憶媒体であり、ＣＰＵ１００の主メモリやワークエリア等として機能する。
【００１８】
ＦＤドライブ１０３は、記憶媒体としてのフレキシブルディスク（ＦＤ）１０４に記憶されたプログラム等を、クライアントコンピュータ１にロードするために使用されるドライブである。ＦＤはＦｌｅｘｉｂｌｅ  Ｄｉｓｋの略語である。ＦＤ１０４には印刷制御プログラムが格納されている。なお、記憶媒体はＦＤに限られない。ＦＤの代わりに、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＰＣカード、ＤＶＤ、ＩＣメモリカード、ＭＯ、メモリスティック等、任意の記憶媒体を用いることができる。
【００１９】
ＨＤ１０５は、外部記憶装置の一つであり、大容量メモリとして機能する。ＨＤ１０５には、アプリケーションプログラム、プリンタドライバプログラム、ＯＳ、ネットワークプリンタ制御プログラム、及び関連プログラム等が格納されている。また、クライアントスプーラがＨＤ１０５に格納される。なお、プリントサーバ２においては、ＨＤ１０５にサーバスプーラが格納される。また、プリントサーバ２においては、クライアントコンピュータ１から受信した印刷ジョブの情報や、印刷順序の制御を行うために用いる情報がＨＤ１０５に格納される。
【００２０】
ＵＩ（User Interface）１０６は、ユーザが指示入力を行うために用いるユーザインタフェースである。ＵＩ１０６は、例えばキーボードとマウスとを備える。ユーザがこのキーボードやマウスを操作することによって、ＵＩ１０６が、情報処理装置（クライアントコンピュータ１、プリントサーバ２）に対して、ネットワークプリンタ３に指示すべき制御コマンド等を入力する。
【００２１】
ディスプレイ１０７は、ＵＩ１０６が入力した制御コマンドや、ネットワークプリンタ３の状態等を表示する。ディスプレイ１０７は、例えば、ＬＣＤ（Liquid Crystal Display）を備える。システムバス１０８は、クライアントコンピュータ１内のデータの伝送経路である。インタフェース１０９は、クライアントコンピュータ１をネットワーク４に接続する。クライアントコンピュータ１は、インタフェース１０９を介して外部装置との間でデータを送受信することができる。なお、クライアントコンピュータ１が、図２（Ａ）に示す各処理部と同等の機能を実現するソフトウェアを、各処理部の代替として備えるようにしてもよい（プリントサーバ３についても同様である）。
【００２２】
図２（Ｂ）は、図２（Ａ）中に示すＲＡＭのメモリマップの一例を示す図である。ＦＤ１０４に格納されている印刷制御プログラムは、ＲＡＭ１０２にロードされることによって実行可能となる。図２（Ｂ）は、印刷制御プログラムが実行可能となった状態におけるＲＡＭ１０２のメモリマップを示す。
【００２３】
ＲＡＭ１０２は、基本Ｉ／Ｏプログラム１１１、ＯＳ１１２、印刷制御プログラム１１３、関連データ１１４、ワークエリア１１５を格納する。基本Ｉ／Ｏプログラム１１１は、クライアントコンピュータ１の電源がＯＮされたときに、ＨＤ１０５からＯＳをＲＡＭ１０２に展開し、ＯＳの動作を開始させるＩＰＬ（イニシャルプログラムローデイング）機能等を有しているプログラムを含む。ＯＳ１１２、印刷制御プログラム１１３、及び関連データ１１４は、それぞれＲＡＭ１０２に確保された領域に記憶される。ワークエリア１１５は、ＣＰＵ１００が印刷制御プログラム１１３等を実行する際に利用される作業領域である。
【００２４】
本実施形態では、ＣＰＵ１００がＦＤ１０４から印刷制御プログラムと関連データとを直接ＲＡＭ１０２にロードして実行させる例を示すが、必ずしもこのようにする必要はない。例えば、ＣＰＵ１００が、既に印刷制御プログラムがインストールされているＨＤ１０５からＲＡＭ１０２にこの印刷制御プログラムをロードするようにしてもよい。
【００２５】
また、印刷制御プログラム１１３を記憶する記憶媒体は、ＦＤ１０４に限定されず、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＰＣカード、ＤＶＤ、ＩＣメモリカード等であってもよい。また、ＣＰＵ１００が印刷制御プログラム１１３をＲＯＭ１０１に記憶しておき、これをメモリマップの一部となすように構成することによって、ＣＰＵ１００が印刷制御プログラム１１３を直接実行することも可能である。
【００２６】
図２（Ｃ）は、図２（Ａ）中に示すＦＤのメモリマップの一例を示す図である。ＦＤ１０４は、ボリューム情報１２１、ディレクトリ情報１２２、印刷制御プログラム１２３、関連データ１２４を記憶する。印刷制御プログラム１２３は、図２（Ｂ）中に示す印刷制御プログラム１１３としてＲＡＭ１０２にロードされる。
【００２７】
図３は、本実施形態のシステムの機能ブロック図の例である。図３に示すように、クライアントコンピュータ１は、印刷設定部１１、モデルコンフリクト処理部１２、モデルコンフリクトルールＤＢ（Data Base ）１３を備える。また、クライアントコンピュータ１は、コンフリクト確認用ジョブ生成部１４、データ情報送受信部１５、コンフリクト結果判定部１６を備える。
【００２８】
印刷設定部１１は、印刷ジョブに付加する印刷設定を入力する。例えば、印刷設定部１１は、所定のユーザインタフェースを介して入力された印刷設定をモデルコンフリクト処理部１２に渡す。印刷設定は、例えば印刷部数、ステイプル、折り、パンチ等を含む。また、印刷設定部１１は、モデルコンフリクト処理部１２が上記印刷設定に関して実行したモデルコンフリクト処理結果を受け、このモデルコンフリクト処理結果に応じた処理を行う。モデルコンフリクト処理は、例えば、ＯＨＰ用紙に両面印刷を行う印刷設定など、論理的に整合しない印刷設定を検出する処理である。モデルコンフリクト処理はネットワークプリンタ４の機種に依存せず共通適用できる。印刷設定部１１は、モデルコンフリクト処理部１２が実行したモデルコンフリクト処理結果が、論理的に整合しない印刷設定が検出されたことを示す場合に、この印刷設定を無効とする。
【００２９】
また、印刷設定部１１は、コンフリクト結果判定部１６から該コンフリクト結果判定部１６が実行したコンフリクト処理結果を受け、このコンフリクト処理結果に応じた処理を行う。コンフリクト処理は、ネットワークプリンタ３が印刷処理を実行できない印刷設定の組合せを検出する処理である。コンフリクト処理は、ネットワークプリンタ３４からデータ情報送受信部１５が受け取ったコンフリクト確認用ジョブの実行結果に基づいて実行される。印刷設定部１１は、例えば、コンフリクト処理結果がネットワークプリンタ３が印刷処理を実行できない印刷設定の組合せが検出されたことを示す場合に、この印刷設定の組合せを所定の表示画面上に表示等する。
【００３０】
また、印刷設定部１１は、ユーザインタフェースを介して入力された印刷設定のうち、モデルコンフリクト処理によって論理的に整合しない印刷設定として検出されなかった印刷設定をコンフリクト確認用ジョブ生成部１４に渡す。また、印刷設定部１１は、例えば、コンフリクト処理結果が、ネットワークプリンタ３が印刷処理を実行できない印刷設定の組合せが検出されなかったことを示す場合に以下の処理を実行する。印刷設定部１１は、モデルコンフリクト処理によって論理的に整合しない印刷設定として検出されなかった印刷設定と該印刷設定が適用される各々のページに対応するコンテンツとを含む印刷ジョブを生成する。このコンテンツは、本来ユーザがネットワークプリンタ３に印刷させたい印字データを含むコンテンツである。印刷設定部１１は、生成した印刷ジョブをデータ情報送受信部１５、プリントサーバ２を介してネットワークプリンタ３に送信する。
【００３１】
モデルコンフリクト処理部１２は、印刷設定部１１から渡された印刷設定について、モデルコンフリクトルールＤＢ１３内のモデルコンフリクトルールを用いて、モデルコンフリクト処理を実行する。モデルコンフリクトルールは、論理的に整合しない印刷設定を決定するルールである。モデルコンフリクトルールＤＢ１３は、モデルコンフリクトルールを予め記憶する。
【００３２】
コンフリクト確認用ジョブ生成部１４は、印刷設定部１１から渡された印刷設定に基づいて、コンフリクト確認用ジョブを生成するコンフリクト確認用ジョブ生成手段として機能する。コンフリクト確認用ジョブは、実行結果をコンフリクト処理に用いる印刷ジョブである。データ情報送受信部１５は、プリントサーバ２を介してコンフリクト確認用ジョブをネットワークプリンタ３に送信し、ネットワークプリンタ３にこのコンフリクト確認用ジョブを実行させる。すなわち、データ情報送受信部１５は、コンフリクト確認用ジョブを印刷装置に送信して該コンフリクト確認用ジョブを実行させるジョブ送信手段として機能する。
【００３３】
また、データ情報送受信部１５は、プリントサーバ２のデータ情報送受信部２１から、ネットワークプリンタ３が実行したコンフリクト確認用ジョブの実行結果を受信するジョブ実行結果受信手段として機能する。データ情報送受信部１５は、受信したコンフリクト確認用ジョブの実行結果をコンフリクト結果判定部１６に渡す。コンフリクト結果判定部１６は、データ情報送受信部１５から受け取ったコンフリクト確認用ジョブの実行結果に基づいて、コンフリクト処理を実行するコンフリクト処理実行手段として機能する。本実施形態の情報処理装置の制御方法とそのコンピュータプログラムは、図３に示すクライアントコンピュータ１が備える各処理部の機能によって実現される。
【００３４】
図３に示すプリントサーバ２は、データ情報送受信部２１、２３、スプーラ２２、機器内ジョブ管理部２４、ジョブ追跡部２５、表示部２６を備える。データ情報送受信部２１は、クライアントコンピュータ１のデータ情報送受信部１５から印刷ジョブ（例えば、コンフリクト確認用ジョブ）を受信してスプーラに渡す。また、データ情報送受信部２１は、機器内ジョブ管理部２４からネットワークプリンタ３によるコンフリクト確認用ジョブの実行結果を受けて、クライアントコンピュータ１のデータ情報送受信部１５に渡す。
【００３５】
スプーラ２２は、データ情報送受信部２１から渡された印刷ジョブ（例えば、コンフリクト確認用ジョブ）を受け付け、データ情報送受信部２３を介してネットワークプリンタ３のデータ情報送受信部３１に送信する。データ情報送受信部２３は、スプーラ２２の指示に従って、上記印刷ジョブをネットワークプリンタ３のデータ情報送受信部３１に送信する。また、データ情報送受信部２３は、ネットワークプリンタ３のデータ情報送受信部３からステータス応答情報を受けて、ジョブ追跡部２５に渡す。ステータス応答情報は、ネットワークプリンタ３による印刷ジョブの実行状況を示す情報である。ステータス応答情報には、例えばネットワークプリンタ３によるコンフリクト確認用ジョブの実行結果が含まれる。
【００３６】
機器内ジョブ管理部２４は、表示部２６に表示されるＧＵＩを用いたユーザの操作入力に応じた指示を受ける。ＧＵＩは、Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅの略語である。機器内ジョブ管理部２４は、上記指示に従って、例えば印刷ジョブのキャンセル・停止等の制御コマンドを、データ情報送受信部２３を介してネットワークプリンタ３へ送信する。また、機器内ジョブ管理部２４は、ステータス応答情報をジョブ追跡部２５から受けて、このステータス応答情報に含まれるコンフリクト確認用ジョブの実行結果をデータ情報送受信部２１に渡す。また、機器内ジョブ管理部２４は、ステータス応答情報を表示部２６に表示させる。ジョブ追跡部２５は、データ情報送受信部２３からステータス応答情報を取得して、機器内ジョブ管理部２４に渡す。表示部２６は、機器内ジョブ管理部２４の指示に従った表示処理を行う。
【００３７】
図３に示すネットワークプリンタ３は、データ情報送受信部３１、言語解析部３２、ジョブ管理部３３、描画出力部３４、プリンタエンジン３５、プリンタ制御部３６、ステータス応答処理部３７を備える。データ情報送受信部３１は、プリントサーバ２のデータ情報送受信部２３から印刷ジョブを受けて、言語解析部３１に渡す。本実施形態に特有の機能として、データ情報送受信部３１は、プリントサーバ２のデータ情報送受信部２３からコンフリクト確認用ジョブを受けて、言語解析部３１に渡す。また、データ情報送受信部３１は、ステータス応答処理部３７からステータス応答情報を受けて、プリントサーバ２のデータ情報送受信部２３に送信する。
【００３８】
言語解析部３２は、データ情報送受信部３１から渡された印刷ジョブ（例えば、コンフリクト確認用ジョブ）に含まれるデータ内容を解析して印刷命令を解読し、この印刷命令に従って、印刷ジョブの管理や描画出力等に関する制御コマンドを実行する。具体的には、言語解析部３２は、データ情報送受信部３１内の受信バッファから制御コマンド群を１つずつ順番に受け取る。そして、言語解析部３２は、受け取った制御コマンドの内容をプリンタ制御言語の記述ルールに従って調査し、制御コマンドがどのような処理を要求しているかを判別する。この判別の結果、制御コマンドが、印刷ジョブに関するコマンドである場合や、印刷ジョブの属性に関するコマンドである場合に、言語解析部６１４は、該当する印刷ジョブの管理命令をジョブ管理部３３に発行する。なお、印刷ジョブに関するコマンドは、例えば、印刷ジョブの開始宣言や終了宣言等である。また、印刷ジョブの属性に関するコマンドは、例えば、用紙サイズ、枚数、ステイプル、パンチ等の、この印刷ジョブに付加された印刷設定に対応するコマンドである。また、制御コマンドが、文字や図形やイメージ等の描画出力を指令するものである場合、言語解析部３２は、該当する印刷ジョブに基づく描画出力命令を描画出力部３４に対して発行する。
【００３９】
ジョブ管理部３３は、実行する印刷ジョブの属性に応じて、使用する用紙や排紙ビンの選択命令（プリンタ制御命令）をプリンタ制御部３６に対して発行する。また、ジョブ管理部３３は、プリンタ制御部３６から実行中の印刷ジョブの状態を取得する。ジョブ管理部３３は、印刷ジョブの実行が終了した場合や、印刷ジョブの実行中にエラーが発生した場合など、所定の条件が成立した場合に、ステータス応答要求指令をステータス応答処理部３７に対して発行する。ステータス応答要求指令は、ステータス応答情報の生成を指示する制御情報である。
【００４０】
描画出力部３４は、印刷出力を行うための文字や図形やイメージ等の描画展開を行って出力する。例えば、描画出力部３４は、言語解析部３２から発行された描画出力命令に従って、該当する文字パターンを作成したり、図形の計算やイメージデータの展開処理等を行ったりする。また、描画出力部３４は、印刷データを出力に適したデータ形式に展開した上で、プリンタエンジン３５に渡す。プリンタエンジン３５は、描画出力部３４から渡された印刷データに基づいて、例えば電子写真方式等の仕組みを用いて、実際に紙面に画像を形成して印刷出力処理を行う。また、プリンタエンジン３５は、記録紙の残量を検知する機能を有する。例えば、プリンタエンジン３５は、印刷出力処理に必要な用紙がセットされていない場合には、警告信号をプリンタ制御部３６に送出する。また、例えば、展開・印刷処理に際して用紙が無い場合、プリンタエンジン３５は、プリンタドラム等の記録手段を停止させ、割り込み等の手段でプリンタ制御部３６へエラー信号を送出する。
【００４１】
プリンタ制御部３６は、ジョブ管理部３３から発行されたプリンタ制御命令に従って、例えば、使用する用紙の選択を行ったり、ネットワークプリンタ３の初期化等を行ったりして、ネットワークプリンタ３の制御を行う。すなわち、プリンタ制御部３６は、印刷ジョブに含まれる印刷設定に応じたジョブ処理を実行する。また、プリンタ制御部３６は、印刷実行時に使用した給紙カセットの情報、パンチ、ステイプル、サドルなどの実行したフィニッシング情報、排紙された排紙口情報、反転パスの使用の有無などの用紙搬送経路情報を常時監視する。印刷ジョブの実行が完了した時には、プリンタ制御部３６は、印刷ジョブの実行結果をジョブ管理部３３に通知する。上記のデータ情報送受信部３１乃至プリンタ制御部３６の機能によって、印刷ジョブが実行される。
【００４２】
ステータス応答処理部３７は、ジョブ管理部３７が発行したステータス応答要求指令に従って、ステータス応答情報を生成する。ネットワークプリンタ３がコンフリクト確認用ジョブを実行した場合には、このステータス応答情報はコンフリクト確認用ジョブの実行結果を含む。ステータス応答処理部３７は、生成したステータス応答情報をデータ情報送受信部３１に渡す。
【００４３】
データ情報送受信部３１は、ステータス応答処理部３７からステータス応答情報を受けて、送信バッファ等に一時的に記憶する。また、データ情報送受信部３１は、送信バッファ等に一時的に記憶したステータス応答情報をプリントサーバ４のデータ情報送受信部２３に送信する。
【００４４】
図４は、図３に示すクライアントコンピュータの全体動作処理フローの例を示す図である。まず、印刷設定部１１が、印刷設定処理を行う（ステップＳ１）。
【００４５】
図５は、図４のステップＳ１における印刷設定処理の例である。まず、印刷設定部１１が、印刷設定を入力するための所定のユーザインタフェース（印刷設定入力画面）を表示する。
【００４６】
図６は、印刷設定入力画面の例を示す図である。ユーザが印刷設定入力画面上で印刷設定を入力する操作を行うと、印刷設定部１１がこの操作に応じた印刷設定を入力する。ユーザは、全体設定を行うこともできるし、例外設定を行うこともできる。全体設定は、印刷設定を適用するページ範囲を限定せずに成果物全体に適用する印刷設定である。例外設定は、ページ範囲を限定し、指定したページ範囲にのみ適用する印刷設定である。また、図６に示す印刷設定入力画面上でユーザがプリンタ名を選択すると、印刷設定部１１が、このプリンタ名に対応するネットワークプリンタ３を出力デバイスとして選択する。出力デバイスは、クライアントコンピュータ１が印刷ジョブの送信対象とするネットワークプリンタ３である。なお、ユーザが図６中の印刷設定入力画面内の「印刷設定（Ｒ）」と記述されたボタンをクリック等すると、印刷設定部１１が、例えばステイプル、折り、パンチ等の詳細な印刷設定をするための印刷設定入力画面を表示する。
【００４７】
図５に戻って、印刷設定部１１が、印刷設定入力画面上でのユーザの操作に従って、出力デバイスを選択する（ステップＳ１１）。次に、印刷設定部１１が、印刷設定入力画面上でのユーザの操作に従って、印刷設定を入力する（ステップＳ１２）。ステップＳ１２において、印刷設定部１１は、印刷処理の対象となるページ範囲である第１のページ範囲に含まれる１又は複数の第２のページ範囲毎に印刷設定（第１の印刷設定）を行う印刷設定手段として機能する。
【００４８】
次に、印刷設定部１１が、印刷設定が完了したかを判断する（ステップＳ１３）。例えば、ユーザが図６に示す印刷設定入力画面上でＯＫボタンをクリック等すると、印刷設定部１１が印刷設定が完了したと判断する。印刷設定が完了していない場合はステップＳ１２に戻る。印刷設定が完了した場合は、モデルコンフリクト処理部１２がモデルコンフリクト処理を行う（ステップＳ１４）。続いて、印刷設定部１１が、モデルコンフリクト処理部１２によるモデルコンフリクト処理結果を受け、このモデルコンフリクト処理結果に基づいて、論理的に整合しない印刷設定が検出されたかを判断する（ステップＳ１５）。論理的に整合しない印刷設定が検出された場合は、印刷設定部１１が、印刷設定の再設定を促すメッセージを表示した上で、ステップＳ１２に戻る。論理的に整合しない印刷設定が検出されなかった場合は、印刷設定部１１が、印刷設定をコンフリクト確認用ジョブ生成部１４に渡し、図４のステップＳ２に進む。
【００４９】
図４に戻って、コンフリクト確認用ジョブ生成部１４が、印刷設定部１１から渡された印刷設定（例えば第１の印刷設定）に基づいて、コンフリクト確認用ジョブの生成処理を行う（ステップＳ２）。
【００５０】
図７は、図４のステップＳ２におけるコンフリクト確認用ジョブの生成処理の例を示す図である。まず、コンフリクト確認用ジョブ生成部１４が、印刷設定部１１から渡された印刷設定から全体設定を抽出する（ステップＳ２１）。次に、コンフリクト確認用ジョブ生成部１４が、印刷設定部１１から渡された印刷設定に例外設定があるかを判断する（ステップＳ２２）。例外設定がない場合はステップＳ２４に進む。例外設定がある場合、コンフリクト確認用ジョブ生成部１４が、印刷設定範囲再編処理を行う（ステップＳ２３）。印刷設定範囲再編処理は印刷設定とページ範囲との対応関係を再編する処理である。
【００５１】
図８は、図７のステップＳ２３における印刷設定範囲再編処理の例を示す図である。コンフリクト確認用ジョブ生成部１４が、各々のページ範囲について、該ページ範囲に対応する印刷設定を確認する。コンフリクト確認用ジョブ生成部１４が、全てのページ範囲について印刷設定を確認したかを判断する（ステップＳ２３１）。コンフリクト確認用ジョブ生成部１４が印刷設定を確認していないページ範囲がある場合は、コンフリクト確認用ジョブ生成部１４が、確認済みの印刷設定とこの印刷設定を適用するページ範囲に関する情報を例外設定テーブルに記憶する（ステップＳ２３２）。そして、処理がステップＳ２３１に戻る。例外設定テーブルは、印刷設定とページ範囲との対応情報が記憶されるテーブルである。例外設定テーブルは所定の記憶手段内に記憶される。コンフリクト確認用ジョブ生成部１４が、全てのページ範囲について印刷設定を確認した場合は，コンフリクト確認用ジョブ生成部１４が、例外設定テーブルを解析する（ステップＳ２３３）。
【００５２】
図９（Ａ）、（Ｂ）は、例外設定テーブルの一例である。例外設定テーブルは、ページ番号、全体設定、例外設定、重複設定カウンタといったデータ項目を有する。ページ番号は印刷処理対象のページの番号である。図９（Ａ）、（Ｂ）に示す例外設定テーブルの例では、ページ１からページ１３までのページ範囲が、印刷設定部１１によって印刷設定された、印刷処理の対象となるページ範囲（第１のページ範囲）である。
【００５３】
全体設定は全体設定の内容を示す。例外設定は例外設定の内容を示す。重複設定カウンタは、各々のページに対応する印刷設定の重複数を示す。例えば、図９（Ａ）のページ５については、全体設定のパンチと例外設定２の折りとが重複している。従って、コンフリクト確認用ジョブ生成部１４は、このページに対応する重複設定カウンタに、印刷設定の重複数として１を設定する。また、ページ５については、全体設定のパンチと例外設定１のステイプルと例外設定２の折りとが重複している。従って、コンフリクト確認用ジョブ生成部１４は、このページに対応する重複設定カウンタに、印刷設定の重複数として２を設定する。また、コンフリクト確認用ジョブ生成部１４は、重複する印刷設定がないページに対応する重複設定カウンタに０を設定する。
【００５４】
コンフリクト確認用ジョブ生成部１４は、図９（Ａ）に示す例外設定テーブルを参照して、全体設定（パンチ）がページ１からページ１３までのページ範囲について設定されていることを確認する。また、コンフリクト確認用ジョブ生成部１４は、例外設定１（ステイプル）がページ７からページ１０までのページ範囲について設定されていることを確認する。また、コンフリクト確認用ジョブ生成部１４は、例外設定２（折り）がページ５からページ８までのページ範囲について設定されていることを確認する。図９（Ａ）に示す例外設定テーブルの例では、上記ページ１からページ１３までのページ範囲、ページ７からページ１０までのページ範囲、ページ５からページ８までのページ範囲が、第１のページ範囲に含まれる第２のページ範囲である。各々の第２のページ範囲に対応する印刷設定が、印刷設定部１１によって設定された第１の印刷設定である。
【００５５】
また、コンフリクト確認用ジョブ生成部１４は、図９（Ｂ）に示す例外設定テーブルを参照して、全体設定（パンチ）がページ１からページ１３までのページ範囲について設定されていることを確認する。また、コンフリクト確認用ジョブ生成部１４は、例外設定１（ステイプル）がページ９からページ１０までのページ範囲について設定されていることを確認する。また、コンフリクト確認用ジョブ生成部１４は、例外設定２（折り）がページ５からページ６までのページ範囲について設定されていることを確認する。図９（Ｂ）に示す例外設定テーブルの例では、上記ページ１からページ１３までのページ範囲、ページ９からページ１０までのページ範囲、ページ５からページ６までのページ範囲が、第１のページ範囲に含まれる第２のページ範囲である。
【００５６】
次に、コンフリクト確認用ジョブ生成部１４が、例外設定テーブルを参照して、第２のページ範囲毎の第１の印刷設定が重複するかを判断する（ステップＳ２３４）。具体的には、コンフリクト確認用ジョブ生成部１４は、例外設定テーブルにおける重複設定カウンタの設定値が０より大きい場合に、第２のページ範囲毎の第１の印刷設定が重複すると判断する。コンフリクト確認用ジョブ生成部１４は、例外設定テーブルにおける重複設定カウンタの設定値が０である場合に、第２のページ範囲毎の第１の印刷設定が重複しないと判断する。第２のページ範囲毎の第１の印刷設定が重複しない場合は、処理を終了する。第２のページ範囲毎の第１の印刷設定が重複する場合は、コンフリクト確認用ジョブ生成部１４が、第３のページ範囲と、該第３のページ範囲に対応する印刷設定である第２の印刷設定を決定して（ステップＳ２３５）、図７のステップＳ２４に進む。
【００５７】
ステップＳ２３５における第３のページ範囲と、該第３のページ範囲に対応する第２の印刷設定の決定方法について以下に説明する。コンフリクト確認用ジョブ生成部１４は、第１のページ範囲に含まれる各々のページに対応する印刷設定が変化する箇所を基準として第１のページ範囲を区切って第３のページ範囲を決定する。コンフリクト確認用ジョブ生成部１４が、図９（Ａ）に示す例外設定テーブルの重複設定カウンタの値が変化した箇所を基準として第１のページ範囲を区切るようにしてもよい。その結果、ページ１からページ４までのページ範囲Ａ、ページ５からページ６までのページ範囲Ｂ、ページ７からページ８までのページ範囲Ｃ、ページ９からページ１０までのページ範囲Ｄが第３のページ範囲として決定される。なお、この例では、コンフリクト確認用ジョブ生成部１４は、ページ１１からページ１３までのページ範囲については、印刷設定内容がページ範囲Ａと同じであるので、第３のページ範囲としない。また、コンフリクト確認用ジョブ生成部１４が、例外設定テーブルを参照して、該例外設定テーブルにおいて設定されている印刷設定のうち、上記第３のページ範囲に対応する印刷設定を第２の印刷設定として決定する。
【００５８】
図１０（Ａ）に、コンフリクト確認用ジョブ生成部１４によって決定された各々の第３のページ範囲を示す。コンフリクト確認用ジョブ生成部１４は、ページ範囲Ａに対応する第２の印刷設定をパンチとする。コンフリクト確認用ジョブ生成部１４は、ページ範囲Ｂに対応する第２の印刷設定をパンチと折りとの組合せとする。コンフリクト確認用ジョブ生成部１４は、ページ範囲Ｃに対応する第２の印刷設定をパンチと折りとステイプルとの組合せとする。コンフリクト確認用ジョブ生成部１４は、ページ範囲Ｄに対応する第２の印刷設定をパンチとステイプルとの組合せとする。
【００５９】
同様に、コンフリクト確認用ジョブ生成部１４は、図９（Ｂ）の例外設定テーブルを参照し、ページ１からページ４までのページ範囲Ａ、ページ５からページ６までのページ範囲Ｂ、ページ９からページ１０までのページ範囲Ｃを第３のページ範囲として決定する。図１１（Ａ）に、コンフリクト確認用ジョブ生成部１４によって決定された各々の第３のページ範囲を示す。また、コンフリクト確認用ジョブ生成部１４は、ページ範囲Ａに対応する第２の印刷設定をパンチとする。コンフリクト確認用ジョブ生成部１４は、ページ範囲Ｂに対応する第２の印刷設定をパンチと折りとの組合せとする。コンフリクト確認用ジョブ生成部１４は、ページ範囲Ｃに対応する第２の印刷設定をパンチとステイプルとの組合せとする。
【００６０】
図７に戻って、ステップＳ２４において、コンフリクト確認用ジョブ生成部１４が、機種依存設定抽出処理を行う（ステップＳ２４）。すなわち、コンフリクト確認用ジョブ生成部１４は、図７のステップＳ２３において決定された第２の印刷設定からネットワークプリンタ３の種別に依存する印刷設定を含む印刷設定を第３の印刷設定として選択する。ネットワークプリンタ３の種別に依存する印刷設定は、例えばフィニッシング設定等である。ネットワークプリンタ３の種別に依存する印刷設定は、予め定められる。選択された第３の印刷設定は、この第３の印刷設定の選択元である第２の印刷設定に対応する第３のページ範囲に対応付けられる。第２の印刷設定にネットワークプリンタ３の種別に依存しない設定（例えば、モノクロ印刷に関する設定）のみが含まれる場合には、コンフリクト確認用ジョブ生成部１４は、この第２の印刷設定を第３の印刷設定として選択しない。
【００６１】
次に、コンフリクト確認用ジョブ生成部１４が、コンフリクト確認用ジョブの生成が必要であるかを判断する（ステップＳ２５）。コンフリクト確認用ジョブ生成部１４は、上記ステップＳ２４においてネットワークプリンタ３の種別に依存する印刷設定を含む印刷設定が選択された場合に、コンフリクト確認用ジョブの生成が必要であると判断する。コンフリクト確認用ジョブ生成部１４は、上記ステップＳ２４においてネットワークプリンタ３の種別に依存する印刷設定を含む印刷設定が選択されなかった場合に、コンフリクト確認用ジョブの生成が必要でないと判断する。コンフリクト確認用ジョブの生成が必要でない場合は処理を終了する。コンフリクト確認用ジョブの生成が必要である場合、コンフリクト確認用ジョブ生成部１４がコンフリクト確認用ジョブを生成し、データ情報送受信部１５、プリントサーバ２を介してネットワークプリンタ３に送信する（ステップＳ２６）。なお、本実施例において、図７のステップＳ２４及びＳ２５における処理を省略するようにしてもよい。
【００６２】
図１２は、図７のステップＳ２６におけるコンフリクト確認用ジョブの生成・送信処理を示すフローチャートである。コンフリクト確認用ジョブ生成部１４が、全ての第３の印刷設定について最低コンテンツページ数の確認が完了したかを判断する（ステップＳ２６１）。最低コンテンツページ数は、第３の印刷設定に対応する印刷ジョブを実行するために最低限必要なページ数である。最低コンテンツページ数は予め決められる。例えば、パンチに対応する最低コンテンツページ数は１ページである。また、ステイプルに対応する最低コンテンツページ数は２ページである。最低コンテンツページ数の確認が完了していない第３の印刷設定がある場合、コンフリクト確認用ジョブ生成部１４が、第３の印刷設定を解析して、第３の印刷設定に対応する最低コンテンツページ数を確認し（ステップＳ２６２）、ステップＳ２６１に戻る。全ての第３の印刷設定について最低コンテンツページ数の確認が完了した場合は、ステップＳ２６３に進む。
【００６３】
次に、コンフリクト確認用ジョブ生成部１４が、各々の第３の印刷設定に対応する代表ページを決定する（ステップＳ２６３）。代表ページは、第３のページ範囲に含まれる１又は複数のページである。ステップＳ２６３において、コンフリクト確認用ジョブ生成部１４は、第３の印刷設定に対応するページ範囲に含まれるページのうち、上記ステップＳ２６２において確認された、この第３の印刷設定に対応する最低コンテンツページ数分のページを代表ページとする。
【００６４】
例えば、図１０（Ｂ）に示すように、コンフリクト確認用ジョブ生成部１４は、ページ１をパンチに対応する代表ページとして決定する。また、コンフリクト確認用ジョブ生成部１４は、ページ５をパンチと折りとの組合せに対応する代表ページとして決定する。また、コンフリクト確認用ジョブ生成部１４は、ページ７とページ８とを、パンチとステイプルと折りとの組合せに対応する代表ページとして決定する。また、コンフリクト確認用ジョブ生成部１４は、ページ７とページ８とを、パンチとステイプルとの組合せに対応する代表ページとして決定する。
【００６５】
また、例えば、図１１（Ｂ）に示すように、コンフリクト確認用ジョブ生成部１４は、ページ１をパンチに対応する代表ページとして決定する。また、コンフリクト確認用ジョブ生成部１４は、ページ５をパンチと折りとの組合せに対応する代表ページとして決定する。また、コンフリクト確認用ジョブ生成部１４は、ページ９とページ１０とを、パンチとステイプルとの組合せに対応する代表ページとして決定する。
【００６６】
第３の印刷設定に対応する最低コンテンツページ数が１ページである場合、コンフリクト確認用ジョブ生成部１４は、各々の第３のページ範囲に含まれるページのうち先頭のページを代表ページとする。これによって、各々の第３のページ範囲に含まれるページと代表ページとの対応関係を明確にすることができる。
【００６７】
図１２に戻って、コンフリクト確認用ジョブ生成部１４が、ネットワークプリンタ３がコンテンツを含まない印刷ジョブを実行可能であるかを判断する（ステップＳ２６４）。例えば、コンフリクト確認用ジョブ生成部１４は、予め記憶手段に記憶された、ネットワークプリンタ３がコンテンツを含まない印刷ジョブを実行可能であるかを示す情報に基づいて、上記ステップＳ２６４の処理を実行する。コンフリクト確認用ジョブ生成部１４が、ネットワーク４を介してネットワークプリンタ３に対して問い合わせを行うことを通じて、該ネットワークプリンタ３がコンテンツを含まない印刷ジョブを実行可能であるかを判断するようにしてもよい。
【００６８】
ネットワークプリンタ３がコンテンツを含まない印刷ジョブを実行可能である場合には、コンフリクト確認用ジョブ生成部１４が、コンテンツを含まないコンフリクト確認用ジョブを生成する。具体的には、コンフリクト確認用ジョブ生成部１４は、各々の代表ページに対応する印刷設定が付加されたコンフリクト確認用ジョブを生成する。代表ページに対応する印刷設定は、該代表ページの選択元である第３のページ範囲に対応づけられている印刷設定（第３の印刷設定）である。そして、データ情報送受信部１５が、生成されたコンフリクト確認用ジョブをネットワークプリンタ３に対して送信する（ステップＳ２６６）。コンフリクト確認用ジョブ生成部１４が、コンテンツを含まないコンフリクト確認用ジョブを生成することにより、生成対象のコンフリクト確認用ジョブのデータ量を少なくすることができる。
【００６９】
ネットワークプリンタ３がコンテンツを含まない印刷ジョブを実行可能でない場合には、コンフリクト確認用ジョブ生成部１４が、コンテンツが付加されたコンフリクト確認用ジョブを生成する（ステップＳ２６５）。具体的には、コンフリクト確認用ジョブ生成部１４は、各々の代表ページに対応する印刷設定（第３の印刷設定）と、各々の代表ページに対応する白紙コンテンツとが付加されたコンフリクト確認用ジョブを生成する。白紙コンテンツは、印字データを含まないコンテンツである。すなわち、コンフリクト確認用ジョブ生成部１４は、第３の印刷設定と該第３の印刷設定に対応する代表ページのコンテンツとを、生成されるコンフリクト確認用ジョブに付加する。そして、データ情報送受信部１５が、生成されたコンフリクト確認用ジョブをネットワークプリンタ３に対して送信する（ステップＳ２６６）。図１０（Ｂ）及び図１１（Ｂ）の点線部で囲った部分は、白紙コンテンツを含むコンフリクト確認用ジョブの例である。本実施例では、第３の印刷設定の最低コンテンツページ数分のページが代表ページである。従って、コンフリクト確認用ジョブ生成部１４が、代表ページのコンテンツを含むコンフリクト確認用ジョブを生成することにより、ネットワークプリンタ３に第３の印刷設定を実行するために最低限必要なページ数分のジョブ処理を実行させることができる。
【００７０】
なお、本実施例において、図７のステップＳ２４及びＳ２５の処理を省略する場合は、上記ステップＳ２６１乃至Ｓ２６３、ステップＳ２６５及びＳ２６６の処理は、図８のステップＳ２３７において決定された第２の印刷設定について実行される。従って、図７のステップＳ２４及びＳ２５の処理を省略する場合は、上記ステップＳ２６５において、コンフリクト確認用ジョブ生成部１４は、各々の代表ページに対応する第２の印刷設定とコンテンツとを、生成されるコンフリクト確認用ジョブに付加する。なお、後述する図１３に示すコンフリクト確認用ジョブの実行処理についても同様である。
【００７１】
図１３は、ネットワークプリンタによるコンフリクト確認用ジョブの実行処理フローの例を示す図である。プリンタ制御部３６が、コンフリクト確認用ジョブに含まれる全ての印刷設定（第３の印刷設定）について実行処理が完了したかを判断する（ステップＳ３０１）。実行処理が完了していない印刷設定がある場合は、ステップＳ３０２に進む。言語解析部３２が、コンフリクト確認用ジョブを解析する（ステップＳ３０２）。なお、ステップＳ３０２において、言語処理部３２が印刷設定に応じたジョブ処理の実行のためにコンテンツが必要であると判断した場合には、描画出力部３４が白紙コンテンツを生成してプリンタ制御部３６に渡すようにしてもよい。
【００７２】
続いて、プリンタ制御部３６が、ステップＳ３０３乃至Ｓ３０６において、コンフリクト確認用ジョブに含まれる第３の印刷設定毎に、該第３の印刷設定に応じたジョブ処理を実行する。図１３に示す例では、プリンタ制御部３６が、用紙設定処理、ステッチング処理、パンチ処理、又は折り処理を実行することを通じて、各々の第３の印刷設定に応じたジョブ処理を実行する。本実施例においては、プリンタ制御部３６が、公知の白紙節約モードでジョブ処理を実行する。コンフリクト確認用ジョブに含まれるコンテンツは白紙コンテンツであるため、プリンタ制御部３６が、白紙節約モードでジョブ処理を実行することにより、用紙の出力なしにコンフリクト確認用ジョブの実行結果を得ることができる。
【００７３】
次に、ジョブ管理部３３が、プリンタ制御部３６によるコンフリクト確認用ジョブの実行結果を記録し（ステップＳ３０７）、ステップＳ３０１に戻る。ステップＳ２０７において、ジョブ管理部３３は、コンフリクト確認用ジョブに含まれる各々の印刷設定（第３の印刷設定）に対応するジョブ処理を実行できたか否かを示す情報をコンフリクト確認用ジョブの実行結果として記録する。
【００７４】
図１０（Ｂ）に示すコンフリクト確認用ジョブに対応する実行結果について、以下に具体的に説明する。ジョブ管理部３３は、複数の印刷設定の組合せからなる第３の印刷設定については、ジョブ処理を実行できたか否かを示す情報を以下のようにして決定する。プリンタ制御部３６が第３の印刷設定に含まれる印刷設定の少なくとも一つを実行できなかった場合、ジョブ管理部３３は、この第３の印刷設定に対応するジョブ処理を実行できなかったことを示す情報をコンフリクト確認用ジョブの実行結果に含める。例えば、プリンタ制御部３６が、代表ページ（ページ１）に適用されるパンチ処理（第１の処理）と、代表ページ（ページ５）に適用される折り処理（第２の処理）を実行できたものとする。また、プリンタ制御部３６が、代表ページ（ページ９とページ１０）に適用される、パンチとステイプルとの組合せの処理（第３の処理）を実行できたものとする。また、プリンタ制御部３６が、代表ページ（ページ７とページ８）に適用される、パンチとステイプルと折りとの組合せの処理（第４の処理）を実行できなかったものとする。ジョブ管理部３３は、上記第１、第２、第３の処理を実行できたことと、上記第４の処理を実行できなかったことを示す情報をコンフリクト確認用ジョブの実行結果として記録する。
【００７５】
上記ステップＳ３０１において、プリンタ制御部３６が、コンフリクト確認用ジョブに含まれる全ての印刷設定（第３の印刷設定）について実行処理が完了したと判断した場合、ステータス応答処理部３７が、以下の処理を行う。ステータス応答処理部３７は、記録されたコンフリクト確認用ジョブの実行結果を含むステータス応答情報を、データ情報送受信部３１及びプリンタサーバ２を介してクライアントコンピュータのデータ情報送受信部１５に送信し、処理を終了する。
【００７６】
図４に戻って、クライアントコンピュータ１のデータ情報送受信部１５がネットワークプリンタ３からステータス応答情報を受信すると、コンフリクト結果判断部１６が、コンフリクト処理を実行する（ステップＳ３）。
【００７７】
図１４は、図４のステップＳ３におけるコンフリクト処理の例を説明する図である。コンフリクト結果判定部１６が、ステータス応答情報に含まれるコンフリクト確認用ジョブの実行結果を取得する。コンフリクト結果判定部１６が、コンフリクト確認用ジョブに含まれる全ての印刷設定（第３の印刷設定）についてコンフリクト処理結果を保存したかを判断する（ステップＳ３１）。コンフリクト結果判定部１６が、コンフリクト確認用ジョブに含まれる全ての印刷設定についてコンフリクト処理結果を保存した場合は、図４のステップＳ４に進む。
【００７８】
コンフリクト処理結果が保存されていない印刷設定がある場合は、ステップＳ３３に進む。ステップＳ３３において、コンフリクト結果判定部１６が、コンフリクト確認用ジョブの実行結果を参照して、ネットワークプリンタ３がコンフリクト確認用ジョブに含まれる印刷設定に対応するジョブ処理を実行できたかを判断する（ステップＳ３２）。すなわち、コンフリクト結果判定部１６が、ネットワークプリンタ３が印刷処理を実行できない第３の印刷設定の組合せを検出（コンフリクト処理を実行）する。
【００７９】
ネットワークプリンタ３がコンフリクト確認用ジョブに含まれる印刷設定に対応するジョブ処理を実行できた場合は、コンフリクト結果判定部１６が以下の処理を行う。すなわち、コンフリクト結果判定部１６が、ネットワークプリンタ３がジョブ処理を実行できた印刷設定と該印刷設定が適用された代表ページとに対応付けて、コンフリクトフラグをＯＦＦに設定する（ステップＳ３３）。そして、コンフリクト結果判定部１６が、コンフリクトフラグと印刷設定と代表ページとの対応情報をコンフリクト処理結果として所定の記憶手段に記憶して、ステップＳ３１に戻る。コンフリクトフラグは、ネットワークプリンタ３がコンフリクト確認用ジョブに含まれる第３の印刷設定に対応するジョブ処理を実行できたか否かを示すフラグである。コンフリクトフラグのＯＮは、ネットワークプリンタ３がコンフリクト確認用ジョブに含まれる第３の印刷設定に対応するジョブ処理を実行できなかったことを示す。コンフリクトフラグのＯＦＦは、ネットワークプリンタ３がコンフリクト確認用ジョブに含まれる第３の印刷設定に対応するジョブ処理を実行できたことを示す。
【００８０】
ネットワークプリンタ３がコンフリクト確認用ジョブに含まれる印刷設定に対応するジョブ処理を実行できなかった場合は、コンフリクト結果判定部１６が以下の処理を行う。すなわち、コンフリクト結果判定部１６が、ネットワークプリンタ３がジョブ処理を実行できなかった印刷設定と該印刷設定が適用された代表ページとに対応付けて、コンフリクトフラグをＯＮに設定する（ステップＳ３４）。そして、コンフリクト結果判定部１６が、コンフリクトフラグと印刷設定と代表ページとの対応情報をコンフリクト処理結果として所定の記憶手段に記憶して、ステップＳ３１に戻る。
【００８１】
例えば、図１０（Ｂ）に示すコンフリクト確認用ジョブに対応する実行結果が代表ページ（ページ７とページ８）とに関して適用される印刷設定（パンチとステイプルと折りとの組合せ）についてジョブ処理が実行できなかったことを示すものとする。コンフリクト結果判定部１６は、この印刷設定に対応するコンフリクトフラグをＯＮに設定する。
【００８２】
図４のステップＳ４に戻って、印刷設定部１１が、コンフリクト結果判定部１６が実行したコンフリクト処理結果を取得する。そして、印刷設定部１１が、取得したコンフリクト処理結果に基づいて、コンフリクト確認用ジョブに含まれる第３の印刷設定の各々について、以下の処理を行う。印刷設定部１１が、ネットワークプリンタ３がジョブ処理を実行できなかった印刷設定があるか（コンフリクトがあるか）を判断する（ステップＳ４）。コンフリクト処理結果に含まれるコンフリクトフラグがＯＮである場合、印刷設定部１１が、コンフリクトがあると判断する。コンフリクト処理結果に含まれるコンフリクトフラグがＯＦＦである場合、印刷設定部１１が、コンフリクトがないと判断する。印刷設定部１１が、コンフリクトがあると判断した場合は、印刷設定部１１が、コンフリクト表示を行い（ステップＳ５）、ステップＳ１に戻る。上記ステップＳ５においては、印刷瀬邸部１１は、例えば、ネットワークプリンタ３が実行できなかった印刷設定と、該印刷設定に対応するページ範囲とを示す情報を表示する。
【００８３】
ステップＳ５における処理について、更に具体的に説明する。上記ステップＳ４において、コンフリクトがあると判断された印刷設定が、図１０（Ｂ）の代表ページ（ページ７とページ８）に適用された、パンチとステイプルと折りとの組合せであるものとする。印刷設定部１１が、図１０（Ａ）中のページ範囲Ａ乃至Ｄのうち、上記代表ページを含むページ範囲Ｃ（ページ７とページ８）を特定する。そして、印刷設定部１１が、例えば、図１５に示すように、ネットワークプリンタ３が上記特定されたページ範囲Ｃについて、パンチとステイプルと折りとの組合せを実行できないことを示すメッセージを表示する。
【００８４】
図４に戻って、ステップＳ４において、印刷設定部１１が、コンフリクトがないと判断した場合は、ステップＳ６に進む。ステップＳ６において、印刷設定部１１が、コンフリクトがないと判断された印刷設定と、該印刷設定に対応するコンテンツであって本来ユーザがネットワークプリンタ３に印刷させたい印字データを含むコンテンツとが付加された印刷ジョブを生成する。そして、印刷設定部１１が、生成した印刷ジョブをデータ情報送受信部１５、プリントサーバ２を介してネットワークプリンタ３に対して送信する。これにより、ネットワークプリンタ３が、本来ユーザが所望する印刷処理を実行する。
【００８５】
実施例１の情報処理装置は、印刷処理の対象となる印刷設定に基づいて生成したコンフリクト確認用ジョブを印刷装置に送信し、該印刷装置から受信した上記コンフリクト確認用ジョブの実行結果に基づいてコンフリクト処理を行う。従って、実施例１の情報処理装置によれば、印刷装置の機種に応じた印刷設定の不整合を回避するためのモジュールを備えることなく、印刷装置によるコンフリクト確認用ジョブの実行結果に基づいて、印刷設定の不整合を容易に検出することができる。
【００８６】
また、実施例１の情報処理装置は、ページ範囲の印刷設定が重複する場合に、各々のページに対応する印刷設定が変化する箇所を基準として印刷処理対象のページ範囲を区切って、新たにページ範囲と印刷設定との対応関係を再編する（図８を参照）。そして、この情報処理装置は、ページ範囲との対応関係が再編された印刷設定が付加されたコンフリクト確認用ジョブを生成する（図１２を参照）。従って、実施例１の情報処理装置によれば、印刷設定の組合せパターンが多い場合であっても、印刷設定の不整合を漏れなく検出することが可能となる。
【００８７】
また、実施例１の情報処理装置は、ネットワークプリンタ３の種別に依存する印刷設定を含む印刷設定が付加されたコンフリクト確認用ジョブを生成する（図７のステップＳ２４乃至Ｓ２６、図１２を参照）。従って、実施例１の情報処理装置によれば、ネットワークプリンタ３の種別に依存する印刷設定についての不整合を漏れなく検出することができる。
【００８８】
次に、本発明の実施例２について説明する。実施例２におけるクライアントコンピュータの全体動作処理フローは、図４に示す処理フローと同様である。以下では、実施例２のクライアントコンピュータの動作処理のうち、実施例１のクライアントコンピュータの動作処理と異なる処理について主に説明する。
【００８９】
図１６は、実施例２における印刷設定範囲再編処理の例を示す図である。図１６中のステップＳ４０１乃至Ｓ４０５の処理は、図８中のステップＳ２３１乃至Ｓ２３５と同様である。実施例２においては、図１６のステップＳ４０２において、コンフリクト確認用ジョブ生成部１４が、例えば図１８に示すような例外設定テーブルを所定の記憶手段に記憶する。図１８に示す例外設定テーブル内の重複フラグは、例外設定テーブルが示す第２のページ範囲に対応する印刷設定が他の第２のページ範囲に対応する印刷設定と同一であることを示すフラグである。また、図１６のステップＳ４０５において、コンフリクト確認用ジョブ生成部１４が、図１８に示す例外設定テーブルに基づいて、第３のページ範囲と該第３のページ範囲に対応する第２の印刷設定を決定する。例えば、図１９（Ａ）に示すような、ページ１からページ２、ページ３からページ５、ページ６からページ８、ページ９からページ１１という４つの第３のページ範囲が決定される。また、ページ１からページ２までの第３のページ範囲に対応する第２の印刷設定としてパンチが決定される。ページ３からページ５までの第３のページ範囲に対応する第２の印刷設定としてステイプルが決定される。ページ６からページ８までの第３のページ範囲に対応する第２の印刷設定としてパンチが決定される。ページ９からページ１１までの第３のページ範囲に対応する第２の印刷設定としてステイプルが決定される。
【００９０】
図１６に戻って、ステップＳ４０６において、コンフリクト確認用ジョブ生成部１４が、ステップＳ４０５において決定された、第３のページ範囲に対応する第２の印刷設定を抽出する（ステップＳ４０６）。そして、コンフリクト確認用ジョブ生成部１４が、印刷設定のまとめ処理を実行し（ステップＳ４０７）、図７のステップＳ２４に進む。
【００９１】
図１７は、図１６のステップＳ４０７における印刷設定のまとめ処理を示すフローチャートである。コンフリクト確認用ジョブ生成部１４が、図１６のステップＳ４０６において抽出された全ての第２の印刷設定について処理を完了したかを判断する（ステップＳ５０１）。抽出された全ての第２の印刷設定について処理を完了した場合は、図７のステップＳ２４に進む。
【００９２】
処理を完了していない第２の印刷設定がある場合は、コンフリクト確認用ジョブ生成部１４が、第２の印刷設定と該第２の印刷設定に対応する第３のページ範囲の情報を読み出す（ステップＳ５０２）。次に、コンフリクト確認用ジョブ生成部１４が、同一の第２の印刷設定に対応する第３のページ範囲があるかを判断する（ステップＳ５０３）。同一の第２の印刷設定に対応する第３のページ範囲がない場合は、ステップＳ５０１に戻る。同一の第２の印刷設定に対応する第３のページ範囲がある場合は、コンフリクト確認用ジョブ生成部１４が、該同一の第２の印刷設定に対応する第３のページ範囲のうち、いずれか１つの第３のページ範囲を選択する。例えば図１９（Ａ）に示す例では、ページ３からページ５までの第３のページ範囲と、ページ９からページ１１までの第３のページ範囲とで、対応する第２の印刷設定が同一である。従って、コンフリクト確認用ジョブ生成部１４は、例えば、ページ３からページ５までの第３のページ範囲を選択する。次に、コンフリクト確認用ジョブ生成部１４が、例外設定テーブルにおいて、上記選択されなかった第３のページ範囲に対応する重複フラグを立て（ステップＳ５０４）、ステップＳ５０１に戻る。
【００９３】
実施例２におけるコンフリクト確認用ジョブ生成部１４は、図１２のステップＳ２６３において、例外設定テーブルに重複フラグが立てられた第３のページ範囲からは代表ページを決定しない。従って、図１９（Ａ）、（Ｂ）に示すように、コンフリクト確認用ジョブ生成部１４は、例えば、ページ９からページ１１までの第３のページ範囲からは代表ページを決定しない。コンフリクト確認用ジョブ生成部１４は、上記図１７のステップＳ５０３において選択された、ページ３からページ５までの第３のページ範囲に含まれるページ３を、ステイプルという印刷設定に対応する代表ページとして決定する。そして、図１２のステップＳ２６５において、コンフリクト確認用ジョブ生成部１４は、選択された第３のページ範囲に含まれる代表ページに対応する第３の印刷設定（又は第２の印刷設定）とコンテンツとを、生成されるコンフリクト確認用ジョブに付加する。
【００９４】
実施例２の情報処理装置によれば、ネットワークプリンタ３に実行させるコンフリクト確認用ジョブに含まれる印刷設定を少なくすることができるので、ネットワークプリンタ３の負荷を軽減できる。
【００９５】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【００９６】
１  クライアントコンピュータ
２  プリントサーバ
３  ネットワークプリンタ
４  ネットワーク
【図１】
2011237853.tif 000003
【図２】
2011237853.tif 000004
【図３】
2011237853.tif 000005
【図４】
2011237853.tif 000006
【図５】
2011237853.tif 000007
【図６】
2011237853.tif 000008
【図７】
2011237853.tif 000009
【図８】
2011237853.tif 000010
【図９】
2011237853.tif 000011
【図１０】
2011237853.tif 000012
【図１１】
2011237853.tif 000013
【図１２】
2011237853.tif 000014
【図１３】
2011237853.tif 000015
【図１４】
2011237853.tif 000016
【図１５】
2011237853.tif 000017
【図１６】
2011237853.tif 000018
【図１７】
2011237853.tif 000019
【図１８】
2011237853.tif 000020
【図１９】
2011237853.tif 000021