Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4065715B2 - Job processing device - Google Patents
[go: Go Back, main page]

JP4065715B2 - Job processing device - Google Patents

Job processing device Download PDF

Info

Publication number
JP4065715B2
JP4065715B2 JP2002120249A JP2002120249A JP4065715B2 JP 4065715 B2 JP4065715 B2 JP 4065715B2 JP 2002120249 A JP2002120249 A JP 2002120249A JP 2002120249 A JP2002120249 A JP 2002120249A JP 4065715 B2 JP4065715 B2 JP 4065715B2
Authority
JP
Japan
Prior art keywords
file
job
identifier
registered
data
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.)
Expired - Fee Related
Application number
JP2002120249A
Other languages
Japanese (ja)
Other versions
JP2003316560A (en
Inventor
一誠 辻井
Original Assignee
キヤノンアイテック株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by キヤノンアイテック株式会社 filed Critical キヤノンアイテック株式会社
Priority to JP2002120249A priority Critical patent/JP4065715B2/en
Publication of JP2003316560A publication Critical patent/JP2003316560A/en
Application granted granted Critical
Publication of JP4065715B2 publication Critical patent/JP4065715B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、コンピュータシステム等においてジョブを処理する技術に関し、特に、ホットフォルダに格納されたドキュメントファイルの印刷をジョブとして登録し、これを処理する印刷制御システムに関するものである。
【0002】
【従来の技術】
コンピュータシステム等においてジョブを処理する技術としては、たとえば、特開2000−118095号公報に記載された、ホットフォルダに格納されたファイルの印刷をジョブとして登録し、これを処理する技術が知られている。
【0003】
この技術は、定期的にホットフォルダへのドキュメントファイルの格納を監視し、新たにホットフォルダに格納されたドキュメントファイルが検出されたならば、検出されたドキュメントファイルの印刷ジョブをジョブリストに登録すると共に、ジョブリストに登録された印刷ジョブを逐次実行することにより、ホットフォルダに格納された各ドキュメントファイルの印刷を実現するものである。
【0004】
このような技術によれば、ユーザは、ドキュメントファイルを印刷したいときに、そのドキュメントファイルをホットフォルダへ移動/格納するだけで、その印刷を行うことができるようになる。
【0005】
【発明が解決しようとする課題】
前記従来の技術は、定期的に、ホットフォルダに新規に格納されたドキュメントファイルの印刷ジョブを登録するものである。したがって、印刷ジョブの登録のためには、ホットフォルダに格納されたドキュメントファイルのうち、どれが新規にホットフォルダに格納されたドキュメントファイルであり、どれが既に印刷ジョブを登録したドキュメントファイルであるのかの識別を行う必要がある。また、印刷ジョブの実行前にホットフォルダから消去/移動されたドキュメントファイルについては、そのドキュメントファイルについての印刷ジョブの登録をキャンセルする必要がある。
【0006】
そして、このために、ホットフォルダに格納されたドキュメントファイルの数が増大するに従い、定期的に行われる印刷ジョブ登録の処理の処理量が増大し、システムリソースを多く消費してしまうという問題が生じる。
そこで、本発明は、ジョブの対象となるデータの存在に基づいて行うジョブ登録の処理を効率化することを課題とする。
【0007】
【課題を解決するための手段】
前記課題達成のために、本発明は、前記課題達成のために、たとえば、ジョブリストにジョブを登録し、前記ジョブリストに登録されたジョブを実行するジョブ処理方法であって、
間欠的に、所定の条件を満たす各データについてのみ、当該データを処理するジョブがジョブリストに登録されるように当該ジョブリストを更新するジョブリスト更新ステップと、
前記ジョブリストに登録されたジョブを順次実行するジョブ実行ステップとを有し、
前記ジョブリスト更新ステップは、
ジョブリストに登録されたジョブに対応するデータのデータ識別子を所定の基準に従ってソートして登録したジョブインデックスと、前記記憶領域に格納されたデータのデータ識別子を前記基準に従ってソートして登録したカレントインデックスとを作成するステップと、
ジョブインデックスに登録された各データ識別子を、ジョブインデックスにカレントインデックスに最後に登録されているデータ識別子と一致するデータ識別子が存在する場合には先頭のデータ識別子から少なくとも前記一致するデータ識別子まで、ジョブインデックスに登録された順番に、順次着目データ識別子として選択し、着目データ識別子を選択した各回について、カレントインデックスに登録されたデータ識別子のうち、今回に先行する回において着目データ識別子と一致したデータ識別子が存在する場合には今回に先行する直近の回において着目データ識別子と一致したデータ識別子より後にカレントインデックスに登録されているデータ識別子を、他の場合にはカレントインデックスに登録されている各データ識別子を、少なくとも、今回の着目データ識別子と一致するデータ識別子がカレントインデックスの存在する場合には当該一致するデータ識別子まで、他の場合には最後のデータ識別子まで、カレントインデックスに登録された順番に順次検証データ識別子としながら、今回の着目データ識別子と検証データ識別子とを比較し、当該着目データ識別子と検証データ識別子が一致した場合に、当該一致した検証データ識別子を除く他の今回検証データ識別子とした各データ識別子のデータを処理するジョブをジョブリストに追加し、当該着目データ識別子と一致する検証データ識別子が存在しなかった場合に、当該着目データ識別子としたデータ識別子のデータのジョブをジョブリストから削除するステップとを有することを特徴とするジョブ処理方法を提供する。
【0008】
このようなジョブ処理方法によれば、以下の実施形態において、その一例を詳細に説明するように、ジョブに対応するファイルが前記記憶領域から削除されていないかどうかを調べるために、ジョブリストに登録されたジョブに対応するファイルのファイル識別子のそれぞれについて、前記記憶領域に格納されたファイルのファイル識別子のそれぞれと比較したり、新たにジョブを生成すべきファイルが前記記憶領域に追加されていないかどうかを調べるために、前記記憶領域に格納されたファイルのファイル識別子のそれぞれについて、ジョブリストに登録された各ジョブに対応するファイルのファイル識別子のそれぞれと比較する場合に比べ、より少ない比較回数で、前記記憶領域から削除されたファイルに対応するジョブのファイル識別子や前記記憶領域に新たに追加されたファイルのファイル識別子を算出することができるようになる。
【0009】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
図1に、本実施形態に係るコンピュータシステムの構成を示す。
図示するように本コンピュータシステムは、コンピュータ1とプリンタ2が接続されたシステムであり、コンピュータ1の上ではプリンタ2の印刷動作を制御するプリンタドライバ111が組み込まれたオペレーティングシステム11と、複数のアプリケーション12〜14が稼働している。
【0010】
また、これらアプリケーションのうち、アプリケーション12は、ドキュメントファイルの印刷処理を行う印刷処理サーバであり、ジョブ実行制御部121とジョブ監視部122とを有する。また、他のアプリケーションはたとえば、ドキュメントファイルを編集、生成するアプリケーションなどである。
【0011】
ここで、コンピュータ1は、ハードウエア的には、CPUや、主記憶や、ハードディスク装置等の外部記憶装置や、キーボードやポインティングデバイスなどの入力装置や、表示装置などを備えた、一般的な構成を有するコンピュータ1であり。この場合、コンピュータ1の以上の各部は、CPUが主記憶にロードされたプログラムを実行することによりコンピュータに具現化されるとして実現される。また、以上のコンピュータ1の機能は、ネットワーク上に分散配置されたものであってもかまわない。
【0012】
以下、このようなコンピュータシステムにおける印刷処理サーバ12の動作について説明する。
図2に示すように、印刷処理サーバ12は、オペレーティングシステム11のファイルシステムが管理するディレクトリの一種であるホットフォルダに格納されたドキュメントファイルを印刷を行うものである。
この印刷動作は、大きく分けて、ジョブ監視部122によって定期的に行われる、ホットフォルダのドキュメントファイル格納状態に応じたジョブリストの登録ジョブの更新と、ジョブ実行制御部121によるジョブリストの登録ジョブの逐次実行とよりなる。
【0013】
ここで、ジョブ監視部122によってジョブリストに登録される各ジョブは、ホットフォルダ内の一つのドキュメントファイルの印刷を要求するものであり、ジョブ実行制御部121によるジョブリストの登録ジョブの実行とは、そのジョブが要求するドキュメントファイルのプリンタ2による印刷を、オペレーティングシステム11とプリンタドライバ111を介して制御するものである。
【0014】
さて、ジョブリストには、各ジョブの情報として、当該ジョブが要求するドキュメントファイルのファイル名(Filename)と当該ジョブがジョブリストに登録された日時(Date)との組が登録される。一方、ジョブ監視部122は、このようなジョブリストの登録ジョブの更新を、登録ファイルインデックスとカレントファイルインデックスと呼ぶ、二つの変数テーブルを用いながら行う。そして、登録ファイルインデックスは、ファイル名(Filename)と削除フラグ(delete)の組が記述されるエントリを複数もつことができ、カレントファイルインデックスはファイル名(Filename)と新規フラグ(new)の組が記述されるエントリを複数もつことができる。
【0015】
以下、このジョブ監視部122の動作について説明する。
図3に、ジョブ監視部122の行うジョブリスト更新処理の手順を示す。
図示するように、ジョブ監視部122は、起動されると、まず、登録ファイルインデックスを生成する(ステップ302)。すなわち、ジョブリストに格納されているファイル名を、ファイル名をソートキーとしてソートし、各ファイル名を、ソート後の順番に従って、登録ファイルインデックスに、そのファイル名を記述するエントリを作成して登録する。ファイル名のソートは、たとえば、ファイル名を、アルファベット順や文字コード順に並べるなどの手法などにより行う。ただし、このようなソートキーは、ある一定のルールにより一意にファイル名に順番づけを行えるものであれば任意のキーによって良い。また、ここでは、登録ファイルインデックスに登録した各ファイル名のエントリの削除フラグは、全てオフとする。
【0016】
次に、ジョブ監視部122は、カレントファイルインデックスを作成する(ステップ304)。すなわち、ホットフォルダに格納されているファイル名をオペレーティングシステム11を介して入手し、入手したファイル名を、ファイル名をソートキーとしてソートし、各ファイル名を、ソート後の順番に従って、カレントファイルファイルインデックスに、そのファイル名を記述するエントリを作成して登録する。ファイル名のソートは、前記登録ファイルインデックスと同じルールにより行う。また、ここでは、カレントファイルインデックスに登録した各ファイル名のエントリの新規フラグは、全てオフとする。
【0017】
次に、登録ファイルインデックスに登録されたファイル名の数をMAXj、カレントファイルインデックスに登録されたファイル名の数をMAXcとする(ステップ306)。そして、着目登録ファイル番号jを1に、比較ファイル番号cを1に、比較回数tを0に初期化する(ステップ308)。
【0018】
そして、登録ファイルインデックスのj番目のファイル名とカレントファイルインデックスのc番目のファイル名の比較を(ステップ310)、両者が一致するか(ステップ312)、両者が一致しないままカレントファイルインデックスの最後(MAXc番目)のファイル名との比較が終了するまで(ステップ332)、比較ファイル番号cと、比較回数tを1増加しながら(ステップ340)行う。
【0019】
そして、もし、両者が一致しないまま、カレントファイルインデックスの最後(MAXc番目)のファイル名との比較が終了したならば(ステップ332)、登録ファイルインデックスのj番目のファイル名のエントリの削除フラグをオンに設定する(ステップ334)。そして、着目登録ファイル番号jが、登録ファイルインデックスのファイル名数MAXjと一致するかどうかを調べ(ステップ336)、そうでなければ、着目登録ファイル番号jを1増加し、比較ファイル番号cをC−tとし、tを0とし(ステップ342)、ステップ310に戻って、登録ファイルインデックスに次に登録されたファイル名の処理を行う。
【0020】
一方、着目登録ファイル番号jが、登録ファイルインデックスのファイル名数MAXjと一致する場合には(ステップ336)、カレントファイルインデックスのC−t番目からMAXc番目までのファイル名のエントリの新規フラグをオンに設定し(ステップ338)、ステップ324に進む。
【0021】
さて、ステップ312において、登録ファイルインデックスのj番目のファイル名とカレントファイルインデックスのc番目のファイル名が一致した場合には、次のように処理を行う。
すなわち、比較回数tが0かどうかを調べ(ステップ314)、0でなければ、カレントファイルインデックスのc−t番目からc−1番目までのファイル名のエントリの新規フラグをオンに設定し(ステップ316)、ステップ318に進む。一方、比較回数tが0であれば、そのままステップ318に進む。
【0022】
ステップ318では、比較ファイル番号cがMAXcと一致するかどうかを調べ、一致すれば、登録ファイルインデックスのj+1番目からMAXj番目のファイル名のエントリの削除フラグをオンに設定し(ステップ344)、ステップ324に進む。一方、比較ファイル番号cがMAXcと一致しない場合には(ステップ318)、さらに着目登録ファイル番号jがMAXjと一致するかどうかを調べ(ステップ320)、一致する場合には、カレントファイルインデックスのc+1番目からMAXc番目のファイル名のエントリの新規フラグをオンに設定し(ステップ322)、ステップ324に進む。そして、ステップ320で、着目登録ファイル番号jがMAXjと一致しなかった場合には、着目登録ファイル番号jと比較ファイル番号cを1増加し、tを0とし(ステップ346)、ステップ310に戻って、登録ファイルインデックスに次に登録されたファイル名の処理を行う。
【0023】
さて、ステップ324では、登録ファイルインデックスの削除フラグがオンに設定されているエントリのファイル名と一致するファイル名のエントリをジョブリストから削除する。そして、ステップ326において、カレントファイルインデックスの新規フラグがオンに設定されているエントリのファイル名を、順次、ジョブリストにエントリを作成して追加し、各エントリの日時に現在日時を設定する。
【0024】
そして、タイマを設定し(ステップ328)、タイマがタイムアウトしたならば(ステップ330)、以上の処理を再度行う。すなわち、ステップ302〜ステップ326の処理は定期的に行われる。
ここで、以上の処理によって、どのようにホットフォルダのドキュメントファイルの格納状態に応じてジョブリストの内容が更新されていくかを、その例によって説明する。
いま、図4aに示すように、ステップ302で、その時点のジョブリストの内容に基づき登録ファイルインデックスにE、F、Jのファイル名のエントリが当該順番で作成され、ステップ304で、その時点のホットフォルダに格納されたドキュメントファイルに基づき、カレントファイルインデックスにA〜E、G〜Kのファイル名のエントリが当該順番で作成された場合を例にとる。
【0025】
すなわち、この例は、前回のジョブリストの更新後に、ドキュメントファイルFがホットフォルダから削除され、かつ、前回のジョブリストの更新後に、A〜D、G〜I、Kのドキュメントファイルがホットフォルダに追加された場合についてのものである。
【0026】
この場合、まず、登録ファイルインデックスの最初のファイル名Eがj=1のファイル名として選択され、ステップ310で、カレントファイルインデックスの先頭(c=1)から登録順に(ステップ340)、カレントファイルインデックスに登録されたファイル名と比較されていく。
【0027】
そして、c=5、t=4となった時点で、登録ファイルインデックスの最初のファイル名Eと、カレントファイルインデックスの5番目のファイル名Eが一致する(ステップ312)ので、ステップ316で、カレントファイルインデックスのc−t=5−4=1番目のファイル名Aのエントリからc−1=5−1=4番目のファイル名Dまでのエントリの新規フラグがオンに設定される。
【0028】
すなわち、以上の処理では、カレントファイルインデックスに登録されたファイル名のうち、登録ファイルインデックスに登録された最初のファイル名と一致するファイル名より、前のファイル名は全て新規にホットフォルダに格納されたドキュメントフォルダのものであるので、その新規フラグをオンに設定する。
【0029】
なお、比較回数tは、登録ファイルインデックスのj番目のファイル名につき行われた、ファイル名が一致しなかった比較の回数を表すようになっている。比較ファイル番号cは、登録ファイルインデックスのj番目のファイル名と比較するファイル名のカレントファイルインデックス中の順番を表すようになっている。
【0030】
次に、ステップ346でjが1増加されて2、cが1増加されて6、t=0とされて、登録ファイルインデックスの2番目のファイル名Fがj=2のファイル名として選択され、カレントファイルインデックスのc(=6)番目のファイル名Gから登録順に(ステップ340)、カレントファイルインデックスに登録されたファイル名と比較されていく。なお、ここでcとjを1増加するのは、増加前のcとjについて、登録ファイルインデックスの先頭からj番目のファイル名まで対応するドキュメントファイルがホットフォルダから削除されていないかどうかが判定済みであり、カレントファイルインデックスの先頭からc番目のファイル名まで対応するドキュメントファイルがホットフォルダに新規に追加されたものである判定済みであり、以降の処理では、これら判定済みのファイル名は処理の対象から除外するためである。
【0031】
さて、j=2では、登録ファイルインデックスに登録されたファイル名Fのドキュメンファイルが既にホットフォルダから削除されているので、ステップ346の比較が一致することはなく、カレントファイルインデックスのMAXc(=10)番目のファイル名Kとの比較が終了する。この時点で、ファイル名が一致しなかった比較回数を表す比較回数はt=4となっている。すると、ステップ332の判定に従って、ステップ334へ処理が分岐され、登録ファイルインデックスのj(=2)番目のファイル名Fのエントリの削除フラグがオンに設定される。
【0032】
すなわち、登録ファイルインデックスに登録されたファイル名のうち、カレントファイルインデックスに登録された最後のファイル名まで比較しても一致するファイル名が存在しないファイル名は、ホットフォルダから削除された対応するドキュメントファイルのものであるので、削除フラグをオンに設定する。
【0033】
そして、ステップ342で、jが1増加されて3、cがc−t=10−4=5とされて6、t=0とされて、登録ファイルインデックスの3番目のファイル名Jがj=2のファイル名として選択され、カレントファイルインデックスのc(=6)番目のファイル名Gから登録順に(ステップ340)、カレントファイルインデックスに登録されたファイル名と比較されていく。
【0034】
ここで、先程と異なり、cをc−tとするのは、更新前のjとcについて、登録ファイルインデックスのj番目のファイル名と一致するファイル名がカレントファイルインデックスに登録されていなかったために、登録ファイルインデックスのj番目のファイル名との比較を開始したc−t番目のファイル名からc番目のファイル名まで、それが新規ホットフォルダに追加されたドキュメントファイルであるかどうか判定できなかったためである。
【0035】
さて、登録ファイルインデックスの3番目のファイル名Jは、c=9、t=3となった時点で、カレントファイルインデックスに9番目に登録されたファイル名Jと一致する。そこで、ステップ316で、カレントファイルインデックスのc−t=9−3=6番目のファイル名Gのエントリからc−1=9−1=8番目のファイル名Iまでのエントリの新規フラグがオンに設定される。
【0036】
すなわち、カレントファイルインデックスに登録されたファイル名のうち、カレントファイルインデックスのファイル名のうち、登録ファイルインデックスに登録されたj番目のファイル名との比較を開始したファイル名から、当該j番目のファイル名と一致するファイル名の前のファイル名までの間のファイル名は全て新規にホットフォルダに格納されたドキュメントフォルダのものであるので、その新規フラグをオンに設定する。
【0037】
次に、この時、j=MAXj=3となるので、ステップ320により、処理はステップ322に分岐され、カレントファイルインデックスのc+1=10番目のファイル名Kのエントリ〜MAXc=10番目のファイル名Kのエントリまでのエントリの新規フラグがオンに設定され、ステップ324へ処理が進む。すなわち、カレントファイルインデックスのファイル名のうち、登録ファイルの最後のファイル名と一致したファイル名より後のファイル名は、全て新規にホットフォルダに格納されたドキュメントフォルダのものであるので、その新規フラグをオンに設定する。
【0038】
さて、この時点では、以上の処理により登録ファイルインデックスのファイル名Fのエントリの削除フラグがオンに設定され、カレントファイルインデックスのファイル名A〜D、G〜I、Kのエントリの新規フラグがオンに設定されている。
【0039】
したがって、ステップ324ではジョブリストのファイル名Fのジョブが削除され、ステップ326ではファイル名A〜D、G〜I、Kのジョブがジョブリストに追加されることになる。
次に、図4bに、他の処理例を示す。
この例では、ステップ302で、その時点のジョブリストの内容に基づき登録ファイルインデックスにE、H、J、Lのファイル名のエントリが当該順番で作成され、ステップ304で、その時点のホットフォルダに格納されたドキュメントファイルに基づき、カレントファイルインデックスにA〜E、G、Hのファイル名のエントリが当該順番で作成された場合を例にとる。
【0040】
すなわち、この例は、前回のジョブリストの更新後に、ドキュメントファイルJとLがホットフォルダから削除され、かつ、前回のジョブリストの更新後に、A〜D、Gのドキュメントファイルがホットフォルダに追加された場合についてのものである。
【0041】
この場合、図4aの例の場合と同様に、まず、登録ファイルインデックスの最初のファイル名Eがj=1のファイル名として選択され、ステップ310で、カレントファイルインデックスの先頭(c=1)から登録順に(ステップ340)、カレントファイルインデックスに登録されたファイル名と比較されていく。
【0042】
そして、c=5、t=4となった時点で、登録ファイルインデックスの最初のファイル名Eと、カレントファイルインデックスの5番目のファイル名Eが一致する(ステップ312)ので、ステップ316で、カレントファイルインデックスのc−t=5−4=1番目のファイル名Aのエントリからc−1=5−1=4番目のファイル名Dまでのエントリの新規フラグがオンに設定される。
【0043】
次に、ステップ346でjが1増加されて2、cが1増加されて6、t=0とされて、登録ファイルインデックスの2番目のファイル名Hがj=2のファイル名として選択され、カレントファイルインデックスのc(=6)番目のファイル名Gから登録順に(ステップ340)、カレントファイルインデックスに登録されたファイル名と比較されていく。
【0044】
そして、c=7、t=1となった時点で、カレントファイルインデックスに7番目に登録されたファイル名Hと一致する。そこで、ステップ316で、カレントファイルインデックスのc−t=7−1=6番目のファイル名Gのエントリからc−1=7−1=6番目のファイル名Gまでのエントリの新規フラグがオンに設定される。
【0045】
次に、この時、c=MAXc=7となるので、ステップ318により、処理はステップ344に分岐され、登録ファイルインデックスのj+1=3番目のファイル名Jのエントリ〜MAXj=4番目のファイル名Lエントリまでのエントリの削除フラグがオンに設定され、ステップ324へ処理が進む。
【0046】
すなわち、登録ファイルインデックスに登録されたファイル名のうち、カレントファイルインデックスの最後のファイル名と一致するファイル名より後に登録されたファイル名は、全てホットフォルダから削除されたドキュメントファイルのものであるので、削除フラグをオンに設定する。
【0047】
さて、この時点では、以上の処理により登録ファイルインデックスのファイル名J、Lのエントリの削除フラグがオンに設定され、カレントファイルインデックスのファイル名A〜D、Gのエントリの新規フラグがオンに設定されている。したがって、ステップ324ではジョブリストのファイル名J、Lのジョブが削除され、ステップ326ではファイル名A〜D、Gのジョブがジョブリストに追加されることになる。
次に、図4cに他の処理例を示す。
すなわち、この例は、前回のジョブリストの更新後に、ドキュメントファイルHがホットフォルダから削除され、かつ、前回のジョブリストの更新後に、A〜D、G、J、Kのドキュメントファイルがホットフォルダに追加された場合についてのものである。
【0048】
この場合、図4aの例の場合と同様に、まず、登録ファイルインデックスの最初のファイル名Eがj=1のファイル名として選択され、ステップ310で、カレントファイルインデックスの先頭(c=1)から登録順に(ステップ340)、カレントファイルインデックスに登録されたファイル名と比較されていく。
【0049】
そして、c=5、t=4となった時点で、登録ファイルインデックスの最初のファイル名Eと、カレントファイルインデックスの5番目のファイル名Eが一致する(ステップ312)ので、ステップ316で、カレントファイルインデックスのc−t=5−4=1番目のファイル名Aのエントリからc−1=5−1=4番目のファイル名Dまでのエントリの新規フラグがオンに設定される。
【0050】
そして、次に、ステップ346でjが1増加されて2、cが1増加されて6、t=0とされて、登録ファイルインデックスの2番目のファイル名Hがj=2のファイル名として選択され、カレントファイルインデックスのc(=6)番目のファイル名Gから登録順に(ステップ340)、カレントファイルインデックスに登録されたファイル名と比較されていく。
【0051】
今回は、登録ファイルインデックスに登録されたファイル名Hのドキュメンファイルが既にホットフォルダから削除されているので、ステップ346の比較が一致することはなく、カレントファイルインデックスのMAXc(=8)番目のファイル名Kとの比較が終了する。この時点で、ファイル名が一致しなかった比較回数を表す比較回数はt=2となっている。すると、ステップ332の判定に従って、ステップ334へ処理が分岐され、登録ファイルインデックスのj(=2)番目のファイル名Hのエントリの削除フラグがオンに設定される。また、この場合は、j=MAXj=2となっているので、ステップ336の判定に従ってステップ338に処理が分岐され、カレントファイルのc−t=8−2=6番目のファイル名GのエントリからMAXc=8番目のファイル名Kのエントリまでの各エントリの新規フラグがオンに設定され、ステップ324に処理が進む。
【0052】
すなわち、登録ファイルインデックスに登録された最後のファイル名が、カレントファイルインデックスの最後のファイル名と一致しなかった場合には、カレントファイルインデックスのファイル名のうち、登録ファイルインデックスに登録された最後のファイル名との比較を開始したファイル名より以降のファイル名は、全てホットフォルダに新規に格納されたドキュメントファイルのものであるので、新規フラグを設定する。
【0053】
さて、この時点では、以上の処理により登録ファイルインデックスのファイル名Hのエントリの削除フラグがオンに設定され、カレントファイルインデックスのファイル名A〜D、G〜Kのエントリの新規フラグがオンに設定されている。したがって、ステップ324ではジョブリストのファイル名Hのジョブが削除され、ステップ326ではファイル名A〜D、G〜Kのジョブがジョブリストに追加されることになる。
以上、ジョブ監視部122の動作について説明した。
次に、ジョブ実行制御部121の動作について説明する。
ジョブ実行制御部121は、処理を開始すると、図5に示すジョブ実行処理を行う。
このジョブ実行処理では、図示するようにジョブリストにジョブが登録されているかどうかを監視し(ステップ502)、ジョブが登録されていれば、ジョブリストの先頭のジョブを取り出し、取り出したジョブのエントリに記述されているドキュメントファイルをホットフォルダから読み出して(ステップ504)、オペレーティングシステム11/プリンタドライバ111を介して、ドキュメントフォルダのプリンタ2における印刷を制御する(ステップ506)。
【0054】
そして、印刷が正常に終了したならば(ステップ508)、印刷を終了したジョブをジョブリストから削除し(ステップ510)、オペレーティングシステム11に要請し、印刷したドキュメントファイルを、ホットフォルダから予め用意された処理済みフォルダに移動する(ステップ512)。
【0055】
以上、本発明の実施形態について説明した。
ところで、以上では、ドキュメントファイルをジョブで処理する対象として、ジョブをドキュメントファイルを印刷するジョブとして説明したが、以上のジョブリストの更新の処理は、任意のキーによりソートすることができるデータを対象として、任意の処理を行うジョブについて同様に適用可能である。たとえば、メールフォルダに格納されたメールデータを対象として、メール送信を行うジョブや、その他のジョブのジョブリストの更新に同様に適用可能である。また、ジョブの処理の対象とするデータは、必ずしも一つのフォルダに格納されたものとする必要はなく、任意の条件で選定されるデータをジョブの処理の対象とするようにして良い。
【0056】
【発明の効果】
以上のように、本発明によれば、ジョブの対象となるデータの存在に基づいて行うジョブ登録の処理を効率化することができる。
【図面の簡単な説明】
【図1】本発明の実施形態に係るコンピュータシステムの構成を示すブロック図である。
【図2】本発明の実施形態に係る印刷処理サーバ12とホットフォルダの関係を示す図である。
【図3】本発明の実施形態に係るジョブリスト更新処理の手順を示すフローチャートである。
【図4】本発明の実施形態に係るジョブリスト更新処理の具体例を示す図である。
【図5】本発明の実施形態に係るジョブ実行処理の手順を示すフローチャートである。
【符号の説明】
1:コンピュータ、2:プリンタ、11:オペレーティングシステム、12:印刷処理サーバ、13〜14:アプリケーション、111:プリンタドライバ、121:ジョブ実行制御部、122:ジョブ監視部。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a technique for processing a job in a computer system or the like, and more particularly to a print control system that registers printing of a document file stored in a hot folder as a job and processes the job.
[0002]
[Prior art]
As a technique for processing a job in a computer system or the like, for example, a technique described in Japanese Patent Application Laid-Open No. 2000-118095 for registering printing of a file stored in a hot folder as a job and processing the job is known. Yes.
[0003]
This technology periodically monitors the storage of a document file in a hot folder, and if a new document file stored in the hot folder is detected, a print job of the detected document file is registered in the job list. At the same time, printing of each document file stored in the hot folder is realized by sequentially executing print jobs registered in the job list.
[0004]
According to such a technique, when a user wants to print a document file, the user can print the document file only by moving / storing the document file to a hot folder.
[0005]
[Problems to be solved by the invention]
In the conventional technique, a print job of a document file newly stored in a hot folder is registered periodically. Therefore, to register a print job, which of the document files stored in the hot folder is the document file that is newly stored in the hot folder, and which is the document file that has already registered the print job. Need to be identified. For a document file that has been erased / moved from the hot folder before execution of the print job, it is necessary to cancel registration of the print job for the document file.
[0006]
For this reason, as the number of document files stored in the hot folder increases, the amount of processing for print job registration that is performed periodically increases, which causes a problem of consuming a lot of system resources. .
Therefore, an object of the present invention is to improve the efficiency of job registration processing that is performed based on the presence of data that is the subject of a job.
[0007]
[Means for Solving the Problems]
To achieve the above object, the present invention provides, for example, a job processing method for registering a job in a job list and executing the job registered in the job list.
A job list update step that updates the job list so that a job that processes the data is intermittently registered in the job list only for each data that satisfies a predetermined condition.
A job execution step of sequentially executing the jobs registered in the job list,
The job list update step includes:
A job index in which data identifiers of data corresponding to jobs registered in the job list are sorted and registered according to a predetermined standard, and a current index in which data identifiers of data stored in the storage area are sorted and registered in accordance with the standard And steps to create and
If each data identifier registered in the job index has a data identifier that matches the data identifier last registered in the current index in the job index, the job from the first data identifier to at least the matching data identifier For each time the target data identifier is selected sequentially in the order registered in the index and the target data identifier is selected, among the data identifiers registered in the current index, the data identifier that matches the target data identifier in the previous time Is present, the data identifier registered in the current index after the data identifier that matches the data identifier of interest in the latest round preceding this time, and in other cases, each data identifier registered in the current index A little In both cases, when there is a data identifier that matches the current data identifier of interest, up to the matching data identifier, and in other cases up to the last data identifier, the verification data is sequentially registered in the order of registration in the current index. The current target data identifier and the verification data identifier are compared with each other, and when the target data identifier matches the verification data identifier, each data set as other current verification data identifiers excluding the matching verification data identifier A job for processing the data of the identifier is added to the job list, and if there is no verification data identifier matching the target data identifier, the job of the data with the data identifier as the target data identifier is deleted from the job list A job processing method characterized by comprising steps That.
[0008]
According to such a job processing method, as will be described in detail in the following embodiment, in order to check whether a file corresponding to a job has been deleted from the storage area, Each file identifier of the file corresponding to the registered job is compared with each file identifier of the file stored in the storage area, or a file for generating a new job is not added to the storage area In order to check whether or not each file identifier of the file stored in the storage area is compared with each of the file identifiers of the file corresponding to each job registered in the job list, the number of comparisons is smaller. The file identification of the job corresponding to the file deleted from the storage area. It is possible to calculate the file identifier of the newly added file to the child or the storage area.
[0009]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described.
FIG. 1 shows a configuration of a computer system according to the present embodiment.
As shown in the figure, this computer system is a system in which a computer 1 and a printer 2 are connected. On the computer 1, an operating system 11 incorporating a printer driver 111 for controlling the printing operation of the printer 2 and a plurality of applications. 12-14 are operating.
[0010]
Of these applications, the application 12 is a print processing server that performs print processing of a document file, and includes a job execution control unit 121 and a job monitoring unit 122. Another application is, for example, an application that edits and generates a document file.
[0011]
Here, in terms of hardware, the computer 1 has a general configuration including a CPU, an external storage device such as a main memory and a hard disk device, an input device such as a keyboard and a pointing device, and a display device. A computer 1 having In this case, the above-described units of the computer 1 are realized as being embodied in the computer by the CPU executing a program loaded in the main memory. The functions of the computer 1 may be distributed on the network.
[0012]
Hereinafter, the operation of the print processing server 12 in such a computer system will be described.
As shown in FIG. 2, the print processing server 12 prints a document file stored in a hot folder which is a kind of directory managed by the file system of the operating system 11.
This printing operation is roughly divided into a job list registration job update according to the document file storage state of the hot folder and a job list registration job performed by the job execution control unit 121, which are periodically performed by the job monitoring unit 122. It consists of sequential execution.
[0013]
Here, each job registered in the job list by the job monitoring unit 122 requests printing of one document file in the hot folder. What is the execution of the job list registration job by the job execution control unit 121? The printing of the document file requested by the job by the printer 2 is controlled via the operating system 11 and the printer driver 111.
[0014]
In the job list, a set of a file name (Filename) of a document file requested by the job and a date (Date) when the job is registered in the job list is registered as information of each job. On the other hand, the job monitoring unit 122 updates such a registered job in the job list using two variable tables called a registered file index and a current file index. The registered file index can have a plurality of entries in which a set of a file name (Filename) and a deletion flag (delete) is described, and a current file index has a set of a file name (Filename) and a new flag (new). There can be multiple entries to be described.
[0015]
Hereinafter, the operation of the job monitoring unit 122 will be described.
FIG. 3 shows a procedure of job list update processing performed by the job monitoring unit 122.
As shown in the figure, when the job monitoring unit 122 is activated, it first generates a registered file index (step 302). That is, the file names stored in the job list are sorted using the file names as sort keys, and each file name is created and registered in the registered file index according to the order after sorting. . For example, the file names are sorted by a technique such as arranging the file names in alphabetical order or character code order. However, such a sort key may be any key as long as it can uniquely order file names according to a certain rule. Here, all the deletion flags of the entries of the file names registered in the registered file index are turned off.
[0016]
Next, the job monitoring unit 122 creates a current file index (step 304). That is, the file names stored in the hot folder are obtained via the operating system 11, the obtained file names are sorted using the file names as sort keys, and each file name is sorted in accordance with the sorted order in the current file file index. Create and register an entry that describes the file name. File names are sorted according to the same rules as those for the registered file index. Here, all the new flags of the entries of the file names registered in the current file index are turned off.
[0017]
Next, MAXj is the number of file names registered in the registered file index, and MAXc is the number of file names registered in the current file index (step 306). Then, the target registration file number j is initialized to 1, the comparison file number c is initialized to 1, and the number of comparisons t is initialized to 0 (step 308).
[0018]
Then, a comparison is made between the j-th file name of the registered file index and the c-th file name of the current file index (step 310), whether they match (step 312), or the last ( Until the comparison with the (MAXc-th) file name is completed (step 332), the comparison file number c and the number of comparisons t are incremented by 1 (step 340).
[0019]
Then, if the comparison with the last (MAXc-th) file name of the current file index is completed without matching the two (step 332), the deletion flag for the entry of the j-th file name in the registered file index is set. Set to ON (step 334). Then, it is checked whether or not the target registered file number j matches the file name number MAXj of the registered file index (step 336). Otherwise, the target registered file number j is incremented by 1 and the comparison file number c is set to C. -T, t is set to 0 (step 342), and the process returns to step 310 to process the next file name registered in the registered file index.
[0020]
On the other hand, when the registered file number of interest j matches the number of file names MAXj of the registered file index (step 336), the new flag is turned on for the file name entries from Ct to MAXc of the current file index. (Step 338), and the process proceeds to step 324.
[0021]
In step 312, if the j-th file name in the registered file index matches the c-th file name in the current file index, the following processing is performed.
That is, it is checked whether or not the number of comparisons t is 0 (step 314). If it is not 0, the new flags of the file name entries from the ctth to the c-1th of the current file index are set to ON (step 316), the process proceeds to step 318. On the other hand, if the comparison count t is 0, the process proceeds to step 318 as it is.
[0022]
In step 318, it is checked whether or not the comparison file number c matches MAXc. If they match, the deletion flag of the entry of the file name from j + 1 to MAXj in the registered file index is set to ON (step 344). Proceed to 324. On the other hand, if the comparison file number c does not match MAXc (step 318), it is further checked whether or not the registered file number of interest j matches MAXj (step 320). If they match, c + 1 of the current file index. The new flag of the entry of the file name from the file number to the file number MAXc is set to ON (step 322), and the process proceeds to step 324. If the target registration file number j does not match MAXj in step 320, the target registration file number j and the comparison file number c are incremented by 1, t is set to 0 (step 346), and the process returns to step 310. The file name registered next in the registered file index is processed.
[0023]
In step 324, an entry having a file name that matches the file name of the entry whose registered file index deletion flag is set to ON is deleted from the job list. In step 326, the file names of the entries for which the new flag of the current file index is set to ON are sequentially created and added to the job list, and the current date and time are set to the date and time of each entry.
[0024]
Then, a timer is set (step 328), and if the timer times out (step 330), the above processing is performed again. That is, the processing from step 302 to step 326 is periodically performed.
Here, how the contents of the job list are updated according to the storage state of the document file in the hot folder by the above processing will be described by way of an example.
As shown in FIG. 4a, at step 302, entries of E, F, and J file names are created in that order in the registered file index based on the contents of the job list at that time, and at step 304, at that time Take as an example a case where entries of file names A to E and G to K are created in the current file index in the order based on the document file stored in the hot folder.
[0025]
That is, in this example, the document file F is deleted from the hot folder after the previous job list update, and the document files A to D, G to I, and K are changed to the hot folder after the previous job list update. It is about the case where it is added.
[0026]
In this case, first, the first file name E of the registered file index is selected as a file name of j = 1, and in step 310, the current file index is registered in the order of registration from the top of the current file index (c = 1) (step 340). It is compared with the file name registered in.
[0027]
When c = 5 and t = 4, the first file name E in the registered file index matches the fifth file name E in the current file index (step 312). The new flag of the entries from the entry of the file index ct = 5-4 = first file name A to c-1 = 5-1 = fourth file name D is set on.
[0028]
In other words, in the above processing, all the file names registered in the current file index before the file name that matches the first file name registered in the registered file index are newly stored in the hot folder. Set the new flag to ON.
[0029]
The number of comparisons t represents the number of comparisons performed for the j-th file name in the registered file index when the file names did not match. The comparison file number c represents the order in the current file index of the file name to be compared with the jth file name of the registered file index.
[0030]
Next, in step 346, j is incremented by 1, 2 is incremented by 1, c is incremented by 6, t = 0, and the second file name F of the registered file index is selected as the file name of j = 2. From the c (= 6) th file name G of the current file index, the file names are compared with the file names registered in the current file index in the order of registration (step 340). Here, the reason why c and j are incremented by 1 is to determine whether or not the document files corresponding to the j-th file name from the beginning of the registered file index have been deleted from the hot folder for c and j before the increase. It has already been determined that the document file corresponding to the c-th file name from the beginning of the current file index has been newly added to the hot folder. In subsequent processing, these determined file names are processed. This is because it is excluded from the target.
[0031]
Now, when j = 2, the document file with the file name F registered in the registered file index has already been deleted from the hot folder, so the comparison in step 346 does not match and MAXc (= 10 of the current file index). The comparison with the file name K) ends. At this time, the number of comparisons indicating the number of comparisons in which the file names did not match is t = 4. Then, according to the determination in step 332, the process branches to step 334, and the deletion flag of the entry of the j (= 2) -th file name F in the registered file index is set to ON.
[0032]
That is, among the file names registered in the registered file index, file names that do not have a matching file name even when compared to the last file name registered in the current file index are the corresponding documents deleted from the hot folder. Since it is for a file, set the delete flag to on.
[0033]
In step 342, j is incremented by 1, 3 is set, c is set to ct = 10-4 = 5, 6 is set to t = 0, and the third file name J of the registered file index is j = And is compared with the file names registered in the current file index in the order of registration (step 340) from the c (= 6) th file name G of the current file index.
[0034]
Here, unlike the previous case, c is set to c−t because the file name that matches the j-th file name of the registered file index is not registered in the current file index for j and c before the update. Since it was not possible to determine whether the file from the ct th file name to the c th file name that started comparison with the j th file name in the registered file index is a document file added to the new hot folder. It is.
[0035]
Now, the third file name J of the registered file index matches the file name J registered ninth in the current file index when c = 9 and t = 3. Therefore, in step 316, the new flag is turned on for the entries from ct = 9-3 = 6th file name G to c-1 = 9-1 = 8th file name I in the current file index. Is set.
[0036]
That is, out of the file names registered in the current file index, the j-th file from the file name that started comparison with the j-th file name registered in the registered file index among the file names in the current file index Since all the file names up to the file name before the file name matching the file name are those of the document folder newly stored in the hot folder, the new flag is set to ON.
[0037]
Next, since j = MAXj = 3 at this time, the process branches to step 322 by step 320, and c + 1 = 10th file name K entry to MAXc = 10th file name K of the current file index. The new flags of the entries up to the previous entry are set on, and the process proceeds to step 324. That is, among the file names in the current file index, the file names after the file name that matches the last file name of the registered file are all from the document folder newly stored in the hot folder, so the new flag Set to on.
[0038]
At this point, the deletion flag of the entry of the file name F of the registered file index is set to ON by the above processing, and the new flags of the entries of the file names A to D, G to I, and K of the current file index are turned on. Is set to
[0039]
Therefore, in step 324, the job with the file name F in the job list is deleted, and in step 326, the jobs with the file names A to D, G to I, and K are added to the job list.
Next, FIG. 4B shows another processing example.
In this example, at step 302, entries of E, H, J, and L file names are created in that order in the registered file index based on the contents of the job list at that time, and at step 304, the hot folder at that time is created. A case will be described as an example in which entries with file names A to E, G, and H are created in the current file index in the order based on the stored document file.
[0040]
That is, in this example, the document files J and L are deleted from the hot folder after the previous job list update, and the document files A to D and G are added to the hot folder after the previous job list update. It is about the case.
[0041]
In this case, as in the case of the example of FIG. 4a, first, the first file name E of the registered file index is selected as the file name of j = 1, and in step 310, from the beginning (c = 1) of the current file index. In order of registration (step 340), the file names registered in the current file index are compared.
[0042]
When c = 5 and t = 4, the first file name E in the registered file index matches the fifth file name E in the current file index (step 312). The new flag of the entries from the entry of the file index ct = 5-4 = first file name A to c-1 = 5-1 = fourth file name D is set on.
[0043]
Next, in step 346, j is incremented by 1, 2 is incremented by 1, c is incremented by 6, t = 0, and the second file name H of the registered file index is selected as the file name of j = 2. From the c (= 6) th file name G of the current file index, the file names are compared with the file names registered in the current file index in the order of registration (step 340).
[0044]
When c = 7 and t = 1, the file name H registered seventh in the current file index is matched. Therefore, in step 316, the new flag is turned on for the entries from ct = 7-1 = sixth file name G to c-1 = 7-1 = sixth file name G of the current file index. Is set.
[0045]
Next, since c = MAXc = 7 at this time, the process branches to step 344 in step 318, where j + 1 = the third file name J of the registered file index to MAXj = the fourth file name L. The deletion flag for entries up to the entry is set to ON, and the process proceeds to step 324.
[0046]
That is, among the file names registered in the registered file index, the file names registered after the file name that matches the last file name in the current file index are all those of the document file deleted from the hot folder. , Set the delete flag on.
[0047]
At this point, the deletion flag for the entry with the file names J and L in the registered file index is set to ON by the above processing, and the new flag for the entries with file names A to D and G in the current file index is set to ON. Has been. Therefore, in step 324, jobs with file names J and L in the job list are deleted, and in steps 326, jobs with file names A to D and G are added to the job list.
Next, FIG. 4c shows another processing example.
That is, in this example, the document file H is deleted from the hot folder after the previous job list update, and the document files A to D, G, J, and K are changed to the hot folder after the previous job list update. It is about the case where it is added.
[0048]
In this case, as in the case of the example of FIG. 4a, first, the first file name E of the registered file index is selected as the file name of j = 1, and in step 310, from the beginning (c = 1) of the current file index. In order of registration (step 340), the file names registered in the current file index are compared.
[0049]
When c = 5 and t = 4, the first file name E in the registered file index matches the fifth file name E in the current file index (step 312). The new flag of the entries from the entry of the file index ct = 5-4 = first file name A to c-1 = 5-1 = fourth file name D is set on.
[0050]
In step 346, j is incremented by 1, 2 is incremented by 1, c is incremented by 6, t = 0, and the second file name H of the registered file index is selected as the file name of j = 2. Then, the c (= 6) th file name G of the current file index is compared with the file names registered in the current file index in the order of registration (step 340).
[0051]
Since the document file with the file name H registered in the registered file index has already been deleted from the hot folder this time, the comparison in step 346 does not match, and the MAXc (= 8) th file in the current file index does not match. The comparison with name K ends. At this time, the number of comparisons indicating the number of comparisons in which the file names did not match is t = 2. Then, according to the determination in step 332, the process branches to step 334, and the deletion flag of the entry of the j (= 2) -th file name H in the registered file index is set to ON. In this case, since j = MAXj = 2, the process branches to step 338 according to the determination in step 336, and the current file ct = 8-2 = from the entry of the sixth file name G MAXc = the new flag of each entry up to the eighth file name K entry is set to ON, and the process proceeds to step 324.
[0052]
That is, if the last file name registered in the registered file index does not match the last file name in the current file index, the last file name registered in the registered file index among the file names in the current file index. Since all the file names after the file name for which the comparison with the file name is started are those of the document file newly stored in the hot folder, a new flag is set.
[0053]
At this point, the deletion flag of the entry with the file name H of the registered file index is set to ON by the above processing, and the new flags of the entries with the file names A to D and G to K of the current file index are set to ON. Has been. Therefore, in step 324, the job with the file name H in the job list is deleted, and in step 326, the jobs with the file names A to D and G to K are added to the job list.
The operation of the job monitoring unit 122 has been described above.
Next, the operation of the job execution control unit 121 will be described.
When the process is started, the job execution control unit 121 performs the job execution process shown in FIG.
In this job execution process, as shown in the figure, it is monitored whether or not a job is registered in the job list (step 502). If a job is registered, the first job in the job list is extracted, and the entry of the extracted job is entered. Is read from the hot folder (step 504), and printing of the document folder on the printer 2 is controlled via the operating system 11 / printer driver 111 (step 506).
[0054]
If printing is normally completed (step 508), the job for which printing has been completed is deleted from the job list (step 510), the operating system 11 is requested, and the printed document file is prepared in advance from the hot folder. Move to the processed folder (step 512).
[0055]
The embodiment of the present invention has been described above.
By the way, in the above description, the document file is processed as a job, and the job is described as a document file print job. However, the job list update process is performed on data that can be sorted by an arbitrary key. As described above, the present invention can be similarly applied to a job for performing arbitrary processing. For example, the present invention can be similarly applied to mail data stored in a mail folder as an object and to update a job list of a mail transmission job or other jobs. Further, the data to be processed by the job does not necessarily have to be stored in one folder, and the data selected under an arbitrary condition may be the target of the job processing.
[0056]
【The invention's effect】
As described above, according to the present invention, it is possible to improve the efficiency of job registration processing that is performed based on the presence of data that is the subject of a job.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a computer system according to an embodiment of the present invention.
FIG. 2 is a diagram showing a relationship between a print processing server 12 and a hot folder according to the embodiment of the present invention.
FIG. 3 is a flowchart illustrating a procedure of job list update processing according to the embodiment of the present invention.
FIG. 4 is a diagram showing a specific example of job list update processing according to the embodiment of the present invention.
FIG. 5 is a flowchart illustrating a procedure of job execution processing according to the embodiment of the present invention.
[Explanation of symbols]
1: computer, 2: printer, 11: operating system, 12: print processing server, 13-14: application, 111: printer driver, 121: job execution control unit, 122: job monitoring unit.

Claims (6)

所定の記憶領域に格納された各ファイルを処理するためのジョブが登録されたジョブリストを記憶する記憶手段と、
間欠的に、前記記憶領域に格納されている各ファイルについてのみ、当該ファイルを処理するジョブが前記ジョブリストに登録されるように当該ジョブリストを更新するジョブリスト更新手段と、
前記ジョブリストに登録されたジョブを順次実行するジョブ実行手段とを有し、
前記ジョブリスト更新手段は、
ジョブリストに登録されたジョブに対応するファイルのファイル識別子を所定の基準に従ってソートして登録したジョブインデックスと、前記記憶領域に格納されたファイルのファイル識別子を前記基準に従ってソートして登録したカレントインデックスとを作成するソート手段と、
ジョブインデックスに登録されたファイル識別子を、ジョブインデックスにカレントインデックスに最後に登録されているファイル識別子と一致するファイル識別子が存在する場合には先頭のファイル識別子から少なくとも前記一致するファイル識別子まで、ジョブインデックスに登録された順番に、順次着目ファイル識別子として選択し、着目ファイル識別子を選択した各回について、カレントインデックスに登録されたファイル識別子のうち、今回に先行する回において着目ファイル識別子と一致したファイル識別子が存在する場合には今回に先行する直近の回において着目ファイル識別子と一致したファイル識別子より後にカレントインデックスに登録されている各ファイル識別子を、他の場合にはカレントインデックスに登録されている各ファイル識別子を、少なくとも、今回の着目ファイル識別子と一致するファイル識別子がカレントインデックスの存在する場合には当該一致するファイル識別子まで、他の場合には最後のファイル識別子まで、カレントインデックスに登録された順番に順次検証ファイル識別子としながら、今回の着目ファイル識別子と各検証ファイル識別子とを比較し、当該着目ファイル識別子と検証ファイル識別子が一致した場合に、当該一致した検証ファイル識別子を除く他の今回検証ファイル識別子とした各ファイル識別子のファイルを処理するジョブをジョブリストに追加し、当該着目ファイル識別子と一致する検証ファイル識別子が存在しなかった場合に、当該着目ファイル識別子としたファイル識別子のファイルのジョブをジョブリストから削除するジョブ登録処理手段を有することを特徴とするジョブ処理装置。
Storage means for storing a job list in which jobs for processing each file stored in a predetermined storage area are registered;
Intermittently, only for each file stored in the storage area, job list update means for updating the job list so that a job for processing the file is registered in the job list;
Job execution means for sequentially executing jobs registered in the job list,
The job list update means includes:
Job index in which file identifiers of files corresponding to jobs registered in the job list are sorted and registered according to a predetermined standard, and current index in which file identifiers of files stored in the storage area are sorted and registered according to the standard Sorting means to create and
If the file identifier registered in the job index has a file identifier that matches the file identifier last registered in the current index in the job index, the job index from the first file identifier to at least the matching file identifier For each time the target file identifier is selected, the file identifier that matches the target file identifier in the previous time is selected among the file identifiers registered in the current index. If it exists, each file identifier registered in the current index after the file identifier that matched the file identifier of interest in the latest round preceding this time is registered in the current index in other cases. Each file identifier is registered in the current index until at least the file identifier that matches the current file identifier of the current index exists in the current index, and until the last file identifier in other cases. The current file identifier and each verification file identifier are compared with the verification file identifier in order, and if the target file identifier matches the verification file identifier, the other current file except the verification file identifier that matches. When a job for processing a file with each file identifier as a verification file identifier is added to the job list, and there is no verification file identifier that matches the target file identifier, the file with the file identifier as the target file identifier Job to job list Job processing apparatus characterized by having a job registration processing means for deleting et.
請求項1記載のジョブ処理装置であって、
前記ジョブ登録処理手段は、
ジョブインデックスに最後に登録されたファイル識別子を着目ファイル識別子として選択した回について、当該着目ファイル識別子と検証ファイル識別子が一致し、かつ、当該一致した検証ファイル識別子としたファイル識別子より後にカレントインデックスに登録されているファイル識別子が存在する場合には、当該存在するファイル識別子のファイルを処理するジョブをジョブリストに追加し、当該着目ファイル識別子と一致する検証ファイル識別子が存在しなかった場合に、当該着目ファイル識別子としたファイル識別子のファイルのジョブをジョブリストから削除し、今回検証ファイル識別子とした各ファイル識別子のファイルを処理するジョブをジョブリストに追加することを特徴とするジョブ処理装置。
The job processing apparatus according to claim 1, wherein
The job registration processing means
When the file identifier last registered in the job index is selected as the target file identifier, the target file identifier matches the verification file identifier and is registered in the current index after the file identifier used as the matching verification file identifier If there is a file identifier that has been registered, a job for processing the file with the existing file identifier is added to the job list, and if there is no verification file identifier that matches the target file identifier, A job processing apparatus, wherein a job of a file with a file identifier as a file identifier is deleted from the job list, and a job for processing a file with each file identifier as a verification file identifier is added to the job list.
請求項1または2記載のジョブ処理装置であって、
前記ジョブ登録処理手段は、
カレントインデックスに最後に登録されたファイル識別子である検証ファイル識別子が着目ファイル識別子と一致し、当該着目ファイル識別子として選択されたファイル識別子より後にジョブインデックスに登録されたファイル識別子が存在する場合には、当該存在するファイル識別子のファイルを処理するジョブをジョブリストから削除し、当該着目ファイル識別子として選択されたファイル識別子より後にジョブインデックスに登録されたファイル識別子を着目ファイル識別子として選択しないことを特徴とするジョブ処理装置。
The job processing apparatus according to claim 1, wherein:
The job registration processing means
When the verification file identifier which is the file identifier last registered in the current index matches the target file identifier, and there is a file identifier registered in the job index after the file identifier selected as the target file identifier, A job for processing a file with the existing file identifier is deleted from the job list, and a file identifier registered in the job index after the file identifier selected as the target file identifier is not selected as the target file identifier Job processing unit.
請求項1、2または3記載のジョブ処理装置であって、
前記記憶領域はフォルダであって、前記ファイル識別子はファイル名であって、前記ジョブは前記ファイルの処理としてファイルを印刷処理を行うものであることを特徴とするジョブ処理装置。
The job processing apparatus according to claim 1, 2, or 3,
The job processing apparatus according to claim 1, wherein the storage area is a folder, the file identifier is a file name, and the job prints a file as processing of the file.
コンピュータシステムにおいてジョブリストにジョブを登録し、前記ジョブリストに登録されたジョブを実行するジョブ処理方法であって、
間欠的に、所定の条件を満たす各データについてのみ、当該データを処理するジョブがジョブリストに登録されるように当該ジョブリストを更新するジョブリスト更新ステップと、
前記ジョブリストに登録されたジョブを順次実行するジョブ実行ステップとを有し、
前記ジョブリスト更新ステップは、
ジョブリストに登録されたジョブに対応するデータのデータ識別子を所定の基準に従ってソートして登録したジョブインデックスと、前記記憶領域に格納されたデータのデータ識別子を前記基準に従ってソートして登録したカレントインデックスとを作成するステップと、
ジョブインデックスに登録された各データ識別子を、ジョブインデックスにカレントインデックスに最後に登録されているデータ識別子と一致するデータ識別子が存在する場合には先頭のデータ識別子から少なくとも前記一致するデータ識別子まで、ジョブインデックスに登録された順番に、順次着目データ識別子として選択し、着目データ識別子を選択した各回について、カレントインデックスに登録されたデータ識別子のうち、今回に先行する回において着目データ識別子と一致したデータ識別子が存在する場合には今回に先行する直近の回において着目データ識別子と一致したデータ識別子より後にカレントインデックスに登録されているデータ識別子を、他の場合にはカレントインデックスに登録されている各データ識別子を、少なくとも、今回の着目データ識別子と一致するデータ識別子がカレントインデックスの存在する場合には当該一致するデータ識別子まで、他の場合には最後のデータ識別子まで、カレントインデックスに登録された順番に順次検証データ識別子としながら、今回の着目データ識別子と検証データ識別子とを比較し、当該着目データ識別子と検証データ識別子が一致した場合に、当該一致した検証データ識別子を除く他の今回検証データ識別子とした各データ識別子のデータを処理するジョブをジョブリストに追加し、当該着目データ識別子と一致する検証データ識別子が存在しなかった場合に、当該着目データ識別子としたデータ識別子のデータのジョブをジョブリストから削除するステップとを有することを特徴とするジョブ処理方法。
A job processing method for registering a job in a job list in a computer system and executing the job registered in the job list,
A job list update step that updates the job list so that a job that processes the data is intermittently registered in the job list only for each data that satisfies a predetermined condition.
A job execution step of sequentially executing the jobs registered in the job list,
The job list update step includes:
A job index in which data identifiers of data corresponding to jobs registered in the job list are sorted and registered according to a predetermined standard, and a current index in which data identifiers of data stored in the storage area are sorted and registered in accordance with the standard And steps to create and
If each data identifier registered in the job index has a data identifier that matches the data identifier last registered in the current index in the job index, the job from the first data identifier to at least the matching data identifier For each time the target data identifier is selected sequentially in the order registered in the index and the target data identifier is selected, among the data identifiers registered in the current index, the data identifier that matches the target data identifier in the previous time Is present, the data identifier registered in the current index after the data identifier that matches the data identifier of interest in the latest round preceding this time, and in other cases, each data identifier registered in the current index A little In both cases, when there is a data identifier that matches the current data identifier of interest, up to the matching data identifier, and in other cases up to the last data identifier, the verification data is sequentially registered in the order of registration in the current index. The current target data identifier and the verification data identifier are compared with each other, and when the target data identifier matches the verification data identifier, each data set as other current verification data identifiers excluding the matching verification data identifier A job for processing the data of the identifier is added to the job list, and if there is no verification data identifier matching the target data identifier, the job of the data with the data identifier as the target data identifier is deleted from the job list A job processing method.
コンピュータによって読み取られ実行されるコンピュータプログラムであって、
前記コンピュータプログラムは、前記コンピュータに
間欠的に、前記コンピュータ上の所定の条件を満たす各データについてのみ、当該データを処理するジョブがジョブリストに登録されるように当該ジョブリストを更新するジョブリスト更新ステップと、
前記ジョブリストに登録されたジョブを順次実行するジョブ実行ステップとを実行させ、
前記ジョブリスト更新ステップは、
ジョブリストに登録されたジョブに対応するデータのデータ識別子を所定の基準に従ってソートして登録したジョブインデックスと、前記記憶領域に格納されたデータのデータ識別子を前記基準に従ってソートして登録したカレントインデックスとを作成するステップと、
ジョブインデックスに登録された各データ識別子を、ジョブインデックスにカレントインデックスに最後に登録されているデータ識別子と一致するデータ識別子が存在する場合には先頭のデータ識別子から少なくとも前記一致するデータ識別子まで、ジョブインデックスに登録された順番に、順次着目データ識別子として選択し、着目データ識別子を選択した各回について、カレントインデックスに登録されたデータ識別子のうち、今回に先行する回において着目データ識別子と一致したデータ識別子が存在する場合には今回に先行する直近の回において着目データ識別子と一致したデータ識別子より後にカレントインデックスに登録されているデータ識別子を、他の場合にはカレントインデックスに登録されている各データ識別子を、少なくとも、今回の着目データ識別子と一致するデータ識別子がカレントインデックスの存在する場合には当該一致するデータ識別子まで、他の場合には最後のデータ識別子まで、カレントインデックスに登録された順番に順次検証データ識別子としながら、今回の着目データ識別子と各検証データ識別子とを比較し、当該着目データ識別子と検証データ識別子が一致した場合に、当該一致した検証データ識別子を除く他の今回検証データ識別子とした各データ識別子のデータを処理するジョブをジョブリストに追加し、当該着目データ識別子と一致する検証データ識別子が存在しなかった場合に、当該着目データ識別子としたデータ識別子のデータのジョブをジョブリストから削除するステップとを有することを特徴とするコンピュータプログラム。
A computer program that is read and executed by a computer,
The computer program updates the job list so that a job for processing the data is registered in the job list only for each piece of data satisfying a predetermined condition on the computer intermittently with the computer. Steps,
A job execution step of sequentially executing the jobs registered in the job list,
The job list update step includes:
A job index in which data identifiers of data corresponding to jobs registered in the job list are sorted and registered according to a predetermined standard, and a current index in which data identifiers of data stored in the storage area are sorted and registered in accordance with the standard And steps to create and
If each data identifier registered in the job index has a data identifier that matches the data identifier last registered in the current index in the job index, the job from the first data identifier to at least the matching data identifier For each time the target data identifier is selected sequentially in the order registered in the index and the target data identifier is selected, among the data identifiers registered in the current index, the data identifier that matches the target data identifier in the previous time Is present, the data identifier registered in the current index after the data identifier that matches the data identifier of interest in the latest round preceding this time, and in other cases, each data identifier registered in the current index A little In both cases, when there is a data identifier that matches the current data identifier of interest, up to the matching data identifier, and in other cases up to the last data identifier, the verification data is sequentially registered in the order of registration in the current index. While comparing the target data identifier of this time with each verification data identifier while using the identifier, and when the target data identifier matches the verification data identifier, each of the current verification data identifiers other than the matching verification data identifier A job that processes data with the data identifier is added to the job list, and if there is no verification data identifier that matches the data identifier of interest, the job with the data identifier with the data identifier of interest is deleted from the job list A computer program comprising the steps of: Beam.
JP2002120249A 2002-04-23 2002-04-23 Job processing device Expired - Fee Related JP4065715B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002120249A JP4065715B2 (en) 2002-04-23 2002-04-23 Job processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002120249A JP4065715B2 (en) 2002-04-23 2002-04-23 Job processing device

Publications (2)

Publication Number Publication Date
JP2003316560A JP2003316560A (en) 2003-11-07
JP4065715B2 true JP4065715B2 (en) 2008-03-26

Family

ID=29536525

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002120249A Expired - Fee Related JP4065715B2 (en) 2002-04-23 2002-04-23 Job processing device

Country Status (1)

Country Link
JP (1) JP4065715B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9787867B2 (en) 2003-07-29 2017-10-10 Ricoh Company, Ltd. Information processing system, method and recording medium

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006344172A (en) 2005-06-10 2006-12-21 Canon Inc Image formation control method and document printing method and program
JP5875217B2 (en) * 2010-05-25 2016-03-02 キヤノン株式会社 Information processing apparatus, control method therefor, program, and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9787867B2 (en) 2003-07-29 2017-10-10 Ricoh Company, Ltd. Information processing system, method and recording medium
US10148846B2 (en) 2003-07-29 2018-12-04 Ricoh Company, Ltd. Information processing system, method and recoding medium

Also Published As

Publication number Publication date
JP2003316560A (en) 2003-11-07

Similar Documents

Publication Publication Date Title
JP4376933B2 (en) Print management system, print management method, and program
JP5652220B2 (en) File management apparatus and program
JP2001344276A (en) Document search method and apparatus, and recording medium on which processing program is recorded
JP5512027B2 (en) Apparatus, system, method and program
US20100146056A1 (en) Searching An Email System Dumpster
US8370384B2 (en) Information processing apparatus, file management method, program, and storage medium
US9286306B2 (en) Document image management device and document image management method
CN102541963A (en) Method and device for inquiring character identification
JP4065715B2 (en) Job processing device
US10262026B2 (en) Relational file database and graphic interface for managing such a database
US8438133B2 (en) Information processing apparatus, file management system, information processing method and computer readable medium
US8874861B2 (en) System and method of copying electronic document and change history information
JP4110154B2 (en) Information processing apparatus, information processing apparatus control method, computer program, and storage medium
US9092431B2 (en) Document management system and document management method for determining whether at least one managed document was printed and updating print information of the at least one managed document based on the determination
JP2008262449A (en) Document management device and document processing program
US20020120612A1 (en) Document management system, document management method, and computer-readable storage medium including the same
JP3578092B2 (en) Document search method and system, document search program, and storage medium storing document search program
JP2001306286A (en) Print job management system and method on network
JP3984208B2 (en) Search server and search program
JP2009093581A (en) Control system for synonym search
JP4199916B2 (en) Document management method and apparatus
JP5783010B2 (en) Index management program, index management device, and search system
JP2001216319A (en) Document management method, device for executing the method, and recording medium recording the processing program
CN114201456A (en) Information processing system, information processing method, and computer-readable medium
JPH07271569A (en) Program specification preparation system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071128

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20071218

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080107

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4065715

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110111

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120111

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130111

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees