(57)【要約】【課題】  汎用のファイル転送プロトコルＦＴＰのプロトコルおよびコマンド体系を用いてネットワークプリンタを実現する。【解決手段】  パスワードファイル１８はユーザ名と動作モードとを対応させたファイルである。動作モードとはファイル転送モードと出力処理モードである。出力処理モードが動作モードとして対応付けられたユーザ名がクライアント３から入力されると、そのジョブの作画データは出力処理モードにより処理される。したがって、ＦＴＰを利用して転送された作画データが、プリンタ内部の切替えのみで印字出力処理用データとして処理される。こうして、クライアント側は単にファイル転送をイメージして転送処理を実行すれば、プリンタ側で転送された作画データをプリント用データとして認識して処理を行うことができる。【選択図】        図１
2005322272.tif 000002
【特許請求の範囲】
【請求項１】
作画データの記憶装置を有し、ネットワークで接続されたクライアントマシンからファイル転送用アプリケーションプロトコル機能で使用されるコマンドを利用して直接転送されて前記記憶装置に記憶された作画データを解釈して印字データを作成し、該印字データを印字するように構成されたプリンタ装置において、
前記ファイル転送用アプリケーションプロトコル機能で使用されるコマンドを、該プリンタ装置に適用して、該プリンタ装置の状態を表示する機能として解釈する解釈手段と、
前記解釈手段で解釈された機能に従ってクライアントマシンからの指示を処理する処理手段とを有することを特徴とするプリンタ装置。
【請求項２】
作画データの記憶装置を有し、ネットワークで接続されたクライアントマシンからファイル転送用アプリケーションプロトコル機能で使用されるコマンドを利用して直接転送されて前記記憶装置に記憶された作画データを解釈して印字データを作成し、該印字データを印字するように構成されたプリンタ装置において、
前記ファイル転送用アプリケーションプロトコル機能で使用されるコマンドを、該プリンタ装置に適用して、該プリンタ装置における出力処理方式を設定する機能として解釈する解釈手段と、
前記解釈手段で解釈された機能に従ってクライアントマシンからの指示を処理する処理手段とを有することを特徴とするプリンタ装置。
【請求項３】
作画データの記憶装置を有し、ネットワークで接続されたクライアントマシンからファイル転送用アプリケーションプロトコル機能で使用されるコマンドを利用して直接転送されて前記記憶装置に記憶された作画データを解釈して印字データを作成し、該印字データを印字するように構成されたプリンタ装置において、
前記ファイル転送用アプリケーションプロトコル機能で使用されるコマンドを、該プリンタ装置に適用して、該プリンタ装置における出力処理方式の内容を表示する機能として解釈する解釈手段と、
前記解釈手段で解釈された機能に従ってクライアントマシンからの指示を処理する処理手段とを有することを特徴とするプリンタ装置。
【請求項４】
作画データの記憶装置を有し、ネットワークで接続されたクライアントマシンからファイル転送用アプリケーションプロトコル機能で使用されるコマンドを利用して直接転送されて前記記憶装置に記憶された作画データを解釈して印字データを作成し、該印字データを印字するように構成されたプリンタ装置において、
前記ファイル転送用アプリケーションプロトコル機能で使用されるコマンド「ＣＣ」を、該プリンタ装置に適用して、該プリンタ装置における作画データの出力枚数指定機能として解釈する解釈手段と、
前記解釈手段で解釈された機能に従って作画データの出力枚数を印字部に設定する印字枚数設定手段とを有することを特徴とするプリンタ装置。
【請求項５】
ネットワークで接続されたクライアントマシンと、該クライアントマシンからファイル転送用アプリケーションプロトコル機能で使用されるコマンドを利用して、直接転送された作画データを解釈して作成された印字データを印字するプリンタ装置とからなるプリンタシステムにおいて、
前記プリンタ装置が、ファイル転送用アプリケーションプロトコル機能で使用される所定のコマンドを該コマンドに対応する予定機能に読み替えて、該機能に対応する処理を行うように構成されたことを特徴とするプリンタシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はプリンタ装置およびプリンタシステムに関し、特に、複数のホストコンピュータ等の上位装置から直接供給された作画データおよび制御情報に従って印字を行う際に、汎用のアプリケーションプロトコルを使用することができるプリンタ装置およびプリンタシステムに関する。
【背景技術】
【０００２】
ＬＡＮ等のネットワーク接続においては、業界標準となっているプロトコル群ＴＣＰ／ＩＰが使用され、例えば、遠隔の出力装置つまりプリンタ装置にクライアントマシン（以下「クライアント」という）から作画データを送信する場合には、アプリケーションプロトコルとしてｌｐｒが使用されることがある。
【０００３】
一方、各クライアント間でのデータ転送には、アプリケーションプロトコルとしてＦＴＰつまりファイル転送用アプリケーションプロトコルが一般に使用されている。前記ｌｐｒは主としてワークステーションに搭載されており、大型コンピュータやパーソナルコンピュータには、このｌｐｒが搭載されているものが少ない。これに対して、ＦＴＰを搭載しているクライアントは多く、いわゆるサポート率が極めて高い。そこで、この汎用性のあるＦＴＰを使用して作画データをプリンタ装置に転送することが考えられている。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところが、ＦＴＰを使用して作画データをプリンタ装置に転送し、印字を行う場合、次の問題点がある。まず、ＦＴＰは、ハードディスク間のファイル転送を本来の目的とするプロトコルであるため、送信側から受信側のハードディスクに転送されたデータを、出力装置に出力するためには、専用の出力処理アプリケーションを別途必要とする。
【０００５】
また、前記出力処理アプリケーションを準備した場合にも、サーバ側つまり処理の要求を受けた側のデーモンであるｆｔｐｄは、前記出力処理アプリケーションとは別に単独で動作するため、該出力処理アプリケーションでは、ファイル転送終了等を検知する手段がない。そのために、例えば、ハードディスクのファイルサイズの増減を監視し、この増減がない場合にファイル転送終了であるとみなすという処理が考えられていたが、処理が複雑化して確実性に欠けるという問題点があった。
【０００６】
また、ＦＴＰは、ファイル転送のみを目的としていて、プリンタ装置に出力するという概念がない。したがって、例えば、印字の際の線の太さの決定や日付の表示の有無等、作画データの出力方式を予め設定されているものから変更することは困難であり、実データに予め記述しておく以外に手段がなかった。
【０００７】
さらに、プリンタ装置でＦＴＰおよびｌｐｒの双方を採用している場合、作画データを一本化して管理することができないという問題点があった。
【０００８】
本発明は、上記問題点を解消し、ネットワーク接続の中で業界標準となっているプロトコル群ＴＣＰ／ＩＰにおけるサポート率の高いＦＴＰを用いて作画データを受信し、印字出力することができるプリンタ装置およびプリンタシステムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決し、目的を達成するための本発明は、作画データの記憶装置を有し、ネットワークで接続されたクライアントマシンからファイル転送用アプリケーションプロトコル機能で使用されるコマンドを利用して直接転送されて前記記憶装置に記憶された作画データを解釈して印字データを作成し、該印字データを印字するように構成されたプリンタ装置であって、特に、次の特徴を有する。
【００１０】
第１に、前記ファイル転送用アプリケーションプロトコル機能で使用されるコマンドを、該プリンタ装置に適用して、該プリンタ装置の状態を表示する機能として解釈する解釈手段を有するとともに、該解釈手段で解釈された機能に従ってクライアントマシンからの指示を処理する処理手段を有する点に特徴がある。
【００１１】
第２に、前記ファイル転送用アプリケーションプロトコル機能で使用されるコマンドを、該プリンタ装置に適用して、該プリンタ装置における出力処理方式を設定、又は、出力処理方式の内容を表示する機能として解釈する解釈手段を有するとともに、該解釈手段で解釈された機能に従ってクライアントマシンからの指示を処理する処理手段を有する点に特徴がある。
【００１２】
第３に、前記ファイル転送用アプリケーションプロトコル機能で使用されるコマンド「ＣＣ」を、該プリンタ装置に適用して、該プリンタ装置における作画データの出力枚数指定機能として解釈する解釈手段を有するとともに、該解釈手段で解釈された機能に従って作画データの出力枚数を印字部に設定する印字枚数設定手段を有する点に特徴がある。
【００１３】
また、本発明のプリンタシステムは、ネットワークで接続されたクライアントマシンからファイル転送用アプリケーションプロトコル機能で使用されるコマンドを利用して、直接転送された作画データを解釈して作成された印字データを印字するプリンタ装置を含み、該プリンタ装置が、ファイル転送用アプリケーションプロトコル機能で使用される所定のコマンドを該コマンドに対応する予定機能に読み替えて、該機能に対応する処理を行うように構成された点に特徴がある。
【発明の効果】
【００１４】
上記特徴を有する本発明によれば、汎用性の高いＦＴＰを使用して、クライアントマシンとプリンタ装置間のデータ転送を可能にすることができる。ＦＴＰは、プリンタ装置やクライアントマシンが当初よりサポートしていることが一般的であるので、このＦＴＰを使用することで、外部的な機器の接続を最小限にし、効率の良いプリント環境を提供することができる。具体的には、ＦＴＰコマンドを予め設定した機能に読み替える解釈手段をプリンタ装置に設けることによって、クライアントマシンとプリンタ装置との間にゲートウェイを設けるなどするシステムと異なり、システム規模が大きくならない。
【００１５】
また、ゲートウェイからプリンタ装置に対してネットワークを通じてファイル転送する際に必要にるプロトコル変換が不要となり、プリンタ装置内部での処理となるので、ネットワークに縛られないという効果を奏する。
【００１６】
特に、第１の特徴を有する本発明によれば、ファイル転送用アプリケーションプロトコルつまりＦＴＰで使用されるコマンドを、該プリンタ装置に適用して該プリンタ装置の状態を表示する機能として解釈することができる。したがって、クライアントマシン側がＦＴＰを備えていれば、プリンタ装置に対してＦＴＰコマンドで該プリンタ装置の状態を表示させる指示を与えると、プリンタ装置側では、クライアントマシンから供給されてくるＦＴＰコマンドを解釈して該プリンタ装置の状態を表示することができる。
【００１７】
第２の特徴によれば、ＦＴＰコマンドを、プリンタ装置における出力処理方式を設定、又は、出力処理方式の内容を表示する機能として解釈することができる。したがって、クライアントマシン側がＦＴＰを備えていれば、プリンタ装置に対してＦＴＰコマンドで該プリンタ装置における出力方式を設定したり、出力処理方式の内容を表示することができる。
【００１８】
第３の特徴によれば、ＦＴＰコマンド「ＣＣ」を、プリンタ装置における作画データの出力枚数指定機能として解釈することができる。したがって、クライアントマシン側がＦＴＰを備えていれば、作画データの出力枚数を印字部に設定することができる。
【００１９】
このように本発明では、ＦＴＰコマンドの解釈を任意に設定できるので、論理的に複数のインタフェースを提供でき、ユーザ個人や部門に合った印刷環境で作画データを処理させることができる。
【発明を実施するための最良の形態】
【００２０】
以下、図面を参照して本発明を詳細に説明する。図３は、本発明の一実施例に係るプリンタ装置のハード構成を示すブロック図である。同図において、プリンタ装置（以下、単に「プリンタ」という）１はＬＡＮ等のネットワーク２に接続されている。該ネットワーク２には、複数のクライアント３が接続されており、該クライアント３はプリンタ１の上位装置として該プリンタ１にデータを送信する。プリンタ１では、この送信データを受信し、適宜のデータ処理を施して印字出力を行う。プリンタ１は前記データ処理のための、次の構成部分からなる。
【００２１】
プリンタ１はデータバス等のバス４を通じて各構成部分と接続されるＣＰＵ５を有する。プログラム用メモリ６は前記ＣＰＵ５による該プリンタ１の動作に必要なプログラムや定数を格納したメモリであり、作業用メモリ７は該プリンタ１の制御に一時的に必要とするデータを格納するメモリである。不揮発性メモリ８は、制御に必要とするデータのうち、電源が遮断されたときにも消失させてはならないものを格納するメモリである。記憶装置９はクライアント３から転送されたプリント用データつまり作画データと制御情報を格納する手段であって、例えば、ハードディスク装置である。
【００２２】
画像用メモリ１０は、印字されるビットマップデータを格納するためのメモリである。通信インタフェース１１はネットワーク２を介してクライアント３との間でデータの送受信を行うための回路である。出力制御装置１２は、画像用メモリ１０に格納されたビットマップデータを印字部１３に転送するためのタイミングなどを制御する回路である。この出力制御装置１２には、印字部１３の状態を示す情報を受信するための回路も含まれる。時計回路１４は時刻を管理している回路である。このほか、オペレータの指示を入力したり、印字部１３の動作状態やエラー表示をしたり、紙やトナー等の消耗品の補給を促す表示をしたりするためのコンソールパネル等を設けることもできる。
【００２３】
なお、プリンタ１は、アプリケーションプロトコルとしてＦＴＰおよびｌｐｒをサポートしており、複数のクライアント３は、ＦＴＰおよびｌｐｒの少なくとも一方をサポートしているものとして以下の説明をする。
【００２４】
上記構成によるプリンタ１では、クライアント３からネットワーク２を介して転送されたプリント用のデータを通信インタフェース１１で受信する。受信したデータは前記記憶装置９に格納され、ＣＰＵ５は、プログラム用メモリ６に格納されたプログラムに従い、該受信データをビットマップデータに変換する。この変換作業は、受信データを作業用メモリ７に読み出して実行される。変換されたビットマップデータは画像用メモリ１０に格納される。出力制御装置１２を介してＣＰＵ５から印字部１３に印字開始指令が送信されると、印字部１３は、画像用メモリ１０からビットマップデータを読み込み、プリントが行われる。正常にプリントが実行されたときは、出力制御装置１２へ正常終了情報が送信される。この正常終了情報は、予め記憶装置９に設定してある管理テーブルの「ジョブの状態」を記録する領域に管理情報の１つとして登録される。
【００２５】
次に、本実施例で使用する制御ファイルおよび管理テーブルの具体例を説明する。図４に制御ファイルの一例を示す。クライアント３がｌｐｒをサポートしているときには、作画データとともに転送されてくる制御情報がそのままこの制御ファイルに変換される。一方、クライアント３がｌｐｒをサポートしていなくてＦＴＰによってデータを転送してくるときには、プロトコルを通じてプリンタ１側から行われる要求によって得られる情報に基づいてこの制御ファイルが作成される。すなわち、ｌｐｒでは、当初から制御情報の転送が予定されていて、その転送された制御情報をそのまま制御ファイルとすることができる。これに対してＦＴＰでは、プリントを前提としないので、制御情報はプリンタ１の側からの要求に対する応答から得られることになる。
【００２６】
図４において、各制御情報のうち、重複しているものが存在するのは、ｌｐｒで転送される制御ファイルの所定のフォーマットに合わせたためである。また、符号＃が先頭に付加されているものは本実施例特有の表現方式である。同図において、符号ＨおよびＣは、ＴＣＰ／ＩＰで用いられるＩＰアドレスであり、ワークステーションを特定するための番地である。原則的には、世界中で同一のＩＰアドレスは存在しない。符号ＰおよびＬは、ＦＴＰのプリンタ１の側のプロトコルｆｔｐｄに対してログインしたログインユーザ名、符号ＪおよびＮは、クライアント３でユーザが作成したファイル名である。
【００２７】
また、符号＃ＬＰは、出力処理方式つまりプリント時に線の太さ等を示すファイル（出力処理方式ファイル）であり、後述の「ＣＷＤ」サブコマンドによって指定されたものである。符号＃ＣＣは、出力枚数であり、後述の「ＣＣ」サブコマンドによって指定された枚数である。
【００２８】
さらに、符号ｆおよびＵはクライアント３から転送してきたファイル名をプリンタ１で内部的に処理しやすいように付与した連番であり、“ｄｆＡ”で始まる。なお、当該制御ファイルの番号も、このファイル名と同一であり、頭文字だけは“ｃｆＡ”とする。
【００２９】
上記制御ファイルの記述例を解釈すると、次のようになる。すなわち、（ＩＰアドレスが「１２９．２４９．１５０．８５」のクライアント３から、「ｋａｎｅｋｏ」名でログインしたユーザが、出力処理方式ファイル「ＰＬＴ１５」の出力処理方式で、「３」枚の出力を行うように指示をして、「ｔｅｓｔ−ｆｉｌｅ」というファイル名のファイルを転送してきた。このファイルは、「ｄｆＡ１２３４５」というファイル名で記憶装置９に保存されている）という内容の制御ファイルである。
【００３０】
図５は、前記制御ファイルの情報に基づいて実行されるジョブの管理テーブルの内容を示す図である。この管理テーブルはジョブ毎に作成される。ここで、「１ジョブ」は、ファイルをクライアント３からプリンタ１へ転送するのに必要な、一連の仕事である。なお、ｆｔｐ（クライアント側のプロトコル）は、１ジョブで１つのファイルしか転送できないが、ｌｐｒは、１ジョブで複数枚のファイルを転送することができる。
【００３１】
同図において、左欄は管理項目、右欄はその内容である。ジョブ名とは、前記制御ファイルＪ，Ｎのファイル名であり、複数ファイルが転送された場合は、最初のファイル名に「…」を添付して複数ファイルを代表する。ユーザ名とは、制御ファイルＰ，Ｌのログインユーザ名である。データサイズは、当該ジョブにおけるファイルのデータ量であり、記憶装置９に蓄積した際に認識される。
【００３２】
論理プリンタ番号は、「ＣＷＤ」サブコマンドで指定された論理プリンタ番号であり、データフォーマット別に論理プリンタ番号「ＰＬＴ００〜ＰＬＴ９９」までが指定できる。出力処理方式ファイル名は、「ＣＷＤ」サブコマンドで指定された論理プリンタ番号から識別した出力処理方式であり、ファイル名「ＰＬＴ００ｐｒｍ〜ＰＬＴ９９ｐｒｍ」までが存在する。本実施例では、「ＣＷＤ」サブコマンドによって外部から指定されるものは、論理プリンタ番号であるが、内部的にこの論理プリンタ番号を出力処理方式と読替えて処理をするようにしている。
【００３３】
データのフォーマットは、ＨＰ−ＧＬ、ＶＣＧＬ、ＶＲＦ等複数の記述形式の中で、前記「ＣＷＤ」サブコマンドに付随して特定される。例えば、記述形式ＨＰ−ＧＬは、「ＰＬＴ００Ｈ」として指定され、内部的な番号におき換えて特定する。インタフェース（Ｉ／Ｆ）の優先度は、予定の基準で設定された入力インタフェースの優先度を示す情報である。
【００３４】
ジョブＩＤは、管理プログラムが内部的に処理しやすいように振った連番であり、ｆｔｐｄおよびｌｐｄ（ｌｐｒのプリンタ側のプロトコル）共に、このジョブＩＤが決定された後、ファイルの受信を行う。このジョブＩＤは、記憶装置９に記述するファイル名や制御ファイル名に使用される。デイレクトリ名は、記憶装置９に記述されているディレクトリ名であり、ファイルが存在する場所を示す。ジョブの状態としては、プリント済み、プリント中、待ち行列処理中等の処理状況が記述される。ファイル名および制御ファイル名は、プリンタ１の記憶装置９に記述された実データのファイルおよび前記制御ファイルの名称である。
【００３５】
続いて、本実施例によるプリンタ１の動作を説明する。プリンタ１では、ファイル転送モードおよび出力処理モードのいずれか１つを選択し、内部処理を該選択されたモードに切替えられるようにする。このために、プリンタ１内ではログインユーザを識別するためにパスワードファイルを記憶装置９内にあらかじめ作成する。このパスワードファイルにはログインするユーザ名、該ユーザ名に対応するパスワード、および該ユーザ名に対応する動作モード番号等をあらかじめ記述する。ここで、動作モード番号は前記ファイル転送モードまたは出力処理モードに対応する。本実施例では、前記パスワードファイルを使用し、前記ログインユーザ名によって前記２つのモードのうち１つを選択する。
【００３６】
前記切替え動作を図６のフローチャートを参照して説明する。同図において、ステップＳ１では通信インタフェース１１を通じて入力されるクライアント３からの接続要求を受付ける。接続要求があったならばステップＳ２ではログイン要求を返してユーザ名の入力を要求する。ステップＳ３ではこの要求に応答してクライアント３から通知されるログインユーザ名（以下、単に「ログイン名」という）を受付ける。ステップＳ４ではパスワードファイルを読み、受付けられた前記ログイン名のユーザがパスワードファイルに存在するか否かを判断する。
【００３７】
ログイン名に対応するユーザが存在した場合は、ステップＳ５に進んでパスワードの入力を要求する。ステップＳ６ではこの要求に応答してクライアント３から通知されるパスワードを受付ける。ステップＳ７ではパスワードファイルを読み、受付けられた前記パスワードが前記ログイン名に対応するものであるかを判断する。
【００３８】
前記ステップＳ４の判断が否定の場合およびステップＳ７の判断が否定の場合、つまりログイン名に対応するユーザが存在しない場合、および該ユーザは存在するがパスワードが一致しない場合は、ステップＳ８に進んでログイン拒否応答をクライアントに通知する。
【００３９】
一方、正しいパスワードが通知されたならばステップＳ７の判断は肯定となり、ステップＳ９に進んでログイン名に対応する動作モード番号を入手する。ステップＳ１０では入手した動作モード番号に基づき、前記ログイン名のユーザが出力処理用ユーザか否かを判断する。
【００４０】
出力処理用ユーザであればステップＳ１１に進んで出力処理モードを選択する。一方、出力処理モードでなければステップＳ１２に進んで通常のファイル転送モードが選択される。モードが選択されたならば、ステップＳ１３に進み、選択されたモードに従ってクライアント３からデータを受信する。
【００４１】
すなわち、出力処理モードならば、制御ファイルを作成し、記憶装置９で受信したデータを該制御ファイルに基づいて印字部１３に出力する動作を行う。これに対して通常のファイル転送モードが選択された場合は、ＦＴＰを用いて単に記憶装置９にデータを転送するだけの動作を行う。このように、ログイン名に基づき、予め出力処理用の動作モードを設定できるので、ＦＴＰを用いたデータ転送であってもプリンタ１は印字部１３への出力動作の要求を認識して必要な処理を実行することができる。
【００４２】
次に、前記出力処理モードにおける具体的な動作の例を説明する。まず、転送されたデータの出力処理方式の設定について説明する。出力処理方式とは、ペンの幅、縮小／拡大倍率、出力ビン番号、丁合指定、優先順位等をいい、例えばコンソールパネルから予め入力して個人名や部門別で複数設定できる。そして、これらの出力処理方式をユーザとプリンタ１とで認識できる論理プリンタ番号にひとつひとつ対応付ける。例えば、論理プリンタ番号と出力処理方式を記述したファイル名とを同一のものとしたり論理プリンタ番号に拡張子を付けたりする。そうして、論理プリンタ番号がクライアント３から供給されると、その論理プリンタ番号つまり出力処理方式を記述したファイル名から出力処理方式を設定する。
【００４３】
上記出力処理方式の設定について図７を参照して説明する。同図において、ステップＳ２１では、クライアントからのＦＴＰのサブコマンドの受信を待つ。ステップＳ２２では受信したサブコマンドが「ＣＷＤ」コマンドか否かを判断する。この「ＣＷＤ」コマンドは本来ディレクトリ名の変更指示であるが、本実施例ではこれを「出力処理方式ファイルの指定」と解釈する。例えば、論理プリンタ番号および出力処理方式のファイル名をともに「ＰＬＴ００Ｈ」としてある場合、「ＣＷＤ  ＰＬＴ００Ｈ」をクライアントから受信した場合は、「出力処理方式として『ＰＬＴ００Ｈｐｒｍ』ファイルを使用する」と解釈する。
【００４４】
すなわち、「ＣＷＤ」コマンドを受信したならば、ステップＳ２３に進み、記憶装置９の『ＰＬＴ００Ｈｐｒｍ』ファイルを検索し、出力処理方式を設定する。設定された出力処理方式は前記管理テーブルの出力処理方式ファイル名に記述される。出力処理方式が設定されると、クライアントから受信した作画データをこの出力処理方式に従って解釈し、画像用メモリ１０に展開した後、印字部１３に出力する。
【００４５】
なお、論理プリンタ番号と出力処理方式を記述したファイル名とを同一とする以外に、論理プリンタ番号と出力処理方式を記述したファイル名とを対応付けたファイルを生成して記憶させ、このファイルを読んで識別するようにしてもよい。
【００４６】
このように、ＦＴＰのコマンドの１つである「ＣＷＤ」コマンドを利用して指定されたディレクトリ名から内部的には出力処理方式を選択できるので、１つのインタフェースを、論理的に複数のインタフェースが存在する論理プリンタとして使用できる。
【００４７】
上述のようにして選択された出力処理方式をクライアント３に通知するため、同様にＦＴＰのサブコマンドを使用することができる。例えば、「ＰＷＤ」コマンドは現在指定されているディレクトリ名をプリンタ１に要求するためのコマンドである。本実施例では、この「ＰＷＤ」コマンドを受信したプリンタ１では、これを「出力処理方式の通知要求」と解釈して、現在選択されている出力処理方式をクライアント３に通知する。
【００４８】
図８は、出力処理方式をクライアント３に通知する動作を示すフローチャートである。ステップＳ３１では、クライアント３からのＦＴＰのサブコマンドの受信を待つ。ステップＳ３２では受信したサブコマンドが「ＰＷＤ」コマンドか否かを判断する。この「ＰＷＤ」コマンドは本来ディレクトリの通知要求であるが、本実施例ではこれを「出力処理方式の通知要求」と解釈する。したがって、「ＰＷＤ」コマンドを受信したならば、ステップＳ３３に進み、現在指定されているディレクトリ名によって出力方式を識別し、クライアント３に通知する。
【００４９】
上記コマンド「ＣＷＤ」や「ＰＷＤ」は、それぞれに固有の意味付けがなされているものであり、本実施例では、本来の意味付けの解釈を変更して所望の動作をさせるようにしている。さらに、ＦＴＰでは、転送拡張機能を有していて、該転送拡張機能によってコマンドを設定し、該コマンドに所望の機能を持たせることができる。
【００５０】
図９のフローチャートを参照して、転送拡張機能により設定したコマンドによる動作例を説明する。同図において、ステップＳ４１ではクライアント３からのＦＴＰのサブコマンドの受信を待つ。ステップＳ４２では受信したサブコマンドが「ＣＣ」コマンドか否かを判断する。「ＣＣ」コマンドには「次に転送する作画データの出力枚数指定」という解釈を対応させてある。したがって、「ＣＣ」コマンドを受信したならばステップＳ４３に進み、該コマンドの後に付加された数字に対応する枚数を出力枚数として印字部１３に設定する。例えば、「ＣＣ３」ならば出力枚数として３枚が設定される。
【００５１】
受信したコマンドが「ＣＣ」でない場合はステップＳ４４に進み、受信したサブコマンドが「ＬＪ」コマンドか否かを判断する。「ＬＪ」コマンドには「作画データのジョブリストの表示」という解釈を対応させてある。したがって、「ＬＪ」コマンドを受信したならばステップＳ４５に進み、ジョブリストの作成依頼をする。前記作成依頼に従って予定の作画データ管理プログラムが起動され、ジョブリストが作成される。ステップＳ４６では作成されたジョブリストをクライアント３に対して送信する。
【００５２】
受信したコマンドが「ＬＪ」でない場合はステップＳ４７に進み、受信したサブコマンドが「ＲＭ」コマンドか否かを判断する。「ＲＭ」コマンドには「出力処理の取消し」という解釈を対応させてある。したがって、「ＲＭ」コマンドを受信したならばステップＳ４８に進み、「ＲＭ」コマンドの後に付加されるジョブ名の出力について取消しを依頼をする。該依頼に従って予定の作画データ管理プログラムが起動され、指定されたジョブが削除される。ステップＳ４９ではジョブの削除が終了したことをクライアント３に対して送信する。ここで、削除動作の開始前に出力処理に入ってしまった場合には取消し不能であることをクライアント３に通知する。
【００５３】
受信したコマンドが「ＲＭ」でない場合はステップＳ５０に進み、受信したサブコマンドが「ＪＬ」コマンドか否かを判断する。「ＪＬ」コマンドには「すでに出力されたジョブのログ表示」という解釈を対応させてある。したがって、「ＪＬ」コマンドを受信したならばステップＳ５１に進み、作画データ解釈プログラムや印字プログラムが作成したログからジョブログを作成する。このジョブログの作成はユーザが見やすいように予め定められたフォーマットに従って行う。ステップＳ５２では作成されたジョブログをクライアント３に送信する。
【００５４】
受信したコマンドが「ＪＬ」でない場合はステップＳ５３に進み、受信したサブコマンドが「ＳＳ」コマンドか否かを判断する。「ＳＳ」コマンドには「出力装置の状態表示」という解釈を対応させてある。この「ＳＳ」には知りたい状態の内容を指定することもできる。例えば「ｐａｒａｍｅｔｅｒ」という指定をして「指定された出力処理方式の内容表示」をすることができるし、「ｊｏｂ−ｃｏｕｎｔ」という指定をして「スプールされているジョブ数の表示」をすることもできる。したがって、「ＳＳ」コマンドを受信したならばステップＳ５４に進み、前記制御テーブルからプリンタ１の状態を検索して情報を収集する。ステップＳ５５では、その結果をクライアント３に送信する。前記情報はユーザが見やすいように予め定められたフォーマットに従って作成する。ステップＳ５３の判断が否定の場合はステップＳ４１に戻る。
【００５５】
続いて、転送される作画データの蓄積動作の実施例を説明する。記憶装置９にはクライアント３から転送される作画データだけでなく、パスワードファイル等、他の処理に必要な情報が記憶される。また、作画データについても複数クライアントから同時に転送がなされることがあり、短時間でディスクフルとなる恐れがある。ところがＦＴＰはディスクフルとなった場合でも、送信をし続け、クライアント３では送信が終了しない理由を知ることもできない。そこで、本実施例では、ディスクフルになったことを確認するようにしてクライアント３にディスクフル状態を通知できるようにした。
【００５６】
図１０において、ステップＳ６１では、クライアント３からのＦＴＰのサブコマンドの受信を待つ。ステップＳ６２では受信したサブコマンドが「ＳＴＯＲ」コマンドか否かを判断する。「ＳＴＯＲ」コマンドは「作画データ送信要求」を示すコマンドである。「ＳＴＯＲ」コマンドを受信したならばステップＳ６３に進み、記憶装置９の空きの有無を判断する。本実施例では、予め一定の容量ｖｍを設定しておき、記憶装置９の容量が該容量ｖｍ以下になったときに「空きなし」と判断するようにしている。例えば、容量ｖｍは２０メガバイトとする。
【００５７】
空きがなければステップＳ６４に進んで受信拒否をクライアント３に通知する。空きがあればステップＳ６５に進んで受信を受付ける。受信が受付けられると作画データ管理プログラムによる受信動作が起動され、作画データの書込みが行われる。ステップＳ６６では書込みが終了したか否かが判断される。書込みが終了していなければステップＳ６７で一定量ｖｓの作画データ、例えば１メガバイト分を記憶装置９に記述する。ここで、作画データの記述を一定量ｖｓにして短時間に区切ってメモリ残量を確認するように設定したのは、上述のように複数クライアント３から同時に受信していると短時間で記憶装置９がディスクフルとなって、前記記憶容量ｖｍを確保するのが困難となるからである。したがって、容量ｖｓは、各プリンタ装置に送信する平均的な作画データの量を考慮し、ディスク容量もよりも十分に小さい値とするのがよい。
【００５８】
ステップＳ６８では記憶装置９の空きの有無を判断する。空きがあればステップＳ６６に進み、空きがなければ一定時間ｔ毎に記憶装置９の空きの有無を判断し、最大で一定時間Ｔまで待つ（ステップＳ６９，Ｓ７０，Ｓ７０ａ）。空きがあると判断されればステップＳ６６に進み、空きがなければ受信を中断して、ステップＳ７１で記憶装置９に空きがないことをクライアント３に報告する。ステップＳ７２では途中まで記述された分のファイルを削除する。
【００５９】
一方、ステップＳ６６で書込み終了と判断されれば、ステップＳ７３に進んで書込みが終了した作画データに関する制御ファイルを生成する。ステップＳ７４では、作画データプログラムによる受信動作を終了する。
【００６０】
次に、前記記憶装置９に記述された作画データを印字部１３で出力するための前記制御ファイルの作成動作について説明する。図１１において、ステップＳ８１では、クライアント３からのＦＴＰのサブコマンドの受信を待つ。ステップＳ８２では受信したサブコマンドが「ＳＴＯＲ」」コマンドか否かを判断する。「ＳＴＯＲ」コマンドを受信したならばステップＳ８３に進み、作画データ管理プログラムに対して受信要求が発生したことを知らせる。ステップＳ８４では、受信要求を知った作画データ管理プログラムからジョブＩＤを入手し、クライアント３からの受信を受け付ける。このジョブＩＤはプリンタ１の内部で発生する連続番号であり、例えば、図４に示す数字「１２３４５」である。ステップＳ８５では入手した前記ジョブＩＤに従い、ファイル名を生成する。例えば、図４に示すファイル名「ｄｆＡ１２３４５」である。
【００６１】
ステップＳ８６では作画データの書込みが終了したか否かが判断される。書込みが終了した場合は、ステップＳ８７に進み、記憶装置９に書込みを終了した作画データに関する制御ファイル名を生成する。例えば図４に示す制御ファイル名「ｃｆＡ１２３４５」である。ステップＳ８８では生成した制御ファイルに内容を記述する。ステップＳ８９では、作画データプログラムに対して、受信動作終了を知らせ、ｆｔｐｄによる受信動作を終了する。なお、図１１では詳細な作画データの書込み動作は省略したが、図１０に関して説明した手順で書込みを行う。このように、本実施例では、ＦＴＰによって転送された作画データに関してもｌｐｒと同様に制御ファイルが作成されるので、この制御ファイルを使用し、記憶装置９に記述された作画データを解析してビットマップデータへの展開および印字部１３への出力を容易に行うことができる。
【００６２】
次に、上述の動作を実行するためのプリンタ１の要部機能を図１の機能ブロック図を参照して説明する。同図において、接続要求検出部１５はクライアント３のｆｔｐから接続要求があるとユーザ名要求部１６に検出信号を出力する。ユーザ名要求部１６は前記検出信号に応答してｆｔｐにユーザ名の入力要求を送信する。同様に、パスワードの入力要求もする。ユーザ名の入力要求に応答してｆｔｐから送信されたユーザ名はユーザ名受付け部１７で受付けられ、パスワードファイル１８に入力される。パスワードファイル１８にはユーザ名およびパスワードならびに動作モード等が予め設定されている。パスワードファイルにユーザ名が存在すれば、パスワード要求部１８１はクライアント３にパスワードの入力を要求する。この要求に応じてクライアント３から送信されたパスワードはパスワード受付部１８２に入力され、パスワードファイル１８に転送される。クライアント３から受信したパスワードがパスワードファイル１８のパスワードと比較照合される。そして、パスワードの一致を条件にして、ユーザ名に対応する動作モードがモード選択部１９に読み出され、モード選択部１９は出力処理モードまたは通常のファイル転送モードによる動作指示を出力する。
【００６３】
続いて前記出力処理モードの指示がなされた場合のプリンタ１の要部機能を説明する。図２において、サブコマンド受付部２０ではｆｔｐから供給されるサブコマンドを受付ける。受付けられたサブコマンドはサブコマンド解釈部２１で解釈される。上述したように、一定の既存のサブコマンドは独自の意味に読み替えられ、またＦＴＰの転送拡張機能により、いくつかのサブコマンドを追加し、特定の解釈が対応付けられている。サブコマンド解釈部２１で解釈された出力処理方式や印字枚数等の指示は当該ジョブの制御情報として制御ファイル２２に記述される。制御ファイル２２には前記ユーザ名受付部１７で受信したユーザ名や接続要求時に識別できるクライアント３を特定するためのＩＰアドレス等も記述される。この制御ファイル２２はｌｐｒと同一のフォーマットで作成することは上述したとおりである。
【００６４】
サブコマンド解釈部２１で作画送信を要求するサブコマンドが認識されたならば容量判別部２３を起動して記憶装置９のディスク残量が予定量ｖｍ以上あるかどうかを判別する。メモリ残量が予定量ｖｍ以上であれば作画データ受付部２４に許可信号を出力し、予定量ｖｍ以下であればこの許可信号を停止するとともに通知部２５に指示をしてクライアント３のｆｔｐにディスクフルを通知させる。
【００６５】
サブコマンド解釈部２１でジョブの状態を要求するサブコマンドが認識された場合は、状態判別部２６を起動して管理テーブル２７を読み、ジョブの状態をｆｔｐに通知させるための指示を通知部２５に対して行う。なお、管理テーブル２７は一例が図５に示したものであり、また詳細の機能は省略するが、該「状態」にはジョブリストの要求等、図９に関して説明した要求内容が含まれる。
【００６６】
作画データ受付部２４で受信した作画データは記憶装置９に記述され、該作画データはビットマップ展開された後、制御ファイル２２に従って印字部１３に供給され、印字出力される。
【００６７】
以上の説明から明らかなように、本実施形態によれば、一般的なファイル転送なのかプリント処理をする作画データの転送なのかをユーザ名によって判断できる。また、既存のファイル転送用コマンドを使用して、そのコマンド本来の機能以外の出力処理用機能を実現できるし、ファイル転送用の転送拡張コマンドを追加して、出力処理を実行できる。
【００６８】
また、本実施形態によれば、空き容量が少なくなったときに作画データの受信を予定時間だけ中断し、その旨をクライアントに通知できる。したがって、クライアントは作画データ送信不能の理由を認識できる。なお、空き容量の検出は予定の周期で行われるので、複数のクライアントから作画データの転送があった場合にも、ディスクフルになる前に空き容量が少なくなったことを認識できる。さらに、ラインプリンタプロトコルに合致した制御ファイルによってプリントを実行することができる
【００６９】
このように、本実施形態によれば、クライアント側では、例えば、既存のファイル転送用プロトコルであるＦＴＰは単に通常のファイル転送をイメージして作画データを送信すればよく、プリンタ側ではこうして送信された作画データを印字出力処理対象の作画データとして受信し、処理をすることができる。
【００７０】
その結果、出力処理用プロトコルとファイル転送用プロトコルとが併存している場合、ファイル転送用プロトコルを利用して転送された作画データを、出力処理用プロトコルを利用して転送された作画データと同様に取扱って出力できるので、専用の出力処理アプリケーションを必要としない。すなわち、作画データを一本化して管理することができる。
【００７１】
さらに、コマンドの解釈を任意に設定できるので、例えば、出力処理方式を複数設けることにより、論理的に複数のインタフェースを提供でき、ユーザ個人や部門に合った印刷環境で作画データを処理させることができる。
【図面の簡単な説明】
【００７２】
【図１】本発明の一実施例に係るプリンタ装置の要部機能ブロック図である。
【図２】本発明の一実施例に係るプリンタ装置の要部機能ブロック図である。
【図３】本発明の一実施例に係るプリンタ装置のハード構成を示すブロック図である。
【図４】制御ファイルの一例を示す図である。
【図５】管理テーブルの一例を示す図である。
【図６】動作モード選択の動作を示すフローチャートである。
【図７】サブコマンドの解釈動作を示すフローチャートである。
【図８】サブコマンドの解釈動作を示すフローチャートである。
【図９】転送拡張機能によるコマンド解釈の動作を示すフローチャートである。
【図１０】作画データ書込み動作のフローチャートである。
【図１１】制御ファイル作成動作のフローチャートである。
【符号の説明】
【００７３】
３…クライアント、  ９…記憶装置、  １３…印字部、  １５…接続要求検出部、  １６…ユーザ名要求部、  １７…ユーザ名受付部、  １８…ユーザファイル、  １９…モード選択部、  ２１…サブコマンド解釈部、  ２２…制御ファイル、２３…容量判別部
【図１】
2005322272.tif 000003
【図２】
2005322272.tif 000004
【図３】
2005322272.tif 000005
【図４】
2005322272.tif 000006
【図５】
2005322272.tif 000007
【図６】
2005322272.tif 000008
【図７】
2005322272.tif 000009
【図８】
2005322272.tif 000010
【図９】
2005322272.tif 000011
【図１０】
2005322272.tif 000012
【図１１】
2005322272.tif 000013