(57)【要約】【課題】効率的な一括印刷を実現することを課題とする。【解決手段】帳票を印刷する複数のプリンタ４２と、複数のプリンタを制御する管理サーバ１とを有し、管理サーバ１は、帳票の種類に応じた印刷想定時間を有する帳票種別マスタ３２と、印刷要求された帳票の印刷想定時間を、帳票の種類に応じて積算し、積算された印刷想定時間を基に印刷完了予想時刻を算出し、印刷完了予想時刻が、すべての帳票の印刷が完了する予定時刻である完了予定時刻を超えない範囲の帳票に対して所定のプリンタ４２を割り当てる印刷処理部１３と、を有することを特徴とする。【選択図】図１
2019032638.tif 000002
【特許請求の範囲】
【請求項１】
印刷物を印刷する複数のプリンタと、
前記複数のプリンタを制御する制御装置と
を有し、
前記制御装置は、
前記印刷物の種類に応じた印刷時間を有する記憶部と、
印刷要求された複数の前記印刷物の前記印刷時間を、前記印刷物の種類に応じて積算し、積算された印刷時間を基に印刷完了予想時刻を算出し、前記印刷完了予想時刻が、すべての前記印刷物の印刷が完了する予定時刻である完了予定時刻を超えない範囲の印刷物に対して所定の前記プリンタを割り当てる印刷処理部と、
を有することを特徴とする印刷システム。
【請求項２】
前記印刷処理部は、
前記積算された印刷時間に、所定の時間である安全時間を加算する
ことを特徴とする請求項１に記載の印刷システム。
【請求項３】
所定の前記プリンタにおいて印刷が完了した印刷物について、印刷に要した実績印刷時間を前記印刷物の種類毎に算出し、前記所定のプリンタにおいて前記印刷が未完了の印刷物について、前記印刷物の種類に応じて前記実績印刷時間を積算し、当該積算された実績印刷時間を基に印刷完了予想時刻を再算出し、当該再算出された印刷完了予想時刻が、前記完了予定時刻を超える場合、警報部に警報を出力させる印刷状態監視部
を有することを特徴とする請求項１または請求項２に記載の印刷システム。
【請求項４】
前記印刷処理部は、
前記実績印刷時間を前記印刷時間として用いる
ことを特徴とする請求項３に記載の印刷システム。
【請求項５】
前記印刷物は帳票である
ことを特徴とする請求項１から請求項４のいずれか一項に記載の印刷システム。
【請求項６】
印刷物を印刷する複数のプリンタと、
前記複数のプリンタを制御し、前記印刷物の種類に応じた印刷時間を有する記憶部を有する制御装置と
を有する印刷システムの前記制御装置が、
印刷要求された複数の前記印刷物の前記印刷時間を、前記印刷物の種類に応じて積算し、
積算された印刷時間を基に印刷完了予想時刻を算出し、
前記印刷完了予想時刻が、すべての前記印刷物の印刷が完了する予定時刻である完了予定時刻を超えない範囲の印刷物に対して所定の前記プリンタを割り当てる
ことを特徴とする印刷制御方法。
【請求項７】
前記制御装置が、
前記積算された印刷時間に、所定の時間である安全時間を加算する
ことを特徴とする請求項６に記載の印刷制御方法。
【請求項８】
前記制御装置が、
所定の前記プリンタにおいて印刷が完了した印刷物について、印刷に要した実績印刷時間を前記印刷物の種類毎に算出し、
前記所定のプリンタにおいて前記印刷が未完了の印刷物について、前記印刷物の種類に応じて前記実績印刷時間を積算し、
当該積算された実績印刷時間を基に印刷完了予想時刻を再算出し、
当該再算出された印刷完了予想時刻が、前記完了予定時刻を超える場合、警報部に警報を出力させる
ことを特徴とする請求項６または請求項７に記載の印刷制御方法。
【請求項９】
前記制御装置が、
前記実績印刷時間を前記印刷時間として用いる
ことを特徴とする請求項８に記載の印刷制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の印刷物を、複数のプリンタを用いて一括印刷する印刷システム及び印刷制御方法の技術に関する。
【背景技術】
【０００２】
自動車生産工場では、生産ライン上の車両に対して、取り付ける部品や、組み立ての指示が記載されている生産指示帳票（以下、帳票と称する）をプリンタが印刷する。そして作業者は、その帳票に基づいて作業を行う。
このようなシステムとして、例えば、特許文献１が開示されている。特許文献１には、「生産指示システム１は、製品の生産指示情報を有する生産指示サーバ２０と生産ライン２に沿って設置された複数のプリンタ装置３との間に個々に出力装置３０を介在させて、出力装置３０で、生産指示サーバ２０の生産指示情報に基づき生産指示帳票の印刷画像データを作成してプリンタ装置３０に出力し、プリンタ装置３０から発行させる構成とし、生産指示帳票の印刷画像データを作成して出力する機能をサーバ２０から分離させた」生産指示システムが開示されている（要約参照）。
【０００３】
また、工場での作業前に作業員に帳票を配布するため、複数のプリンタにタイマ処理を行い、必要な帳票を一括して印刷する場合がある。この場合の「一括」とは、一度の要求で複数の帳票が印刷されることである。帳票を一括印刷する際に、複数のプリンタのいずれかに割り付けて複数種類の伝票を一括して発行するシステムとして、例えば、特許文献２が開示されている。特許文献２には、「伝票の印字明細を記憶する伝票明細ファイル１と、プリンタ装置の印字性能（印字速度）及び用紙掛替時間を含むプリンタ情報を保持するプリンタ情報テーブル２と、伝種テーブル３に保持されたフォーム番号、ヘッダ印字行数等伝票印字ボリューム情報に基づいて伝種毎に印字ボリュームを算出する印字ボリューム算出部４と、印字ボリュームをフォーム毎に集計して得たフォーム別印字ボリューム及びプリンタ情報に基づいてフォーム毎に累計印字時間が最小となるプリンタ装置を決定するスケジュール部５と、プリンタ装置毎に伝票連続発行用のジョブコントロール情報を作成するＪＣＬ作成部６と、プリンタ装置毎に作成されたＪＣＬを記憶するＪＣＬ記憶部７とを有する」伝票連続発行システムが開示されている（要約参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−２１０１１２号公報
【特許文献２】特開平０８−２２１２３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
自動車生産工場において、複数のプリンタが帳票の一括印刷を行う場合、予定の時間内にすべての帳票印刷が終了されず、生産に支障を来たす場合がある。例えば、「ＡＭ３：００」にタイマをＯＮし、印刷処理を始め「ＡＭ６：４０」に印刷完了予定としたにもかかわらず、「ＡＭ６：４０」に複数プリンタの中の数台が印刷完了していない場合である。このように、印刷の完了予定時刻までに印刷が完了しない原因として、次の点が挙げられる。
【０００６】
（１）当該日の指示数増
通常日に比べ、生産量が多い場合である。それに伴う指示書の印刷要求数が増えることによって印刷遅延が生じる。また、１印刷あたりの印刷量が多く、印刷に時間がかかる指示書が１つのプリンタに集中することも印刷遅延に繋がる原因となる。
【０００７】
（２）プリンタ障害
帳票印刷の要求後に、ハード障害により特定のプリンタを交換する場合がある。このような場合、すでに印刷要求がされているため、プリンタ交換にかかった時間分、印刷時間が遅延する。
（３）高画質設定、記号、画像、バーコード等が帳票に含まれる場合
例えば、ふちなし印刷の設定をしておくと、プリンタがインクの管理に配慮するため、印刷速度が遅くなる。また、記号、画像、バーコードなどが含まれている場合も、印刷速度が遅くなる。
【０００８】
詳細は、後記するが一般的に印刷される帳票は、複数種類の帳票が含まれることが多い。その中には、印刷量の多い帳票（印刷時間の長い帳票）や、印刷量の少ない帳票（印刷時間の短い帳票）等が含まれている。
また、これまでのシステムでは、各プリンタへの印刷の割り当てが、枚数を基準に行われている。例えば、各プリンタへ５００枚の印刷が割り当てられる。つまり、これまでのシステムでは、帳票の種類による印刷時間の長短が考慮されていないため、印刷量の多い帳票が集中すると、印刷の完了予定時刻までに印刷が完了しないといった状態が発生する。
【０００９】
特許文献１に記載の技術は、図５の「１２０秒も掛かってしまう」と、「２９秒に短縮」に示されるように、短いスパンの印刷時間の短縮に関する技術である。そのため、一括帳票の印刷については記載されていない。
特許文献２には、プリンタ性能による印刷の割り当てが記載されているが、前記した（１）〜（３）の課題を解決するための技術は記載されていない。
【００１０】
このような背景に鑑みて本発明がなされたのであり、本発明は、効率的な一括印刷を実現することを課題とする。
【課題を解決するための手段】
【００１１】
前記した課題を解決するため、本発明は、印刷物を印刷する複数のプリンタと、前記複数のプリンタを制御する制御装置とを有し、前記制御装置は、前記印刷物の種類に応じた印刷時間を有する記憶部と、印刷要求された複数の前記印刷物の前記印刷時間を、前記印刷物の種類に応じて積算し、積算された印刷時間を基に印刷完了予想時刻を算出し、前記印刷完了予想時刻が、すべての前記印刷物の印刷が完了する予定時刻である完了予定時刻を超えない範囲の印刷物に対して所定の前記プリンタを割り当てる印刷処理部と、を有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、効率的な一括印刷を実現することができる。
【図面の簡単な説明】
【００１３】
【図１】帳票印刷システムＺの機能ブロック図である。
【図２】本実施形態で用いられる印刷管理データ３１の例を示す図である。
【図３】本実施形態で用いられる帳票種別マスタデータ３２の例を示す図である。
【図４】本実施形態で用いられる安全時間マスタデータ３３である。
【図５】本実施形態で行われる帳票印刷処理の全体処理の手順を示すフローチャートである。
【図６】本実施形態で行われるプリンタ割当処理の手順を示すフローチャートである。
【図７】本実施形態で行われる印刷管理処理の手順を示すフローチャートである。
【図８】帳票種別の例を示す図である。
【図９】比較例における帳票印刷の例を示す図である。
【図１０】比較例における帳票印刷（印刷時間超過）の例を示す図である。
【図１１】本実施形態における帳票印刷の例を示す図である。
【図１２】本実施形態で用いられるタイマ管理画面１００の例である。
【発明を実施するための形態】
【００１４】
次に、本発明を実施するための形態（「実施形態」という）について、適宜図面を参照しながら詳細に説明する。本実施形態の帳票は、自動車生産工場での自動車の組立指示や、梱包所での梱包作業指示等が記載されているものである。また、定められた時刻までに大量の帳票が印刷される環境が想定されている。
【００１５】
（システム）
図１は、帳票印刷システム（印刷システム）Ｚの機能ブロック図である。
帳票印刷システムＺは、管理サーバ１、アプリケーションサーバ２、データベースサーバ（記憶部）３を有する。また、帳票印刷システムＺは、警報部としても機能する操作ＰＣ（Personal Computer）４１、複数のプリンタ４２（４２＿１〜４２＿Ｍ）を有する。
ここで、複数存在する（本実施形態では２箇所）作業員詰所４ａ，４ｂのそれぞれには、複数のプリンタ４２（４２＿１〜４２＿Ｍ）が設置されている。図１の例では、作業員詰所４ａにプリンタ４２＿１〜４２＿Ｎが設置され、作業員詰所４ｂにはプリンタ４２＿（Ｎ＋１）〜４２＿Ｍが設置されている。
管理サーバ１、アプリケーションサーバ２、データベースサーバ３が設置されている建屋と、作業員詰所４ａ、作業員詰所４ｂの建屋は異なっていることが多い。この場合、管理サーバ１、アプリケーションサーバ２、データベースサーバ３間のネットワークと、作業員詰所４ａ，４ｂのネットワークとは別々のネットワークとなっていることが多い。また、作業員詰所４ａには、操作ＰＣ４１が設置されている。
【００１６】
オペレータは、操作ＰＣ４１の表示画面に表示されているタイマ管理画面に情報を入力することにより、それぞれのプリンタ４２を起動する時刻（起動時刻）を設定する。タイマ管理画面については後記する。
【００１７】
（アプリケーションサーバ２）
アプリケーションサーバ２は、タイマ制御部２１及び印刷要求部２２を有する。
タイマ制御部２１は、入力されたプリンタ４２の起動時刻になると、印刷要求部２２に管理サーバ１へ印刷制御を行うよう指示させる。
印刷要求部２２は、タイマ制御部２１からの指示に基づいて管理サーバ１へ印刷制御を行わせる。
【００１８】
（管理サーバ１）
管理サーバ１は、要求受付部１１、プリンタマスタ管理部１２、印刷処理部１３、プリンタ状態監視部（印刷状態監視部）１４を有する。
要求受付部１１は、アプリケーションサーバ２の印刷要求部２２から送られた指示を受け付ける。
プリンタマスタ管理部１２は、操作ＰＣ４１から送られた帳票の種類や、印刷順等といった情報をデータベースサーバ３の印刷管理データ３１に格納する。
【００１９】
そして、印刷処理部１３は印刷管理データ３１、帳票種別マスタデータ３２、安全時間マスタデータ３３等を基に、それぞれのプリンタ４２へ帳票印刷を割り当てるプリンタ割当処理等を行う。プリンタ割当処理については後記する。さらに、印刷処理部１３は、プリンタ割当処理の結果を基に、それぞれのプリンタ４２へ帳票の印刷を指示する。
【００２０】
プリンタ状態監視部１４は、プリンタ４２から各帳票の印刷における印刷終了時刻等を取得する。また、プリンタ状態監視部１４はプリンタ状態監視部１４によって取得された各帳票の印刷に関する情報（印刷終了時刻）等を基に、未印刷の帳票の印刷すべてが完了予定時刻までに終了するか否かを判定する。完了予定時刻とは、すべての印刷が完了すべき時刻である。そして、未印刷の帳票の印刷すべてが完了予定時刻までに終了しない場合、操作ＰＣ４１に対してアラートを発報させる。さらに、後記する帳票毎の平均印刷実績時間を帳票種別マスタデータ３２に格納する。
【００２１】
（データベースサーバ３）
データベースサーバ３は、印刷管理データ３１、帳票種別マスタデータ３２、安全時間マスタデータ３３及び印刷データ３４を有する。
印刷管理データ３１、帳票種別マスタデータ３２、安全時間マスタデータ３３については後記する。
印刷データ３４は、各帳票の印刷に関する情報が格納される。
なお、印刷管理データ３１、帳票種別マスタデータ３２、印刷データ３４は印刷要求が行われる毎に更新される。また、印刷管理データ３１は印刷終了時等でも更新される。
【００２２】
（印刷管理データ３１）
図２は、本実施形態で用いられる印刷管理データ３１の例を示す図である。
印刷管理データ３１は、プリンタＩＤ、シーケンス、帳票種別、指示時刻、印刷終了時刻、初回フラグの各欄を有する。
プリンタＩＤは、プリンタ４２を一意に識別するための情報である。図２の例では、プリンタＩＤ「ｐｔＸ」、「ｐｔＹ」のプリンタ４２がある。
シーケンスは、一連の印刷に割り当てられる通し番号である。図２の例では、「１」〜「Ｑ」まである。
帳票種別は帳票の種別を示す。ここでは、「帳票Ａ」、「帳票Ｂ」、「帳票Ｃ」、「帳票Ｄ」の４種類の帳票があるものとする。それぞれの種別の帳票は印刷時間が異なる。ここでは、「帳票Ｄ」＞「帳票Ｃ」＞「帳票Ｂ」＞「帳票Ａ」の順となっているものとする。なお、本実施形態では４種類の帳票があるものとしているが、当然４種類に限らない。
【００２３】
指示時刻は、該当するシーケンスの帳票印刷が指示された時刻である。
印刷終了時刻は、該当するシーケンスの帳票印刷が終了した時刻である。
初回フラグは、それぞれのプリンタ４２において最初に印刷する帳票であるか否かを区別するフラグである。図２の例では「１」が初回を示し、「０」が初回以外を示す。
【００２４】
なお、シーケンス及び帳票種別は、後記する図５のステップＳ３の段階でオペレータによって入力される情報である。また、プリンタＩＤ及び初回フラグは、後記する図５のステップＳ４の段階で入力される情報である。そして、指示時刻は、後記する図５のステップＳ６において、プリンタ４２に対して印刷の指示がなされた段階で入力される情報である。また、印刷終了時刻は、後記する図５のステップＳ６において、該当する帳票の印刷が終了した段階で入力される情報である。
【００２５】
（帳票種別マスタデータ３２）
図３は、本実施形態で用いられる帳票種別マスタデータ３２の例を示す図である。
帳票種別マスタデータ３２は、帳票種別、印刷想定時間（印刷時間：秒）、平均印刷実績時間（実績印刷時間：秒）の各欄を有する。
帳票種別は帳票の種別を示す情報である。前記したように、本実施形態では「帳票Ａ」、「帳票Ｂ」、「帳票Ｃ」、「帳票Ｄ」の４種類がある。
印刷想定時間は、オペレータによって入力される情報であり、各帳票種別にかかる印刷時間である。印刷想定時間は、これまでの経験等を基にオペレータが予め入力する情報である。
平均印刷実績時間は、後記する図７のステップＳ８で算出され、ステップＳ９で帳票種別マスタデータ３２に格納されるものである。平均印刷実績時間は、実際の印刷にかかった、帳票毎の平均時間である。平均印刷実績時間は、印刷が終了する毎にリアルタイムに更新される情報である。
【００２６】
（安全時間マスタデータ３３）
図４は、本実施形態で用いられる安全時間マスタデータ３３である。
安全時間マスタデータ３３は、ＩＤ及び安全時間（秒）を有する。
ＩＤは、安全時間を識別するための情報であり、省略可能である。
安全時間は、余裕を持たせてすべての帳票の印刷を終了させるための時間である。図４の例では、安全時間が６００秒となっているが、これは、完了予定時刻の６００秒前までにすべての帳票の印刷を終了させるという意味である。なお、図４におけるＩＤ及び安全時間は、オペレータが予め入力しておく情報である。
【００２７】
（全体処理）
図５は、本実施形態で行われる帳票印刷処理の全体処理の手順を示すフローチャートである。
まず、オペレータが操作ＰＣ４１を介してタイマ設定を行う（Ｓ１）。具体的には、それぞれのプリンタ４２が起動する時刻（起動時刻）をオペレータが設定する。タイマ設定については後記する。なお、ここで、起動時刻ではなく完了予定時刻が設定されてもよい。そして、印刷要求部２２は設定された起動時刻を管理サーバ１へ送信する。
次に、要求受付部１１は、設定された起動時刻を受け付ける（Ｓ２）。
ステップＳ１及びステップＳ２は、１回設定したら２回目からは省略してもよい。
そして、オペレータは、印刷要求編集処理を行う（Ｓ３）。具体的には、オペレータは、どの種類の帳票をどの順に印刷するかを操作ＰＣ４１に入力する。操作ＰＣ４１は、入力された情報を管理サーバ１へ送信する。管理サーバ１のプリンタマスタ管理部１２は、図２に示す印刷管理データ３１のシーケンスと帳票種別の欄に送信された情報が格納する。なお、この段階では、印刷管理データ３１のプリンタＩＤ、指示時刻、印刷終了時刻、初回フラグの各欄は空欄である。また、印刷管理データ３１のシーケンスと帳票種別の欄には、図２に示すように平文形式で、つまり、暗号化されていない状態で情報が保存される。
なお、プリンタ４２それぞれの起動は、ステップＳ３の前でも後でもよい。
【００２８】
そして、印刷処理部１３は、プリンタ割当処理を行う（Ｓ４）。プリンタ割当処理の詳細は後記する。
次に、印刷処理部１３は、プリンタ割当処理の結果に基づいて、印刷要求をそれぞれのプリンタ４２へ送信する（Ｓ５）。
そして、それぞれのプリンタ４２は、印刷要求に従って印刷を行う（Ｓ６）。
さらに、それぞれのプリンタ４２は印刷した際の印刷情報を管理サーバ１へ送信する（Ｓ７）。印刷情報は、印刷要求が指示された時刻である指示時刻や、印刷が終了した時刻である印刷終了時刻等が含まれる。
【００２９】
プリンタ状態監視部１４は、受信した印刷情報を基に印刷管理処理を行う（Ｓ８）。印刷管理処理については後記する。
さらに、プリンタ状態監視部１４は、印刷管理処理の結果、算出される平均印刷実績時間を帳票種別マスタデータ３２に格納する（Ｓ９）。平均印刷実績時間については後記する。なお、次回のプリンタ割当処理（Ｓ４）では、平均印刷実績時間が利用される。
【００３０】
（プリンタ割当処理）
図６は、本実施形態で行われるプリンタ割当処理の手順を示すフローチャートである。なお、図６は、図５のステップＳ４で行われる処理である。
印刷処理部１３は、今回印刷する帳票種別に応じた、印刷予想時間を帳票種別マスタデータ３２から取得する（Ｓ４０１）。ここで、印刷処理部１３は、帳票種別マスタデータ３２において、処理対象となっている帳票種別の平均印刷実績時間が登録されている場合、平均印刷実績時間を印刷予想時間とする。また、帳票種別マスタデータ３２において、処理対象となっている帳票種別の平均印刷実績時間が登録されていない場合、印刷処理部１３は処理対象となっている帳票種別の印刷想定時間を印刷予想時間とする。
ここでは印刷想定時間を印刷予想時間とする。
【００３１】
次に、印刷処理部１３は、現在処理対象となっているシーケンスまでの合計印刷予想時間を算出する（Ｓ４０２）。合計印刷予想時間は以下の式（１）で算出される。なお、「現在処理対象となっているシーケンス」とは、印刷指示済みのシーケンスでもある。
【００３２】
合計印刷予想時間＝印刷予想時間の合計値（積算値）＋安全時間・・・（１）
【００３３】
なお、ここでは、式（１）によって合計印刷予想時間が算出されているが、印刷処理部１３は、完了予定時刻を安全時間分前倒しにすることで、合計印刷予想時間＝印刷予想時間の合計値（積算値）としてもよい。なお、このような安全時間が印刷予想時間の合計値（積算値）に加算されることにより、余裕のある印刷が可能となる。
例えば、現在、図２のシーケンス「３」が処理対象となっている場合、印刷処理部１３は、以下の式（２）によって合計印刷時間を算出する。
【００３４】
シーケンス「１」の帳票種別「帳票Ｄ」の印刷予想時間＋シーケンス「２」の帳票種別「帳票Ａ」の印刷予想時間＋シーケンス「３」の帳票種別「帳票Ｃ」の印刷予想時間＋安全時間・・・（２）
【００３５】
要するに、印刷処理部１３は、シーケンスの頭から印刷予想時間の積算値に安全時間を加算した時間を合計印刷予想時間とする。
【００３６】
次に、印刷処理部１３は、合計印刷予想時間を基に、印刷完了予想時刻を算出する（４０３）。そして、印刷処理部１３は、印刷完了予想時刻が完了予定時刻を超えるか否かを判定する（Ｓ４０４）。
ステップＳ４０４の結果、印刷完了予想時刻が完了予定時刻を超えない場合（Ｓ４０４→Ｎｏ）、印刷処理部１３は、すべてのシーケンスについて処理を完了したか否かを判定する（Ｓ４１１）。ここで、すべてのシーケンスとは、印刷指示済みのシーケンスである。
ステップＳ４１１の結果、すべてのシーケンスについて処理を完了した場合（Ｓ４１１→Ｙｅｓ）、印刷処理部１３は、プリンタ４２の割り当てを行う（Ｓ４１２）。すなわち、印刷処理部１３は、現在処理対象となっているシーケンスまでを処理対象のプリンタ４２に割り当てる。その後、印刷処理部１３は、その情報を印刷管理データ３１に格納する。具体的には、印刷処理部１３は、図２の印刷管理データ３１において、現在処理対象となっているシーケンスまでに対応するプリンタＩＤの欄に処理対象となっているプリンタＩＤを格納する。
そして、印刷処理部１３は図５のステップＳ５に処理をリターンする。
【００３７】
ステップＳ４１１の結果、すべてのシーケンスについて処理を完了していない場合（Ｓ４１１→Ｎｏ）、印刷処理部１３は、ステップＳ４０１へ処理を戻し、次のシーケンスについて処理を行う。
【００３８】
ステップＳ４０４の結果、印刷完了予想時刻が完了予定時刻を超える場合（Ｓ４０４→Ｙｅｓ）、印刷処理部１３は、プリンタの割り当てを行う（Ｓ４２１）。すなわち、印刷処理部１３は、現在処理対象となっているシーケンスの１つ前のシーケンスまでを現在処理対象となっているプリンタ４２として割り当てる。そして、印刷処理部１３は、その情報を印刷管理データ３１に格納する。具体的には、印刷処理部１３は、図２の印刷管理データ３１において、現在処理対象となっているシーケンスの１つ前のシーケンスまでに対応するプリンタＩＤの欄に処理対象となっているプリンタＩＤを格納する。つまり、印刷処理部１３は、完了予定時刻を超えない範囲のシーケンス（帳票）に対して所定のプリンタ４２を割り当てる。
【００３９】
そして、印刷処理部１３は、すべてのプリンタ４２について処理を完了したか否かを判定する（Ｓ４２２）。
ステップＳ４２２の結果、すべてのプリンタ４２について処理を完了していない場合（Ｓ４２２→Ｎｏ）、印刷処理部１３は、次のプリンタ４２を処理対象とし（Ｓ４２３）、ステップＳ４０１へ処理を戻す。
ステップＳ４２１の結果、すべてのプリンタ４２について処理を完了している場合（Ｓ４２１→Ｙｅｓ）、印刷処理部１３はアラートを操作ＰＣ４１等に発報させる（Ｓ４２４）。すなわち、印刷処理部１３は、現在設置されているプリンタ４２では要求された帳票のすべてを印刷することができない旨のアラートを操作ＰＣ４１等に発報させる。その後、帳票印刷システムＺは処理を終了する。そして、オペレータが帳票印刷の見直し等を行う。
【００４０】
ここで、図２で現在の処理対象のプリンタ４２＿１（図１）にプリンタＩＤ「ｐｔＸ」が割り当てられ、プリンタ４２＿２（図１）にプリンタＩＤ「ｐｔＹ」が割り当てられているとする。そして、シーケンス「Ｐ＋１」の時点で、合計印刷予想時間に基づいた印刷完了予想時刻が完了予定時刻を超えたとする。このような場合、印刷処理部１３は、シーケンス「１」〜「Ｐ」までの印刷をプリンタ４２＿１（「ｐｔＸ」）に割り当てる。そして、印刷処理部１３は、シーケンス「Ｐ＋１」からは次のプリンタ４２＿２（「ｐｔＹ」）についてプリンタ４２＿１（「ｐｔＸ」）と同様に、合計印刷予想時間を算出する。これによって、プリンタ４２＿２（「ｐｔＹ」）の割り当てが行われる。図２の例では、シーケンス「Ｐ＋１」〜「Ｑ」に対してプリンタ４２＿２（「ｐｔＹ」）が割り当てられている。
【００４１】
（印刷管理処理）
図７は、本実施形態で行われる印刷管理処理の手順を示すフローチャートである。図７の処理は、図５のステップＳ８の処理である。また、図７の処理はプリンタ４２毎に行われる処理である。
まず、プリンタ状態監視部１４は、印刷管理データ３１において印刷が完了したシーケンスの初回フラグを参照し、初回フラグが「１」（初回フラグ＝１）であるか否かを判定する（Ｓ８０１）。なお、初回フラグは、図６のプリンタ割当処理の終了後、印刷処理部１３によって格納される。
ステップＳ８０１の結果、初回フラグが「１」である場合（Ｓ８０１→Ｙｅｓ）、プリンタ状態監視部１４は、処理対象となっている帳票の種別（帳票種別）を判定する（Ｓ８１１）。初回フラグが「１」である場合とは、処理対象となっているシーケンスが、処理対象となっているプリンタ４２の最初の印刷である場合である。
【００４２】
次に、プリンタ状態監視部１４は、帳票種別毎に印刷管理データ３１において対象となっているシーケンスの印刷終了時刻−指示時刻を算出し、その時間を平均印刷実績時間として算出する（Ｓ８１２）。すなわち、プリンタ状態監視部１４は、印刷が指示されてから印刷が完了するまでの時間を平均印刷実績時間とし、帳票種別マスタデータ３１に登録する。その後、プリンタ状態監視部１４は、ステップＳ８３１へ処理を進める。
【００４３】
ステップＳ８０１の結果、初回フラグが「０」である場合（Ｓ８０１→Ｎｏ）、プリンタ状態監視部１４は、処理対象となっている帳票の種別（帳票種別）を判定する（Ｓ８２１）。初回フラグが「０」である場合とは、処理対象となっているシーケンスが、処理対象となっているプリンタ４２の最初の印刷ではない場合である。
【００４４】
そして、プリンタ状態監視部１４は、帳票種別毎に今回印刷時間＝今回印刷終了時刻−前回印刷終了時刻を算出する（Ｓ８２２）。ここで、「今回印刷終了時刻−前回印刷終了時刻」が算出される理由は以下の通りである。すなわち、２つめの印刷以降は、スプールに印刷要求がキューとして蓄積され、順に印刷されていくため、ステップＳ８１２のような印刷終了時刻−指示時刻が印刷時間とならないためである。
【００４５】
次に、プリンタ状態監視部１４は、帳票種別毎に平均印刷実績時間＝（平均印刷実績時間＋今回印刷時間）／２を算出し（Ｓ８２３）、帳票種別マスタデータ３１に登録する。
その後、プリンタ状態監視部１４は、ステップＳ８３１へ処理を進める。
【００４６】
ステップＳ８３１において、プリンタ状態監視部１４は、印刷管理データ３１を参照し、処理対象となっているプリンタ４２において、未印刷のシーケンスを取得する。その後、プリンタ状態監視部１４は、当該シーケンスについて、帳票毎に平均印刷実績時間を積算することで印刷完了予想時間を算出する。なお、このとき、プリンタ状態監視部１４は、平均印刷実績時間の積算値に安全時間を加算してもよい。
そして、プリンタ状態監視部１４は、印刷完了予想時間を基に印刷完了予想時刻を算出する（Ｓ８３２）。
【００４７】
次に、プリンタ状態監視部１４は、印刷完了予想時刻が完了予定時刻を超えるか否かを判定する（Ｓ８４１）。
ステップＳ８４１の結果、印刷完了予想時刻が完了予定時刻を超えない場合（Ｓ８４１→Ｎｏ）、プリンタ状態監視部１４は、ステップＳ８０１へ処理を戻す。そして、プリンタ状態監視部１４は、次の実績印刷情報を用いて、ステップＳ８０１以降の処理を行う。実績印刷情報とは、指示時刻や、印刷終了時刻等である。
【００４８】
ステップＳ８４１の結果、印刷完了予想時刻が完了予定時刻を超える場合（Ｓ８４１→Ｙｅｓ）、プリンタ状態監視部１４は操作ＰＣ４１等にアラートを発報させる（Ｓ８４２）。
【００４９】
アラートが発報されると、オペレータは、操作ＰＣ４１を介して処理できないと想定される印刷を、他のプリンタ４２に割り振る等の処理を行う。
【００５０】
例えば、故障等でプリンタ４２を交換すれば、交換直前の印刷と、交換直後の印刷との間が大きく空くため、平均印刷実績時間が大きくなる。この平均印刷実績時間を基に、印刷完了予想時刻を算出すると、プリンタ状態監視部１４は、印刷が完了予定時刻を超過すると判定する。印刷が完了予定時刻を超過すると判定された場合、アラートが発報されることにより、プリンタ４２の交換等による印刷時間の変化に対応することができる。
そして、前記したように、次のプリンタ割当処理には、印刷想定時間（図６）の代わりに平均印刷実績時間が使われる。ただし、故障による交換等で平均印刷実績時間が異常値である場合、オペレータが平均印刷実績時間を帳票種別マスタデータ３２から削除する。
【００５１】
（比較例の手法との比較）
次に、図８〜図１１を参照して、比較例の手法と、本実施形態の手法との比較を行う。
図８は、帳票種別の例を示す図である。
前記したように、ここでは、「帳票Ａ」、「帳票Ｂ」、「帳票Ｃ」、「帳票Ｄ」の４種類の帳票が用いられるものとする。
ここで、図８に示すように、各帳票は以下のような印刷内容及び印刷時間を有する。
「帳票Ａ」：印刷内容は文字だけの単票であり、印刷時間は短い（小）。
「帳票Ｂ」：印刷内容はバーコード付きの単票であり、印刷時間は中くらいである（中）。
【００５２】
「帳票Ｃ」：印刷内容は、二次元バーコード（二次元コード）、または、バーコード及び図面であり、複数枚１組の帳票である（複数枚／回）。１枚当たりの印刷時間は中くらいだが、複数枚１組であるため、１つの帳票を印刷するのに複数枚を印刷する必要がある（中×枚数）。
「帳票Ｄ」：印刷内容は、二次元バーコード、または、バーコード及び画像であり、複数枚１組の帳票である（複数枚／回）。１枚当たりの印刷時間が大きく（大）、複数枚１組であるため、１つの帳票を印刷するのに複数枚を印刷する必要がある（大×枚数）。
【００５３】
従って、各帳票種別の印刷時間は、「帳票Ｄ」＞「帳票Ｃ」＞「帳票Ｂ」＞「帳票Ａ」となる。
【００５４】
図９は、比較例における帳票印刷の例を示す図である。
なお、図９〜図１１では、「ＡＭ３：００」に印刷を開始し、「ＡＭ６：４０」にすべての帳票の印刷が完了するようになっている。
これまでの手法（比較例）では１つのプリンタ４２には帳票種別による印刷時間を考慮せずに、枚数（ジョブ数）で帳票印刷の割り当てを行っている。例えば、１つのプリンタ４２へは５００枚の印刷を要求し、５００枚を超える場合、他のプリンタ４２へ割り当てが行われる。
図９は、１つのプリンタ４２の印刷ジョブを示しており、５００枚の帳票印刷（「Ｊｏｂ−１」〜「Ｊｏｂ−５００」）が行われている。そして、図９では、「ＡＭ６：４０」までにすべての帳票の印刷が完了している。
【００５５】
これに対し、図１０は、比較例における帳票印刷において、「帳票Ｄ」が多くある場合を示す図である。
帳票の印刷数は、日々一定数ではない。つまり、前日までに確定した生産数によって、日々生産数は変動し、その変動によって帳票の印刷数も変化する。
例えば、図１０のように印刷時間が大きい「帳票Ｄ」が通常日より多い場合がある。
図１０では、印刷時間が大きい「帳票Ｄ」が多くあるため、「ＡＭ６：４０」までにすべての帳票の印刷が終了していない。つまり、図１０のドット部分の印刷が「ＡＭ６：４０」以降となってしまう。このような場合、これまでは、例えば、次回の印刷時にプリンタ４２の１台あたりの枚数を４００枚に減らしていたが、その４００枚には根拠がない。従って、１台あたりの枚数を４００枚に減らしても、完了予定時刻である「ＡＭ６：４０」までに印刷が終了する補証がない。
このように、単純に枚数で印刷割当を行うと、印刷時間が大きい帳票が大量にある場合において、完了予定時刻を超過してしまうことになる。
【００５６】
図１１は、本実施形態における帳票印刷の例を示す図である。
本実施形態では、前記したように帳票種別毎の１回あたりの印刷時間を設定しておき、帳票種別毎に印刷時間を積算していく手法が用いられている。このようにすることで、図１１に示すように、印刷が完了予定時刻を超過することがなくなる。
【００５７】
また、図７で算出された平均印刷実績時間が帳票種別マスタデータ３２に格納され、次回のプリンタ割当処理に利用されている。このようにすることで、実際の印刷時間をプリンタ割当処理にフィードバックさせることができ、実際の印刷時間に基づいたプリンタ割当を行うことができる。
【００５８】
さらに、本実施形態では、図７に示すように、帳票の印刷が行われている最中において、実際の印刷にかかった時間（平均印刷実績時間）を帳票種別毎に算出している。そして、未印刷の帳票の印刷にかかると予想される時間を基に、完了予定時刻を超過するか否かが監視されている。このようにすることで、プリンタ４２の故障に伴う交換等、印刷時間の変動に対処することができる。
【００５９】
（タイマ管理画面１００）
図１２は、本実施形態で用いられるタイマ管理画面１００の例である。つまり、タイマ管理画面１００は、印刷の実行周期や、印刷の実行日時（プリンタ４２の起動日時）の設定を行うための画面である。
まず、ユーザは、ポインティングデバイス等を介して、タイマ管理画面１００に表示されている追加ボタン１０１が選択入力される。なお、図１２に示すタイマ管理画面１００の操作は、図５のステップＳ１の段階で行われる処理である。
すると、タイマ設定エリア１１０が活性化される。
タイマ設定エリア１１０には、定義Ｎｏ入力窓１１１、プログラム名称入力窓１１２、説明入力窓１１３、曜日入力窓１１４、日にち入力窓１１５、時刻入力窓１１６、サイクル入力窓１１７、無効・有効選択窓１１８を有する。
【００６０】
定義Ｎｏ入力窓１１１には、当該サイクルに対応付けられる定義名称が入力される。例えば、月曜日〜金曜日のＡＭ３：００に起動するサイクルが定義名称「Ａ」等とされ、月曜日〜金曜日のＡＭ２：００に起動するサイクルが定義名称「Ｂ」等とされる。
プログラム名称入力窓１１２には、当該サイクルに対するプログラム名が入力される。プログラム名と、定義名称とは、ほとんど同じ内容（サイクルを一意に識別）を示す。
【００６１】
説明入力窓１１３には、サイクルに対する説明が入力される。説明入力窓１１３への入力は必須ではない。
曜日入力窓１１４には、設定対象となるサイクルが実行される（プリンタ４２が起動される）曜日が入力される。日にち入力窓１１５で設定が行われている場合、曜日入力窓１１４の設定は不要である。
そして、日にち入力窓１１５には、設定対象となるサイクルが起動する日にちが入力される。曜日入力窓１１４で設定が行われている場合、日にち入力窓１１５の設定は不要である。
時刻入力窓１１６は、サイクルが実行される時刻（起動時刻）が設定される。
【００６２】
サイクル入力窓１１７は、例えば、１日毎等、サイクルの起動周期が設定される。例えば、毎日「ＡＭ６：４０」に起動する等である。なお、サイクル入力窓１１７で設定が行われている場合、曜日入力窓１１４や、日にち入力窓１１５の設定は不要である。また、曜日入力窓１１４や、日にち入力窓１１５の設定が行われている場合、サイクル入力窓１１７の設定は不要である。なお、本実施形態では、サイクルとして１日（２４時間）で設定されている場合が想定されているが、休日出勤や、残業時には、タイマ管理画面１００によって個別にサイクル実行日時が設定される。
無効・有効選択窓１１８は、設定されたサイクルの有効、無効を切り替える。無効とされた場合、設定されたサイクルは実行されない。
【００６３】
そして、実行ボタン１０２が選択入力されることにより、タイマ設定エリア１１０で設定された内容が実行される。
なお、タイマ管理画面１００は、プログラム閲覧エリア１２１及び検索・現在時刻表示エリア１２２を有しているが、本実施形態とは直接関係ないため、説明を省略する。
本実施形態の帳票印刷システムＺは、帳票種別毎の印刷時間を基にプリンタ４２を割り当てる。そのため、異なる印刷量を有する複数の帳票を一括して印刷する際に、予定の時間内に帳票印刷を終了することができる。さらに、日々変動する帳票印刷に対応することができる。
【００６４】
また、本実施形態の帳票印刷システムＺは印刷が完了するたびに、帳票種別毎に、実際の印刷時間をフィードバックする。具体的には、帳票印刷システムＺは、実際の印刷時間を基に平均印刷実績時間を算出し、その平均印刷実績時間を次回のプリンタ割当処理に利用する。このようにすることで、実際に印刷にかかった時間をプリンタ割当処理に適用することで、実際の印刷時間に基づいたプリンタ割当処理が可能となる。
【００６５】
また、本実施形態において、帳票種別マスタデータ３２は、すべてのプリンタ４２に対応している。しかし、これに限らず、プリンタ４２の性能や、通信速度に応じた印刷想定時間や、平均印刷実績時間を有するよう、帳票種別マスタデータ３２がプリンタ４２毎や、ネットワーク毎に設けられてもよい。
【００６６】
さらに、印刷が完了するたびに、平均印刷実績時間を基に未印刷分の帳票の印刷が終了する予想時刻（印刷完了予想時刻）を算出する。このようにすることで、プリンタ４２の交換等による印刷時間の変化に対応することができる。
また、本実施形態の帳票印刷システムＺは、算出された印刷完了予想時刻が完了予定時刻を超過する場合、アラートを発報する。このようにすることにより、プリンタ４２の交換等による印刷時間が変化し、印刷が遅延することが予想される場合でも、オペレータが対処することができる。
【００６７】
本実施形態では、図３の印刷想定時間や、平均印刷実績時間として、印刷時間の平均値が想定されているが、最大値や、中央値等が用いられてもよい。また、図示しない設定画面で、印刷想定時間や、平均印刷実績時間に相当する時間として、平均値を用いるか、最大値を用いるか、中央値を用いるかが選択可能としてもよい。
本実施形態の帳票印刷システムＺは、プリンタ割当処理の際に印刷管理データ３１（図５）のシーケンスの頭から印刷想定時間（または、平均印刷実績時間）を順に積算している。そして、帳票印刷システムＺは、この積算値（合計印刷予想時間）を基に算出した印刷完了予想時刻が完了予定時刻を超えると、次のプリンタ４２へ印刷の割り当てを移行している。しかしながら、これに限らず、効率的に印刷が可能となるよう帳票の印刷順を変更したうえで、合計印刷予想時間が算出されてもよい。
【００６８】
本発明は前記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、前記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明したすべての構成を有するものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【００６９】
また、前記した各構成、機能、各部１１〜１４，２１，２２、各データ３１〜３４は、それらの一部、または、すべてを、例えば集積回路で設計すること等によりハードウェアで実現してもよい。また、前記した各構成、機能等は、ＣＰＵ等のプロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、ＨＤ（Hard Disk）に格納すること以外に、メモリや、ＳＳＤ（Solid State Drive）等の記録装置、または、ＩＣ（Integrated Circuit）カードや、ＳＤ（Secure Digital）カード、ＤＶＤ（Digital Versatile Disc）等の記録媒体に格納することができる。
また、各実施形態において、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしもすべての制御線や情報線を示しているとは限らない。実際には、ほとんどすべての構成が相互に接続されていると考えてよい。
【符号の説明】
【００７０】
１      管理サーバ（制御装置）
２      アプリケーションサーバ
３      データベースサーバ（記憶部）
４ａ，４ｂ  作業員詰所
１１    要求受付部
１２    プリンタマスタ管理部
１３    印刷処理部
１４    プリンタ状態監視部（印刷状態監視部）
２１    タイマ制御部
２２    印刷要求部
３１    印刷管理データ
３２    帳票種別マスタデータ
３３    安全時間データ
４１    操作ＰＣ（警報部）
４２，４２＿１〜４２＿Ｍ  プリンタ
Ｚ      帳票印刷システム（印刷システム）
【図１】
2019032638.tif 000003
【図２】
2019032638.tif 000004
【図３】
2019032638.tif 000005
【図４】
2019032638.tif 000006
【図５】
2019032638.tif 000007
【図６】
2019032638.tif 000008
【図７】
2019032638.tif 000009
【図８】
2019032638.tif 000010
【図９】
2019032638.tif 000011
【図１０】
2019032638.tif 000012
【図１１】
2019032638.tif 000013
【図１２】
2019032638.tif 000014