JP2006260243A - 情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラム - Google Patents

情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラム Download PDF

Info

Publication number
JP2006260243A
JP2006260243A JP2005077615A JP2005077615A JP2006260243A JP 2006260243 A JP2006260243 A JP 2006260243A JP 2005077615 A JP2005077615 A JP 2005077615A JP 2005077615 A JP2005077615 A JP 2005077615A JP 2006260243 A JP2006260243 A JP 2006260243A
Authority
JP
Japan
Prior art keywords
job
tracking
print
information
instruction
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.)
Granted
Application number
JP2005077615A
Other languages
English (en)
Other versions
JP4110147B2 (ja
Inventor
Hiroaki Nakada
浩暁 中田
Masaki Aritomi
雅規 有富
Tatsuro Uchida
達郎 内田
Yasuhiro Kujirai
康弘 鯨井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005077615A priority Critical patent/JP4110147B2/ja
Priority to US11/372,267 priority patent/US8319986B2/en
Priority to CNB2006100650999A priority patent/CN100371882C/zh
Publication of JP2006260243A publication Critical patent/JP2006260243A/ja
Application granted granted Critical
Publication of JP4110147B2 publication Critical patent/JP4110147B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/126Job scheduling, e.g. queuing, determine appropriate device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1284Local printer device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

【課題】 ユーザによってジョブの操作が可能なシステム下で、特別なアプリケーションや特別な機能を有するデバイスなどを必要とせず、読み出しあるいは出力された内容を蓄積し追跡可能とする情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラムを提供する。
【解決手段】 印刷装置で印刷すべき印刷ジョブを生成する場合に、アプリケーションから出力され格納手段に格納された描画命令を、入力手段から入力された編集指示に従って編集し、描画命令を用いて編集を含む追跡用データの生成処理に続いて、編集を含む印刷データの生成処理を実行する。描画命令の編集指示には、複数の描画命令の結合指示、複数の描画命令への分離指示、描画命令の削除指示を含み、編集指示が複数の描画命令の結合指示の場合に、複数の描画命令同士の結合関係がわかるよう階層化されたデータ構造によって追跡用データを生成する。
【選択図】 図5

Description

本発明は情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラムに関し、特に、パーソナルコンピュータ等の情報処理装置とプリンタなどの印刷装置を有して構成されるシステムにおいて、印刷装置から印刷される内容を追跡可能とすることで情報漏洩を抑止する情報漏洩抑止方法及びそれを実現する情報処理装置とプリンタドライバプログラムに関するものである。
近年、企業の顧客情報等の機密情報漏えい事件が頻発している。一度情報漏えい事件が公になると、情報漏えいを起した企業に対する信用を失うことに加え、損害賠償や対応に莫大な出費を強いられる事例が多発している。特に最近の情報漏えい事件は、従来の情報漏えい事件とは比べものにならないほど大規模な情報漏えい事件が発生しており、より適切な情報漏えい対策が情報を管理する側に求められている。この背景には、情報のデジタル化、ネットワーク化、モバイル化が進展したことに伴い、一度に大量の情報にアクセスすることが可能になると共に、情報の可搬性が飛躍的に向上したことなどがあり、今後もこれらの傾向は加速していくことは必至である。
情報漏えい対策として従来から広く用いられている手法として、機密情報またはこれを格納するストレージサーバなどにアクセス権を設定することで、機密情報にアクセスできる人を限定する方法がある。しかしながら、近年の情報漏えい事件は機密情報へのアクセスを許可された人物の意図的な内部犯行が圧倒的に多い傾向にあり、もはやアクセス権を設定することによる情報漏えい抑止効果だけでは充分な情報漏えい対策とは言えない。
一方、情報漏えいから守るべき情報として、大企業の顧客情報に代表されるような量的に膨大な情報のみではなく、情報量は少ないが質的に重要な情報も考慮に入れる必要がある。このような情報は、例えば印刷物として容易に持ち出すことが可能であり、印刷についても情報漏えい抑止を意識した対策が望まれている。
従って、特にネットワーク印刷システムについては、印刷された内容を蓄積し情報追跡を可能にする情報漏えい防止のための手段が工夫されてきた。
例えば、(1)印刷する文書や印刷データに印刷許可情報を設定しておき、印刷を行う場合にこの印刷許可情報を参照するもの(例えば、特許文献1参照)、
(2)ネットワークに接続されたデバイスを利用するためにユーザ認証を行う方法(例えば、特許文献2参照)、
(3)プリントサーバにより印刷データを再印刷可能な状態で保管すると共に、ジョブ名、クライアント名、ユーザ名などの情報を取得しタイムスタンプを付加したり、更には印刷データからビットマップを生成したりして印刷ログとして保管する方法(例えば、特許文献3参照)、
(4)上記に加えプリンタ側でも印刷ログを取得しておき、これをサーバに格納する方法(例えば、特許文献4参照)、
(5)また、同様にプリントサーバはクライアントから印刷データを受信すると同時に、ユーザを一意に特定できる情報も受信し、この印刷データとユーザー情報を元に印刷ログを生成し検索、閲覧、再印刷を可能とする方法(例えば、特許文献5参照)等々、様々な情報漏えい抑止の手段が提案されている。
また、プリンタドライバ等の印刷出力プログラムに関する技術では、アプリケーションが生成した文書の印刷出力を中間データでスプールファイルに格納しておき、スプールされている複数の文書の中間データを編集することで、複数の文書を1つの印刷文書に結合する方法(例えば、特許文献6参照)が提案されている。
特開2004−272784公報 特開2003−288327公報 特開2002−149371公報 特開2003−330677公報 特開2004−118243公報 特開2001−134395公報
しかしながら、上記従来例の印刷許可情報を埋め込むもの(特許文献1)、ユーザ認証を行うもの(特許文献2)などでは、特別なアプリケーションや特別なプリンタなどのネットワークデバイスを必要とするものであり、限定された用途での運用に留まざるを得ない。つまり、日常的な業務で個人情報などの機密性の高い情報を扱うオフィスなどでの運用においては、特別な印刷アプリケーションや特別なプリンタなどのネットワークデバイスを導入することにより適用できる環境が狭まってしまうという問題がある。
これとは対照的に、前記特許文献3〜5の方法ではこのような制限はなく、一般オフィスでの運用には大きな支障はなく、プリントサーバを介した印刷に限定すれば印刷内容情報の収集や蓄積、追跡が行えることになる。しかし、これらの特許文献3〜5の方法では印刷を行う経路がプリントサーバを介した印刷に限定されてしまう。つまり、クライアントPCから直接プリンタなどの印刷デバイスに印刷データを送信するような送信形態やローカルポート接続、ネットワークプロトコルによる接続等には対応できない。更には、プリントサーバを経由した印刷のため、プリントサーバは通常の印刷処理に加え印刷内容情報の収集や生成を行う必要があり、複数のクライアントPCからほとんど同時に同じプリンタに対して印刷要求が発行される場合に印刷パフォーマンスの低下が予想される。また、当然ではあるが、プリントサーバを設置することが必須となるため物理的にこれらを設置するスペースを確保する必要がある。
更に、特許文献6のように、印刷された内容を蓄積し情報追跡を可能にする上で、ユーザによって印刷ジョブに対する結合、分割、削除といった編集操作が可能な印刷システム下において、操作によって結果的に印刷内容情報が変更可能であっても、情報追跡の観点から必ず蓄積されるべき印刷内容情報の変更や欠落を防ぐことが必要である。これは追跡情報の正確性が高いネットワーク印刷システムを実現する上で必要となる。
しかしながら、特許文献6のように、アプリケーションから出力された複数の文書をスプールしておき、スプールされている文書の編集処理を行い、結合された結合文書は、その属性として元の文書名が失われ、新たに「結合ドキュメント1」のような名称が付与されてしまい、また、アプリケーション名ももともとの各文書を作成したアプリケーション名が失われ、ジョブ編集モジュール名(例えば「CPC1.exe」)のような名称が付与されてしまうため、追跡用データを印刷ログとして管理する場合、その属性の文書名やアプリケーション名は、元もとの情報が失われてしまうという問題が想定される。
尚、上記従来の問題点については、ネットワーク印刷システムを中心に述べたが、どの問題点も機密情報を何らかの媒体に読み出すあるいは媒体を介して出力する場合の情報漏えい抑止において共通の課題であり、かかる課題はネットワーク印刷システムに限らず情報漏えい抑止において共通に要請されるものである。
本発明は、上記の問題点および課題を鑑み、ユーザによってジョブの操作が可能なシステム下で、特別なアプリケーションや特別な機能を有するデバイスなどを必要とせず、出力された内容を蓄積し追跡可能とする情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラムを提供する。
すなわち、情報漏洩抑止を行なう場合も負荷を分散させることが可能な形態、また特別な情報処理機器を必要としない形態など自由に運用形態を決めることを可能とする。
更には、ユーザによってジョブの操作が可能なシステム下であっても、情報追跡の観点から必ず蓄積されるべき読み出しあるいは出力された内容情報の変更あるいは欠落を防ぐことを可能とする。
本発明をネットワーク印刷システムに適用することによって、ユーザによってジョブの操作が可能なシステム下で、特別な印刷アプリケーションや特別なプリンタなどのネットワークデバイスなどを必要とせず、また印刷経路に対する制約を設けること無しに、印刷された内容を蓄積し追跡可能とするネットワーク印刷システムを実現することを目的とする。
更には、印刷時の負荷を分散させることが可能な形態、またはプリントサーバなど他の情報処理機器を必要としない形態など自由に運用形態を決めることが可能な前記目的のネットワーク印刷システムを実現することを目的とする。
更には、ユーザによって印刷ジョブの操作が可能な印刷システム下であっても情報追跡の観点から必ず蓄積されるべき印刷内容情報の変更あるいは欠落を防ぐことが可能な前記目的のネットワーク印刷システムを実現することを目的とする。
この課題を解決するために、本発明の情報処理装置は、印刷装置で印刷すべき印刷ジョブを生成する情報処理装置であって、アプリケーションから出力される描画命令を格納する格納手段と、入力手段から入力された編集指示に従って、前記格納手段内の描画命令を編集する編集手段と、前記格納手段から読み出される描画命令を用いて、前記編集手段による編集を含む追跡用データの生成処理を実行する追跡用データ生成手段と、前記格納手段から読み出される描画命令を用いて、前記編集手段による編集を含む印刷データの生成処理を実行する印刷データ生成手段とを有することを特徴とする。
ここで、前記描画命令の編集指示は、複数の描画命令の結合指示、複数の描画命令への分離指示、描画命令の削除指示を含む。また、前記追跡用データ生成手段は、編集指示が複数の描画命令の結合指示の場合に、複数の描画命令同士の結合関係がわかるよう階層化されたデータ構造によって前記追跡用データを生成する。また、前記入力手段は、前記印刷データ生成手段が生成した印刷データのプレビュー指示が入力可能であり、前記印刷データ生成手段が生成した印刷データのプレビュー画面を出力する出力手段を更に有する。また、前記追跡用データ生成手段による追跡用データの生成処理と、前記印刷データ生成手段による印刷データの生成処理とが連続して実行されるべく制御する制御手段を更に有する。また、前記入力手段は、プリンタドライバのユーザインタフェースを用いて指示を入力する。
又、本発明の情報漏洩抑止方法は、印刷装置で印刷すべき印刷ジョブを生成する情報処理装置における情報漏洩抑止方法であって、アプリケーションから出力され格納手段に格納された描画命令を、入力手段から入力された編集指示に従って編集する編集工程と、前記格納手段から読み出される描画命令を用いて、前記編集工程での編集を含む追跡用データの生成処理を実行する追跡用データ生成工程と、前記格納手段から読み出される描画命令を用いて、前記編集工程での編集を含む印刷データの生成処理を実行する印刷データ生成工程とを有することを特徴とする。
ここで、前記描画命令の編集指示は、複数の描画命令の結合指示、複数の描画命令への分離指示、描画命令の削除指示を含む。また、前記追跡用データ生成工程では、編集指示が複数の描画命令の結合指示の場合に、複数の描画命令同士の結合関係がわかるよう階層化されたデータ構造によって前記追跡用データを生成する。また、前記入力手段は、前記印刷データ生成手段が生成した印刷データのプレビュー指示が入力可能であり、前記印刷データ生成工程で生成した印刷データのプレビュー画面を出力する出力工程を更に有する。また、前記追跡用データの生成処理と印刷データの生成処理とは、連続して前記格納手段から描画命令を読み出し出力することで、連続して実行される。また、前記入力手段は、プリンタドライバのユーザインタフェースを用いて指示を入力する。
更に、上記情報漏洩抑止方法を実現するドライバプログラム、及び該ドライバプログラムをコンピュータ読み取り可能に記憶する記憶媒体を提供する。
本発明によれば、ユーザによってジョブの操作が可能なシステム下で、特別なアプリケーションや特別な機能を有するデバイスなどを必要とせず、また読み出しあるいは出力経路に対する制約を設けること無しに、読み出しあるいは出力された内容を蓄積し追跡可能とする情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラムを提供できる。
すなわち、情報漏洩抑止を行なう場合も負荷を分散させることが可能な形態、また特別な情報処理機器を必要としない形態など自由に運用形態を決めることを可能とする。
更には、ユーザによってジョブの操作が可能なシステム下であっても、情報追跡の観点から必ず蓄積されるべき読み出しあるいは出力された内容情報の変更あるいは欠落を防ぐことを可能とする。
本発明をネットワーク印刷システムに適用することによって、ユーザによってジョブの操作が可能なシステム下で、特別な印刷アプリケーションや特別なプリンタなどのネットワークデバイスなどを必要とせず、また印刷経路に対する制約を設けること無しに、印刷された内容を蓄積し追跡可能とするネットワーク印刷システムを実現できる。
更には、印刷時の負荷を分散させることが可能な形態、またはプリントサーバなど他の情報処理機器を必要としない形態など自由に運用形態を決めることが可能な前記目的のネットワーク印刷システムを実現できる。
更には、ユーザによって印刷ジョブの操作が可能な印刷システム下であっても情報追跡の観点から必ず蓄積されるべき印刷内容情報の変更あるいは欠落を防ぐことが可能な前記目的のネットワーク印刷システムを実現できる。
以下、図面を参照して本発明の実施形態を詳細に説明する。尚、本実施形態はネットワーク印刷システムへの本発明の適用例を示すが、先に記載の如く、本発明は、機密情報を何らかの媒体に読み出すあるいは媒体を介して出力する場合の情報漏えい抑止において共通の課題を解決するものであり、ネットワーク印刷システムに限定されない。
[第1の実施形態]
<本発明が適用されるネットワーク印刷システムの構成例>
図1は本発明の実施形態に係る印刷システムの構成例を示すブロック図である。
本印刷システムは、ネットワーク5000につながったホストコンピュータ3000(本発明の情報処理装置)、プリンタ1500、追跡情報格納サーバ1000、及び管理用クライアント4000から構成される。尚、ネットワーク5000は、有線のLANや公衆回線であても、無線の移動体通信であってもよい。
本発明の情報処理装置であるホストコンピュータ3000は、ユーザから印刷要求を受け付け、印刷要求の内容に従った印刷データを生成しプリンタ1500へ送信する。更に、ホストコンピュータ3000はこの印刷要求に合致した追跡用データの抽出・生成を行い、追跡情報格納サーバ1000へ送信する。プリンタ1500は、受け取った印刷データに従い印刷処理を実行する。追跡情報蓄積サーバ1000は、ホストコンピュータ3000から受け取る追跡用データを自身または他の情報機器内に構築された記憶領域にデータベースとして登録し保管する。管理者用クライアント4000は、システム管理者が必要に応じて前記データベース内に登録された追跡用データを検索、閲覧するために使用する。
尚、管理者用クライアント4000は追跡情報蓄積サーバ1000と同一の情報機器であっても良い。
<本実施形態のネットワーク印刷システムのハードウエア構成例>
図2Aは、本実施形態のネットワーク印刷システムを構成するホストコンピュータ3000及びプリンタ1500のハードウエア構成例を示すブロック図である。なお、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、LAN,WAN等のネットワークを介して接続され、処理が行われるシステムであっても、本発明を適用できる。
(ホストコンピュータ3000)
図2Aにおいて、ホストコンピュータ3000は、ROM3のプログラム用ROMあるいは外部メモリ11に記憶された文書処理プログラム等に基づいて、以降で後述される本発明の各実施形態に係わる処理を含む、図形、イメージ、文字、表(表計算等を含む)等が混在した文書処理およびそれに基づく印刷処理の実行を制御するCPU1を備えている。このCPU1がシステムバス4に接続される各デバイスの制御を総括する。また、ROM3のプログラム用ROMあるいは外部メモリ11には、CPU1の制御プログラムであるオペレーティングシステムプログラム(以下OS)等が記憶されている。また、ROM3のフォント用ROMあるいは外部メモリ11には上記文書処理の際に使用するフォントデータ等が記憶されている。さらに、ROM3のデータ用ROMあるいは外部メモリ11には上記文書処理等を行う際に使用する各種データが記憶されている。RAM2は、CPU1の主メモリ、ワークエリア等として機能する。
キーボードコントローラ(KBC)5は、キーボード9や不図示のポインティングデバイスからのキー入力を制御する。CRTコントローラ(CRTC)6は、CRTディスプレイ(CRT)10による表示を制御する。7はディスクコントローラ(DKC)を示し、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム(以下プリンタドライバ)等を記憶するハードディスク(HD)、フロッピー(登録商標)ディスク(FD)等の外部メモリ11とのアクセスを制御する。プリンタコントローラ(PRTC)8は、双方向性インタフェース(インタフェース)21を介してプリンタ1500に接続されて、プリンタ1500との通信制御処理を実行する。通信コントローラ(通信C)101は、通信部102によりネットワーク5000を介して他の装置と通信する。プリンタ1500は、かかる通信コントローラ(通信C)101によりネットワーク5000を介して制御されてもよい。
なお、CPU1は、CRT10上の不図示のマウスカーソル等で指示されたコマンドに基づいて、予め登録された種々のウィンドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウィンドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行うことができる。
(ホストコンピュータ3000の記憶構造例)
図2Bは、ホストコンピュータ3000におけるRAM2、ROM3、外部メモリ11を含む記憶構造の一例を示す図である。図2Bでは、上部から下部に向かって連続したアドレス空間を形成するようなイメージで図示した。尚、図2Bには後述の拡張システム例である図4の例が図示されている。又、本実施形態に特徴部分に関連のある情報を図示し、特徴部分でない情報は図示していない。
OSやBIOSなどのシステムプログラム3a及び固定のデータ/パラメータ3bがROM3に記憶されている。この固定のデータ/パラメータ3bにフォントなども含まれる。
続くRAM2は、一時記憶のデータ領域とプログラムロード領域と含む。
データ領域には、本実施形態で使用するPDLなどで記述された画像記述データ領域2a、グラフィックエンジン202で解析作成されスプーラ302によりスプールファイル303にスプールされる中間コードデータ領域2b、デスプーラ305を介してグラフィックエンジン202により中間コードから変換されたビットマップデータ領域2c、後述の図5のユーザインタフェースからジョブ追跡機能UI制御部401により設定されるジョブ追跡のための保存データの設定内容であるジョブ追跡設定情報領域2d、ジョブ追跡設定情報に従ってジョブ追跡機能処理部402で作成されジョブ追跡管理部500に渡され追跡情報格納サーバ1000に保持されるジョブ追跡作成データ領域2e、追跡情報格納サーバ1000に保持された情報に基づいてジョブ追跡管理部500により情報漏えい抑止のための管理結果であるジョブ追跡結果データ領域2f、スプーラ302の処理で使用されるジョブ開始/終了や改ページなどを表わすスプーラ用フラグ領域2g、スプールファイルマネージャ304の処理で使用されるスプーラ302やデスプーラ305からの通知などを表わすスプールファイルマネージャ用フラグ領域2h、デスプーラ305の処理で使用されるスプールファイルマネージャ304からの通知や終了フラグなどを表わすデスプーラ用フラグ領域2i、プリンタドライバ203のUI制御部203BのためのUI情報領域2j、複数のジョブ同士の結合あるいは分割、削除といったジョブ編集結果を記憶するジブ編集リスト2k、及び他のデータ/パラメータ領域が記憶される。
プログラムロード領域2mには、外部メモリ11からアプリケーションやプリンタエンジン、ジョブ追跡管理のプログラムがロードされ、CPU1により実行されて、図3及び図4の各ブロックの処理が実現する。
続く外部メモリ11は、データベースやファイル保存用のデータ領域と本実施形態のアプリケーションやプリンタエンジン、ジョブ追跡管理のプログラムを記憶するプログラム領域とを含む。
データ領域には、スプーラ302によりスプールされる中間データを保持するスプールファイル領域11aを有する。
プログラム領域には、アプリケーション201を記憶するアプリケーション領域11b、グラフィックエンジン202を記憶するグラフィックエンジン領域11c、プリンタドライバ203を記憶するプリンタドライバ領域11d、システムスプーラ204を記憶するシステムスプーラ領域11e、ジョブ追跡管理部500を実現するプログラムを記憶するジョブ追跡管理領域11fを含む。
本実施形態の主要部であるプリンタドライバ領域11d内には、グラフィック制御部203Aを実現するグラフィック制御モジュール11d1、UI制御部203Bを実現するUI制御モジュール11d2、スプーラ302を実現するスプーラモジュール11d3、スプールファイルマネージャ304を実現するスプールファイルマネージャモジュール11d4、ジョブ編集・プレビューインタフェース306を実現するジョブ編集・プレビューインタフェースモジュール115d、デスプーラ305を実現するデスプーラモジュール11d6、ジョブ追跡機能UI制御部401を実現するジョブ追跡機能UI制御モジュール11d7、ジョブ追跡機能処理部402を実現するジョブ追跡機能処理モジュール11d8が含まれる。
更に、本実施形態の特徴部分でない他のデータ/プログラム領域11gを有している。
(プリンタ1500)
図2Aにおいて、プリンタ1500は、そのCPU12によって制御される。プリンタCPU12は、ROM13に記憶された制御プログラム等、あるいは外部メモリ14に記憶された制御プログラム等に基づいてシステムバス15に接続される印刷部(プリンタエンジン)17に印刷出力情報としての画像信号を出力する。また、このROM13のプログラムROMには、CPU12の制御プログラム等が記憶される。また、ROM13のフォント用ROMには上記印刷出力情報を生成する際に使用するフォントデータ等が記憶される。また、ROM13のデータ用ROMには、ハードディスク等の外部メモリ14がないプリンタの場合には、コンピュータ上で利用される情報等が記憶されている。
CPU12は入力部18を介してコンピュータとの通信処理が可能となっている。これにより、プリンタ内の情報等をコンピュータ3000に通知できる。RAM19は、CPU12の主メモリや、ワークエリア等として機能するRAMである。また、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。なお、RAM19は、出力情報展開領域、環境データ格納領域、NVRAM等に用いられる。
前述したハードディスク(HD)、ICカード等の外部メモリ14は、メモリコントローラ(MC)20によりアクセスを制御される。外部メモリ14は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、18は前述した操作パネルで操作のためのスイッチおよびLED表示器等である。通信コントローラ(通信C)103は、通信部104によりネットワーク5000を介して他の装置と通信する。プリンタ1500は、かかる通信コントローラ(通信C)103によりネットワーク5000を介してホストコンピュータ3000から制御されてもよい。
また、プリンタ1500は図示しないNVRAMを有し、操作パネル1501からのプリンタモード設定情報を記憶するようにしてもよい。
印刷部17は本実施形態では電子写真方式のエンジンとしている。従って、印刷データはトナーのドットによって最終的に紙などの媒体上に記録される。なお、本発明における印刷の方式はこのような電子写真方式に限られないことはもちろんである。例えば、インクジェット方式など、ドットを形成して印刷を行ういずれの方式の印刷装置にも本発明を適用することができる。
<ホストコンピュータにおける処理の機能ブロック例>
ホストコンピュータ3000における印刷処理機能および情報追跡機能の構成例について、図3および図4を用いて説明する。
(機能ブロックの基本構成例)
図3は、図1に示したコンピュータ3000における印刷処理および情報追跡のための基本構成例を示すブロック図である。
アプリケーション201、オペレーションシステム(以下OS)の描画部であるグラフィックエンジン202(例えば、米国マイクロソフト社のWindows(登録商標) OSの場合は、GDIモジュール:Graphic Device Interfaceに相当する)、プリンタドライバ203、およびシステムスプーラ204は、外部メモリ11に保存されたファイルとして存在する。これらのファイルは、OSやそのモジュールを利用するモジュールによってRAM2にロードされて実行されるプログラムモジュールである。
また、アプリケーション201およびプリンタドライバ203は、外部メモリ11のFDや不図示のCD−ROM、あるいは不図示のネットワークを経由して外部メモリ11のHDに追加することが可能となっている。外部メモリ11に保存されているアプリケーション201はRAM2にロードされて実行されるが、このアプリケーション201からプリンタ1500に対して印刷を行う際には、同様にRAM2にロードされ実行可能となっているグラフィックエンジン202を利用して出力(描画)を行う。
グラフィックエンジン202は、プリンタなどの印刷装置ごとに用意されたプリンタドライバ203を外部メモリ11からRAM2にロードし、アプリケーション201の出力をプリンタドライバ203に設定する。また、グラフィックエンジン202は、アプリケーション201から受け取るGDI(Graphic Device Interface)関数をDDI(Device Driver Interface)関数に変換して、プリンタドライバ203へ出力する。
プリンタドライバ203は、グラフィックエンジン202から受け取ったDDI関数に基づいて、プリンタが認識可能な制御コマンド、例えばPDL(Page Description Language)に変換する。変換されたプリンタ制御コマンドは、OSによってRAM2にロードされたシステムスプーラ204を経て、インタフェース21経由でプリンタ1500へ印刷データとして出力される仕組みとなっている。
また、本実施形態の印刷システムは、プリンタドライバ203内にジョブ追跡機能部400を有する。ジョブ追跡機能部400はプリンタドライバ203のビルドインモジュールであってもよいし、個別のインストーレーションによって追加されるライブラリモジュールの形式であっても構わない。また、プリンタドライバ203は、ジョブ追跡機能部400の実行により、追跡用データの抽出・生成を行い、ジョブ追跡管理部500へ送る。
ジョブ追跡管理部500は追跡用データを受け取り、これを追跡情報格納サーバ1000へ転送する。尚、ジョブ追跡管理部500は受け取った追跡用データを必要に応じて加工したり、選別したりしてもよく、また更に、追跡用データを受け取ると同時に追跡情報格納サーバ1000へ送信したり、一時的にハードディスク等の記憶領域内に貯め置きし、別途指定される追跡情報蓄積部1000への送信スケジュールに従い追跡情報格納サーバ1000へ送信したりしても良い。
(機能ブロックの拡張構成例)
図4は、図3のシステムを拡張したもので、グラフィックエンジン202からプリンタドライバ203へ印刷命令を送る際に、スプールシステム300によって一旦中間コードからなるスプールファイル303を生成する構成をとる。尚、図4では、以下の動作を明瞭にするため、印刷データの転送が二重線で示され、制御情報の接続が一重線で示されている。
図3のシステムでは、アプリケーション201が印刷処理から開放されるのはプリンタドライバ203がグラフィックエンジン202からのすべての印刷命令をプリンタの制御コマンドへ変換し終った時点である。これに対して、図4のシステムでは、スプーラ302がすべての印刷命令を中間コードデータに変換し、スプールファイル303に出力した時点である。通常、後者の方が短時間で済む。また、図4で示すシステムにおいては、スプールファイル303の内容に対して加工することができる。これによりアプリケーションからの印刷データに対して、拡大縮小や、複数ページを1ページに縮小して印刷する等、アプリケーションの持たない機能を実現することができる。
これらの目的のために、図3のシステムに対し、図4のように中間コードデータでスプールするようシステムの拡張がなされてきている。なお、印刷データの加工を行うためには、通常プリンタドライバ203が提供するUI制御部203Bから設定を行い、その設定内容をRAM2上あるいは外部メモリ11上に保管する。
以下、図4の詳細を説明する。尚、図4のプロセスMはジョブ追跡機能のデスプーラ処理、プロセスPはプリント処理のデスプーラ処理を示している。
図4に示す通りこの拡張された処理方式では、グラフィックエンジン202からの印刷命令であるDDI関数をディスパッチャ301が受け取る。ディスパッチャ301がグラフィックエンジン202から受け取った印刷命令(DDI関数)が、アプリケーション201からグラフィックエンジン202へ発行された印刷命令(GDI関数)に基づくものである場合には、ディスパッチャ301は外部メモリ11に格納されているスプーラ302をRAM2にロードし、スプーラ302へ印刷命令(DDI関数)を送付する。
スプーラ302は受け取った印刷命令を解析し、ページ単位に中間コードに変換してスプールファイル303に出力する。また、スプーラ302は、UI制御部203Bに対して設定されている印刷データに関する加工設定(Nup、両面、ステープル、カラー/モノクロ指定等)を取得して、ジョブ単位のファイルとしてスプールファイル303に保存する。なお、スプールファイル303は外部メモリ11上にファイルとして生成するが、RAM2上に生成されても構わない。更に、スプーラ302は、外部メモリ11に格納されているスプールファイルマネージャ304をRAM2にロードし、スプールファイルマネージャ304に対してスプールファイル303の生成状況を通知する。
その後、スプールファイルマネージャ304は、スプールファイル303に保存された印刷データに関する加工設定の内容に従って印刷を行えるかを判断する。スプールファイルマネージャ304がグラフィックエンジン202を利用して印刷を行えると判断した際には、外部メモリ11に格納されているデスプーラ305をRAM2にロードし、デスプーラ305に対して、スプールファイル303に記述された中間コードのページ描画ファイルの印刷処理を行うように指示する。
デスプーラ305はスプールファイル303に含まれる中間コードのページ描画ファイルを、スプールファイル303に含まれる加工設定情報を含むジョブ設定ファイルに従って加工する。具体的には、中間コードのページ描画命令を読み込み、GDI関数を再生成し、もう一度グラフィックエンジン202経由でGDI関数を出力する。
まず、デスプーラ305は、出力したGDI関数による描画結果をジョブ追跡機能処理部に対して送信するために、ビットマップ展開するための領域(デバイスコンテキスト)をRAM2に確保し、描画を行う。生成された追跡情報はジョブ追跡機能処理部402によってジョブ追跡管理部500が読み取り可能な形式に変換され、転送される。変換形式は例えばXML形式などの互換性の高い形式であっても構わないし、独自の規約に従った形式であっても構わない。
次に、デスプーラ305は、ディスパッチャ301に対して、グラフィックエンジン202経由でGDI関数を出力する。
ディスパッチャ301は、グラフィックエンジン202から受け取った印刷命令(DDI関数)がデスプーラ305からグラフィックエンジン202へ発行された印刷命令(GDI関数)に基づいたものである場合には、ディスパッチャ301はスプーラ302ではなく、描画処理部203Cに印刷命令を送る。
描画処理部203Cはグラフィックエンジン202から取得したDDI関数に基づいてページ記述言語(PDL)等からなるプリンタ制御コマンドを生成し、システムスプーラ204経由でプリンタ1500に出力する。
プリンタドライバ203は、上述した各モジュール構成に加え、本発明の特徴的構成であるジョブ追跡機能部400として、ジョブ追跡機能UI制御部401とジョブ追跡機能処理部402を備えている。
<ジョブ編集機能及びプレビュー機能を備えたスプールシステム例>
図4で示すスプールシステム300は、デスプーラ305によってスプールファイル303の内容をプリンタの制御コマンドに変換する前に加工設定の変更を行ったりあるいはジョブ同士の結合を行ったり(ジョブ編集機能)や、ディスプレイへ表示して印刷体裁を確認する(プレビュー機能)、といったことが可能なインタフェースをユーザに公開することによってさらに拡張を行うことも可能である。
図5は、ジョブ編集機能およびプレビュー機能を備えた拡張されたスプールシステムの一例を示す図である。
ジョブ編集・プレビューインタフェース306は、ユーザインタフェースを備えた前記スプールファイルマネージャ304へのインタフェースで、CRT8に表示されキーボード9や図示しないマウスなどを通じて操作することが可能である。ジョブ編集・プレビューインタフェース306を通じて、ユーザはスプールファイルマネージャ304にジョブのプレビュー、印刷、加工設定の変更、複数のジョブ同士の結合あるいは分割、削除といった様々な指示を出すことが可能である。
図6A、図6B、図6Cは、ジョブ編集・プレビューインタフェース306の一例を示す図である。これらと図5を用いてジョブの結合について説明する。
まず、印刷命令であるDDI関数をディスパッチャ301が受け取ると、ディスパッチャ301は外部メモリ11に格納されているスプーラ302をRAM2にロードし、スプーラ302へ印刷命令(DDI関数)を送付する。スプーラ302は受け取った印刷命令を解析し、ページ単位に中間コードに変換してスプールファイル303に出力する。
スプールシステム300は、アプリケーション201の印刷プロセス毎にロード/アンロードされるものではなく、常に起動しておくことが可能であり、したがって、スプールシステム300は1つのアプリケーションから複数個の印刷ジョブを受け取ったり、さらには複数のアプリケーションから複数個の印刷ジョブを受け取って内部にスプールさせておくことが可能である。
例として、ここでは3つの異なるアプリケーションから各々1ジョブずつ印刷され、スプールシステムの前記ステップによってスプールされたスプールファイルをそれぞれスプールファイル302A、302B、302Cとする。
スプールファイルマネージャ304は、スプールファイルの生成開始をスプーラ302からの通知によって知ると、プリンタドライバ203が提供するUI制御部203Bの設定を読み込み、ジョブ編集・プレビュー機能が有効に設定されていれば、ジョブ編集・プレビューインタフェース306をロードしてCRT8上にユーザインタフェースとして表示する。さらに、スプールファイルマネージャ304はスプールファイル生成の進捗をページ単位で監視し、進捗状況をジョブ編集・プレビューインタフェース306に表示する。スプールファイル302A、302B、302Cは、印刷された順番にジョブ編集・プレビューインタフェース306上でスプールジョブとして表現される。通常、スプールシステム300内にスプールされるスプールジョブの順番は、スプールシステム300に投入された順番と同じになっているが、この順番はスプールファイルマネージャ304によってRAM2内にリスト情報として記録することによって管理されている。
図6Aに示す図は、スプールファイル302A、302B、302Cのスプールが順に完了し、各々が互いに独立したスプールジョブ601、602、603としてユーザインタフェース上のリストビュー604に表示されている状態を表している。
ユーザインタフェースのリスト601にはドキュメント名、ページ数、レイアウト情報などの項目が表示され、各々を別のジョブとして認識できるようになっている。ここでスプールジョブのひとつ、スプールジョブ601をキーボード9や図示しないマウスなどを通じて選択操作し、印刷プレビュー指示をジョブ編集・プレビューインタフェース306を通じてスプールファイルマネージャ304に与えると、スプールファイルマネージャ304はスプールジョブ601に相当するスプールファイル303Aの中間コードを読み込み、それによってプレビュー画像を生成する。
生成されたプレビュー画像はスプールファイルマネージャ304を通じて再びジョブ編集・プレビューインタフェース306に転送され、ここでジョブ編集・プレビューインタフェース306は、図6Bに示すプレビューウィンドウ605をロードしてCRT8上に表示する。プレビューウィンドウ605上では、実際にプリンタ1500から印刷されるのと同様の体裁を所望の拡大率で各ページ毎に確認することが可能である。図6Bの例では、論文作成ソフトによって生成された印刷ジョブが2upの体裁で表示されている。
次に、ジョブ同士の結合について説明する。
スプールジョブ601、602、603を、キーボード9や図示しないマウスなどを通じて選択操作し、ジョブ結合の指示を与えると、スプールファイルマネージャ304は自身がRAM2上で管理しているスプールジョブのリスト情報を、スプールジョブ601、602、603が独立した状態からそれら3つが結合した状態に変更する。また、これに伴ってジョブ編集・プレビューインタフェース306上のリストビュー604の内容を変更し、3つが結合されて1つとなった結合スプールジョブ606を表示させる。
図6Cは、結合スプールジョブ606が編集操作によって生成されたジョブ編集・プレビューインタフェース306の状態を表す。
最後に、スプールジョブのジョブ追跡と印刷について説明する。ここでは、図6Cに示す結合スプールジョブ606の印刷を考える。まず、これまでと同様の方法により、ジョブ編集・プレビューインタフェースを通じてスプールファイルマネージャ304にスプールジョブ印刷の指示を与えると、スプールファイルマネージャ304はRAM2上で管理されたリスト情報を参照し、スプールジョブ601、602、603が1つに結合されていることを判断する。次に、外部メモリ11に格納されているデスプーラ305をRAM2にロードし、デスプーラ305に対して、スプールファイル303A、303B、303Cに記述された中間コードのページ描画ファイルの印刷処理を1つの印刷プロセスで処理するように指示する。
デスプーラ305は、スプールファイル303A、303B、303Cに記述された中間コードのページ描画命令を次々と途切れることなく読み込み、まず読み込んだページ描画命令による描画結果をジョブ追跡機能処理部に対して送信するために、ビットマップ展開するための領域(デバイスコンテキスト)をRAM2に確保し、描画を行う。生成された追跡情報はジョブ追跡機能処理部402によってジョブ追跡管理部500が読み取り可能な形式に変換され、転送される。変換形式はXML形式などであっても構わないし、独自の規約に従った形式であっても構わない。次に、デスプーラ305は、ディスパッチャ301に対して、グラフィックエンジン202経由でGDI関数を出力する。
ディスパッチャ301は、グラフィックエンジン202から受け取った印刷命令(DDI関数)がデスプーラ305からグラフィックエンジン202へ発行された印刷命令(GDI関数)に基づいたものである場合には、ディスパッチャ301はスプーラ302ではなく、描画処理部203Cに印刷命令を送る。描画処理部203Cはグラフィックエンジン202から取得したDDI関数に基づいてページ記述言語等からなるプリンタ制御コマンドを生成し、システムスプーラ204経由でプリンタ1500に出力する。GDI関数を再生成し、もう一度グラフィックエンジン202経由でGDI関数を出力する。このようにしてスプールシステムによって再生成される印刷ジョブはシステムスプーラ204やプリンタ1500には単一のジョブとして認識される。
以上、ホストコンピュータ3000における印刷処理装置および情報追跡装置の構成について説明した。
<ジョブ追跡機能UI例の説明>
図7A及び図7Bは、ジョブ追跡に関する設定をおこなうユーザインタフェース(以下、UIと呼ぶ)の一例を示す図である。
図7Aは、ジョブ追跡機能部400内のジョブ追跡機能UI制御部401により表示されるユーザインタフェースの初期画面の一例である。本実施例では、プリンタドライバUIのダイアログ内のプロパティシート「ジョブ追跡機能」において設定が行えるようになっている。
尚、この図7A及び図7Bで示すジョブ追跡に関する設定画面をプリンタドライバ203とは別の専用ツール上に表示し、設定情報をプリンタドライバ203内のアドインUI制御部401に伝えることで実現しても構わない。更に、このダイアログ510は本システムの運用目的からして、該当プリンタに対して設定変更を行うことが許可されたユーザのみに表示するのが望ましく、本ダイアログを開くためにパスワード等による認証を設けたり、実行ユーザ権限を限定したりすることが考えられる。
図7Aの「ジョブ追跡を行う」チェックボックス511は、ジョブ追跡機能の有効、無効を指示するチェックボックスである。ユーザはこのチェックボックスを操作することで本機能のON、OFFの制御が可能になる。
図7Bのジョブ追跡機能の詳細設定を行うダイアログ520は、図7Aの設定ボタン512を選択することで開く。このジョブ追跡設定ダイアログでは主に追跡用データの送信先の情報及びジョブ追跡機能処理部402で生成する追跡用データの内容を決定することになる。
管理クライアント名521にはジョブ追跡管理部500が動作しているコンピュータ識別名称を入力し、識別名称522にはジョブ追跡管理部500内の他の接続と区別するためのキーを入力し、タイムアウト値523にはジョブ追跡管理部500との通信において使用するタイムアウト時間をあらかじめ設定しておく。以上の3つが追跡データを送信するための情報である。
尚、本ユーザインタフェースを表示しているコンピュータでジョブ追跡管理部500が動作しているのであれば、管理クライアント名521には自身のコンピュータ識別名称を設定し、他のコンピュータでジョブ追跡管理部500が動作しているのであれば、そのジョブ追跡管理部500が動作しているコンピュータ識別名称を入力することになる。
「テキスト抽出をする」チェックボックス524は、追跡用データにテキスト文字列情報を含めるかどうかを指示するチェックボックスである。このチェックボックスをONにすることで、プリンタドライバ203はテキスト文字列情報を追跡用データとして抽出する。テキスト文字列情報を追跡データに付加しておくことで追跡情報蓄積サーバ1000に格納された後のテキスト検索を容易に実現することが可能となる。
「イメージを抽出する」チェックボックス525は、追跡用データにページビットマップ情報を含めるかどうかを指示するチェックボックスである。このチェックボックスをONにすることで、プリンタドライバ203はグラフィックエンジン202を用いて印刷データとは別にページビットマップを生成する。ページビットマップを追跡用データ付加しておくことで追跡情報蓄積サーバ1000に格納された後の画像閲覧が可能となる。
更に、ビット数カラー526は、印刷するページがカラーページとして印刷される場合に、そのページの追跡用ビットマップをカラービットマップデータとして保持する場合に、1画素あたりのビット数を設定するための項目である。図7Bの例では、1画素はRGBの24ビット(各256階調で1677万色)として作成されることを示している。
ビット数白黒527は、印刷するページがモノクロページとして印刷される場合に、そのページの追跡用ビットマップをモノクロビットマップデータとして保持する場合に、1画素あたりのビット数を設定するための項目である。図7Bの例では、1画素は8ビット(256階調)として作成されることを示している。
解像度528は、追跡用ビットマップの解像度を設定するための項目である。図5Bの例では、96DPIとして作成されることを示している。圧縮方法529は、追跡用ビットマップを圧縮方法を選択するための項目であり、図5Bの例では、ランレングス圧縮方法を使用することを示している。
エンコード方法530は、ホストコンピュータ300から追跡用データ(テキストやビットマップを圧縮したもの)を追跡情報格納サーバ1000に送信するためのエンコード方式を設定するための項目であり、図7Bの例では、「Base64」を用いることを示している。
このような設定項目を有するユーザインタフェースを用いて、生成する追跡用データのページイメージの属性や形式を詳細に指定できるようになっている。
尚、上記ジョブ追跡機能UIは一例であって、これに限定されない。ここで設定された情報は図2Bのジョブ追跡設定情報領域2dに記憶されて、ジョブ追跡機能部400での追跡用データの作成に参照される
<本実施形態のジョブ追跡処理の動作例>
以下、上記本実施形態のネットワーク印刷システムにおけるジョブ追跡処理の動作例を説明する。
(ジョブ追跡・印刷処理の前処理例)
図6で説明したジョブのスプール、ジョブ結合および印刷開始処理について、図8を用いて説明する。
図8は、ジョブ追跡・印刷処理を開始するまでの処理の流れを表したフローチャートである。
印刷ジョブが開始された後、ステップS801でプリンタドライバ203内のスプールシステム300はグラフィックエンジンからの描画命令をディスパッチャ301によってスプーラ302へ送信し、スプールファイルとして蓄積する。ここではジョブ編集処理のうちのジョブ結合処理が目的であるので異なる3つのアプリケーションから独立した印刷ジョブが1つずつ投入され、それぞれスプールファイル303A、303B、303Cとして蓄積されていくものとする。
ステップS802ではスプールファイルマネージャが1つ以上のジョブの投入を検知すると、編集・プレビューインタフェース306をロードし、各スプールファイルのスプール進捗を表示する。スプールが終了すると編集・プレビューインタフェース306はユーザからの入力スタンバイ状態に移行する。
ステップS803でスプールされた3つのスプールジョブ601、602、603に対する結合指示が編集・プレビューインタフェース306を通じて与えられると、スプールファイルマネージャ304はRAM2上の記憶領域で管理されているリスト情報に対し、スプールジョブ601、602、603が合わせてひとつのジョブとして結合されるよう内容を変更する。このとき、対応する各スプールファイル303A、303B、303C内に保存されているジョブのドキュメント名や印刷アプリケーション名といった情報は個々に保存されており、したがって結合の指示によって直ちに失われるものではない。
その後ステップS805で印刷指示が編集・プレビューインタフェース306を通じて与えられると、スプールファイルマネージャ304はデスプーラ305に指示を与え、「印刷・ジョブ追跡処理」を開始させる。
(ジョブ追跡・印刷処理例)
図8で説明した処理の続きとして、ジョブ追跡・印刷処理の詳細について、図9を用いて説明する。
図9は、ジョブ追跡・印刷の詳細な処理の流れを表したフローチャートである。
ステップS810では、編集・プレビューインタフェース306からの印刷開始指示を受け、スプールファイルマネージャ304がまずジョブ追跡の処理を開始する。ステップS811でスプールファイルマネージャ304は印刷を指示されたジョブが結合ジョブであるかどうかを判断する。
より具体的には、RAM2上の記憶領域で管理されているリスト情報を参照し、印刷指定されたジョブが結合されているか、結合されているのであればどのジョブとどのジョブが結合されているのかという情報を取得する。このとき結合ジョブでなければS812に進み、結合ジョブであればS813に進む。ステップS812では、デスプーラ305がジョブレベル追跡情報の収集・生成・転送を行う。具体的にはスプールファイルからそのジョブのドキュメント名や印刷アプリケーション名といったジョブ全体に関係するようなジョブレベルの追跡用情報を記述された中間コードから読み込み、ジョブレベル追跡情報をジョブ追跡機能処理部402によってジョブ追跡管理部500が読み取り可能な形式に変換され、転送される。変換形式はXML形式などであっても構わないし、独自の規約に従った形式であっても構わない。
図10に、ジョブに対するジョブレベル追跡用情報の一形式を示す。ここではジョブレベル追跡用情報として印刷ジョブのジョブ名と印刷されたアプリケーションの名称が抽出され、記述されている。
一方、結合ジョブであった場合、ステップS814ではまずデスプーラ305がスプールファイルマネージャ304からの情報に基づき、結合ジョブに含まれている各ジョブそれぞれからジョブレベル追跡用情報を読み込む。これは前述したとおり、結合指示がされたジョブであってもスプールファイル内では個々のジョブのジョブレベル追跡用情報が中間コードとして保存されていることから可能となる。次に取得された結合ジョブ内の個々のジョブのジョブレベル追跡用情報はジョブ追跡機能処理部402によってジョブ追跡管理部500が読み取り可能かつジョブの結合関係が明らかになるように階層化された構造をもつ形式で生成され、転送される。
図11に、結合されたジョブに対するジョブレベル追跡用情報の一形式を示す。ここではジョブレベル追跡用情報として同様に印刷ジョブのジョブ名と印刷されたアプリケーションの名称が抽出されているが、結合ジョブ全体に対するジョブ名として「結合ドキュメント1」が指定され、XMLにおける子のノード位置にさらに結合ジョブの各要素である個々のジョブのジョブ名が例として「論文1」、「グラフ1」「表計算1」のように記述されている。印刷アプリケーション名も同様の構成である。このように階層化してジョブレベル追跡用情報を記述しておけば複数のジョブが結合されて1つのジョブとなっていることと、さらに個々のジョブの情報まで知ることができる。
次にS815では、中間データとして記述された描画命令を物理ページ毎に読み込む。次にステップS816ではページレベル追跡用情報を収集・生成・転送する(プロセスMに相当)。より具体的には、用紙サイズなどページに関する属性情報等や、ジョブ追跡機能部に対してテキスト情報の抽出が指示されているのであれば、テキスト描画コマンドから文字列情報など抽出し追跡用データとし、同じくイメージ抽出が指示されているのであれば、各描画命令を確保してあるメモリ領域等にビットマップイメージとして描く等々、受信した描画命令及びジョブ追跡機能部400に指示された各種設定に依存した処理を実行することで、追跡用データの収集・生成を行い、これをジョブ追跡管理部500へと転送する。続くステップS817では1物理ページ分のジョブ追跡情報生成、転送処理が終了したかを判定し、終了していなければステップS815に戻る。
一方、ステップS817で1物理ページ分の描画処理が終了していればステップS818へ進み、スプールファイルから描画命令を読み込む。そして続くステップS819において、デスプーラ305がスプールファイルマネージャ304の指示により印刷データ用の生成を行い、グラフィックエンジン202、ディスパッチャ301、描画処理部203Cを経由してシステムスプーラ204へ書きだされ、プリンタ1500への転送が行われる(プロセスPに相当)。
ステップS820では、1物理ページ分の印刷処理が終了したかを判定し、終了していなければステップS818に戻り、終了していればステップS809へ進む。そして、ステップS809において、印刷ジョブが終了していれば処理を終え、終了ししていなければステップS811へ戻り当該ジョブに対する処理を続行する。
なお、図9のフローチャートでは、追跡用データの1ページを生成後、印刷データの1ページの生成処理を行っているが、本発明はこの順番に限るものではなく、印刷データの1ページの生成後、追跡用データの1ページの生成処理を行うよう構成してもよい。前者の手順だと、必ず追跡用データの生成が終わったものから印刷することで追跡が保証され、また、後者の手順だと、1ページ目の印刷処理の開始が早くなるという効果が得られる。いずれの場合でも、各ページ内で、追跡用データの生成と印刷データの生成とが交互に生成処理されることが望ましい。
(スプールシステム300の処理例)
次に、図9で説明したジョブ追跡印刷処理におけるスプールシステム300及びジョブ編集・プレビューインタフェース306の処理について、図12から図16を用いて説明する。
先に示したとおり、デスプーラ305はジョブ追跡機能部400およびディスパッチャ301の2つの出力先にデータを出力する。本実施形態では図12に示したとおり、デスプーラ305に対する2つのプロセスMとPを生成し、スプールファイルマネージャ304がこれら2つのデスプーラプロセスMとPを制御する形式をとっている。ここで、第1のプロセスMはジョブ追跡機能部に対する出力に利用され、第2のプロセスPはプリンタ1500への印刷に利用される。両デスプールプロセスMとPの生成は、スプールファイルマネージャ304によって行われる。
以降、図13から図16において、スプールファイルシステム300内の処理及びジョブ編集・プレビューインタフェース306の処理について詳細に説明する。尚、各処理間の関連をそれぞれのステップで示したが、本実施形態の特徴としてデスプーラ305の2つのプロセスMとPは同様なので、図15に共通のフローチャートを示し、プロセスMのステップは最後にMを/プロセスPのステップは最後にPを添えて示した。
(スプーラ302の処理例)
図13は、スプーラ302における、スプールファイル303の生成におけるページ単位保存ステップの処理をフローチャートで示したものである。
まずステップS831では、スプーラ302は、アプリケーションからグラフィックエンジン202を介して印刷要求を受け付ける。アプリケーションにおいては、プリンタドライバ203内のUI制御部203Bによって各種印刷設定項目が設定可能となる。印刷設定の一例としては、1物理ページに複数の論理ページを配置するといった、スプールシステム300を利用して実現するような項目等を含んでいる。
ステップS832では、スプーラ302は、受け付けた印刷要求がジョブ開始要求か判定し、もしステップ802でジョブ開始要求であると判断した場合には、ステップS833に進み、スプーラ302は、中間データを一時的に保存するためのスプールファイル303を作成する。続いて、ステップS834では、スプーラ302は、スプールファイルマネージャ304へ印刷処理の進捗を通知し、続くステップS835でスプーラ302のページ数カウンタを1に初期化する。ここで、スプールファイルマネージャ304においては、印刷が開始されたジョブに対するジョブの情報や加工設定などをスプールファイル303より読み込み、記憶する。
ステップS832においてジョブ開始要求ではなかったと判断した場合には、ステップS836に進む。ステップS836では、スプーラ302は、受け付けた要求がジョブ終了要求かどうかの判別を行う。ジョブ終了要求でないと判断した場合には、ステップS837に進み、改ページかどうかの判別を行う。もしもステップS837で改ページであると判断した場合には、ステップS838に進み、スプールファイルマネージャ304へ印刷処理の進捗を通知する。そしてページ数カウンタをインクリメントして、中間コードを格納しているページ描画ファイルを閉じ、次のページ描画ファイルを生成する。
ステップS837において、受け付けた印刷要求が改ページではないと判断した場合には、ステップS839に進み、スプーラ302は、ページ描画ファイルへの中間コードの書き出しの準備を行う。次に、ステップS840では、印字要求をスプールファイル303へ格納するため、スプーラ302は、印字要求のDDI関数の中間コードへの変換処理を行う。ステップS841では、スプーラ302は、ステップS840において格納可能な形に変換された印刷要求(中間コード)をスプールファイル303へ書き込む。
その後、ステップ831に戻り、再びアプリケーションからの印刷要求を受け付ける。この一連のステップS831からステップS841までの処理を、アプリケーションよりジョブ終了要求を受け取るまで続ける。また、スプーラ302は、同時にプリンタドライバ203から加工設定等の情報を取得し、スプールファイル303に格納する。
ステップS836にて、アプリケーションからの印刷要求がジョブ終了であると判断した場合には、アプリケーションからの印刷要求は全て終了であるので、ステップS832に進み、スプールファイルをクローズするとともにスプールファイルマネージャ304へ印刷処理の進捗を通知し、処理を終える。
(スプールファイルマネージャ304の処理例)
図14は、スプールファイルマネージャ304における、スプールファイル303生成プロセス及びジョブ編集・プレビューインタフェース306とのインタフェースと、以降説明するジョブ追跡情報生成プロセスおよび印刷データ生成プロセスの間での制御の詳細をフローチャートで示したものである。ここで、上記のようにデスプーラ305からの通知で、プロセスMからのものはステップの最後にMを付けて、プロセスPからのものはステップの最後にPを付けて示している。
ステップS901では、スプールファイルマネージャ304は、スプーラ302からの進捗通知、あるいはデスプーラ305からの印刷処理またはジョブ追跡生成処理に関する進捗通知を受け付ける。
ステップS920では、ジョブ編集・プレビューインタフェース306からの画面表示の要求か否かを判定し、画面要求であればステップS921に進んで、ジョブ編集やプレビューに対応するユーザインタフェース用の画面を転送する。画面要求なければ、ステップS922でジョブ編集・プレビューインタフェース306からのジョブの結合・分離・削除などのジョブ編集指示であるか否かを判定し、ジョブ編集指示であればステップS923に進んでジョブ編集の処理を行う。かかるジョブ編集についてはスプーラ302と協働してスプールファイル303に対して行うが、図5乃至図6A,図6Cに従い先に説明したので、ここでは詳説はしない。
ジョブ編集指示でなければ、ステップS924でジョブ編集・プレビューインタフェース306からの印刷指示であるか否かを判定する。印刷指示であれば、ステップS925に進んで印刷指令を行い、デスプーラ305に対してプロセスPを実行させる。
上記いずれのジョブ編集・プレビューインタフェース306とのインタフェースでなければ、ステップS902に進む。尚、図14では一連のステップで示しているが、ジョブ編集・プレビューインタフェース306とのインタフェースは、インタラプト処理で行ってもよい。
ステップS902では、スプールファイルマネージャ304は、もし進捗通知が前述のステップS804において通知されるスプーラ302からの印刷開始通知であるかどうか判定し、もしそうであればステップS903へ進み、印刷の加工設定をスプールファイル303から読み込み、ジョブの管理を開始する。
一方、ステップS902において、スプーラ302からの印刷開始通知でなければステップS904へ進み、スプールファイルマネージャ304は、進捗通知が前述のステップS808において通知されるスプーラ302からの1論理ページの印刷終了通知、すなわち論理ページの改ページ処理であるかどうか判定する。ここで1論理ページの印刷終了通知であればステップS905へ進み、この論理ページに対する論理ページ情報を格納し、ステップS906へ進む。
ステップS906では、この時点でスプールが終了したn論理ページに対して、1物理ページの描画処理が開始できるかを判定する。ここで、描画処理可能である場合はステップS907へ進み、印刷する1物理ページに対して割り付けられる論理ページ数から物理ページ番号を決定する。物理ページの計算については、例えば、加工設定が1物理ページに4論理ページを配置するような設定の場合、第1物理ページは第4論理ページがスプールされた時点で印刷可能となり、第1物理ページとなる。続いて、第2物理ページは第8論理ページがスプールされた時点で印刷可能となる。また、論理ページ数の総数が1物理ページに配置する論理ページ数の倍数でなくても、ステップS812におけるスプール終了通知によって1物理ページに配置する論理ページが決定可能である。一方、ステップS906で描画処理が不可能である場合はステップS901に戻り、次の通知を待つ。
ステップS908では、描画処理可能となった物理ページを構成する論理ページ番号と、その物理ページ番号などの情報がスプールファイル303に格納される。そして、続くステップS909では、格納された物理ページ情報とともにジョブ追跡用に生成されたデスプーラのプロセスに対して描画要求通知を行う。なお、第一物理ページに対する描画処理要求を行う時点では、デスプーラ305のプロセス生成がなされていないので、ジョブ追跡用プロセス、印刷用プロセスをこのステップで生成したあと、要求の通知が行われることとなる。
その後ステップS901に戻り、次の通知を待つ。本実施形態においては、印刷データ1ページ、即ち1物理ページを構成する論理ページがスプールされた時点で印刷ジョブのスプールが全て終了していなくても印刷処理が可能である。
本実施形態におけるデスプーラ305は印刷処理を行う単位として1物理ページ数を想定している。また、先述のステップS908では、1物理ページの印刷処理を行うのに必要な情報をファイルに逐次保存し、再利用可能な形式にしているが、再利用不要な場合には、共有メモリ等高速な媒体を使用し、1物理ページ単位で次々と上書きする実装にして、速度とリソースを節約するような実装形式であってもよい。また、デスプールの進捗よりもスプールの進捗の方が早い場合や、全ページのスプール終了後からデスプールが開始されるような場合には、ステップS909で1物理ページ毎にページ印刷可能を通知せずに、デスプール側の進捗に応じて、複数物理ページもしくは全物理ページが印刷可能になったという通知内容にして、通知回数を節約することが可能である。
ステップS904で1論理ページの印刷終了通知と判定されなかった場合、ステップS910へ進む。ステップS910では、スプールファイルマネージャ304は、前述のステップS812において通知されるスプーラ302からのジョブ終了通知であるかどうかを判定する。ここで、ジョブ終了通知である場合、前述のステップS906へ進む。一方、ジョブ終了通知でない場合、ステップS911へ進む。
ステップS911では、スプールファイルマネージャ304は、受け付けた通知がデスプーラ305における印刷用プロセスからの1物理ページの印刷終了通知であるかどうか判定する。ここで、1物理ページの印刷終了通知である場合はステップS912へ進む。そうでなければステップS915へ進む。
ステップS912では、デスプーラ305における印刷用プロセスから1物理ページの印刷終了通知を受けたので、次に加工設定の印刷が全て終了したかを判定する。印刷終了したと判断された場合、ステップS913へ進み、デスプーラ305におけるジョブ追跡用プロセスに対して追跡情報生成処理に対する終了通知を行う。続いてステップS914へ進み、デスプーラ305における印刷用プロセスに対して印刷終了の通知を行う。一方、加工設定に対する印刷がまだ終了していないと判断した場合、前述のステップS906へ進む。
ステップS911で1物理ページの印刷終了通知でなければ、ステップS915へ進む。ステップS915では、スプールファイルマネージャ304は、受け付けた通知がデスプーラ305におけるジョブ追跡用プロセスからの1物理ページの描画処理終了通知であるかどうかを判定する。ここで、1物理ページの描画処理終了通知である場合は対応する物理ページに対する印刷処理を行ってよいので、ステップS916へ進み、デスプーラ305における印刷用プロセスに対して対応する物理ページの印刷要求を行う。このように、ジョブ追跡に利用する描画処理が完了してから実際の印刷プロセスを実行することにより、ジョブ追跡システムの信頼性を高めることが可能となっている。
一方、ステップS915において、1物理ページの描画処理終了通知でない場合は、ステップS917へ進む。ステップS917では、スプールファイルマネージャ304は、受け付けた通知がデスプーラ305からの印刷終了通知かどうかを判定する。ここで、通知がデスプーラ305からの印刷終了通知と判定された場合、ステップS918へ進み、スプールファイルマネージャ304は、スプールファイル303の該当するページ描画ファイルの削除を行い処理を終える。
一方、デスプーラ305からの印刷終了通知でなかった場合はステップS919へ進み、その他通常処理またはエラー処理などを行い、次の通知を待つ。
(デスプーラ305の処理例)
図15は、デスプーラ305における、描画データの生成プロセスの詳細をフローチャートで示したものである。デスプーラ305は、スプールファイルマネージャ304からの印刷要求に応じて、スプールファイル303から必要な情報を読み出して描画データを生成する。生成された描画データにおけるプリンタへの転送方法については図4および図9で説明した通りである。
また、図12および図14で説明したとおり、デスプーラ305はジョブ追跡情報出力用および印刷データ出力用の2つの目的で利用されるが、描画方法については出力先が異なることと、追跡用データ(イメージ抽出時)と印刷データとでグラフィックエンジン202が生成するデータのサイズ、圧縮方法などが異なっている。しかし、印刷される描画内容と追跡用データで保持されている描画内容は、なんら違いはない。このことにより、追跡データが実際の印刷と同じ処理系で行われることによる追跡データの信頼性向上が実現可能となる。以降、プロセスMとPに共通のデスプーラ305の処理の流れを説明する。
まず、ステップS1001において、前述のスプールファイルマネージャ304からの通知を入力する。続くステップS1002では、デスプーラ305は、入力された通知がジョブの終了通知かどうか判定し、ジョブ終了通知であるならばステップS1003へ進み、終了フラグを立て、ステップS1005へ進む。
一方、ステップS1002においてジョブ終了通知でない場合は、ステップS1004に進み、前述のステップS909あるいはステップS916における1物理ページの描画開始要求が通知されたかどうか判定する。ステップS1004において1物理ページの描画開始要求と判定されなかった場合は、ステップS1010へ進み、その他エラー処理を行い、ステップS1001へ戻り次の通知を待つ。
一方、ステップS1004において1物理ページの印刷開始要求と判定された場合はステップS1005へ進み、デスプーラ305は、ステップS1005で通知を受けた印刷処理可能な物理ページ情報を例えばRAM2などに保存しておく。続くステップS1006では、デスプーラ305は、ステップS1005で保存された物理ページのすべてに関して印刷処理が済んでいるかどうか判定する。ここで全物理ページの印刷処理が済んでいる場合は、ステップS1007へ進み、前述のステップS1003で終了フラグが立てられているのか判定する。終了フラグがたっている場合は、ジョブの印刷が終了したとみなし、デスプーラ305の処理終了の通知をスプールファイルマネージャ304に通知し、処理を終える。ステップS1007で終了フラグが立っていないと判定された場合は、ステップS1001へ戻り次の通知を待つ。
一方、ステップS1006で、印刷可能な物理ページが残っていると判定された場合には、ステップS1008へ進み、デスプーラ305は、保存された物理ページ情報から未処理の物理ページ情報を順に読み出し、描画データ生成に必要な情報を読み込み、処理を行う。
図4において説明したとおり、デスプーラ305における描画処理は、スプールファイル303に格納された描画要求命令をグラフィックエンジン202が認識可能な形式(GDI関数)に変換し、転送する。例えば、複数論理ページを1物理ページにレイアウトするような加工設定については、このステップで縮小配置を考慮にいれながら変換する。また、具体的には、図15の処理の場合も、図9の処理で説明したように、デスプーラ305は、グラフィックエンジン202に対して、処理目的により異なる設定情報(CreateDC():印刷処理時、CreateCompatibleDC():追跡用データ生成時)をAPIで設定している。
必要な印刷処理が終えたならば、続くステップS1009において1物理ページの印刷データ生成終了の通知をスプールファイルマネージャ304に対して行う。そして、再びステップS1006へ戻り、ステップS1005に保存されている描画処理開始可能な物理ページについての描画処理を順次繰り返す。
(ジョブ編集・プレビューインタフェース306の処理例)
図16は、ジョブ編集・プレビューインタフェース306の処理例の概略を示すフローチャートである。
まず、ステップS1101でスプールファイルマネージャ304からの通知を入力する。次に、ステップS1102及びS1106で、スプールファイルマネージャ304からの通知がジョブ編集用の画面か/印刷プレビュー画面かを判断する。
ジョブ編集の場合はステップS1103に進んでジョブ編集画面を表示し、ステップS1104でユーザによる編集指示の入力を待つ。編集指示でなければ("戻る"などの指示)、ステップS1101に戻る。編集指示の入力があればステップS1105に進んで、ジョブ編集の指示内容をスプールファイルマネージャ304に通知する。
印刷プレビューの場合はステップS1107に進んで印刷プレビュー画面を表示し、ステップS1108でユーザによる印刷指示の入力を待つ。印刷指示でなければ("戻る"などの指示)、ステップS1101に戻る。印刷指示の入力があればステップS1109に進んで、印刷の指示内容をスプールファイルマネージャ304に通知する。
スプールファイルマネージャ304からのジョブ編集用の画面でも印刷プレビュー画面でも無ければ、ステップS1108に進んで印刷指示か否かを待つ。
<デスプーラ305とジョブ追跡機能処理部402との通信例>
図17は、デスプーラ305とジョブ追跡機能処理部402との通信について説明した図である。尚、デスプーラ305の制御はスプールファイルマネージャ304が行なっており、要求通知の発行はスプールファイルマネージャ304に指示され、要求応答はスプールファイルマネージャ304に伝達される。
デスプーラ305からは、図15において説明した描画要求に対応した要求がジョブ追跡機能処理部402に送付される。デスプーラ305は、ジョブ追跡機能処理部402から、各要求に対する処理が正常に終了したことを通知された上で、スプールファイルマネージャ304に進捗の通知を行うこととなる。
図中の(1)については、図14におけるステップS909において、第一物理ページに対する描画処理開始時にプロセス生成される、(2)ないし(4)については、物理ページ数分繰り返される処理で、ステップS909およびステップS915の通知処理が該当する。そして、(5)については、ステップS913において実施される処理に該当する。
(ジョブ追跡機能処理部402の処理例)
図18は、ジョブ追跡機能処理部402の処理例の概略を示すフローチャートである。
ステップS1201で、図17の(1)に示したように、デスプーラ305を介したスプールファイルマネージャ304からの印刷ジョブ開始要求を待ち、印刷ジョブ開始要求があるとステップS1202で、図7Bの設定画面から設定され図2Bのジョブ追跡設定情報2dに記憶されたジョブ追跡の設定情報を読み出す。
ステップS1203では、図17の(2)で示したページ印刷開始要求を待って、ページ印刷開始要求があるとステップS1204に進んで、各ページのページ描画処理要求を待つ。ベージ描画処理要求があるとステップS1205に進んで、デスプーラ305によりスプールファイル303から読み出されてグラフィックエンジン202に送られた中間コードデータから、グラフィックエンジン202によりプリンタ1500に送られるデータと同様に展開されたビットマップデータを含むページ描画情報を取得する。次に、ステップS1206では、ステップS1202で読み出したジョブ追跡設定情報に従ってページ描画情報から追跡管理のための情報を作成する。ステップS1207では、図17の(5)で示した印刷終了要求をデスプーラ305から受信したか否かを判断し、受信が無ければステップS1204に戻って、次のページについてのジョブ追跡情報を作成する。
印刷終了要求を受信すると、ステップS1208に進んで作成されたジョブ追跡情報(図2Bではジョブ追跡作成データ)をジョブ追跡管理部500に渡す。ジョブ追跡情報を渡されたジョブ追跡管理部500の処理は、図19により次に説明する。
尚、図18に図示のフローによって、1つのプリントジョブのジョブ追跡情報が作成されジョブ追跡管理部500に渡されるが、実際の動作では連続して複数のプリントジョブが実行される場合もあり、その場合には、図18に図示のフローを繰り返して、プリントジョブ単位にジョブ追跡管理部500に渡されてもよいし、一連の複数のプリントジョブが終了した後にジョブ追跡管理部500に渡されてもよい。その場合には、ステップS1207とS1208との間に、一連の複数のプリントジョブの終了通知を待つことになる。
(ジョブ追跡管理部500の処理例)
図19は、ジョブ追跡管理部500の処理例の概略を示すフローチャートである。尚、ジョブ追跡の管理処理については、既存の処理が適用可能であり詳説はしない。
まず、ステップS1301とS1304において、ジョブ追跡機能処理部402からのジョブ追跡情報の格納要求か、蓄積されたジョブ追跡情報に基づくジョブ追跡の管理処理(検索、照合など)の要求かを判断する。
ジョブ追跡情報の送信の場合は、ステップS1302に進んでジョブ追跡機能処理部402からジョブ追跡情報を受信し、ステップS1303で追跡情報格納サーバ1000のジョブ単位に追跡可能に格納する。一方、ジョブ追跡の管理処理の要求であれば、ステップS1305進んで図7Bで設定された管理クライアント名や識別名に従ってジョブ単位に追跡情報格納サーバ1000のジョブ追跡情報を参照し、ステップS1306でジョブ追跡の結果を出力する。
尚、ジョブ追跡の管理処理は、ジョブ追跡管理部500がホストコンピュータ3000に有る場合は、アプリケーション201を介し、あるいはUIから直接ジョブ追跡管理部500に指示されてもよいし、プリンタドライバ203のUI制御部203Bやジョブ追跡機能UIブ401を介して指示されてもよい。又、ホストコンピュータ3000とは別に管理クライアント4000となる追跡管理コンピュータが有る場合は、ネットワークを介しで指示されることになる。
[他の実施形態]
前述の実施形態では、図12に示したとおり、デスプーラ305に対する2つのプロセスMとPを生成し、スプールファイルマネージャ304がこれら2つのデスプーラプロセスMとPを制御する形式をとっていたが、デスプーラ305内で2つのプロセスMとPを制御する形式をとってもよい。この場合も、図14および図15の処理の流れを若干変更することで実現可能である。例えば、図14におけるステップS915およびステップS916の処理を図15のデスプーラ305側に移動する。又、図14におけるステップS909は、特にジョブ追跡用デスプールプロセスを意識せず、単にデスプーラ305への要求に変わる。また、ステップS913とステップS914についても、個別に通知を行う必要がなくなり、単にデスプーラ305への通知となる。
また、本実施形態では、図9におけるステップS819では、デスプーラ305がスプールファイルマネージャ304の指示ではなく、自身の処理において印刷データの生成、転送を行うことになる。
[種々のシステム構成の実施形態例]
図20A乃至図20Eは、本発明の様々なシステムでの運用形態を説明するための図である。
図20Aは、本発明の最もシンプルな運用例を示す図である。ホストコンピュータ3000内にジョブ追跡管理部500を配し、印刷データはプリンタドライバ203からプリンタ1500へ直接転送され、追跡用データはジョブ追跡機能部400からホストコンピュータ3000内のジョブ追跡機能管理部500を介して追跡情報管理サーバ1000へと送られる。本構成は本発明を実施するための最小構成であり、第一の実施形態では本構成を用いた形態についての説明を行った。
図20Bは、図20Aに対し、ジョブ追跡管理部500をホストコンピュータ3000とは別の追跡管理コンピュータ6000に配したものでる。印刷データは図16Aと同じく、プリンタドライバ203から直接プリンタ1500へ転送され、追跡用データはジョブ追跡機能部400から追跡管理コンピュータ6000内のジョブ追跡機能管理部500を介して追跡情報管理サーバ1000へと送られる。本構成を採ることで追跡用データの追跡情報管理サーバ1000を、例えばネットワーク負荷が軽くなる日や時間帯にスケジューリングすることが可能となり、追跡情報管理サーバ1000への負荷を制御することが可能になる。
図20Cは、図20Aに対し、プリントサーバ7000をホストコンピュータ3000とプリンタ1500の間に入れたものである。印刷データはプリンタドライバ203からプリントサーバ7000の該当するプリンタキュー(プリントスプーラ)を通ってプリンタ1500へ転送され、追跡用データは図20Aと同じく、ジョブ追跡機能部400からホストコンピュータ3000内のジョブ追跡機能管理部500を介して追跡情報管理サーバ1000へと送られる。本構成を採ることで、プリントサーバ7000を用いる運用形態にも適応されることが出来ると共に、プリントサーバ7000内にプリンタドライバ203を置くことで、ホストコンピュータ3000へのプリンタドライバの配布や同期、設定情報の共有化などが可能となる。更には、ジョブ追跡機能に係わる各種設定をプリントサーバ7000上で一括管理することも可能となり、ジョブ追跡機能の各種設定を実行する権限の無いユーザが設定変更行えなくなるような機構も併せ持つこととなる。
図20Dは、図20Bと図20Cの構成を併用したものであり、プリントサーバ7000をホストコンピュータ3000とプリンタ1500の間に入れ、ジョブ追跡管理部500をホストコンピュータ3000とは別の追跡管理コンピュータ6000に配したものである。印刷データは図16Cと同じく、プリンタドライバ203からプリントサーバ7000の該当するプリンタキュー(プリントスプーラ)を通ってプリンタ1500へ転送され、追跡用データは図20Bと同じく、ジョブ追跡機能部400から追跡管理コンピュータ6000内のジョブ追跡機能管理部500を介して追跡情報管理サーバ1000へと送られる。本構成を採ることで、図20Bと図20Cの利点を併せ持つことが可能となる。
図20Eは、図20Dの追跡管理コンピュータ6000とプリントサーバ7000とを同一のコンピュータ上で実現するようにプリントサーバ兼追跡管理コンピュータ8000を設けたものである。印刷データはプリンタドライバ203からプリントサーバ兼追跡管理コンピュータ8000の該当するプリンタキュー(プリントスプーラ)を通ってプリンタ1500へ転送され、追跡用データはジョブ追跡機能部400からプリントサーバ兼追跡管理コンピュータ8000内のジョブ追跡機能管理部500を介して追跡情報管理サーバ1000へと送られる。本構成を採ることで図20Dでは追跡管理コンピュータ6000、プリントサーバ7000の2台のコンピュータであったが、これをプリントサーバ兼追跡管理コンピュータ8000の1台に集約することで、設置スペースやコストの削減を行うことが可能となる。
本発明は以上説明したような様々な形態に適用可能であり、図20Aおよび先の実施系において説明した最小構成だけでなく、導入形態に応じた柔軟なシステム構成が可能となる。
なお、本発明は、複数の機器(例えばコンピュータ、インタフェース機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(複写機、プリンタ、ファクシミリ装置など)に適用してもよい。
また、本発明の目的は、前述した実施形態で示したフローチャートの手順を実現するプログラムコードを記憶した記憶媒体を、システムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても達成される。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
更に、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
本実施形態に係る印刷システムの構成を示すブロック図である。 本実施形態に係るホストコンピュータ3000及びプリンタ1500のハードウエア構成例を示すブロック図である。 本実施形態のホストコンピュータ3000におけるメモリ空間の構造例の概略を示す図である。 本実施形態のホストコンピュータ3000における印刷ジョブ追跡のための一構成例を示す機能ブロック図である。 本実施形態のホストコンピュータ3000における印刷ジョブ追跡のための拡張された構成例を示す機能ブロック図である。 本実施形態のホストコンピュータ3000におけるジョブ編集・プレビューインタフェースのための拡張された構成例を示す機能ブロック図である。 ジョブ編集・プレビューインタフェースに関するジョブ編集前の表示画面の一例を示す図である。 ジョブ編集・プレビューインタフェースに関する印刷プレビューの表示画面の一例を示す図である。 ジョブ編集・プレビューインタフェースに関するジョブ編集後の表示画面の一例を示す図である。 ジョブ追跡機能に関するユーザインタフェースの初期画面の一例を示す図である。 ジョブ追跡機能に関するユーザインタフェースのジョブ追跡の設定画面の一例を示す図である。 本実施形態のジョブ追跡の前処理の概要を示すフローチャートである。 本実施形態のジョブ追跡・印刷の処理の概要を示すフローチャートである。 ジョブに対するジョブレベル追跡用情報の一形式を示す図である。 結合されたジョブに対するジョブレベル追跡用情報の一形式を示す図である。 デスプーラ305の処理例を示す機能ブロック図である。 スプーラ302の処理例を示すフローチャートである。 スプールファイルマネージャ304の処理例を示すフローチャートである。 デスプーラ305の処理例を示すフローチャートである。 ジョブ編集・プレビューインタフェース306の処理例を示すフローチャートである。 デスプーラ305とジョブ追跡機能部402との通信処理例を示す図である。 ジョブ追跡機能処理部402の処理例を示すフローチャートである。 ジョブ追跡管理部500の処理例を示すフローチャートである。 本実施形態のシステムのジョブ追跡機能の形態例を示す図である。 本発明を適用可能な他のシステムのジョブ追跡機能の形態例を示す図である。 本発明を適用可能な他のシステムのジョブ追跡機能の形態例を示す図である。 本発明を適用可能な他のシステムのジョブ追跡機能の形態例を示す図である。 本発明を適用可能な他のシステムのジョブ追跡機能の形態例を示す図である。

Claims (14)

  1. 印刷装置で印刷すべき印刷ジョブを生成する情報処理装置であって、
    アプリケーションから出力される描画命令を格納する格納手段と、
    入力手段から入力された編集指示に従って、前記格納手段内の描画命令を編集する編集手段と、
    前記格納手段から読み出される描画命令を用いて、前記編集手段による編集を含む追跡用データの生成処理を実行する追跡用データ生成手段と、
    前記格納手段から読み出される描画命令を用いて、前記編集手段による編集を含む印刷データの生成処理を実行する印刷データ生成手段とを有することを特徴とする情報処理装置。
  2. 前記描画命令の編集指示は、複数の描画命令の結合指示、複数の描画命令への分離指示、描画命令の削除指示を含むことを特徴とする請求項1記載の情報処理装置。
  3. 前記追跡用データ生成手段は、編集指示が複数の描画命令の結合指示の場合に、複数の描画命令同士の結合関係がわかるよう階層化されたデータ構造によって前記追跡用データを生成することを特徴とする請求項2に記載の印刷制御装置。
  4. 前記入力手段は、前記印刷データ生成手段が生成した印刷データのプレビュー指示が入力可能であり、
    前記印刷データ生成手段が生成した印刷データのプレビュー画面を出力する出力手段を更に有することを特徴とする請求項1記載の情報処理装置。
  5. 前記追跡用データ生成手段による追跡用データの生成処理と、前記印刷データ生成手段による印刷データの生成処理とが連続して実行されるべく制御する制御手段を更に有することを特徴とする請求項1乃至4のいずれかに記載の情報処理装置。
  6. 前記入力手段は、プリンタドライバのユーザインタフェースを用いて指示を入力することを特徴とする請求項1乃至5のいずれかに記載の情報処理装置。
  7. 印刷装置で印刷すべき印刷ジョブを生成する情報処理装置における情報漏洩抑止方法であって、
    アプリケーションから出力され格納手段に格納された描画命令を、入力手段から入力された編集指示に従って編集する編集工程と、
    前記格納手段から読み出される描画命令を用いて、前記編集工程での編集を含む追跡用データの生成処理を実行する追跡用データ生成工程と、
    前記格納手段から読み出される描画命令を用いて、前記編集工程での編集を含む印刷データの生成処理を実行する印刷データ生成工程とを有することを特徴とする情報漏洩抑止方法。
  8. 前記描画命令の編集指示は、複数の描画命令の結合指示、複数の描画命令への分離指示、描画命令の削除指示を含むことを特徴とする請求項7記載の情報漏洩抑止方法。
  9. 前記追跡用データ生成工程では、編集指示が複数の描画命令の結合指示の場合に、複数の描画命令同士の結合関係がわかるよう階層化されたデータ構造によって前記追跡用データを生成することを特徴とする請求項8に記載の情報漏洩抑止方法。
  10. 前記入力手段は、前記印刷データ生成手段が生成した印刷データのプレビュー指示が入力可能であり、
    前記印刷データ生成工程で生成した印刷データのプレビュー画面を出力する出力工程を更に有することを特徴とする請求項7記載の情報漏洩抑止方法。。
  11. 前記追跡用データの生成処理と印刷データの生成処理とは、連続して前記格納手段から描画命令を読み出し出力することで、連続して実行されることを特徴とする請求項7乃至10のいずれかに記載の情報漏洩抑止方法。
  12. 前記入力手段は、プリンタドライバのユーザインタフェースを用いて指示を入力することを特徴とする請求項7乃至11のいずれかに記載の情報漏洩抑止方法。
  13. 請求項7乃至12のいずれかに記載の情報漏洩抑止方法を実現するドライバプログラム。
  14. 請求項13に記載のドライバプログラムをコンピュータ読み取り可能に記憶する記憶媒体。
JP2005077615A 2005-03-17 2005-03-17 情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラム Expired - Fee Related JP4110147B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005077615A JP4110147B2 (ja) 2005-03-17 2005-03-17 情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラム
US11/372,267 US8319986B2 (en) 2005-03-17 2006-03-09 Method of protecting leakage of information and information processing apparatus and driver program implementing the same
CNB2006100650999A CN100371882C (zh) 2005-03-17 2006-03-16 抑制信息泄漏的方法和实现该方法的信息处理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005077615A JP4110147B2 (ja) 2005-03-17 2005-03-17 情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラム

Publications (2)

Publication Number Publication Date
JP2006260243A true JP2006260243A (ja) 2006-09-28
JP4110147B2 JP4110147B2 (ja) 2008-07-02

Family

ID=37002668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005077615A Expired - Fee Related JP4110147B2 (ja) 2005-03-17 2005-03-17 情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラム

Country Status (3)

Country Link
US (1) US8319986B2 (ja)
JP (1) JP4110147B2 (ja)
CN (1) CN100371882C (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014119800A (ja) * 2012-12-13 2014-06-30 Canon Inc 情報処理装置及びプログラム、制御方法
JP2015011488A (ja) * 2013-06-28 2015-01-19 株式会社スプラインネットワーク 印刷データ管理システム、情報処理装置、印刷データ取得プログラム、方法
US9300837B2 (en) 2013-03-13 2016-03-29 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium for identifiable information about print jobs

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008059299A (ja) * 2006-08-31 2008-03-13 Brother Ind Ltd 画像形成システム、画像形成制御方法、プログラム
US20080079286A1 (en) * 2006-09-29 2008-04-03 Sharp Laboratories Of America, Inc. Systems and methods for remotely configuring a remote interface to an imaging device
US20080137136A1 (en) * 2006-12-07 2008-06-12 Samsung Electronics Co., Ltd. Method to control printer driver and network print system employing the same
EP2278449A3 (en) * 2009-07-08 2013-02-20 Kabushiki Kaisha Toshiba Apparatus, method, system and storage medium for setting print status
JP6209312B2 (ja) 2011-03-18 2017-10-04 株式会社リコー 画像形成装置及び画像形成方法
JP2013126754A (ja) * 2011-11-16 2013-06-27 Canon Inc プリントシステム、画像形成装置、プリントサーバおよびその制御方法、並びにプログラム
JP6281528B2 (ja) * 2015-06-11 2018-02-21 京セラドキュメントソリューションズ株式会社 情報処理装置および情報処理プログラム
CN106886377A (zh) * 2015-12-15 2017-06-23 北京京航计算通讯研究所 涉密载体全生命周期打印控制方法及控制台
US11249950B2 (en) 2018-04-27 2022-02-15 Dropbox, Inc. Aggregated details displayed within file browser interface
US11112948B2 (en) * 2018-04-27 2021-09-07 Dropbox, Inc. Dynamic preview in a file browser interface
US11151086B2 (en) 2018-04-27 2021-10-19 Dropbox, Inc. Comment previews displayed in context within content item

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09258921A (ja) * 1996-03-22 1997-10-03 Ricoh Co Ltd 印刷装置
JP2001312396A (ja) * 2000-04-27 2001-11-09 Canon Inc 印刷制御装置及び方法及び印刷システム
JP2002149371A (ja) * 2000-11-13 2002-05-24 Ricoh Co Ltd 印刷ログ及び印刷データ保存によるセキュリティ管理システム
JP2003044337A (ja) * 2001-08-02 2003-02-14 Minolta Co Ltd ファイル管理プログラム、ファイル管理プログラムを記録したコンピュータ読取可能な記録媒体、およびファイル管理方法
JP2003127473A (ja) * 2001-10-23 2003-05-08 Ricoh Co Ltd 画像形成装置
JP2003330677A (ja) * 2002-05-14 2003-11-21 Ricoh Co Ltd 印刷データ管理システム、方法、プログラム、及び記録媒体
JP2003337728A (ja) * 2002-05-17 2003-11-28 Hitachi Ltd データファイル履歴管理方法およびその装置
JP2004302654A (ja) * 2003-03-28 2004-10-28 Seiko Epson Corp 印刷処理決定システム及び印刷処理決定プログラム並びに印刷処理決定方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5798766A (en) * 1995-10-20 1998-08-25 Fuji Xerox Co., Ltd. Drawing system
JP3673643B2 (ja) * 1997-07-30 2005-07-20 キヤノン株式会社 印刷レイアウト装置及び印刷レイアウト方法並びに記憶媒体
US7239405B2 (en) * 1998-03-02 2007-07-03 Minolta Co., Ltd. Image processing system for outputting scanned images in the specified sequences
JP2000253241A (ja) 1999-02-26 2000-09-14 Matsushita Electric Ind Co Ltd データ監視方法、およびデータ監視装置
US6807388B1 (en) * 1999-02-26 2004-10-19 Matsushita Electric Industrial Co., Ltd. Data monitoring method, data monitoring device, copying device, and storage medium
JP3673684B2 (ja) 1999-11-02 2005-07-20 キヤノン株式会社 情報処理装置、情報処理方法およびコンピュータ読み取り可能なプログラムを格納した記憶媒体
US7130070B2 (en) * 2001-01-17 2006-10-31 Sepialine Incorporated System and method for asynchronous tracking and quantifying of printing events
JP2003288327A (ja) 2002-03-27 2003-10-10 Canon Inc ネットワークデバイス、印刷装置及びネットワークデバイスの制御方法
JP2004118243A (ja) 2002-09-20 2004-04-15 Ricoh Co Ltd ネットワーク印刷システム
US7331052B2 (en) * 2002-10-15 2008-02-12 Sharp Laboratories Of America, Inc. Systems and methods for providing a universal print assist
JP2004272784A (ja) 2003-03-11 2004-09-30 Ntt Communications Kk 識別情報通知装置及び識別情報通知方法
JP2005084898A (ja) * 2003-09-08 2005-03-31 Brother Ind Ltd 印刷データ加工システム、および該システム用のプログラム
US7920281B2 (en) * 2004-06-21 2011-04-05 Sharp Laboratories Of America, Inc. Imaging job monitoring with reduced content image

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09258921A (ja) * 1996-03-22 1997-10-03 Ricoh Co Ltd 印刷装置
JP2001312396A (ja) * 2000-04-27 2001-11-09 Canon Inc 印刷制御装置及び方法及び印刷システム
JP2002149371A (ja) * 2000-11-13 2002-05-24 Ricoh Co Ltd 印刷ログ及び印刷データ保存によるセキュリティ管理システム
JP2003044337A (ja) * 2001-08-02 2003-02-14 Minolta Co Ltd ファイル管理プログラム、ファイル管理プログラムを記録したコンピュータ読取可能な記録媒体、およびファイル管理方法
JP2003127473A (ja) * 2001-10-23 2003-05-08 Ricoh Co Ltd 画像形成装置
JP2003330677A (ja) * 2002-05-14 2003-11-21 Ricoh Co Ltd 印刷データ管理システム、方法、プログラム、及び記録媒体
JP2003337728A (ja) * 2002-05-17 2003-11-28 Hitachi Ltd データファイル履歴管理方法およびその装置
JP2004302654A (ja) * 2003-03-28 2004-10-28 Seiko Epson Corp 印刷処理決定システム及び印刷処理決定プログラム並びに印刷処理決定方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014119800A (ja) * 2012-12-13 2014-06-30 Canon Inc 情報処理装置及びプログラム、制御方法
US9300837B2 (en) 2013-03-13 2016-03-29 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium for identifiable information about print jobs
JP2015011488A (ja) * 2013-06-28 2015-01-19 株式会社スプラインネットワーク 印刷データ管理システム、情報処理装置、印刷データ取得プログラム、方法

Also Published As

Publication number Publication date
US20060215202A1 (en) 2006-09-28
US8319986B2 (en) 2012-11-27
JP4110147B2 (ja) 2008-07-02
CN1834893A (zh) 2006-09-20
CN100371882C (zh) 2008-02-27

Similar Documents

Publication Publication Date Title
JP4110147B2 (ja) 情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラム
US6883981B2 (en) Printing control method and apparatus
US8775313B2 (en) Printing control method, apparatus and storage medium therefor, and printing system
JP4314052B2 (ja) 情報処理装置、印刷処理方法、及びプログラム
US8537438B2 (en) Information processing apparatus in which a plurality of types of print drivers and plurality of graphics units run, control method therefor, and program
EP2130116A1 (en) Print control device and method
KR20060058032A (ko) 정보 처리 장치, 인쇄 시스템 및 이를 위한 제어 방법
EP1662371B1 (en) Method of protecting leakage of information, and information processing apparatus and driver program which implement the method
US20090244585A1 (en) Information processing apparatus, control method therefor, and printer driver program
KR101496438B1 (ko) 인쇄제어장치, 화상형성장치 및 인쇄제어방법
US8081338B2 (en) Form processing apparatus and method
JP2004213072A (ja) 帳票データサーバおよびそれを用いた電子帳票システム
JP2005190426A (ja) データ処理方法及びデータ処理装置及びコンピュータプログラム
JP4143638B2 (ja) 印刷システム、情報処理装置、およびその制御方法、プログラム
JP2007125852A (ja) ネットワーク印刷システム
JP2009217352A (ja) 情報漏えい抑止印刷システム
JP4100912B2 (ja) 情報処理装置及びその制御方法、プログラム並びに記憶媒体
JP2004152108A (ja) 印刷システム
JP2008140031A (ja) 印刷制御システムおよび印刷制御プログラム、並びに印刷制御方法
JP2007164320A (ja) 情報処理装置、サーバ装置、印刷システム、データ処理方法、記憶媒体、プログラム
JP4751771B2 (ja) 情報処理装置、情報処理システム、プログラム及びその記録媒体
JP2015090667A (ja) 印刷制御装置、印刷制御装置のデータ処理方法、及びプログラム
JP2004213075A (ja) 帳票発行装置およびそれを用いた電子帳票システム
JP2008123345A (ja) 情報処理装置、情報処理方法およびプログラム、並びにそのプログラムを格納した記憶媒体
JP2007079743A (ja) 情報処理装置及びその制御方法、プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070817

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070824

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071023

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071116

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080116

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080122

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080324

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080407

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

Free format text: PAYMENT UNTIL: 20110411

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130411

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130411

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140411

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees