(57)【特許請求の範囲】
【請求項１】
クライアント装置から印刷要求を受信する受信手段と、
前記印刷要求に対応する印刷データからページのイメージとしての中間データを作成し、当該中間データと、前記印刷要求の発行元を固有に識別する情報に対応付けた固有識別情報とを管理手段に登録し、当該中間データおよび前記固有識別情報に対応付けたデータ構成情報を作成する中間データ作成手段と、
複数の画像形成装置の中から、前記固有識別情報に対応付けられた出力先としての画像形成装置を選択する出力先制御手段と、
前記データ構成情報を参照して前記管理手段から前記中間データおよび前記固有識別情報を取得し、前記複数の画像形成装置で出力可能な出力データを作成するための複数のプログラムのうち、前記出力先制御手段によって選択された画像形成装置に対応付けられたプログラムに、当該画像形成装置のための出力データを作成させ、該出力データを当該画像形成装置に出力させる出力データ送信手段とを有することを特徴とするデータ処理装置。
【請求項２】
前記出力データ送信手段は、前記複数のプログラムのうち、設定された出力先情報に係る画像形成装置に対応するプログラムに、当該画像形成装置のための出力データを作成させ、
前記出力先制御手段は、前記固有識別情報に対応付けられた画像形成装置の機器情報である構成情報を取得し、前記設定された出力先情報を当該構成情報で書換えることを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
前記データ処理装置は、前記出力先制御手段による前記出力先情報の書換えの完了が通知されるまで前記出力データ送信手段による前記出力データの作成を待機させる、請求項２に記載のデータ処理装置。
【請求項４】
前記出力先制御手段は、前記固有識別情報と、前記画像形成装置の装置名とを対応付ける対応付けた情報、および前記装置名を含む前記画像形成装置の構成情報を登録する装置情報一覧を管理し、前記固有識別情報を取得して前記対応付けた情報および前記装置情報一覧を参照して、前記画像形成装置を選択する、請求項１又は２に記載のデータ処理装置。
【請求項５】
前記固有識別情報は、ＩＰアドレス、ＭＡＣアドレス、コンピュータ名、印刷データが含む情報、またはログイン名である、請求項１乃至４いずれか一項に記載のデータ処理装置。
【請求項６】
前記出力先制御手段は、前記中間データに含まれている文字列に対応付けられて記憶されている印刷条件を判定し、
前記出力データ送信手段は、設定された出力先情報に係る画像形成装置に対応するプログラムに、前記印刷条件を設定する、請求項２に記載のデータ処理装置。
【請求項７】
前記出力先制御手段は、前記印刷要求に含まれている情報を使用して、前記印刷要求の発行元の前記固有識別情報を、ネットワークを介して問い合わせて取得する、請求項１乃至６いずれか一項に記載のデータ処理装置。
【請求項８】
ネットワークを介して接続されたクライアント装置と、
前記クライアント装置からの印刷要求を受信して出力データを作成し、前記ネットワークを介して送付する請求項１乃至７のいずれか１項に記載のデータ処理装置と、
前記データ処理装置からの前記出力データを前記クライアント装置またはユーザを固有に識別するための固有識別情報により指定される画像形成装置に出力させるサーバ装置と
を含む印刷システム。
【請求項９】
前記クライアント装置は、シンクライアントまたはファットクライアントである、請求項８に記載の印刷システム。
【請求項１０】
データ処理装置が実行するデータ処理方法であって、
クライアント装置から印刷要求を受信するステップと、
前記印刷要求に対応する印刷データからページのイメージとしての中間データを作成し、当該中間データと、前記印刷要求の発行元を固有に識別する情報に対応付けた固有識別情報とを管理手段に登録し、当該中間データおよび前記固有識別情報に対応付けたデータ構成情報を作成するステップと、
複数の画像形成装置の中から、前記固有識別情報に対応付けられた出力先としての画像形成装置を選択するステップと、
前記データ構成情報を参照して前記管理手段から前記中間データおよび前記固有識別情報を取得し、前記複数の画像形成装置で出力可能な出力データを作成するための複数のプログラムのうち、前記選択するステップにおいて選択された画像形成装置に対応付けられたプログラムに、当該画像形成装置のための出力データを作成させ、該出力データを当該画像形成装置に出力させるステップとを有することを特徴とするデータ処理方法。
【請求項１１】
前記出力させるステップは、前記複数のプログラムのうち、設定された出力先情報に係る画像形成装置に対応するプログラムに、当該画像形成装置のための出力データを作成させ、
前記選択するステップは、前記固有識別情報に対応付けられた画像形成装置の機器情報である構成情報を取得し、前記設定された出力先情報を当該構成情報で書換えることを特徴とする請求項１０に記載のデータ処理方法。
【請求項１２】
前記出力させるステップは、前記出力先情報の書換えの完了が通知されるまで前記出力データの作成を待機させるステップを含む、請求項１１に記載のデータ処理方法。
【請求項１３】
コンピュータを、請求項１乃至７のいずれか１項に記載の手段として機能させるためのコンピュータ実行可能なプログラム。
【請求項１４】
請求項１３に記載のプログラムを記録したコンピュータ可読な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散印刷するためのデータ処理技術に関し、より詳細には、情報処理装置が作成したドキュメントの出力先を制御するデータ処理装置、印刷システム、データ処理方法、プログラムおよび記録媒体に関する。
【背景技術】
【０００２】
近年、ネットワーク技術の普及にともない、オフィス環境では、パーソナルコンピュータは、遠隔的に接続された、いわゆるＭＦＰ(Multi-Function Peripheral)、またはページプリンタとして総称される画像形成装置に接続し、印刷するべきデータを画像形成装置に送付して印刷させることが多い。また、ネットワークには、プリンタサーバが接続されている場合もある。プリンタサーバが接続されている場合、パーソナルコンピュータは、印刷を実行させる場合にプリンタサーバに接続し、プリンタサーバを介して出力先として指定されたページプリンタによって印刷が実行される。この他、パーソナルコンピュータがＵＳＢ(Universal Serial Buss)またはワイヤレスＵＳＢなどを介してローカルプリンタに接続している場合もある。
【０００３】
この様な環境下では、パーソナルコンピュータは、複数の画像形成装置に接続する可能性を含むことになる。出力物がセキュリティレベルの点で問題のない場合や、個人情報などに関連しない場合であれば、パーソナルコンピュータのユーザが誤って意図しない出力先に出力させても大きな問題は生じない。しかしながら、パーソナルコンピュータは、種々のデータを処理して多種多様なドキュメントを作成する。
【０００４】
このため、高いセキュリティ性を有するドキュメントや、高いレベルの個人情報を含むドキュメント等を、意図せずに第三者が容易にアクセス可能な画像形成装置に出力させてしまい、重大な損失が発生する可能性がある。さらに、近年では、インターネットファクシミリも普及し、アプリケーションのプリントウィザード内からファクシミリ送信も可能となっている。この様な環境下で、アプリケーションのユーザが誤って社内文書などをファクシミリ送信してしまう可能性もあり、重大な損失につながる虞も有る。
【０００５】
印刷物の出力先を制御する技術は種々知られており、例えば、特許文献１では、ネットワーク接続された画像形成装置の状況に対応して、出力させたい画像形成装置を変更することが可能な情報処理装置が開示されている。また、特許文献２では、ネットワークを介して接続された画像形成装置において他の部門からの出力処理を制限および変更する部門管理システムが開示されている。
【０００６】
さらに、特許文献３では、アプリケーションプログラムにより生成された印刷データを、複数のプリンタに分散させて印刷する技術が開示されている。特許文献３に記載された技術は、同一の印刷データを複数部並列印刷させる場合に、ユーザが出力先を繰り返し設定することなく、並列印刷を実行可能とするため、仮想プリンタドライバを構成して、複数のプリンタに対して仮想プリンタから並列印刷させるためのプリンタグループを指定するものである。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１では、プリント負荷や故障など、画像形成装置の状況に応じて出力先を変更する情報処理装置を開示するものの、画像形成装置が通常の稼働状態の場合には、例え当該画像形成装置が間違って選択されていた場合であっても出力されてしまうことになる。現在のパーソナルコンピュータは、処理速度が充分に速いので、画像形成装置を間違って指定した場合には、全く出力させずに印刷出力をキャンセルすることは実質的に不可能である。
【０００８】
また、特許文献２では、画像形成装置が部門などの出力制御を行うための対応テーブルを構成しておき、印刷要求から部門などを識別し、印刷出力制御を実行させるものである。特許文献２では、複数のパーソナルコンピュータが単一の画像形成装置を使用する場合に印刷制御を行う点は開示するものの、単一のパーソナルコンピュータが複数の画像形成装置を管理する場合にパーソナルコンピュータからのアクセスを制御することを課題とするものではない。
【０００９】
さらに特許文献３に記載された技術は、同一の印刷データを複数部印刷させる際に、プリンタを変えて並列印刷することを可能とするが、特定のユーザまたはユーザグループごとに、複数のプリンタの中から指定したプリンタを選択して確実に出力先を指定して出力を行うことを課題とするものではない。
【００１０】
さらに、近年、最小限の機能のみを搭載したクライアント、いわゆるシンクライアントが、そのコストパフォーマンスの点から注目されている。シンクライアントは、必要最小限のクライアントアプリケーションを搭載し、実際の処理については、サーバプログラムを利用して業務を実行する。この様なシンクライアントからの印刷要求を受領して、意図しない出力先に印刷データを送付させることなく適切に印刷を実行することも必要である。
【００１１】
また、サーバプログラムは、メインフレームコンピュータに比較してアプリケーションを修正するためのコストは低く抑えられる。しかし、出力先を制御するためのサーバプログラムの大幅な修正が要求されるのであれば、プリンタネットワークを導入することによるメリットが没却されてしまう。すなわち、ユーザに対してプリンタネットワークの構築以外にも、サーバプログラムの修正という負担を要求することになるからである。加えて、上述したソフトウェア基盤の修正や、プリンタネットワークの導入に際して、サーバプログラムのインストールのため、基幹業務を停止せざるを得ないという、業務上のコスト負担も発生する。このため、サーバプログラムのアプリケーション構成を大きく修正することなく、スムーズに出力先管理を実行することが必要となる。
【００１２】
したがって、これまでサーバプログラムの実質的な修正を伴うことなく、業務サーバが管理するクライアントからの印刷要求を、ユーザまたはクライアントまたはこれらのグループに関連して複数のプリンタに対して出力制御するデータ処理装置、印刷システム、データ処理方法、プログラムおよび記憶媒体が必要とされていた。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、データ処理装置は、クライアント装置から印刷要求を受信する受信手段と、複数の画像形成装置の中から、受信された印刷要求に係るクライアント装置または前記印刷要求に係るクライアント装置のユーザに対応付けられた出力先としての画像形成装置を選択する出力先制御手段と、前記複数の画像形成装置で出力可能な出力データを作成するための複数のプログラムのうち、設定された出力先情報に係る画像形成装置に対応するプログラムに、当該画像形成装置のための出力データを作成させる出力データ送信手段とを有し、前記出力データ送信手段は、前記印刷要求の発行元を固有に識別する情報に対応付けた固有識別情報を取得し、設定された出力先情報に係る画像形成装置に対応するプログラムに、当該画像形成装置のための出力データを作成させ、該出力データを対応する画像形成装置に出力させ、前記出力先制御手段は、前記固有識別情報に対応付けられた画像形成装置の機器情報である構成情報を取得し、前記設定された出力先情報を当該構成情報で書換える。
【発明の効果】
【００１４】
本発明によれば、クライアントコンピュータからの印刷データの出力先を適切に制御することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明のデータ処理装置１１０を含むプリンタネットワーク１００の実施形態を示した図。
【図２】本実施形態のデータ処理装置１１０の機能ブロック２００を示した図。
【図３】本実施形態のデータ処理装置１１０が実行する処理のフローチャート。
【図４】本実施形態で発送先制御部２３８が管理する対応付けテーブルの実施形態を示した図。
【図５】本実施形態の出力データ発送部２３６が使用するリモートプリンタを構成する構成情報が登録されたプリンタ情報リスト５００の実施形態を示した図。
【図６】本実施形態で出力データ発送部２３６が実行する処理のフローチャートを示した図。
【図７】本実施形態の発送先制御部２３８が実行する処理のフローチャート。
【図８】発送先制御部２３８が実行する処理の変形例のフローチャート。
【図９】印刷条件管理テーブルの例を示す図。
【図１０】本実施形態のプリンタネットワーク８００の第２の実施形態を示した図。
【図１１】本実施形態のデータ処理サーバ８２０の機能ブロック９００を示した図。
【図１２】本実施形態のデータ処理サーバ８２０が実行する発送先制御処理のフローチャート。
【図１３】他の実施形態のデータ処理装置１１００の機能ブロック図。
【発明を実施するための形態】
【００１６】
以下、本発明を実施形態をもって説明するが、本発明は、後述する実施形態に限定されるものではない。図１は、本発明のデータ処理装置１１０を含むプリンタネットワークシステム１００の実施形態を示す。プリンタネットワークシステム１００は、オフィスなどに配置される複数のクライアントコンピュータ（以下、単にクライアントとして参照する。）１１２、１１４、１１６、１１８が、ネットワーク１３０に接続されて構成されている。ネットワーク１３０には、データ処理装置１１０の他、プリンタサーバ１２０および例示的な実施形態では、ＭＦＰ１２２、レーザプリンタ１２４、１２６、インクジェットプリンタ１２８などのリモートプリンタが接続されている。本実施形態では、上述したＭＦＰ１２２、ページプリンタ１２４〜１２８を、以下、リモートプリンタとして総称する。
【００１７】
データ処理装置１１０は、図１に示す実施形態では、クライアント１１２〜１１８と、プリンタサーバ１２０との間で、印刷要求および印刷要求に対応する印刷データを取得する。クライアント１１２〜１１８に割当てられたリモートプリンタを判断し、当該クライアントに割当てられたリモートプリンタに宛てて、印刷データに対応するＲＡＷデータを作成する。作成されたＲＡＷデータは、例えばＰＤＬ(Page Description Language)コマンドの追加処理などが行われて出力データとされ、プリンタサーバ１２０を介して指定されたリモートプリンタ１２２〜１２８に送付される。その結果、クライアント１１２〜１１８に対応したリモートプリンタによって印刷処理が実行される。
【００１８】
なお、クライアント１１２〜１１８に対してリモートプリンタを割当てる際には、クライアントのハードウェア上の識別値、例えばＩＰアドレス、ＭＡＣアドレス(Media Access Address)、クライアントに付されたコンピュータ名、またはユーザのログイン名などを使用することができ、本実施形態では、これらの値を固有識別値として総称する。
【００１９】
データ処理装置１１０は、好ましい実施形態では、サーバ装置として実装され、シングルコア、マルチコアのＣＰＵ、ＲＯＭ、実行空間を提供するＲＡＭ、及びハードディスク装置などを含み、Ｗｉｎｄｏｗｓ（登録商標）２００Ｘサーバ、ＵＮＩＸ（登録商標）、ＬＩＮＵＸ（登録商標）、又はＳｏｌａｒｉｓ（登録商標）などのオペレーティングシステム（ＯＳ）による制御の下、印刷データの出力先を制御する。また、データ処理装置１１０と、クライアント１１２〜１１８との間は、ＲＤＰ（Remote Desktop Protocol）などの適切な遠隔接続プロトコルを使用してトランザクションが可能とされている。
【００２０】
クライアント１１２〜１１８と、リモートプリンタ１２２〜１２８の割当てについては種々の態様が考えられる。例えば、特定の実施形態では、クライアントまたはユーザを固有に識別する固有識別値ごとに出力先にリモートプリンタを割当てることができる。また、他の実施形態では、クライアントグループまたはユーザグループを設定し、これらのグループ単位で特定のリモートプリンタを割当てる態様も採用することができる。図１に示した実施形態では、クライアント１１２とリモートプリンタ１２２とが拠点１４０を構成する。他の各クライアントについてもプリンタと対応付けられて拠点１５０、１６０、１７０を構成する。クライアントは拠点１４０〜１７０に複数存在することもでき、リモートプリンタについても各拠点に複数存在していてもよい。
【００２１】
プリンタサーバ１２０は、各リモートプリンタを管理しており、クライアント１１２〜１１８からの印刷要求に基づいてデータ処理装置１１０より送信される印刷要求を受領する。プリンタサーバ１２０は、受領した印刷要求において印刷先とされているリモートプリンタに対して印刷データを送付し、印刷ジョブを実行させる。より詳しくは、プリンタサーバ１２０は、リモートプリンタごとに、当該リモートプリンタに対応したプリンタドライバを有する。データ処理装置１１０からの印刷要求の受信、及びリモートプリンタ１２２〜１２８への印刷データの送付は、印刷要求において印刷先とされているリモートプリンタに対応するプリンタドライバによって制御される。
【００２２】
プリンタサーバ１２０についても好まし実施形態では、サーバ装置として実装することができ、ハードウェア構成およびＯＳ構成については、データ処理装置１１０と同様の構成とすることができる。なお、プリンタサーバ１２０は、必ずしもサーバ装置として実装される必要はなく、パーソナルコンピュータに、プリンタサーバアプリケーションを実装して構成することもできる。
【００２３】
クライアント１１２〜１１８は、それぞれ同様の構成を有している。クライアント１１２〜１１８は、ファットクライアント装置、例えば、それぞれがアプリケーションプログラムを実装し、各種処理を完結する、パーソナルコンピュータまたはワークステーションなどであってもよい。クライアント１１２〜１１８がファットクライアントである場合、各クライアント１１２〜１１８は、シングルコア、マルチコアのＣＰＵを搭載し、ＲＡＭ、ＲＯＭ、ハードディスク装置、及びネットワークインタフェースカード（ＮＩＣ）を含み、Ｗｉｎｄｏｗｓ（登録商標）、ＵＮＩＸ（登録商標）、ＬＩＮＵＸ（登録商標）、又はＭａｃ  ＯＳ（登録商標）などの適切なＯＳの下で、各リモートプリンタ１２２〜１２８へ印刷処理を依頼する。
【００２４】
ファットクライアントであるクライアント１１２〜１１８は、ハードディスク装置などからアプリケーションプログラムおよびデータをＲＡＭに読込んで、ＣＰＵがアプリケーションプログラムを実行させることにより、文書、イメージ、マルチメディアまたはこれらが複合的に組合わされた電子的データとして印刷対象とする印刷データを生成する。
【００２５】
また、他の実施形態では、クライアント１１２〜１１８は、いわゆるシンクライアントとしてもよい。シンクライアントは、ネットワーク接続モジュール、ユーザ認証機能、セッション生成モジュールなど、専らデータ処理装置１１０に対してサービス要求を発行し、処理結果を受領して印刷出力を要求する機能のみを有する。クライアント１１２〜１１８がシンクライアントである場合では、クライアント１１２〜１１８は、アプリケーションによる処理を完了した場合、データ処理装置１１０に対して印刷要求を発行する。
【００２６】
データ処理装置１１０は、シンクライアントの要求に対応して作成した印刷データを、仮想プリンタドライバ２３０に渡し、印刷処理を実行させる。なお、仮想プリンタドライバ２３０の詳細については後述する。
【００２７】
リモートプリンタ１２２〜１２８のうちページプリンタ１２４〜１２６は、ネットワークインタフェースカード（ＮＩＣ）を有し、プリンタサーバ１２０からの印刷データを、ネットワーク１３０を介して受領し、印刷ジョブを実行する。ＭＦＰ１２２は、ネットワークボードでネットワーク１３０に接続されたリモートプリンタとしてもよいし、プリント機能の他、プリンタサーバの機能を含んでいてもよい。
【００２８】
ネットワーク１３０は、１０００Ｂａｓｅ−ＴＸなどのイーサネット（登録商標）、光ネットワーク、又はＩＥＥＥ８０２．１１などの規格の無線ネットワークを含んで構成することができる。ネットワーク１３０は、フレームまたはＴＰＣ／ＩＰプロトコルに基づくパケット通信によって、相互通信を行う。ネットワーク１３０は、ＬＡＮの他、ＶＰＮ(Virtual Private Network)などによるセキュア環境下でインターネットなどの広域ネットワークを含んで構成されていてもよい。
【００２９】
図２は、本実施形態のデータ処理装置１１０の機能ブロック２００である。なお、図２に示すように、データ処理装置１１０は、複数の機能手段を含む。これらの機能手段は、ＲＡＭなどにプログラムが読み込まれ、ＣＰＵがプログラムを実行することによりコンピュータ上に実現される。
【００３０】
図２に示すように、データ処理装置１１０は、ネットワークインタフェース部２１０と、アプリケーション実行部２２０とを含む。ネットワークインタフェース部２１０は、ネットワーク１３０を介してＴＣＰ／ＩＰプロトコルなどに基づくデータを受領し、アプリケーション実行部２２０の処理結果をネットワーク１３０を介して外部出力する。アプリケーション実行部２２０は、受領した処理要求およびデータを使用してクライアント１１２〜１１８の指令に対応する処理を実行し、実行結果を作成する。例えば、アプリケーション実行部２２０は、クライアント１１２〜１１８からの印刷要求に応答して、実行結果から印刷データを作成し、指定したリモートプリンタから印刷出力させる。
【００３１】
データ処理装置１１０は、さらに仮想プリンタドライバ２３０と、リモートプリンタの機種固有のＲＡＷデータを作成するため、リモートプリンタ１２２〜１２８に対応したリモートドライバ２４０〜２４６とを含む。仮想プリンタドライバ２３０は、アプリケーション実行部２２０からの呼出に応じて起動され、印刷要求を発行したクライアント１１２〜１１８、ユーザ名、または印刷データ自体が含む特定の情報、例えば、価格表、診療レセプト、発注伝票などのテキスト、イメージデータなどから固有識別値を取得し、固有識別値に割当てられたリモートプリンタを識別する。その後、仮想ドライバは、識別されたリモートプリンタ１２２〜１２８に対応するリモートドライバ２４０〜２４６を呼出して、出力させるべきリモートプリンタの機種固有のＲＡＷデータを作成させる。
【００３２】
リモートドライバ２４０〜２４６は、プリンタサーバ１２０がリモートプリンタごとに有するプリンタドライバに基づいてプリンタサーバ１２０よりデータ処理装置１１０にダウンロードされる。リモートドライバ２４０〜２４６は、仮想プリンタドライバ２３０によって呼出されて、ＲＡＷデータの作成を実行する。作成されたＲＡＷデータには、適宜、ＰＤＬコマンドなどページ制御言語コマンドまたはプリンタ制御言語コマンドが追加されて出力データが生成される。生成された出力データは、リモートドライバ２４０〜２４６のスプーラおよびポートモニタを介して、プリンタサーバ１１２においてリモートドライバに対応するプリンタドライバに送付される。当該出力データは、プリンタサーバ１１２のプリンタドライバによってネットワーク１３０を介して指定されたリモートプリンタに送付され、指定されたリモートプリンタにおいて、印刷出力が実行される。
【００３３】
上述した処理を実行するため、本実施形態では、仮想プリンタドライバ２３０は、中間ファイル作成部２３２と、中間ファイル管理部２３４と、出力データ発送部２３６と、発送先制御部２３８とを含む。中間ファイル作成部２３２は、アプリケーション実行部２２０が作成した実行結果を処理し、テキストデータおよびイメージデータから、ページイメージを、ビットマップ、ＥＭＦ(Enhanced Meta-Data Format)、ＧＩＦ、ＴＩＦＦ、ＪＰＥＧ、又はＪＰＥＧ２０００などのフォーマットのページイメージの中間ファイルを作成する。中間ファイル作成部２３２は、受領した実行結果全部について、中間ファイルを作成するまで処理を反復する。
【００３４】
中間ファイルの作成が終了した後、各中間ファイルには、固有のファイル名が生成される。各中間ファイルは、印刷要求を発行したクライアントの固有識別値とともにファイル構成情報として統合され、中間ファイル管理部２３４に格納される。ファイル構成情報は、作成したページイメージ（中間ファイル）のファイル名、固有識別値、およびジョブ識別値などを参照させるリストファイルとして構成することができる。中間ファイル作成部２３２は、中間ファイルの作成が終了すると、出力データ発送部２３６に対して、作成した中間ファイルのファイル名などのファイル構成情報を送付し、中間ファイル管理部２３４が管理する中間ファイルおよびクライアントの固有識別値の読み取りを可能とする。
【００３５】
出力データ発送部２３６は、ファイル構成情報を参照して中間ファイル管理部２３４にアクセスし、中間ファイルおよびクライアントの固有識別値を読込んだ後、発送先制御部２３８に対してクライアントの固有識別値を送付する。発送先制御部２３８は、当該固有識別値に割当てられたリモートプリンタを、対応付けテーブルをルックアップして検索する。より詳しくは、発送先制御部２３８は、対応付けテーブルを参照して、リモートプリンタを指定するための構成情報を検索した後、固有識別値に対応するプリンタ構成情報を、出力先プリンタ情報として取得する。発送先制御部２３８は、その後、出力データ発送部２３６が管理するデータにおいて発送先を指定するデータの記述位置を検索し、検索された記述位置の発送先を、検索されたクライアントの固有識別値に割当てられた出力先プリンタ情報で書換えることで、発送先を更新する。
【００３６】
出力データ発送部２３６は、発送先制御部２３８による発送先の更新が終了するまでその処理をサスペンドしている。出力データ発送部２３６は、発送先の更新が終了した後、対応するリモートドライバ２４０〜２４６のいずれかを呼出して、中間ファイルからのＲＡＷデータの作成、ＰＤＬコマンドの追加処理を実行させる。出力データは、スプーラ、ポートモニタを介してネットワーク１３０を介してプリンタサーバ１２０に発送される。プリンタサーバ１２０は、受領した出力データに関連付けられたリモートプリンタに出力データを送付し、印刷ジョブを実行させる。その結果、クライアントに割当てられたリモートプリンタによる印刷物の作成が可能となる。上述した発送制御部２３８は、既存のプリンタネットワークシステムへの追加を容易にするため、プラグインプログラムとして実装することができる。
【００３７】
なお、図２に示した仮想プリンタドライバ２３０の実装構成は、例示的な実施形態であり、本実施形態の仮想プリンタドライバ２３０の機能を提供することができる限り、図２に示すモジュール構成に限定されるものではない。
【００３８】
図３は、本実施形態のデータ処理装置１１０が実行する処理のフローチャートである。図３に示す処理は、ステップＳ３００から開始する。ステップＳ３０１で、仮想プリンタドライバ２３０が、クライアント１１２〜１１８からの印刷要求を、実行結果とともに受領する。なお、図２に示した実施形態の場合、実行結果は、アプリケーション実行部２２０がクライアント１１２〜１１８からの要求に対応して作成し、仮想プリンタドライバ２３０に渡す。ステップＳ３０２で、仮想プリンタドライバ２３０は、実行結果を取得して中間ファイルの作成を開始する。ステップＳ３０３では、受領した実行結果について全部をページイメージの中間ファイルに変換したか否かに基づいて中間ファイルの作成が終了したか否かを判断する。ステップＳ３０３の判断で、中間ファイルの作成が終了していないと判断された場合（ｎｏ）、ステップＳ３０７で、中間ファイルの作成が継続される。中間ファイルの作成は、ステップＳ３０３で中間ファイルの作成が終了したと判断されるまで処理を反復される。
【００３９】
一方、ステップＳ３０３で中間ファイルの作成が終了したと判断された場合（ｙｅｓ）、ステップＳ３０４で、中間ファイル作成部２３２は、作成した中間ファイルに固有のファイル名を付して、要求発行元のクライアントまたはユーザの固有識別値、およびジョブ識別値とともに、中間ファイル管理部２３４が管理する中間ファイル格納部に送付し格納させる。そして、中間ファイル作成部２３２は、格納した各情報を参照させるためのファイル構成情報を作成し、バッファリングする。その後、ステップＳ３０４では、中間ファイル作成部２３２は、中間ファイルおよびクライアントの固有識別値の読み取りを可能とするため出力データ発送部２３６にファイル構成情報を通知する。
【００４０】
ステップＳ３０５では、発送先制御部２３８は、出力データ発送部２３６から印刷要求元の固有識別値を取得して、対応付けテーブルからプリンタ名を取得する。そして、発送先制御部２３８は、取得したプリンタ名を検索キーとして使用し、リモートプリンタのネットワーク１３０での構成情報が登録されたプリンタ情報リストを参照し、プリンタ名が一致する構成情報を、出力先プリンタ情報として取得する。
【００４１】
その後、ステップＳ３０６では、発送先制御部２３８は、出力データ発送部２３６が管理する、発送先を示すデータを、出力先プリンタ情報で書換え、出力データ発送部２３６の処理を再開させる。出力データ発送部２３６は、出力先プリンタに対応するリモートドライバを起動させ、ＲＡＷデータ作成、ＰＤＬコマンド追加の処理をリモートドライバに実行させる。リモートドライバは、作成された出力データを、スプーラ及びポートモニタを介してプリンタサーバ１２０に送付する。出力データは、当該リモートドライバに対応するリモートプリンタに送付され、当該リモートプリンタによって印刷される。ステップＳ３０８で処理は終了する。
【００４２】
図４は、本実施形態で、発送先制御部２３８が管理する対応付けテーブルの実施形態を示す。図４に示した対応付けテーブル４００Ａは、クライアント１１２〜１１８の固有識別値として、ＩＰアドレスを使用し、ＩＰアドレスと、当該ＩＰアドレスについて割当てるべきプリンタのプリンタ名とを対応付けて登録する。なお、ＩＰアドレスは、対応付けテーブル４００Ａに示す様な単独の値ではなく、特定のグループなどに対応付けることができるように、サブネットマスクなどで指定されたＩＰアドレス範囲とすることができる。
【００４３】
対応付けテーブル４００Ｂは、固有識別値として、ＭＡＣアドレスを使用し、リモートプリンタのプリンタ名と対応付けて登録している。また、対応付けテーブル４００Ｃは、固有識別値としてＩＰアドレス、ＭＡＣアドレス、クライアントコンピュータ名などのハードウェアを識別する値ではなく、クライアントのユーザに固有の値、例えばユーザのログイン名に対応付けてリモートプリンタ名を登録する実施形態である。対応付けテーブル４００Ａ、４００Ｂは、一定のＩＰアドレス範囲に対して特定のリモートプリンタを割当てる場合に好適に利用でき、対応付けテーブル４００Ｃは、クライアント１１２〜１１８ではなく、ユーザごとに出力先を制御する実施形態の場合に好適に使用することができる。
【００４４】
図４に示したＩＰアドレスは、クライアント１１２〜１１８がデータ処理装置１１０にアクセスする場合に、アクセス要求を送付するパケットに含まれるＩＰアドレスを取得して、データ処理装置１１０が以後の処理のために利用することができる。また、対応付けテーブル４００ＢのＭＡＣアドレスは、アクセス要求を送付するパケットの送信元ＭＡＣアドレスを取得して、データ処理装置１１０の以後の処理に使用することができる。さらに、コンピュータ名やユーザＩＤは、例えばクライアントのアクセス制御装置に、ＩＣカードをセットしてデータ処理装置１１０にアクセスする際にデータ処理装置１１０において、アクセス認証を行う場合に取得することができる。
また、他の実施形態では、データ処理装置１１０は、定期的にネットワークに接続されたクライアント１１２〜１１８に対して、ＰＩＮＧをブロードキャストまたはマルチキャスト送付する。データ処理装置１１０は、返信されたＩＣＭＰ応答の送信元ＩＰアドレスを対応付けテーブル４００Ａの固有識別値カラムに登録する。このように登録されたＩＰアドレスに対してリモートプリンタ名を割り当てることで対応付けテーブル４００Ａが作成される。
【００４５】
対応付けテーブル４００Ｂについては、データ処理装置１１０は、ＡＲＰ(Address Resolution Protocol)コマンドを各ＩＰアドレスに対して発行することによって得られるＭＡＣアドレスを対応付けテーブル４００Ｂの固有識別値のカラムに登録する。このように登録されたＭＡＣアドレスに対してリモートプリンタ名を割り当てることで対応付けテーブル４００Ｂが作成される。
【００４６】
なお、対応付けテーブル４００Ａを採用する場合、ＤＨＣＰサーバなどによるＩＰアドレスのリース状態に対応できるように、ＤＨＣＰサーバがリースできるＩＰアドレスの範囲ごとにリモートプリンタ名を設定してもよい。そうすれば、ＤＨＣＰサーバによるＩＰ自動割当てに対しても対応可能となる。
【００４７】
図４に示した実施形態のうち、固有識別値としてユーザＩＤを使用する場合には、対応付けテーブル４００Ｃは、管理者がユーザＩＤを回収し、ユーザＩＤをそれぞれリモートプリンタ名に対応付けて登録することができる。図４に示した対応付けテーブル４００Ａ〜４００Ｃは、いずれか１つを排他的に実装するのではなく、対応付けテーブル４００Ａ〜４００Ｃの全てを実装してもよい。この場合、特定の目的に応じて、各対応付けテーブル４００Ａから４００Ｃのいずれかを選択してもよいし、各テーブルの値の論理和または論理積を利用してもよい。
【００４８】
図５は、本実施形態の出力データ発送部２３６が使用するリモートプリンタを構成する構成情報が登録されたプリンタ情報リスト５００の実施形態を示す。図５に示すプリンタ情報リスト５００は、本実施形態では、発送先制御部２３８が管理する。プリンタ情報リスト５００は、プリンタサーバ１２０からリモートプリンタに対応するリモートドライバのリースを受ける場合に、対応するプリンタの構成情報を登録するレコードが、自動的に作成されて実装することができる。フィールド５１０は、リモートプリンタ名が登録されるフィールドであり、フィールド５２０には、当該画像形成装置に付されたホスト名が登録され、フィールド５３０には、当該画像形成装置に割当てられたＩＰアドレスが登録される。
【００４９】
さらに、フィールド５４０には、画像形成装置に印刷データを送付する際の出力ポート名が登録されている。ホスト名は、例えばＮＥＴＢＥＵＩなどで名前解決プロトコルを使用して画像形成装置を検索する場合に使用され、ＩＰアドレスは、ＴＣＰ／ＩＰプロトコルを使用して印刷データを画像形成装置に送付する際に使用される。また、出力ポート名は、設定されたＩＰアドレスに宛てて印刷データを送付するデバイスを呼出すためのハンドルまたはポインタとして使用される。
【００５０】
発送先制御部２３８は、出力データ発送部２３６から印刷要求の発行元の固有識別値の通知を受領すると、プリンタ情報リスト５００をルックアップして出力先プリンタ情報を取得する。その後、発送先管理部２３８は、出力データ発送部２３６が作成した、例えばＧＤＩインスタンスのリモートプリンタ情報の記述されている領域を検出し、当該リモートプリンタ情報を取得した出力先プリンタ情報で書換え、書換終了を出力データ発送部２３６に通知する。
【００５１】
当該通知を受領して出力データ発送部２３６は、書換えられた値に対応するリモートドライバを呼び出す。呼び出されたリモートドライバは、中間ファイルのＲＡＷデータへの変換処理を実行するとともに必要なＰＤＬコマンドの追加を実行し、スプーラ・ポートモニタを呼出してプリンタサーバ１２０へと印刷データを送付する。
【００５２】
図６は、本実施形態で、出力データ発送部２３６が実行する処理のフローチャートを示す。処理は、仮想プリンタドライバ２３０が呼出された時点であるステップＳ６００から開始し、ステップＳ６０１で、中間ファイル作成部２３２から、中間ファイルのファイル構成情報を受領する。ファイル構成情報には、作成された中間ファイルに固有のファイル名、クライアント若しくはユーザの固有識別値、及びジョブ識別値などの読出しを可能とする情報が含まれる。ステップＳ６０２では、ファイル構成情報の格納情報を参照して中間ファイルおよび固有識別値を中間ファイル管理部２３４から読出し、固有識別値を発送先制御部２３８に送付する。
【００５３】
なお、デフォルト設定の出力先プリンタ情報としては、実際に接続されていないダミープリンタの値が設定されている。この結果、仮想プリンタドライバ２３０は、当初は対応するリモートドライバの呼出に失敗する。しかし、本実施形態では、仮想プリンタドライバ２３０は、リモートドライバの呼出しに失敗しても、所定のタイムアウト期間が経過するまでwaitし、リモートドライバの呼出に成功するまで当該プリントインスタンスを持続させる。
【００５４】
他の実施形態では、後述する発送先制御部２３８が出力先プリンタ情報の書換を完了した時点でプロセス間通信などにより出力データ発送部２３６に通知を行い、出力データ発送部２３６の処理を再開させることができる。また、仮想プリンタドライバ２３０が特定のプリントインスタンスを生成する場合に使用するＤＥＶＭＯＤＥ構造体は、接続されているリモートプリンタの最上位機種に対応する設定のものが選択され、接続されているリモートプリンタの最上位機種にも対応する印刷処理を提供することが可能とされている。この際、下位機種については、当該下位機種が保有していない機能をスキップして、機種固有のＲＡＷデータの作成およびＰＤＬコマンドの追加が実行される。
【００５５】
ステップＳ６０３で、出力データ発送部２３６は、固有識別値に対応するリモートプリンタの構成情報により出力先プリンタ情報が書換えられると、書換えられたリモートドライバを呼出して出力データを作成する。なお、この際には、ＰＤＬコマンドの追加処理も実行することができる。その後、ステップＳ６０４で、出力データ発送部２３６は、作成した出力データをスプーラおよびポートモニタに渡し、対応するリモートプリンタに宛てて作成した出力データを送付し処理を終了する。
【００５６】
図７は、本実施形態の発送先制御部２３８が実行する処理のフローチャートである。図７の処理は、ステップＳ７００から開始し、ステップＳ７０１で出力データ発送部から、ユーザ又はクライアントの固有識別値を受領する。ステップＳ７０２で、対応付けテーブル４００Ａ〜４００Ｃのいずれかまたは複数をルックアップして、ユーザ又はクライアントに割当てられたリモートプリンタのプリンタ名を取得する。その後、プリンタ情報リスト５００を、プリンタ名をキーとしてルックアップして対応するプリンタ名の構成情報を、出力先プリンタ情報として取得する。
【００５７】
ステップＳ７０３では、出力データ発送部２３６の出力先プリンタ情報を、取得したリモートプリンタ情報で書換える。書換が終了した後、発送先制御部２３８は処理をそのまま終了させるか、またはプロセス間通信を使用して、出力データ発送部２３６に対して通知を行い出力データ発送部２３６に対して明示的に処理開始を通知し、ステップＳ７０４で処理を終了する。
【００５８】
次に、発送先制御部２３８の他の実施形態について説明する。図８は、発送先制御部２３８が実行する処理の変形例のフローチャートである。図８中、図７と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。
【００５９】
当該変形例では、ステップＳ７０１において、ユーザ又はクライアントの固有識別値と共に、中間ファイルを受領する。その後、ステップＳ７０５において、中間ファイルに含まれている文字列（テキストデータ）を抽出する。中間ファイルが画像データである場合、文字列の抽出にはＯＣＲ（Optical Character Recognition）技術を利用すればよい。ステップＳ７０６において、抽出された文字列中に、所定のキーワードが含まれているか否かを判定する。所定のキーワードとは、例えば、発送先制御部２３８が管理する印刷条件管理テーブルに登録されているキーワードである。
【００６０】
図９は、印刷条件管理テーブルの例を示す図である。同図において、印刷条件管理テーブルには、キーワードごとに印刷条件が登録されている。同図では、「社外秘」、「請求書」、「宛名  ａｎｄ  件名」等がキーワードとして例示されている。なお、「宛名  ａｎｄ  件名」は、「宛名」と「件名」の双方が含まれている場合に、当該キーワードが含まれていると判定すべきことを示す。
【００６１】
ステップＳ７０７では、抽出された文字列に含まれているキーワードに基づいて、印刷条件を判定する。すなわち、印刷条件管理テーブルにおいて、当該キーワードに対応付けられている印刷条件が判定される。したがって、図９を例とすると、「社外秘」が含まれている場合は、地紋印刷が有効とされることが判定される。「請求書」が含まれている場合は、給紙トレイはトレイ５とすることが判定される。「宛名」及び「件名」が含まれている場合は、集約及び両面印刷を行うことが判定される。
【００６２】
ステップＳ７０８では、判定された印刷条件を出力データ発送部２３６に設定する。印刷条件を設定された出力データ発送部２３６は、当該印刷条件をリモートドライバに設定後、ＲＡＷデータ作成及びＰＤＬコマンド追加の処理等をリモートドライバに実行させる。これにより、ＲＡＷデータ内又はＰＤＬコマンド内に、当該印刷条件を示す情報が含められる。その結果、リモートドライバからの出力データに基づく印刷ジョブでは、当該印刷条件に従った出力が行われる。
【００６３】
当該変形例によれば、印刷データに含まれている文字列に応じて印刷条件を自動的に変化させることができる。なお、印刷条件として「印刷中止」を指定可能とし、このような印刷条件に対応するキーワードが含まれていた場合は、印刷を中止するようにしてもよい。また、印刷条件として出力先のリモートプリンタのプリンタ名を指定可能としてもよい。このような印刷条件に対応するキーワードが含まれていた場合、出力先制御部２３８は、当該印刷条件が示すプリンタ名に対応する構成情報をプリンタ情報リスト５００より取得し、当該構成情報を出力先プリンタ情報とすればよい。そうすることにより、印刷データに含まれている文字列に応じて出力先を変化させることができる。
【００６４】
図１０は、本実施形態のプリンタネットワーク８００の第２の実施形態を示す。プリンタネットワーク８００は、ネットワーク８４０に接続されたアプリケーションサーバ８１０を含む。アプリケーションサーバ８１０は、ネットワーク８４０に接続された複数のクライアント８１２〜８１８からのアプリケーションサービス要求を専ら処理し、処理結果を要求元のクライアントに返す処理を行う。
【００６５】
クライアント８１２〜８１８は、図１０の実施形態では、シンクライアントとすることもできるがファットクライアントとすることもでき、特に限定されるものではない。例えば、図１０に示したアプリケーションサーバ８１０は、業務サーバまたはウェブ・サーバとすることもできる。アプリケーションサーバ８１０は、アプリケーションによる処理が完了した場合、クライアント８１２から８１８からの印刷要求を受領する。
【００６６】
アプリケーションサーバ８１０は、印刷要求を受領すると、アプリケーションサーバの実行結果を、例えば、ＦＴＰプロトコル、ＨＴＴＰプロトコル、ソケットなどのネットワーク通信などを使用してデータ処理サーバ８２０に送付する。データ処理サーバ８２０は、本実施形態のデータ処理装置の機能を有する。データ処理サーバ８２０は、アプリケーションサーバ８１０から、実行結果および印刷要求を発行したクライアントのユーザのログイン名を受領すると、プリントセッションを生成する。
【００６７】
プリントセッションを生成した時点で、データ処理サーバ８２０は、アプリケーションサーバ８１０に対して、ログイン名を検索キーとして当該ログイン名で起動されているクライアントの固有識別値の送付を依頼する。この際の固有識別値は、アプリケーションサーバ８１０が、ログイン名と対応付けてセッション管理テーブルとして管理している。アプリケーションサーバ８１０は、ログイン名をキーとして対応付けられた固有識別値を取得すると、取得した固有識別値をデータ処理サーバ８２０に応答として返す。固有識別値は、図４に示したＩＰアドレス、ＭＡＣアドレス、コンピュータ名などを使用することができる。
【００６８】
ネットワーク８４０には、プリンタサーバ８３０が接続されていて、第１の実施形態と同様に、接続されたリモートプリンタ８１２ａ、８１４ａ、８１６ａ、８１８ａの制御および管理を実行する。なお、図１０で説明する実施形態では、リモートプリンタ８１２ａは、クライアント８１２からの印刷要求を処理し、クライアント８１４、８１６、８１８が、それぞれリモートプリンタ８１４ａ、８１６ａ、８１８ａに出力を行うように制御されていて、各クライアントと、リモートプリンタとは、それぞれ拠点８２０、８３０、８４０、８５０を独立して構成している。図１の場合と同様に、クライアントは、拠点８２０〜８５０に複数存在することもでき、リモートプリンタについても各拠点に複数存在していてもよい。
【００６９】
なお、他の実施形態では、ログイン名をアプリケーションサーバ８１０に送付するのではなく、生成したプリントセッションのセッションＩＤをアプリケーションサーバに送付し、当該プリントセッションを要求したクライアントまたはログイン名をセッションＩＤをキーとして検索させ、応用として、ＩＰアドレス、ＭＡＣアドレス、コンピュータ名などを取得することができる。
【００７０】
図１１は、本実施形態のデータ処理サーバ８２０の機能ブロック９００を示す。データ処理サーバ８２０は、図２に示したデータ処理装置１１０に比較して、アプリケーション実行部２２０がアプリケーションサーバ８１０として分離されている点と、発送先制御部９３８の機能とを除き、概ね同様な機能を有する。
【００７１】
データ処理サーバ８２０は、アプリケーションサーバ８１０から印刷要求および実行結果を受領し、印刷要求に含まれるユーザのログイン名を抽出する。その後、仮想プリンタドライバ９３０を呼出して、実行結果から中間ファイルとしてページイメージを作成する。中間ファイルの作成終了後、中間ファイルに固有のファイル名およびログイン名を中間ファイル管理部９３４に格納する。その後、中間ファイル作成部９３２は、中間ファイルのファイル名およびログイン名などを含むファイル構成情報を、出力データ発送部９３６に送付する。
【００７２】
出力データ発送部９３６は、ファイル名およびログイン名を含むファイル構成情報を受領すると、発送先制御部９３８に対してログイン名を通知する。発送先制御部９３８は、ログイン名を受領すると、アプリケーションサーバ８１０の、セッション管理モジュール（ＳＭＭ）９５０に対して問い合わせを発行し、当該ログイン名で識別されるクライアント８１２〜８１８のＩＰアドレス、ＭＡＣアドレス、又はコンピュータ名等の固有識別値、及び印刷データを含む情報を取得する。なお、本実施形態では、この目的のために専用のセッション管理モジュールを実装するのではなく、例えば、ＦＴＰプロトコルやＳＮＭＰプロトコルを使用して、現在当該セッション名で指定されるジョブ内容を、例えばダウンロードファイルやＭＩＢなどにコピーし、データ処理装置８２０に対して公開する形式として実装することができる。
【００７３】
その後、発送先制御部９３８は、取得した固有識別値を参照し、対応付けテーブル４００Ａ〜４００Ｃのいずれかまたは複数を使用してリモートプリンタ名を決定し、さらにプリンタ情報リスト５００を参照して出力先プリンタ情報を取得する。その後、発送先制御部９３８は、出力データ発送部９３６がその時点で管理するデフォルト設定の出力先プリンタ情報を、取得した出力先プリンタ情報で書換え、書換終了を出力データ発送部９３６に通知する。出力データ発送部９３６は、当該通知を受領した後、指定するリモートドライバ９４０〜９４６のいずれか呼び出して中間ファイルからＲＡＷデータを作成し、ＰＤＬコマンドの追加処理を実行させ、スプーラ・ポートモニタを介してプリンタサーバ８３０に出力データを送付し、指定したリモートプリンタでの出力を可能としている。
【００７４】
図１２は、本実施形態のデータ処理サーバ８２０が実行する発送先制御処理のフローチャートを示す。図１２の処理は、ステップＳ１０００でアプリケーションサーバ８１０からの接続要求を受領した時点から開始し、ステップＳ１００１でアプリケーションサーバからシンクライアントの印刷要求を受領する。ステップＳ１００２で、印刷要求に含まれるログイン名などを使用してクライアントの固有識別値を、アプリケーションサーバに問い合わせて取得し、ステップＳ１００３で、固有識別値に対応付けられたＩＰアドレスまたはＭＡＣアドレスなどの固有識別値を取得する。
【００７５】
その後、ステップＳ１００４で、取得した固有識別値をキーとして、対応付けテーブル４００および出力先プリンタリスト５００をルックアップして出力先プリンタ情報を取得する。その後、取得した出力先プリンタ情報で、出力データ発送部９３６の出力先プリンタ情報を書換え、書換えが終了した段階で、出力データ発送部９３６に通知する。そして、ステップＳ１００５では、指定されたリモートドライバを呼出し、リモートドライバが作成したＲＡＷデータに対してＰＤＬコマンドなどを追加し、スプーラ・ポートモニタを介してプリンタサーバ８３０に出力データを送付した後、ステップＳ１００６で処理を終了し、以後の印刷要求を待機する。
【００７６】
図１３は、本実施形態のプリンタネットワークシステム１１００の他の実施形態の機能ブロック図である。図１３に示したプリンタネットワークシステム１１００ではデータ処理装置１１１０は、図２および図１１に示した仮想プリンタドライバ２３０、又は９３０が、仮想プリンタドライバ１１４０および印刷実行部１１５０に機能的に分離されていることを除き、図２および図１１で説明した実施形態と共通する。このため、仮想プリンタドライバ１１４０および印刷実行部１１５０の機能について詳細に説明する。
【００７７】
仮想プリンタドライバ１１４０は、中間ファイル作成部１１４２と、中間ファイル管理部１１４４とを含み、専ら中間ファイルおよびファイル構成情報を作成し、ファイル構成情報を印刷実行部１１５０に送付する。印刷実行部１１５０は、出力データ発送部１１４６と、発送先制御部１１４８とを含む。出力データ発送部１１４６は、ファイル構成情報にしたがって中間ファイル管理部１１４４から中間ファイルを抽出する。発送先制御部１１４８は、印刷要求が含むクライアントの固有識別値を取得して発送先を選択する。また、データ処理装置１１１０がアプリケーション実行部２２０を含まず、他の情報処理装置として独立した構成とされている実施形態では、遠隔的に設置されたアプリケーションサーバが含むセッション管理モジュール（ＳＭＭ）に個別識別値を問合わせ、個別識別値を取得して発送先を選択する。
【００７８】
その後、発送先制御部１１４８は、出力データ発送部１１４６がその時点で管理するデフォルト設定の出力先プリンタ情報を、取得した出力先プリンタ情報で書換え、書換終了を出力データ発送部１１４６に通知する。出力データ発送部１１４６は、当該通知を受領した後、指定するリモートドライバ１１６０〜１１６６のいずれか呼び出す。呼び出されたリモートドライバは、中間ファイルからＲＡＷデータを作成し、ＰＤＬコマンドの追加処理を実行し、スプーラ・ポートモニタを介してプリンタサーバ１１７０に出力データを送付する。
【００７９】
図１３に示した実施形態では、複数のクライアントが仮想プリンタドライバ１１４０に対して大量の印刷ジョブを送付した場合、仮に特定のリモートドライバがエラーで停止しても、他のジョブは影響を受ける可能性を低減でき、プリンタネットワークシステムのロバスト性を向上させることができる。
【００８０】
以上説明したように、本発明によれば、パーソナルコンピュータやシンクライアントが複数の画像形成装置にアクセスすることが可能な現在のネットワークプリント環境で、ネットワークを介して接続されるクライアントコンピュータが常時同一のプリンタから出力することを可能とし、出力業務ごとの管理を効率化し、さらに情報セキュリティの向上を可能とする、データ処理装置、プリンタネットワークシステム、データ処理方法、プログラムおよび記憶媒体が提供できる。また、本発明によれば、アプリケーションサーバに対するアプリケーションモジュールの追加を行うことなく、最小のコストで、出力先を制御することが可能なデータ処理装置、プリンタネットワークシステム、データ処理方法、プログラムおよび記憶媒体が提供できる。
【００８１】
さらに、本発明によれば、シンクライアントに対して印刷するべきリモートプリンタのプリンタドライバの追加実装を排除して、より柔軟なネットワーク構成に対応しつつ、印刷出力の出力先管理を可能とする、データ処理装置、プリンタネットワークシステム、データ処理方法、プログラムおよび記憶媒体が提供できる。
【００８２】
本実施形態の上記機能は、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）などのオブジェクト指向プログラミング言語などで記述された装置実行可能なプログラムにより実現でき、本実施形態のプログラムは、ハードディスク装置、ＣＤ−ＲＯＭ、ＭＯ、フレキシブルディスク、ＥＥＰＲＯＭ、ＥＰＲＯＭなどの装置可読な記録媒体に格納して頒布することができ、また他装置が可能な形式でネットワークを介して伝送することができる。
【００８３】
これまで本実施形態につき説明してきたが、本発明は、上述した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【００８４】
１００        ネットワークプリントシステム
１１０        データ処理装置
１１２〜１１８        クライアントコンピュータ
１２０        プリンタサーバ
１２２〜１２８        ローカルプリンタ（ＭＦＰ、ページプリンタ）
１３０        ネットワーク
１４０〜１７０        拠点
２００        機能ブロック（データ処理装置）
２１０        ネットワークインタフェース部
２２０        アプリケーション実行部
２３０        仮想プリンタドライバ
２３２        中間ファイル作成部
２３４        中間ファイル管理部
２３６        出力データ発送部
２３８        発送先制御部
２４０〜２４６        リモートドライバ
【先行技術文献】
【特許文献】
【００８５】
【特許文献１】特開２００３−１４０８６７号公報
【特許文献２】特開２００４−２８２２７３号公報
【特許文献３】特許第３７２６６３４号明細書
【図１】
0005884884.tif 000002
【図２】
0005884884.tif 000003
【図３】
0005884884.tif 000004
【図４】
0005884884.tif 000005
【図５】
0005884884.tif 000006
【図６】
0005884884.tif 000007
【図７】
0005884884.tif 000008
【図８】
0005884884.tif 000009
【図９】
0005884884.tif 000010
【図１０】
0005884884.tif 000011
【図１１】
0005884884.tif 000012
【図１２】
0005884884.tif 000013
【図１３】
0005884884.tif 000014