(57)【特許請求の範囲】
【請求項１】
複数の文書を確定するプリントジョブを受信し、前記プリントジョブをプロセッサに送信するように構成されたインターフェースと、
プロセッサとメモリとにより実装され、プリントジョブの文書に対して実行する所定のアクティビティセットを含むワークフローに従って、プリントショップのデバイスに命令するように構成された、コントローラとを有し、
前記コントローラは、前記文書が前記ワークフロー中にある間に前記プリントジョブの文書の削除イベントを検出し、前記ワークフロー中に確定されたストアステップに前記文書を進め、前記ストアステップの構成可能パラメータに基づいて前記文書のために記録する文書プロパティを特定して、前記文書プロパティの値を履歴ファイルに記録するように構成され、
前記コントローラは、前記ストアステップの構成可能パラメータから別のワークフローを特定し、前記削除イベントに応じて前記別のワークフローにおいて前記文書を処理するように構成される、装置。
【請求項２】
前記コントローラは、前記ストアステップの構成可能パラメータから前記ワークフロー中の再開始点を特定し、前記再開始点に従って前記ワークフローにおける前記文書の処理を開始するように構成される、
請求項１に記載の装置。
【請求項３】
前記コントローラは、前記文書が前記ストアステップにより成功裏に処理されるまで、前記ワークフローからの前記文書の削除を防止するように構成される、
請求項１に記載の装置。
【請求項４】
前記コントローラは、前記ストアステップの構成可能パラメータ中のコンタクト情報を特定し、前記コンタクト情報に基づいて前記削除イベントのユーザに通知するように構成される、請求項１に記載の装置。
【請求項５】
前記コントローラは、前記削除イベントに応じて前記文書を前記ストアステップに自動的に移動させるように構成される、請求項１に記載の装置。
【請求項６】
前記削除イベントに応じて前記文書のために記録する文書プロパティは、前記削除イベントが生じた時間、前記削除イベントの時の前記ワークフロー中のその時のアクティビティ、及び前記削除イベントの前に前記文書を最後に見たユーザのうちの１つを含む、請求項１に記載の装置。
【請求項７】
プロセッサを有するサーバにおける方法であって、
前記プロセッサが、インターフェースが受信し前記プロセッサに送信した、複数の文書を確定するプリントジョブを受信するステップと、
前記プロセッサが、前記文書に対して実行する所定のアクティビティのセットを含むワークフローにより、プリントショップのデバイスに命令するステップと、
前記プロセッサが、前記文書がワークフロー中にある間に前記プリントジョブの文書の削除イベントを検出するステップと、
前記プロセッサが、前記ワークフロー中に確定されたストアステップに前記文書を進めるステップと、
前記プロセッサが、前記ストアステップの構成可能パラメータに基づいて、前記文書のために記録する文書プロパティを特定するステップと、
前記プロセッサが、前記文書プロパティの値を履歴ファイルに記録するステップと、
前記プロセッサが、前記ストアステップの構成可能パラメータから別のワークフローを特定するステップと、
前記プロセッサが、前記削除イベントに応じて前記別のワークフローにおいて前記文書を処理するステップとを含む、
方法。
【請求項８】
前記プロセッサが、前記ストアステップの構成可能パラメータから前記ワークフロー中の再開始点を特定するステップと、
前記プロセッサが、前記再開始点により前記ワークフローにおいて前記文書の処理を開始するステップとをさらに含む、
請求項７に記載の方法。
【請求項９】
前記プロセッサが、前記文書が前記ストアステップにより成功裏に処理されるまで、前記ワークフローからの前記文書の削除を防止するステップをさらに含む、請求項７に記載の方法。
【請求項１０】
前記プロセッサが、前記ストアステップの構成可能パラメータ中のコンタクト情報を特定するステップと、
前記プロセッサが、前記コンタクト情報に基づき前記削除イベントについてユーザに通知するステップとをさらに含む、
請求項７に記載の方法。
【請求項１１】
前記プロセッサが、前記削除イベントに応じて前記ストアステップに前記文書を自動的に移動させるステップをさらに含む、
請求項７に記載の方法。
【請求項１２】
前記削除イベントに応じて前記文書のために記録する文書プロパティは、前記削除イベントが生じた時間、前記削除イベントの時の前記ワークフロー中のその時のアクティビティ、及び前記削除イベントの前に前記文書を最後に見たユーザのうちの１つを含む、
請求項７に記載の方法。
【請求項１３】
プロセッサに、
インターフェースが受信し前記プロセッサに送信した、複数の文書を確定するプリントジョブを受信するステップと、
前記文書に対して実行する所定のアクティビティのセットを含むワークフローにより、プリントショップのデバイスに命令するステップと、
前記文書がワークフロー中にある間に前記プリントジョブの文書の削除イベントを検出するステップと、
前記ワークフロー中に確定されたストアステップに前記文書を進めるステップと、
前記ストアステップの構成可能パラメータに基づいて、前記文書のために記録する文書プロパティを特定するステップと、
前記文書プロパティの値を履歴ファイルに記録するステップと、
前記ストアステップの構成可能パラメータから別のワークフローを特定するステップと、
前記削除イベントに応じて前記別のワークフローにおいて前記文書を処理するステップとを実行させる、コンピュータプログラム。
【請求項１４】
前記プロセッサに、
前記ストアステップの構成可能パラメータから前記ワークフロー中の再開始点を特定するステップと、
前記再開始点により前記ワークフローにおいて前記文書の処理を開始するステップとをさらに実行させる、
請求項１３に記載のコンピュータプログラム。
【請求項１５】
前記プロセッサに、
前記文書が前記ストアステップにより成功裏に処理されるまで、前記ワークフローからの前記文書の削除を防止するステップをさらに実行させる、
請求項１３に記載のコンピュータプログラム。
【請求項１６】
前記プロセッサに、
前記ストアステップの構成可能パラメータ中のコンタクト情報を特定するステップと、
前記コンタクト情報に基づき前記削除イベントについてユーザに通知するステップとをさらに実行させる、
請求項１３に記載のコンピュータプログラム。
【請求項１７】
前記プロセッサに、
前記削除イベントに応じて前記ストアステップに前記文書を自動的に移動させるステップをさらに実行させる、
請求項１３に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はプリントジョブ管理に関し、特に、プリントショップのワークフローシステムに関する。
【背景技術】
【０００２】
プリントショップは顧客のために高度な及び／又は大量のプリントジョブを処理する。プリントショップは、一般的に、多数のハイエンドプリンタ（例えば、多機能プリンタ、連続フォームプロダクションプリンタなど）を含み、これらは単純なオフィスプリンタよりも多くの機能及び／又はプリントボリュームを提供することができる。例えば、プリントショップは、多数の人への請求書などの文書を提供するために、毎月膨大なプリントジョブ（例えば、数十万ページもあるようなもの）の印刷に使われることもある。
【０００３】
多くの個別文書を含む大きなジョブの場合、完成した文書のプロパティを記録すると都合がよいことがある。すなわち、各文書がワークフローで正しく処理されると、それが何時印刷されたか、誰の文書か、それがメールされたアドレスなどの文書プロパティが、アーカイブに格納されてもよい。そのような情報のアーカイブは、文書またはそのデータがどのように処理されたかを証明する必要が将来生じた場合に有用であるかも知れない。
【０００４】
なお、この文書は、米国仮特許出願第６２２３４３９２号（出願日２０１５年９月２９日、発明の名称「ＤＯＣＵＭＥＮＴ  ＡＵＤＩＴ  ＴＲＡＩＬ  ＦＯＲ  ＰＲＩＮＴ  ＪＯＢＳ  ＩＮ  Ａ  ＷＯＲＫＦＬＯＷ」）の優先権を主張するものである。この出願はここに参照援用する。
【発明の概要】
【０００５】
本願の実施形態は、ワークフローから削除される文書のプロパティを格納する。これにより、不完全ではあるが、文書がどのように処理されたかに関する関連情報を示すアーカイブ／履歴の生成が可能となる。この情報により、文書がそのワークフローを完了しなくても、文書のオーディットトレール（ａｕｄｉｔ  ｔｒａｉｌ）を作成できる。
【０００６】
一システムは、プリントジョブの文書に対して実行する所定のアクティビティセットを含むワークフローに従って、プリントショップのデバイスに命令するコントローラを含む。前記コントローラは、前記文書が前記ワークフロー中にある間に前記プリントジョブの文書の削除イベントを検出し、前記ワークフロー中に確定されたストアステップに前記文書を進め、前記ストアステップの構成可能パラメータに基づいて前記文書のために記録する文書プロパティを特定して、前記文書プロパティの値を履歴ファイルに記録する。
【０００７】
他の例示的な実施形態（例えば、上記の実施形態に関連する方法とコンピュータ読み取り可能媒体）は後で説明する。
【図面の簡単な説明】
【０００８】
例として、添付した図面を参照して、本発明の幾つかの実施形態を説明する。全図面において、同じ参照番号は同じ要素または同じタイプの要素を表す。
【図１】一実施形態によるワークフローシステムを示すブロック図である。
【図２】一実施形態におけるワークフローシステムの作動方法を示すフローチャートである。
【図３】一実施形態によるワークフロー及び削除イベントを示すブロック図である。
【図４】一実施形態によるユーザ構成可能ストアステップを示すブロック図である。
【図５】一実施形態による履歴ファイルを示すブロック図である。
【図６】一実施形態における所望の機能を実行するプログラム命令を化体するコンピュータ読み取り可能媒体を実行できる処理システムの一例を示す図である。
【発明を実施するための形態】
【０００９】
図面及び以下の説明は、本発明の具体例としての実施形態を示す。言うまでもなく、当業者は、ここには明示的に説明や図示はしていないが、本発明の原理を化体し、本発明の範囲に含まれる様々な構成を工夫することができる。さらに、ここに説明する例はどれも、本発明の原理の理解を助けることを意図したものであり、具体的に記載した例や条件に限定するものと解釈すべきではない。結果として、本発明は以下に説明する具体的な実施形態に限定はされず、特許請求の範囲及びその均等の範囲にのみ限定される。
【００１０】
図１は、一実施形態によるワークフローシステム１００を示すブロック図である。ワークフローシステム１００において、入来ジョブ（例えば、プリントファイル及び付随するジョブチケット）が、ワークフローサーバ１２０でクライアント１１０から受信される。ワークフローサーバ１２０は、入来プリントジョブをレビューして、そのプリントジョブのワークフローを特定する。ワークフローは、プリントジョブに対して実行されるプリントショップアクティビティの組織的セットであり、ワークフローは、各アクティビティと、それを実行する全体的な順序とを確定するデータとして、ワークフローサーバ１２０に格納されてもよい。ワークフローは必要に応じて所定のテンプレートから選択してもよく、マニュアル入力してもよく、または外部ソースからロードされてもよい。ワークフローを選択した後、ワークフローサーバ１２０は、プリントジョブがプリントショップで適切に処理されるよう、ワークフローに従ってプリントショップのデバイスに命令してもよい。ワークフローサーバ１２０は、プリントショップですでに完了されたプリントジョブを記述するデータのアーカイブを格納してもよい。
【００１１】
プリントショップデバイス１４０は、ここに説明するさまざまなアクティビティを実行するプリントショップのデバイスやコンポーネントを含んでいてもよい。例えば、プリントショップデバイス１４０は、プリンタ、印刷後処理装置、電子メールまたはウェブパブリッシングサーバなどを含んでいてもよい。図１に示すプリントショップデバイスは、プリントショップにより利用され得る様々なプリントショップデバイスの一例である。この実施形態では、バインダ１４２は、印刷されたページをバインドしてマガジンまたはブックにする。プリンタ１４４は、入ってくる印刷データをラスタライズし、物理的ページに印刷する。ステープラ１４６は、ページのグループをホチキス留めする。インサータ１４８は、物理的ページを、受取人に郵送／配送する封筒に挿入する。
【００１２】
ワークフローシステム１００は、ワークフローにおいてアクティブに処理されているプリントジョブ中の一以上の文書の削除イベントを検出し、削除される文書のカスタマイズ可能な値のセットをアーカイブに記録するように改良されている。以前のシステムは、プリントショップですでに完了したプリントジョブを記述するデータを格納することが可能であるが、（例えば、削除する非同期動作が行われた場合など）ワークフローにより完了しなかった文書またはプリントジョブに関するデータを読み出すことはできない。
【００１３】
この実施形態では、ワークフローサーバ１２０は、クライアント１１０からプリントジョブの印刷データを受信するインタフェース（Ｉ／Ｆ）１２２（例えば、イーサネット(登録商標)インタフェース、無線インタフェースなど）を含む。ワークフローサーバ１２０は、さらに、ワークフローサーバ１２０において受信されたプリントジョブを管理するプロセッサ１２４と、クライアント１１０からのプリントジョブを記憶するランダムアクセスメモリ（ＲＡＭ）１２６（例えば、ハードディスクなど）を含む。また、ワークフローサーバ１２０は、ワークフローサーバ１２０においてワークフローにより処理されたプリントジョブ及び／又は文書に関するデータを格納するメモリ１３０にアーカイブを作り、管理することができるアーカイビングコントローラ１２８を含む。アーカイビングコントローラ１２８及び／又はメモリ１３０は、ワークフローサーバ１２０とは異なるハードウェアに実装されてもよいが、必ずしもそうでなくてもよい。例えば、メモリ１３０は、リモートアクセス可能なストレージシステムを含んでも良く、ワークフローサーバ１２０のコンポーネントを含んでもよい。どんな場合であっても、ワークフローサーバ１２０は、メモリ１３０のアーカイブにアクセスして検索し、完了したプリントジョブ（及び／又はその文書）を特定することができてもよい。例えば、サーバ１１０は、顧客名、住所、郵便番号などに基づいて、（例えば、ワークフローサーバ１２０のグラフィカルユーザインターフェース（ＧＵＩ）におけるオペレータ入力を介して）アーカイブを検索して個別文書を見つけてもよい。
【００１４】
ワークフローシステム１００の動作の詳細な例を、図２を参照して説明する。本実施形態について、クライアント１１０が、プリントショップで処理するプリントジョブを生成し、そのプリントジョブの印刷データとジョブチケットとをワークフローサーバ１２０に送信したと仮定する。
【００１５】
図２は、一実施形態におけるワークフローシステムの作動方法２００を示すフローチャートである。図１のワークフローシステム１００を参照して方法２００のステップを説明するが、当業者には言うまでもなく、方法２００は他のシステムで実行してもよい。ここに説明するフローチャートのステップは、すべてを含まなくてもよいし、図示しないその他のステップを含んでもよい。ここに説明するステップは別の順序で実行してもよい。
【００１６】
ステップ２０２において、Ｉ／Ｆ１２２は、クライアント１１０から複数の文書を含むプリントジョブを受信する。各文書は配送の受取人を示していてもよい。すなわち、プリントジョブのジョブチケットは各文書の受取人を示していてもよいし、または各文書は受取人を特定する印刷データを含んでいてもよい。本願において、「文書」とは、プリントジョブの独立した部分であり、配送する特定の受取人に宛てられたものであってもよい。よって、プリントジョブの印刷データの１つのファイルで複数の文書が確定されることもある。
【００１７】
あるいは、プリントジョブの他の部分を必要としない文書は、その文脈または意味を維持するために、プリントジョブの独立した部分とみなしてもよい。例えば、本のある章は文書ではない。それは、完全に理解するには、その本の他の章と共にその章を読む必要があるからである。対照的に、幾千もの銀行取引明細書のプリントジョブでは、各銀行取引明細書は異なる口座名義人に送られるものであり、各銀行取引明細書はそれ自体で完結した文書である。受け取るプリントジョブのプリントデータは、ページ記述言語（ＰＤＬ）に従って単一のファイルにフォーマットされ、例えばＡｄｖａｎｃｅｄ  Ｆｕｎｃｔｉｏｎ  Ｐｒｅｓｅｎｔａｔｉｏｎ（ＡＦＰ）データストリームとして、Ｊｏｂ  Ｄｅｆｉｎｉｔｉｏｎ  Ｆｏｒｍａｔ（ＪＤＦ）ジョブチケット命令を伴うＰｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ（ＰＤＦ）プリントデータとして、または本技術分野の当業者が知っているその他の任意の適当なフォーマットとして、フォーマットされていてもよい。プロセッサ１２４は、プリントジョブを更に分析して、各文書を特定し、各文書の受取人を示す情報（例えば、口座番号、受取人名、住所など）を決定してもよい。
【００１８】
プリントジョブが受け取られると、プロセッサ１２４はプリントジョブに対してワークフローを選択し得る。一実施形態では、ワークフローシステム１００は、複数の「ホットフォルダ（ｈｏｔ  ｆｏｌｄｅｒｓ）」すなわちそれぞれが異なるワークフローと関連付けられたインタフェースを実装し、クライアント１１０は、所望のワークフローを示すために、ワークフローサーバ１２０のホットフォルダの一つにプリントジョブを送信する。さらに別の実施形態では、プリントジョブ名とホットフォルダの組み合わせを用いて、プリントジョブのワークフローを特定してもよい。
【００１９】
ワークフローは、メモリ（例えば、ＲＡＭ１２６）に記憶された、順序付けられたプリントショップアクティビティのセットを確定してもよい。ワークフローは、各プリントジョブに対してユニークであってもよく、複数のプリントジョブに対して使われてもよい。プロセッサ１２４は、それにプログラムされたデフォルトワークフローを含み、またはワークフローは、ユーザによりマニュアル入力されても、プロセッサにロードされてもよい。例えば、ワークフローは、プリントするプリンタを指示する、またはインサータに文書を封筒に挿入するように指示する構成可能アクティビティを含み得る。適切にアセンブルされ構成されると、ワークフローは、プリントジョブを適切に処理するために、プリントショップで行う、デジタル的に規定された動作順序を含んでいてもよい。すなわち、ワークフロー中に規定されたアクティビティは、順序通り実行されると、ワークフローサーバ１２０が、プリントショップデバイスと通信／管理し、望み通りプリントジョブを処理することを可能にする。ワークフローの各アクティビティは、プリントショップデバイス（例えば、印刷後処理デバイス、プリンタ、インサータ）のカテゴリーまたはタイプに関連してもよく、特定名称のプリントショップデバイスに関連してもよい。これらのアクティビティは、必要に応じて、プリントアクティビティまたは非プリントアクティビティ（例えば、請求、発送、文書レビュー、マルチメディア／デジタル／インターネットアクティビティ、与信チェック等）を含んでいてもよい。さらにまた、各アクティビティは、プリントジョブ（又はその文書）が占める、異なる状態に関連付けられてもよい。待ち状態（ｑｕｅｕｅｄ  ｓｔａｔｅ）は、文書（又はジョブ）が現在アクティビティにより処理される準備ができていることを示し、処理中状態は、文書（又はジョブ）がアクティビティにおいてアクティブに処理されている（例えば、対応デバイスによりアクティブに印刷／ステープルされている）ことを示し、完了状態は、文書（又はジョブ）がワークフロー中の次のアクティビティに移行する準備ができていることを示す。
【００２０】
ステップ２０４において、プロセッサ１２４は、プリントショップデバイス１４０に、ワークフローに従ってプリントジョブを処理するように指示する。個別のプリントショップデバイスに指示するステップは、ワークフロー中の、到達した現在のアクティビティを特定するステップと、現在のアクティビティに基づいて適切なプリントショップデバイスに命令を送るステップと、デバイスから、ワークフローアクティビティの処理が成功裏に完了したことを示すフィードバックを待つステップと、プリントジョブを次のワークフローアクティビティに進めるステップとを含んでいてもよい。（プロセッサ１２４により内部的にトラッキングされるように）プリントジョブを進めるステップは、プリントジョブを処理している次のプリントショップデバイスに新しい命令を送信するステップを含んでいてもよい。プロセッサ１２４は、文書ごとに現在のアクティビティをトラッキングしてもよいし、全プリントジョブの現在のアクティビティを全体としてトラッキングしてもよい。
【００２１】
プロセッサ１２４は、プリントジョブがワークフローにおいて処理されている間に、プリントジョブの文書の各々のプロパティをトラッキングしてもよい。本願において、文書のプロパティは、その文書そのものを記述する情報であってもよく、及び／又はその文書がワークフローを進むにつれどう処理されるかを記述する情報であってもよい。例えば、プロパティは、文書中のページ数、その文書に対してワークフローアクティビティが実行された時間、その文書が処理されているときのその文書の状態、その文書のプリントデータのフォーマットなどを含んでいてもよい。プロセッサ１２４は、どのプロパティ（例えば、最大フィールド、最初の５つのフィールドなど）を格納するか決定するアルゴリズムを用いることにより、又は内部メモリに格納されたパラメータにアクセスすることにより、トラッキングするプロパティを特定してもよい。例えば、どのタイプのプロパティをトラッキングするかという規則が、プリントジョブを処理するワークフローにより規定されてもよい。プロセッサ１２４は、特定されたプロパティを、必要に応じて、継続的に、定期的に、又はトリガーイベント（ｔｒｉｇｇｅｒｉｎｇ  ｅｖｅｎｔｓ）に応じて、モニターしてもよい。
【００２２】
ステップ２０６において、アーカイビングコントローラ１２８は、文書がワークフロー中にある間に、プリントジョブの一以上の文書の削除イベントを検出する。アーカイビングコントローラ１２８は、文書またはプリントジョブをワークフローから削除することを要求する入力を検出してもよい。よって、削除イベントは、プリントジョブで（例えば、ワークフローサーバ１００におけるＧＵＩにおけるオペレータ入力の結果として）生じ、ワークフロー中の文書の処理または処理の削除に直接関係してもよい。代替的に又は追加的に、アーカイビングコントローラ１２８はプリントジョブから文書の削除又は削除要求を検出してもよい。一実施形態では、プロセッサ１２４は削除命令／要求を検出し、削除イベント、文書、及び／又はプリントジョブに関する情報をアーカイビングコントローラ１２８にレポートする。
【００２３】
プロセッサ１２４は、削除イベントが発生した時に、現在トラッキングされている文書のプロパティを決定するため、文書を現在処理しているプリントショップデバイスを特定して、それらプリントショップデバイスにクエリー（ｑｕｅｒｉｅｓ）を送信してもよい。プロセッサ１２４は、削除に関連するページを、ワークフローでアクティブに処理されている個別の文書に関連付けてもよい。すなわち、削除イベントに応じて、プロセッサ１２４は削除イベントで実行するように構成されたワークフロー中のステップを実行する。かかるステップの一例は、その文書が削除されたことを記録するストアステップ（ｓｔｏｒｅ  ｓｔｅｐ）である。
【００２４】
ステップ２０８において、アーカイビングコントローラ１２８は、その文書をワークフロー中に規定されたストアステップに進める。アーカイビングコントローラ１２８は、削除イベントに関連する文書を、削除イベント又は削除イベントタイプに指定されたステップに、自動的に送ってもよい。代替的に又は追加的に、アーカイビングコントローラ１２８は、削除イベントに関連する文書の、メモリ中で指定された、あるいはストアステップの規則／パラメータにより特定された、異なるワークフロー（または同じワークフローで規定された異なる一連のステップまたはブランチ）までの処理を、自動的に選択及び開始してもよい。異なるワークフローは、業務監査情報の収集に必要かも知れないすべての適切な情報を収集せずに、文書がシステムを去らないことを保証する。代替的に又は追加的に、アーカイビングコントローラ１２８は、削除イベントに関連して文書の処理を自動的に選択及び起動してもよい。代替的に又は追加的に、アーカイビングコントローラ１２８は、削除イベントに関連する文書の、再開始点までの処理を、または削除イベントについて指定された、もしくはストアステップの規則／パラメータにより確定されたステップを、自動的に選択及び開始してもよい。
【００２５】
ステップ２１０において、アーカイビングコントローラ１２８は、ストアステップの構成可能パラメータに基づき、その文書について記録する文書プロパティを特定する。アーカイビングコントローラ１２８は、さらに、ユーザ設定可能パラメータ又はその中で規定された規則に従って実行する追加アクションについて、ストアステップ又はストアステップシリーズを行っても良い。例えば、アーカイビングコントローラ１２８は、ストアステップの設定可能パラメータ中のコンタクト情報を特定し、そのコンタクト情報に基づいて削除イベントのユーザに（例えば、電子メールを介して）通知してもよい。その通知は、削除イベント自体に関する情報を含んでいてもよいし、及び／又は削除イベントに関する文書に関連する文書プロパティの値を含んでいてもよい。
【００２６】
ステップ２１２において、アーカイビングコントローラ１２８は、その文書の値を履歴ファイルに記録する。アーカイビングコントローラ１２８は、削除イベントに関連する一以上の文書の各々のエントリーを履歴ファイルに記録してもよい。履歴ファイル中の各エントリーは、その文書のプロパティの値を示す。このように、文書またはプリントジョブの削除イベントが検出された後、その文書またはプリントジョブを記述する情報が、アーカイビングコントローラ１２８により、メモリ１３０の一以上の履歴ファイルに格納される。
【００２７】
本願では、エントリー（ｅｎｔｒｙ）は、文書の異なる側面を記述するテキストまたは数値フィールドであってもよい。エントリーは、文書がワークフロー中にある間に、または削除イベントと同時に、及び／又は削除イベントの結果としてワークフローから文書の実際の削除前に決定され得る、文書の任意の好適なプロパティ（及び付随するコンテキスト情報）を記述してもよい。履歴ファイルのエントリーの例は、削除イベントが生じた時間、削除イベントの時におけるワークフローのその時のアクティビティ、削除イベントの時における文書／アクティビティの状態、文書が印刷されたか、文書が印刷された場所やプリンタの識別情報、文書が印刷された時間、その文書を誰が見たか、その文書がメールされたか、削除イベントを記述する情報、文書の仕向けられた顧客の名称、顧客のアドレス、顧客のＺＩＰコード、顧客のクレジットカードまたは銀行口座の残高、削除イベントの前に文書を最後に見たユーザなどを含んでもよいが、これらに限定されない。
【００２８】
履歴ファイルは、個別の文書に対する一連のエントリーを含んでいても、複数の文書に対する一連のエントリーを含んでいてもよい。アーカイビングコントローラ１２８は、新しい履歴ファイルを生成し、または既存のファイルを特定して、ユーザ入力によりカスタマイズ可能な態様で、またはワークフローサーバ１２０及び／又はワークフローにおいて確定された、削除文書を記録する条件に従って、新しいエントリーを追加してもよい。例えば、履歴ファイルは、文書のタイプに対して、削除イベントが生じる日付または日付範囲に対して、プリントジョブまたはワークフローのプロパティに対して、専用であってもよい。ユーザは、後で削除イベントに関する情報を読み出すため、（例えば、リモートクライアントを介して、又はサーバ１１０のユーザインターフェースを介して直接的に）検索要求を生成し、それをアーカイビングコントローラ１２８に提供してもよい。検索要求は、検索する一以上のプロパティ（例えば、顧客名、住所など）を列挙してもよく、それらのプロパティの部分的な又は完全な値（例えば、Ｊｏｈｎ  ＊、「サイズが５０ページ未満」、「２０１５年１月１５日以前に印刷された」、プリントジョブＸの一部など）を含んでいてもよい。アーカイビングコントローラ１２８は、レコードの読み出しの便宜のため、新しく生成された各レコード内に、ジョブファイル及び／又はそれが参照するレコードをポイントするポインタを付加してもよい。
【００２９】
一実施形態では、削除の検出は、履歴ファイルの格納を要しないが、文書を、すべてのデータが削除される前にそれをキャプチャできるようにする、ワークフローの一ステップ又は一連のステップで処理することを可能とし、それによりフルオーディット（ｆｕｌｌ  ａｕｄｉｔ）を完了する（例えば、文書はオーディット・トレール（ａｕｄｉｔ  ｔｒａｉｌ）が記録されることなくシステムを離れることはできない）。
【００３０】
実施例
以下の実施例では、顧客に大量郵送する口座取引明細書を印刷し、ソートするワークフローシステムの場合に、追加的なプロセス、システム、及び方法を説明する。
【００３１】
この例では、ワークフローサーバはインターネットを介してアクセス可能であってもよいプリントショップのコンピュータで動作する。ワークフローサーバは、プリントショップ内部のイントラネットを介してプリントショップデバイスにアクセスする。イントラネットにはプリントショップのプリンタ、電子メールサーバ、及びインサータが接続されている。入ってくるプリントジョブは、７０万文書を含むＰＤＦプリントジョブとして、インターネットを介してワークフローサーバで受信されてもよい。各文書は、異なる口座所有者のクレジットカード取引明細書に対応し、異なる受取人に配送する郵便物であってもよい。ワークフローサーバのコントローラは、プリントジョブをメモリにロードし、プリントジョブの名称と、そのプリントジョブが受信されたワークフローサーバのファイルフォルダとに基づいて、そのプリントジョブが「ステートメント（ｓｔａｔｅｍｅｎｔｓ）」タイプのプリントジョブであると判断する。コントローラは、ジョブタイプに基づきプリントジョブにワークフローを割り当てる。
【００３２】
プリントショップのプリントサーバは、１０台のプリンタの動作を管理し、ワークフローから削除された文書を記述するアーカイブをハードディスク上に設定、維持、及び格納するアーカイビングコントローラも含む。このように、文書が削除されるとき、プリントサーバは新しい履歴ファイルを生成し、及び／又はその履歴ファイルをアーカイブの適切なディレクトリに置く。
【００３３】
図３は、一実施形態によるワークフロー３００及び削除イベントを示すブロック図である。プロセッサ又はアーカイビングコントローラは、処理のどの時点であってもシステムから削除された文書をトラッキングできてもよく、そのプリントジョブの情報をトラッキングすることにより確定される同じ値（又はカスタマイズ可能な値のセット）を記録できてもよい。アーカイビングコントローラは、削除イベントに関連する文書を、ワークフローのカスタマイズ可能ストアステップ（ｃｕｓｔｏｍｉｚａｂｌｅ  ｓｔｏｒｅ  ｓｔｅｐ）３１０に移行してもよい。ストアステップは、ワークフロー３００中のあるステップから削除されるものとして特定されたプロパティ、及び／又は文書のプロパティを記録する条件を特定するように、事前にユーザにより構成されてもよい。
【００３４】
ワークフローは複数の構成可能なアクティビティを含み、ワークフローを通る文書は、待ち状態（Ｑ）、アクティブ処理状態（Ｐ）、及び完了状態（Ｃ）を進む。ワークフローサーバのコントローラは、アクティビティの各々を実行するプリントショップデバイスによる入力に基づいて情報をトラッキング（ｔｒａｃｋ）してもよい。この例では、ワークフローサーバ自体は受信及び前処理（ｐｒｅ−ｆｌｉｇｈｔ）タスクを実行し、プリンタはプリント文書アクティビティを管理し、インサータは文書差し込みアクティビティを実行し、メール文書アクティビティは、様々なメールの完了をワークフローサーバにレポートするためにグラフィカルユーザインターフェースを利用するプリントショップオペレータを介して実行してもよい。コントローラは、ステップを完了したプリントジョブからページ範囲を示す定期的入力を、デバイスから受信してもよい。コントローラは、どの文書が待ち状態（ｑｕｅｕｅｄ）であるか、どの文書がアクティビティで処理されているか、どの文書が完了しているか判断するため、ページ範囲を、プリントジョブに規定された文書セットと相関させてもよい。この例では、プリントジョブは、プリントジョブ自体がワークフローを進みながら、各文書が異なるワークフローアクティビティで処理できる複数の文書を含む。
【００３５】
削除イベントは、文書がワークフローを進む間に、様々な時に検出されてもよい。図３によると、文書は、削除イベントが検出された時、前処理（ｐｒｅ−ｆｌｉｇｈｔ）アクティビティの処理状態にあってもよい。削除イベントが検出されると、コントローラは、削除イベントが生じた時の再出発点（ｒｅｓｔａｒｔ  ｐｏｉｎｔ）として指定されたワークフロー中のステップで、削除される文書を処理してもよい。すなわち、削除される文書を処理している位置又は点は、その文書がワークフローを完了して出ることを許可される前に、異なる一ステップまたは一連のステップが完了されように、その削除イベントに応じてワークフロー中で変更またはバックアップされてもよい。この場合、そのステップは、削除される文書に関するどの情報をアーカイブするか判断するストアステップであってもよい。
【００３６】
図４は、一実施形態によるユーザ構成可能ストアステップ４００を示すブロック図である。ストアステップ４００は、ユーザがジョブまたは文書を削除した時に進むステップとして指定されてもよい。図４において、図示されたストアステップ４００のプロパティは、ユーザに対してソフトウェアウィンドウに表示されている。図４によると、ストアステップはユーザ構成可能プロパティを含み、これは文書のアーカイブ／履歴ファイルのファイル位置へのポインター４１０と、アーカイブ／履歴ファイルの新しい各エントリーに追加されるプロパティリスト４２０とを含む。
【００３７】
プリントワークフロー中のプリントジョブのイベントを検出及びトラッキングするように構成されたリスナー（ｌｉｓｔｅｎｅｒｓ）は、トラッキングされるべき各ステップをジョブが完了するのを見てもよく、そのイベントのタイムスタンプを記録してもよい。コントローラは、移行する適切なストアステップ及び／または記録する文書プロパティを特定するため、文書が、あるアクティビティの処理状態に入ったばかりか、または出たばかりか判断してもよい。この例では、ジョブまたは文書は前処理（ｐｒｅ−ｆｌｉｇｈｔ）段階での処理中に削除され、その削除イベントに関連する文書はワークフロー中のストアステップ４００に自動的に動かされる。ストアステップ４００は、処理ステップが成功裏に実行された時に格納されるのと同じ（又はそれ以上の）トラッキング情報であってタイムスタンプを含む情報が、ジョブ又は文書が削除された時に格納されるようにする。トラッキングデータは、ステップが実行された時のジョブ又は文書のプロパティよりなってもよい。ストアステップは、アーカイブに、これらのタイムスタンプと、削除イベントに関連する文書のプロパティとを記述するように構成されていてもよい。このように、アーカイビングコントローラは、ワークフローアクティビティと削除イベントとの間の進行中の文書の状態変化を示す処理履歴を格納してもよい。．例えば、ワークフロー中でトラッキングされている個別の情報（例えば、トラッキング中のイベント）は、必要に応じて、削除イベントのアーカイブに含まれても、排除されてもよい。代替的にまたは追加的に、ワークフロー中でトラッキングされていないプロパティに関する個別情報は、削除イベント時にアーカイブに追加されてもよい。
【００３８】
図５は、一実施形態による履歴ファイル５００を示すブロック図である。ストアステップ４００の条件の分析に基づき、アーカイビングコントローラは、カスタマイズされたストアステップ４００により、記録する文書のプロパティの値を記述するエントリーを追加することにより、特定された履歴を更新／付加する。ストアステップ４００により記述された各レコードは、リポジトリからそのレコードを読み出すのに使えるエントリータイプを含んでも良く、ユーザがある期間に、またはあるアプリケーションタイプの削除された文書またはジョブを見つけることができるようにしてもよい。
【００３９】
各エントリーは、トリガリングイベントが検出された時を示すフィールド及び／又はタイムスタンプ、そのイベントに関するその文書の状態を示す状態、そのトリガリングイベントが検出された時にその文書に対して実行されていたワークフローアクティビティを示すアクティビティのフィールド、その時にどのワークフローが処理されていたか示すワークフローのフィールドなどを含んでも良い。例えば、エントリーは、その文書がプリントアクティビティにいるか、前処理アクティビティにいるか、受信アクティビティにいるかなどを示しても良く、またはワークフローの名称を示しても良い。ワークフローのタイプのトラッキングは、履歴ファイルが複数のプリントジョブにわたる文書のプロパティ（それぞれが異なるワークフローに関連していてもよい）をトラッキングする実施形態で都合がよい。他のエントリーの例に、限定ではなく含まれるものは、いつ削除イベントが生じたか示すタイムスタンプ、削除イベントを記述する情報、文書の出所である顧客、全プリントジョブのプリントファイル中の文書の最初のページ、プリントファイル中の文書の最後のページ、文書の形式のタイプ（この場合、例えば、本やレポートのコピーではなく、口座明細書）、文書を記述するのに用いられるＰＤＬを示す文書のデータタイプ、共有ファイルサーバ上の履歴ファイルのロケーションである。さらに別の文書プロパティは、図４に示したストアステップオブジェクトのユーザ構成可能設定に基づき、必要に応じて、コントローラにより履歴ファイルに置かれても良い。ジョブまたは文書がシステムを離れた時に削除が生じることを記録する能力は、前述のトラッキングソリューションに対する改良である。それは、削除する非同期オペレータアクションが実行されたとき、トラッキングデータが記録されなかったループホールを閉じるからである。
【００４０】
ここに開示した実施形態は、ソフトウェア、ハードウェア、ファームウェア、またはこれらのｋ得見合わせの形態であり得る。一実施形態では、ソフトウェアを用いてワークフローサーバ１２０の処理システムに、ここに開示のさまざまな動作を実行するように命令する。図６は、一実施形態における所望の機能を実行するプログラム命令を化体するコンピュータ読み取り可能媒体を実行できる処理システム６００の一例を示す。処理システム６００は、コンピュータ読み取り可能記憶媒体６１２に有体的に実施されたプログラム命令を実行することにより上記の動作を実行するように動作可能である。これに関し、本発明の実施形態は、コンピュータその他の命令実行システムにより用いるプログラムコードを提供するコンピュータ読み取り可能媒体６１２によりアクセス可能なコンピュータプログラムの形態を取ることができる。この説明の目的において、コンピュータ読み取り可能記憶媒体６１２は、コンピュータが利用するプログラムを格納または記憶できるものであればどんな媒体でもよい。
【００４１】
コンピュータ読み取り可能記憶媒体６１２は、電子的、磁気的、光学的、光磁気的、赤外線、または半導体のデバイスであり得る。コンピュータ読み取り可能記憶媒体６１２の例としては、固体メモリ、磁気テープ、リムーバブルコンピュータディスケット、ランダムアクセスメモリ（ＲＡＭ）、リードオンリメモリ（ＲＯＭ）、固定磁気ディスク、光ディスクなどがある。現時点における光ディスクの例としては、コンパクトディスク・リードオンリメモリ（ＣＤ−ＲＯＭ）、コンパクトディスク・リード／ライト（ＣＤ−Ｒ／Ｗ）、及びＤＶＤなどがある。
【００４２】
処理システム６００は、プログラムコードを記憶及び／又は実行するのに好適であるが、システムバス６５０を介してプログラム及びデータメモリ６０４に結合された少なくとも１つのプロセッサ６０２を含んでいてもよい。プログラム及びデータメモリ６０４は、プログラムコードの実際の実行時に使われるローカルメモリと、バルク記憶と、実行時にバルク記憶からコード及び／又はデータを読み出す回数を低減するために、少なくともプログラムコード及び／又はデータの一部を一時的に記憶するキャッシュメモリと、を含む。
【００４３】
入出力すなわちＩ／Ｏデバイス６０６（キーボード、ディスプレイ、ポインティングデバイスなどを含むがこれに限定されない）は、直接的に、または介在するＩ／Ｏコントローラを通して結合できる。ネットワークアダプタインタフェース６０８をシステムに結合して、処理システム６００を、介在するプライベートネットワークやパブリックネットワークを通して、他のデータ処理システムや記憶デバイスに結合することもできる。モデム、ケーブルモデム、ＩＢＭチャネルアタッチメント、ＳＣＳＩ、ファイバチャネル、イーサネットカードは、現在入手できるネットワークまたはホストインタフェースアダプタのほんの一例である。表示デバイスインタフェース６１０は、プリントシステムやプロセッサ６０２により生成されるデータの表示をする画面などである一以上の表示デバイスとインタフェースするシステムと一体化されてもよい。
【００４４】
具体的な実施形態を説明したが、本発明の範囲はこれらの具体的実施形態に限定されるものではない。本発明の範囲は、特許請求の範囲とその等価範囲により決まる。
【図１】
0006432581.tif 000002
【図２】
0006432581.tif 000003
【図３】
0006432581.tif 000004
【図４】
0006432581.tif 000005
【図５】
0006432581.tif 000006
【図６】
0006432581.tif 000007