説明

電子帳票サーバ、電子帳票サーバの制御方法、プログラム、及び、記録媒体

【課題】上位システムから任意の順序で転送されてくる帳票データを、ユーザの所望の順序で印刷をすること。
【解決手段】電子帳票サーバ102のCPU201は、ホストコンピュータ101から転送される帳票データと該帳票データの形式を定義するフォームデータとから生成される帳票ファイルを複数の記憶領域に仕分けして記憶させ(S303、S304)、前記複数の記憶領域に記憶された帳票ファイルの印刷ジョブを生成し(S306)、該生成された印刷ジョブを特定のステータスで保留しておき(S307)、該保留された印刷ジョブを、該印刷ジョブに対応する帳票データが記憶されるディレクトリIDをキーとしてソートしてプリンタに送信する構成を特徴とする(S308、S309)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、上位システムから転送される帳票データを、格納、保管、閲覧、印刷する電子帳票サーバの制御に関する。
【背景技術】
【0002】
従来より、電子帳票システムにおいて、システムに登録された帳票を自動的に印刷する機能があるが、ホストコンピュータから転送されてくる帳票データは、ユーザが望む順番ではなく、システムに登録された順に印刷が実行されてしまう。よって、ユーザが望む順番で帳票が印刷されていなかった。
【0003】
そのため、ユーザは、帳票の印刷が終了した後、膨大な量の印刷された帳票を手作業で仕分けしなければならず、大変な手間がかかっていた。
【0004】
印刷が行われる際に、システムに登録された順ではなく、ユーザが任意に印刷順を変更できるシステムが提案されている(特許文献1)。
【0005】
特許文献1には、印刷目次ジョブを作成し、指定した順で印刷を行うシステムが開示されている。特に、特許文献1では、印刷目次ジョブに記載された全てのジョブが印刷終了するまで待機し、他のジョブが混入することを防いでいる。
【特許文献1】特開平7−271532号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1に記載の印刷制御システムにおいては、印刷の順序を保証することが可能であるが、目次ジョブをユーザが作成しなければならない。特に、複数回、同じ印刷を実行しようとした際に、毎回、ユーザが目次ジョブを生成しなければならず、大変な手間がかかっていた。
【0007】
本発明は上記の課題を解決するためになされたものである。本発明の目的は、他システムから任意の順序で転送されてくる帳票データを、ユーザの所望の順序で印刷をすることができる仕組を提供することである。
【課題を解決するための手段】
【0008】
本発明は、帳票ファイルの印刷ジョブをソートして印刷装置へ送信する電子帳票サーバであって、上位システムから転送される帳票データと該帳票データの形式を定義するフォームデータとから生成される帳票ファイルを複数の記憶領域に仕分けして記憶させる仕分け手段と、前記複数の記憶領域に記憶された帳票ファイルの印刷ジョブを生成する印刷ジョブ生成手段と、前記印刷ジョブ生成手段により生成された印刷ジョブを保留する保留手段と、前記保留手段に保留された印刷ジョブを、該印刷ジョブに対応する帳票ファイルが記憶される記憶領域毎にソートして印刷装置に送信するソート手段とを有することを特徴とする。
【発明の効果】
【0009】
本発明によれば、上位システムから任意の順序で転送されてくる帳票データを、ユーザの所望の順序で印刷をすることができる。
【0010】
したがって、帳票データの登録から印刷、印刷順のソートまで自動で行うことが可能となり、印刷後にユーザが印刷された帳票を手作業でソートする手間が軽減でき、運用コストを削減できる効果を奏する。
【発明を実施するための最良の形態】
【0011】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【0012】
図1は、本発明の一実施形態を示す電子帳票サーバを適用可能な電子帳票システムの概略構成を示す図である。
【0013】
図1において、101は、ホストコンピュータまたは、ホストプリンタであり、電子帳票サーバ102に登録をする帳票データ(帳票の実データをいう)を生成している。
【0014】
102は電子帳票サーバであり、帳票ファイル(若しくは単に帳票という)や、管理情報を記録し、ネットワーク105を介してクライアントPC103,104に対して、帳票の閲覧や検索などのサービスを提供する。
【0015】
クライアントPC103,104は、帳票の閲覧および計算結果の取得を行う者が使用するクライアント端末であり、ネットワーク105を介して、電子帳票サーバ102とデータの送受信が可能である。なお、以下、クライアントPC103,104を単にクライアントPCと記載する。また、クライアントPCは、いくつあってもよい。
【0016】
プリンタ106,107は、電子帳票サーバ102で管理する帳票を印刷するためのものである。なお、以下、プリンタ106,107を単にプリンタと記載する。また、プリンタは、いくつあってもよい。
【0017】
ネットワーク105は、例えばLAN(Local Area Network)やインターネットなどである。なお、図1のネットワーク上に接続される各種端末の構成は一例であり、用途や目的に応じて様々な構成例がある。
【0018】
次に、図1の電子帳票サーバ102のハードウエア構成について、図2を用いて説明する。
【0019】
図2は、図1の電子帳票サーバ102のハードウエア構成を示す図である。
【0020】
図2において、201はCPUであり、システムバス204に接続される各デバイスを統括的に制御する。ROM203あるいは外部メモリ211には、CPU201の制御プログラムであるオペレーティングシステム(OS)や、各サーバあるいは各クライアントの後述する各種機能を実現するためのプログラムが記憶されている。
【0021】
RAM202は、CPU201の主メモリ、ワークエリア、一時待避領域等として機能する。
【0022】
入力コントローラ205は、入力部209からの入力を制御する。この入力部209としては、キーボード、マウス等のポインティングデバイスが挙げられる。
【0023】
表示コントローラ206は、表示部210の表示を制御する。この表示部210としては、例えば、CRTや液晶ディスプレイ(LCD)等が挙げられる。
【0024】
外部メモリコントローラ(MC)207は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ211へのアクセスを制御する。
【0025】
なお、外部メモリ211には、電子帳票サーバ102の各種機能を実現するための各種テーブル、パラメータが記憶されている。また、外部メモリ211には、本発明の電子帳票サーバ102の機能を実現するためのプログラム212が記録されている。このプログラム212は、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。さらに、プログラム212が用いる帳票ファイル213も、外部メモリ211に格納されており、これらについての詳細な説明は後述する。
【0026】
なお、外部メモリ211としては、ハードディスク(HD)やフロッピー(登録商標)ディスク(FD)、PCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)、スマートメディア等が挙げられる。
【0027】
通信I/Fコントローラ208は、ネットワーク105を介して外部機器との通信制御処理を実行する。
【0028】
なお、クライアントPCのハードウェア構成も電子帳票サーバ102も同様である。しかし、プログラム212は帳票ファイルを出力するためのクライアントモジュールであり、電子帳票サーバ102のものとは異なる。また、帳票ファイル213は表示するために必要な部分のみを電子帳票サーバ102との通信により受信するもので、クライアントPCが元来保持していることはないものである点が異なる。
【0029】
帳票ファイル213は、帳票の表示用データを表すものであって、単独または複数のファイルによって構成され、単数または複数のページを含有している。なお、この帳票ファイル213は、ホストコンピュータ101から送信された帳票データと、その帳票データに対応するフォームデータ(帳票の形式を定義するデータをいう。)とから生成されるものである。電子帳票サーバ102の内部においては、複数の帳票ファイル213のうち同一種類のものをグループ化して管理しており、それぞれの帳票ファイル213はそのグループの中の世代と呼ばれる。
【0030】
次に、印刷ジョブの出力順の再ソート機能の基本的な処理フローについて、図3を用いて説明する。
【0031】
図3は、本発明の電子帳票サーバにおける印刷ジョブの出力順の再ソート機能の基本的な処理の一例を示すフローチャートである。このフローチャートにおいて、電子帳票サーバ102により実行される処理は、電子帳票サーバ102のCPU201が外部メモリ211に格納されたプログラム212をRAM202にロードして実行することにより実現されるものである。また、クライアントPCにより実行される処理は、クライアントPCのCPUが外部メモリに格納されたプログラム又は電子帳票サーバ102からダウンロードされたプログラムを実行することにより実現されるものである。また、ホストコンピュータ101により実行される処理は、ホストコンピュータのCPUが外部メモリに格納されたプログラムを実行することにより実現されるものである。
【0032】
なお、S301,S302は、クライアントPCから実行される処理に対応する。また、S303はホストコンピュータ101から実行される処理に対応する。
【0033】
ユーザは事前にクライアントPCから仕分け設定処理(S301)を実行しておく。これにより、電子帳票サーバ102に、仕分けキー情報801(図8),仕分け位置設定情報901(図9)が登録される。なお、仕分け設定処理(S301)の詳細は図4〜図9に後述する。
【0034】
また、ユーザは事前にクライアントPCから自動印刷設定処理(S302)を実行しておく。これにより、電子帳票サーバ102に、自動印刷情報1501(図15)が登録される。なお、自動印刷設定処理(S302)の詳細は図10〜図15に後述する。
【0035】
上位装置であるホストコンピュータ101が、帳票データを電子帳票サーバ102に送信すると、電子帳票サーバ102のCPU201は、帳票データを受信し、該受信した帳票データと、対応するフォームデータとを用いることで、電子帳票サーバ内で管理できる形式の帳票ファイルに変換する(データ登録処理(S303))。
【0036】
データ登録処理(S303)が終了すると、電子帳票サーバ102のCPU201は、上記S301で設定した内容に沿って帳票ファイルを仕分けし、上記S301で設定した内容に沿って指定のディレクトリ(記憶領域)に格納(配信)される(S304、S305)。なお、S303のデータ登録処理、及び、S304,S305のキーワード仕分け処理の詳細は図16にて説明する。
【0037】
次に、電子帳票サーバ102のCPU201は、仕分けされた帳票ファイルに対して自動印刷設定処理(S302)で設定された内容に沿って自動印刷処理を実行し、印刷ジョブを生成する(S306)。
【0038】
次に、電子帳票サーバ102のCPU201は、自動印刷処理(S306)により生成された帳票の印刷ジョブを、各プリンタごとのキューに、自動印刷処理が終了した順番に登録する(S307)。キュー(印刷キュー)は、電子帳票サーバ102のRAM202又は外部メモリ211上に設けられる。即ち、上記S307では、電子帳票サーバ102のCPU201は、上記S306で生成された印刷ジョブをプリンタ毎に特定のステータスで保留する。
【0039】
なお、印刷ジョブがキューに登録される順序は、電子帳票サーバ102の処理状況による(印刷ジョブの生成順にキューに登録される)ため、この時点では、ユーザが意図した順にはなっていない。
【0040】
本発明では、後述する印刷ジョブソート処理(S308)により、印刷ジョブの順序を変更するため、この時点ではプリンタへの印刷(印刷ジョブのプリンタへの送信)は実行せずに、印刷キューに保留(ホールド)しておく。
【0041】
なお、従来の方法では、この時点で印刷が行われたため、ユーザが求めた順では出力されず、電子帳票サーバに登録された順で印刷が行われていた。本発明では、この保留されたジョブの順を再度ソートすることによりユーザが求めた順で印刷が行われるようになる。
【0042】
次に、電子帳票サーバ102のCPU201は、ソート指示ファイル1801(図18)に基づいて、印刷ジョブソート処理を実行する(S308)。これにより、プリンタごとのキュー内のジョブの順序がソート指示ファイル1801(図18)に記載された順に変更されて、S309に示すような順になってプリンタに送信される。この印刷ジョブソート処理(S308,S309)の詳細は図17〜図19にて後述する。
【0043】
これにより、印刷ジョブを受信したプリンタでは、上記S308でソートした順序で印刷ジョブの処理(帳票の記録紙への印刷)が実行される(S310)。
【0044】
なお、ソート指示ファイル1801(図18)の作成は、帳票登録以前に一度行っておけば良い。また、印刷ジョブソート(S308,S309)は定期的に(予め指定された印刷時間に)電子帳票サーバ102が自動で実行するようにできる。そのため、ユーザは印刷指示を行わなくとも意図した順序で印刷された用紙(帳票)を入手することができる。
【0045】
次に、図4〜図9を用いて、図3のS301に示した仕分け設定処理について詳細に説明する。
【0046】
図4は、図3のS301に示した仕分け設定処理の詳細を示すフローチャートである。このフローチャートにおいて、クライアントPCにより実行される処理は、クライアントPCのCPUが外部メモリに格納されたプログラム又は電子帳票サーバ102からダウンロードされたプログラムを実行することにより実現されるものである。また、電子帳票サーバ102により実行される処理は、電子帳票サーバ102のCPU201が外部メモリ211に格納されたプログラム212をRAM202にロードして実行することにより実現されるものである。
【0047】
仕分け設定処理は、クライアントPCから実行開始される。まず、クライアントPCにおいて、図5,図6に示す画面を用いて、仕分けキー情報,配信ディレクトリの登録処理の登録を行う(S401)。この処理は、登録された帳票が特定のデータを含む際に、配信先ディレクトリを決定しおくための処理である。
【0048】
仕分けキー情報の登録は、図5に示す画面を用いて、図8に示す仕分けキー情報801を登録するものである。
【0049】
図5は、クライアントPCに表示される仕分けキーの登録画面の一例を示す図である。
【0050】
図6は、クライアントPCに表示される配信先ディレクトリの設定画面の一例を示す図である。
【0051】
図8は、本実施形態の仕分けキー情報の一例を示す図である。
【0052】
仕分けキー情報801は、図8に示すように、帳票ファイルにそのキーが出現した際に分割をする仕分けキーのID(仕分けキーID)と、複数の仕分けキー、及び、仕分けキーに一致したーワードを含む帳票ファイルをどのディレクトリ(記憶領域)に配信するかを指定する配信先ディレクトリIDを含んでいる。
【0053】
仕分けキーは、図5の501に示した欄にユーザが入力を行う。入力した情報は、図8に示す仕分けキー情報801に保存され、例えば、仕分けキー1〜仕分けキーNが設定される。
【0054】
配信先ディレクトリの設定を行う前には、帳票配信先502には「設定なし」と表示されており、帳票配信先502を指示すると、図6に示す画面が表示される。
【0055】
配信先ディレクトリの設定は、図6に示す画面を用いて、電子帳票サーバに登録してあるディレクトリ情報から選択し、図8の仕分けキー情報に配信先ディレクトリIDを追加する。ディレクトリIDを追加すると図5の帳票配信先502に表示され、仕分けキー情報とあわせて確認ができる。
【0056】
そして、OKボタン503が押下指示されると、クライアントPCは仕分けキー情報801(図8)を、電子帳票サーバ102のCPU201に送信する。電子帳票サーバ102のCPU201では、クライアントPCから送信された仕分けキー情報801(図8)を受信して、外部メモリ211に格納する。
【0057】
次に、クライアントPCにおいて、クライアントPCに帳票の選択処理を実行して、選択された帳票の帳票IDを電子帳票サーバ102のCPU201に送信する。
【0058】
電子帳票サーバ102のCPU201では、クライアントPCから送信された帳票IDを受信すると、該帳票IDの帳票ファイルをクライアントPCに送信し、図7に示すように、表示部に表示させる(S403)。
【0059】
図7は、クライアントPCに表示される仕分けキー位置設定画面の一例を示す図である。
【0060】
次に、クライアントPCでは、上記S403で表示させたキー位置設定画面上の帳票ファイル(図7)をもとに、仕分けキー位置の設定処理を実行する(S404)。例えば、ユーザは、クライアントPC上で、図7に示すように帳票を見ながら、帳票のどこの位置にS401で行った仕分けキーがあった際に仕分けを実施するかを指定する。これにより、図9に示す仕分け位置設定情報901が設定される。
【0061】
図9は、本実施形態の仕分けキー位置情報の一例を示す図である。
【0062】
そして、OKボタン701が押下指示されると、クライアントPCは、設定された仕分け位置設定情報901(図9)を電子帳票サーバ102のCPU201に送信する。
【0063】
そして、電子帳票サーバ102のCPU201は、クライアントPCで設定されて送信された仕分け位置設定情報901(図9)を受信して、外部メモリ211に格納する。
【0064】
なお、電子帳票サーバ102のCPU201は、S401で登録された仕分けキー情報801(図8)の仕分けキーIDと、S401で設定された仕分け位置設定情報901(図9)の仕分け位置IDとを紐付ける情報を、外部メモリ211に格納する。
【0065】
次に、図10〜図15を用いて、図3のS302に示した自動印刷設定処理の詳細について説明する。
【0066】
図10は、図3のS302に示した自動印刷設定処理の詳細を示すフローチャートである。このフローチャートにおいて、クライアントPCにより実行される処理は、クライアントPCのCPUが外部メモリに格納されたプログラム又は電子帳票サーバ102からダウンロードされたプログラムを実行することにより実現されるものである。また、電子帳票サーバ102により実行される処理は、電子帳票サーバ102のCPU201が外部メモリ211に格納されたプログラム212をRAM202にロードして実行することにより実現されるものである。
【0067】
自動印刷設定処理は、クライアントPCから実行される。まず、クライアントPCにおいて、図11に示す画面を用いてディレクトリに対して印刷を行うプリンタを決定するために、割当てを行う(S1001)。この処理は、自動印刷を行う際に使用するプリンタを事前にプリンタを決定しおくための処理である。
【0068】
図11は、クライアントPCに表示されるプリンタ割当画面の一例を示す図である。
【0069】
図11に示す例では、「プリンタA」というプリンタ名のプリンタが割り当てられている。
【0070】
次に、クライアントPCにおいて、上記S1001で割り当てられたプリンタを用いて自動印刷を行う対象を決定するために、対象の帳票が格納されている対象ディレクトリの選択を図12に示す画面を用いて行う(S1002)。
【0071】
図12は、クライアントPCに表示される対象ディレクトリ選択画面の一例を示す図である。
【0072】
図12に示す例では、「ディレクトリ1」,「ディレクトリ2」,「ディレクトリ3」が対象ディレクトリとして選択可能であるが、「ディレクトリ1」が選択されたものとする。
【0073】
次に、クライアントPCにおいて、上記S1002で選択されたディレクトリの中から、対象帳票の選択を図13に示す画面を用いて行う(S1003)。
【0074】
図13は、クライアントPCに表示される対象帳票選択画面の一例を示す図である。
【0075】
図13に示す例では、「帳票A」が対象帳票として選択されている。
【0076】
次に、クライアントPCにおいて、自動印刷を行う際の印刷における各種設定値の選択を図14に示す画面を用いて行う(S1004)。
【0077】
図14は、クライアントPCに表示される印刷オプション設定画面の一例を示す図である。
【0078】
図14に示す例では、1401に示すように、初期ステータスとして「ホールド」が設定されている。これは、印刷ジョブソート(S308)を実行するために、ジョブを一度保留する必要があるため、自動印刷の設定時に、ジョブを保留(ホールド)する設定を行う必要がある。
【0079】
OKボタン1402が押下指示されると、クライアントPCは、設定された自動印刷情報1501(図15)を電子帳票サーバ102のCPU201に送信する。
【0080】
図15は、図10のS1001〜S1004にて選択した自動印刷情報を示す図である。
【0081】
そして、電子帳票サーバ102のCPU201は、クライアントPCで設定されて送信された自動印刷情報1501(図15)を受信して、外部メモリ211に格納(登録)し、自動印刷処理306を実行する際に用いる。
【0082】
次に、図16を参照して、図3のS303に示したデータ登録処理及びS304に示したS303に示したデータ登録処理及びキーワード仕分け処理の詳細について説明する。
【0083】
図16は、図3のS303に示したデータ登録処理及びS304に示したキーワード仕分け処理の詳細を示すフローチャートである。このフローチャートにおいて、ホストコンピュータ101により実行される処理は、ホストコンピュータ101のCPUが外部メモリに格納されたプログラムを実行することにより実現されるものである。また、電子帳票サーバ102により実行される処理は、電子帳票サーバ102のCPU201が外部メモリ211に格納されたプログラム212をRAM202にロードして実行することにより実現されるものである。
【0084】
データ登録処理は、ホストコンピュータ101から実行される。まず、ホストコンピュータ101で作成された帳票データがホストコンピュータ101から電子帳票サーバ102に転送されると、電子帳票サーバ102のCPU201は、帳票データを受信する(S1601)。
【0085】
次に、電子帳票サーバ102のCPU201は、上記S1601で受信した帳票データを、電子帳票サーバ内で管理できる形式の帳票ファイルに変換する(S1602)。
【0086】
帳票データの変換(S1602)が終了すると、電子帳票サーバ102のCPU201は、仕分け設定処理(図4)で設定した仕分け位置設定情報901(図9)と、仕掛けキー情報801(配信先ディレクトリ情報を含む)(図8)を取得する(S1603〜S1605)。
【0087】
次に、電子帳票サーバ102のCPU201は、帳票ファイルの各ページを解析し、仕分け位置設定情報で示す仕分け位置のデータで仕分けキーに一致するものが存在するか否かを判断する(S1606)。
【0088】
そして、上記S1606において、仕分け位置のデータで仕分けキーに一致するものが存在すると判断した場合、上記S1605で取得した配信先ディレクトリ情報に対応する配信先ディレクトリに帳票ファイルを配信(格納)する(S1608)。
【0089】
一方、上記S1606において、仕分け位置のデータが仕分けキーに一致するものが存在しない判断した場合、デフォルトで設定されている配信先に帳票ファイルを配信(格納)する(S1607)。
【0090】
次に、図17〜図20を参照して、図3のS308,S309に示した印刷ジョブソート処理の詳細について説明する。
【0091】
図17は、図3のS308,S309に示した印刷ジョブソート処理の詳細を示すフローチャートである。このフローチャートの処理は、電子帳票サーバ102のCPU201が外部メモリ211に格納されたプログラム212をRAM202にロードして実行することにより実現されるものである。
【0092】
印刷ジョブソート処理が開始されると(S1701)、電子帳票サーバ102のCPU201は、まず、図18に示すソート指示ファイル1801の解析を行い、正常なフォーマットか否か判断する(S1702)。これは、以降の処理で、ソート指示ファイル1801の形式が重要な意味を持ち、異なる形式の際に誤動作を行うことを防ぐことを目的としている。ここで、ソート指示ファイル1801について図18を用いて説明する。
【0093】
図18は、本実施形態のソート指示ファイル1801の一例を示す図である。
【0094】
図18に示すように、ソート指示ファイル1801の形式は、セクション指示行1802が1行記載され、その次にプリンタ指定行1803が1行記載され、その次にディレクトリ指定行1804が1又は複数行記載される。上記形式で1ブロックとなり、複数ブロックを連続して記載することができる。
【0095】
なお、セクション指示行1802とは、この行以後に1つの命令単位であるプリンタID(プリンタ指定行1803)が記述されることを示すためにある。
【0096】
プリンタID(プリンタ指定行1803)は、印刷ジョブソートを実施するプリンタのIDを示している。プリンタID(プリンタ指定行1803)は、セクション指示行の次行に記述する必要があり、セクション指示行の次行のみがプリンタIDとして認識される。
【0097】
ディレクトリID(ディレクトリ指定行1804)は、複数記述することができ、ソート指示ファイルに記載した順番にジョブがソートされプリンタへ出力を行うことができる。
【0098】
なお、ソート指示ファイル1801は、予めテキストファイル形式等で作成され、ソート指示ファイル1801の外部メモリ211に格納されているものとする。
【0099】
以下、図17のステップの説明に戻る。
【0100】
上記ソート指示ファイルの解析処理(S1702)では、例えば、セクション指示行1802がない場合や、プリンタ指定行1803で指示されるプリンタID、ディレクトリ指定行1804で指示されるディレクトリIDがシステムで入力できない文字、字数になっている場合に、不正なフォーマットと判断する。これは、ユーザに不正なフォーマットであることを警告すると共に、電子帳票サーバ102の不要な処理を減らし、負荷の軽減を行っている。
【0101】
そして、上記S1702において、ソート指示ファイル1801の解析の結果、不正なフォーマットと判断した場合、電子帳票サーバ102のCPU201は、ステップS1703に処理を進める。
【0102】
S1703では、電子帳票サーバ102のCPU201は、エラーログを出力し(S1703)、ユーザに何が原因で処理が異常終了したか分かる情報を残し、印刷ジョブソートを終了する(S1704)。
【0103】
一方、上記S1702において、ソート指示ファイル1801の解析の結果、正常なフォーマットと判断した場合、電子帳票サーバ102のCPU201は、ステップS1705に処理を進める。
【0104】
S1705では、電子帳票サーバ102のCPU201は、ソート指示ファイル1801を1行読み込み、行の内容を判断する(S1706)。
【0105】
そして、上記S1706において、行の内容がセクション指示行であると判断した場合、電子帳票サーバ102のCPU201は、次の行を読み込み(S1708)、その内容を対象プリンタのIDとしてRAM202に記憶する(S1708)。そして、上記S1705に処理を戻す。
【0106】
一方、上記S1706において、行の内容がセクション指示行でないと判断した場合、電子帳票サーバ102のCPU201は、その行の内容はディレクトリIDであると判断して、RAM202内のディレクトリリストに追加を行う(S1709)。そして、電子帳票サーバ102のCPU201は、次の行を読み込み、内容の判断を行う(S1710)。
【0107】
そして、上記S1710において、次の行がセクション指示行以外であると判断した場合、電子帳票サーバ102のCPU201は、対象プリンタに対する指示が残っていると判断して、上記S1705に処理を戻す。
【0108】
一方、上記S1710において、次の行がセクション指示行であると判断した場合、電子帳票サーバ102のCPU201は、対象プリンタに対する指示が終了と判断できるため、上記S1708で記憶したプリンタIDを元に図19に示すプリンタ情報1901(図19)を電子帳票サーバ102の外部メモリ211から取得する(S1711)。ここで、プリンタ情報1901について説明する。
【0109】
図19は、プリンタ情報1901の一例を示す図である。
【0110】
図19に示すように、プリンタ情報1901は、プリンタID、プリンタ状態、印刷ジョブID、印刷ジョブ状態等の情報を含む。なお、印刷ジョブID及び印刷ジョブ状態は、該プリンタの印刷キューに格納された印刷ジョブ毎に記載されている。
【0111】
なお、プリンタ情報1901は、電子帳票サーバ102にプリンタドライバがインストールされたプリンタに対して、外部メモリ211に格納されている。
【0112】
以下、図17のステップの説明に戻る。
【0113】
次に、電子帳票サーバ102のCPU201は、上記S1709で作成したディレクトリリストからディレクトリIDを1つ取得する(S1712)。
【0114】
次に、電子帳票サーバ102のCPU201は、上記S1711で取得したプリンタ情報1901に存在する、プリンタが持っている印刷ジョブの一覧(例えば図20の2001)を取得する(S1713)。
【0115】
図20は、本発明の印刷ジョブソート処理を実行した際の印刷ジョブの変遷を示す図である。
【0116】
図20に示すように、プリンタ情報1901には、プリンタID、プリンタ状態、印刷ジョブID、印刷ジョブ状態等の情報が含まれており、印刷ジョブID、印刷ジョブ状態は、印刷ジョブの数だけ格納されている。また、印刷ジョブ状態には、該印刷ジョブに対応する帳票ファイルが格納されているディレクトリのディレクトリID(ディレクトリ1,ディレクトリ2,ディレクトリ3,ディレクトリ4,ディレクトリ5等)や、該印刷ジョブに対応する帳票ファイルの帳票ID(帳票A,帳票B,帳票C,帳票D等)の情報が含まれている。
【0117】
上記S1713では、電子帳票サーバ102のCPU201は、プリンタ情報1901から、印刷ジョブ状態を取得することにより、例えば図20の2001に示すような、印刷ジョブの一覧を取得する。
【0118】
次に、電子帳票サーバ102のCPU201は、上記S1713で取得した印刷ジョブの一覧(例えば図20の2001)の中から、上記S1712で取得したディレクトリIDに関連するジョブのみをソート対象として、絞込みをおこなう(S1714)。即ち、印刷ジョブに対応する帳票ファイルが格納されているディレクトリのディレクトリID順にソート(ディレクトリIDをソートキーとしてソート)して絞込みを行う。この絞込み結果は、例えば図20の2002のようになる。図20の2002に示す例では、ディレクトリ1に関連するジョブのみが絞り込まれている。
【0119】
次に、電子帳票サーバ102のCPU201は、上記S1714で絞込みを行った印刷ジョブ(例えば図20の2002)の中をさらに、印刷ジョブに対応する帳票の帳票ID順で再ソートする(帳票IDをソートキーとしてソートする)(S1715)。このソート結果は、例えば図20の2003のように、帳票A、帳票B、帳票Cの順にソートされる。
【0120】
次に、電子帳票サーバ102のCPU201は、上記S1715で再ソートが終了した印刷ジョブ(例えば図20の2002)をリリースし、プリンタへ印刷要求を行う(S1716)。これにより、上記S1715で再ソートが終了したディレクトリ毎の印刷ジョブ(例えば図20の2002)をプリンタへ送信される。
【0121】
これにより、上記S1712で取得したディレクトリIDに対する再ソートとリリースが終了したので、次に、電子帳票サーバ102のCPU201は、上記S1709で作成したディレクトリリストに、まだ処理していないディレクトリIDが残っているか否かを判断する(S1717)。
【0122】
そして、上記S1717において、ディレクトリリストにまだ処理していないディレクトリIDが残っていると判断した場合、電子帳票サーバ102のCPU201は、上記S1712に処理を戻す。
【0123】
一方、上記S1717において、ディレクトリリストには、処理していないディレクトリIDは残っていないと判断した場合、電子帳票サーバ102のCPU201は、S1718に処理を進める。
【0124】
S1718では、電子帳票サーバ102のCPU201は、ソート指示ファイルに次の行があるか判断する。そして、ソート指示ファイルにまだ次の行があると判断した場合、電子帳票サーバ102のCPU201は、上記S1705に処理を戻す。
【0125】
一方、上記S1718では、電子帳票サーバ102のCPU201は、ソート指示ファイルにもう次の行がないと判断した場合、電子帳票サーバ102のCPU201は、本フローチャートの印刷ジョブソート処理を終了する。
【0126】
以下、図20を用いて、印刷ジョブソート処理(図17)を実行した際の印刷ジョブの変遷を具体的例を用いて説明する。
【0127】
図20において、2001は、図17のS1713で取得したプリンタ情報1712の印刷ジョブ一覧に対応する。
【0128】
そして、ディレクトリリストから取得したディレクトリIDが「ディレクトリ1」だった際には、図17のS1714の処理にて、ジョブ一覧2001から「ディレクトリ1」のジョブのみが絞り込まれ、対象のジョブが2002に示すようになる。
【0129】
さらに、図17のS1715の処理にて、帳票IDによるソートが実行されると、2003に示すようにジョブがソートされる。
【0130】
2003の状態になった時点で、順にプリンタに印刷を実行することにより、「ディレクトリ1」の「帳票A」、「帳票B」、「帳票C」、「帳票D」の順で印刷が行われる。
【0131】
また、ディレクトリリストに他のディレクトリIDがあれば、同様に再ソートを行う。
【0132】
以上により、印刷ジョブは、ディレクトリ毎に、さらに、帳票毎にソートされて、プリンタへと送られ、プリンタから用紙(帳票)が印刷されることとなる。
【0133】
したがって、電子帳票サーバ102に登録された帳票を自動で印刷を行い、かつ、登録された順序によらず、任意の印刷順(ソート指示ファイル1801で指定した順序)で、プリンタに印刷を行うことができる。
【0134】
このように、本実施形態の電子帳票サーバ102では、帳票ファイルの登録から印刷、印刷順のソートまで自動で行うことが可能になるので、印刷後にユーザが印刷された紙(帳票)を手作業でソートする(並べ替える)手間が軽減でき、運用コストを削減できる。
【0135】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【0136】
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0137】
以上のように、他システム(ホストコンピュータ101等の上位システム)から任意の時間に電子帳票サーバに登録される帳票を自動で印刷可能であり、かつ、登録された順序によらず、任意の印刷順(ユーザの指定した順番)で印刷をすることができる。
【0138】
即ち、帳票の登録から印刷、印刷順のソートまで自動で行うことが可能になるので、印刷後にユーザが印刷された帳票を手作業でソートする手間が軽減でき、運用コストを削減できる。
【0139】
以下、図21に示すメモリマップを参照してコンピュータを本発明の電子帳票サーバとして機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体の構成について説明する。
【0140】
図21は、コンピュータを本発明の電子帳票サーバとして機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体(記憶媒体)のメモリマップを説明する図である。
【0141】
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【0142】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【0143】
本実施形態における図3,図4,図10,図16,図17に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0144】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(又はCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0145】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【0146】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD−ROM,磁気テープ,不揮発性のメモリカード,ROM,EEPROM,シリコンディスク等を用いることができる。
【0147】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0148】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0149】
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【0150】
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ,データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【0151】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【図面の簡単な説明】
【0152】
【図1】本発明の一実施形態を示す電子帳票サーバを適用可能な電子帳票システムの概略構成を示す図である。
【図2】図1の電子帳票サーバ102のハードウエア構成を示す図である。
【図3】本発明の電子帳票サーバにおける印刷ジョブの出力順の再ソート機能の基本的な処理の一例を示すフローチャートである。
【図4】図3のS301に示した仕分け設定処理の詳細を示すフローチャートである。
【図5】クライアントPCに表示される仕分けキーの登録画面の一例を示す図である。
【図6】クライアントPCに表示される配信先ディレクトリの設定画面の一例を示す図である。
【図7】クライアントPCに表示される仕分けキー位置設定画面の一例を示す図である。
【図8】本実施形態の仕分けキー情報の一例を示す図である。
【図9】本実施形態の仕分けキー位置情報の一例を示す図である。
【図10】図3のS302に示した自動印刷設定処理の詳細を示すフローチャートである。
【図11】クライアントPCに表示されるプリンタ割当画面の一例を示す図である。
【図12】クライアントPCに表示される対象ディレクトリ選択画面の一例を示す図である。
【図13】クライアントPCに表示される対象帳票選択画面の一例を示す図である。
【図14】クライアントPCに表示される印刷オプション設定画面の一例を示す図である。
【図15】図10のS1001〜S1004にて選択した自動印刷情報を示す図である。
【図16】図3のS303に示したデータ登録処理及びS304に示したキーワード仕分け処理の詳細を示すフローチャートである。
【図17】図3のS308,S309に示した印刷ジョブソート処理の詳細を示すフローチャートである。
【図18】本実施形態のソート指示ファイル1801の一例を示す図である。
【図19】プリンタ情報1901の一例を示す図である。
【図20】本発明の印刷ジョブソート処理を実行した際の印刷ジョブの変遷を示す図である。
【図21】コンピュータを本発明の電子帳票サーバとして機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体(記憶媒体)のメモリマップを説明する図である。
【符号の説明】
【0153】
101 ホストコンピュータ
102 電子帳票サーバ
103,104 クライアントPC
105 ネットワーク
106,107 プリンタ

【特許請求の範囲】
【請求項1】
帳票ファイルの印刷ジョブをソートして印刷装置へ送信する電子帳票サーバであって、
上位システムから転送される帳票データと該帳票データの形式を定義するフォームデータとから生成される帳票ファイルを複数の記憶領域に仕分けして記憶させる仕分け手段と、
前記複数の記憶領域に記憶された帳票ファイルの印刷ジョブを生成する印刷ジョブ生成手段と、
前記印刷ジョブ生成手段により生成された印刷ジョブを保留する保留手段と、
前記保留手段に保留された印刷ジョブを、該印刷ジョブに対応する帳票ファイルが記憶される記憶領域毎にソートして印刷装置に送信するソート手段と、
を有することを特徴とする電子帳票サーバ。
【請求項2】
前記ソート手段は、前記保留手段に保留された印刷ジョブを、該印刷ジョブに対応する帳票ファイルが記憶される記憶領域毎にソートし、該ソートされた記憶領域毎の印刷ジョブを、該印刷ジョブに対応する帳票ファイル毎にソートすることを特徴とする請求項1に記載の電子帳票サーバ。
【請求項3】
1又は複数の印刷装置と該印刷装置毎に印刷するべき帳票ファイルが格納される1又は複数の記憶領域を指示させておく指示手段を有し、
前記保留手段は、前記印刷ジョブ生成手段により生成された印刷ジョブを印刷装置毎に保留するものであり、
前記ソート手段は、前記指示手段で指示された印刷装置毎に保留された印刷ジョブを、該印刷ジョブに対応する帳票ファイルが記憶される記憶領域毎にソートすることを特徴とする請求項1又は2に記載の電子帳票サーバ。
【請求項4】
キーワードと該キーワードを含む帳票ファイルを記憶する記憶領域を設定する仕分け設定手段を有し、
仕分け手段は、前記仕分け設定手段による設定に基づいて上位システムから転送される帳票データと該帳票データの形式を定義するフォームデータとから生成される帳票ファイルを複数の記憶領域に仕分けすることを特徴とする請求項1乃至3のいずれか1項に記載の電子帳票サーバ。
【請求項5】
印刷時間を指定する指定手段を有し、
前記ソート手段は、前記指定手段に指定された印刷時間に、前記ソートを行って印刷ジョブを印刷装置に送信することを特徴とする請求項1乃至4のいずれか1項に記載の電子帳票サーバ。
【請求項6】
帳票ファイルの印刷ジョブをソートして印刷装置へ送信する電子帳票サーバにおける制御方法であって、
仕分け手段が、上位システムから転送される帳票データと該帳票データの形式を定義するフォームデータとから生成される帳票ファイルを複数の記憶領域に仕分けして記憶させる仕分けステップと、
印刷ジョブ生成手段が、前記複数の記憶領域に記憶された帳票ファイルの印刷ジョブを生成する印刷ジョブ生成ステップと、
保留手段が、前記印刷ジョブ生成ステップで生成された印刷ジョブを保留する保留ステップと、
ソート手段が、前記保留ステップで保留された印刷ジョブを、該印刷ジョブに対応する帳票ファイルが記憶される記憶領域毎にソートして印刷装置に送信するソートステップと、
を有することを特徴とする制御方法。
【請求項7】
帳票ファイルの印刷ジョブをソートして印刷装置へ送信する電子帳票サーバにおいて実行可能なプログラムであって、
上位システムから転送される帳票データと該帳票データの形式を定義するフォームデータとから生成される帳票ファイルを複数の記憶領域に仕分けして記憶させる仕分け手段、
前記複数の記憶領域に記憶された帳票ファイルの印刷ジョブを生成する印刷ジョブ生成手段、
前記印刷ジョブ生成手段により生成された印刷ジョブを保留する保留手段、
前記保留手段に保留された印刷ジョブを、該印刷ジョブに対応する帳票ファイルが記憶される記憶領域毎にソートして印刷装置に送信するソート手段、
として前記電子帳票サーバを機能させることを特徴とするプログラム。
【請求項8】
請求項7に記載されたプログラムをコンピュータに読み取り可能に記録した記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate


【公開番号】特開2010−113657(P2010−113657A)
【公開日】平成22年5月20日(2010.5.20)
【国際特許分類】
【出願番号】特願2008−287802(P2008−287802)
【出願日】平成20年11月10日(2008.11.10)
【出願人】(390002761)キヤノンマーケティングジャパン株式会社 (656)
【Fターム(参考)】