(第1の実施の形態)
本実施の形態を図1〜図6を参照して説明する。先ず、図1及び図2を参照して装置的特長を説明する。図1は、本実施の形態のプリントサーバを含むシステムのブロック構成説明図である。図2は、図1中のプリントサーバ内の内部構成図である。
印刷システムαは、印刷制御を行う印刷制御装置であるプリントサーバ1と、プリントサーバ1上の、印刷物に付加する付加データの設定データを記憶する付加設定テーブル1Aと、当該付加データに対応する印刷位置及び書式の情報を記憶する位置/書式設定テーブル1Bと、印刷待ちの印刷用データ、及び付加データとしてドキュメント保持データやその他データを付加されて印刷待ちの合成印刷用データを格納する印刷待メモリ1Cと、付加データとして出力時データを付加予定で印刷待ちの印刷用データを格納する第2印刷待メモリ1Dと、プリントサーバ1にネットワーク接続された端末であるユーザ端末2A,2B,2Cと、プリントサーバ1にネットワーク接続されたプリンタ3A,3B,3Cと、プリンタ3A,3B,3Cそれぞれ内のメモリであり印刷待ちの未印刷ジョブの印刷用データ及び合成印刷用データを格納する印刷メモリ4A,4B,4Cとを具備する。
なお、本実施の形態では、印刷メモリ4A,4B,4Cそれぞれに1つの印刷ジョブに対応する印刷用データ又は合成印刷用データが格納されるものとし、印刷メモリ4A,4B,4C中に当該データがあれば、これに対応するプリンタ3A,3B,3Cは当該格納されている印刷用データを印刷出力中であり、空プリンタではないことを示す。また、印刷用データは、印刷ジョブを実際に印刷する様式に展開したデータであり、合成印刷用データは、印刷用データに付加データを合成したデータである。
前記ドキュメント保持データは、投入された印刷ジョブのドキュメントが保持するドキュメント保持データであり、前記出力時データは、実際の出力時に初めて情報が決定されるデータであり、前記その他データは、印刷とは直接関係ない場所から取得するデータである。
なお、図面上では、説明のために、付加設定テーブル1A、位置/書式設定テーブル1B、印刷待メモリ1C及び第2印刷待メモリ1Dを外側に出しているが、実際はプリントサーバ1に含まれ、同様に印刷メモリ4A,4B,4Cは実際にはプリンタ3A,3B,3Cに含まれる。また、ユーザ端末2A,2B,2C、プリンタ3A,3B,3C、印刷メモリ4A,4B,4Cは、代表的に示したものであり、ユーザ端末、プリンタ、印刷メモリはそれぞれ、単数又は複数の所定の数を設置する構成でよい。
プリントサーバ1は、その内部に、プリントサーバ1の中央制御を行うCPU1aと、入力部1bと、RAM(Random Access Memory)1cと、表示部1dと、記憶装置1eと、記憶装置1e内の記録媒体1fと、伝送制御部1gと、CPU1a、入力部1b、RAM1c、表示部1d、記憶装置1e及び伝送制御部1gを接続するバス1hとを有する。
CPU1aは、第1の印刷制御プログラムを実行する。CPU1aは、第1の印刷制御プログラムの実行により、投入された印刷ジョブを受信してRAM1cに格納し、当該印刷ジョブからそのドキュメント名、ユーザ名、端末名及び印刷投入日時を取得してRAM1cへ格納し、付加設定テーブル1Aを参照して付加設定があるかを判別し、付加設定がない場合で、空プリンタがある場合、当該空プリンタから出力先プリンタを決定し、前記投入された印刷ジョブを印刷用データに展開して前記出力先プリンタの印刷メモリ4A,4B,4Cへ転送し、空プリンタがない場合、前記投入した印刷ジョブを印刷用データに展開して印刷待メモリ1Cに記憶する。
また、CPU1aは、前記付加設定がある場合、当該付加設定の付加種別を判別し、当該付加種別がドキュメント保持データ又はその他データである場合、当該ドキュメント保持データ又はその他データのデータ種を判別し、当該データ種を付加データとしてRAM1cにセットし、前記投入された印刷ジョブを頁別に印刷用データに展開し、RAM1cにセットした前記付加データを位置/書式設定テーブル1Bの位置D及び属性Eに従って前記印刷用データに合成して合成印刷用データを作成し、空プリンタがある場合、当該空プリンタを出力先プリンタとして決定し、前記合成印刷用データを当該出力先プリンタの印刷メモリ4A,4B,4Cへ転送し、空プリンタがない場合、前記合成印刷用データを印刷待メモリ1Cに記憶する。
また、CPU1aは、前記付加種別が出力時データである場合で、空プリンタがある場合、当該空プリンタを出力先プリンタとして決定し、前記出力時データのデータ種を判別し、当該データ種を付加データとしてRAM1cにセットし、前記投入された印刷ジョブを印刷用データに展開し、RAM1cにセットした前記付加データを位置/書式設定テーブル1Bの位置D及び属性Eに従って、前記印刷用データに合成し、前記出力先プリンタの印刷メモリ4A,4B,4Cへ転送し、空プリンタがない場合、投入された印刷ジョブを頁別に印刷用データに展開し、当該印刷用データを第2印刷待メモリ1Dに記憶する(図4、図5参照)。
これとは別に、CPU1aは、定時印刷制御プログラムを実行する。CPU1aは、定時印刷制御プログラムの実行により、空プリンタがある場合、印刷待メモリ1Cにデータが記憶されているかを判別し、印刷待メモリ1Cにデータが記憶されている場合、前記空プリンタを出力先プリンタとして決定し、印刷待メモリ1C内の1つの印刷ジョブに対応する印刷用データ又は合成印刷用データを、前記出力先プリンタの印刷メモリ4A,4B,4Cに転送し、前記選択した1つの印刷ジョブに対応する印刷用データ又は合成印刷用データを前記出力先プリンタの印刷メモリ4A,4B,4Cから削除する。
また、CPU1aは、印刷待メモリ1Cにデータが記憶されていない場合、第2印刷待メモリ1Dに、第1の印刷制御手順のステップS34で記憶した印刷用データが記憶されているかを判別し、第2印刷待メモリ1Dに印刷用データが記憶されている場合、当該印刷用データのデータ種を判別し、当該データ種を付加データとしてRAM1cにセットし、第2印刷待メモリ1D内の1つの印刷ジョブに対応する前記印刷用データに、位置/書式設定テーブル1Bの位置D及び属性Eに従って、RAM1cにセットした前記付加データを合成して合成印刷用データを作成し、当該合成印刷用データを前記出力先プリンタの印刷メモリ4A,4B,4Cへ転送し、前記選択した1つの印刷ジョブに対応する合成印刷用データを出力先印刷メモリ4A,4B,4Cから削除する(図6参照)。
入力部1bは、カーソルキー、数字入力キー及び各種機能キー等を備えたキーボード及びマウスを含み、キーボードで押下された押下信号やマウスの位置信号をCPU1aに出力する。
RAM1cは、前記プログラム、入力指示、入力データ及び処理結果等の各種データを、CPU1aでランダムアクセス展開可能に格納するメモリ領域を有して、各種状態を記憶するメモリである。また外部記憶装置1fの各種プログラム及びデータを展開自在である。
表示部1dは、CRT(Cathode Ray Tube)、又はLCD(Liquid Crystal Display)等により構成され、CPU1aから入力される表示指示に従って各種表示データの画面表示を行う。
記憶装置1eは、プログラムやデータなどが予め記憶されまたは書込み可能な記録媒体1fを有し、記録媒体1fは、磁気的、光学的記録媒体、若しくは半導体等の不揮発性メモリ等のCPU1a読取り可能な記録媒体で構成されている。記録媒体1fは、ハードディスク等の記憶装置1eに固定的に設けたもの、若しくはCD−ROM、メモリカード等の着脱自在に装着する可搬型のものを含む。この記録媒体1fには各種処理プログラム、及びこれらのプログラムで処理する又は処理されたデータ等の各種データを格納する。RAM1c及び記憶装置1eは、CPU1aの制御により内部データの書換が可能な構成である。
また、記録媒体1gに記憶されたプログラム、データ等は、その一部若しくは全部を外部機器からLAN等のネットワークを介して伝送制御部1gから受信して格納する構成にしてもよく、また、記録媒体1fはネットワーク上に構築された外部機器の記録媒体であってもよい。更に、前記各種プログラムをネットワークを介して外部機器へ送信及びインストールする構成にしてもよい。
伝送制御部1gは、ネットワークを介して、外部機器との通信を行うためのネットワークカード、ネットワークボード等によって構成される。
ネットワークは、例えばLAN(Local Area Network)等のネットワークであるが、WAN(Wide Area Network)を含めてもよく、電話回線網、ISDN回線網、専用線、移動体通信網、通信衛星回線、CATV回線、光通信回線、無線通信回線と、それらを接続するインターネットサービスプロバイダや基地局等を含む構成でもよい。
図1上の付加設定テーブル1A、位置/書式設定テーブル1Bは記録媒体1f上に記憶されるがRAM1c上に格納される構成でもよく、印刷待メモリ1C及び第2印刷待メモリ1Dは、RAM1c上に格納されるが記録媒体1f上に記憶される構成でもよい。
次に、図3を参照して、付加設定テーブル1A及び位置/書式設定テーブル1Bについて説明する。図3は、付加設定テーブル1A及び位置/書式設定テーブル1B並びにその印刷結果例を示す図である。付加設定テーブル1Aは、付加データの付加を設定する情報として、前記ドキュメント保持データを付加設定する情報であるドキュメント保持データ設定Aと、前記出力時データを付加設定する情報である出力時データ設定Bと、前記その他データを付加設定するその他データ設定Cとを記憶する。ドキュメント保持データ、出力時データ、その他データは付加設定の付加種別を示す。
ドキュメント保持データ設定Aは、更に、印刷ジョブの投入元の端末名を付加設定する情報である端末名設定A1、当該端末上で印刷ジョブ投入の指示をしたユーザ名を付加設定する情報であるユーザ名設定A2、ユーザ端末2A,2B,2Cで印刷を投入した時点での日時である印刷投入日時を付加設定する情報である印刷投入日時設定A3、印刷ジョブ中のドキュメント名を付加設定する情報であるドキュメント名設定A4等を記憶する。端末名は、ユーザ端末2A,2B,2Cのうち印刷ジョブ投入を実行する実行端末名であり、ユーザ名は、オーナ名等のユーザ名であり、ドキュメント名は、印刷ジョブ中の文書名、ファイル名等のドキュメント名である。端末名、ユーザ名、印刷投入日時、ドキュメント名等は、ドキュメント保持データのデータ種を示す。
出力時データ設定Bは、更に、印刷を実際に実行するプリンタのプリンタ名を付加設定する情報であるプリンタ名設定B1、当該プリンタ名のプリンタで実際に印刷出力をする日時である出力日時を付加設定する情報である出力日時設定B2等を記憶する。プリンタ名、出力日時等は、出力時データのデータ種を示す。
その他データ設定Cは、更に、印刷とは直接関係ない固定文字列を付加設定する情報である固定文字列設定C1、テキストやイメージ等の特定のファイルに納まっている内容を取得して付加設定する情報であるファイル指定設定C2等を記憶する。固定文字列、ファイル指定等は、その他データのデータ種を示す。また、前記ファイルの場所は、プリントサーバ1内だけではなく、ネットワーク上の外部機器上でもよい。
位置/書式設定テーブル1Bは、付加設定テーブル1Aの設定対象である各付加データの印刷位置及び書式を設定する情報として、前記付加データを付加するにあたり用紙内の何処に印刷するのかを指定する情報である位置D、前記付加データを印刷する際の書式等の情報である属性E等を記憶する。位置Dは、更に、前記付加データを位置固定して付加する場合の固定位置を指定する情報である位置固定D1、前記付加データを座標指定して付加する場合の座標位置を指定する情報である座標指定D2等を記憶する。属性Eは、更に、前記付加データのスタイルを指定する情報であるスタイルE1、前記付加データの付加文字列を指定する情報である付加文字列E2等を記憶する。
位置固定D1は、更に、ヘッダ及びフッタを指定するヘッダ/フッタ、左寄り、中寄り及び右寄りを指定する左寄り/中寄り/右寄り等を記憶する。位置固定D1により、ヘッダ/フッタの様に用紙サイズや用紙方向に依存しない固定的な位置を指定できる。座標指定D2は、指定する座標の単位である座標単位、その基点、その実際の座標の値である(X,Y)等を記憶する。座標指定D2により、例えば印刷用紙の左上を基点としたXY座標を指定することが可能である。スタイルE1は、スタイルの種類を指定する太字/斜体/下線等を記憶する。付加文字列E2は、付加データの前に置く文字列を指定する前置文字列、付加データの後に置く文字列を指定する後置文字列等を記憶する。
次に、プリントサーバ1の動作として、第1の印刷制御手順及びその定時印刷制御手順について図4、図5及び図6を用いて順に説明する。図4は、第1の印刷制御プログラムのフローチャートであり、図5は、図4の続きのフローチャートであり、図6は、定時印刷制御プログラムのフローチャートである。
先ず、第1の印刷制御手順を説明する。第1の印刷制御手順を行う前段階として、プリントサーバ1上で、印刷制御手順実行のための各種設定を予め行っておく必要がある。CPU1aは、表示部1d上に設定登録画面を表示させて、管理者に入力部1bを介して、記録媒体1f上の付加設定テーブル1A、位置/書式設定テーブル1Bの設定入力をさせて、その入力データを付加設定テーブル1A、位置/書式設定テーブル1Bに登録する。付加設定テーブル1Aには、ドキュメント保持データ、出力時データ及びその他データの各データのうちどのデータを付加するかを設定入力させて、それぞれ、ドキュメント保持データ設定A、出力時データ設定B、その他データ設定Cに登録する。位置/書式設定テーブル1Bには、具体的な数値、文字列等を設定入力させて、位置D,属性Eに登録する。
第1の印刷制御手順は、CPU1aで第1の印刷制御プログラムを実行することにより行われる。このフローチャートは、プリントサーバ1を構成するコンピュータに各機能を実現させるためのプログラムを説明する為のものである。このプログラムは、CPU1aが読取可能なプログラムコードの形態で記録媒体1fに格納されている例で説明するが、全ての機能を記録媒体1fに格納する必要は無く、必要に応じてその一部若しくは全部をネットワークを介して伝送制御部1gから受信して実現するようにしてもよい。この説明は、以下の本実施の形態及び第2の実施の形態におけるプログラムの実行の説明で同様である。
先ず、ユーザ端末2A、2B,2C上の各ユーザは、印刷ジョブの投入を行い、CPU1aは、投入された印刷ジョブを伝送制御部1gを介して受信し、RAM1cにアクセス可能に格納する(ステップS1)。そして、CPU1aは、格納された印刷ジョブからそのドキュメント名、ユーザ名、端末名及び印刷投入日時を取得する(ステップS2)。取得したドキュメント名、ユーザ名、端末名及び印刷投入日時は、アクセス可能にRAM1cへ格納する。そして、CPU1aは、記録媒体1f上の付加設定テーブル1Aを参照して、付加設定があるかを判別する(ステップS3)。
付加設定がない場合(ステップS3;NO)、CPU1aは、プリンタ3A,3B,3Cの中で印刷出力中でない空プリンタがあるかを判別する(ステップS4)。具体的には、印刷メモリ4A,4B,4Cに印刷用データ又は合成印刷用データが格納されているかどうかで判別する。空プリンタがある場合(ステップS4;YES)、CPU1aは、当該空プリンタのうちから出力先プリンタを決定する(ステップS5)。そして、CPU1aは、投入された印刷ジョブを実際に出力するデータである印刷用データに展開する(ステップS6)。そして、CPU1aは、当該印刷用データをステップS5で決定した出力先プリンタに対応する印刷メモリ4A,4B,4Cに伝送制御部1gを介して転送し(ステップS7)、第1の印刷制御手順を終了する。その後、出力先プリンタ3A,3B,3Cは、印刷メモリ4A,4B,4Cに転送された印刷ジョブの印刷用データを用いて印刷を行う。
空プリンタがない場合(ステップS4;NO)、CPU1aは、ステップS6と同様に印刷ジョブを印刷用データに展開する(ステップS8)。そして、CPU1aは、当該印刷用データを印刷待メモリ1Cに記憶し(ステップS9)、第1の印刷制御手順を終了する。当該印刷待メモリ1C中のデータは、定時印刷制御手順で処理される。
付加設定がある場合(ステップS3;YES)、CPU1aは、当該付加設定の付加種別を判別する(ステップS10)。具体的には、CPU1aは、付加設定テーブル1A中のドキュメント保持データ設定A、出力時データ設定B、その他データ設定Cが設定されているかにより、それぞれ付加種別であるドキュメント保持データ、出力時データ、その他データを判別する。
付加種別がドキュメント保持データである場合(ステップS10;ドキュメント保持データ)、CPU1aは、付加設定のデータ種を判別する(ステップS11)。具体的には、CPU1aは、付加設定テーブル1A中のドキュメント保持データ設定A中の、端末名設定A1、ユーザ名設定A2、印刷投入日時設定A3、ドキュメント名設定A4が設定されているかにより、それぞれデータ種である端末名、ユーザ名、印刷投入日時、ドキュメント名を判別する。
データ種がドキュメント名の場合(ステップS11;ドキュメント名)、CPU1aは、投入された印刷ジョブにステップS2で取得したドキュメント名を付加データとしてRAM1cにセットする(ステップS12)。データ種がユーザ名の場合(ステップS11;ユーザ名)、CPU1aは、投入された印刷ジョブにステップS2で取得したユーザ名を付加データとしてRAM1cにセットする(ステップS13)。
データ種が端末名の場合(ステップS11;端末名)、CPU1aは、投入された印刷ジョブにステップS2で取得した端末名を付加データとしてRAM1cにセットする(ステップS14)。データ種が印刷投入日時の場合(ステップS11;印刷投入日時)、CPU1aは、投入された印刷ジョブにステップS2で取得した印刷投入日時を付加データとしてRAM1cにセットする(ステップS15)。
そして、CPU1aは、印刷ジョブを頁別に印刷用データに展開する(ステップS16)。そして、CPU1aは、位置/書式設定テーブル1Bを参照して、RAM1cにセットした付加データを当該付加データに対応する位置D及び属性Eに従って印刷用データの各頁内に合成し、合成印刷用データを作成する(ステップS17)。
そして、CPU1aは、空プリンタがあるかを判別する(ステップS18)。空プリンタがある場合(ステップS18;YES)、CPU1aは、当該空プリンタを出力先プリンタとして決定する(ステップS19)。そして、CPU1aは、ステップS17で作成した頁別の合成印刷用データを当該出力先プリンタの印刷メモリ4A,4B,4Cへ伝送制御部1gを介して転送し(ステップS20)、第1の印刷制御手順を終了する。空プリンタがない場合(ステップS18;NO)、CPU1aは、ステップS17で作成した頁別の合成印刷用データを印刷待メモリ1Cに記憶し(ステップS21)、第1の印刷制御手順を終了する。
付加種別がその他データである場合(ステップS10;その他データ)、CPU1aは、付加設定のデータ種を判別する(ステップS22)。具体的には、CPU1aは、付加設定テーブル1A中のその他データ設定C中の、固定文字列設定C1、ファイル指定設定C2が設定されているかにより、それぞれデータ種である固定文字列、ファイル指定を判別する。
データ種が固定文字列の場合(ステップS22;固定文字列)、CPU1aは、固定文字列設定C1中の固定文字列を読込み、当該固定文字列を付加データとしてRAM1cにセットする(ステップS23)。データ種がファイル指定の場合(ステップS22;ファイル指定)、CPU1aは、ファイル指定設定C2を読込み、当該ファイル指定設定C2で設定されている場所に存在する特定のファイルのデータを読出し(ステップS24)、当該読出したファイルのデータを付加データとしてRAM1cにセットする(ステップS25)。ステップS23及びS25は共に、ステップS16へ進む。この場合、ステップS17では、ステップS23又はS25でセットした付加データを位置/書式テーブル1Bの位置D及び属性Eに従って頁別の合成印刷用データに合成する。
付加種別が出力時データである場合(ステップS10;出力時データ)、CPU1aは、空プリンタがあるかを判別する(ステップS26)。空プリンタがある場合(ステップS26;YES)、CPU1aは、当該空プリンタを出力先プリンタとして決定する(ステップS27)。そして、CPU1aは、付加設定のデータ種を判別する(ステップS28)。具体的には、CPU1aは、付加設定テーブル1A中の出力時データ設定B中の、プリンタ名設定B1、出力日時設定B2が設定されているかにより、それぞれデータ種であるプリンタ名、出力日時を判別する。
データ種がプリンタ名である場合(ステップS28;プリンタ名)、CPU1aは、ステップS27で決定した出力先プリンタのプリンタ名を付加データとしてRAM1cにセットする(ステップS29)。そして、CPU1aは、投入された印刷ジョブを頁別に印刷用データに展開する(ステップS30)。そして、CPU1aは、位置/書式設定テーブル1Bを用いて、RAM1cにセットした付加データを当該付加データに対応する位置D及び属性Eに従って印刷用データの各頁内に合成し、合成印刷用データを作成する(ステップS31)。そして、ステップS20へ進む。
データ種が出力日時である場合(ステップS28;出力日時)、CPU1aは、現在日時を付加データとしてRAM1cにセットし(ステップS32)、ステップS30へ進む。
空プリンタがない場合(ステップS26;NO)、CPU1aは、投入された印刷ジョブを頁別に印刷用データに展開する(ステップS33)。そして、CPU1aは、当該印刷用データを第2印刷待メモリ1Dに記憶し(ステップS34)、第1の印刷制御手順を終了する。第2印刷待メモリ1D内の印刷用データは定時印刷制御手順で処理される。
ここで、第1の印刷制御手順によるデータの出力結果例を図3を参照して説明する。図3の印刷結果は、付加設定テーブル1Aを用いて、ドキュメント保持データ設定Aの設定により付加種別がドキュメント保持データで、ユーザ名設定A2の設定により当該ドキュメント保持データのデータ種がユーザ名である。また、位置/書式設定テーブル1Bの位置Dの位置固定D1からヘッダ及び右寄りの位置を設定され、属性Eの付加文字列E2から、前置文字列が“[”であり、後置文字列が“]”に設定されているとする。ユーザ名が“tanaka”である場合、図のような“[tanaka]”が付加データとして各頁毎に一斉に合成されて印刷出力される。
次に、図6を参照して定時印刷制御手順を説明する。定時印刷制御手順は、上記の第1の印刷制御手順とは別に、プリントサーバ1で自動的に定時に処理を行う手順である。
定時印刷制御手順は、CPU1aで定時印刷制御プログラムを所定の時刻に定期的に実行することにより行われる。先ず、CPU1aは、印刷メモリ4A,4B,4Cに印刷用データ又は合成印刷用データが格納されているかにより、プリンタ3A,3B,3Cに空プリンタが存在するかを判別する(ステップT1)。空プリンタがない場合(ステップT1;NO)、当該定時印刷制御手順を終了する。
空プリンタがある場合(ステップT1;YES)、CPU1aは、印刷待メモリ1Cにデータが記憶されているかを判別する(ステップT2)。具体的には、第1の印刷制御手順のステップS9で記憶した印刷用データ、ステップS21で記憶した合成印刷用データが印刷待メモリ1Cに記憶されているかを判別する。
印刷待メモリ1Cにデータが記憶されている場合(ステップT2;YES)、CPU1aは、ステップT1で判別した空プリンタを出力先プリンタとして決定する(ステップT3)。そして、CPU1aは、印刷待メモリ1C内の1つの印刷ジョブに対応する印刷用データ又は合成印刷用データを、前記出力先プリンタの印刷メモリ4A,4B,4Cに伝送制御部1gを介して転送する(ステップT4)。
そして、CPU1aは、ステップT4で選択した1つの印刷ジョブに対応する印刷用データ又は合成印刷用データを前記出力先プリンタの印刷メモリ4A,4B,4Cから削除する(ステップT5)。そして、ステップT1へ戻る。
印刷待メモリ1Cにデータが記憶されていない場合(ステップT2;NO)、CPU1aは、第2印刷待メモリ1Dに、第1の印刷制御手順のステップS34で記憶した印刷用データが記憶されているかを判別する(ステップT6)。第2印刷待メモリ1Dに印刷用データが記憶されていない場合(ステップT6;NO)、当該定時印刷制御手順を終了する。
第2印刷待メモリ1Dに印刷用データが記憶されている場合(ステップT6;YES)、CPU1aは、ステップT1で判別した空プリンタを出力先プリンタとして決定する(ステップT7)。そして、CPU1aは、当該印刷用データのデータ種を判別する(ステップT8)。第2印刷待メモリ1D中の印刷用データは出力時データを付加予定のデータであり、データ種は、プリント名及び出力日時である。データ種がプリンタ名である場合(ステップT8;プリンタ名)、CPU1aは、ステップT7で決定した出力先プリンタのプリンタ名を付加データとしてRAM1cにセットする(ステップT9)。そして、CPU1aは、第2印刷待メモリ1D内の1つの印刷ジョブに対応する印刷用データに、位置/書式設定テーブル1Bの位置D及び属性Eに従って、RAM1cにセットした付加データを頁別に合成し、合成印刷用データを作成する(ステップT10)。
そして、CPU1aは、合成印刷用データを前記出力先プリンタの印刷メモリ4A,4B,4Cへ伝送制御部1gを介して転送する(ステップT11)。そして、CPU1aは、ステップT10で選択した1つの印刷ジョブに対応する合成印刷用データを前記出力先プリンタの印刷メモリ4A,4B,4Cから削除する(ステップT12)。そして、ステップT1へ戻る。
データ種が出力日時である場合(ステップT8;出力日時)、CPU1aは、現在の日時を付加データとしてRAM1cにセットし(ステップT13)、ステップT10へ進む。
なお、本実施の形態は、付加データとして付加種別のデータ種を1つ選択する構成であるが、複数の付加種別及び各付加種別に対応する複数のデータ種を設定して、複数の付加種別、データ種の付加データを印刷ドキュメントに付加する構成としてもよい。
また、合成印刷用データは、本実施の形態で示すように、各頁毎に設定するので、全頁に同じ付加データを付加する構成だけでなく、位置/書式設定テーブルに頁の情報を記憶させて、各頁毎に異なる付加データを付加したり、任意の頁に付加データを付加させる構成にしてもよい。更に、出力先プリンタ毎に付加データを変更できる構成にしてもよい。
よって、本実施の形態の第1の印刷制御手順によれば、印刷ドキュメントに付加データを付加する場合、プリントサーバ1で付加データの一括制御を行うので、ユーザ端末2A,2B,2C側での付加データの設定の負担をなくし、プリントサーバ1で印刷ジョブ毎の付加データ付加の一括管理を行うことができる。また、印刷出力時に初めて決定される出力時データを付加データとして付加することができる。更に、定時印刷制御手順によれば、空プリンタがない場合にも、プリンタの空きを待つよう定時に、付加データ、特に出力時データを印刷ドキュメントに付加して印刷することができる。
(第2の実施の形態)
次に本実施の形態を図7及び図8を参照して説明する。図7は、本実施例のプリントサーバを含む第2の印刷制御システムのブロック構成説明図である。図8は、第2の印刷制御プログラムのフローチャートである。
図7の印刷制御システムβのプリントサーバ6、ユーザ端末7A,7B,7C、プリンタ8A,8B,8C、それぞれの印刷メモリ9A,9B,9Cは、図1の印刷制御システムαのプリントサーバ1、ユーザ端末2A,2B,2C、プリンタ3A,3B,3C、それぞれの印刷メモリ4A,4B,4Cと同様であり、また図示しないが、プリントサーバ6は、図2のCPU1a、入力部1b、RAM1c、表示部1d、記憶装置1d、記録媒体1f、伝送制御部1g、バス1hと同様に、CPU6a、入力部6b、RAM6c、表示部6d、記憶装置6d、記録媒体6f、伝送制御部6g、バス6hを具備する。よって説明の重複を防ぐために、重複部分の説明を省略し、異なる部分の説明を行う。
プリントサーバ6は、記録媒体6g上に付加設定テーブル、位置/書式設定テーブルを格納しなく、RAM6c上に印刷待メモリ及び第2印刷待メモリも格納しない。また、印刷メモリ4A,4B,4Cはそれぞれに1つの印刷ジョブに対応する印刷用データ及び合成印刷用データを格納する構成であるが、印刷メモリ9A,9B,9Cは、複数の印刷ジョブに対応する印刷用データ及び合成印刷用データを同時に格納可能な構成である。
CPU6aは、第2の印刷制御プログラムを実行する。CPU6aは、第2の印刷制御プログラムの実行により、投入された印刷ジョブをRAM6cに格納し、CPU6aは、格納された印刷ジョブからそのドキュメント名、ユーザ名及び出力先プリンタ名を取得してRAM6cへ格納し、取得した前記出力先プリンタ名に対応するプリンタを出力先プリンタとして選択し、当該出力先プリンタの出力先印刷メモリ9A,9B,9C上に印刷待ち状態の他の印刷ジョブがあるかをチェックして判別し、他の印刷ジョブがある場合、投入された印刷ジョブを印刷用データに展開し、前記投入された印刷ジョブ、前記他の印刷ジョブそれぞれのドキュメント名、ユーザ名が同一であるかを判別し、同一でない場合、RAM6cを参照して、それぞれ前記投入された印刷ジョブの印刷用データに、当該投入された印刷ジョブのドキュメント名又はユーザ名を付加データとして合成して合成印刷用データを作成し、当該合成印刷用データを前記出力先プリンタの印刷メモリ9A,9B,9Cに転送する。
また、CPU6aは、前記他の印刷ジョブがない場合、前記投入された印刷ジョブを印刷用データに展開し、当該印刷用データを前記出力先プリンタの印刷メモリ9A,9B,9Cに転送する(図8参照)。
次に、図8を参照して第2の印刷制御手順を説明する。CPU6aは、第2の印刷制御プログラムを実行する。先ず、ユーザ端末7A、7B,7C上の各ユーザは、印刷ジョブの投入を行い、CPU6aは、投入された印刷ジョブを伝送制御部6gを介して受信し、RAM6cにアクセス可能に格納する(ステップU1)。そして、CPU6aは、格納された印刷ジョブからその保持データであるドキュメント名、ユーザ名及び出力先プリンタ名を取得する(ステップU2)。取得したドキュメント名、ユーザ名及び出力先プリンタ名は、アクセス可能にRAM6cへ格納する。
そして、CPU6aは、取得した出力先プリンタ名に対応するプリンタをプリンタ8A,8B,8Cから出力先プリンタとして選択し、当該出力先プリンタの印刷メモリ9A,9B,9C上に印刷待ち状態の他の印刷ジョブがあるかをチェックする(ステップU3)。そして、当該出力先プリンタの印刷メモリ9A,9B,9C上に他の印刷ジョブがあるかを判別する(ステップU4)。
他の印刷ジョブがある場合(ステップU4;YES)、CPU6aは、投入された印刷ジョブを印刷用データに展開する(ステップU5)。そして、CPU6aは、RAM6cを参照し、前記投入された印刷ジョブのユーザ名と、前記他の印刷ジョブのうちの1つの印刷ジョブのユーザ名とが同一であるかを判別する(ステップU6)。ユーザ名が同一でない場合(ステップU6;NO)、CPU6aは、前記投入された印刷ジョブの印刷用データに、当該投入された印刷ジョブのユーザ名を印刷ジョブの識別のための付加データとして合成して、合成印刷用データを作成する(ステップU7)。
そして、CPU6aは、前記投入された印刷ジョブの印刷用データに、ユーザ名及びドキュメント名の両方を合成したかを判別する(ステップU8)。ユーザ名及びドキュメント名を合成していない場合(ステップU8;NO)、CPU6aは、前記投入された印刷ジョブと、全ての前記他の印刷ジョブとを比較したかを判別する(ステップU9)。全ての他の印刷ジョブと比較した場合(ステップU9:YES)、CPU6aは、当該合成印刷用データを、前記出力先プリンタの印刷メモリ9A,9B,9Cに、伝送制御部6gを介して転送する(ステップU10)。そして、第2の印刷制御手順を終了する。
ユーザ名が同一である場合(ステップU6;YES)、CPU6aは、RAM6cを参照し、前記投入された印刷ジョブのドキュメント名と、ステップU6で選択した1つの他の印刷ジョブのドキュメント名とが同一であるかを判別する(ステップU11)。ドキュメント名が同一でない場合(ステップU11;NO)、CPU6aは、前記投入された印刷ジョブの印刷用データに、当該投入された印刷ジョブのドキュメント名を印刷ジョブの識別のための付加データとして合成して、合成印刷用データを作成する(ステップU12)。そして、ステップU8へ進む。
ドキュメント名が同一である場合(ステップU11;YES)、CPU6aは、前記投入された印刷ジョブの印刷用データに、当該投入された印刷ジョブのドキュメント名及びユーザ名が他の印刷ジョブと重複する旨を付加データとして合成して、合成印刷用データを作成する(ステップU13)。そして、ステップU10へ進む。
ユーザ名及びドキュメント名を合成している場合(ステップU8;YES)、ステップU10へ進む。全ての他の印刷ジョブと比較していない場合(ステップU9:YES)、ステップU6へ戻り、比較していない他の印刷ジョブと比較する。この場合、ステップU7又はU12において、ユーザ名、ドキュメント名それぞれを2重に合成することはなく、前記投入された印刷ジョブの印刷用データ又は合成印刷用データに付加データを合成する。ユーザ名、ドキュメント名のうち、投入された印刷ジョブと既に投入された印刷ジョブとで同一なものがないユーザ名、ドキュメント名を、印刷ジョブの識別に有効な保持データとして選択して付加する。
他の印刷ジョブがない場合(ステップU4;NO)、CPU6aは、投入された印刷ジョブを印刷用データに展開する(ステップU14)。そして、CPU6aは、当該印刷用データを、前記出力先プリンタの印刷メモリ9A,9B,9Cに、伝送制御部6gを介して転送する(ステップU15)。そして、第2の印刷制御手順を終了する。
なお、本実施の形態では、印刷ジョブの識別のための付加データとしてドキュメント名、ユーザ名を印刷用データに合成するが、他に、端末名、印刷投入日時等の保持データを合成する構成でもよい。また、これら複数の保持データを同時に合成する構成にしてもよい。
よって、本実施の形態によれば、印刷ドキュメントの投入時に、同一プリンタの印刷メモリ上に他の印刷ジョブが存在した場合に、投入した印刷ジョブを識別する保持データのうち有効な保持データを選択して付加して印刷出力するので、複数の印刷ジョブが同一プリンタで出力される場合も、印刷ジョブの識別を容易に行うことができる。
以上、本発明の実施の形態につき説明したが、本発明は、必ずしも上述した手段及び手法にのみ限定されるものではなく、本発明にいう目的を達成し、本発明にいう効果を有する範囲内において適宜に変更実施が可能なものである。