JP3399461B2 - 印刷システム - Google Patents

印刷システム

Info

Publication number
JP3399461B2
JP3399461B2 JP2000366697A JP2000366697A JP3399461B2 JP 3399461 B2 JP3399461 B2 JP 3399461B2 JP 2000366697 A JP2000366697 A JP 2000366697A JP 2000366697 A JP2000366697 A JP 2000366697A JP 3399461 B2 JP3399461 B2 JP 3399461B2
Authority
JP
Japan
Prior art keywords
information
output
print
distribution
name
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 - Lifetime
Application number
JP2000366697A
Other languages
English (en)
Other versions
JP2001216109A (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2000366697A priority Critical patent/JP3399461B2/ja
Publication of JP2001216109A publication Critical patent/JP2001216109A/ja
Application granted granted Critical
Publication of JP3399461B2 publication Critical patent/JP3399461B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は印刷システムに関
し、特に、ネットワーク接続された複数のコンピュータ
装置における出力制御を行う印刷システムに適用して好
適なものである。
【0002】
【従来の技術】近年、オフィス業務や基幹業務向けコン
ピュータのオペレーティングシステムとして、マイクロ
ソフト社のWindowsの普及が目覚ましい。
【0003】図26は、オペレーティングシステムとし
て、Windowsを用いた場合の従来の印刷方法を説
明するブロック図である。図26において、ユーザが、
アプリケーション201にプリンタドライバ203に対
しての印刷を指定した場合、アプリケーション201
は、GDI(グラフィカルデバイスインターフェース関
数)202に対して印刷命令を実行する。GDI202
は、アプリケーション201からの印刷命令が実行され
ると、プリンタドライバ203から必要な情報を獲得
し、スプールファイル(EMFファイルとジョブ記述フ
ァイル)204を作成する。Windowsのスプール
システム205は、指定のポートが印刷可能状態である
ことを確認すると、デスプール処理を開始する。このデ
スプール処理により、ポートスレッド206を通じてプ
リントプロセッサ207に印刷制御が渡る。そして、ロ
ーカルプリントプロバイダ208を通じてポートモニタ
209に印刷データが渡り、パラレルポートドライバ2
10を通じて印刷装置211に印刷データが出力され
る。
【0004】ここで、オペレーティングシステムとし
て、Windowsを用いた場合、Windowsはパ
ーソナル指向のオペレーティングシステムであることか
ら、基幹業務における大量印刷には不向きな点がある。
例えば、1回の印刷アクションで、同時に複数のプリン
タに印刷することができない。このため、資料の配布等
を行うとき、繰り返し印刷起動をかけ、印刷物を手作業
で仕分けし、さらに郵便等で配布する手間がかかる。ま
た、昨今のメイルの普及により、ワードプロセッサなど
により作成された少量かつ固定的ドキュメントは、メイ
ルで代替えすることができるが、アプリケーション稼働
による集計データ等の管理帳票の印刷や大量のドキュメ
ントの印刷などは、メイルでは代替不可能である。さら
に、大量の印刷を行う時、複数のプリンタに分散して印
刷することができず、開始頁と終了頁と出力先プリンタ
とを繰り返し指定する必要がある。
【0005】これらの問題を解決するため、従来では、
基幹業務帳票印刷用の専用のAPI(アプリケーション
・インタフェース関数)を用意し、そのAPIを用い
て、Windowsなどのオペレーティングシステムの
有する印刷制御の不備を補う方法があった。
【0006】図27は、従来の分散印刷方法を説明する
ブロック図である。図27において、アプリケーション
221は、専用の印刷制御関数として、API223を
呼び出す。ここで、API223には、プリンタ名称、
開始頁及び終了頁の組を複数受け取ることができるイン
ターフェースが設られ、API223にこのインターフ
ェースを設けることにより、分散印刷を可能としてい
る。API223が、パラメータ222として、プリン
タ名称、開始頁及び終了頁の組を複数受け取るととも
に、描画データをアプリケーション221から受け取る
と、受け取ったパラメータ222と描画データとを、オ
ペレーティングシステム224及びファイルドライバ2
25を経由してスプールファイル226に格納する。
【0007】一方、スプールライタ227は、ある決め
られたディレクトリ(スプールディレクトリ)をポーリ
ングしており、完成したスプールファイル226を検知
すると、スプールファイル226の読み出しを開始す
る。そして、スプールファイル226内に格納されたパ
ラメータ222を取り出すとともに、各ページの描画デ
ータをスプールファイル226から順次読み出す。その
後、GDI228が呼び出され、パラメータ222の情
報に従って、描画データがプリンタドライバ229を介
して指定のプリンタ230へ送られる。この結果、指定
の頁の印刷を指定のプリンタ230で行うことが可能と
なり、プリンタ名称、開始頁及び終了頁の組を複数指定
しておくことにより、複数のプリンタを用いた分散印刷
が可能となる。
【0008】なお、GDI228は、オペレーティング
システム224と密接に結びついたグラフィカルデバイ
ス描画用の関数群である。
【0009】
【発明が解決しようとする課題】しかしながら、従来の
API223を提供する手法では、API223を呼び
出すことが可能な専用のアプリケーション221だけに
しか、適用することができなかった。このため、ワード
プロセッサなどの汎用パッケージアプリケーションに
は、API223を呼び出す機能がないため、ワードプ
ロセッサなどの汎用パッケージアプリケーションには適
用することができないという問題があった。また、提供
されたAPI223を用いて印刷用のアプリケーション
221を構築しなければならないという問題もあった。
【0010】さらに、従来の印刷方法では、オペレーテ
ィングシステム224の印刷制御の不備からくる問題点
があり、API23を提供する方法では、これらの問題
点を解決することができなかった。例えば、プリンタが
接続されたコンピュータ上の画面には、印刷が完了した
ことやエラーが発生したことを知らせる通知があるが、
通信ネットワークを介して印刷実行を指示したクライア
ントマシンでは、これらのことが判らない。また、プリ
ンタエラーで停止中のジョブに対し、頁を指定し直した
再印刷や出力プリンタを変更した再印刷ができない。さ
らに、WAN(広域ネットワーク)で接続されたコンピ
ュータ上のプリンタを直接指定して印刷することができ
ない。
【0011】また、オペレーティングシステム224の
出力装置・アプリケーションへの依存性に関する問題点
として、以下のものがあった。まず、プリンタ機種やプ
リンタメーカを特定して印刷機能が提供されており、ネ
ットワーク環境の多様なプリンタを有効に使うために
は、多大な手間がかかった。このため、特定出力装置
(プリンタなど)のスペックに基づきアプリケーション
により作成したドキュメントは、出力装置の物理仕様に
依存したものとなり、可搬性がなかった。この結果、物
理仕様の異なる出力装置に出力すると、期待する結果を
得られない場合があった。
【0012】次に、システム上の全アプリケーションで
出力したドキュメントを対象とした場合、アプリケーシ
ョンで出力後は、何もすることができなかった。例え
ば、出力先の追加・変更、頁単位での操作、出力順の操
作など様々なサービスが不可能であった。
【0013】また、オペレーティングシステム224の
配布印刷方式に関する問題点として、以下のものがあっ
た。まず、印刷出力(ドキュメント)を配布する場合、
配布先のプリンタを直接指示するものであり、システム
環境(配布先に対するプリンタ名称)を常に意識する必
要があった。また、配布対象となるプリンタの名称を全
て指定したり、ドキュメント毎に配布先を指定したりす
るすることは、ユーザにとって負担になっていた。
【0014】
【発明が解決しようとする課題】この発明の課題は、複
数の印刷装置が接続されているシステムにおいて、印刷
ジョブの配布先となる印刷装置を自動的に決定して配布
できるようにすることである。
【0015】
【課題を解決するための手段】本発明の手段は、ネット
ワークを介して複数のクライアント端末と複数の印刷装
置とに接続される印刷システムであって、上記クライア
ント端末から送信されてくる印刷ジョブを受信して記憶
するジョブ記憶手段と、論理的な配布先名称と物理的な
印刷装置名称との対応関係定義を記憶する定義記憶手段
と、配布先を自動指定するための第1条件として、各印
刷ジョブのドキュメント内から抽出すべき文字列の対象
文字列を指定する対象文字列指定手段と、上記配布先を
自動指定するための第2条件として、上記対象文字列を
各印刷ジョブのドキュメント内から抽出するため検索範
囲を指定する際は、複数の矩形領域に分割された仮想用
紙を表示し、その仮想用紙上の複数の矩形領域の内の所
望する矩形領域を指定することで上記頁上での検索範囲
を指定する検索範囲指定手段と、上記受信の印刷ジョブ
のドキュメントが印刷される実際の用紙の用紙サイズ及
び置き方に合わせて、上記仮想用紙上で指定した矩形領
域の範囲を、実際の用紙上での矩形領域の範囲に変換す
る変換手段と、上記変換された範囲を上記印刷ジョブの
頁上における検索範囲として特定し、その特定された頁
上での検索範囲内において上記指定の対象文字列に一致
する文字列を検索して、その検索された文字列を配布先
名称として抽出する抽出手段と、この抽出手段で抽出さ
れた配布先名称に対応する印刷装置名称を上記定義記憶
手段に基づいて特定し、その特定された印刷装置名称に
対応する上記ネットワーク上の印刷装置に対して上記印
刷ジョブを投入配布する配布手段と、を具備したことを
特徴とする。
【0016】
【発明の実施の形態】以下、本発明の一実施例に係わる
印刷システムについて図面を参照しながら説明する。な
お、以下の実施例では、Windowsによるオペレー
ティングシステム下における出力装置運用支援(以下C
APCALと称する)制御方式について説明する。ま
た、このCAPCAL制御方式では、システム上の全て
のアプリケーションの出力ドキュメントを処理対象とす
ることがひできる。
【0017】図1は、本発明の一実施例に係わる印刷シ
ステムの構成を示すブロック図である。図1において、
クライアント300とサーバ301とが通信ネットワー
ク302、303を介して接続され、サーバ301はプ
リンタ9と接続されている。ここで、通信ネットワーク
302は、例えば、LAN(ローカルエリアネットワー
ク)、通信ネットワーク303は、例えば、LAN、W
AN(ワイドエリアネットワーク)、インターネットで
ある。クライアント300には、アプリケーション1、
GDI2、Windows印刷制御部3及びクライアン
ト制御部4が設けられ、サーバ301には、Windo
ws印刷制御部5、サーバ制御部6、GDI7及びプリ
ンタ出力制御部8が設けられている。そして、Wind
owsによる印刷処理を行う場合、Windows印刷
制御部3、5による処理が行われ、CAPCAL制御を
行う場合、クライアント制御部4、サーバ制御部6及び
プリンタ出力制御部8による処理が行われる。なお、C
APCAL制御を選択する場合、CAPCAL制御用に
設けられたCAPCALドライバをアプリケーション1
で指定してGDI2を呼び出す。
【0018】図2は、図1のクライアント制御部4の構
成を説明するブロック図である。図2において、クライ
アント制御部4には、CAPCALドライバ14、CA
PCALドライバプロパティ制御スレッド15、出力制
御ファイル17、ジョブ記述ファイル18、EMFファ
イル19、24、CAPCALクライアント定義ファイ
ル20、CAPCALプリントプロセッサ21、CAP
CALジョブ記述ファイル23、CAPCAL転送先定
義ファイル25、CAPCALクライアントメインプロ
セス26及びCAPCALジョブ転送スレッド27が設
けられている。また、Windows印刷制御部3に
は、スプーラプロセス11、ローカルプリントプロバイ
ダ12及びプリントプロセッサ13が設けられている。
ここで、クライアント制御部4は、Windowsによ
るオペレーティングシステム上で稼働するアプリケーシ
ョン1が描画した印刷データをCAPCALの処理環境
に取り込み、サーバ301へ転送するまでの処理を制御
する。
【0019】アプリケーション1が描画した印刷データ
をCAPCAL環境で処理する場合、アプリケーション
1は、仮想ドライバとしてのCAPCALドライバ14
を指定し、GDI2を呼び出す。GDI2は、CAPC
ALドライバ14から描画機能を取得し、アプリケーシ
ョン1の要求した描画プリミティブをCAPCALドラ
イバ14が有する描画機能に変換して、システムスプー
ルキュー16にスプールする。このシステムスプールキ
ュー16には、印刷要求したユーザ名や、アプリケーシ
ョン名などを格納したジョブ記述ファイル18と、描画
情報をフォーマット化して格納したEMFファイル19
が作成される。EMFとは、Enhanced Met
a−Fileの略で、Windowsにおける描画デー
タの論理的な格納形式である。なお、ジョブ記述ファイ
ル18及びEMFファイル19の形式は、Window
s標準の形式と完全に同一である。このため、ジョブ記
述ファイル18及びEMFファイル19は、Windo
wsに備わっているデフォルト機能により生成させるこ
とができる。
【0020】また、CAPCALドライバ14は、CA
PCAL特有の出力制御情報を出力制御ファイル17と
して、システムスプールキュー16に書き込む。なお、
この出力制御情報は、CAPCALドライバ14側から
ダイアログ画面を開き、配布や分散などの印刷条件をオ
ペレータに指定させることにより、設定することができ
る。ここで、オペレータにより入力された出力制御情報
を文書ごとに記憶し、次回にその文書が印刷される時
は、前回入力されたその文書の出力制御情報をデフォル
トとして使用するようにしても良い。
【0021】アプリケーション1の全描画データのスプ
ールが完了すると、CAPCALプリントプロセッサ2
1が呼び出される。このCAPCALプリントプロセッ
サ21の呼び出しは、アプリケーション1でCAPCA
Lドライバ14を指定することにより行われる。なお、
アプリケーション1で他のドライバが指定された場合
は、Windowsに備わっているプリントプロセッサ
13が呼び出される。
【0022】CAPCALプリントプロセッサ21は、
システムスプールキュー16からジョブ記述ファイル1
8と出力制御ファイル17の内容を取り込み、CAPC
ALスプールキュー22にCAPCALジョブ記述ファ
イル23として書き込む。ここで、CAPCALクライ
アント定義ファイル20には、出力制御情報のデフォル
ト値が定義されており、出力制御ファイル17に出力制
御情報が格納されていない場合は、CAPCALクライ
アント定義ファイル20から出力制御情報を取り込む。
【0023】また、CAPCALプリントプロセッサ2
1は、システムスプールキュー16のEMFファイル1
9を、そのままCAPCALスプールキュー22のEM
Fファイル24に書き込む。CAPCALジョブ記述フ
ァイル23及びEMFファイル24が、CAPCALス
プールキュー22へ書き込まれると、CAPCALプリ
ントプロセッサ21は、このことをCAPCALジョブ
転送スレッド27に通知する。
【0024】CAPCALジョブ転送スレッド27は、
予め定義された転送手段に基づいて、CAPCALジョ
ブ記述ファイル23及びEMFファイル24をサーバ3
01に転送する。なお、転送手段及び転送先のサーバ名
は、CAPCAL転送先定義ファイル25に格納されて
おり、CAPCALジョブ転送スレッド27は、CAP
CAL転送先定義ファイル25の内容に従って、転送手
段及び転送先のサーバを決定する。なお、転送手段とし
て、ファイル転送プロトコル(ftp)を用いた通信ネ
ットワーク28やメイルの添付ファイルを用いた通信ネ
ットワーク29が使用可能である。また、これら以外の
転送手段を用いても良い。
【0025】このように、仮想ドライバとしてのCAP
CALドライバ14をクライアント制御部4に設ける。
そして、ジョブ記述ファイル18及びEMFファイル1
9を、システムスプールキュー16にGDI2によりス
プールさせるとともに、出力制御ファイル17をCAP
CALドライバ14が独自にシステムスプールキュー1
6にスプールする。このことにより、ジョブ記述ファイ
ル18及びEMFファイル19の形式を、Window
s標準の形式と一致させることが可能となり、Wind
owsのアプリケーションインタフェースを一切変更せ
ずに、汎用パッケージソフトを含むWindows上で
動作する全てのアプリケーションについて、ドキュメン
ト配布処理、分散印刷処理、配布先自動検出処理、プリ
ンタエラー及び印刷完了の通知処理等を実現することが
可能となる。この結果、ドキュメント配布処理、分散印
刷処理、配布先自動検出処理、プリンタエラー及び印刷
完了の通知処理等を実現するために、印刷用のアプリケ
ーションを新たに構築する必要がなくなる。
【0026】図3は、図1のサーバ制御部の構成を説明
するブロック図である。図3において、サーバ制御部6
には、メイル用のCAPCAL受信スレッド30、ft
p用のCAPCAL受信スレッド31、CAPCALサ
ーバメインプロセス32、CAPCALジョブ記述ファ
イル34、39、EMFファイル35、40、CAPC
ALサーバ側定義ファイル36、配布分散処理スレッド
37、プリンタ別出力スレッド41、42及びCAPC
ALジョブ転送スレッド43が設けられている。
【0027】CAPCALサーバメインプロセス32に
よりCAPCAL受信スレッド30、31が起動される
と、CAPCAL受信スレッド30、31は、CAPC
ALジョブ記述ファイル23及びEMFファイル24を
CAPCALジョブ転送スレッド27から受信する。そ
して、受信したCAPCALジョブ記述ファイル23及
びEMFファイル24の内容を、CAPCALスプール
ドキュメントキュー33のCAPCALジョブ記述ファ
イル34及びEMFファイル35に書き込む。ここで、
CAPCAL受信スレッド30、31は、ファイル名
(ジョブID)が重複しないように管理を行う。CAP
CALスプールドキュメントキュー33への書き込みが
完了したら、CAPCALサーバメインプロセス32は
配布分散処理スレッド37を起動し、CAPCALスプ
ールドキュメントキュー33への書き込み完了を、配布
分散処理スレッド37に通知する。
【0028】配布分散処理スレッド37は、CAPCA
Lジョブ記述ファイル34から出力制御情報を取り込
む。また、CAPCALサーバ側定義ファイル36の内
容を予め読み込んでおく。そして、配布分散処理スレッ
ド37は、出力制御情報及びサーバ側定義ファイルの内
容から、出力プリンタ及び出力する開始頁、終了頁を決
定し、プリンタ9ごとに設けられたCAPCALスプー
ルプリントキュー38に印刷要求を投入する。CAPC
ALサーバ側定義ファイル36には、配布先名とプリン
タ名(またはサーバ名)との対応関係が格納されてお
り、配布先が論理名で特定されている場合においても、
CAPCALサーバ側定義ファイル36を参照すること
により、出力プリンタを決定することができる。CAP
CALスプールプリントキュー38へのスプールが完了
したら、印刷要求があったプリンタ9を専門に受け持つ
プリンタ別出力スレッド41に通知する。
【0029】プリンタ別出力スレッド41は、CAPC
ALスプールプリントキュー38からEMFファイル4
0を取り出し、GDI7を呼び出すことにより、Win
dows印刷制御5に描画データを送る。なお、出力制
御情報及びCAPCALサーバ側定義ファイル36の内
容により、出力プリンタとして、サーバ301が管理し
ているプリンタ9以外のプリンタが指定されている場
合、配布分散処理スレッド37は、CAPCALジョブ
転送スレッド43から通信ネットワーク44を介し、指
定されているプリンタを管理しているサーバに印刷要求
を送る。
【0030】このように、CAPCALサーバ側定義フ
ァイル36に、配布先名とプリンタ名(またはサーバ
名)との対応関係を格納しておくことにより、配布先が
論理名で特定されている場合においても、出力プリンタ
を決定することが可能となり、ユーザは、出力プリンタ
名を意識することなく、配布印刷を行うことが可能とな
る。
【0031】また、プリンタ別出力スレッド41、42
を各プリンタごとに設け、プリンタ別出力スレッド4
1、42がエミュレーションを行うことにより、プリン
タの仕様が異なる場合においても、適切な出力結果を得
ることが可能となり、プリンタ機種やプリンタメーカー
を意識することなく、ネットワーク上の様々のプリンタ
を利用して印刷を行うことが可能となる。
【0032】図4は、図1のプリンタ出力制御部の構成
を説明するブロック図である。図4において、プリンタ
出力制御部8には、セントロポートモニタ48及びプリ
ンタ出力管理部50が設けられ、サーバ制御部6には、
CAPCALサーバメインプロセス32、EMFファイ
ル40及びプリンタ別出力スレッド41が設けられ、W
indows印刷制御部5には、Rawスプールファイ
ル46、プリントプロセッサ47及びスプーラプロセス
メイン49が設けられ、クライアント300には、CA
PCALクライアントメインプロセス26が設けられて
いる。
【0033】プリンタ別出力スレッド41は、CAPC
ALスプールプリントキュー38からEMFファイル4
0を取り出し、GDI7を呼び出すことにより、Win
dows印刷制御部5に描画データを送る。GDI7
は、印刷指定されたプリンタ9用のプリンタドライバ4
5と交信し、印刷指定されたプリンタ9専用のコマンド
(ESCシーケンス)にEMFファイル40を変換す
る。変換されたESCシーケンスは、Windowsの
システムスプールキューに格納される。これをRawス
プールファイル46と言う。Rawスプールファイル4
6は、純粋なプリンタコマンド(ESCシーケンス)だ
けで構成される。Rawスプールファイル46は、Wi
ndowsのスプーラプロセスメイン49によりプリン
トプロセッサ47で読み込まれ、1頁分の描画データ単
位で、セントロポートモニタ48に送られる。
【0034】プリンタ9とサーバ302とのインタフェ
ースがLANの場合、LANポートモニタに送られ、そ
の他のインタフェースの場合、そのインタフェース用の
ポートモニタが送られる。なお、ここまでの処理は、W
indows印刷制御部5によるデータ処理と同一であ
る。
【0035】セントロポートモニタ48は、スプーラプ
ロセスメイン49経由で受け取ったプリンタ9のコマン
ドデータを、セントロポートに出力する。ここで、プリ
ンタ9にエラーが発生し、コマンドデータを出力できな
かった場合、セントロポートモニタ48は、プリンタ出
力管理部50に、プリンタ名称、エラーコード及び元の
ドキュメントを識別するジョブIDを通知する。また、
セントロポートモニタ51も、そのセントロポートモニ
タ51に接続されているプリンタにエラーが発生した場
合、プリンタ出力管理部50に、プリンタ名称、エラー
コード及び元のドキュメントを識別するジョブIDを通
知する。ここで、ジョブIDは、Windows印刷制
御の仕組みに存在するプリントジョブを特定するIDで
あり、ジョブIDをプリンタ出力管理部50に通知する
ことにより、プリンタ出力管理部50は、元のドキュメ
ント名称、印刷要求したクライアントホスト名称及びユ
ーザ名称を取得することができる。
【0036】プリンタ出力管理部50は、プリンタ名
称、エラーコード及びジョブIDをセントロポートモニ
タ48から受け取ると、CAPCALサーバメインプロ
セス32に、これらの情報を通知する。
【0037】CAPCALサーバメインプロセス32
は、取得したジョブIDから印刷要求を発行したクライ
アントホスト名を検出し、そのクライアントホスト上で
稼働するCAPCALクライアントメインプロセス26
にドキュメント名称、ユーザ名及びエラーコードを通知
する。また、画面呼び出し52を行うことにより、これ
らの情報を表示する。
【0038】CAPCALクライアントメインプロセス
26は、CAPCALサーバメインプロセス32からド
キュメント名称、ユーザ名及びエラーコードを受信する
と、画面呼び出し53を行うことにより、ユーザ名、印
刷中のドキュメント名称、エラーメッセージを表示す
る。
【0039】また、セントロポートモニタ48は、1つ
のジョブの出力が完全に終了したら、プリンタ出力管理
部50にプリンタ名称及びジョブIDを通知する。プリ
ンタ出力管理部50は、セントロポートモニタ48から
プリンタ名称及びジョブIDを受け取ると、CAPCA
Lサーバメインプロセス32に、これらの情報を通知す
る。
【0040】CAPCALサーバメインプロセス32
は、取得したジョブIDから印刷要求を発行したクライ
アントホスト名を検出し、そのクライアントホスト上で
稼働するCAPCALクライアントメインプロセス26
に、ドキュメント名称及びユーザ名を通知する。また、
画面呼び出し52を行うことにより、これらの情報を表
示する。
【0041】CAPCALクライアントメインプロセス
26は、CAPCALサーバメインプロセス32からド
キュメント名称及びユーザ名を受信すると、画面呼び出
し53を行うことにより、ドキュメントの印刷が完了し
たことを示すメッセージを表示する。
【0042】このように、セントロポートモニタ48
は、元のドキュメントを識別するジョブIDをプリンタ
出力管理部50に通知することにより、プリンタ出力管
理部50は、印刷要求したクライアントホスト名を認識
することが可能となり、印刷要求したクライアント30
0に対し、印刷エラーや印刷完了を通知することが可能
となることから、ドキュメントの印刷状況をクライアン
ト300側で認識することが可能となる。
【0043】以下、図1の印刷システムについて、より
詳細に説明する。図5は、仮想ドライバ14の動作を説
明するブロック図であり、CAPCALスプールファイ
ル57が作成されるまでの処理の流れを示す。
【0044】図5において、ユーザが、アプリケーショ
ン1に仮想ドライバ14に対しての印刷を指定した場
合、アプリケーション1は、GDI2に対して印刷命令
を実行する(CAPCALの場合は自動的にスプール印
刷となる)。GDI2は、印刷命令が実行されると、デ
バイス管理情報(Windowsシステム概値。プリン
タドライバ独自の情報を付加可能。以下、DEVMOD
E情報と記述する)を仮想ドライバ14に要求する。仮
想ドライバ14は、メーカやプリンタ機種に依存しない
共通な情報(用紙サイズ、用紙種等)と、出力制御ファ
イル17の名称をDEVMODE情報に設定し、GDI
2に返す。GDI2は、仮想ドライバ14から必要な情
報を受け取ると、DEVMODE情報と描画情報(GE
IINFO情報:プリンタドライバ描画能力。プリンタ
ドライバがGDI2に返す情報。Windowsシステ
ム概値)によって、EMFファイル19とジョブ記述フ
ァイル18を作成する。このように、CAPCAL制御
印刷では、GDI2が、DEVMODE情報を仮想ドラ
イバ14から受け取ることにより、Windowsシス
テムが、ジョブ記述ファイル(Windowsシステム
概値)18を作成する。
【0045】一方、仮想ドライバ14は、仮想ドライバ
14のプリンタプロパティ(指定配布、自動配布、分散
印刷の情報を指定)や、予め保存してある出力制御情報
により、DEVMODE情報に付加されたファイル名称
で出力制御ファイル17を作成する。Windowsの
スプールシステム54は、指定されたポートが印刷可能
状態であることを確認して、デスプール処理を開始す
る。デスプール処理により、ポートスレッド55を通じ
てCAPCALプリントプロセッサ21に制御が渡る。
CAPCALプリントプロセッサ21は、Window
sシステムが作成したジョブ記述ファイル18を読み込
むことにより、DEVMODE情報、仮想ドライバ3に
よりDEVMODE情報に付加された出力制御ファイル
17の名称、及びEMFファイル19の名称を取得す
る。取得した出力制御ファイル17の名称及びEMFフ
ァイル19の名称に基づいて、ジョブ記述ファイル18
及びとEMFファイル19から出力制御情報と印刷デー
タをそれぞれ取得し、CAPCALスプールファイル5
7(CAPCALジョブ記述ファイル23及びEMFフ
ァイル24)を作成する。
【0046】CAPCALプリントプロセッサ7は、C
APCALスプールファイル57を作成すると、CAP
CALスプールファイル57の内容をCAPCALジョ
ブ転送スレッド27を介してサーバ301に送ることに
より、指定配布印刷、自動配布印刷、分散印刷等の機能
を実現する。
【0047】このように、仮想ドライバ14は、設定さ
れたDEVMODE情報をGDI2に送り、GDI2に
よりジョブ記述ファイル18とEMFファイル19とを
生成させるとともに、出力制御情報を出力制御ファイル
17に独自に格納し、独自に格納した出力制御情報をC
APCALプリントプロセッサ21に渡すようにしてい
る。
【0048】この結果、アプリケーション1により生成
された描画データを、オペレーティングシステム2によ
りスプールさせることが可能となることから、そのオペ
レーティングシステム2上で動作するアプリケーション
1ならば、どのようなアプリケーション1も使用するこ
とが可能となるとともに、ジョブ記述ファイル18及び
EMFファイル19とは別個に出力制御情報を格納する
ことにより、オペレーティングシステム2に備わってい
ない出力制御機能を、後から自由に追加することが可能
となり、ネットワーク環境でのドキュメント配布処理、
分散印刷処理、配布先自動検出処理、またはプリンタエ
ラー及び印刷完了の通知処理等を、汎用アプリケーショ
ンで作成した文書に対して行うことが可能となる。
【0049】図6は、ジョブ記述ファイル18の内容例
を示す図である。図6において、ジョブ記述ファイル1
8は、ジョブ記述ファイルヘッダ61、DEVMODE
情報62及びジョブ記述ファイルフッタ63を備えてい
る。なお、これらの情報は、Windowsシステム概
値である。DEVMODE情報62は、仮想ドライバ1
4のDEVMODE構造体情報によって作成される。ま
た、DEVMODE情報62には、プリンタドライバプ
ライベート情報64が仮想ドライバ14により付加され
る。DEVMODE情報62として、用紙サイズ、用紙
種、用紙方向などがあり、プリンタドライバプライベー
ト情報64として、出力制御ファイル名などがある。
【0050】図7は、出力制御ファイル17の内容例を
示す図である。図7において、出力制御ファイル17
は、CAPCAL出力制御ファイルヘッダ71及び出力
制御情報75を備え、出力制御情報75は、動作モード
情報72、文書付加情報73及び文書属性情報74を備
えている。CAPCAL出力制御ファイルヘッダ71
は、CAPCAL出力制御ファイル17の情報を含み、
バージョン情報などが格納されている。動作モード情報
72は、動作モード(通常モード/配布モード/分散モ
ード)が格納されている。また、仮想ドライバ(CAP
CALドライバ)14により指定される配布先情報を含
み、配布モード(自動配布/自動配布)、配布先の名
称、検索ページ、検索モード(区切りモード/修飾モー
ド/属性モード/サイズモード/色モード/矩形モー
ド)、修飾モードの修飾の種類(下線/網掛け)、属性
モードの属性種類(標準/斜体/太字/太字斜体)、サ
イズモードの文字サイズ、色モードの色コード、及び矩
形モードの領域などが格納されている。
【0051】文書付加情報73は、仮想ドライバ14に
より指定される文書の付加情報を含み、フォーム付加フ
ラグ、バナー付加フラグ、フォームファイルの場所、フ
ォームファイル名、及びバナー挨拶文などが格納されて
いる。
【0052】文書属性情報74は、仮想ドライバ14に
より指定される文書の属性情報を含み、パスワードフラ
グ、出力モード(即印刷/日時指定印刷/時間指定印刷
/遅延印刷/印刷しない)、日時指定印刷の指定日時、
時間指定印刷の指定時間、保存モード(日時指定保存/
時間指定保存/無条件保存/保存しない)、及び日時指
定保存の指定時間などが格納されている。
【0053】図8は、仮想ドライバ14の動作を示すフ
ローチャートであり、仮想ドライバ14によりジョブ記
述ファイル18と出力制御ファイル17とを作成する処
理を示すものである。この処理では、ユーザがCAPC
ALプリンタドライバプロパティを操作するフェーズ
(ステップS1〜S3)と、仮想ドライバ14の印刷フ
ェーズ(ステップS4〜S6)とが設けられている。
【0054】図8において、まず、一般のWindow
sプリンタドライバと同様に、CAPCALプリンタド
ライバプロパティを開く(ステップS1)。なお、CA
PCALプリンタドライバプロパティは、プリントフォ
ルダやアプリケーションから開くことが可能である。
【0055】次に、CAPCALプリンタドライバプロ
パティが開かれると、ドライバ出力制御設定画面の表示
に従って出力制御情報75を設定し、DEVMODE情
報62及び出力制御情報75をレジストリに保存する
(ステップS2)。そして、アプリケーション1より印
刷ダイアログを開き、印刷を実行する(ステップS
3)。
【0056】次に、仮想ドライバ14は、CAPCAL
プリンタドライバプロパティからDEVMODE情報6
2及び出力制御情報75を取得する(ステップS4)。
なお、CAPCALプリンタドライバプロパティにDE
VMODE情報62及び出力制御情報75が保存されて
いなければ、仮想ドライバ14に設定されている値を使
う。
【0057】次に、仮想ドライバ14は、CAPCAL
プリンタドライバプロパティから取得したDEVMOD
E情報(出力制御ファイル名を含む)62をGDI2に
渡す(ステップS5)。
【0058】次に、仮想ドライバ14は、CAPCAL
プリンタドライバプロパティから取得した出力制御情報
75を、DEVMODE情報62に付加されている出力
制御ファイル名で出力制御ファイル17に書き込む(ス
テップS6)。
【0059】このように、仮想ドライバ14が、プリン
タ機種やメーカに依存しない共通な情報(DEVMOD
E情報62)をWindowsシステム(GDI2)に
返し、ジョブ記述ファイル18をGDI2に作成させる
ことにより、印刷に必要な情報(用紙種、給紙方式、用
紙方向等)を与えるようにしている。また、仮想ドライ
バ14が、出力制御ファイル17を独自に作成し、配布
分散処理に必要な出力制御情報75をCAPCALプリ
ンタプロセッサ21に与えている。このため、汎用のア
プリケーション1で作成した文書について、メーカやプ
リンタ機種に依存しない配布印刷処理を実現することが
可能となる。すなわち、ユーザは、ネットワーク上のど
のプリンタに印刷させる場合も、仮想ドライバ14で印
刷を実行すれば良く、仮想ドライバ14が与える情報に
よって、プリンタ機種やメーカで特定した機能を意識す
ることなく、ネットワーク上の多種多様なプリンタ9を
利用できる。
【0060】さらに、アプリケーション1で作成したド
キュメントは、出力装置(プリンタ9)の物理仕様に依
存せず、仕様が異なるプリンタに出力しても期待する結
果を得ることが可能となることから、可搬性を向上させ
ることができる。この結果、システム上の全てのアプリ
ケーション1の出力ドキュメントを処理対象として、物
理的な出力装置の個々の仕様に依存しない論理デバイス
ドライブ方式を提供することが可能となる。また、出力
装置の機能が不足する場合も、適切なエミュレートで期
待する出力を得ることができる。
【0061】図9は、DEVMODE情報の設定画面を
示す図である。CAPCALプリンタドライバプロパテ
ィを開いた際に、このDEVMODE情報の設定画面を
表示させることにより、給紙位置、用紙サイズ、印刷用
紙、拡大/縮小、用紙方向、紙種、コピー枚数などを入
力することができ、図6のDEVMODE情報62を設
定することができる。
【0062】図10は、自動配布情報の設定画面を示す
図である。CAPCALプリンタドライバプロパティを
開いた際に、この自動配布情報の設定画面を表示させる
ことにより、検索ページ、印刷時指定、検索モード(区
切りモード/修飾モード/サイズモード/色モード/属
性モード)、検索範囲などを入力することができ、図7
の出力制御情報75を設定することができる。自動配布
とは、ユーザが配布先を指定しなくても、配布される文
書の中から配布先を自動的に抽出して配布を行うもので
ある。ここで、検索ページは、配布先を抽出する文書の
ページを示す。区切りモードでは、指定された文字列で
挟まれた領域が検索範囲とみなされ、例えば、括弧を指
定すると、括弧で挟まれた文字列が配布先となる。修飾
モードでは、修飾された文字列が配布先として検出さ
れ、サイズモードでは、指定された大きさを有する文字
列が配布先とみなされ、色モードでは、指定された色を
有する文字列が配布先とみなされ、属性モードでは、指
定された属性の文字列が配布先とみなされる。
【0063】また、検索範囲の入力は、この検索範囲を
1枚の仮想的な用紙とみなし、用紙を分割して得られた
領域を指定することにより、検索範囲を特定するもので
ある。例えば、縦横の中心線で仮想用紙を4分割した場
合の右上の領域と指定する。そして、この仮想用紙での
領域の指定を実際の用紙に変換する場合、縦横の中心線
で実際の用紙を4分割し、4分割して得られた右上の領
域を検索範囲とする。なお、用紙の分割の方法は、4分
割の他に、8分割や16分割などであってもよい。この
検索範囲の入力により、システム上の全てのアプリケー
ションの出力ドキュメントを処理対象として、アプリケ
ーションから独立した処理でドキュメントの領域を指定
可能となるとともに、ドキュメントの形状(用紙サイ
ズ、用紙の置き方)に依存することなくドキュメントの
領域を指定できる。
【0064】図11(a)は、本発明の一実施例に係わ
る領域指定制御部を説明するブロック図である。図11
(a)において、仮想ドライバ14のユーザインタフェ
ース81には、領域指定制御部82が設けられている。
領域指定制御部82は、ユーザが指定した領域情報を仮
想ドライバ14によって取り込み、文書の印刷情報とし
て登録する。
【0065】図11(b)は、実際の用紙を表す長方形
を表示することにより、ユーザに領域指定させる方法を
説明する図である。図11(b)において、用紙の置き
方に依存して、ポートレートの用紙83を表す長方形
と、ランドスケープの用紙85を表す長方形とが表示さ
れる。そして、ユーザは、ポートレートの用紙83及び
ランドスケープの用紙85のそれぞれに対し、検索範囲
を示す領域84、86を指定する。
【0066】図11(c)は、仮想用紙87を表す長方
形を表示することにより、ユーザに領域指定させる方法
を説明する図である。図11(c)において、用紙を表
す長方形を、正方形の仮想用紙87としてMMI(マン
マシンインターフェース)としている。ユーザは、この
仮想用紙87上で矩形領域88を指定する。
【0067】そして、印刷を実行するときに、仮想用紙
87上で指定された情報を取り込み、ポートレートの用
紙89、及びランドスケープの用紙91のそれぞれの場
合について、仮想用紙87上の矩形領域88を実際の用
紙に合わせて変換する。仮想用紙87の大きさを、実際
の用紙の大きさに対応させて変換する場合、例えば、仮
想用紙87の縦横の変倍率に対応させて、仮想用紙87
に指定された矩形領域88を変換する。このことによ
り、仮想用紙87上での矩形領域88の相対的な位置を
保存したまま、実際の用紙89、91上での検索範囲を
示す領域90、92に変換することができる。
【0068】例えば、ポートレートの用紙89及びラン
ドスケープの用紙91のいずれの場合においても、配布
先は、用紙89、91の上方の欄に記入されることが多
い。このため、仮想用紙87上の上方の領域を矩形領域
88として指定することにより、仮想用紙87がポート
レートの用紙89及びランドスケープの用紙91のいず
れに変換された場合においても、検索範囲を示す領域9
0、92が用紙89、91の上方の欄に位置するように
変換され、検索範囲の指定を効率的に行うことが可能と
なる。
【0069】このように、領域指定機能を、アプリケー
ション及びドキュメントから独立した階層で提供し、領
域指定のMMI(マンマシンインターフェース)を、ド
キュメントの形状から独立した正方形の仮想用紙87と
したことにより、配布先の検索などのため印刷ドキュメ
ントの領域を指定することが必要な場合、アプリケーシ
ョンに領域指定機能を組み込むことなく、全ての出力ド
キュメントに対して領域設定ができる。この領域設定
は、全てのアプリケーションから出力される全てのドキ
ュメントに適用できる。また、領域設定は、ドキュメン
トから独立しており、1つの領域設定で全ての出力ドキ
ュメントを対象とすることができる。さらに、各ドキュ
メントの形状(用紙サイズ、置き方)に依存せずに設定
することができるので、用紙サイズ、置き方の違いによ
る領域指定作業の軽減が図れるとともに、一度設定すれ
ば、ドキュメントの形状を変更しても再設定を不要とす
ることができる。
【0070】図12は、指定配布情報の設定画面を示す
図である。CAPCALプリンタドライバプロパティを
開いた際に、この指定配布情報の設定画面を表示させる
ことにより、配布先モード(配布先名指定/グループ名
指定/プリンタ名指定)、配布先名、グループ名、プリ
ンタ名などを入力することができ、図7の出力制御情報
75を設定することができる。例えば、配布先名指定を
選択した場合、「東京総務課」などの論理名で印刷物の
配布先を指定することが可能となり、プリンタ名を意識
することなく配布先を指定することが可能となる。ま
た、グループ名指定を選択した場合、1回の指定で複数
の配布先を選択することが可能となり、配布先の選択の
手間を軽減することが可能となる。さらに、選択された
配布先を、画面上で自由に追加したり、削除したりする
ことが可能となり、配布先の変更も容易に行うことが可
能となる。
【0071】図13は、本発明の一実施例に係わる分散
印刷情報の設定画面を示す図である。CAPCALプリ
ンタドライバプロパティを開いた際に、この分散印刷情
報の設定画面を表示させることにより、分散方法(台数
均等/部数別/種別/マニュアル指定)、カラーとモノ
クロの区別、キューイングの数、プリンタのエラーなど
を入力することができ、図7出力制御情報75を設定す
ることができる。分散方法を指定することにより、印刷
部数を複数のプリンタに均等に割り振ったり、プリンタ
の印刷能力や稼働状況に応じて割り振ったりすることが
可能となる。また、カラーとモノクロの区別を指定する
ことにより、カラープリンタには、カラーのページだけ
を出力させたり、モノクロプリンタには、モノクロのペ
ージだけを出力させたりすることが可能となる。キュー
イングの数を指定することにより、出力待ちが貯まって
いるプリンタを避けて、空いているプリンタを優先させ
て出力させることができる。プリンタのエラーを指定す
ることにより、配布分散スレッド37がプリンタを決定
する時に、エラーが発生しているプリンタを分散対象の
プリンタとして扱わないようにすることができる。
【0072】図14は、CAPCALプリントプロセッ
サ21の構成を示すブロック図である。図14におい
て、印刷データ読み込み制御部101を介して読み込ま
れた印刷データは、印刷データ格納部102に格納され
る。印刷データ格納部102に格納された印刷データ
は、印刷データ構成部103で各ページごとにデータ区
分され、CAPCALスプールファイル生成部104に
送られる。CAPCALスプールファイル生成部104
は、印刷データの各頁ごとの出力による頁管理情報を頁
管理情報格納部105に格納し、CAPCALスプール
ファイル57のEMFファイル24に各頁の印刷データ
を出力する。全ての印刷データがCAPCALスプール
ファイル57のEMFファイル24に出力されると、C
APCALジョブ記述ファイル23が作成される。
【0073】CAPCALジョブ記述ファイル23を作
成する場合、DEVMODE情報とWindowsジョ
ブ情報とが、印刷ジョブ情報読み込み制御部106から
読み込まれ、CAPCAL出力制御情報が、CAPCA
L出力制御ファイル読み込み制御部107から読み込ま
れ、CAPCALユーザ情報が、CAPCALユーザ情
報読み込み制御部108から読み込まれる。そして、D
EVMODE情報、Windowsジョブ情報、CAP
CAL出力制御情報及びCAPCALユーザ情報が、C
APCALジョブ情報格納部109に格納される。印刷
ジョブ情報構成部110は、CAPCALジョブ情報格
納部109に格納された情報に基づいて、印刷ジョブ情
報を構成し、CAPCALスプールファイル生成部10
5を介してCAPCALスプールファイル57のCAP
CALジョブ記述ファイル23に出力する。この際、C
APCALスプールファイル生成部105は、頁管理情
報格納部105に格納されている頁管理情報を、印刷ジ
ョブ情報構成部110で構成された印刷ジョブ情報に付
加し、CAPCALジョブ記述ファイル23に出力す
る。
【0074】図15は、CAPCALジョブ記述ファイ
ル23の内容例を示す図である。図15において、CA
PCALジョブ記述ファイル23は、CAPCALジョ
ブ記述ファイルヘッダ111、Windowsジョブ情
報112、DEVMODE情報113、CAPCAL出
力制御情報114、CAPCALユーザ情報115及び
印刷データ頁管理情報116を備えている。
【0075】CAPCALジョブ記述ファイルヘッダ1
11は、CAPCALジョブ記述ファイル23のヘッダ
情報として、バージョン番号などの情報を含んでいる。
【0076】Windowsジョブ情報112は、Wi
ndowsのジョブ情報として得られる情報であり、印
刷を依頼したユーザ名、印刷ジョブの総頁数、印刷ジョ
ブが発生したホスト名、印刷ジョブタイトル名、印刷ジ
ョブ発生時刻などの情報を含んでいる。
【0077】DEVMODE情報113は、アプリケー
ション1及び仮想ドライバ14により指定される印刷ジ
ョブのDEVMODE情報113である。
【0078】CAPCAL出力制御情報114は、図7
の出力制御情報75と同一の内容を有している。
【0079】CAPCALユーザ情報115は、CAP
CAL用に定義されたユーザの情報であり、氏名、会社
名、部署名、電話番号、FAX番号、パスワードなどの
情報を含んでいる。
【0080】印刷データ頁管理情報116は、印刷デー
タのファイル上の各頁の先頭位置を示すインデックス情
報である。この印刷データ頁管理情報116を参照する
ことにより、配布印刷や分散印刷を容易に行うことがで
きる。
【0081】図16は、CAPCALプリントプロセッ
サ21の動作を示すフローチャートである。図16にお
いて、まず、CAPCALプリントプロセッサ21は、
EMFファイル24の作成を行う(ステップS11〜S
14)。具体的には、印刷データ読み込み制御部101
を介して読み込まれた印刷データを、印刷データ格納部
102に格納する(ステップS11)。次に、印刷デー
タ構成部103は、印刷データ格納部102から、1頁
分の印刷データを描画単位ごとに取得し、CAPCAL
スプールファイル生成部104を介して、CAPCAL
スプールファイル57に各頁の印刷データを出力する
(ステップS12)。この際、CAPCALスプールフ
ァイル生成部104の頁管理情報格納部105には、印
刷データ頁管理情報116が格納される。次に、未処理
の印刷データがあるかどうかを判断し(ステップS1
3)、未処理の印刷データがある場合、ステップS12
に戻って処理を繰り返す。次に、未読み込みのスプール
データがあるかどうかを判断し(ステップS14)、未
読み込みのスプールデータがある場合、ステップS11
に戻って処理を繰り返す。
【0082】CAPCALプリントプロセッサ21が、
CAPCALスプールファイル57に印刷データを出力
した後、CAPCALジョブ記述ファイル23の作成を
行う(ステップS15〜S17)。具体的には、印刷ジ
ョブ情報読み込み制御部106によりWindowsジ
ョブ情報112とDEVMODE情報113とが読み込
まれ、CAPCAL出力制御ファイル読み込み制御部1
07によりCAPCAL出力制御情報114が読み込ま
れ、CAPCALユーザ情報読み込み制御部108によ
りCAPCALユーザ情報115が読み込まれる。そし
て、Windowsジョブ情報112、DEVMODE
情報113、CAPCAL出力制御情報114及びCA
PCALユーザ情報115が、CAPCALジョブ記述
ファイル23生成用の情報として、CAPCALジョブ
情報格納部109に格納される(ステップS15)。
【0083】次に、印刷データの各頁ごとの書き込みに
より頁管理情報格納部105に格納された印刷データ頁
管理情報116を、CAPCALスプールファイル57
に書き込む(ステップS16)。
【0084】次に、CAPCALジョブ情報構成部11
0は、CAPCALジョブ情報格納部109に格納され
ているWindowsジョブ情報112、DEVMOD
E情報113、CAPCAL出力制御情報114及びC
APCALユーザ情報115を、CAPCALスプール
ファイル生成部104を介してCAPCALスプールフ
ァイル57に書き込む。
【0085】このように、CAPCALプリントプロセ
ッサ21は、Windowsシステムの印刷制御に要求
された印刷データ(スプールファイル)をプリンタ9に
印刷出力させずに、CAPCAL制御の印刷データとし
て独自にスプールすることにより、Windowsシス
テムの印刷制御とは全く異なるサービスの提供が可能と
なる。この結果、ドキュメントの頁単位、あるいはドキ
ュメント単位に、様々なサービス(出力先の操作/出力
順の操作など)をユーザに提供することが可能となる。
【0086】ここで、印刷データの作成については、W
indowsシステムの印刷制御を通して行っているた
め、汎用アプリケーションからの印刷についても、独自
の印刷制御のサービスを提供することが可能となること
から、システム上の全てのアプリケーションの出力ドキ
ュメントを処理対象として、例えば、出力先の追加・変
更、頁単位での操作、出力順の操作など様々なサービス
を提供することが可能となる。
【0087】次に、本発明の実施例に係わる配布印刷処
理について説明する。
【0088】配布印刷処理は、図3の配布分散処理スレ
ッド37が行う。配布分散処理スレッド37では、CA
PCALジョブ記述ファイル23中の出力制御情報75
で指示された内容に従って、配布印刷、分散印刷、通常
印刷のそれぞれの動作が行われる。
【0089】配布印刷には、自動配布及び指定配布の2
種類がある。自動配布は、配布先を印刷ジョブの内容に
より自動的に決定するモードである。指定配布は、印刷
ジョブの配布先をユーザが予め指定するモードである。
これら2つのモードのうち、どちらの動作を行うかは、
CAPCALジョブ記述ファイル23中で定義すること
ができる。
【0090】図17は、本発明の一実施例に係わる自動
配布処理を説明するブロック図であり、自動配布印刷に
おける配布先一覧を得るまでの概要を示す。
【0091】図17において、サーバ301が、クライ
アント300から送られてきたCAPCALジョブ記述
ファイル23及びEMFファイル24の内容を受信する
と、これらの内容をCAPCALスプールドキュメント
キュー33のCAPCALジョブ記述ファイル34及び
EMFファイル35に格納する。配布分散処理スレッド
37は、CAPCALジョブ記述ファイル34の内容を
読み出し、配布先候補としての文字列122を印刷ジョ
ブ121から検索するための検索条件124を、CAP
CALジョブ記述ファイル34から取得する。この検索
条件124には、検索ページ及び検索モード(区切り文
字/修飾/属性/サイズ/色/矩形領域内)などがあ
り、この検索条件124を指定することにより、印刷ジ
ョブ121から配布先候補を抽出する方法を指定するこ
とができる。なお、この検索条件124は、クライアン
ト300側において、CAPCALプリンタドライバプ
ロパティを開き、図10の自動配布情報の設定画面を表
示させることにより、設定することができる。
【0092】配布分散処理スレッド37は、この検索条
件124を元に印刷ジョブ121の検索を行い、検索条
件124に適合した文字列122を配布先名として取得
するとともに、レジストリ123から配布先定義を取得
する。レジストリ123には、配布先定義として、N台
分配布先名と出力装置名との対応関係が格納されてい
る。このため、比較部125において、印刷ジョブ12
1から取得した配布先名と、レジストリ123に定義さ
れた配布先名とを比較し、レジストリ123に定義され
た配布先名と一致する文字列122だけを選択すること
により、配布すべき全ての出力装置を自動的に決定する
ことができる。
【0093】図18は、自動配布時における検索条件例
を示す図である。図18において、検索モードには、
「区切り文字」、「修飾」、「属性」、「サイズ」、
「色」、「矩形領域内」などがある。「区切り文字」
は、指定された始端文字列と終端文字列との間の文字列
122を配布先候補として抽出するものである。なお、
印刷時指定により、区切り文字をそのまま出力させた
り、スペースで置き換えて出力させたりすることができ
る。「修飾」は、下線や網掛けなどにより修飾された文
字列122を配布先候補として抽出するものである。な
お、印刷時指定により、修飾文字をそのまま出力させた
り、修飾を解除して出力させたりすることができる。
「属性」は、標準、斜体、太字、太字斜体などの属性を
有する文字列122を配布先候補として抽出するもので
ある。なお、印刷時指定により、属性が与えられた文字
をそのまま出力させたり、属性を解除して出力させたり
することができる。「サイズ」は、指定された文字サイ
ズ(ポイント数)を有する文字列122を配布先候補と
して抽出するものである。「色」は、指定された色コー
ドを有する文字列122を配布先候補として抽出するも
のである。なお、印刷時指定により、指定された色コー
ドを有する文字列をそのままの色で出力させたり、黒に
変換して出力させたりすることができる。「矩形領域
内」は、検索領域として指定された矩形内の文字列12
2を配布先候補として抽出するものである。
【0094】図19は、本発明の一実施例に係わる自動
配布処理の動作を示すフローチャートであり、配布分散
スレッド37が出力装置名称を決定する概要を示す。図
19において、まず、配布分散スレッド37は、CAP
CALジョブ記述ファイル34の出力制御情報114か
ら検索条件124を取得する。検索条件124として取
得するのは、検索ページ、検索モード、条件詳細である
(ステップS21)。検索ページは、検索を行う印刷ジ
ョブ121のページである。検索モードは、検索ページ
中のどのデータを検索対象とするかを指定するものであ
る。条件詳細は、図18に示すように、指定された検索
条件124により異なる情報が格納されている。
【0095】次に、取得した検索条件124に基づき、
印刷ジョブ121の検索を行い、検索条件124に該当
する全文字列122を印刷ジョブ121から取得し、配
布先の候補とする(ステップS22)。次に、レジスト
リ123から配布先定義(全配布先)を取得し、配布先
定義情報一覧を作成する(ステップS23)。配布先定
義には、論理的な配布先名称とそれに対応する物理的な
出力装置名称とが対となった情報が、配布対象となる出
力先の分だけ登録されている。次に、作成された配布先
定義情報一覧の中から、配布先定義を1件だけ取り出す
(ステップS24)。
【0096】次に、印刷ジョブ121から取得した配布
先候補と、配布先定義から取得した配布先名称とを比較
し(ステップS25)、印刷ジョブ121から取得した
配布先候補と、配布先定義から取得した配布先名称とが
一致する場合、対応する出力装置名称を出力先一覧テー
ブルに追加する(ステップS26)。
【0097】次に、配布先定義情報一覧に比較していな
い配布先定義があれば(ステップS27)、ステップS
24に戻り、配布先定義情報一覧から新たな配布先定義
を取り出し、比較処理を行う。そして、配布先定義情報
一覧の中の配布先定義を全て比較した場合、配布先決定
処理を終了する。配布先決定処理が終了すると、作成し
た出力先一覧を元に、それぞれの出力先に印刷ジョブ1
21の投入を行い、配布印刷を行う。
【0098】このように、クライアント300側で指定
された配布先の検索条件124を、サーバ301側のC
APCALジョブ記述ファイル34の内容として送信
し、クライアント300から送られた検索条件124に
基づいて、ドキュメントに含まれる予め指定された文字
列を自動的に判別することにより、システム上の全ての
アプリケーション1の出力ドキュメントを対象として、
印刷ジョブ121から配布先を自動的に検出することが
可能となる。この結果、印刷ドキュメントごとに配布先
を指定する手間を省くことが可能となり、システム環境
を(配布先に対応するプリンタ名称)を意識することな
く、1回の印刷指示により検索条件124に該当する全
ての配布先へ自動的に印刷を行うことが可能となる。さ
らに、ユーザの配布方法の選択に幅を持たせることが可
能となり、自由度の高い配布処理を実現することが可能
となる。
【0099】図20は、本発明の一実施例に係わる指定
配布処理を説明するブロック図であり、指定配布印刷に
おける配布先を得るまでの概要を示す。
【0100】図20において、サーバ301が、クライ
アント300から送られてきたCAPCALジョブ記述
ファイル23及びEMFファイル24の内容を受信する
と、これらの内容をCAPCALスプールドキュメント
キュー33のCAPCALジョブ記述ファイル34及び
EMFファイル35に格納する。配布分散処理スレッド
37は、CAPCALジョブ記述ファイル34の内容を
読み出し、ここから配布先情報131を取得する。配布
先情報131は、指定配布モードとN個の配布先名称と
を備え、指定配布モードには、グループ指定、論理名指
定(配布先名指定)及び物理名指定(プリンタ名指定)
があり、配布先名称には、グループ名、論理名(プリン
タ名)及び物理名(配布先名)がある。なお、この配布
先情報131は、クライアント300側において、CA
PCALプリンタドライバプロパティを開き、図11の
指定配布情報の設定画面を表示させることにより、設定
することができる。
【0101】ここで、配布分散処理スレッド37は、配
布先情報131の指定配布モードが物理名指定の場合、
配布先情報131の配布先名称の物理名から、配布すべ
き出力装置を決定する。
【0102】一方、配布先情報131の指定配布モード
がグループ名若しくは論理名である場合、配布分散処理
スレッド37は、レジストリ132から、配布先定義情
報及びグループ定義情報を取得する。レジストリ132
には、配布先定義として、N台分の配布先名と出力装置
名との対応関係が格納されているとともに、グループ定
義として、グループ名及び配布先へのリンク情報が格納
されている。このため、配布分散処理スレッド37は、
レジストリ132に定義されている情報を基に、配布す
べき出力装置を決定することができる。
【0103】図21は、本発明の一実施例に係わる指定
配布処理の動作を示すフローチャートであり、指定配布
において配布分散スレッド37が出力装置名称を決定す
るまでの概要を示す。
【0104】図21において、配布分散処理スレッド3
7は、CAPCALジョブ記述ファイル34の出力制御
情報114から、配布先情報131として、指定配布モ
ードと配布先名称とを取得する(ステップS31)。
【0105】次に、配布分散処理スレッド37は、レジ
ストリ132から、配布先定義情報とグループ定義情報
を取得する(ステップS32)。配布先定義には、N台
分の配布先名と出力装置名との対応関係が登録されてい
る。グループ定義には、論理的なグループ名称とそれに
対応する配布先定義へのリンクが登録されている。
【0106】次に、配布先情報131から取得した指定
配布モードが「物理名指定」である場合(ステップS3
3)、配布先情報131で示される配布先名称はそのま
ま出力先名称となる。このため、配布先情報131の配
布先名称をそのまま出力先として、出力先一覧を作成す
る(ステップS34)。一方、配布先情報131から取
得した指定配布モードが「論理名指定」である場合(ス
テップS35)、配布先情報131から取取得した配布
先名称は論理名称である。このため、レジストリ132
から取得した配布先定義情報を参照することにより出力
装置を決定し、出力先一覧を作成する(ステップS3
6)。
【0107】また、配布先情報131から取得した指定
配布モードが「グループ指定」である場合、配布先情報
131から取得した配布先名称はグループ名称である。
このため、レジストリ132から取得したグループ定義
情報と配布先定義情報を参照することにより出力装置を
決定し、出力先一覧を作成する(ステップS37)。出
力先一覧の作成が終了すると、作成した出力先一覧を元
にそれぞれの出力先に印刷ジョブの投入を行い、配布印
刷を行う。
【0108】このように、クライアント300側で指定
された配布先情報131を、サーバ301側のCAPC
ALジョブ記述ファイル34の内容として送信し、クラ
イアント300から送られた配布先情報131に基づい
て、配布先を決定することにより、システム上の全ての
アプリケーション1の出力ドキュメントを対象として、
配布出力先をドキュメント単位に任意に指定することが
可能となる。
【0109】また、レジストリ123、132に、N台
分の配布先名と出力装置との対応関係を登録しておくこ
とにり、1つの論理的な配布先に複数の出力装置を定義
することが可能となり、配布先を1つ決定するだけで、
複数の出力装置にドキュメントを配布することが可能と
なるとともに、配布先を物理的な出力装置ではなく、論
理的な名称で指定可能となる。このため、希望する配布
先を印刷実行時に複数選択したり、印刷ドキュメント毎
に配布先を指定したり、配布対象であるプリンタの名称
を全て指定したりする手間を省くことが可能となり、配
布先に対応するプリンタ名称を意識することなく、1回
の印刷指示で条件に該当する全ての配布先へ自動的に印
刷を行うことが可能となる。
【0110】また、利用者が自由に配布先決定方式を選
択することが可能となり、ドキュメントの内容を解析す
ることにより、配布先を印刷ドキュメントデータから自
動的に決定したり、配布先対象とする文字列を直接指定
することにより、配布先をドキュメントに対して指定し
たりすることが可能となる。
【0111】さらに、ドキュメント内容による確実な配
布先指定が可能となり、配布先の一時的な変更(配布停
止など)を容易、かつ安全に行うことが可能となる。
【0112】この結果、ユーザによる配布方法選択に幅
がある自由度の高い配布処理が可能となり、自由度が高
く運用状況に柔軟に対応することができるシステム構築
及び運用が可能となる。
【0113】次に、本発明の実施例に係わるドキュメン
ト出力監視処理方式について説明する。
【0114】図22は、本発明の一実施例に係わるドキ
ュメント出力監視処理部の構成を示すブロック図であ
る。図22において、印刷を実行したことにより、スプ
ールファイル142がクライアント300に生成され
る。そして、クライアント300に生成されたスプール
ファイル142の内容が、転送モジュール143を介し
てサーバ301へ転送される。この際、転送モジュール
143は、スプールファイル142の内容をサーバ30
1へ転送したことを、クライアント送信ログ144に出
力する。
【0115】サーバ301は、転送モジュール143か
ら送信されたスプールファイル142の内容を受信モジ
ュール148を介して受け取ると、サーバ301上にス
プールファイル147を生成する。この際、受信モジュ
ール148は、サーバ301上にスプールファイル14
7を生成したことを、サーバ受信ログ149に出力す
る。
【0116】出力制御モジュール150は、スプールフ
ァイル147がサーバ301上に生成されると、出力を
開始することを出力開始終了ログ151へ書き出し、印
刷制御モジュール152にプリンタでの印刷を開始させ
る。プリンタでの印刷が完了すると、印刷制御モジュー
ル152は、プリンタでの印刷が完了したことを印刷ロ
グ153に出力し、出力制御モジュール150へ印刷完
了を通知する。その通知を受けた出力制御モジュール1
50は、出力が完了したことを出力開始終了ログ151
へ書き出す。
【0117】通常の印刷では、上述した処理により、ク
ライアント300からサーバ301を経由したプリンタ
への印刷は完了する。一方、クライアント300から指
定されたプリンタが他サーバ304に対するものであっ
た場合には、サーバ301から他サーバ304に対し、
スプールファイル147の内容の転送が行われる。
【0118】印刷するプリンタが他サーバ304の管轄
の場合、サーバ301の出力制御モジュール150は、
スプールファイル147の内容を転送モジュール154
を介して他サーバ304へ転送する。この際、転送モジ
ュール154は、スプールファイル147の内容を他サ
ーバ304へ転送したことを、サーバ送信ログ155に
出力する。
【0119】他サーバ304の受信モジュール158
は、サーバ301の転送モジュール154から送信され
たスプールファイル147の内容を受け取ると、他サー
バ304上にスプールファイル157を生成する。この
際、受信モジュール158は、サーバ301からスプー
ルファイル147の内容を受け取ったことを、サーバ受
信ログ159に出力する。
【0120】他サーバ304の出力制御モジュール16
0は、スプールファイル157が生成されると、出力を
開始することを出力開終了ログ161へ書き出し、印刷
制御モジュール162にプリンタでの印刷を開始させ
る。プリンタでの印刷が完了すると、印刷制御モジュー
ル162は、プリンタでの印刷が完了したことを印刷ロ
グ163に出力し、出力制御モジュール160へ印刷完
了を通知する。その通知を受けた出力制御モジュール1
60は、出力が完了したことを出力開始終了ログへ16
1書き出す。
【0121】クライアント300からサーバ301への
転送及び印刷までの過程は、サーバ301から他サーバ
304への転送及び印刷までの過程と同じ制御となる。
また、例えば、WANに接続されているサーバ間の転送
等、支店から本店のプリンタへ向けて印刷を行う場合に
おいて、送受信が可能な限られているマシン間でスプー
ルファイルを転送し、そこから指定のプリンタに印刷可
能なサーバへの転送が行われることがある。このよう
に、他サーバ304から別のサーバへの転送がさらに発
生する場合は、上述した転送処理が繰り返し行われる。
【0122】図22の処理では、クライアント300→
サーバ301→他サーバ304におけるスプールファイ
ル142、147、157の処理過程(結果)を示すロ
グが、クライアント送信ログ144、サーバ受信ログ1
49、出力開始終了ログ151、印刷ログ153、サー
バ送信ログ155、サーバ受信ログ159、出力開始終
了ログ161、印刷ログ163に出力されたことにな
る。ログ追跡モジュール145が、これらの個々のログ
から、これらの順番に情報を取得し、1回の印刷実行に
対する情報に関連付けることにより、異なるマシン間で
の印刷の開始から終了までの過程を全て追尾することが
可能となる。
【0123】このように、クライアント300での印刷
開始、サーバ301、304での印刷実行までの経過、
及び印刷実行結果をそれぞれログに格納し、ユーザが認
識可能であるドキュメント出力処理をキーとして、それ
らの情報が格納された複数のログの情報表示や操作など
の処理を可能としている。このことにより、出力装置を
制御するサーバがネットワーク上に複数存在するシステ
ムにおいて、利用者が投入した複数の出力装置に対する
複数のドキュメント出力処理を、出力装置ではなくドキ
ュメント出力処理を主体に監視(状態監視、結果監視)
することが可能となる。この結果、ユーザは、自分が投
入した印刷処理を、リアルタイムで監視することが可能
となるとともに、エラー発生時に、プリンタを変更した
り、頁を指定しての再印刷を行わせたりする指示を、簡
単、安全、かつ的確に行うことが可能となる。
【0124】図23は、ログ情報の追跡の流れを示すブ
ロック図である。図23において、クライアント300
によりクライアント送信ログ144が生成され、サーバ
301によりサーバ受信ログ149、出力開始終了ログ
151、印刷ログ153及びサーバ送信ログ155が生
成され、他サーバ304によりサーバ受信ログ159、
出力開始終了ログ161及び印刷ログ163が生成され
ている。そして、ログ追跡モジュール145により、ク
ライアント送信ログ144、サーバ受信ログ149、出
力開始終了ログ151、印刷ログ153、サーバ送信ロ
グ155、サーバ受信ログ159、出力開始終了ログ1
61及び印刷ログ163が順次に追跡される。
【0125】図24は、ログファイルに収めるログ情報
の内容例を示す図である。図22及び図23には、クラ
イアント送信ログ144、サーバ受信ログ149、出力
開始終了ログ151、印刷ログ153、サーバ送信ログ
155、サーバ受信ログ159、出力開始終了ログ16
1及び印刷ログ163の8種類のログが存在するが、こ
れらのログ情報の構造は、以下に示すように、全て共通
となっている。
【0126】図24において、「ログ情報の種類」17
0には、ログ情報の種類を示すコードを格納する。例え
ば、クライアント送信ログ144には、「ログ情報の種
類」170として送信ログ(クライアント)を示すコー
ドを格納し、サーバ受信ログ149、159には、「ロ
グ情報の種類」170として受信ログ(サーバ)を示す
コードを格納し、出力開始終了ログ151、161に
は、「ログ情報の種類」170として出力開始終了ログ
(サーバ)を示すコードを格納し、印刷ログ153、1
63には、「ログ情報の種類」170として印刷ログ
(サーバ)を示すコードを格納し、サーバ送信ログ15
5には、「ログ情報の種類」170として送信ログ(サ
ーバ)を示すコードを格納する。
【0127】「サーバ上の識別子」171には、サーバ
上でユニークに割り当てられる通し番号を格納する。な
お、サーバ上の識別子171は、サーバが受信したとき
に割り当てる番号である。
【0128】「クライアント上の識別子」172には、
印刷を実行したクライアント上でユニークに割り当てら
れる通し番号を格納する。
【0129】「クライアントのホスト名」173には、
印刷を実行したクライアントのホスト名称を格納する。
【0130】「出力先名(プリンタ等)」174には、
印刷の出力先の名称を格納する。例えば、「出力先名
(プリンタ等)」174にプリンタ名が格納されると、
サーバ経由で印刷が行われる。また、「出力先名(プリ
ンタ等)」174に他サーバ管轄のプリンタが格納され
ると、サーバ間を経由した印刷が行われる。
【0131】「出力情報」175には、印刷実行時に指
定した印刷物固有のジョブタイトル名(文書や表のドキ
ュメント名)177、ユーザ名178、用紙サイズ17
9、出力部数180、出力頁順181、出力開始頁番号
182、出力終了頁番号183、出力終了日時184、
出力結果コード185などが格納される。この「出力情
報」175は、印刷物の内容を確認する際の表示用の情
報として使用される。
【0132】「制御情報」176には、通常/配布/分
散等の印刷の種類を示す動作モード186や、通常/日
時/遅延等の印刷出力のタイミングを示す出力モード1
87や保存モード188などが格納される。「制御情
報」176は、印刷の実行を制御する情報として使用さ
れ、どのような制御下で印刷が行われたかを確認する際
に有効となる。
【0133】なお、異なるマシン間でのログ情報は、
「クライアント上の識別子」172と「クライアントの
ホス173ト名」とのセットで関連付けることができ
る。
【0134】このように、異なる処理でも同一構造のロ
グ情報に格納することにより、処理結果の記憶装置への
入出力を共通に扱うことが可能となる。
【0135】図25は、本発明の一実施例に係わるドキ
ュメント出力監視方法を示すフローチャートである。図
25において、ログ追跡モジュール145は、ログ追跡
を開始するクライアント300上のクライアント送信ロ
グ144からログ情報を獲得する(ステップS41)。
【0136】次に、印刷の実行によりスプールファイル
142を転送する送信先のサーバ301のサーバ名称
を、クライアント送信ログ144のログ情報から獲得す
る(ステップS42)。
【0137】次に、同じクライアント300のホスト名
173と識別子172を持つログ情報を、送信先サーバ
301上のサーバ受信ログ149から獲得する(ステッ
プS43)。
【0138】次に、サーバ301の出力開始終了ログ1
51から、出力開始情報を獲得する(ステップS4
4)。
【0139】次に、同じクライアント300のホスト名
173と識別子172を持つログ情報を以降のログの中
から検索する際の検索開始日時として、出力開始終了ロ
グ151から獲得した出力開始情報の出力終了日時18
4をセットする(ステップS45)。
【0140】次に、出力開始終了ログ151から、出力
終了情報を獲得する(ステップS46)。この出力終了
情報は、出力が完了している場合にのみ取得することが
可能である。
【0141】次に、出力開始終了ログ151のログ情報
の中に出力終了情報が有るならば(ステップS47)、
検索終了日時として、出力開始終了ログ151から獲得
した出力終了情報の出力終了日時をセットする(ステッ
プS48)。
【0142】次に、出力開始終了ログ151から獲得し
た出力開始情報の出力先名174がプリンタの場合(ス
テップS49)、同じプリンタ(出力先)で、かつ同じ
クライアント300のホスト名173と識別子172を
持ち、検索開始日時と検索終了日時との間の出力終了日
時184を格納しているログ情報を、印刷ログ153か
ら検索する(ステップS50)。
【0143】サーバ301からプリンタへの印刷が完了
していれば(ステップS51)、以上の処理によりログ
の追尾は終了する。出力開始終了ログ151から獲得し
た出力開始情報の出力先名174がプリンタでなく、サ
ーバ301から他サーバ304へスプールファイル14
7が転送されている場合(ステップS49)、サーバ3
01上のサーバ送信ログ155からログ情報を獲得する
(ステップS52)。そして、転送した送信先の他サー
バ名称をサーバ送信ログ155のログ情報から獲得し
(ステップS53)、ステップS43に戻ることによ
り、他サーバ304は、サーバ301で行われた処理と
同様の処理を開始する。
【0144】以上の処理を、印刷が完了もしくは未だ印
刷がされていないと判別するまで繰り返し(ステップS
51)、サーバを変えて追尾する。
【0145】クライアントのホスト名173と識別子1
72とが同じスプールファイル142について、サーバ
301上での複数回印刷を指定しても、出力開始終了ロ
グ151の開始と終了の日時を得ることにより、ログ情
報の検索範囲を限定することができる。また、検索範囲
を限定することにより、検索時間を短縮することができ
る。
【0146】このように、異なる処理の結果である情報
に関連付けを行い、その関連づけに基づいて送信元を辿
ることにより、送信先での処理の結果を送信元に知らせ
ることが可能となり、クライアント300は、プリンタ
がどのサーバ301、304で管理されているのかを意
識することなく、印刷要求を行うことが可能となるとと
もに、いずれのサーバ301、304において印刷が行
われた場合においても、クライアント300は、印刷状
況を把握することが可能となる。
【0147】また、情報の1つに対応する処理が終了し
た日時を取得することにより、それに続く処理の情報を
その日時以降を条件として検索することが可能となる。
【0148】また、特定の処理においては、処理の開始
と終了に対する情報を集めることで、それに続く処理の
情報が完了しているかどうかを、それに続く処理の情報
を得ることなしに確認することができる。
【0149】さらに、処理の開始と終了の日時を得るこ
とにより、それに続く処理の情報から関連する情報を検
索する際に、範囲を指定した検索を行うことが可能とな
る。
【0150】
【発明の効果】本発明によれば、クライアント端末から
受信した印刷ジョブを、その印刷ジョブのドキュメント
内に記載されている配布先名称に基づいて対応する印刷
装置に対して自動配布する際は、複数の矩形領域に分割
された仮想用紙上においてその検索範囲となる矩形領域
を指定して、その指定された矩形領域を上記印刷ジョブ
のドキュメントが印刷される実際の用紙に合わせた矩形
領域の範囲に変換することで、その変換された範囲を当
該印刷ジョブのドキュメントに対する検索範囲として特
定し、その特定された検索範囲内において別途指定の対
象文字列を検索してその配布先名称を抽出できるように
したので、印刷ジョブのドキュメントの用紙サイズや置
き方に依存せずに、配布先を決定するための対象文字列
を確実に抽出できるようになり、クライアント端末を操
作するユーザが印刷ジョブを送信する際は、その配布先
を指定する手間を省くことができ、更にはその配布先に
対応する物理的な印刷装置名称等を意識しなくてもよ
い。
【0151】
【0152】請求項3記載の発明によれば、さらに、ネ
ットワーク上に接続された複数の出力装置に対する指定
配布機能や分散出力機能等を、前記新たな拡張機能とし
て従来の印刷システム上に容易に追加構築することが可
能となる。
【0153】請求項4記載の発明によれば、さらに、ネ
ットワーク上に接続された複数のクライアントコンピュ
ータからの印刷依頼に対して、前記新たに追加拡張され
た出力制御機能を提供することが可能となる。
【0154】請求項5記載の発明によれば、さらに、各
コンピュータ装置で使用するオペレーティングシステム
に予め備わっていなかった描画データの出力制御機能
を、アプリケーションプログラムやデバイスドライバプ
ログラムに影響を与えることなく容易に追加、拡張する
ことができる。
【0155】請求項6記載の発明によれば、さらに、描
画データの出力先を様々な方法で制御できるので、ネッ
トワークを利用した印刷システムの利用範囲を広げ、有
効かつ効率良く利用することができる。
【0156】請求項7記載の発明によれば、さらに、出
力先制御機能以外の基本的な印刷方法の指定は、従来と
同様に行うことができる。
【0157】請求項8記載の発明によれば、さらに、印
刷を依頼する際に仮想ドライバを指定することで、特定
の出力装置を指定しなくとも印刷システムで自動的に決
定された出力装置に対して標準印刷機能を用いて出力す
ることができ、印刷システムの環境を詳しく知らない利
用者であっても容易に印刷を行うことができる。
【0158】請求項9記載の発明によれば、さらに、追
加された出力先制御機能に関する印刷条件は、アプリケ
ーションプログラムによらず、対話画面上での利用者の
入力に基づいて独自に設定することができる。
【0159】請求項10記載の発明によれば、共通デー
タ形式の描画データに含まれる文字情報に応じて自動的
に配布先を決定することができ、利用者がその都度配布
先を指定することなしに1回の印刷指示を行うだけで、
予め設定された検索条件に基づいて該当する全ての配布
先で自動的に印刷を行うことができる。
【図面の簡単な説明】
【図1】本発明の一実施例に係わる印刷システムの構成
を示すブロック図である。
【図2】図1のクライアント制御部の構成を説明するブ
ロック図である。
【図3】図1のサーバ制御部の構成を説明するブロック
図である。
【図4】図1のプリンタ出力制御部の構成を説明するブ
ロック図である。
【図5】仮想ドライバの動作を説明するブロック図であ
る。
【図6】ジョブ記述ファイルの内容例を示す図である。
【図7】出力制御ファイルの内容例を示す図である。
【図8】仮想ドライバの動作を示すフローチャートであ
る。
【図9】DEVMODE情報の設定画面を示す図であ
る。
【図10】自動配布情報の設定画面を示す図である。
【図11】本発明の一実施例に係わる検索領域の指定方
法を説明する図である。
【図12】指定配布情報の設定画面を示す図である。
【図13】本発明の一実施例に係わる分散印刷情報の設
定画面を示す図である。
【図14】CAPCALプリントプロセッサの構成を示
すブロック図である。
【図15】CAPCALジョブ記述ファイルの内容例を
示す図である。
【図16】CAPCALプリントプロセッサの動作を示
すフローチャートである。
【図17】本発明の一実施例に係わる自動配布処理を説
明するブロック図である。
【図18】自動配布時における検索条件例を示す図であ
る。
【図19】本発明の一実施例に係わる自動配布処理の動
作を示すフローチャートである。
【図20】本発明の一実施例に係わる指定配布処理を説
明するブロック図である。
【図21】本発明の一実施例に係わる指定配布処理の動
作を示すフローチャートである。
【図22】本発明の一実施例に係わるドキュメント出力
監視処理部の構成を示すブロック図である。
【図23】ログ情報の追跡の流れを示すブロック図であ
る。
【図24】ログ情報の内容例を示す図である。
【図25】本発明の一実施例に係わるドキュメント出力
監視方法を示すフローチャートである。
【図26】従来の印刷方法を説明するブロック図であ
る。
【図27】従来の分散印刷方法を説明するブロック図で
ある。
【符号の説明】
300 クライアント 301、304 サーバ 302、303、28、29、44 通信回線 1 アプリケーション 2、7 GDI 3、5 Windows印刷制御部 4 クライアント制御部 6 サーバ制御部 8 プリンタ出力制御部 9 プリンタ 11 スプーラプロセス 12 プロバイダ 13、47 プリントプロセッサ 14 仮想ドライバ 15 CAPCALドライバプロパティ制御スレッド 16 システムスプールキュー 17 出力制御ファイル 18 ジョブ記述ファイル 19、24、35、40 EMFファイル 20 CAPCALクライアント定義ファイル 21 CAPCALプリントプロセッサ 22 CAPCALスプールキュー 23、34、39 CAPCALジョブ記述ファイル 25 CAPCAL転送先定義ファイル 26 CAPCALクライアントメインプロセス 27 CAPCALジョブ転送スレッド 30、31 CAPCAL受信スレッド 32 CAPCALサーバメインプロセス 33 CAPCALスプールドキュメントキュー 36 CAPCALサーバ側定義ファイル 37 配布分散処理スレッド 38 CAPCALスプールプリンタキュー 41、42 プリンタ別出力スレッド 43 CAPCALジョブ転送スレッド 45 プリンタドライバ 46 Rawスプールファイル 48、51 セントロポートモニタ 49 スプーラプロセスメイン 50 プリンタ出力管理部 52、53 画面呼び出し 54 スプールシステム 55 ポートスレッド 57、142、147、157 スプールファイル 61 ジョブ記述ファイルヘッダ 62 DEVMODE情報 63 ジョブ記述ファイルフッタ 64 プリンタドライバプライベート情報 71 CAPCAL出力制御ファイルヘッダ 72 動作モード情報 73 文書付加情報 74 文書属性情報 75 出力制御情報 81 ユーザインターフェース 82 領域指定制御部 83、85 89、91 用紙 84、86、88、90、92 指定領域 87 仮想用紙 101 印刷データ読み込み制御部 102 印刷データ格納部 103 印刷データ構成部 104 CAPCALスプールファイル生成部 105 頁管理情報格納部 106 印刷ジョブ情報読み取り制御部 107 CAPCAL出力制御ファイル読み込み制御部 108 CAPCALユーザ情報読み込み制御部 109 CAPCALジョブ情報格納部 110 印刷ジョブ情報構成部 111 CAPCALジョブ記述ファイルヘッダ 112 Windowsジョブ情報 113 DEVMODE情報 114 出力制御情報 115 CAPCALユーザ情報 116 印刷データ頁管理情報 121 印刷ジョブ 122 文字列 123、132 レジストリ 124 検索条件 125 比較部 131 配布先情報 143、154 転送モジュール 144 クライアント送信ログ 145 ログ追跡モジュール 148、158 受信モジュール 149、159 サーバ受信ログ 150、160 出力制御モジュール 151、161 出力開始終了ログ 152、162 印刷制御モジュール 153、163 印刷ログ 155 サーバ送信ログ 170 ログ情報の種類 171 サーバ上の識別子 172 クライアント上の識別子 173 クライアントのホスト名 174 出力先名(プリンタ等) 175 出力情報 176 制御情報 177 ジョブタイトル名 178 ユーザ名 179 用紙サイズ 180 出力部数 181 出力頁順 182 出力開始頁番号 183 出力終了頁番号 184 出力終了日時 185 出力結果コード 186 動作モード 187 出力モード 188 保存モード
───────────────────────────────────────────────────── フロントページの続き (72)発明者 波多野 英二 東京都羽村市栄町3丁目2番1号 カシ オ計算機株式会社羽村技術センター内 (72)発明者 天利 忠義 東京都羽村市栄町3丁目2番1号 カシ オ計算機株式会社羽村技術センター内 (56)参考文献 特開 平8−58177(JP,A) 特開 平8−101752(JP,A) 特開 平8−274966(JP,A) 特開 平7−297975(JP,A) 特開 平7−200208(JP,A) 特開 平8−292844(JP,A) 特開 昭59−123043(JP,A) 国際公開97/36226(WO,A1) (58)調査した分野(Int.Cl.7,DB名) G06F 3/12 B41J 5/30 B41J 29/38

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】ネットワークを介して複数のクライアント
    端末と複数の印刷装置とに接続される印刷システムであ
    って、 上記クライアント端末から送信されてくる印刷ジョブを
    受信して記憶するジョブ記憶手段と、 論理的な配布先名称と物理的な印刷装置名称との対応関
    係定義を記憶する定義記憶手段と、配布先を自動指定するための第1条件として、各印刷ジ
    ョブのドキュメント内から抽出すべき文字列の対象文字
    列を指定する対象文字列指定手段と、 上記配布先を自動指定するための第2条件として、上記
    対象文字列を各印刷ジョブのドキュメント内から抽出す
    るため検索範囲を指定する際は、複数の矩形領域に分割
    された仮想用紙を表示し、その仮想用紙上の複数の矩形
    領域の内の所望する矩形領域を指定することで上記頁上
    での検索範囲を指定する検索範囲指定手段と、 上記受信の印刷ジョブのドキュメントが印刷される実際
    の用紙の用紙サイズ及び置き方に合わせて、上記仮想用
    紙上で指定した矩形領域の範囲を、実際の用紙上での矩
    形領域の範囲に変換する変換手段と、 上記変換された範囲を上記印刷ジョブの頁上における検
    索範囲として特定し、その特定された頁上での検索範囲
    内において上記指定の対象文字列に一致する文字列を検
    索して、その検索された文字列 を配布先名称として抽出
    する抽出手段と、 この抽出手段で抽出された配布先名称に対応する印刷装
    置名称を上記定義記憶手段に基づいて特定し、その特定
    された印刷装置名称に対応する上記ネットワーク上の
    刷装置に対して上記印刷ジョブを投入配布する配布手段
    と、 を具備したことを特徴とする印刷システム。
  2. 【請求項2】クライアント端末から送信されてくる印刷
    ジョブを受信して記憶するためのコンピュータが実現可
    能なプログラムコードと、 論理的な配布先名称と物理的な印刷装置名称との対応関
    係定義を記憶するためのコンピュータが実現可能なプロ
    グラムコードと、配布先を自動指定するための第1条件として、各印刷ジ
    ョブのドキュメント内から抽出すべき文字列の対象文字
    列を指定するためのコンピュータが実現可能なプログラ
    ムコードと、 上記配布先を自動指定するための第2条件として、上記
    対象文字列を各印刷ジョブのドキュメント内から抽出す
    るため検索範囲を指定する際は、複数の矩形領域に分割
    された仮想用紙を表示し、その仮想用紙上の複数の矩形
    領域の内の所望する矩形領域を指定することで上記頁上
    での検索範囲を指定するためのコンピュータが実現可能
    なプログラムコードと、 上記受信の印刷ジョブのドキュメントが印刷される実際
    の用紙の用紙サイズ及び置き方に合わせて、上記仮想用
    紙上で指定した矩形領域の範囲を、実際の用紙上での矩
    形領域の範囲に変換するためのコンピュータが実現可能
    なプログラムコードと、 上記変換された範囲を上記印刷ジョブの頁上における検
    索範囲として特定し、その特定された頁上での検索範囲
    内において上記指定の対象文字列に一致する文字列を検
    索して、その検索された文字列 を配布先名称として抽出
    するためのコンピュータが実現可能なプログラムコード
    と、 抽出された上記配布先名称に対応する印刷装置名称を上
    記対応関係定義に基づいて特定し、その特定された印刷
    装置名称に対応するネットワーク上の各印刷装置に対し
    て上記印刷ジョブを投入配布するためのコンピュータが
    実現可能なプログラムコードと、 を含むプログラムを格納したことを特徴とする記録媒
    体。
JP2000366697A 2000-12-01 2000-12-01 印刷システム Expired - Lifetime JP3399461B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000366697A JP3399461B2 (ja) 2000-12-01 2000-12-01 印刷システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000366697A JP3399461B2 (ja) 2000-12-01 2000-12-01 印刷システム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP9313178A Division JPH11143661A (ja) 1997-11-14 1997-11-14 印刷システム

Publications (2)

Publication Number Publication Date
JP2001216109A JP2001216109A (ja) 2001-08-10
JP3399461B2 true JP3399461B2 (ja) 2003-04-21

Family

ID=18837273

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000366697A Expired - Lifetime JP3399461B2 (ja) 2000-12-01 2000-12-01 印刷システム

Country Status (1)

Country Link
JP (1) JP3399461B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3740472B2 (ja) * 2002-03-12 2006-02-01 キヤノン株式会社 プログラム、印刷ジョブ制御システム、印刷データ処理方法及び記憶媒体
JP4836072B2 (ja) * 2005-12-28 2011-12-14 キヤノンマーケティングジャパン株式会社 印刷制御装置および印刷制御方法および印刷制御プログラムおよびコンピュータが読み取り可能なプログラムを格納した記憶媒体
JP2010157208A (ja) * 2008-12-02 2010-07-15 Ricoh Co Ltd データ処理装置、プリンタネットワークシステム、データ処理方法、プログラムおよび記録媒体
JP5884884B2 (ja) * 2008-12-02 2016-03-15 株式会社リコー データ処理装置、印刷システム、データ処理方法、プログラムおよび記録媒体

Also Published As

Publication number Publication date
JP2001216109A (ja) 2001-08-10

Similar Documents

Publication Publication Date Title
JP4240690B2 (ja) 情報処理装置と情報処理方法、及び情報処理システム、並びに記録媒体
US8958095B2 (en) Relay server, relay server control method, and storage medium
US7426046B2 (en) Information processing apparatus, information processing method, information processing program, and storage medium
JP5293035B2 (ja) データ処理装置、データ処理方法、プログラムおよび記録媒体
US7149826B2 (en) Peripheral device output job routing
US6809841B2 (en) Marking print documents for visible ownership
JP2001318771A (ja) 画像処理装置
JPH11143661A (ja) 印刷システム
JP3832978B2 (ja) 印刷制御装置及び印刷制御方法
US20040021906A1 (en) Peripheral device output job routing
US8782512B2 (en) Controller, method, and program product for controlling job information display, and recording medium
US20050024673A1 (en) Information processing apparatus, distributed printing controlling method, program for causing information processing apparatus to execute distributed printing controlling method, and computer-readable recording medium storing program
US7689436B2 (en) Peripheral device output job user data processing
JP3399461B2 (ja) 印刷システム
US20060053119A1 (en) Performing multiple actions on a spool file by assigning a particular action to be performed on each segment of the spool file
JPWO2006006302A1 (ja) 印刷システム、プリンタサーバ、印刷実行プログラムおよび印刷文書の管理システム
US20040051901A1 (en) Information processsing apparatus, a function extension program, computer readable storage medium storing the program, and information processing method
JP2001075747A (ja) 印刷システム及び印刷制御プログラムを記録したコンピュータ読取り可能な記録媒体
JP3823534B2 (ja) 印刷システム
JP2001154961A (ja) 文書出力装置及びその方法
JP4861841B2 (ja) 印刷データ生成装置、印刷データ生成方法、プリンタドライバプログラム、文書データ生成サーバ、文書データ生成方法、文書データ生成プログラム及び印刷データ生成システム
JP2008027217A (ja) 情報処理装置および印刷装置を備える印刷システム
JP5263359B2 (ja) 印刷データ生成装置、印刷データ生成方法、プリンタドライバプログラムおよび印刷データ生成システム
JP5459383B2 (ja) 印刷データ生成装置、印刷データ生成方法、プリンタドライバプログラムおよび印刷データ生成システム
JP2003085159A (ja) 文書処理装置および画像出力装置ならびにそれらの方法

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090221

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090221

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100221

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110221

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110221

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120221

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20120221

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130221

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20130221

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20140221

Year of fee payment: 11

EXPY Cancellation because of completion of term