JPH01185722A - 印刷スプーラ - Google Patents
印刷スプーラInfo
- Publication number
- JPH01185722A JPH01185722A JP63010355A JP1035588A JPH01185722A JP H01185722 A JPH01185722 A JP H01185722A JP 63010355 A JP63010355 A JP 63010355A JP 1035588 A JP1035588 A JP 1035588A JP H01185722 A JPH01185722 A JP H01185722A
- Authority
- JP
- Japan
- Prior art keywords
- data
- file
- directory
- spool
- 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.)
- Pending
Links
- 238000013500 data storage Methods 0.000 claims abstract description 35
- 238000000034 method Methods 0.000 description 54
- 238000007726 management method Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 7
- 238000012790 confirmation Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000008280 blood Substances 0.000 description 1
- 210000004369 blood Anatomy 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Landscapes
- Record Information Processing For Printing (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、スプール印刷を行う印刷スプーラに係り、特
に、アプリケーションプログラムに対してスプール印刷
を可能とし、印刷処理におけるオペレータの操作性を向
上させた印刷スプーラに関するものである。
に、アプリケーションプログラムに対してスプール印刷
を可能とし、印刷処理におけるオペレータの操作性を向
上させた印刷スプーラに関するものである。
従来、印刷スプーラは、印刷タスクを有しており、スプ
ール印刷でリスト出力を行うためのものである。印刷タ
スクは、複数の印刷データがスプールされている場合、
一つのスプールデータの印刷が終了すると自動的に次の
スプールデータを印刷するようになっている。印刷スプ
ーラの印刷制御部(印刷タスク)は、システムプログラ
ムが管理するようになっており、一般オペレータが印刷
の中断、再実行、中止などを行う場合、メインコンソー
ル(またはそれに代わるもの)から特別な指示を与える
コマンドを印刷スプーラに入力する必要がある。
ール印刷でリスト出力を行うためのものである。印刷タ
スクは、複数の印刷データがスプールされている場合、
一つのスプールデータの印刷が終了すると自動的に次の
スプールデータを印刷するようになっている。印刷スプ
ーラの印刷制御部(印刷タスク)は、システムプログラ
ムが管理するようになっており、一般オペレータが印刷
の中断、再実行、中止などを行う場合、メインコンソー
ル(またはそれに代わるもの)から特別な指示を与える
コマンドを印刷スプーラに入力する必要がある。
なお、印刷タスクでスプール印刷する出力制御方式に関
連する公知文献として、例えば、特開昭57−2125
37号公報が挙げられる。
連する公知文献として、例えば、特開昭57−2125
37号公報が挙げられる。
従来の印刷スプーラは、印刷タスクによるリスト出力が
主な目的であり、伝票等の印刷出力のため、例えば、途
中で印刷用紙を交換して印刷出力する場合に関しては考
慮されていない。このため。
主な目的であり、伝票等の印刷出力のため、例えば、途
中で印刷用紙を交換して印刷出力する場合に関しては考
慮されていない。このため。
例えば、用紙の異なる伝票に出力すべき印刷データがス
プールに格納された場合にも、用紙切れが発生しない限
り、用紙を交換するタイミングをオペレータに告げる手
だてがなく、同じ用紙に印刷されてしまうという問題が
あった。また、プリンタエラー発生時などエラーメツセ
ージが出力されるが、エラーメツセージはシステム管理
者向けのメツセージであり、アプリケーションプログラ
ムを操作するオペレータ向けではないので、エラーメツ
セージが出力されても適格な指示が得られず、オペレー
タはどのように措置すれば良いのか解からず、オペーク
に対する操作性が悪いという問題があった。
プールに格納された場合にも、用紙切れが発生しない限
り、用紙を交換するタイミングをオペレータに告げる手
だてがなく、同じ用紙に印刷されてしまうという問題が
あった。また、プリンタエラー発生時などエラーメツセ
ージが出力されるが、エラーメツセージはシステム管理
者向けのメツセージであり、アプリケーションプログラ
ムを操作するオペレータ向けではないので、エラーメツ
セージが出力されても適格な指示が得られず、オペレー
タはどのように措置すれば良いのか解からず、オペーク
に対する操作性が悪いという問題があった。
本発明は、上記問題点を解決するためになされたもので
ある。
ある。
本発明の目的は、アプリケーションプログラムに対して
スプール印刷を可能にすることにある。
スプール印刷を可能にすることにある。
本発明の前記ならびにその他の目的と新規な特徴は、本
明細書の記述及び添付図面によって明らかになるであろ
う。
明細書の記述及び添付図面によって明らかになるであろ
う。
上記目的を達成するため、本発明においては、アプリケ
ーションプログラムが一単位の印刷処理を行う毎に、印
刷データをスプール印刷するため専用の印刷ディレクト
リを作成し、印刷データを当該印刷ディレクトリの下に
1ベージ1ファイルとして格納するスプールデータ格納
処理部と、前記印刷ディレクトリ下で印刷処理を行うデ
ータ印刷タスクとを備えたことを特徴とする。
ーションプログラムが一単位の印刷処理を行う毎に、印
刷データをスプール印刷するため専用の印刷ディレクト
リを作成し、印刷データを当該印刷ディレクトリの下に
1ベージ1ファイルとして格納するスプールデータ格納
処理部と、前記印刷ディレクトリ下で印刷処理を行うデ
ータ印刷タスクとを備えたことを特徴とする。
前記手段によれば、スプールデータ格納処理部およびデ
ータ印刷タスクが備えられる。
ータ印刷タスクが備えられる。
スプールデータ格納処理部は、アプリケーションプログ
ラムが一単位の印刷処理を行う毎に、印刷データをスプ
ール印刷するため専用の印刷ディレクトリを作成し、印
刷データを当該印刷ディレクトリの下に1ページ1ファ
イルとして格納する。
ラムが一単位の印刷処理を行う毎に、印刷データをスプ
ール印刷するため専用の印刷ディレクトリを作成し、印
刷データを当該印刷ディレクトリの下に1ページ1ファ
イルとして格納する。
格納された印刷データに対して、データ印刷タスクを起
動し、印刷ディレクトリ下で印刷処理を行う。これによ
り、アプリケーションプログラムに対してスプール印刷
が可能となる。アプリケーションプログラムで、スプー
ル印刷機能を利用できるため、プリンタの印字終了を待
つことなく次の処理を実行できるような処理を行える。
動し、印刷ディレクトリ下で印刷処理を行う。これによ
り、アプリケーションプログラムに対してスプール印刷
が可能となる。アプリケーションプログラムで、スプー
ル印刷機能を利用できるため、プリンタの印字終了を待
つことなく次の処理を実行できるような処理を行える。
アプリケーションプログラム中で、印刷の中断、再実行
を容易に行うことができ、スプールされている印刷デー
タをオペレータの意志により選択して印刷できるので、
印刷処理におけるオペレータの操作性を向上できる。
を容易に行うことができ、スプールされている印刷デー
タをオペレータの意志により選択して印刷できるので、
印刷処理におけるオペレータの操作性を向上できる。
以下、本発明の一実施例を図面を用いて具体的に説明す
る。この実施例では、印刷処理として伝票印刷を行う場
合について説明する。
る。この実施例では、印刷処理として伝票印刷を行う場
合について説明する。
第1図は、本発明の一実施例にかかる印刷スプーラの構
成を示すブロック図である。第1図において、1はスプ
ールデータ格納処理部、2はデータ印刷タスクである。
成を示すブロック図である。第1図において、1はスプ
ールデータ格納処理部、2はデータ印刷タスクである。
3はスプールデータ格納部、4は表示装置、5はキーボ
ードおよびマウス等の入力装置、6はプリンタドライバ
、7はプリンタである。スプールデータ格納処理部1は
スプールデータ格納部3に印刷データを格納する処理を
行う。スプールデータ格納処理部1はアプリケーション
プログラムにリンクされている。データ印刷タスク2は
、スプールデータ格納部3に格納されている印刷データ
を取り出し、印刷するイメージデータにデータ展開した
後に実際にプリンタ出力を行う独立したタスクであり、
プリンタドライバ6に印刷データを送出してプリンタ7
で印刷出力を行うと共に、表示装置4の画面への印刷状
態の報告を行い、キーボードおよびマウス等の入力装置
5からのオペレータ指示を受は付ける機能を有している
。
ードおよびマウス等の入力装置、6はプリンタドライバ
、7はプリンタである。スプールデータ格納処理部1は
スプールデータ格納部3に印刷データを格納する処理を
行う。スプールデータ格納処理部1はアプリケーション
プログラムにリンクされている。データ印刷タスク2は
、スプールデータ格納部3に格納されている印刷データ
を取り出し、印刷するイメージデータにデータ展開した
後に実際にプリンタ出力を行う独立したタスクであり、
プリンタドライバ6に印刷データを送出してプリンタ7
で印刷出力を行うと共に、表示装置4の画面への印刷状
態の報告を行い、キーボードおよびマウス等の入力装置
5からのオペレータ指示を受は付ける機能を有している
。
第2図は、第1図のスプールデータ格納部にスプールデ
ータとして格納された印刷データのデータ構造を示す図
である。第2図において、13はスプールデータのルー
トディレクトリ、14は伝票ディレクトリ管理ファイル
、15は伝票ディレクトリ、16は印刷ページデータ制
御ファイル、17は印刷フォーマット制御ファイル、1
8はメツセージコメントファイル、19はページデータ
ファイルである。
ータとして格納された印刷データのデータ構造を示す図
である。第2図において、13はスプールデータのルー
トディレクトリ、14は伝票ディレクトリ管理ファイル
、15は伝票ディレクトリ、16は印刷ページデータ制
御ファイル、17は印刷フォーマット制御ファイル、1
8はメツセージコメントファイル、19はページデータ
ファイルである。
ルートディレクトリ13および伝票ディレクトリ管理フ
ァイル14は、システムプログラムが予め作成してスプ
ールデータ格納部3に設定しているものである。伝票デ
ィレクトリ管理ファイル14は、伝票ディレクトリ15
を管理するファイルである。
ァイル14は、システムプログラムが予め作成してスプ
ールデータ格納部3に設定しているものである。伝票デ
ィレクトリ管理ファイル14は、伝票ディレクトリ15
を管理するファイルである。
フォーマットは第3図に示す通りである0図示するよう
に、6バイト幅の記憶領域を有し、現在の伝票ディレク
トリ番号が格納されている。データは6バイトのキャラ
クタ型データであり、現在使われている最大の伝票ディ
レクトリ15を示す6桁の数字が格納されている。伝票
印刷処理によりスプール印刷するデータが生じた際に、
伝票ディレクトリ15が生成され、伝票ディレクトリ管
理ファイル14の伝票ディレクトリ番号が更新される。
に、6バイト幅の記憶領域を有し、現在の伝票ディレク
トリ番号が格納されている。データは6バイトのキャラ
クタ型データであり、現在使われている最大の伝票ディ
レクトリ15を示す6桁の数字が格納されている。伝票
印刷処理によりスプール印刷するデータが生じた際に、
伝票ディレクトリ15が生成され、伝票ディレクトリ管
理ファイル14の伝票ディレクトリ番号が更新される。
このように、伝票ディレクトリ15が生成される毎に伝
票ディレクトリ番号が更新される。伝票ディレクトリ1
5は一つの伝票印刷単位である。伝票ディレクトリ15
の下には、伝票を印刷するにあたって必要なデータファ
イルがリンクされている。
票ディレクトリ番号が更新される。伝票ディレクトリ1
5は一つの伝票印刷単位である。伝票ディレクトリ15
の下には、伝票を印刷するにあたって必要なデータファ
イルがリンクされている。
印刷ページデータ制御ファイル16は、伝票ディレクト
リ15にリンクされ、現在印刷中のにはページデータフ
ァイル19を管理するファイルである。
リ15にリンクされ、現在印刷中のにはページデータフ
ァイル19を管理するファイルである。
フォーマットは第4図に示す通りである。印刷ページデ
ータ制御ファイル16のデータは、6バイトのキャラク
タ型データである現在のページデータファイル番号を示
す6桁文字と、1バイトのキャラクタ型データの最終ペ
ージを示す終了フラグから成っている。印刷ページデー
タ制御ファイル16に終了フラグがあるときのページデ
ータファイル番号は印刷が最終ページであることを示す
。
ータ制御ファイル16のデータは、6バイトのキャラク
タ型データである現在のページデータファイル番号を示
す6桁文字と、1バイトのキャラクタ型データの最終ペ
ージを示す終了フラグから成っている。印刷ページデー
タ制御ファイル16に終了フラグがあるときのページデ
ータファイル番号は印刷が最終ページであることを示す
。
印刷フォーマット制御ファイル17は、媒体データ、行
ピッチ、桁ピッチ、行数2桁数、用紙サイズ、ドラフト
フラグ、プリンタ情報などを格納したデータファイルで
ある。フォーマットは第5図に示す通りである。印刷フ
ォーマット制御ファイル17の中の各データはプリンタ
ドライバに対し、用紙サイズ、行ピッチ、桁ピッチなど
を指定するために用いられる。
ピッチ、桁ピッチ、行数2桁数、用紙サイズ、ドラフト
フラグ、プリンタ情報などを格納したデータファイルで
ある。フォーマットは第5図に示す通りである。印刷フ
ォーマット制御ファイル17の中の各データはプリンタ
ドライバに対し、用紙サイズ、行ピッチ、桁ピッチなど
を指定するために用いられる。
メツセージコメントファイル18は、オペレータに対す
るコメントを格納するファイルである。フォーマットは
第6図に示す通りである。このファイルのデータは、2
0バイトのキャラクタ型データの処理名称と、20バイ
トのキャラクタ型データのコメントと、1バイトのバイ
ナリ型データの確認フラグとから成っている。
るコメントを格納するファイルである。フォーマットは
第6図に示す通りである。このファイルのデータは、2
0バイトのキャラクタ型データの処理名称と、20バイ
トのキャラクタ型データのコメントと、1バイトのバイ
ナリ型データの確認フラグとから成っている。
ページデータファイル19は、1ページ毎の印刷データ
を格納するファイルである。フォーマットは第7図に示
す通りである。1行のデータは、デー°夕種コード、レ
コード長1項目長、罫線情報。
を格納するファイルである。フォーマットは第7図に示
す通りである。1行のデータは、デー°夕種コード、レ
コード長1項目長、罫線情報。
項目情報2項目データ1〜項目データnにより成ってい
る。項目長、罫線情報2項目情報9項目データから成る
一連の各項目のデータにより、1行中に含まれる項目(
1つのワードを示す)を定義している。
る。項目長、罫線情報2項目情報9項目データから成る
一連の各項目のデータにより、1行中に含まれる項目(
1つのワードを示す)を定義している。
次に、このように構成されている印刷スプーラにかかる
動作の概略を説明する。第1図および第2図を参照して
説明する。アプリケーションプログラムで一つの伝票印
刷処理が発生した場合、スプールデータ格納処理部1は
、伝票ディレクトリ管理ファイル14から伝票ディレク
トリ番号を読み取り、新たな伝票ディレクトリ15を生
成した後、伝票ディレクトリ管理ファイル14の伝票デ
ィレクトリ番号を更新する。この場合、伝票ディレクト
リ管理ファイル14に対しては、排他制御を行うため、
伝票ディレクトリ15を重複して生成することはない、
スプールデータ格納処理部1は、伝票ディレクトリ15
の作成処理が終わると、当該伝票ディレクトリ15のパ
スを引数としてデータ印刷タスク2に与え、データ印刷
タスク2を起動する。その上で伝票印刷処理の印刷デー
タを、生成した伝票ディレクトリ15にリンクしている
各ファイルに格納して行く。別の伝票印刷処理が発生し
た場合も、同様にして、伝票印刷処理に対応して別の伝
票ディレクトリ15を生成して同様の処理を行う。
動作の概略を説明する。第1図および第2図を参照して
説明する。アプリケーションプログラムで一つの伝票印
刷処理が発生した場合、スプールデータ格納処理部1は
、伝票ディレクトリ管理ファイル14から伝票ディレク
トリ番号を読み取り、新たな伝票ディレクトリ15を生
成した後、伝票ディレクトリ管理ファイル14の伝票デ
ィレクトリ番号を更新する。この場合、伝票ディレクト
リ管理ファイル14に対しては、排他制御を行うため、
伝票ディレクトリ15を重複して生成することはない、
スプールデータ格納処理部1は、伝票ディレクトリ15
の作成処理が終わると、当該伝票ディレクトリ15のパ
スを引数としてデータ印刷タスク2に与え、データ印刷
タスク2を起動する。その上で伝票印刷処理の印刷デー
タを、生成した伝票ディレクトリ15にリンクしている
各ファイルに格納して行く。別の伝票印刷処理が発生し
た場合も、同様にして、伝票印刷処理に対応して別の伝
票ディレクトリ15を生成して同様の処理を行う。
データ印刷タスク2は与えられた伝票ディレクトリ15
下に印刷データの印刷をする。また、データ印刷タスク
2は、伝票ディレクトリ15下で印刷処理を行い、オペ
レータに対し、印刷処理の状態を逐次画面上に報告する
ため、オペレータはその伝票印刷の状態を把握し易くな
る。また、印刷中断指示、印刷再開指示もオペレータは
印刷状態報告画面に対しマウスなどのポインティングデ
バイスで容易に指示することができる。
下に印刷データの印刷をする。また、データ印刷タスク
2は、伝票ディレクトリ15下で印刷処理を行い、オペ
レータに対し、印刷処理の状態を逐次画面上に報告する
ため、オペレータはその伝票印刷の状態を把握し易くな
る。また、印刷中断指示、印刷再開指示もオペレータは
印刷状態報告画面に対しマウスなどのポインティングデ
バイスで容易に指示することができる。
第8図は、スプールデータ格納処理部1の要部の処理動
作を示すフローチャートである。第9a図および第9b
図は、データ印刷タスク2の要部の処理動作を示すフロ
ーチャートである。また、第10図は、スプールデータ
格納処理部1に受授されるデータフォーマットを示す図
である。
作を示すフローチャートである。第9a図および第9b
図は、データ印刷タスク2の要部の処理動作を示すフロ
ーチャートである。また、第10図は、スプールデータ
格納処理部1に受授されるデータフォーマットを示す図
である。
スプールデータ格納処理部1はデータ種コードおよびコ
ントロールコードの制御コードにより制御される。これ
らの制御コードの内容は、次に示す第1表の通りである
。
ントロールコードの制御コードにより制御される。これ
らの制御コードの内容は、次に示す第1表の通りである
。
第1表
各々のデータ種コードおよびコントロールコードの制御
コードによるスプールデータ格納処理部1の動作は次の
ようになっている。
コードによるスプールデータ格納処理部1の動作は次の
ようになっている。
[11デ一タ種コード(00)、、、コントロールコー
ド(o9)、sのとき、 i)伝票ディレクトリ管理ファイル14より作成すべき
伝票ディレクトリ15の番号を読み出し、その番号で伝
票ディレクトリ15を作成した後に、伝票ディレクトリ
管理ファイル14を更新する。
ド(o9)、sのとき、 i)伝票ディレクトリ管理ファイル14より作成すべき
伝票ディレクトリ15の番号を読み出し、その番号で伝
票ディレクトリ15を作成した後に、伝票ディレクトリ
管理ファイル14を更新する。
it)印刷ページデータ制御ファイル16を作成する。
このときの伝票ディレクトリ管理ファイル14が示す伝
票ディレクトリ番号はroooooo」である。
票ディレクトリ番号はroooooo」である。
血)印刷フォーマット制御ファイル17を作成する。印
刷フォーマット制御ファイル17の内容は、受授された
データフォーマット(第10図)のうち、3バイト目の
媒体データから38バイト目のプリンタ情報データの最
後のデータまでのデータである。
刷フォーマット制御ファイル17の内容は、受授された
データフォーマット(第10図)のうち、3バイト目の
媒体データから38バイト目のプリンタ情報データの最
後のデータまでのデータである。
iv)アプリケーションプログラムのグローバル変数よ
りメツセージコメントファイル18を作成する。
りメツセージコメントファイル18を作成する。
V)データ印刷タスク2を起動する。
[II]データ種コード(00)、、、コントロールコ
ード(oA)1gのとき、 ページデータファイル19に、データ種コードとコント
ロールコードをそのまま[(00)、、。
ード(oA)1gのとき、 ページデータファイル19に、データ種コードとコント
ロールコードをそのまま[(00)、、。
(OA)□6]追加する。
[■コデータ種コード(00)、、、コントロールコー
ド(QC)、、のとき、 ページデータファイル19をクローズし、印刷ページデ
ータ制御ファイル16を更新する。
ド(QC)、、のとき、 ページデータファイル19をクローズし、印刷ページデ
ータ制御ファイル16を更新する。
[IV]データ種コード(10)、、またはデータ種コ
ード(11)L、のとき、 ページデータファイル19に受授されたデータフォーマ
ット(第10図)の内、39バイト目のレコード長デー
タ(2バイト)以下のデータを追加する。
ード(11)L、のとき、 ページデータファイル19に受授されたデータフォーマ
ット(第10図)の内、39バイト目のレコード長デー
タ(2バイト)以下のデータを追加する。
[■コデータ種コード(FF)1.のとき、印刷ページ
データ制御ファイル16の終了フラグ(第4図)をオン
にする。
データ制御ファイル16の終了フラグ(第4図)をオン
にする。
なお、上記のうち[II]または[TV]が送られたと
き、ページデータファイル19がオープンされていない
状態ならば、スプールデータ格納処理部1は新たにペー
ジデータファイル19を作成し、オープンする。
き、ページデータファイル19がオープンされていない
状態ならば、スプールデータ格納処理部1は新たにペー
ジデータファイル19を作成し、オープンする。
次に、伝票印刷の処理を例として印刷スプーラの動作を
説明する。第8図を参照して、スプールデータ格納処理
を説明する。
説明する。第8図を参照して、スプールデータ格納処理
を説明する。
[初期データの設定]
アプリケーションプログラムは、伝票印刷処理の最初に
、スプールデータ格納処理部1に対し初期データ[デー
タ種コード(00)、、、コントロールコード(o9)
z、コを送る。初期データを受は取った時、スプールデ
ータ格納処理部1は、まず、ステップ20の制御コード
の判定処理で、初期データを受は取ったことを確認する
と、ステップ21に進み、伝票ディレクトリ管理ファイ
ル14を読取り、作成すべき伝票ディレクトリ番号を読
取る。ステップ22のエラーチエツクの後に、ステップ
23に進み、読取った伝票ディレクトリ番号で新しく伝
票ディレクトリ15を作成する。このとき、伝票ディレ
クトリ管理ファイル14を更新する。なお、ステップ2
3の処理では伝票ディレクトリ管理ファイル14は排他
制御されているため、他タスクから伝票ディレクトリ管
理ファイル14の内容を変更されることはない。更にス
テップ24のエラーチエツクの後に、ステップ25に進
み、作成した伝票ディレクトリ15の下に印刷ページデ
ー・タ制御ファイル16.印刷フォーマット制御ファイ
ル17.メツセージコメントファイル18を作成する0
作成する各ファイルの内容は、 印刷ページデータ制御ファイル16(第4図):ページ
データファイル番号はOとし、終了フラグはオフとする
。
、スプールデータ格納処理部1に対し初期データ[デー
タ種コード(00)、、、コントロールコード(o9)
z、コを送る。初期データを受は取った時、スプールデ
ータ格納処理部1は、まず、ステップ20の制御コード
の判定処理で、初期データを受は取ったことを確認する
と、ステップ21に進み、伝票ディレクトリ管理ファイ
ル14を読取り、作成すべき伝票ディレクトリ番号を読
取る。ステップ22のエラーチエツクの後に、ステップ
23に進み、読取った伝票ディレクトリ番号で新しく伝
票ディレクトリ15を作成する。このとき、伝票ディレ
クトリ管理ファイル14を更新する。なお、ステップ2
3の処理では伝票ディレクトリ管理ファイル14は排他
制御されているため、他タスクから伝票ディレクトリ管
理ファイル14の内容を変更されることはない。更にス
テップ24のエラーチエツクの後に、ステップ25に進
み、作成した伝票ディレクトリ15の下に印刷ページデ
ー・タ制御ファイル16.印刷フォーマット制御ファイ
ル17.メツセージコメントファイル18を作成する0
作成する各ファイルの内容は、 印刷ページデータ制御ファイル16(第4図):ページ
データファイル番号はOとし、終了フラグはオフとする
。
印刷フォーマット制御ファイル17(第5図):受授さ
れたデータフォーマット[第10図中の3バイト目(媒
体コード)から38バイト目(プリンタ情報)までコの
データ。
れたデータフォーマット[第10図中の3バイト目(媒
体コード)から38バイト目(プリンタ情報)までコの
データ。
メツセージコメントファイル18(第6図):アプリケ
ーションプログラムのグローバル変数より得られる処理
名称、コメント、および確認フラグの各データ。
ーションプログラムのグローバル変数より得られる処理
名称、コメント、および確認フラグの各データ。
である。
ステップ25で各ファイルを作成し、ステップ26のエ
ラーチエツクを行った後、次のステップ27において、
データ印刷タスク2を起動する。
ラーチエツクを行った後、次のステップ27において、
データ印刷タスク2を起動する。
データ印刷タスク2の起動では、引数としてステップ2
3で作成した伝票ディレクトリ15のパス名を与える。
3で作成した伝票ディレクトリ15のパス名を与える。
データ印刷タスク2の起動完了後、ページセットフラグ
をオンにして処理を終了する。
をオンにして処理を終了する。
[印刷データの格納処理]
アプリケーションプログラムが1行ずつの印刷データを
制御コード[データ種コード(XO)、S。
制御コード[データ種コード(XO)、S。
データ種コード(11) 、s−データ種コード(00
)、6およびコントロールコード(OA)1.のデータ
コと共に、スプールデータ格納処理部1に送ると、ステ
ップ20で制御コードを判定して、ステップ28に進む
。ステップ28でページセットフラグがオンになってい
ることを確認し、次にステップ29で1行目のデータで
あるか否かを判定する。1行目のデータであればページ
の最初のデータであるので、ステップ30で新たにペー
ジデータファイル19を作成して、ファイルをオープン
し、1行目のデータでなければ、そのまま次のステップ
31に進み、データの種類を判定する。
)、6およびコントロールコード(OA)1.のデータ
コと共に、スプールデータ格納処理部1に送ると、ステ
ップ20で制御コードを判定して、ステップ28に進む
。ステップ28でページセットフラグがオンになってい
ることを確認し、次にステップ29で1行目のデータで
あるか否かを判定する。1行目のデータであればページ
の最初のデータであるので、ステップ30で新たにペー
ジデータファイル19を作成して、ファイルをオープン
し、1行目のデータでなければ、そのまま次のステップ
31に進み、データの種類を判定する。
ステップ31の判定で、データが1行データであれば、
ステップ32で印刷データを展開し現在オープン中のペ
ージデータファイル19に追加格納する。格納する印刷
データは受授したデータのデータフォーマット(第10
図)のデータ種コードと39バイト目(レコード長)以
下のデータである。
ステップ32で印刷データを展開し現在オープン中のペ
ージデータファイル19に追加格納する。格納する印刷
データは受授したデータのデータフォーマット(第10
図)のデータ種コードと39バイト目(レコード長)以
下のデータである。
次にステップ33のエラーチエツクを行い、1行データ
の格納処理を終了する。ステップ31の判定で、データ
が改行コード[データ種Coo)、。
の格納処理を終了する。ステップ31の判定で、データ
が改行コード[データ種Coo)、。
とコントロールコード(OA)、、]であれば、ステッ
プ34でデータ種コードとコントロールコードの改行コ
ードを格納し、次にステップ35のエラーチエツクを行
い、改行データの格納処理を終了する。このステップ3
2およびステップ34の処理は、後述する改頁データの
受信まで繰り返し行われ、1ページの印刷データである
ページデータファイル19が完成させられる。
プ34でデータ種コードとコントロールコードの改行コ
ードを格納し、次にステップ35のエラーチエツクを行
い、改行データの格納処理を終了する。このステップ3
2およびステップ34の処理は、後述する改頁データの
受信まで繰り返し行われ、1ページの印刷データである
ページデータファイル19が完成させられる。
一方、ステップ31のデータの種類判定で、データが改
頁データ[データ種コード(00)、、とコントロール
コード(QC)、、コであれば、ステツブ36に進んで
改頁処理を行う。改頁データはアプリケーションプログ
ラムが1頁の印刷データスプールデータ格納処理部1へ
の送信が終わると、送出される。ステップ36の改頁処
理では、現在オープン中のページデータファイル19を
クローズし、印刷ページデータ制御ファイル16を更新
する。
頁データ[データ種コード(00)、、とコントロール
コード(QC)、、コであれば、ステツブ36に進んで
改頁処理を行う。改頁データはアプリケーションプログ
ラムが1頁の印刷データスプールデータ格納処理部1へ
の送信が終わると、送出される。ステップ36の改頁処
理では、現在オープン中のページデータファイル19を
クローズし、印刷ページデータ制御ファイル16を更新
する。
ページデータファイル19をクローズすることはそのペ
ージデータが完成したことである。例えば、番号1のペ
ージデータファイル19が完成したとき、印刷ページデ
ータ制御ファイル16に書かれるページデータファイル
番号はroooool」となる。ステップ36の改頁処
理が終了すると、ステップ37のエラーチエツクを行い
、処理を終了する。
ージデータが完成したことである。例えば、番号1のペ
ージデータファイル19が完成したとき、印刷ページデ
ータ制御ファイル16に書かれるページデータファイル
番号はroooool」となる。ステップ36の改頁処
理が終了すると、ステップ37のエラーチエツクを行い
、処理を終了する。
[終了処理]
アプリケーションプログラムは、印刷データの送信と改
頁データの送信を繰り返し、次々にページデータファイ
ル19を作成し、伝票印刷のための印刷データを1ペー
ジずつスプールデータ格納部に格納処理して行く。全て
のページの格納処理が完了すると、スプールデータ格納
処理部1に対して、終了コード[データ種コード(FF
)、、]を送る。終了コードを受信すると、ステップ2
0の制御コードの判定処理で、これを判定してステップ
38の終了処理を行う。終了処理では印刷ページデータ
制御ファイル16の終了フラグをオンにし、ページセッ
トフラグをオフにする。次にステップ39のエラーチエ
ツクを行い、処理を終了する。
頁データの送信を繰り返し、次々にページデータファイ
ル19を作成し、伝票印刷のための印刷データを1ペー
ジずつスプールデータ格納部に格納処理して行く。全て
のページの格納処理が完了すると、スプールデータ格納
処理部1に対して、終了コード[データ種コード(FF
)、、]を送る。終了コードを受信すると、ステップ2
0の制御コードの判定処理で、これを判定してステップ
38の終了処理を行う。終了処理では印刷ページデータ
制御ファイル16の終了フラグをオンにし、ページセッ
トフラグをオフにする。次にステップ39のエラーチエ
ツクを行い、処理を終了する。
これら一連の処理の各エラーチエツク処理でエラーが検
出されると、ステップ40に進んでエラー処理を行う。
出されると、ステップ40に進んでエラー処理を行う。
この場合には正常終了とならず、エラー終了となる。
アプリケーションプログラムで、他に伝票印刷処理が発
生すると、スプールデータ格納処理部1で、第8図で示
した一連の処理を行い、他の伝票印刷用のスプールデー
タを作成する。
生すると、スプールデータ格納処理部1で、第8図で示
した一連の処理を行い、他の伝票印刷用のスプールデー
タを作成する。
次に第9a図および第9b図を参照して、データ印刷タ
スク2の処理を説明する。第8図のフローチャートのス
テップ27で起動されたデータ印刷タスク2は、起動時
に引数として与えられた伝票ディレクトリ15下の各フ
ァイルを対象とし、以下の処理で印刷制御を行う、まず
、ステップ5゜において、オペレーティングシステム(
OS)に対して仮想端末を確保するシステムコールを発
行し、仮想端末を確保する。この仮想端末はオペレータ
とのインタフェースを保つために用いる端末である。次
にステップ51のエラーチエツクを行い、ステップ52
でメツセージコメントファイル18から処理名称、コメ
ントを読出し、ステラップ50で確保した仮想端末上に
処理名称、コメントを表示する。ここで、もしメツセー
ジコメントファイル18の確認フラグがオフならば、コ
メントは表示せず、処理名称のみを表示する。次にステ
ップ53のエラーチエツクを行い、ステップ54での印
刷終了か否かの判定を行う。印刷終了でないと、ステッ
プ55でプリンタドライバ6に対し、プリンタオープン
のシステムコールを発行し、プリンタをオープンする。
スク2の処理を説明する。第8図のフローチャートのス
テップ27で起動されたデータ印刷タスク2は、起動時
に引数として与えられた伝票ディレクトリ15下の各フ
ァイルを対象とし、以下の処理で印刷制御を行う、まず
、ステップ5゜において、オペレーティングシステム(
OS)に対して仮想端末を確保するシステムコールを発
行し、仮想端末を確保する。この仮想端末はオペレータ
とのインタフェースを保つために用いる端末である。次
にステップ51のエラーチエツクを行い、ステップ52
でメツセージコメントファイル18から処理名称、コメ
ントを読出し、ステラップ50で確保した仮想端末上に
処理名称、コメントを表示する。ここで、もしメツセー
ジコメントファイル18の確認フラグがオフならば、コ
メントは表示せず、処理名称のみを表示する。次にステ
ップ53のエラーチエツクを行い、ステップ54での印
刷終了か否かの判定を行う。印刷終了でないと、ステッ
プ55でプリンタドライバ6に対し、プリンタオープン
のシステムコールを発行し、プリンタをオープンする。
このとき、印刷フォーマット制御ファイル17からデー
タを読出し、メモリ上に展開する。
タを読出し、メモリ上に展開する。
次にステップ56でプリンタがオープン状態であるか否
かを判定する。プリンタがオープン状態でないと、ステ
ップ57でプリンタビジーの表示を行い、ステップ58
でユーザの応答を待ち、再びステップ55のプリンタオ
ープンの処理を行う。
かを判定する。プリンタがオープン状態でないと、ステ
ップ57でプリンタビジーの表示を行い、ステップ58
でユーザの応答を待ち、再びステップ55のプリンタオ
ープンの処理を行う。
一方、プリンタがオープン状態であると、ステップ59
で、印刷ページデータ制御ファイル16から印刷可能な
ページデータファイル19の番号を読み出し、次に印刷
するページデータファイル19をオープンする。ステッ
プ60でファイルがオープン状態になったか否かを確認
し、ファイルがオープン状態にならないと、再びステッ
プ59のファイルオープン処理を行う。ファイルがオー
プンすると、ステップ61において、オープンしたペー
ジデータファイル19からデータを読み出し印刷データ
としてメモリ上に展開する。データの展開は、例えば、
データ種コードにより、罫線有り項目。
で、印刷ページデータ制御ファイル16から印刷可能な
ページデータファイル19の番号を読み出し、次に印刷
するページデータファイル19をオープンする。ステッ
プ60でファイルがオープン状態になったか否かを確認
し、ファイルがオープン状態にならないと、再びステッ
プ59のファイルオープン処理を行う。ファイルがオー
プンすると、ステップ61において、オープンしたペー
ジデータファイル19からデータを読み出し印刷データ
としてメモリ上に展開する。データの展開は、例えば、
データ種コードにより、罫線有り項目。
罫線なし項目、改行コードに分類し、データ展開を行う
。次にステップ62において、展開した印刷データと印
刷フォーマットデータを合わせて、オープンしたプリン
タに出力するため、プリンタに対するデータの書込み処
理を行う。次にステップ63で書込みエラーのチエツク
を行った後、ステップ64で印刷が完了したページデー
タファイルを削除する。そしてステップ59に戻り、印
刷ページデータ制御ファイル16から印刷可能なページ
データファイル19の番号を読み出し、次に印刷するペ
ージデータファイルをオープンし、ステップ59〜ステ
ツプ64の処理を繰返し行い、印刷ページデータ制御フ
ァイル16で終了フラグがオンされた番号のページデー
タファイル19(最終ページを意味する)の処理が終了
するまで繰り返す。
。次にステップ62において、展開した印刷データと印
刷フォーマットデータを合わせて、オープンしたプリン
タに出力するため、プリンタに対するデータの書込み処
理を行う。次にステップ63で書込みエラーのチエツク
を行った後、ステップ64で印刷が完了したページデー
タファイルを削除する。そしてステップ59に戻り、印
刷ページデータ制御ファイル16から印刷可能なページ
データファイル19の番号を読み出し、次に印刷するペ
ージデータファイルをオープンし、ステップ59〜ステ
ツプ64の処理を繰返し行い、印刷ページデータ制御フ
ァイル16で終了フラグがオンされた番号のページデー
タファイル19(最終ページを意味する)の処理が終了
するまで繰り返す。
最終ページの印刷が終了すると、次に印刷するページデ
ータファイルがオープンできなくなるので、ステップ6
0のオープンエラーによりステップ54に進み、印刷終
了の判定によりステップ65の終了処理を行う。終了処
理では、プリンタをクローズし、仮想端末を解放して、
起動時に引数で与えられた伝票ディレクトリ15にリン
クされている各ファイルを当該伝票ディレクトリ15を
含めて全て削除する。なお、これら一連の処理の各エラ
ーチエツク処理でエラーが検出されると、ステップ66
に進んで、エラー表示を行い、ステップ67でユーザ応
答待ちの後、ステップ68のエラー処理を行い、一連の
処理を終了する。
ータファイルがオープンできなくなるので、ステップ6
0のオープンエラーによりステップ54に進み、印刷終
了の判定によりステップ65の終了処理を行う。終了処
理では、プリンタをクローズし、仮想端末を解放して、
起動時に引数で与えられた伝票ディレクトリ15にリン
クされている各ファイルを当該伝票ディレクトリ15を
含めて全て削除する。なお、これら一連の処理の各エラ
ーチエツク処理でエラーが検出されると、ステップ66
に進んで、エラー表示を行い、ステップ67でユーザ応
答待ちの後、ステップ68のエラー処理を行い、一連の
処理を終了する。
データ印刷タスク2は、印刷処理の間、仮想端末上に処
理の状況を逐次報告する。このため、オペレータは、印
刷の中断、エラー発生時のりカバリ−2印刷処理の中止
等の指示を、マウスおよびびキーボードによる簡易な操
作で行える。
理の状況を逐次報告する。このため、オペレータは、印
刷の中断、エラー発生時のりカバリ−2印刷処理の中止
等の指示を、マウスおよびびキーボードによる簡易な操
作で行える。
以上、本発明を実施例にもとづき具体的に説明したが、
本発明は、前記実施例に限定されるものではなく、その
要旨を逸脱しない範囲において種々変更可能であること
は言うまでもない。
本発明は、前記実施例に限定されるものではなく、その
要旨を逸脱しない範囲において種々変更可能であること
は言うまでもない。
以上、説明したように、本発明によれば、アプリケーシ
ョンプログラムは、スプール印刷機能を利用できるため
、プリンタの印字終了を待つことなく次の処理を実行で
きるような処理を行える。
ョンプログラムは、スプール印刷機能を利用できるため
、プリンタの印字終了を待つことなく次の処理を実行で
きるような処理を行える。
また、アプリケーションプログラム中で、印刷の中断、
再実行を容易に行うことができ、スプールされている印
刷データをオペレータの意志により選択した印刷できる
ので、印刷処理におけるオペレータの操作性を向上でき
る効果がある。
再実行を容易に行うことができ、スプールされている印
刷データをオペレータの意志により選択した印刷できる
ので、印刷処理におけるオペレータの操作性を向上でき
る効果がある。
第1図は1本発明の一実施例にかかる印刷スプーラの構
成を示すブロック図、 第2図は、スプールデータ格納部にスプールデータとし
て格納された印刷データのデータ構造を示す図、 第3図は、伝票ディレクトリ管理ファイルのフォーマッ
トを示す図、 第4図は、印刷ページデータ制御ファイルのフォーマッ
トを示す図、 第5図は、印刷フォーマット制御ファイルのフォーマッ
トを示す図、 第6図は、メツセージコメントファイルのフォーマット
を示す図、 第7図は、ページデータファイルのフォーマットを示す
図、 第8図は、スプールデータ格納処理部の要部の処理動作
を示すフローチャート、 第9a図および第9b図は、データ印刷タスクの要部の
処理動作を示すフローチャート、第10図は、スプール
データ格納処理部に受授されるデータフォーマットを示
す図である。 図中、1・・・スプールデータ格納処理部、2・・・デ
ータ印刷タスクである。3・・・スプールデータ格納部
、4・・・表示装置、5・・・入力装置、6・・・プリ
ンタドライバ、7・・・プリンタ、13・・・ルートデ
ィレクトリ、14・・・伝票ディレクトリ管理ファイル
、15・・・伝票ディレクトリ、16・・・印刷ページ
データ制御ファイル、17・・・印刷フォーマット制御
ファイル、18・・メツセージコメントファイル、19
・・・ページデータファイル。
成を示すブロック図、 第2図は、スプールデータ格納部にスプールデータとし
て格納された印刷データのデータ構造を示す図、 第3図は、伝票ディレクトリ管理ファイルのフォーマッ
トを示す図、 第4図は、印刷ページデータ制御ファイルのフォーマッ
トを示す図、 第5図は、印刷フォーマット制御ファイルのフォーマッ
トを示す図、 第6図は、メツセージコメントファイルのフォーマット
を示す図、 第7図は、ページデータファイルのフォーマットを示す
図、 第8図は、スプールデータ格納処理部の要部の処理動作
を示すフローチャート、 第9a図および第9b図は、データ印刷タスクの要部の
処理動作を示すフローチャート、第10図は、スプール
データ格納処理部に受授されるデータフォーマットを示
す図である。 図中、1・・・スプールデータ格納処理部、2・・・デ
ータ印刷タスクである。3・・・スプールデータ格納部
、4・・・表示装置、5・・・入力装置、6・・・プリ
ンタドライバ、7・・・プリンタ、13・・・ルートデ
ィレクトリ、14・・・伝票ディレクトリ管理ファイル
、15・・・伝票ディレクトリ、16・・・印刷ページ
データ制御ファイル、17・・・印刷フォーマット制御
ファイル、18・・メツセージコメントファイル、19
・・・ページデータファイル。
Claims (1)
- 1、アプリケーションプログラムが一単位の印刷処理を
行う毎に、印刷データをスプール印刷するため専用の印
刷ディレクトリを作成し、印刷データを当該印刷ディレ
クトリの下に1ページ1ファイルとして格納するスプー
ルデータ格納処理部と、前記印刷ディレクトリ下で印刷
処理を行うデータ印刷タスクとを備えたことを特徴とす
る印刷スプーラ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63010355A JPH01185722A (ja) | 1988-01-20 | 1988-01-20 | 印刷スプーラ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63010355A JPH01185722A (ja) | 1988-01-20 | 1988-01-20 | 印刷スプーラ |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH01185722A true JPH01185722A (ja) | 1989-07-25 |
Family
ID=11747872
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63010355A Pending JPH01185722A (ja) | 1988-01-20 | 1988-01-20 | 印刷スプーラ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH01185722A (ja) |
-
1988
- 1988-01-20 JP JP63010355A patent/JPH01185722A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4829468A (en) | Print control system | |
US4445795A (en) | Method and apparatus for merge processing in a text processing system | |
JP2002163086A (ja) | 情報処理装置及び分散印刷制御方法及び記憶媒体並びにプログラム | |
JP2001350606A (ja) | 印刷システム、印刷データ処理方法及び該方法を実施するためのプログラムを記録した記録媒体 | |
US4996640A (en) | Data processing system | |
JPH01185722A (ja) | 印刷スプーラ | |
JP4306973B2 (ja) | 印刷制御装置およびデータ処理方法 | |
JP2001056776A (ja) | クライアントサーバシステム、及び画像処理状況監視方法 | |
US5850510A (en) | Interpreter language processing device | |
US7184154B1 (en) | Method of generating printer setup instructions | |
JP2828971B2 (ja) | 印刷制御システム | |
JP2683234B2 (ja) | 文書作成方法およびその装置 | |
JP2005173913A (ja) | 印刷システム、プリンタドライバ及びプリンタ | |
JP2000194514A (ja) | ドキュメント処理装置及び記憶媒体 | |
JPH0324979A (ja) | 文書データ印字装置 | |
JPH0814749B2 (ja) | ヘルプ画面生成装置 | |
JPH01161428A (ja) | 対話型ライタ制御方式 | |
JP2004062875A (ja) | 印刷システム、印刷装置、及び印刷制御方法 | |
JPH03148743A (ja) | マルチタスク処理方式 | |
JP2000172461A (ja) | ファイル印刷制御方法及びプログラム記憶媒体 | |
JPH027156A (ja) | 文書処理装置における文書バックアップ装置 | |
JP2705192B2 (ja) | 文書編集装置 | |
JP3079825B2 (ja) | 電子計算機装置 | |
JP2003005942A (ja) | 異文書統合出力方法及びその実施装置並びにその処理プログラム | |
JPH04267459A (ja) | 処理の自動化装置及びその方式 |