JP3733290B2 - 印刷制御装置および印刷制御方法および記憶媒体 - Google Patents
印刷制御装置および印刷制御方法および記憶媒体 Download PDFInfo
- Publication number
- JP3733290B2 JP3733290B2 JP2000401218A JP2000401218A JP3733290B2 JP 3733290 B2 JP3733290 B2 JP 3733290B2 JP 2000401218 A JP2000401218 A JP 2000401218A JP 2000401218 A JP2000401218 A JP 2000401218A JP 3733290 B2 JP3733290 B2 JP 3733290B2
- Authority
- JP
- Japan
- Prior art keywords
- conflict
- application
- conflict processing
- printing
- processing rule
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Description
【発明の属する技術分野】
本発明は、アプリケーションから印刷装置を制御する印刷処理関連プログラムに対して引き渡される異なる複数の設定値間のコンフリクト処理を実行する印刷制御装置および印刷制御方法および記憶媒体に関するものである。
【0002】
【従来の技術】
従来、コンピュータ上で動作するアプリケーションプログラムが、印刷を実行する場合には、印刷開始命令と共に、印刷に必要な各種設定をパラメータとして、プリンタドライバ等の印刷関連処理プログラムに引き渡すのが一般的な方法である。このように印刷に必要な各種設定をパラメータとしてプログラムよりプリンタドライバに渡すことで、プログラムが意図した印刷出力を得られるようになっている。
【0003】
【発明が解決しようとする課題】
しかしながら、意図した印刷出力を得るために指定可能な設定値の種類の範囲はいわゆるどのプリンタでもサポートが可能と思われる用紙の給紙口の指定や両面/片面印刷の指定等、非常に限られた範囲のものであり、プリンタまたはプリンタドライバが提供していても、アプリケーションプログラムより直接指定ができないその他の有用な機能については、プリンタドライバのユーザインタフェースを開いて、そこで指定をする必要があった。
【0004】
このため、企業の各種システムソフトウェアからの印刷出力に際して、プリンタドライバのユーザインタフェースを表示したがらないケースでは、プリンタまたはプリンタドライバの持つ機能が十分に利用できないという問題点があった。
【0005】
そのため、昨今ではプリンタまたはプリンタドライバをフルに生かせるように、プリンタやプリンタドライバへの機種に依存する設定についても、アプリケーションから利用可能な特別なインタフェースを設けて、このインタフェースを利用した場合には、プリンタドライバユーザインタフェースで設定する場合と同等な機能の設定が可能となるようなプリンタドライバが出現してきている。
【0006】
こうなると、このインタフェースを介したアプリケーションプログラムからの設定についても、プリンタドライバユーザインタフェースと同等のコンフリクト処理(複数の設定値間での設定の競合状態を解消して、いずれかの設定値の調整を行い、設定値間の整合性を取るための処理)を必要とするので、効率よく、漏れの少ない、そして、ユーザインタフェースで利用されているコンフリクト処理と同等のコンフリクト処理をユーザインタフェース以外の場面でも実現する必要が生じているわけである。
【0007】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、コンフリクト処理を、例えばコンフリクトマネージャなどプリンタドライバ側で実行し、該コンフリクト処理の結果をアプリケーションに通知できる印刷制御装置および印刷制御方法および記憶媒体を提供することである。
【0008】
本発明に係る第1の発明は、アプリケーションから印刷装置を制御するプリンタドライバに対して引き渡される、異なる複数の設定値間のコンフリクト処理を行なう印刷制御装置であって、前記プリンタドライバの2つ以上の設定値の間で成立する依存関係を示すコンフリクト処理ルールを記憶する記憶手段と、前記記憶手段に記憶されたコンフリクト処理ルールを読み込み、該読み込んだコンフリクト処理ルールに基づいて、補完的に成立するコンフリクト処理ルールを生成する生成手段と、前記プリンタドライバが有するコンフリクトマネージャプログラムを実行して、前記生成手段により生成されたコンフリクト処理ルールを用いて、前記印刷装置に対する印刷実行に必要な設定値の不整合を回避するコンフリクト処理を適用して当該設定値の変更を行なうコンフリクト処理手段と、前記コンフリクト処理手段によるコンフリクト処理の結果を、前記コンフリクトマネージャプログラムからアプリケーションに対して通知する通知手段とを備えることを特徴とする。
【0009】
本発明に係る第2の発明は、アプリケーションと、アプリケーションから入力される印刷実行に必要な設定値のコンフリクト処理を行なうコンフリクトマネージャプログラムを有するプリンタドライバを搭載した印刷制御装置において、アプリケーションから前記コンフリクトマネージャプログラムに対して印刷実行に必要な設定値を入力する入力手段と、前記入力手段が前記コンフリクトマネージャプログラムに対して入力した設定値の不整合を回避するコンフリクト処理ルールを適用するコンフリクト処理手段と、前記コンフリクト処理手段によるコンフリクト処理ルールの適用結果をコンフリクトマネージャプログラムから前記アプリケーションに対して通知する通知手段とを備えることを特徴とする。
【0010】
本発明に係る第3の発明は、前記コンフリクト処理手段がコンフリクト処理ルールを適用した結果を前記通知手段がアプリケーションへ通知した後、アプリケーションからの指示に基づく前記印刷に必要な設定値を取得する取得手段をさらに備えることを特徴とする。
【0011】
本発明に係る第4の発明は、前記アプリケーションは、前記通知手段から通知されてくるコンフリクト処理手段によるコンフリクト処理ルールの適用結果を取得して、当該処理内容に基づく設定を続行するか否かを確認する確認手段をさらに備えることを特徴とする。
【0012】
本発明に係る第5の発明は、前記コンフリクト処理手段は、コレート印刷を示す設定値とグループ印刷を示す設定値との競合、又は、ステープルを示す設定値と製本を示す設定値との競合のいずれかを回避するコンフリクト処理ルールを適用することを特徴とする。
【0013】
本発明に係る第6の発明は、前記通知手段は、前記アプリケーションが読み出し可能な記憶手段に対してコンフリクト処理ルールの適用結果を書き込むことにより、前記アプリケーションに対して当該適用結果を通知することを特徴とする。
【0014】
本発明に係る第7の発明は、前記コンフリクト処理ルールを補完するルールを生成する生成手段をさらに有することを特徴とする。
【0015】
本発明に係る第8の発明は、前記記憶手段から読み込んだコンフリクト処理ルールが保持する二値を取り得る状態変数において、逆側の関係にあるコンフリクト処理ルールを、補完的に成立するコンフリクト処理ルールとして前記生成手段が生成することを特徴とする。
【0016】
本発明に係る第9の発明は、前記記憶手段から読み込んだコンフリクト処理ルールが保持する状態変数の値と、前記生成手段が生成した補完的に成立するコンフリクト処理ルールが保持する状態変数の値とが、論理的に排他の関係にあることを特徴とする。
本発明に係る第10の発明は、アプリケーションと、プリンタドライバを搭載した印刷制御装置において、アプリケーションから前記プリンタドライバに対して印刷実行に必要な設定値を入力する入力手段と、アプリケーションから、前記入力手段により入力された設定値の不整合を回避するコンフリクト処理ルールを適用するコンフリクト処理手段と、前記コンフリクト処理手段によるコンフリクト処理ルールの適用結果を前記アプリケーションに対して通知する通知手段とを備えることを特徴とする。
本発明に係る第11の発明は、アプリケーションと、アプリケーションから入力される印刷実行に必要な設定値のコンフリクト処理を行なうコンフリクトマネージャプログラムを有するプリンタドライバを実行する印刷制御装置における方法おいて、アプリケーションから前記コンフリクトマネージャプログラムに対して印刷実行に必要な設定値を入力する入力ステップと、前記入力ステップが前記コンフリクトマネージャプログラムに対して入力した設定値の不整合を回避するコンフリクト処理ルールを適用するコンフリクト処理ステップと、前記コンフリクト処理ステップによるコンフリクト処理ルールの適用結果をコンフリクトマネージャプログラムから前記アプリケーションに対して通知する通知ステップとを印刷制御装置に実行させることを特徴とする。
本発明に係る第12の発明は、前記コンフリクト処理ステップがコンフリクト処理ルールを適用した結果を前記通知ステップがアプリケーションへ通知した後、アプリケーションからの指示に基づく前記印刷に必要な設定値を取得する取得ステップをさらに備えることを特徴とする。
本発明に係る第13の発明は、前記アプリケーションは、前記通知ステップから通知されてくるコンフリクト処理手段によるコンフリクト処理ルールの適用結果を取得して、当該処理内容に基づく設定を続行するか否かを確認する確認ステップをさらに備えることを特徴とする。
本発明に係る第14の発明は、前記コンフリクト処理ステップは、コレート印刷を示す設定値とグループ印刷を示す設定値との競合、又は、ステープルを示す設定値と製本を示す設定値との競合のいずれかを回避するコンフリクト処理ルールを適用することを特徴とする。
本発明に係る第15の発明は、前記通知ステップは、前記アプリケーションが読み出し可能な記憶手段に対してコンフリクト処理ルールの適用結果を書き込むことにより、前記アプリケーションに対して当該適用結果を通知することを特徴とする。
本発明に係る第16の発明は、前記コンフリクト処理ルールを補完するルールを生成する生成ステップをさらに有することを特徴とする。
本発明に係る第17の発明は、前記記憶手段から読み込んだコンフリクト処理ルールが保持する二値を取り得る状態変数において、逆側の関係にあるコンフリクト処理ルールを、補完的に成立するコンフリクト処理ルールとして前記生成ステップが生成することを特徴とする。
本発明に係る第18の発明は、前記記憶手段から読み込んだコンフリクト処理ルールが保持する状態変数の値と、前記生成ステップが生成した補完的に成立するコンフリクト処理ルールが保持する状態変数の値とが、論理的に排他の関係にあることを特徴とする。
本発明に係る第19の発明は、アプリケーションと、プリンタドライバを搭載した印刷制御装置における印刷制御方法において、アプリケーションから前記プリンタドライバに対して印刷実行に必要な設定値を入力する入力ステップと、アプリケーションから、前記入力ステップにより入力された設定値の不整合を回避するコンフリクト処理ルールを適用するコンフリクト処理ステップと、前記コンフリクト処理ステップによるコンフリクト処理ルールの適用結果を前記アプリケーションに対して通知する通知ステップとを備えることを特徴とする。
本発明に係る第20の発明は、第11または第19の発明の印刷制御方法をコンピュータに実行させるためのプログラムをコンピュータが読み取り可能な記憶媒体に格納したことを特徴とする。
【0017】
【発明の実施の形態】
図1は、本発明の第1実施形態を示す印刷制御装置を適用可能な印刷処理システムの構成を説明するブロック図である。
【0018】
なお、特に断らない限り、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、LAN,WAN等のネットワークを介して接続が為され処理が行われるシステムであっても本発明を適用できることは言うまでもない。
【0019】
図1において、3000はホストコンピュータで、ROM3のプログラム用ROMあるいは外部メモリ11に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表(表計算等を含む)等が混在した文書処理を実行するCPU1を備え、システムバス4に接続される各デバイスをCPU1が総括的に制御する。
【0020】
また、このROM3のプログラム用ROMあるいは外部メモリ11には、CPU1の制御プログラムであるオペレーティングシステムプログラム(以下OS)等を記憶し、ROM3のフォント用ROMあるいは外部メモリ11には上記文書処理の際に使用するフォントデータ等を記憶し、ROM3のデータ用ROMあるいは外部メモリ11には上記文書処理等を行う際に使用する各種データを記憶する。
【0021】
2はRAMで、CPU1の主メモリ、ワークエリア等として機能する。5はキーボードコントローラ(KBC)で、キーボード(KB)9や不図示のポインティングデバイスからのキー入力を制御する。
【0022】
6はCRTコントローラ(CRTC)で、CRTディスプレイ(CRT)10の表示を制御する。7はディスクコントローラ(DKC)で、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム(以下プリンタドライバ)等を記憶するハードディスク(HD)、フロッピーディスク(FD)等の外部メモリ11とのアクセスを制御する。
【0023】
8はプリンタコントローラ(PRTC)で、所定の双方向性インターフェース(インターフェース)21を介してプリンタ1500に接続されて、プリンタ1500との通信制御処理を実行する。なお、CPU1は、例えばRAM2上に設定された表示情報RAMへのアウトラインフォントの展開(ラスタライズ)処理を実行し、CRT10上でのWYSIWYGを可能としている。また、CPU1は、CRT10上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。
【0024】
プリンタ1500において、12はプリンタCPU(CPU)で、ROM13のプログラム用ROMに記憶された制御プログラム等あるいは外部メモリ14に記憶された制御プログラム等に基づいてシステムバス15に接続される印刷部(プリンタエンジン)17に出力情報としての画像信号を出力する。
【0025】
また、このROM13のプログラム用ROMには、CPU12の制御プログラム等を記憶する。ROM13のフォント用ROMには上記出力情報を生成する際に使用するフォントデータ等を記憶し、ROM13のデータ用ROMにはハードディスク等の外部メモリ14がないプリンタの場合には、ホストコンピュータ上で利用される情報等を記憶している。
【0026】
CPU12は入力部18を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ3000に通知可能に構成されている。
【0027】
19は前記CPU12の主メモリ、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。
【0028】
なお、RAM19は、出力情報展開領域、環境データ格納領域、NVRAM等に用いられる。前述したハードディスク(HD)、ICカードやフロッピーディスク(FD)等の外部メモリ14は、メモリコントローラ(DKC)20によりアクセスを制御される。外部メモリ14は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。
【0029】
また、1501はた操作パネルで、操作のためのスイッチおよびLED表示器等が配されている。また、前述した外部メモリは1個に限らず、少なくとも1個以上備え、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。さらに、図示しないNVRAMを有し、操作パネル1501からのプリンタモード設定情報を記憶するようにしてもよい。
【0030】
図2は、図1に示したRAM3のメモリマップの一例を示す図であり、本実施形態における印刷処理関連プログラムがホストコンピュータ3000上のRAM2にロードされ実行可能となった状態のメモリマップを示している。
【0031】
図2において、201はアプリケーションで、外部メモリ11からロードされたものであり、単数または複数のアプリケーションがロードされる。
【0032】
202は空きメモリで、CPU1のワークとして機能する。203は関連データで、アプリケーション201の実行に伴う各種の関連データがロードされる。
【0033】
204は印刷処理関連プログラムで、外部メモリ11からロードされる。205はOSで、アプリケーション201等の実行を制御する。206はBIOSで、各種のデバイスの入出力処理を規定する。
【0034】
図3は、図2に示した印刷処理関連プログラムにおけるコンフリクト処理制御部の内部処理の内容を説明するシステム概要図である。
【0035】
図3において、301はコンフリクト処理ルールで、コンフリクトマネージャ303により図1に示したRAM2上に読み込まれる。302は推論エンジンで、図3に例示してあるように表記されたコンフリクト処理ルール301をコンフリクトマネージャ303を介して、RAM2中に読み込んで補完ルールを生成する。
【0036】
304は状態変数リストで、各プリンタ機能名A,B,C(図4参照)が推論エンジン302により初期化される。コンフリクト処理ルール403の中に出現するプリンタ機能名A,B,Cのそれぞれについて同名の状態変数が存在する。
【0037】
305は内部構造体で、プリンタ機能名A,B,Cに対応するプリンタドライバ内部構造体401のメンバをそれぞれcA,cB,cCとして管理する。306はプリンタドライバ管理部で、コンフリクトマネージャ303を呼び出し、状態変数リスト304にあるLayoutの状態変数を更新する。307はアプリケーションである。
【0038】
図4は、本発明に係る印刷制御装置におけるコンフリクト処理における各モジュールで扱うデータの関連性を説明する図である。
【0039】
図4において、401はプリンタドライバの内部構造体で、図3に示したコンフリクトマネージャ303またはプリンタドライバ管理部306により読み出しあるいは書き込み可能に構成されている。402は状態変数リストで、図3に示した状態変数リストと同等であって、コンフリクトマネージャ303により読み出しあるいは書き込み可能に構成されている。なお、図中のRは読み出しを表し、Wは書き込みを表し、R/Wは読み出しあるいは書き込みを表す。
【0040】
図5は、本発明に係る印刷制御装置における補完処理前のコンフリクト処理ルールの例を示す図である。
【0041】
図5において、(1)〜(3)は補間処理前のコンフリクト処理ルール301の一例を示し、ルール(1)はプリンタドライバ内部構造体401のメンバとして存在するGroupに、ルール(2)はプリンタドライバ内部構造体401のメンバとして存在するStapleに、ルール(3)はプリンタドライバ内部構造体401のメンバとして存在するLayoutに対応する。
【0042】
図6は、本発明に係る印刷制御装置における補完処理後のコンフリクト処理ルールの例を示す図である。
【0043】
図6において、(1)〜(9)は補完処理後のコンフリクト処理ルール(ルール)であり、特に、ルール(6)〜(9)における_Aは推論エンジン302で使用される変数を示す。
【0044】
図7は、本発明に係る印刷制御装置における設定変更処理関数の一例を示す図であり、アプリケーションからプリンタドライバへ設定変更処理要求をする場合に利用する関数のインタフェース(I/F)の例である。
【0045】
図8は、本発明に係る印刷制御装置におけるデータ処理手順の一例を示すフローチャートであり、本実施形態におけるコンフリクト処理手順に対応する。なお、(501)〜(508)は各ステップを示す。
【0046】
先ず、本実施形態に示す印刷処理関連プログラム(いわゆるプリンタドライバ)の処理は、OS205管理の下で動作するアプリケーション201よりプリンタドライバの備える初期化処理が呼び出されると、OS205の管理の下、RAM2に図2に示した印刷処理関連プログラム204がロードされる。
【0047】
そして、印刷処理関連プログラム204がRAM2にロードされると、プリンタドライバ管理部306に備えられたプリンタドライバの初期化処理部が呼び出され、初期化処理が行われる。
【0048】
先ず、図3に示す推論エンジン302は、図5に例示してあるように表記されたコンフリクト処理ルール301をコンフリクトマネージャ303を介して、RAM2中に読み込む(501)。
【0049】
続いて、ステップ(501)で読み込んだコンフリクト処理ルール301を元に、2状態値(「ON」と「OFF」)を値として持つルールについては、補完ルールを生成する(502)。
【0050】
なお、同じプリンタ機能名について以下の例のように左辺に「ONまたはOFF」のどちらかだけが記述された場合、
A(ON)<-B(ON),C(OFF)……(1)
A(ON)<-D(V1). ……(2)
B(OFF)<-E(OFF). ……(3)
この場合には推論エンジン302がON/OFF逆側のルールを以下のように自動生成する。
【0051】
上記ルール(1),(2)に対しては、
A(OFF)<-not A(ON).……(4)
が生成され、上記(3)に対しては、
B(ON)<-not B(OFF).……(5)
が生成される。この自動生成されたルール(4),(5)は処理効率上最適化されて下記のルール(4)',(5) 'のように変形されるが、意味は全く同じとなる。
A(OFF)<-true. ……(4)'
B(ON)<-true. ……(5)'
なお、上記例のように逆側が自動生成された場合は、論理として考えた際に、A(ON)とA(OFF)は完全に排他な関系にある事を意味している。
【0052】
つまり、A(ON)とA(OFF)とでAについての集合空間が100%埋め尽くされる事を意味している。B(ON)とB(OFF)も同様である。
【0053】
ユーザがA(ON)とA(OFF)を混在して記述する場合にはルール(4),(4)’は自動生成されない。従って、この場合には全てのケースを網羅的に記述してAについての集合空間を100%埋め尽くすようにする必要がある。
【0054】
続いて、図4に示す状態変数リスト402とコンフリクト処理ルール403で使用されるプリンタ機能名の値の初期化に関するコンフリクト処理ルールを補完ルールとして自動生成する(ステップ503)。
【0055】
コンフリクト処理ルール403における全てのプリンタ機能名についてはコンフリクトマネージャ303の内部に、図4に示すような状態変数リスト402として、その状態変数を持っている。
【0056】
この状態変数の値はプリンタドライバで使用される内部構造体の対応するメンバの値と連動している。全てのプリンタ機能名の状態変数の初期値はその内部構造体305のメンバの値が初期値となる。
例えば以下のコンフリクト処理ルールを記述した場合、「A(ON)<-B(ON),C(OFF).」は、図4に示した状態変数リスト402に示すようにコンフリクト処理ルール403の中に出現するプリンタ機能名A,B,Cのそれぞれについて同名の状態変数が存在している。
【0057】
プリンタ機能名A,B,Cに対応するプリンタドライバ内部構造体401のメンバをそれぞれcA,cB,cCとする。
【0058】
なお、int cAの初期値は「0」なので、それに対応する状態変数Aの値は「OFF」となっている。
【0059】
従って、推論エンジン302内のプリンタ機能名Aの状態値の初期値もOFFとなっている。
【0060】
今、推論エンジン302でコンフリクトチェックの推論が行われて以下のルール「A(ON)<-B(ON),C(OFF).」が成立した場合、推論エンジン302は左辺のプリンタ機能名Aの状態変数値を「ON」に変更する。
【0061】
コンフリクトチェックの推論が終了した後、コンフリクトマネージャ303は変更された状態変数の値をプリンタドライバ内部構造体401の対応するメンバint cAに反映させる。
【0062】
つまり、int cAは上記ルールが成立した事によって「0」から「1」に変更される。
【0063】
推論エンジン302は、推論エンジンに組込まれている組込み関数status(a,_X)によってプリンタ機能名Aの状態変数値を推論エンジン302で使用される変数_Xに受ける事ができる。推論エンジン302は、コンフリクト処理ルールをロードした後、そのコンフリクト処理ルール中に出現する全てのルール名について、次のルールを自動的に生成する。
A(_X)<-status(A,_X).
B(_X)<-status(B,_X).
C(_X)<-status(C,_X).
これは他に適用するルールが存在しない場合には、プリンタドライバ内部構造体401の対応するメンバの値がそのプリンタ機能名の状態値となる事を意味する。
【0064】
プリンタ機能名Aについては、ルール「A(ON)<-B(ON),C(OFF).が成り立つのでプリンタ機能名Aの状態値はこれを受けて[ON]となる。プリンタ機能名Bがもし上記自動生成されたルール以外にルールが存在しないならば、ルール「B(_X)<-status(B,_X).が適用される。この自動生成ルールは必ず成り立つので、プリンタ機種名Bの状態変数の値「ON」が「_X」にユニファイされ、それがプリンタ機種名Bの状態値となる。
【0065】
つまり、ユーザ定義ルールが存在しないか、または存在していても成り立つものが無いプリンタ機能については、プリンタドライバ内部構造体401の対応するメンバに格納されている値がそのプリンタ機能の状態値という事になる。
【0066】
続いて、その他の初期化処理を行い、処理化処理を終了しアプリケーションに制御を戻す(ステップ504)。
【0067】
初期化処理終了後は、プリンタドライバ管理部306に備えられている図7に示す設定変更処理関数を呼び出してのアプリケーションからの設定変更処理を繰り返す(ステップ505〜507)。
【0068】
この関数で用いられている引数の中で、特に設定変更処理に関わるパラメータは、pDevModeInOutputと、pItemParam,dwItemIDである。それぞれのパラメータには以下のような情報がセットされる。
【0069】
パラメータdwItemIDには、変更を行いたいのはプリンタドライバ内部構造体401のどのメンバなのかを指定する。パラメータpItemParamには、パラメータdwItemIDで示したメンバのパラメータを指定する。また、パラメータpDevModeInOutputには、プリンタドライバ内部構造体401へのポインタを指定する。
【0070】
例えば、アプリケーションからの設定変更要求がPrint Styleを1−sided PrintinngからBooklet Printinngに変更するものであった場合を例にとると、上記の各々のパラメータには、
パラメータdwItemIDには、「DM_ITEM_LAYOUT」が、パラメータpItemParamには、「DM_PARAM_BOOKLET」が、パラメータpDevModeInOutputには、「pDevMode」がセットされた上で、DocumentPropertiesEx()が呼び出される。
【0071】
すると、図5のステップ(505)〜(507)に示すプリンタドライバの設定変更処理が開始されることとなる。
【0072】
まず、ステップ(505)で実行されるコンフリクト処理ルールの適用について説明する。
【0073】
上記の例を用いて説明すると、コンフリクト処理ルールの適用は、図5に示すコンフリクト処理ルール301の一部として読み込まれたルールと、ステップ(502)にて生成された補完ルールの一部である図6に示した(4),(5)とステップ(503)にて生成されたルールの一部である図6に示した(6)〜(9)に対して行われる。
【0074】
プリンタドライバ内部構造体401のメンバとして存在するCollate,Group,Staple,Layoutの各メンバのコンフリクト処理ルール適用前の値は、Collateは「OFF」で、Groupが「ON」で、Stapleが「OFF」で、Layoutが「1−Side」となる。
【0075】
そして、アプリケーションからの変更要求がLayoutをLayoutからBookletに変更するものであるので、Layoutのメンバの内容は、Collateは「OFF」で、Groupが「ON」で、Stapleが「OFF」で、Layoutが「Booklet」となる。
【0076】
次に、プリンタドライバ管理部306はコンフリクトマネージャ303を呼び出し、状態変数リスト304にあるLayoutの状態変数が更新され、続いて、推論エンジン302がコールされて、コンフリクト処理ルール301の適用が始まる。
【0077】
まず、図6に示したルール(6)〜(9)が適用され、推論エンジン302内の各プリンタ機能名が状態変数リスト302の各メンバの持つ値で初期化される。続いて、図6に示したルール(3)が適用され、Groupの値は「ON」から「OFF」へと変化する。
【0078】
これにより、Layoutのメンバの内容は、Collateは「OFF」で、Groupが「OFF」で、Stapleが「OFF」で、Layoutが「Booklet」となる。
【0079】
さらに、図6に示すルール(4)が適用され、Collateは「OFF」から「ON」へと変化する。
【0080】
これにより、Layoutのメンバの内容は、Collateは「ON」で、Groupが「OFF」で、Stapleが[OFF」で、Layoutが「Booklet」となる。
【0081】
他に、適用されるルールが存在しないので、以上で推論エンジン302でのコンフリクト処理ルールの適用が終了する。
【0082】
次のステップでは、コンフリクトマネージャ303が上記の最終状態を元に状態変数リスト304の更新(ステップ506)と、プリンタドライバ内部構造体の更新(ステップ507)を行う。
【0083】
本来であればアプリケーション自身の手により、このLayoutの設定関連するメンバであるGroupとCollateのメンバの値を調整する必要があるが、DocumentPropetitesExを利用することで、この例の場合、アプリケーションは、Layoutを「1−Side」から「Booklet」に変更する処理をプリンタドライバに依頼することによって、Groupが「ON」から「OFF」に、Collateが「OFF」から「ON」に更新されたプリンタドライバ内部構造体301を受け取ることができる。
【0084】
この後、ここで取得したプリンタドライバ内部構造体301をパラメータとして実際の印刷を開始すれば、アプリケーションが所望する印刷結果が簡便に得られることとなる。
【0085】
以上の処理は、アプリケーションによってプリンタドライバ管理部306に備えられた終了処理が呼び出されるまで、繰り返し実行される。アプリケーションよりプリンタドライバの終了処理が呼び出されると空きメモリ202に生成したコンフリクト処理ルール情報等を消去すると共にその他の終了処理を行う(ステップ508)。
【0086】
これにより処理は全て終了し、本実施形態における印刷処理関連プログラム204の処理も終了し、RAM2からはOS205の機能により消去される。
【0087】
なお、本実施形態においては、本印刷処理関連プログラム204を記録する媒体を外部メモリとしているが、外部メモリとしては、FD、HDドライブ、CD−ROMやICメモリカード等であってもよい。更に、本印刷プログラム単独、もしくはOSその他のホストコンピュータ上で動作するプログラムと共にROM3に記録しておき、これをメモリマップの一部となすように構成し、直接CPU1で実行することも可能である。
【0088】
〔第2実施形態〕
上記第1実施形態においては、プリンタドライバ内部構造体401の設定内容をコンフリクト処理を実施することで、自動的に最適な値に更新することとなるが、さらに、図9、図10に示すとおり、コンフリクトマネージャ303にコンフリクト処理結果リスト901を加え、状態変数リスト402が更新されるのと同時に、その中に状態変数の変更履歴を書きこむことで、コンフリクト処理を実行することにより、プリンタドライバ内部構造体のどのメンバが更新されたのかをアプリケーションが知ることができるようになる。
【0089】
図9は、本発明の第2実施形態を示す印刷制御装置におけるコンフリクト処理制御部の内部処理の内容を説明するシステム概要図であり、図3と同一のものには同一の符号を付してある。
【0090】
図10は、本発明に係る印刷制御装置におけるコンフリクト処理における各モジュールで扱うデータの関連性を説明する図であり、図4と同一のものには同一の符号を付してある。
【0091】
図11は、本発明に係る印刷制御装置における他の設定変更処理関数の一例を示す図である。
【0092】
図9に示すコンフリクト処理結果リストの例は、プリンタドライバ内部構造体401のメンバの内、コンフリクト処理ルールにて更新がされたメンバは1個ということが、ResultNumに保存され、そして、更新されたメンバのリストが後続のModified[]に保存され、この場合はResultNumが1であるので、リスト内のメンバも1つで、ID_ca、すなわち、プリンタドライバ内部構造体401のcAが更新されたことを表現している。
【0093】
アプリケーション307は、このコンフリクト処理結果リストへのポインタを図11に示すDocumePropertiesEx関数の戻り値として受け取ることで、その情報にアクセスできるようになる。
【0094】
上記実施形態を例にとれば、コンフリクト処理結果リスト901の内容としては、ID_GruopとID_Collateが含まれる。アプリケーション307は、このコンフリクト処理結果リスト901の内容を確認して、実際にその値が格納されているプリンタドライバ内部構造体401の該当するメンバ、Group,Collateの内容を確認し、その設定内容がアプリケーション307が望まない設定変更で合った場合には、Layoutを「1−Side」から「Booklet」への設定の変更を取り消すことも可能である。
【0095】
上記各実施形態によれば、プログラム開発者などが用意するコンフリクト条件を補完するコンフリクト条件を自動生成するので、より品質の高いコンフリクト処理を実現できる。
【0096】
さらに、コンフリクト処理が実行されることによって、設定が変更されたかどうかの情報を各設定値について取得できるので、この情報に基づいた処理、例えば、他の設定項目に影響を与える元となった設定変更の取り消しやユーザへのメッセージ出力等を容易に実装できる。
【0097】
以下、図12に示すメモリマップを参照して本発明に係る印刷制御装置を適用可能な印刷システムで読み出し可能なデータ処理プログラムの構成について説明する。
【0098】
図12は、本発明に係る印刷制御装置を適用可能な印刷システムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【0099】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【0100】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【0101】
本実施形態における図8に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0102】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0103】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0104】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROM,EEPROM等を用いることができる。
【0105】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0106】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0107】
【発明の効果】
以上説明したように、本発明によれば、コンフリクト処理を、例えばコンフリクトマネージャなどプリンタドライバ側で実行し、該コンフリクト処理の結果をアプリケーションに通知できる。
【図面の簡単な説明】
【図1】本発明の第1実施形態を示す印刷制御装置を適用可能な印刷処理システムの構成を説明するブロック図である。
【図2】図1に示したRAMのメモリマップの一例を示す図である。
【図3】図2に示した印刷処理関連プログラムにおけるコンフリクト処理制御部の内部処理の内容を説明するシステム概要図である。
【図4】本発明に係る印刷制御装置におけるコンフリクト処理における各モジュールで扱うデータの関連性を説明する図である。
【図5】本発明に係る印刷制御装置における補完処理前のコンフリクト処理ルールの例を示す図である。
【図6】本発明に係る印刷制御装置における補完処理後のコンフリクト処理ルールの例を示す図である。
【図7】本発明に係る印刷制御装置における設定変更処理関数の一例を示す図である。
【図8】本発明に係る印刷制御装置におけるデータ処理手順の一例を示すフローチャートである。
【図9】本発明の第2実施形態を示す印刷制御装置におけるコンフリクト処理制御部の内部処理の内容を説明するシステム概要図である。
【図10】本発明に係る印刷制御装置におけるコンフリクト処理における各モジュールで扱うデータの関連性を説明する図である。
【図11】本発明に係る印刷制御装置における他の設定変更処理関数の一例を示す図である。
【図12】本発明に係る印刷制御装置を適用可能な印刷システムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
1 CPU
2 RAM
3 ROM
4 システムバス
12 CPU
13 ROM
19 RAM
3000 ホストコンピュータ
Claims (20)
- アプリケーションから印刷装置を制御するプリンタドライバに対して引き渡される、異なる複数の設定値間のコンフリクト処理を行なう印刷制御装置であって、
前記プリンタドライバの2つ以上の設定値の間で成立する依存関係を示すコンフリクト処理ルールを記憶する記憶手段と、
前記記憶手段に記憶されたコンフリクト処理ルールを読み込み、該読み込んだコンフリクト処理ルールに基づいて、補完的に成立するコンフリクト処理ルールを生成する生成手段と、
前記プリンタドライバが有するコンフリクトマネージャプログラムを実行して、前記生成手段により生成されたコンフリクト処理ルールを用いて、前記印刷装置に対する印刷実行に必要な設定値の不整合を回避するコンフリクト処理を適用して当該設定値の変更を行なうコンフリクト処理手段と、
前記コンフリクト処理手段によるコンフリクト処理の結果を、前記コンフリクトマネージャプログラムからアプリケーションに対して通知する通知手段と、
を備えることを特徴とする印刷制御装置。 - アプリケーションと、アプリケーションから入力される印刷実行に必要な設定値のコンフリクト処理を行なうコンフリクトマネージャプログラムを有するプリンタドライバを搭載した印刷制御装置において、
アプリケーションから前記コンフリクトマネージャプログラムに対して印刷実行に必要な設定値を入力する入力手段と、
前記入力手段が前記コンフリクトマネージャプログラムに対して入力した設定値の不整合を回避するコンフリクト処理ルールを適用するコンフリクト処理手段と、
前記コンフリクト処理手段によるコンフリクト処理ルールの適用結果をコンフリクトマネージャプログラムから前記アプリケーションに対して通知する通知手段と、
を備えることを特徴とする印刷制御装置。 - 前記コンフリクト処理手段がコンフリクト処理ルールを適用した結果を前記通知手段がアプリケーションへ通知した後、アプリケーションからの指示に基づく前記印刷に必要な設定値を取得する取得手段をさらに備えることを特徴とする請求項2に記載の印刷制御装置。
- 前記アプリケーションは、前記通知手段から通知されてくるコンフリクト処理手段によるコンフリクト処理ルールの適用結果を取得して、当該処理内容に基づく設定を続行するか否かを確認する確認手段をさらに備えることを特徴とする請求項2又は3に記載の印刷制御装置。
- 前記コンフリクト処理手段は、コレート印刷を示す設定値とグループ印刷を示す設定値との競合、又は、ステープルを示す設定値と製本を示す設定値との競合のいずれかを回避するコンフリクト処理ルールを適用することを特徴とする請求項1、又は、2乃至4のいずれかに記載の印刷制御装置。
- 前記通知手段は、前記アプリケーションが読み出し可能な記憶手段に対してコンフリクト処理ルールの適用結果を書き込むことにより、前記アプリケーションに対して当該適用結果を通知することを特徴とする請求項2乃至5のいずれかに記載の印刷制御装置。
- 前記コンフリクト処理ルールを補完するルールを生成する生成手段をさらに有することを特徴とする請求項2乃至6のいずれかに記載の印刷制御装置。
- 前記記憶手段から読み込んだコンフリクト処理ルールが保持する二値を取り得る状態変数において、逆側の関係にあるコンフリクト処理ルールを、補完的に成立するコンフリクト処理ルールとして前記生成手段が生成することを特徴とする請求項2又は7に記載の印刷制御装置。
- 前記記憶手段から読み込んだコンフリクト処理ルールが保持する状態変数の値と、前記生成手段が生成した補完的に成立するコンフリクト処理ルールが保持す る状態変数の値とが、論理的に排他の関係にあることを特徴とする請求項2又は7に記載の印刷制御装置。
- アプリケーションと、プリンタドライバを搭載した印刷制御装置において、
アプリケーションから前記プリンタドライバに対して印刷実行に必要な設定値を入力する入力手段と、
アプリケーションから、前記入力手段により入力された設定値の不整合を回避するコンフリクト処理ルールを適用するコンフリクト処理手段と、
前記コンフリクト処理手段によるコンフリクト処理ルールの適用結果を前記アプリケーションに対して通知する通知手段と、
を備えることを特徴とする印刷制御装置。 - アプリケーションと、アプリケーションから入力される印刷実行に必要な設定値のコンフリクト処理を行なうコンフリクトマネージャプログラムを有するプリンタドライバを実行する印刷制御装置における方法おいて、
アプリケーションから前記コンフリクトマネージャプログラムに対して印刷実行に必要な設定値を入力する入力ステップと、
前記入力ステップが前記コンフリクトマネージャプログラムに対して入力した設定値の不整合を回避するコンフリクト処理ルールを適用するコンフリクト処理ステップと、
前記コンフリクト処理ステップによるコンフリクト処理ルールの適用結果をコンフリクトマネージャプログラムから前記アプリケーションに対して通知する通知ステップと、
を印刷制御装置に実行させることを特徴とする印刷制御方法。 - 前記コンフリクト処理ステップがコンフリクト処理ルールを適用した結果を前記通知ステップがアプリケーションへ通知した後、アプリケーションからの指示に基づく前記印刷に必要な設定値を取得する取得ステップをさらに備えることを特徴とする請求項9に記載の印刷制御方法。
- 前記アプリケーションは、前記通知ステップから通知されてくるコンフリクト処理手段によるコンフリクト処理ルールの適用結果を取得して、当該処理内容に基づく設定を続行するか否かを確認する確認ステップをさらに備えることを特徴とする請求項11又は12に記載の印刷制御方法。
- 前記コンフリクト処理ステップは、コレート印刷を示す設定値とグループ印刷を示す設定値との競合、又は、ステープルを示す設定値と製本を示す設定値との競合のいずれかを回避するコンフリクト処理ルールを適用することを特徴とする請求項10乃至13のいずれかに記載の印刷制御方法。
- 前記通知ステップは、前記アプリケーションが読み出し可能な記憶手段に対してコンフリクト処理ルールの適用結果を書き込むことにより、前記アプリケーションに対して当該適用結果を通知することを特徴とする請求項11乃至14のいずれかに記載の印刷制御方法。
- 前記コンフリクト処理ルールを補完するルールを生成する生成ステップをさらに有することを特徴とする請求項11乃至15のいずれかに記載の印刷制御方法。
- 前記記憶手段から読み込んだコンフリクト処理ルールが保持する二値を取り得る状態変数において、逆側の関係にあるコンフリクト処理ルールを、補完的に成立するコンフリクト処理ルールとして前記生成ステップが生成することを特徴とする請求項11又は16に記載の印刷制御方法。
- 前記記憶手段から読み込んだコンフリクト処理ルールが保持する状態変数の値と、前記生成ステップが生成した補完的に成立するコンフリクト処理ルールが保持する状態変数の値とが、論理的に排他の関係にあることを特徴とする請求項11又は17に記載の印刷制御方法。
- アプリケーションと、プリンタドライバを搭載した印刷制御装置における印刷制御方法において、
アプリケーションから前記プリンタドライバに対して印刷実行に必要な設定値を入力する入力ステップと、
アプリケーションから、前記入力ステップにより入力された設定値の不整合を回避するコンフリクト処理ルールを適用するコンフリクト処理ステップと、
前記コンフリクト処理ステップによるコンフリクト処理ルールの適用結果を前記アプリケーションに対して通知する通知ステップと、
を備えることを特徴とする印刷制御方法。 - 請求項11または19に記載の印刷制御方法をコンピュータに実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000401218A JP3733290B2 (ja) | 2000-12-28 | 2000-12-28 | 印刷制御装置および印刷制御方法および記憶媒体 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000401218A JP3733290B2 (ja) | 2000-12-28 | 2000-12-28 | 印刷制御装置および印刷制御方法および記憶媒体 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2002202865A JP2002202865A (ja) | 2002-07-19 |
| JP3733290B2 true JP3733290B2 (ja) | 2006-01-11 |
Family
ID=18865692
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000401218A Expired - Fee Related JP3733290B2 (ja) | 2000-12-28 | 2000-12-28 | 印刷制御装置および印刷制御方法および記憶媒体 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3733290B2 (ja) |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3697176B2 (ja) * | 2001-04-27 | 2005-09-21 | キヤノン株式会社 | ユーザインタフェース制御装置および方法 |
| JP4350565B2 (ja) | 2003-03-27 | 2009-10-21 | キヤノン株式会社 | 情報処理装置および方法 |
| JP4481800B2 (ja) * | 2003-12-02 | 2010-06-16 | キヤノン株式会社 | 情報処理装置、情報処理方法及びプログラム |
| CN100380309C (zh) * | 2004-11-15 | 2008-04-09 | 佳能株式会社 | 数据处理装置、打印设定处理方法 |
| JP2006164240A (ja) | 2004-11-15 | 2006-06-22 | Canon Inc | データ処理装置および印刷設定処理方法およびコンピュータが読み取り可能な制御プログラムを格納した記憶媒体および制御プログラム |
| JP4661465B2 (ja) * | 2005-09-06 | 2011-03-30 | 富士ゼロックス株式会社 | 制御装置 |
| JP5294639B2 (ja) | 2008-01-08 | 2013-09-18 | キヤノン株式会社 | 情報処理装置、印刷設定制御方法、及びコンピュータプログラム |
-
2000
- 2000-12-28 JP JP2000401218A patent/JP3733290B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2002202865A (ja) | 2002-07-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7228314B2 (en) | Apparatus and method for controlling user interface | |
| US6965953B2 (en) | Information processing apparatus, method for controlling information processing apparatus, and storage medium storing program for realizing the method | |
| US8804172B2 (en) | Non-transitory computer readable recording medium stored with printer driver updating program and printer driver updating method | |
| KR101101101B1 (ko) | 정보 처리 장치 및 정보 처리 방법 | |
| JP4350565B2 (ja) | 情報処理装置および方法 | |
| US20020161936A1 (en) | User interface control apparatus and method | |
| US20030234952A1 (en) | Information processing apparatus | |
| JP4438064B2 (ja) | データ処理装置および印刷設定処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム | |
| US20050165979A1 (en) | Peripheral device control method, control program, and apparatus therefor | |
| KR20090101767A (ko) | 필터를 동적으로 호출 가능한 인쇄방법, 상기 인쇄방법을수행할 수 있는 프로그램이 수록된 기록매체 및 호스트장치 | |
| KR20050053323A (ko) | 정보처리장치, 인쇄제어방법 및 프로그램 | |
| US7817294B2 (en) | Data processing apparatus, print setting processing method, storing medium storing computer-readable program therein, and program | |
| US20060103867A1 (en) | Data processing apparatus, print setting adjusting method, recording medium storing computer-readable program therein, and program | |
| JP5025684B2 (ja) | 制御装置及び方法、並びにプログラム | |
| JP2002202865A (ja) | 印刷制御装置および印刷制御方法および記憶媒体 | |
| JP4366027B2 (ja) | ユーザインタフェース制御装置および方法 | |
| JP5062932B2 (ja) | ユーザインタフェース制御装置及び方法及びコンピュータプログラム及び記憶媒体 | |
| JP2006164253A (ja) | データ処理装置および設定処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体および制御プログラム | |
| JP3833067B2 (ja) | ユーザインタフェース制御装置および方法ならびに記憶媒体 | |
| JP5106660B2 (ja) | 制御装置及び方法、並びにプログラム | |
| JP3817500B2 (ja) | 情報処理装置、制御方法、制御プログラム | |
| JP3817499B2 (ja) | 情報処理装置、制御方法、制御プログラム | |
| US20060101448A1 (en) | Printing device | |
| JP4522398B2 (ja) | ユーザインタフェース制御装置および方法 | |
| JP2007207003A (ja) | 情報処理装置、ドライバ設定方法、記憶媒体、プログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20031210 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050513 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050524 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050725 |
|
| 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: 20051011 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051017 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 3733290 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091021 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091021 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101021 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101021 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111021 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111021 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121021 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131021 Year of fee payment: 8 |
|
| LAPS | Cancellation because of no payment of annual fees |