(57)【特許請求の範囲】
【請求項１】
複数の処理工程の処理パラメータおよび処理順序を定義した印刷ジョブのジョブチケットに基づいていずれかの処理工程を実行するジョブ処理装置であって、
前記ジョブ処理装置が実行する着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記処理状況に基づいて印刷ジョブにおける処理済み部分の次工程用の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成手段と、
前記ジョブチケット生成手段により生成された前記第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡手段と、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する場合、前記第１ジョブチケットに基づくジョブチケットおよび前記第２ジョブチケット内に記述されたパスワードに基づいて結合処理が可能か否かを判定し、パスワードの照合が成功することにより前記第１ジョブチケットに基づくジョブチケットおよび前記第２ジョブチケットを結合する結合手段と
を備えることを特徴とするジョブ処理装置。
【請求項２】
前記ジョブチケット分割条件とは、前記解析手段によって解析された前記着目処理工程の処理状況が、前記着目処理工程における処理の中断をもたらす事象を示す情報であることを特徴とする請求項１に記載のジョブ処理装置。
【請求項３】
複数の処理工程の処理パラメータおよび処理順序を定義した印刷ジョブのジョブチケットに基づいていずれかの処理工程を実行するジョブ処理装置であって、
前記ジョブ処理装置が実行する着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記処理状況に基づいて印刷ジョブにおける処理済み部分の次工程用の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成手段と、
前記ジョブチケット生成手段により生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡手段と、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットを結合する場合、前記着目処理工程の次工程において、結合しようとする各ジョブチケットによる処理部分が、連続した部分であれば、前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する結合手段と
を備えることを特徴とするジョブ処理装置。
【請求項４】
複数の処理工程の処理順序を定義したワークフロー情報および各処理工程を実行すべきデバイス情報を管理し、前記ワークフロー情報に従って印刷ジョブを実行させるためのジョブチケットを生成する情報処理装置であって、
複数の処理工程におけるいずれかの着目処理工程の処理を実行するデバイスから受信された前記着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記印刷ジョブの処理済み部分における次工程の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成手段と、
前記ジョブチケット生成手段により生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡手段と、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットを結合する場合、前記第１ジョブチケットに基づくジョブチケットおよび前記第２ジョブチケット内に記述されたパスワードの照合が成功することにより前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する結合手段と
を備えることを特徴とする情報処理装置。
【請求項５】
前記ジョブチケット分割条件とは、前記受信手段によって受信された前記着目処理工程の処理状況が、前記着目処理工程における処理の中断をもたらす事象を示す情報であることを特徴とする請求項４に記載の情報処理装置。
【請求項６】
複数の処理工程の処理順序を定義したワークフロー情報および各処理工程を実行すべきデバイス情報を管理し、前記ワークフロー情報に従って印刷ジョブを実行させるためのジョブチケットを生成する情報処理装置であって、
複数の処理工程におけるいずれかの着目処理工程の処理を実行するデバイスから受信された前記着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記印刷ジョブにおける処理済み部分における次工程の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成手段と、
前記ジョブチケット生成手段により生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡手段と、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットを結合する場合、前記着目処理工程の次工程において、結合しようとする各ジョブチケットによる処理部分が連続した部分であれば、前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する結合手段と
を備えることを特徴とする情報処理装置。
【請求項７】
複数の処理工程の処理パラメータおよび処理順序を定義した印刷ジョブのジョブチケットに基づいていずれかの処理工程を実行するジョブ処理装置により実行されるジョブ処理方法であって、
前記ジョブ処理装置が実行する着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記処理状況に基づいて印刷ジョブにおける処理済み部分の次工程用の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを、前記ジョブ処理装置のジョブ生成手段が生成するジョブチケット生成ステップと、
前記ジョブ処理装置の引渡手段が、前記ジョブチケット生成ステップにより生成された前記第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡ステップと、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する場合、前記ジョブ処理装置の結合手段が、前記第１ジョブチケットに基づくジョブチケットおよび前記第２ジョブチケット内に記述されたパスワードに基づいて結合処理が可能か否かを判定し、パスワードの照合が成功することにより前記第１ジョブチケットに基づくジョブチケットおよび前記第２ジョブチケットを結合する結合ステップと
を有することを特徴とするジョブ処理方法。
【請求項８】
複数の処理工程の処理パラメータおよび処理順序を定義した印刷ジョブのジョブチケットに基づいていずれかの処理工程を実行するジョブ処理装置により実行されるジョブ処理方法であって、
前記ジョブ処理装置が実行する着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記ジョブ処理装置のジョブ生成手段が、前記処理状況に基づいて印刷ジョブにおける処理済み部分の次工程用の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成ステップと、
前記ジョブ処理装置の引渡手段が、前記ジョブチケット生成ステップにより生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡ステップと、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットを結合する場合、前記着目処理工程の次工程において、結合しようとする各ジョブチケットによる処理部分が連続した部分であれば、前記ジョブ処理装置の結合手段が、前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する結合ステップと
を有することを特徴とするジョブ処理方法。
【請求項９】
複数の処理工程の処理順序を定義したワークフロー情報および各処理工程を実行すべきデバイス情報を管理し、前記ワークフロー情報に従って印刷ジョブを実行させるためのジョブチケットを生成する情報処理装置により実行される情報処理方法であって、
複数の処理工程におけるいずれかの着目処理工程の処理を実行するデバイスから受信された前記着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記情報処理装置のジョブチケット生成手段が、前記印刷ジョブの処理済み部分における次工程の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成ステップと、
前記情報処理装置の引渡手段が、前記ジョブチケット生成ステップにより生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡ステップと、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットを結合する場合、前記情報処理装置の結合手段が、前記第１ジョブチケットに基づくジョブチケットおよび前記第２ジョブチケット内に記述されたパスワードの照合が成功することにより前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する結合ステップと
を有することを特徴とする情報処理方法。
【請求項１０】
複数の処理工程の処理順序を定義したワークフロー情報および各処理工程を実行すべきデバイス情報を管理し、前記ワークフロー情報に従って印刷ジョブを実行させるためのジョブチケットを生成する情報処理装置により実行される情報処理方法であって、
複数の処理工程におけるいずれかの着目処理工程の処理を実行するデバイスから受信された前記着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記情報処理装置のジョブチケット生成手段が、前記印刷ジョブにおける処理済み部分における次工程の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成ステップと、
前記情報処理装置の引渡手段が、前記ジョブチケット生成ステップにより生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡ステップと、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットを結合する場合、前記着目処理工程の次工程において、結合しようとする各ジョブチケットによる処理部分が連続した部分であれば、前記情報処理装置の結合手段が、前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する結合ステップと
を有することを特徴とする情報処理方法。
【請求項１１】
複数の処理工程の処理パラメータおよび処理順序を定義した印刷ジョブのジョブチケットに基づいていずれかの処理工程を実行するジョブ処理装置としてコンピュータを機能させるためのプログラムであって、
前記ジョブ処理装置が実行する着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記処理状況に基づいて印刷ジョブにおける処理済み部分の次工程用の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成手段と、
前記ジョブチケット生成手段により生成された前記第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡手段と、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する場合、前記第１ジョブチケットに基づくジョブチケットおよび前記第２ジョブチケット内に記述されたパスワードに基づいて結合処理が可能か否かを判定し、パスワードの照合が成功することにより前記第１ジョブチケットに基づくジョブチケットおよび前記第２ジョブチケットを結合する結合手段と
してコンピュータ機能させるためのプログラム。
【請求項１２】
複数の処理工程の処理パラメータおよび処理順序を定義した印刷ジョブのジョブチケットに基づいていずれかの処理工程を実行するジョブ処理装置としてコンピュータを機能させるためのプログラムであって、
前記ジョブ処理装置が実行する着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記処理状況に基づいて印刷ジョブにおける処理済み部分の次工程用の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成手段と、
前記ジョブチケット生成手段により生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡手段と、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットを結合する場合、前記着目処理工程の次工程において、結合しようとする各ジョブチケットによる処理部分が、連続した部分であれば、前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する結合手段と
してコンピュータを機能させるためのプログラム。
【請求項１３】
複数の処理工程の処理順序を定義したワークフロー情報および各処理工程を実行すべきデバイス情報を管理し、前記ワークフロー情報に従って印刷ジョブを実行させるためのジョブチケットを生成する情報処理装置としてコンピュータを機能させるためのプログラムであって、
複数の処理工程におけるいずれかの着目処理工程の処理を実行するデバイスから受信された前記着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記印刷ジョブの処理済み部分における次工程の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成手段と、
前記ジョブチケット生成手段により生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡手段と、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットを結合する場合、前記第１ジョブチケットに基づくジョブチケットおよび前記第２ジョブチケット内に記述されたパスワードの照合が成功することにより前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する結合手段と
としてコンピュータを機能させるためのプログラム。
【請求項１４】
複数の処理工程の処理順序を定義したワークフロー情報および各処理工程を実行すべきデバイス情報を管理し、前記ワークフロー情報に従って印刷ジョブを実行させるためのジョブチケットを生成する情報処理装置としてコンピュータを機能させるためのプログラムであって、
複数の処理工程におけるいずれかの着目処理工程の処理を実行するデバイスから受信された前記着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記印刷ジョブにおける処理済み部分における次工程の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成手段と、
前記ジョブチケット生成手段により生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡手段と、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットを結合する場合、前記着目処理工程の次工程において、結合しようとする各ジョブチケットによる処理部分が連続した部分であれば、前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する結合手段と
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジョブチケットを用いて印刷を実行する印刷システムに関し、たとえば処理途中で障害等が生じても、それによって全ての印刷処理を中断することを防止した情報処理装置およびその制御方法とプログラムに関する。
【背景技術】
【０００２】
第三者（顧客、クライアント）から印刷物（雑誌、新聞、カタログ、広告、グラビア等）の作成依頼を受注する。その注文に応じて印刷物を作成してそれをクライアントに納品することで報酬を得る商業的印刷業界では、オフセット製版印刷機などの大規模な印刷装置等を用いた印刷が主流である。印刷業界では、入稿、デザインやレイアウト、カンプ（プリンタ出力によるプレゼンテーション）、校正（レイアウト修正や色修正）、校正刷り（プルーフプリント）、版下作成、印刷、後処理加工、発送といった具合に様々な工程を踏んで作業を進めてきた。
【０００３】
一方で、最近、電子写真方式の印刷装置やインクジェット方式の印刷装置の高速化、高画質化に伴い、プリント・オン・ディマンド（Ｐｒｉｎｔ  Ｏｎ  Ｄｅｍａｎｄ：以下、ＰＯＤと表記する。）と呼ばれる印刷装置で扱うジョブより比較的小ロットのジョブを大掛かりな装置やシステムを用いずに要求された納期で取り扱う市場がある。
【０００４】
ＰＯＤ市場では従来の大規模な印刷機またはシステムに代わって、例えば、ディジタル複写機やディジタル複合機等のディジタル画像処理装置を最大限に活用して、電子データを用いたディジタルプリントを採用している。このようなＰＯＤ市場では、従来の印刷業界に比べてディジタル化が進み、コンピュータを利用した管理、制御が浸透してきている。
【０００５】
例えば、ＰＯＤ市場では、納期までに処理を終了させるためスケジュールを生成している。さらに、ＰＯＤ市場では効率的に処理を進めるために複数の処理工程を組み合わせたＰＯＤワークフローを生成し、ジョブチケットを使用して印刷を実施している。ジョブチケットとは、印刷されるデータの作業工程を電子的に示しているものである。ＰＯＤを請け負う印刷ショップ等では、ジョブチケットに記載されているように印刷を行えばよく、処理の自動化を行う上で欠くことのできない技術である。ジョブチケットの詳細な説明については後述する。
【０００６】
ジョブチケットを用いてワークフロー処理を進める方法が特許文献１に記載されている。特許文献１では、生成されたワークフローに対応するジョブチケットを生成し、ワークフロー生成装置から発行されたジョブチケットに従って必要な処理が行われることが記載されている。
【０００７】
また、印刷物の後処理（フィニッシング処理）を行う装置（フィニッシャ）として、印刷装置やその制御装置であるコンピュータと通信を介して接続されたニアラインフィニッシャが実用化されている。ニアラインフィニッシャは印刷装置とは独立した装置であるために、機能の拡張性や代替性に優れている。また、電子化されたジョブチケットを通信を介して受信し、そのジョブチケットに記述された処理を実行できるために、処理の自動化にも貢献している。
【特許文献１】特開２００４−１６４５７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
特許文献１に記載の技術は、生成されたワークフローに対応するジョブチケットを作ることができる。しかしながら、例えばジョブチケットに従って処理を進めている際にエラーが発生した場合のことは想定していない。もし、ジョブチケットに記述されている内容に従って処理を進める際にエラーが発生した後に、そのジョブチケットにしたがって処理を続行するためには、発生したエラーを解除してから次の処理を行う必要がある。そのために印刷ジョブの処理完了時間が、処理が停滞した時間だけ遅延するという問題があった。例えば、ディジタル印刷機で印刷後にフィニッシング処理（印刷後処理）を行うフローにおいては、印刷処理工程が終了した後でなければ印刷後処理工程に進むことができない。そのため印刷途中でエラーが生じた場合、途中まで出力した記録紙をフィニッシング処理に移行することはできない。その結果、印刷工程におけるエラーを解除した後、フィニッシング処理対象となる全ての印刷結果（印刷物）が揃ってからフィニッシング処理を行うため、エラー復旧までの時間分だけ終了時刻が遅れることとなる。
【０００９】
例えばＰＯＤ市場では納期情報からスケジュール情報を生成し、納期に間に合うように処理を進めているため、終了時刻が遅れることにより大きな損失を被る恐れがある。
【００１０】
本発明は上述した課題に鑑みてなされたもので、ワークフローの処理中であっても、効率的に処理を進めることを目的とする。そのために所定の条件に一致する事象が発生した場合、新たなジョブチケットを動的に生成し、該ジョブチケットにしたがってワークフローを処理できる情報処理装置とその制御方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決するために、本発明は、以下の構成を備える。すなわち、複数の処理工程の処理パラメータおよび処理順序を定義した印刷ジョブのジョブチケットに基づいていずれかの処理工程を実行するジョブ処理装置であって、
前記ジョブ処理装置が実行する着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記処理状況に基づいて印刷ジョブにおける処理済み部分の次工程用の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットを生成するジョブチケット生成手段と、
前記ジョブチケット生成手段により生成された前記第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡手段と、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する場合、前記第１ジョブチケットに基づくジョブチケットおよび前記第２ジョブチケット内に記述されたパスワードに基づいて結合処理が可能か否かを判定し、パスワードの照合が成功することにより前記第１ジョブチケットに基づくジョブチケットおよび前記第２ジョブチケットを結合する結合手段とを備える。
あるいは、複数の処理工程の処理パラメータおよび処理順序を定義した印刷ジョブのジョブチケットに基づいていずれかの処理工程を実行するジョブ処理装置であって、
前記ジョブ処理装置が実行する着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記処理状況に基づいて印刷ジョブにおける処理済み部分の次工程用の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成手段と、
前記ジョブチケット生成手段により生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡手段と、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットを結合する場合、前記着目処理工程の次工程において、結合しようとする各ジョブチケットによる処理部分が、連続した部分であれば、前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する結合手段とを備える。
【００１２】
あるいは、複数の処理工程の処理順序を定義したワークフロー情報および各処理工程を実行すべきデバイス情報を管理し、前記ワークフロー情報に従って印刷ジョブを実行させるためのジョブチケットを生成する情報処理装置であって、
複数の処理工程におけるいずれかの着目処理工程の処理を実行するデバイスから受信された前記着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記印刷ジョブの処理済み部分における次工程の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成手段と、
前記ジョブチケット生成手段により生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡手段と、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットを結合する場合、前記第１ジョブチケットに基づくジョブチケットおよび前記第２ジョブチケット内に記述されたパスワードの照合が成功することにより前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する結合手段とを備える。
あるいは、複数の処理工程の処理順序を定義したワークフロー情報および各処理工程を実行すべきデバイス情報を管理し、前記ワークフロー情報に従って印刷ジョブを実行させるためのジョブチケットを生成する情報処理装置であって、
複数の処理工程におけるいずれかの着目処理工程の処理を実行するデバイスから受信された前記着目処理工程の処理状況がジョブチケット分割条件に一致する場合、前記印刷ジョブにおける処理済み部分における次工程の処理パラメータを記述した第１ジョブチケットと前記着目処理工程の未処理部分に関する処理パラメータを記述した第２ジョブチケットとを生成するジョブチケット生成手段と、
前記ジョブチケット生成手段により生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す引渡手段と、
前記着目処理工程における未処理部分の処理の完了後に前記着目処理工程の次工程以降の処理のために前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットを結合する場合、前記着目処理工程の次工程において、結合しようとする各ジョブチケットによる処理部分が連続した部分であれば、前記第１ジョブチケットに基づくジョブチケットと前記第２ジョブチケットとを結合する結合手段とを備える。
【発明の効果】
【００１３】
本発明によれば、ワークフローの処理中であっても、効率的に処理を進めるために新たなジョブチケットを動的に生成できる。そのため、進行状況に応じて効率的に処理を進めることが可能となる。
【発明を実施するための最良の形態】
【００１４】
［第１実施形態］
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。
【００１５】
＜定義＞
ここで本実施形態で用いられるいくつかの用語について説明し、定義する。まずニアラインフィニッシャとは、ホストコンピュータ等の外部装置と通信する手段を備えている。ニアラインフィニッシャは、フィニッシャにおいて行う処理内容を、通信を介して外部装置からジョブチケットを受信することで設定できる。また、フィニッシャの操作部からユーザによる手入力でも入力可能である。また、ニアラインフィニッシャは、印刷装置とは紙パスが物理的に接続されていない装置である。
【００１６】
ワークフローとは、後処理まで含めた印刷処理の流れである。本実施形態では、ワークフローをコンピュータにより処理可能な形式で記述された情報を、ワークフロー（あるいはワークフロー情報）と呼ぶ。なお、本実施例では、ワークフローを印刷処理の流れと記述したが、印刷処理に限定される必要はない。ワークフローは、ワークフローを構成するアクティビティ（処理工程とも呼ぶ。）を、処理の順序に従って記述した情報である。各アクティビティは、処理の実行主体と、実行される処理の内容とが記述されている。実行主体はデバイス等でなくとも良く、たとえば担当者の氏名や役職等であってもよい。また、処理内容も、動作の一般的な記述であってよく、処理の客体の具体的な記述などはなくともよい。ただし、各アクティビティに記述された実行主体や動作を基にジョブチケットが生成されることから、自然言語による記述ではなく、あらかじめ定めた形式（文法）と単語（予約語）で記述しておくのが望ましい。
【００１７】
ジョブチケットとは、印刷処理の各工程における処理内容を記述したデータのまとまりであり、ジョブ制御情報とも呼ぶ。つまりジョブチケットとは、作業指示内容を示す情報が記述された作業指示書の電子データである。ジョブチケットは、たとえばＸＭＬ（ｅＸｔｅｎｓｉｖｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）を用いて定義されたＪＤＦ（Ｊｏｂ  Ｄｅｆｉｎｉｔｉｏｎ  Ｆｏｒｍａｔ）形式で記述されたデータである。しかし、規格化されていない形式で記述されたジョブチケットであっても、本発明のために用いることはできる。ジョブチケットには、ワークフローを構成する各アクティビティを実現するデバイス等において実行される処理のパラメータ等が記述されている。なおデバイス等とは、プリンタやニアラインフィニッシャ、画像スキャナといった個々のデバイスに加えて、汎用コンピュータで実行される原稿の入稿処理アプリケーションや面付けアプリケーションなども含む。デバイス等を、ハードウエア上独立したデバイスとソフトウエアにより実現されるデバイスとを含めて、本実施形態では論理デバイスと称する場合もある。
【００１８】
各デバイス等では、ジョブチケットに記述されたパラメータにしたがって処理を遂行する。また、本実施形態では、これから実行しようとする処理内容に加えて、終了した処理（未完の処理も含む）の状態も、その処理を実行したデバイス等により記述されている。これらは、各デバイス等による処理終了後にジョブチケットに書き込まれる。ジョブチケットの具体的な構成例は図３等を参照して後で説明する。
【００１９】
まず、図２１に、本実施形態の情報処理装置を説明するブロック図を示す。なお特に断りがない限り、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮやＷＡＮ等のネットワークを介して接続が為され処理が行われるシステムであっても本発明を適用できる。また、クライアントコンピュータと記載したがこれに限る必要はなく、情報処理装置であれば基本的に図２１と同じ構成となる。よって、例えば後述するＭＩＳサーバも図２１と同じ構成となる。
【００２０】
図２１において、２１００はホストコンピュータで、ＲＯＭ２１０３のプログラム用ＲＯＭあるいは文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ２１０１を備えている。ＣＰＵ２１０１は、システムバス２１０４に接続される各デバイスを総括的に制御する。
【００２１】
また、このＲＯＭ２１０３のプログラム用ＲＯＭあるいは外部メモリ２１１１には、ＣＰＵ２１０１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等を記憶する。また、ＲＯＭ２１０３のフォント用ＲＯＭあるいは外部メモリ２１１１には上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ２１０３のデータ用ＲＯＭあるいは外部メモリ２１１１には上記文書処理等を行う際に使用する各種データを記憶する。
【００２２】
２１０２はＲＡＭで、ＣＰＵ２１０１の主メモリ、ワークエリア等として機能する。２１０５はキーボードコントローラ（ＫＢＣ）で、キーボード２１０９や不図示のポインティングデバイスからのキー入力を制御する。２１０６はＣＲＴコントローラ（ＣＲＴＣ）で、ＣＲＴディスプレイ（ＣＲＴ）２１１０の表示を制御する。
【００２３】
２１０７はディスクコントローラ（ＤＫＣ）で、ブートプログラム、アプリケーション、フォントデータ、プリンタ制御コマンド生成プログラム（以下プリンタドライバ）等を記憶するハードディスク（ＨＤ）等の外部メモリ２１１１とのアクセスを制御する。また、ＤＫＣ２１０７は、フレキシブルディスクとのアクセスも制御可能である。
【００２４】
２１０８はプリンタコントローラ（ＰＲＴＣ）で、所定の双方向性インターフェース２１２１を介して外部デバイスに接続されて、外部デバイスとの通信制御処理を実行する。なお、ＣＰＵ２１０１は、例えばＲＡＭ２１０２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ２１１０上でのＷＹＳＩＷＹＧを可能としている。
【００２５】
また、ＣＰＵ２１０１は、ＣＲＴ２１１０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。なお、図２１に記載の情報処理装置は、本願に記載のＭＩＳも基本的に同様の構成となる。
【００２６】
＜システム構成＞
図１は、本発明の第１実施形態を示す印刷システムのシステム概要図である。図１において、印刷システムは、印刷システムサーバ１００、インターネットあるいは企業内のイントラネットであるネットワーク１０１、パーソナルコンピュータとソフトウエアなどからなるクライアント部１０２を備える。さらに、ワークフローのアクティビティを実現するデバイス等として、入稿アプリケーションがインストールされたパーソナルコンピュータ１０９（これを入稿アプリケーション１０９と呼ぶ）を備える。また面付けアプリケーションがインストールされたパーソナルコンピュータ１１０（これを面付けアプリケーション１０９と呼ぶ）を備える。さらに、記録紙に印刷を行う印刷機（印刷エンジン）１１１、製本やトリミング等の後処理を行うニアラインフィニッシャ１１２も備えている。
【００２７】
入稿アプリケーションは、入稿を行うためのアプリケーションソフトウエアである。入稿アプリケーション１０９は、入力されたイメージデータやテキストデータ等のデータを、所定形式（たとえばＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ））に変換する。入稿アプリケーション１０９は、クライアント１０２へインストールされてもよく、ネットワーク１０１上の別のコンピュータに存在していても良い。面付けアプリケーション１１０は、版下である電子データを印刷物として出力結果を指定するためのプログラムである。面付けアプリケーション１１０により、たとえば「２ｉｎ１で両面印刷を行う」であるとか、「１ｉｎ１でくるみ製本印刷を行う」などの面付け指定が、見やすいＵＩ上で指定できる。面付け指定にしたがって、入稿アプリケーション１０９から出力された原稿の電子データが面付けアプリケーション１１０によって変換される。変換後の電子データは、印刷エンジン１１１に入力される電子データである。たとえばＰＤＦで記述された各ページの配置を、面付け指定にしたがって変更したデータやあるいはＰＤＦで記述された各ページの配置を、所定のＰＤＬ（ページ記述言語）により記述したデータ等である。いずれにしても、変換後の電子データは、印刷エンジン１１１により解釈実行可能な形式である。入稿アプリケーション１０９や割り付けアプリケーション１１０等、ワークフローで使用されるデバイス等は、ジョブチケットに対応している。コンピュータにおいては、たとえばジョブチケットを受信し、それを表示し、ユーザによる入力を受け付け、受け付けた入力と共にジョブチケットをサーバ１００に送信するためのプログラム（ジョブチケット処理プログラムと呼ぶ。）が実行される。このプログラムは、必要に応じてジョブチケットに記述されたアクティビティのパラメータを、そのアクティビティを実行するデバイスにセットアップできる。
【００２８】
印刷機１１１は、入力された電子データ（これを印刷データとも呼ぶ。）に基づいて、記録紙上への印刷を実行する。ニアラインフィニッシャ１１２は、印刷装置に付属のインラインフィニッシャとは異なり、人手で持参された印刷物を、ネットワーク経由で指定されたジョブチケットなどのジョブ制御情報に従ってフィニッシング処理する。これに似たものとしてオフラインフィニッシャがあるが、これはネットワーク接続されておらず、ジョブチケットなどのジョブ制御情報はフレキシブルディスクなどの電子媒体によって提供される。ニアラインフィニッシャは、処理対象の印刷物が手作業で所定の位置に載置されてから処理を始める。そのため、処理開始のきっかけはオペレータにより入力される。その際に、図１０に示すようにジョブの結合等の指示を行うことができる。
【００２９】
サーバ１００には、ジョブチケット（ＪＴ）発生部１０３、ワークフロー実行部１０４、ジョブチケット（ＪＴ）管理部１０５、ユーザ管理部１０６、アクティビティ管理部１０７、ワークフロー管理部１０８、ワークフロー生成部１２０を含む。ジョブチケット管理部１０５、ユーザ管理部１０６、アクティビティ管理部１０７、ワークフロー管理部１０８は、メモリや外部メモリ等により実現される記憶領域を持つ管理プログラムか、あるいは記憶領域そのものである。ジョブチケット発生部１０３、ワークフロー実行部１０４、ワークフロー生成部１２０はサーバコンピュータ１００がプログラムを実行することで実現される。もちろんそのプログラムと等価な回路を持つハードウエアで実現することもできる。
【００３０】
ワークフロー生成部１２０は、ユーザが、アクティビティ管理部１０７に保存された定義済みのアクティビティを用いてワークフローを定義するためのソフトウエアであり、定義されたワークフローはワークフロー管理部１０８に保存される。その際、ログインしたユーザがワークフローを定義する権限を持つか否かを、担当者管理部１０６に保存された該当ユーザの権限と照合してチェックしてもよい。ジョブチケット発生部１０３は、ワークフロー実行部１０４が実行しようとするワークフローに対応するジョブチケットを生成し、ジョブチケット管理部１０５に保存する。ジョブチケットの生成はワークフロー実行部が行っても良い。ワークフロー実行部１０４は、ワークフロー管理部１０８に保存された一つ以上のワークフローを同時動作させる。ワークフロー実行部１０４は、ワークフローを動作させるために、ジョブチケットを各アクティビティの実行前に動的に更新し、ワークフローの柔軟な実行を実現している。ジョブチケット管理部１０５は、生成されたジョブチケットをワークフロー終了まで保持する。ジョブチケットは、アクティビティを実行するデバイスからアクティビティ実行後にサーバ１００に対して送信されるので、それを受信してジョブチケット管理部１０５で保持する。また、受信したジョブチケットは、次のアクティビティのために更新される。担当者（ユーザ）管理部１０６は、ログインしたユーザの権限などを保持する。アクティビティ管理部１０７は、ワークフローで実行される作業工程を意味するアクティビティを保存管理する。たとえば「主任が入稿を行う」、「派遣社員が面付けを行う」、「部長が承認を行う」、「印刷作業者がくるみ印刷を行う」などの定義をアクティビティとして登録できる。通常、アクティビティは担当者と作業の組み合わせになる。ワークフロー管理部１０８は、ユーザや管理者があらかじめ定義するワークフローを保存管理する。「課長承認付くるみ印刷」、「部長１００部印刷」などのユーザに定義されたワークフローを複数管理している。ワークフローはこのような名称が付され、アクティビティ管理部１０７で定義済みのアクティビティのシーケンスとして定義されている。たとえば、「課長承認付くるみ印刷」という名称のワークフローは、「担当者Ａが入稿」、「担当者Ｂが面付け」、「管理者Ｃが承認」、「両面印刷」、「くるみ製本」という順序で配置された一連の定義済みアクティビティから構成される。
【００３１】
＜ワークフロー＞
ワークフローの定義例を図２に示す。図２において、ワークフロー２００は、直列に配置されたアクティビティ２０１から２０５を含む。アクティビティ（処理工程）２０１は入稿アプリを起動するアクティビティである。たとえば「担当者Ａが入稿」などと定義されている。この定義は、この例のように自然言語で記述されても良いが、特別に定めた一定の規則で記述されても良い。たとえば、「主体名」＋「が」＋「動作名」といったように記述される。印刷システムが適切な実行主体を選択できる場合には、主体の記述は省略しても良い。いずれにしても、コンピュータにより実行されるワークフロー実行部１０４により解析可能な形式で記述される。アクティビティ２０１が終了するとアクティビティ２０２へすすむ。アクティビティ２０２は面付けアプリを起動するアクティビティである。たとえば「担当者Ｂが面付け」のように記述されている。同様にアクティビティ２０３は記録紙を印刷するアクティビティである。たとえば「両面印刷」のように記述される。本例では、両面印刷機能を持つ印刷機は印刷システム（たとえばワークフロー実行部）が適当に選択できるために、主体の記述はない。アクティビティ２０４はニアラインフィニッシャでフィニッシングを実行するアクティビティである。たとえば「くるみ製本」のように記述される。アクティビティ２０５は管理者などが出力結果内容を確認するアクティビティである。たとえば「管理者Ｃが承認」などと記述される。
【００３２】
このように、アクティビティ２０１からアクティビティ２０５までをつなげて１つのワークフローを構築している。ワークフロー情報は、たとえばアクティビティの名称（図２ではＡ１，...，Ａ５）を実行順に並べたデータファイルなどとして実現できる。アクティビティの実体は、アクティビティ管理部１０７に保存されている。ジョブチケット２０６は、例えば図３で詳細が説明されるような構成を有する。例えば、ジョブチケット２０６はワークフロー２００に基づいて生成される。また、ジョブチケットは、顧客から注文された情報に基づいて生成されても良い。そして、ジョブチケットは、各処理工程の実行主体に対して、処理工程毎にＭＩＳ（管理サーバ）２１０から送信される。また、処理工程終了毎に各デバイスからＭＩＳ２１０に対して返信される。ワークフローの途中、たとえば図２のアクティビティ２０３で記録紙無しなどの異常が発生すると、印刷ジョブデータはそのアクティビティにより処理された部分と処理できなかった部分とに別れ、ジョブチケットも分割された各印刷ジョブに合わせて分割される。ワークフローは分割された各部分毎に進行し、また結合される。次にジョブチケットの内容について説明する。なお、ＭＩＳ２１０と図２のサーバ１００は同等なものである。
【００３３】
＜ジョブチケット＞
図３はジョブチケットの構成例である。図３はワークフロー実行前のジョブチケットの例を示す。符号３０１はジョブチケットの開始記号、符号３０２は元ジョブ名を示す。ジョブ名は、たとえば基になるワークフロー名と関連付けられているのが望ましい。本例では「３６１２１２」となる。符号３０３はジョブ名である。分割されていないジョブチケットのジョブ名は元ジョブ名と同一である。本例では「３６１２１２」であり、元ジョブ名と等しい。依頼者情報３０４は「kazuta」、支払者情報３０５は「matsueda」、届け先３０６は「xxxxxx-yyyyyy」、サーバ名３０７は「stargate」である。たとえばワークフロー作成時にこれらの値をユーザに入力させれば、ジョブチケット作成時には、ワークフロー情報に含まれる値を用いることができる。サーバ名はサーバ部１００の名称である。開始日時３０８は本ジョブチケットが生成された時間を示す。符号３０９から符号３１３には、アクティビティに対応して実行される作業工程が示されている。符号３０９はアクティビティ２０１の内容である。以下同様に、符号３１０はアクティビティ２０２、符号３１１はアクティビティ２０３、符号３１２はアクティビティ２０４、符号３１３はアクティビティ２０５の作業内容が示される。符号３１４はジョブチケットの終了マークである。
【００３４】
アクティビティの内容は、アクティビティ管理部１０７に保存されている。そこで、ジョブチケットを生成する際には、アクティビティ管理部１０７を参照して、アクティビティに対応する内容にしたがって処理内容をジョブチケットに記述する。たとえば本例ではアクティビティＡ１〜Ａ５に対応して、それぞれ「担当者Ａが入稿」、「担当者Ｂが、両面くるみ製本で面付け」、「管理者Ｃが承認」、「両面印刷」、「くるみ製本」といったアクティビティがアクティビティ管理部１０７に記述されている。そこで、ワークフロー実行部１０４あるいはジョブチケット発生部１０３により、各アクティビティの内容が、それを実行するためのパラメータに変換されてジョブチケットに記述される。パラメータは、たとえばデバイスの識別子やアドレス、処理の種類、その処理のために必要とされるパラメータ等を含む。たとえば「担当者Ａが入稿」というアクティビティに対しては、ジョブチケット発生部１０３が、入稿アプリケーションが実行されるコンピュータの識別名やアドレスを調査する。そして、オペレータに対して表示されるアクティビティの内容などをジョブチケットの工程１に記述する。また、「くるみ製本」というアクティビティに対しては、ジョブチケット発生部１０３が、「くるみ製本」が実行されるフィニッシャの識別子やアドレスを調査する。そして、ワークフロー実行部１０４が、フィニッシング処理の種類や処理に応じて必要とされるパラメータをジョブチケットの工程４に記述する。
【００３５】
＜ワークフロー実行の概要＞
図４は本実施形態におけるワークフロー実行手順の一例を示す図である。まず、通常のワークフロー実行手順の例を説明する。ワークフロー実行部１０４は（あるいはジョブチケット発生部１０３）、指定されたワークフローをワークフロー管理部１０８から読み、ジョブチケット発生部１０３は、ワークフローに対応するジョブチケットを生成する。その際、ジョブチケット発生部１０３は、ジョブチケットに含まれるアクティビティに相当する工程に対して必要な情報を付加する。つまり、ジョブチケット発生部１０３は、オーダ情報に基づいてジョブチケットに付加すべき情報を記述する。そのジョブチケットが、当該工程を実行するデバイス等に送付される。例えば、オーダが１０ページ単位、５部にて印刷し、製本処理する設定がされているとする。この場合、ジョブチケット発生部１０３は、印刷処理を行うデバイスに対して、１０ページ単位の印刷を５部分実行すべきとの情報を付加したジョブチケットを生成する。また、印刷後処理を行うデバイスに対して、１０ページ単位で製本処理を５回行うとの情報を付加したジョブチケットを生成する。ジョブチケットには、当該工程を実行するために必要な情報（パラメータ）が記述されているので、各デバイス等は、そのジョブチケットの該当個所を読み、記述されたパラメータにしたがってその工程を実行する。該当個所は、たとえなジョブチケットを受信したデバイスが保持するデバイス識別子と、ジョブチケットの各工程に記載されたデバイスのＩＤとを照合して検出できる。すなわち、ワークフロー実行部１０４は、ワークフローの各アクティビティを実行するデバイス等に対して、ワークフローに定義された順序でジョブチケットを送る。これにより、各アクティビティをワークフローに定義された順序で実行させている。すなわち、ワークフロー実行部１０４あるいはジョブチケット発生部１０３は、各アクティビティの内容を、それを実行するためのパラメータ（デバイス識別子、処理種類、処理パラメータ等）に変換してジョブチケットに記述する。なお用紙サイズなど、処理のためのパラメータは、前段階のアクティビティたとえば面付けアプリケーション１１０における処理結果に基づいて決定される場合もある。もちろんワークフローやオーダ情報に基づいてあらかじめ定めておくこともできる。
【００３６】
たとえば、ワークフロー実行部１０４は、着目アクティビティが入稿であれば、入稿の工程を記述したジョブチケットを、その工程の実行デバイスである、入稿アプリケーションがインストールされたコンピュータに送信する。入稿処理がオペレータによる操作に応じて実行される場合、ジョブチケットの記述内容はその処理を実行するデバイスの識別子や、オペレータに対する指示の記述となる。それを受信したコンピュータのジョブチケット処理プログラム（前述）は、当該工程に対応して記述された情報を読み、たとえばオペレータ名と処理内容（たとえば「担当者Ａが入稿」）、記述された情報を表示する。そして、担当者がログインしたならその認証を行い、指定した入稿担当者に対して入稿操作を許す。この認証は、たとえばジョブチケットに記載された担当者識別名を、不図示のディレクトリサーバ等で検索し、照合することで実行できる。その後担当者が入稿するデータを指定し、入稿アプリケーションによる所定の形式への変換等の処理が完了したなら、変換後のデータをあらかじめ指定されたフォルダ（ホットフォルダ）へ格納する。入稿アプリケーションがインストールされたコンピュータは、入稿したファイル名やホットフォルダの名称（必要に応じて所在も含む）、サイズ、処理開始時刻、完了時刻等の処理後に確定したジョブチケットに書き加える。オペレータにより指定された情報があれば、それも書き加える。たとえば、印刷部数などがこの段階で指定されることもあり得るので、それをジョブチケットに書き込む。最後に、入稿アプリケーションがインストールされたコンピュータは、更新したジョブチケットをワークフロー実行部１０４に送信する。
【００３７】
以上は、オペレータが介入する処理について同様に行われる。一方、オペレータの介入なしに行える処理については、アクティビティを実行するデバイスに適合したパラメータがジョブチケットには記載される。たとえば、「両面印刷」というアクティビティがあれば、ワークフロー実行部１０４あるいはジョブチケット発生部１０３はそれを実行するデバイスを決定する。そして、ワークフロー実行部１０４は、用紙サイズや両面印刷という印刷設定をジョブチケットに書き込んでそれを印刷エンジン１１１に送信する。この形式は、たとえばＪＤＦ（ジョブ定義形式）などの規格に従えばよい。その他の点は、オペレータが介入する処理と同様である。なお、サーバ１００に接続されているデバイスの情報は、サーバ１００が管理している。例えば「両面印刷」というアクティビティを処理するデバイスについては、ワークフロー実行部１０４が、サーバ１００に管理されているデバイス情報から両面印刷を実行できるデバイスを特定する。そして、ワークフロー実行部１０４が、そのデバイスにて処理すべきとの内容を記述したジョブチケットを生成する。
【００３８】
ただし、処理によっては、その後の処理に応じてパラメータが与えられる場合がある。たとえば、面付けアプリケーションにおける面付けは、印刷順序やフィニッシング処理の種類（特に製本処理）に応じて行われる。たとえば製本処理では、一定枚数の印刷済み用紙を２つ折りし、それをステープルして束ね、その束を重ねて背表紙を付けるなどの処理が行われる。そのため、２つ折りする枚数や、折りの方向などによって、面付け処理によるページの配置が決定される。また処理の仕方には、装置の機能による制約もある。そこでワークフロー実行部１０４あるいはジョブチケット発生部１０３は、着目するアクティビティ実行のためのジョブチケットを、ワークフロー全体および使用するデバイスの機能に基づいて決定している。
【００３９】
次に図４に即して、ジョブ分割を行う場合のワークフロー実行手順の例を説明する。図４では、ＭＩＳが、アクティビティＡ３においてエンジン部１１１の処理中に記録紙無しなどの障害が発生した際に、ジョブチケット２０６を、ジョブチケット４０１とジョブチケット４０２に分割し、ジョブをそれぞれに割り振る。つまり、元々のジョブを、中断前に印刷済みの部分に関するジョブと、中断により未印刷の部分に関するジョブとに分割する。ジョブチケットも、ジョブの分割に応じて、印刷済みの部分に関するジョブのジョブチケット４０１と、未印刷部に関するジョブのジョブチケット４０２に分割される。このようにひとつのジョブを、進行状況の相異なる複数のジョブに分割することで、ワークフローの中断を防止し、処理済み部分に関しては部分的に先のアクティビティに進めることが可能になる。すなわち本例であるとジョブチケット４０１から、次段の処理工程のためのジョブチケット４０３を生成し、次段の処理に工程を進めることが可能になる。
【００４０】
また、ジョブチケット４０２は、分割によりジョブチケット４０３から独立したものとなっている。そのため、障害復旧後にジョブチケット４０３の進み具合に関係なく処理を開始できる。ジョブチケット４０４は、ジョブチケット４０２に基づく処理の実行後のジョブチケットである。図１３等で説明するように、あるアクティビティを実行するためのジョブチケットは、その終了後に情報の追加が行われるため、処理の前後で相異なる内容を持つ。
【００４１】
＜ジョブチケットの分割＞
さて、分割後のジョブチケット４０１の構成の一例を図５に示す。また、分割後のジョブチケット４０２の構成の一例を図６に示す。なお、分割前のジョブチケットすなわち印刷エンジン部１１１からワークフロー実行部１０４に送信されるジョブチケットは、図５とほぼ同じ内容を持つ。ただし、ジョブは元ジョブそのものなので、ジョブ名は「３６１２１２」である。
【００４２】
図５はジョブチケット４０１の構成例を示す図である。ジョブ名５０１は、「３６１２１２−１−２−３−１／２」となっている。このジョブ名は、元ジョブ名「３６１２１２」に含まれる工程１、２（アクティビティＡ１，Ａ２のこと）は成功したこと（「１−２−」で示される）が含まれている。さらにジョブ名には、工程３（アクティビティＡ３のこと）で２分割されたこと、本ジョブはそのうちの前方のジョブであること（「−３−１／２」で示される）を示している。すなわち、ジョブチケット分割後のジョブ名は、「元ジョブ名＋成功した工程の識別番号（繰り返し）＋分割実行される工程の識別番号＋分割された部分の、ジョブ全体に対する位置を示す識別子」で与えられる。「分割された部分の、ジョブ全体に対する位置を示す識別子」は、図５では、分割数を分母に、分割部分の順番を示す番号を分子にした分数形式で示される。図１１は、ジョブ名の詳細を示した図である。図１１は、工程４においてさらに分割されたジョブチケットの例を示す。
【００４３】
作業結果５０２には工程１の作業指示および作業結果が記載されている。作業指示はワークフロー実行部１０４またはジョブチケット発生部１０３により記載される。作業結果は、処理を行ったデバイスにより記載される。作業結果について説明する。＜入稿ファイル＞欄には、受け付けたファイル名「aaabbbccc.pdf」が記述される。＜開始時間＞欄には「2005/04/14 19:00:01」に入稿を受付けたことが、＜終了時間＞欄には、「2005/04/14 19:00:03」に入稿を終了したことが記述されている。また、＜部数＞は１０部である。部数は、たとえばジョブチケットで指定された部数であってもよいし、入稿時にオペレータにより指定された部数であっても良い。また、入稿されたデータが保存されている＜ホットフォルダ＞欄は「folder1」となっている。ホットフォルダとは、所定の目的のためにあらかじめ指定されているフォルダであり、本例では入稿データを保存するためにあらかじめ指定されたフォルダである。図５では入稿したＰＣ上のホットフォルダ名が示されている。＜処理の実行者＞欄は、「System」が主体であることが記述されている。このように工程１ではその処理結果として、少なくとも、入稿ファイルの名称およびそれが保存されている場所を示す情報がジョブチケットに追加される。なお工程１は図５では問題（障害）なく終了している。
【００４４】
領域５０３には工程２（Ａ２：面付けアプリ）の作業指示および作業結果が記載されている。作業指示はワークフロー実行部１０４により記載されるが、図では詳細は省略しＡ２と示した。作業指示は、ワークフローおよび、ジョブチケットに記載された前の工程の作業結果を基に記載される。作業指示の内容としては、「両面くるみ製本」であることおよびその詳細を示すパラメータが記述されている。これはたとえば、ワークフロー実行部１０４が、印刷およびフィニッシングのアクティビティを読み、面付けのパラメータとして、それをジョブチケットに記載することで実現される。面付けでは、その後の印刷やフィニッシング処理のためにページ順の調整も行う。たとえば、印刷エンジン１１０は入力される面付け後のページ順序で印刷済み用紙を出力する。フィニッシャは、給紙台に載置された印刷済み出力用紙を、その装置に固有の順序で取り込みフィニッシング処理する。そこで、フィニッシャが正しく１部ずつ製本できるように、印刷出力されるページ順序は決定されるべきであり、面付け処理後のページ配置もそれに合わせて決められる。このようなページ順序の決定は、たとえば面付けアプリケーションが、ジョブチケットに記載されたパラメータとして、両面くるみ製本が行われること、および製本の単位となる枚数等をワークフロー実行部から受け取ることで実現される。
【００４５】
また作業結果は、処理を行ったデバイスにより図５のようにジョブチケットに記載される。工程２の作業結果について説明する。工程２は工程１と同じく本例では問題（障害）なく終了している。面付けの結果としてＡ３用紙を使用したくるみ製本のための面付けが１アップ（シート１ページにつき入稿された１ページが配置される）で行われている。また工程２の処理は担当者「yamanaka」が行ったことが記述されている。またくるみ製本の表紙カバーには厚紙１の用紙を使用するという記載もある。これはたとえば、面付け処理時にカバーまで含めた面付けが行われた場合などに記載される。また出力部数は１０部、印刷枚数は１２０枚である。これはたとえば、印刷エンジンにより印刷させた場合の出力順序をフィニッシャによる処理順序に整合させるために、面付けアプリケーションが全出力ページを生成する必要がある場合等に、処理結果として記載される。図５の例では、１２枚のくるみ印刷を１０部出力し、総計１２０枚印刷することを示している。なお、総ページ数の代わりに、部数と共に１部あたりのページ数を記述しても良い。また、＜開始時間＞および＜終了時間＞欄は工程２には記されていないが必要に応じてセットされる。このように工程２ではその処理結果として、少なくとも、面付け後のページ数がジョブチケットに追加される。もちろん図５のようにそのほかの情報が追加される場合もある。
【００４６】
領域５０４は工程３の処理結果を示している。デバイス名欄５０４にはデバイス名「ＡＢＣＤ」が記載されている。また出力ページ欄５０５には、分割が工程３で行われたことを示す工程の識別番号「３」と、出力が完了した部分が前半部分であることを示す「１／２」という識別子とをつなげた「３−１／２」と、印刷済みページ数「５０」が記載されている。割符パスワード５０６は、ジョブチケットを分割した際に各々のジョブチケットに同一のパスワードが挿入される。本例では工程３で分割が発生したため割符パスワードが工程３の要素として記載されている。その値は「a3$DtGh)」であるが、固有性があればどのようなものであってもよい。未出力ジョブ情報欄５０６には、分割が工程３で行われたことを示す工程の識別番号「３」と、出力が完了した部分が後半部分であることを示す「２／２」という識別子とをつなげた「３−２／２」と、未印刷済みページ数「７０」が記載されている。これにより７０枚が未出力であることが示されている。未処理の工程を示す欄５０７及び欄５０８には処理結果の記録が何も残されていない。欄５０９はジョブの終了を示すマークであり、分割後のジョブ名も記載されている。このように工程３ではその処理結果として、少なくとも、デバイス名と、出力ページ数とがジョブチケットに追加される。もちろん、未処理部分が残れば、出力ページ数に加えて未処理ページ数も追加される。なお、図５では出力ページとして５０枚、未出力ページとして７０枚と記述されているが、出力ページ１〜５０ページ、未出力ページ５１〜１２０ページと記述しても良い。
【００４７】
また図５のジョブチケット４０１の工程４にフィニッシャにて実行すべき処理内容を記述したジョブチケットは、工程４のフィニッシング処理のためフィニッシャに送られる。そのため、ワークフロー実行部１０４は、工程３のデバイスが処理結果を記述したジョブチケットを受信すると、ジョブチケットの分割処理を行うべきと判定し、次工程のフィニッシャにより実行される処理のパラメータを記載する。例えば、図５のジョブチケット４０１の場合、ワークフロー実行部１０４は、１〜５０ページまでは印刷が終了していると判定できる。そして、ジョブチケット４０１は、１２枚のくるみ印刷を１０部出力し、総計１２０枚印刷することを示している。よって、ワークフロー実行部１０４は、出力物１〜５０のうち、１２ページ単位で「くるみ製本」を実行すべきとの内容を記述したジョブチケットを生成する。
【００４８】
図６はジョブチケット４０２の構成例の図である。ジョブ名６０１からは工程３で分割された後方のジョブであることが分かる。割り符パスワード６０２は、図５のパスワード５０５と同様の割符パスワード、符号６０３はジョブの終了マークである。ジョブ名以外は、図５と同様の内容を有している。ジョブ名６０１は、上述した規則に従って、「３６１２１２−１−２−３−２／２」となっている。このジョブ名は、元ジョブ名「３６１２１２」に含まれる工程１、２（アクティビティＡ１，Ａ２のこと）は成功したこと（「−１−２」で示される）が含まれている。さらにこのジョブ名には、工程３（アクティビティＡ３のこと）で２分割されたこと、本ジョブはそのうちの後半のジョブであること（「−３−２／２」で示される）を示している。また図６のジョブチケット４０２は、工程３の印刷処理のため印刷エンジン１１１に送られるものであるので、ジョブチケット発生部１０３は、フィニッシャにより実行される処理のパラメータを記載しない。つまり、工程３の印刷処理を実行するデバイスは、ジョブチケット４０２より、未出力ページの７０枚（５１〜１２０ページ）が印刷処理の対象ページであると認識できる。
【００４９】
＜ジョブチケットの結合＞
次に本発明によるジョブを結合する処理に関して説明する。分割されたジョブは、分割された各ジョブチケットに係る処理が同じ工程まで進んだ際に、結合することができる。また、結合しなければ次の工程が行えない場合もある。
【００５０】
図７は本発明によるジョブチケットの結合を説明するためのシステム概要図である。図７において、ジョブチケット７０１は、エンジン復旧後に印刷が終了したジョブおよびジョブチケットである。ジョブチケット７０２は、エンジン復旧後に印刷された部分を次の処理工程（フィニッシング）に進めたジョブのジョブチケットであり、まだ次のフィニッシング処理が開始されていない。本例では、フィニッシング処理では、１２枚を１部とする「くるみ製本」を１０部分実行する。
【００５１】
一方ジョブチケット４０１は、次のフィニッシング工程においてさらに２分割されている。工程４のフィニッシング処理は、本例では製本処理を含んでおり、１部単位でしか実行できないためである。１部に満たない半端な部分は、残りの部分の印刷が完了し、そこと合わせて初めて製本され得る。そのため、ジョブチケット４０１は、製本された部分に対応するジョブチケット７０３と、製本されていない部分に対応するジョブチケット７０４とに分割されている。たとえば図５の記述によれば、ジョブチケット４０１により、印刷済みの５０ページがフィニッシャの処理に渡される。フィニッシャでは１２枚ごとのフィニッシング（製本）が行われるので、４部製本を作成すると２枚のあまりが発生する。そこで、フィニッシングが完了した４８ページと、未完了の２ページとにジョブが分割される。ジョブチケット４０１は、ジョブの分割のために、フィニッシングの工程が完了したジョブチケット７０３と、フィニッシングの工程が未完了のジョブチケット７０４とに分割される。そして、ジョブチケット７０４は、印刷エンジンの復旧後に印刷が完了したジョブのジョブチケット７０２と結合され、フィニッシング処理のためにフィニッシャ１１１２に対して発行される。結合はワークフロー実行部１０４で行われる。これにより、この後の工程作業の自動化が図れ、データが扱いやすくなる。
【００５２】
図８はジョブチケット７０４と、ジョブチケット７０２の構成例の図である。すなわち、いずれもフィニッシャに対して送信されるジョブチケットの図である。したがって、工程Ａ４における処理結果は記述されていない。また工程Ａ２以前は省略されている（これは図９，図１７も同様）。ジョブチケット８０１はジョブチケット７０４の内容の例を示す図である。作業工程Ａ４で分割されたジョブチケットは、元ジョブ名が「361212-1-2-3-1/2」である。したがって前述の名前付けルールに従い、元ジョブ名に「-4/2/2」が付加された「361212-1-2-3-1/2-4/2/2」がジョブチケット７０４のジョブ名となる。これにより工程Ａ３による分割ジョブの前半のジョブを、さらに工程Ａ４で分割したその後半に相当することが示されている。また、工程Ａ４の＜未出力ジョブ＞の値が「4-2/2 2枚」となっていることから、本ジョブチケットが指し示すジョブの工程Ａ４は、２枚の未処理ジョブを対象とすることがわかる。
【００５３】
ジョブチケット８０２はジョブチケット７０２の構成例の図である。ジョブ名「361212-1-2-3-2/2」から作業工程Ａ３で分割が行われた後半のジョブであることを示している。また、工程Ａ４の＜処理ページ＞の値が「70枚」となっていることから、本ジョブチケットが指し示すジョブの工程Ａ４における７０枚を対象とすることがわかる。これらは、フィニッシャ１１１によりジョブチケットの該当箇所（すなわちデバイス名としてフィニッシャ名が記述された工程の領域）が読み取られ、「未処理ジョブ」欄の値から判断される。
【００５４】
図９は、ジョブチケット９０１はジョブチケット７０２とジョブチケット７０４とが結合された後のジョブチケットの構成図を示している。ジョブチケット９０２ではジョブ名「361212-1-2-3-1/2-4/2/2」の次にSubJobName「361212-1-2-3-2/2」が追加され、ジョブ結合されたことがわかる。作業工程Ａ４の処理ページが加算の結果７２枚となっている。結合後にニアラインフィニッシャの処理に進むことができる。加算の対象は、結合されるジョブチケットそれぞれの工程Ａ４において処理すべきページ数である。すなわちジョブチケット「361212-1-2-3-2/2」の工程Ａ４の＜処理ページ＞の値７０と、ジョブチケット「361212-1-2-3-1/2-4/2/2」の工程Ａ４の＜未出力ジョブ＞の値２とが加算される。結合の条件は後で説明する。
【００５５】
図１７に結合されたジョブチケット９０１を受信して処理した後のジョブチケットの例を示す。このジョブチケット１７０１が、ワークフロー実行部１０４に送信される。工程Ａ４の処理の処理結果がジョブチケットの欄１７０２に示されている。処理前のジョブチケット（図９）に比べて、処理済みページ数や部数、作業者、作業内容といった結果が、フィニッシャ１１２によって表示欄１７０２に記述されている。
【００５６】
＜ワークフロー実行手順＞
図１５は、ワークフロー実行部１０４によるワークフロー実行手順のフロチャートである。ワークフロー実行部１０４が各処理工程と随時通信処理を行い、処理工程の終了に応じて次工程のためのジョブチケットを発行する。ワークフロー実行部１０４でジョブチケットを発行し、ワークフローを進める際のサーバ部１０４のフローチャートである。なお、図１５のフローチャートにおける各ステップは、サーバ部のＣＰＵによって実行される。つまり、複数の処理工程の処理順序を定義したワークフロー情報および各処理工程を実行すべきデバイス情報を管理し、ワークフロー情報に従って印刷ジョブを実行させるためのジョブチケットを生成する情報処理装置（例えばサーバ部１００）の処理である。なお、情報処理装置に保持されている実行可能なプログラムであってもよい。
【００５７】
Ｓ１５０１はワークフロー実行部１０４が、ワークフロー管理部１０８にて管理されているワークフローをメモリ上に展開する処理である。Ｓ１５０２は、ジョブチケット（ＪＴ）発生部１０３がジョブチケットを生成するステップである。なお、Ｓ１５０２にてＪＴ発生部１０３は、Ｓ１５０１にて展開されたワークフローや取得したオーダ情報に基づいて図３で示したようなジョブチケットを生成する。また、図３で示したようなジョブチケットに限ることは無く、次の処理工程にて必要となる処理内容が記述されているジョブチケットを生成するようにしても構わない。Ｓ１５０３は、ワークフロー実行部１０４がワークフローの終了か否かを判定するステップである。ワークフロー実行部１０４は、実行するアクティビティがなくなった場合にＹｅｓと判定して、処理を終了する。
【００５８】
Ｓ１５０４は、ワークフロー実行部１０４が次のアクティビティの実行を開始するステップである。例えば、各アクティビティにおいて処理を実行するデバイスは、処理結果を図５のジョブチケット４０１のように記述する際に、アクティビティごとに処理の終了を示す情報を付加しても良い。ここで、処理工程が５つあるのに対し、アクティビティの処理の終了を示す情報が２つしかないとすれば、ワークフロー実行部１０４は、次のアクティビティは３つめの工程であると判定できる。そして、Ｓ１５０４の具体的な処理としては、次に実行すべきと判定されたアクティビティの担当デバイスが処理すべき内容を記述したジョブチケットを生成する処理である。Ｓ１５０５は、ワークフロー実行部１０４がＳ１５０４で開始されたアクティビティを実行するＰＣやデバイス等を選択するステップである。本ステップで、ワークフロー実行部１０４は入稿アプリ１０９からニアラインフィニッシャ部１１２などのＰＣまたはデバイスに対して、処理内容を記述したジョブチケットを送信して、処理の実行を指示する。Ｓ１５０６は、ワークフロー実行部１０４がＰＣやデバイスからの処理結果を待つステップであり、結果通知があるまで待ちつづける。つまり、ワークフロー実行部１０４は、複数の処理工程におけるいずれかの着目処理工程の処理状況を該着目処理工程の処理を実行するデバイス（ジョブ処理装置ともいう）から受信する。Ｓ１５０７は、ワークフロー実行部１０４が、ＰＣまたはデバイスから処理結果の通知を受信して、処理結果を解析するステップである。詳細には、処理結果は各処理工程のデバイス等によって図５のようにジョブチケットに記述されている。よって、ワークフロー実行部１０４は、各処理工程のデバイスから取得したジョブチケットを参照することで処理結果を解析することができる。Ｓ１５０８は、ワークフロー実行部１０４がジョブチケットを再構成するステップである。具体的にはアクティビティの処理を担当するデバイスから送信された処理結果に基づいて、図３で示したジョブチケットを図５のように各ステップの情報を追加するステップである。
【００５９】
Ｓ１５０９は、ワークフロー実行部１０４が、Ｓ１５０７で解析した結果を正常か否か判定するステップである。ワークフロー実行部１０４は、各アクティビティの処理を担当するデバイスから受信した処理結果の記述されたジョブチケットに未処理部分があるかないかを判定する。ここで、未処理部分がないと判定した場合、正常と判定され、ワークフロー実行部１０４は、Ｓ１５０３へと処理を進める。また、Ｓ１５０９において、未処理部分があると判定された場合、ワークフロー実行部１０４は、異常と判定して、Ｓ１５１０へ進む。Ｓ１５１０はワークフロー実行部１０４が部分的な継続が可能か否かを判定するステップである。つまり、ワークフロー実行部１０４は、Ｓ１５０６にて受信された着目処理工程の処理状況がジョブチケット分割条件に一致するかをＳ１５０９にて判定する。そして、ワークフロー実行部１０４は、Ｓ１５０６にて受信した処理状況に基づいて印刷ジョブにおける処理済み部分と印刷ジョブにおける未処理部分とを認識する。つづいて、ワークフロー実行部１０４は、異常中断した場合に印刷済みなどの処理済部がある場合に部分的に次のステップに進められか否かが判定される。なお、ジョブチケット分割条件とは、受信された着目処理工程の処理状況が、着目処理工程における処理の中断をもたらす事象を示す情報である。
【００６０】
具体的には、オーダ情報や次工程の処理内容に基づき判定される。たとえば、図５のジョブチケット４０１を例にすると、１２枚単位で１０部の包み製本を実行することが示されている。これに対し、印刷処理工程では５０ページまで印刷済みとなっているので次工程の１２枚単位でくるみ製本処理を４部分行うことができる。しかしながら、印刷済みページ数が例えば６枚であると判定された場合、次の工程に処理を進めてもくるみ製本は、１２枚単位で行うため、実行することができない。このような場合、ワークフロー実行部１０４は、Ｓ１５１０において継続処理は不可と判定する。なお、このように、着目処理工程の次工程における処理の単位に満たない端数部分の発生の事象を後述する未処理部分を残すような事象ともいう。
【００６１】
Ｓ１５１１はワークフロー実行部１０４がＳ１５０９で異常と判定した際にその異常が解除されるのを待つステップである。異常の解除が行われるとＳ１５１２へ進み異常解除後の処理を行う。具体的には、異常解除情報を受信すると、ワークフロー実行部１０４は、異常解除後の処理内容を記述したジョブチケットを生成して、発行する。具体的には、Ｓ１５１１とＳ１５１２をＡ３のエンジン処理に当てはめたのがＳ１３１１からＳ１３１４のステップである。Ｓ１５１３は１０４部による継続用処理である。継続用処理とは、ワークフロー実行部１０４が、Ｓ１５１０にて継続可能と判定した部分用に次工程ようにジョブチケットを生成して発行する処理である。つまり、ワークフロー実行部１０４は、Ｓ１５１０の処理により認識した処理済み部分を次工程にて処理するために、処理済み部分における次工程の処理パラメータを記述した第１ジョブチケットを生成する。そして、ワークフロー実行部１０４は、生成された第１ジョブチケットを次工程の処理を実行するデバイスに引き渡す。さらに継続用処理は、以下の処理についても実行する。ワークフロー実行部１０４は、着目処理工程において未処理部分を残すような事象が発生した場合、着目処理工程における処理状況に基づき、処理済み部分は次工程に進められるように次工程用の処理パラメータを記述した第１ジョブチケットを分割生成する。なお、未処理部分を残すような事象の一例は、印刷工程におけるエラーなどが挙げられる。
【００６２】
さらに、ワークフロー実行部１０４は、着目処理工程にて未処理部分の処理を実行することができるように、未処理部分における着目処理工程用の処理のパラメータを記述した第２ジョブチケット（図６のジョブチケット４０２に相当）を分割生成する。図１３のＳ１３０４からＳ１３１０のような部分的な実行と未処理部の完了まち処理を実行するものである。
【００６３】
このように、図１５のフローチャートでは、ワークフローにおける処理が正常終了しなかった場合、継続処理が可能か否かを判定する。そして、継続処理が可能と判定された場合、継続処理部分については継続処理を行い、異常解除後に、継続処理が不可と判定された部分の処理を行うため、効率的に処理を進めることが可能である。本例ではワークフロー実行部１０４を備えるサーバ部でジョブチケットを生成してアクティビティを実行するパソコンやデバイスにジョブチケットを用いて実行指示を行っている。しかし、サーバなしの構成で、デバイス、PCなどが連携してジョブチケット分割送付することも可能である。また、本願ではプリンタにてエラーが発生した場合を例として説明しているが、それ以外の処理エラーに対しても適用可能である。例えば、ニアラインフィニッシャ部においてステイプル機能を有した綴じ部であって、ステイプルの針が切れてしまった場合を想定する。この場合、ステイプルにて綴じ処理が終了している部に関しては、次の工程に進み、未処理部分用にジョブチケットを生成することにより、効率的に処理を進めることが可能となる。
【００６４】
次に図１３で、ワークフロー実行部１０４の処理フローに関して、印刷工程を例にとって具体的に説明する。図１３は、上述したように、図１５の処理の一部に該当する。図１３全体としては、図１５のステップＳ１５０４からステップＳ１５１３に相当する。図１３のフローは処理工程２０３の印刷工程を例としており、その処理の開始時点から始まる。もちろん他の処理工程についても同様である。ただし、図１３中、ステップＳ１３１３やステップＳ１３０９の「全印刷？」という工程は、各処理工程における処理を完了したか否かの判定に置換されるべきである。また、ステップＳ１３０２、ステップＳ１３０３の判定も処理工程毎に異なる基準で行われる。
【００６５】
図１３において、ステップＳ１３０１は、ワークフロー実行部１０４が、エンジン部１１１へ出力を依頼する処理である。具体的には、図５のジョブチケット４０１のうち、工程Ａ３における処理結果５０４〜５０６の記述を除いたものが、ステップＳ１３０１で生成されてエンジン部１１１へ送信される。もちろんエンジン部１１１への指示は、その前の処理工程Ａ２における処理結果に基づいて記述されている。たとえば、処理工程Ａ２における出力サイズはＡ３であり、枚数は１２０枚であり、両面に面付けされている。そこで、ワークフロー実行部では、印刷に必要なパラメータのうち、処理工程Ａ２の処理結果に含まれる項目を読み、それを処理工程Ａ３のパラメータとしてジョブチケットに書き込む。なお、印刷データは、ＭＩＳ２１０から渡しても良いし、図５には図示していないが、その在処とファイル名とを工程Ａ２の処理結果として記載し、それを参照してジョブチケットにデータの所在を記載しても良い。
【００６６】
続いて、ワークフロー実行部１０４は、エンジン部１１１から返信されるジョブチケットを受信する。そしてステップＳ１３０２において、ワークフロー実行部１０４はジョブを分割する原因が生じたか否かをジョブチケットを参照して判定する。分割の原因は、処理中の工程（着目処理工程）ごとに判定される。一般化すると、ジョブ（ワークフロー）を処理途中で停止させる事態が生じると、ジョブを分割する原因があると判定できる。たとえば印刷処理工程の場合、エンジン１１１で障害等の問題が発生したかが判定される。つまり、ワークフロー実行部１０４は、返送されたジョブチケットに記述されている処理結果に未出力ジョブが含まれているか否かを判定する。また、たとえば、後処理工程の場合、ワークフロー実行部１０４は、返送されたジョブチケットに記述されている出力ページ数から後処理の単位（たとえば１部）となるページがすべて揃っているかを判定する。後処理の単位に満たない部分（ページ）がある場合、ジョブチケット実行部１０４は、その部分を独立したジョブとして分割する原因があると判断する。分割の原因がある（たとえばエンジン部１１１で問題あり）と判定されると、ステップＳ１３０３へ進みジョブの分割を行うか否かが判定される。分割の原因がなければステップＳ１３１４へ進む。
【００６７】
ステップＳ１３０３の判定は、分割の原因がある場合に、着目ジョブが分割に適するか判定する処理である。たとえば分割の原因がエンジンの障害である場合、「印刷済みページ数」、「印刷済みページの全体に占める割合」、「後工程の種類」、「エンジンの障害の種類」等によって自動的に決められる。たとえば１２枚のくるみ製本を１０部製本する例において、印刷から製本へ渡す際に、正常に工程Ａ３が完了すれば、１２０枚の印刷物を出力することになる。ところが印刷が最初の１５枚だけで終了した際には、その１５枚だけ製本工程に渡せば１部の製本を作り上げることはできる。すなわち、ジョブを分割することができる。一方、たとえば最初の９枚しか出力されなかった場合には、その９枚では製本はできない。すなわちジョブを分割することはできない。この場合は、ジョブを分割しても次工程の後処理工程にて処理を実行することができないので、分割を行う必要はないと判定される。このように、Ｓ１３０３において、ワークフロー実行部１０４は、ジョブチケットに記述されている処理結果の情報に基づいて分割を行う必要があるか否かを判断する。
【００６８】
ステップＳ１３０３における判定の基準の例には以下のようなものがある。
（１）印刷済みページ数：後工程（たとえばフィニッシング工程）の処理単位（上の例では１２枚）が少なくとも１組揃っているか否か。揃っていなければ分割はしない。これは単にページ数だけではなく、先頭ページと末尾ページとを含むことも条件となる。
（２）印刷済みページ数の割合：出力ページ数が、出力すべきページ数のうち一定率以上であるか。なければ分割しない。たとえば全体の１０％以上の出力があれば次の工程の作業が始められる場合などのように、割合で指定ができるとき、その割合分の出力が終わっているか否かを判定する。
（３）後工程の種類：たとえば、次の後処理工程が全頁の一括箱づめ作業であれば全頁が揃わないと渡しても意味がない。このように後工程の種類が、分割しても意味があるものなのかどうかが判定される。
（４）エンジン障害：たとえば次の工程が製本であるがその製本機がトラブル中であり、他に代替機も存在しないときには、ジョブを分割しても処理は進まないので分割の意味がない。このように分割後の代替機が存在するか否かを判定する。
【００６９】
以上の基準は、印刷処理における判定基準の例である。この判定基準は、たとえば表化されてメモリ等に保存され参照されて判定基準とされる。なお、これらの判定基準は予めオペレータ等によって設定されても良い。
【００７０】
さて、ワークフロー実行部１０４が、ジョブの分割を行うと判定するとステップＳ１３０４へ進む。ステップＳ１３０４では、ワークフロー実行部１０４が、元ジョブのジョブチケットを、次の工程に進めるべきジョブのジョブチケットと分割の原因が発生した工程にとどめるジョブのジョブチケット（例えば図６）に分割する。つまり、ワークフロー実行部１０４が、デバイスから受信した処理結果が記述されたジョブチケットに基づいて、処理済み部分用のジョブチケットと未出力部分用のジョブチケットを作成する。
【００７１】
ステップＳ１３０５では、未出力部のジョブを保留状態にして、エンジンの復旧とともに印刷を開始できる状態としておく。すなわち、ワークフロー実行部１０４が、未出力部分に相当する分割後のジョブチケットを、ジョブチケット管理部１０５に保存し、エンジンの復旧を待つ。ステップＳ１３０６では、ワークフロー実行部１０４が、分割されたジョブのうち、印刷処理済み部分に対応するジョブの処理完了後に、印刷エンジン１１１からジョブチケットを受信し、次の処理工程Ａ４のためのジョブチケット４０３を生成する。そして、ワークフロー実行部１０４は、そのジョブチケット４０３を工程Ａ４の実行主体たとえばフィニッシャ１１２へ送信する。これによって、処理をフィニッシング処理工程へ移行させる。このジョブチケットを受信したフィニッシャ１１２は、工程Ａ４のために記載されたパラメータにしたがって、後処理を実行する。
【００７２】
ステップＳ１３０７は、エンジンの復旧を待つステップである。エンジンが復旧するとステップＳ１３０８へ進み、ワークフロー実行部１０４は、ステップＳ１３０５で保留したジョブチケット４０２を印刷エンジン１１１に送信する。なお、エンジンの状態情報は、ワークフロー実行部１０４に送信される。ワークフロー実行部１０４が、エンジンの状態情報から復帰したと判定した場合、未出力用のジョブチケット４０２をジョブチケット管理部から取り出して、送信する。これにより保留されていた未出力分の印刷ジョブが開始される。なお、ステップＳ１３０７、ステップＳ１３０８は、説明の便宜上ステップＳ１３０６の直後に位置しているが、それらステップとは非同期に実行しても良い。ステップＳ１３０９は全ての印刷が終了したか判定するステップである。
【００７３】
ステップＳ１３１０は、ステップＳ１３０８で処理が完了したジョブを後処理（Ａ４）工程へ進めるステップである。すなわち、ワークフロー実行部１０４は、ステップＳ１３０８による印刷が完了した際に、印刷エンジンから処理結果を記載したジョブチケットを受信する。そして、ジョブチケット発生部１０３は、ワークフローおよび受信したジョブチケットを基に、後処理（Ａ４）工程のためのジョブチケット（図４には不図示）を生成する。ワークフロー実行部１０４は、生成されたジョブチケットを、後処理工程を行うフィニッシャ１１２に送信する。
【００７４】
一方ステップＳ１３１１は、ジョブ分割しないと判定された際に、元ジョブ全体について、ジョブを停止させている原因の解除、たとえばエンジンの復旧を待つステップである。エンジンが復旧するとステップＳ１３１２へ進み、未出力部を印刷する。印刷エンジン１１１は、ジョブチケットをワークフロー実行部１０４に返信せずに復旧を待っても良い。あるいは、印刷エンジン１１１は、障害が発生したなら、処理を停止させて処理済み部分と未処理部分とを処理結果として記載したジョブチケットをワークフロー制御部１０４に送信してもよい。この場合、ワークフロー制御部１０４は、障害から復旧した印刷エンジン部１１１に対して、あらためて印刷処理工程を指示するジョブチケットを送信する。送信されるジョブチケットは、印刷エンジン部１１１から受信したジョブチケットと同じ内容を持つ。印刷エンジン部１１１は、受信したジョブチケットに記載された処理工程Ａ３のパラメータを参照し、＜出力ページ＞に該当するページをスキップし、＜未出力ジョブ＞に該当する部分を印刷処理する。
【００７５】
ステップＳ１３１３は全ての印刷が終了したかを判定する。印刷が終了するとステップＳ１３１４へ進み、ジョブをまとめてＡ４ステップへ進める。ここでも、ジョブチケット発生部１０３は、ジョブ全体についての後処理工程Ａ４のためのパラメータを記述したジョブチケットを作成し、それをフィニッシャ１１２に送信する。
【００７６】
図１８にジョブチケット分割処理の一例を示す。まず、ジョブチケット発生部１０３は、元ジョブのジョブチケットを分割する数だけ複製する（Ｓ１８０１）。そして、ジョブチケット発生部１０３は、それぞれのジョブチケットの元ジョブ名称の欄に元ジョブの名称を複製し、ジョブ名として、図５等で説明した規則に従い、各ジョブチケットに固有の名称を記述する（Ｓ１８０２）。さらにその後、ジョブチケット発生部１０３は、各ジョブチケットが送信されるデバイスのために、該当する工程の欄に指示（処理パラメータ）が記述される。
【００７７】
＜ジョブチケットの結合＞
図１０は、ジョブチケットの結合を行う際のパネル表示例図である。この表示は、各デバイスにおいて実行されるジョブチケット処理プログラムにより行われる。たとえば、オペレータが、ジョブの結合を指示する入力を行うと、それに応じて図１０のウインドウ１００１が表示される。表示されるデバイスはたとえばニアラインフィニッシャ１１２である。もちろん、ジョブの結合が行われるデバイスであれば、同様に表示される。
【００７８】
ウインドウ１００１はジョブチケット入力指示画面の例である。表示領域１００５はシステムからのメッセージを表示するための領域である。領域１００６はユーザが結合したいジョブチケットを入力するテキスト入力領域である。ボタン１００７はジョブチケットを参照検索する際に使用する参照ボタンである。例えば、ワークフロー実行部１０４から送信されたジョブチケットは、デバイスの記憶手段に記憶されているので、ユーザが参照ボタン１０７を指示することにより、記憶されているジョブチケット情報が一覧表示される。または、参照ボタンを押すことで、ＭＩＳからジョブチケット情報を取得して、表示しても良い。ボタン１００８はジョブチケットの結合を実行する実行ボタンである。ボタン１００９は結合する２個目以上のジョブチケットを指定するための結合ボタンである。ボタン１０１０は本ジョブチケットの結合表示から抜けるためのキャンセルボタンである。
【００７９】
ウインドウ１００２は、第１のジョブチケット名をユーザが指定した状態の表示である。この状態でユーザは結合ボタンを押下できる。結合ボタンを押すと、第２のジョブチケット名を入力できる。ウインドウ１００３は第２のジョブチケット名を指定した状態の画面である。ユーザはこの状態で実行ボタンを押下できる。実行ボタンが押されると、パスワードが入力できる。ウインドウ１００４は、結合用のパスワード（割り符パスワード）をユーザが入力して実行ボタンを押下する際の表示である。ウインドウ１００４において実行ボタンを押下することで、図１０の要領で入力された、結合しようとするジョブチケットの名称等の情報がワークフロー実行部１０４に送信される。ワークフロー実行部１０４は指定されたジョブチケットを図１４の要領で結合する。
【００８０】
図１２は、各処理工程のために生成されるジョブチケットの例を示した図である。ジョブチケット１２０１は本例の作業工程Ａ１を実行する際のジョブチケット、ジョブチケット１２０２は工程Ａ２でのジョブチケットである。特に分割も発生していないためジョブチケットは1つである。その後工程Ａ３へ進み、そこで分割が発生する。これはジョブチケット２０６からジョブチケット４０１、ジョブチケット４０２へ分割されたことを示している。図１２では、ジョブチケット１２０３がジョブチケット１２０４とジョブチケット１２０７とに分割されている。その後ジョブチケット１２０４は、さらにジョブチケット１２０５とジョブチケット１２０６とに分割されている。ジョブチケット１２０６はジョブチケット７０４を示している。図１２において、ジョブチケット１２０６には、３６１２１２−１−２−３−１／２−４−２／２と記述されている。つまり、ジョブチケット１２０６は、ジョブチケット名称が「３６１２１２」であり、３つ目の工程における前半部分であり、４つ目の工程における後半部分であることが示されている。そして、ジョブチケット１２０７には、３６１２１２−１−２−３−２／２と記述されている。つまり、ジョブチケット１２０７は、ジョブチケット名称が「３６１２１２」であり、３つ目の工程における後半部分であることが示されている。よって、ジョブチケット１２０６とジョブチケット１２０７に対応するジョブにはページの連続性がある。よって結合が可能である。図１９を用いてさらに詳細に説明する。
【００８１】
図１９は、あるアクティビティのためのジョブチケットを結合してからそのアクティビティを実行するための手順である。図１９では、ステップＳ１９０１およびステップＳ１９０２はフィニッシャ等のデバイスで、ステップＳ１９０３以降はワークフロー実行部で行われる。まず、図１０のユーザインターフェースにより、デバイスは、処理対象となる入力されたジョブ名称を認識する（ステップＳ１９０１）。その際、結合があれば結合ボタンの操作により、デバイスは、結合処理が指示され、結合対象となる入力されたジョブチケット名称を認識する（ステップＳ１９０２）。
【００８２】
デバイスで入力されたパラメータは、ワークフロー実行部１０４に送信される。ワークフロー実行部は、複数のジョブ名称が指定されているか判定する（ステップＳ１９０３）。指定されたジョブ名称が一つであれば、ジョブチケット発生部１０３が指定されたジョブに対応するジョブチケットに対して、当該デバイスにおける処理のパラメータを書き込む。そしてワークフロー実行部１０４が、それを当該デバイスに送信する（ステップＳ１９０８）。
【００８３】
一方、複数のジョブチケットが指定されている場合、ワークフロー実行部１０４は、まず結合検証処理を行う（ステップＳ１９０４）。なお、結合検証処理は上述した通り、ジョブ名称の一致とページの連続性を判定する。詳細については、図１４を用いて説明する。その結果結合可能であるか判定し（ステップＳ１９０５）、結合可能であれば、ワークフロー実行部１０４は、ジョブチケット名とともに受信した割り符パスワードと、結合対象のジョブチケットに記載された割り符パスワードとを照合する（ステップＳ１９０６）。つまり、Ｓ１９０５では、ワークフロー実行部１０４が、着目処理工程から先に進めたジョブチケットに基づくジョブチケットおよび印刷ジョブにおける未処理部分に関する着目処理工程のジョブチケット内にパスワードを記述する。そして、ワークフロー実行部１０４は、ジョブチケットの結合時に、このパスワードに基づいて結合処理が可能か否かを判定する。
【００８４】
照合が成功すれば、ワークフロー実行部１０４は、ステップＳ１９０７において指定されたジョブチケットを結合する。具体的には、結合される第１のジョブチケットのサブジョブ名として、結合される第２のジョブチケットのジョブ名を記述する。そして結合したジョブチケットに、次の工程に対するパラメータを記述する。ステップＳ１９０８では、ワークフロー実行部１０４が、結合したジョブチケットを当該工程を実行するデバイスに送信する。最後にそのデバイスにおいて、処理が実行される（Ｓ１９０９）。
【００８５】
一方ステップＳ１９０６で照合が不成功だった場合には、結合処理は終了する。ジョブチケットを結合できなかった旨を、結合の操作が行われたデバイスに通知しても良い。
【００８６】
つまり、ワークフロー実行部１０４は、印刷ジョブの未処理部分に関するジョブチケットを、着目処理工程における未処理部分の処理の完了後に、着目処理工程の次工程以降の処理のために、次工程に進めたジョブチケットに基づくジョブチケットと結合する。
図１４は、ジョブチケットの結合可能判定（Ｓ１９０４）のフローチャートである。図１４は、図１０のユーザインターフェースから入力されたパラメータを基に、ワークフロー実行部１０４により実行される。図１４では、例えばジョブＡとジョブＢの２つのジョブのジョブチケットが結合可能か否かを判定するフローとしている。当然、３つ以上のジョブのジョブチケットの結合可否についても判定可能である。
【００８７】
ステップＳ１４０１において、ワークフロー実行部１０４は、ユーザによって指定されたジョブＡの分割工程を検索するステップである。分割工程とは図１１でいうところの工程３および工程４がそれにあたる。この分割工程は入力されたジョブ名から探索できる。ジョブ名のうち、「１／２」といった分数形式の識別子に先立つ工程が、分割工程と判定できる。例えば、入力された名称が「―３−１／２」であれば、３つ目の工程が分割工程であると認識される。ステップＳ１４０２は、ワークフロー実行部１０４が、ジョブＢの分割工程を検索するステップである。なお、検索方法はＳ１４０１と同様である。ステップＳ１４０３では、ワークフロー実行部１０４が、前頁を含むジョブを決定する。例えば、Ｓ１４０１およびＳ１４０２にて検索された同じ分割工程の後に記述された分数形式の識別子の分子に記述された値を用いて実行する。つまり、３つ目の工程の後に記述された分数形式の識別子を判定する。もし、２分割されていれば、前側のページが含まれているジョブと、後側のページが含まれているジョブとを決定する。この決定は、分割工程の後に続く分数形式の識別子の分子が「１」となっているジョブ名が先頁を含むジョブであると決定される。つまり、分数形式における分子の値がジョブチケット順序を示す。たとえば図１２でのジョブチケット１２０６とジョブチケット１２０７では、ジョブチケット１２０６が前のページを含んでいる。工程Ａ３で分割したほうの前方を含んでいるのがジョブ名から判断できる。
【００８８】
ステップＳ１４０４は、ステップＳ１４０３で前方のページを含むジョブと判定されたジョブが、分割された時点における最終ページを含んでいるか否かの判定ステップである。ジョブチケット１２０６とジョブチケット１２０７の例では、ワークフロー実行部が、第３工程の分割における前方側の最終ページ（処理済みとなっているページ群の最終ページ）がジョブチケット１２０６に含まれるかをジョブチケット１２０６から判定する。ステップＳ１４０５は、ステップＳ１４０３で後方のページを含むジョブと判定されたジョブが、分割時点での先頭ページを含んでいるか否かを判定するステップである。ジョブチケット１２０６とジョブチケット１２０７では、ワークフロー実行部が、第３工程の分割における後方側の先頭ページ（つまり、未処理となっているページ群の先頭ページ）がジョブチケット１２０７に含まれるかをジョブチケット１２０７から判定する。
【００８９】
ステップＳ１４０６は結合可能と判定するステップ、Ｓ１４０７は結合不能と判定するステップである。ステップＳ１４０４およびステップＳ１４０５の両者においてＹｅｓと判定された場合、前ページを含むジョブと後ページを含むジョブは、ページの連続性があると判定される。そのため、ワークフロー実行部は、図１０のＵＩにて指定された複数のジョブチケットの結合が可能であると判定する（Ｓ１４０６）。つまり、ワークフロー実行部１０４は、ジョブチケットを結合する際に、ジョブチケットが分割された着目処理工程の次工程以降において結合しようとする各ジョブチケットによる処理部分が、連続した部分であるか否かを判定する。そして、ワークフロー実行部１０４は、連続した部分であればジョブチケットを結合する。たとえば、結合可能をしめすフラグ等が、ステップＳ１４０６でセットされ、ステップＳ１４０７でリセットされる。これが図１９のステップＳ１９０５での判定基準となる。
【００９０】
上記手順でページの連続性による結合判定のフローを示したが、必ずしもページの連続だけが結合条件になるとは限らない。ページの連続性がなくても結合を行っても次の作業に影響がでないこともありえる。
【００９１】
以上のように本実施形態によれば、ジョブチケットをワークフロー実行中に動的に分割することができる。そして分割したジョブチケットを用いて、アクティビティを実行できる。これにより、ひとつのジョブの実行中に、例えばワークフローの処理を中断する事由が生じても、ジョブチケットを分割することで継続可能な処理については進行させることができる。このため、従来のように処理可能なジョブを中断自由が解消されるまで停滞させる必要がなくなり、ジョブ全体の処理を効率的に進めることが可能となる。
【００９２】
また、ジョブチケットをワークフロー実行中に動的に結合することができる。そして結合したジョブチケットを用いて、アクティビティを実行できる。このため、いったん分割したジョブの同期が必要な場合には、複数のジョブを結合して、単独のジョブとして進行させることができる。このため、ワークフローの停止による時間の損失を抑制でき、処理の省略化を実現できるため、ワークフローの生産性が向上する。
【００９３】
なお、分割されたジョブに係る出力物を、オペレータが手作業で結合した場合には、その後の工程の処理は、結合されたジョブとして処理される必要がある。しかし、特に通知がない限り、サーバは、出力物に対する結合処理が行われていることを認識できない。そこで、手作業である工程の出力物の結合を行った作業者は、パーソナルコンピュータ等を通して、結合した出力物を出力した工程の名称（ジョブチケットの名称）および結合した旨をワークフロー実行部に入力する。その通知を受けたワークフロー実行部は、結合された出力物に相当するジョブチケットを結合し、次の工程のジョブチケットを生成する。この様にすることで、手作業による結合を、ワークフローに反映させ、作業の簡略化を図ることができる。
【００９４】
［第２実施形態］
第１の実施形態では、ワークフロー実行部１０４が各アクティビティを実行するデバイスに対してジョブチケットを送り、またデバイスから処理結果を含むジョブチケットを受信していた。このため、ジョブチケットの分割および結合はすべてワークフロー実行部１０４により行われている。
【００９５】
これに対して本実施形態では、ジョブチケットはワークフロー実行部から先頭のアクティビティを実行するデバイスに渡されると、各工程に、デバイスからデバイスへと連鎖的に引き渡される。そのため、ジョブチケットには、あらかじめ全行程のための指示（パラメータ）が記載されている。また、各工程が終了するごとに、処理結果が記載されていく。つまり、第２実施例の主体は、複数の処理工程の処理パラメータおよび処理順序を定義したジョブチケットに基づいて所定の処理工程を実行するジョブ処理装置である。ジョブ処理装置の一例としては、印刷エンジン１１１やニアラインフィニッシャ１１２が相当するが、これに限られることはない。また、第２実施例のデバイス（ジョブ制御装置）は、図１のサーバ部１００と同様の機能を有するものとする。なお、処理パラメータとは、ジョブチケットを受けたデバイスが処理する内容を指す。例えば、図５でいえば、印刷工程のパラメータとしては、両面印刷などの印刷設定と共に、１０ページ印刷を５部など具体的な数値も処理パラメータの一例となる。
【００９６】
図１６に第２実施例のワークフローの例を示す。サーバ２１０からデバイス２０１に入力されたジョブチケット２０６は、ジョブチケット２０６に記述された順序でデバイスからデバイスへと渡され、各デバイスによってアクティビティが実行される。最終的にはたとえばワークフロー実行部に戻されて、その完了が確認される。
【００９７】
第２実施例における処理を図２０を用いて説明する。なお、図２０の処理はデバイスの処理部によって実行される。第２実施例の場合、デバイスがワークフロー実行部１０４を保持している。
【００９８】
デバイスのワークフロー実行部１０４は、ジョブチケットを受信すると、ジョブチケットにおいて定義されている内容から自装置で実行する着目処理工程の処理内容を認識する。そして、デバイスのワークフロー実行部１０４は、認識した処理内容に基づく処理の処理状況を解析し、自らが処理すべきアクティビティの処理が正常に終了したか否かを判定する。具体的には、担当デバイスが実行すべき処理を完了したか否かを判定する。例えば、印刷工程の場合、ジョブチケットには何ページ印刷すべきとの情報が記述されている。デバイスのワークフロー実行部１０４は、この記述情報と、実際に出力したページ数を比較することにより、Ｓ２００１の判定を実行することができる。
【００９９】
続いて、デバイスのワークフロー実行部１０４は、Ｓ２００１において正常終了しなかったと判定された場合、処理済み部分を検出して、次の工程に進めて継続処理が可能か否かを判定する（Ｓ２００２）。具体的には、ジョブチケットには次の工程にて処理すべき内容が記述されている。この情報を元に、デバイスのワークフロー実行部１０４が、図１５のＳ１５１０と同様の処理を実行する。また、必要であればサーバ部１００と通信して、Ｓ２００２の判定に必要な情報を取得しても良い。Ｓ２００２の判定処理の際、デバイスのワークフロー実行部１０４は、上述した処理状況が所定の条件に一致する場合、処理状況に基づいて印刷ジョブにおける処理済み部分と印刷ジョブにおける未処理部分とを識別する。そして、識別した処理状況に関する情報を用いて、Ｓ２００２の判定処理を実行する。
【０１００】
Ｓ２００２の判定処理により継続可能と判定された場合、デバイスのワークフロー実行部１０４は、次工程に進めるジョブに関するジョブチケットと、未処理部分であり自工程にて処理すべきジョブに関するジョブチケットに分割する（Ｓ２００３）。デバイスのワークフロー実行部１０４は、前工程から受信したジョブチケットにおける自工程より後の工程の処理内容を、処理済み部分について実行すべきとの情報に変更したジョブチケットを作成する。さらに、自工程を含んだ自工程以降の処理内容を未処理部分について実行すべきとの情報に変更したジョブチケットを作成する。つまり、ワークフロー実行部１０４は、処理済み部分を次工程にて処理するために、処理済み部分における次工程用の処理パラメータを記述した第１ジョブチケットを生成する。
【０１０１】
Ｓ２００３において分割されたジョブチケットのうち、次工程に発行すべきジョブチケットを次工程を担当するデバイスへ発行する（Ｓ２００４）。つまり、デバイスのワークフロー実行部１０４は、生成された第１ジョブチケットを前記次工程の処理を実行するデバイスに引き渡す。
【０１０２】
Ｓ２００２でＮｏと判定された場合、または、Ｓ２００４の処理後、デバイスのワークフロー実行部は復旧を待ち（Ｓ２００５）、復旧後、未処理部分についての処理を実行して、未処理部分についての処理を反映したジョブチケットを次工程へと発行する。なお、未処理部分に関する処理は、デバイスのワークフロー実行部１０４が未処理部分用に生成したジョブチケットに基づいて行われる。詳細には、デバイスのワークフロー実行部は、着目処理工程において未処理部分を残すような事象が発生した場合、着目処理工程の処理状況に基づき処理済み部分は次工程に進められるように次工程用の処理パラメータを記述したジョブチケットを分割生成する。そして、デバイスのワークフロー実行部は、着目処理工程にて未処理部分の処理を実行できるように、未処理部分の着目処理工程用の処理パラメータを記述したジョブチケットを分割生成する。デバイスは、この第２ジョブチケットに基づいてＳ２００６の処理を実行する。
【０１０３】
よって、１つのワークフローに対して１つのジョブチケットを流して処理を進めるようなバケツリレー式のワークフローであっても、第２実施例を用いることにより、第１実施例と同様の効果を得ることができる。または、中断するような事象が発生したことをワークフロー実行部に通知して、実施例１と同様にワークフロー実行部が分割処理を行っても良い。
【０１０４】
なお、デバイスのワークフロー実行部１０４の機能は基本的に第１実施例と同様であるため、第２実施例では第１実施例とは異なる機能のみを記載したが、当然第１実施例に記述した機能（例えばジョブチケットの結合処理など）を実行することも可能である。
【０１０５】
以上の通り、本実施形態によれば、ワークフローの処理中であっても、効率的に処理を進めるために新たなジョブチケットを動的に生成できる。そのため、処理の進行状況に応じて効率的に処理を進めることが可能となる。特に、ジョブの進行を停止させる事象が生じた場合でも、続行できる部分を分割し、独立して進行させることができる。また、いったん分割したジョブの同期が必要な場合には、複数のジョブを結合して、単独のジョブとして進行させることができる。このため、ワークフローの停止による時間の損失を抑制でき、また、処理の省略化を実現できる。
【０１０６】
［その他の実施形態］
なお本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。また本発明の目的は、前述の実施形態の機能を実現するプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータが記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体およびプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１０７】
また、本発明には、プログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた場合についても、本発明は適用される。その場合、書き込まれたプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１０８】
【図１】本発明の第１実施形態を示す印刷システムのシステム概要図
【図２】ワークフローの定義例を示す図
【図３】ジョブチケットの構成例を示す図
【図４】本発明を用いた際のシステム概要図
【図５】ジョブチケットの構成例図
【図６】ジョブチケットの構成図
【図７】ジョブチケットの結合を説明するためのシステム概要図
【図８】７０４のジョブチケットと、７０２のジョブチケットの構成例図
【図９】結合された後のジョブチケットの構成図
【図１０】ジョブチケットの結合を行う際のパネル表示例図
【図１１】ジョブ名の詳細を示した図
【図１２】ジョブチケットの遷移を示した図
【図１３】ワークフロー実行部の処理フロー図
【図１４】ジョブチケットの結合可能判例フロー図である。
【図１５】ワークフローの実行手順のフローチャート
【図１６】第２実施形態のワークフローの実行手順の模式図
【図１７】結合されたジョブチケットに係るアクティビティ実行後のジョブチケットの例を示した図
【図１８】ジョブ分割手順の処理フロー図
【図１９】デバイスおよびワークフロー実行部におけるアクティビティの実行フロー図である。
【図２０】第２実施例におけるデバイスのワークフロー実行部のフロー図
【図２１】情報処理装置のブロック図
【符号の説明】
【０１０９】
１００は印刷システムサーバー部
１０１はインターネットあるいはイントラネットであるネットワーク部
１０２はパソコンとソフトウエアなどからなるクライアント部
１０３はジョブチケット発生部
１０４はワークフロー実行部
１０５はジョブチケット管理部
１０６はログインしたユーザの権限などを保持するユーザ管理部
１０７はアクティビティ管理部
１０８はワークフロー管理部
１０９は「入稿アプリ」が存在するＰＣ
１１０は「面付けアプリ」が存在するＰＣ
１１１は印刷エンジン
１１２はニアラインフィニッシャ部
【図１】
0004646792.tif 000002
【図２】
0004646792.tif 000003
【図３】
0004646792.tif 000004
【図４】
0004646792.tif 000005
【図５】
0004646792.tif 000006
【図６】
0004646792.tif 000007
【図７】
0004646792.tif 000008
【図８】
0004646792.tif 000009
【図９】
0004646792.tif 000010
【図１０】
0004646792.tif 000011
【図１１】
0004646792.tif 000012
【図１２】
0004646792.tif 000013
【図１３】
0004646792.tif 000014
【図１４】
0004646792.tif 000015
【図１５】
0004646792.tif 000016
【図１６】
0004646792.tif 000017
【図１７】
0004646792.tif 000018
【図１８】
0004646792.tif 000019
【図１９】
0004646792.tif 000020
【図２０】
0004646792.tif 000021
【図２１】
0004646792.tif 000022