(57)【要約】【課題】ワークフローを円滑に進めることを目的とする。【解決手段】ワークフローに含まれる複数の工程の複数種類の機能毎の使用量の上限値を管理する管理手段と、ワークフローにおいて依頼された処理情報を処理するために必要となる各機能に係る使用量を算出する算出手段と、管理手段によって管理されている上限値と、算出手段において算出された使用量とに基づいて、使用量を使用するワークフローに含まれる各工程における作業を、実行可能か否かを判断する判断手段と、判断手段における判断結果に基づいて、算出手段において算出された使用量を使用する作業を実行可能であると判断された場合、ワークフローを実行する前に算出手段によって算出された各機能に係る使用量を管理手段によって管理する値として機能毎に予約する使用量制御手段と、を有することによって課題を解決する。【選択図】図９
2008065702.tif 000002
【特許請求の範囲】
【請求項１】
ワークフローに含まれる複数の工程の複数種類の機能毎の使用量の上限値を管理する管理手段と、
複数の工程から構成されるワークフローを実行する前に、ワークフローにおいて依頼された処理情報を処理するために必要となる各機能に係る使用量を算出する算出手段と、
前記管理手段によって管理されている上限値と、前記算出手段において算出された使用量とに基づいて、前記使用量を使用するワークフローに含まれる各工程における作業を、実行可能か否かを判断する判断手段と、
前記判断手段における判断結果に基づいて、前記算出手段において算出された使用量を使用する前記作業を実行可能であると判断された場合、前記ワークフローを実行する前に前記算出手段によって算出された各機能に係る使用量を前記管理手段によって管理する値として、機能毎に予約する使用量制御手段と、
を有することを特徴とするワークフロー管理装置。
【請求項２】
前記算出手段は、操作画面において選択されたワークフローに係る情報に基づいて、複数の工程から構成されるワークフローを実行する前に、ワークフローにおいて依頼された処理情報を処理するために必要となる各機能に係る使用量を算出することを特徴とする請求項１に記載のワークフロー管理装置。
【請求項３】
前記使用量制御手段は、予約した使用量が、該当する前記工程の前記作業において使用されると、前記予約した使用量を使用済みの使用量とし、
前記管理手段は、前記上限値と、他のワークフローの工程用に予約された使用量と、使用済みの使用量とに基づいて、前記期間において使用可能な量を管理することを特徴とする請求項１又は２に記載のワークフロー管理装置。
【請求項４】
前記判断手段は、前記管理手段によって管理されている使用可能な量と、前記算出手段によって算出された使用量とを比較して、前記使用量が前記使用可能な量よりも大きい場合、前記工程の前記作業を実行できないと判断することを特徴とする請求項３に記載のワークフロー管理装置。
【請求項５】
前記使用量制御手段は、ワークフローに含まれる工程においてキャンセル、又はエラーとなった場合、前記ワークフローの前記工程以降の工程の作業に係り、前記予約した使用量を削除し、
前記管理手段は、前記削除に従って前記使用可能な量を前記削除した使用量分増加することを特徴とする請求項３又は４に記載のワークフロー管理装置。
【請求項６】
前記使用量制御手段は、ワークフローにおいて、予め定められた一定期間を経過した時点で作業が終了していない工程がある場合、前記ワークフローの前記工程以降の工程の作業用に予約した使用量を削除し、
前記管理手段は、前記削除に従って前記使用可能な量を前記削除した使用量分増加することを特徴とする請求項３乃至５の何れか１項に記載のワークフロー管理装置。
【請求項７】
前記判断手段における判断結果に基づいて、前記工程の前記作業において、前記算出手段において算出された使用量を使用する前記作業を実行不可能であると判断され、且つ既に予約されている、未使用の別ワークフローの工程用に予約された予約使用量を用いれば、前記算出手段において算出された使用量を使用可能であると判断された場合、ワークフローの前記工程の処理順序の変更依頼を、当該別ワークフローの予約者に通知する通知手段を更に有することを特徴とする請求項３乃至６の何れか１項に記載のワークフロー管理装置。
【請求項８】
ワークフローを構成する複数の工程において、前記使用量に関する上限値の管理の集計期間内に処理が完了しない工程を特定する特定手段を更に有し、
前記使用量制御手段は、前記複数の工程のうち、前記特定手段によって特定された工程用に予約されていた予約使用量をキャンセルし、
前記管理手段は、前記使用量のキャンセルに従って前記使用可能な量を前記キャンセルされた予約使用量分増加することを特徴とする請求項３乃至７の何れか１項に記載のワークフロー管理装置。
【請求項９】
前記使用量制御手段が、前記算出手段によって算出された前記ワークフローに含まれる複数の工程の使用量を予約した場合、当該ワークフローに関する処理の実行を許可する許可手段を更に有することを特徴とする請求項１乃至８の何れか１項に記載のワークフロー管理装置。
【請求項１０】
ワークフロー管理装置におけるワークフロー管理方法であって、
ワークフローに含まれる複数の工程の複数種類の機能毎の使用量の上限値を管理する管理工程と、
複数の工程から構成されるワークフローを実行する前に、ワークフローにおいて依頼された処理情報を処理するために必要となる各機能に係る使用量を算出する算出工程と、
前記管理工程によって管理されている上限値と、前記算出工程において算出された使用量とに基づいて、前記使用量を使用するワークフローに含まれる各工程における作業を、実行可能か否かを判断する判断工程と、
前記判断工程における判断結果に基づいて、前記算出工程において算出された使用量を使用する前記作業を実行可能であると判断された場合、前記ワークフローを実行する前に前記算出工程によって算出された各機能に係る使用量を前記管理工程によって管理する値として、機能毎に予約する使用量制御工程と、
を有することを特徴とするワークフロー管理方法。
【請求項１１】
前記算出工程は、操作画面において選択されたワークフローに係る情報に基づいて、複数の工程から構成されるワークフローを実行する前に、ワークフローにおいて依頼された処理情報を処理するために必要となる各機能に係る使用量を算出することを特徴とする請求項１０に記載のワークフロー管理方法。
【請求項１２】
前記使用量制御工程は、予約した使用量が、該当する前記工程の前記作業において使用されると、前記予約した使用量を使用済みの使用量とし、
前記管理工程は、前記上限値と、他のワークフローの工程用に予約された使用量と、使用済みの使用量とに基づいて、前記期間において使用可能な量を管理することを特徴とする請求項１０又は１１に記載のワークフロー管理方法。
【請求項１３】
前記判断工程は、前記管理工程によって管理されている使用可能な量と、前記算出工程によって算出された使用量とを比較して、前記使用量が前記使用可能な量よりも大きい場合、前記工程の前記作業を実行できないと判断することを特徴とする請求項１２に記載のワークフロー管理方法。
【請求項１４】
前記使用量制御工程は、ワークフローに含まれる工程においてキャンセル、又はエラーとなった場合、前記ワークフローの前記工程以降の工程の作業に係り、前記予約した使用量を削除し、
前記管理工程は、前記削除に従って前記使用可能な量を前記削除した使用量分増加することを特徴とする請求項１２又は１３に記載のワークフロー管理方法。
【請求項１５】
前記使用量制御工程は、ワークフローにおいて、予め定められた一定期間を経過した時点で作業が終了していない工程がある場合、前記ワークフローの前記工程以降の工程の作業用に予約した使用量を削除し、
前記管理工程は、前記削除に従って前記使用可能な量を前記削除した使用量分増加することを特徴とする請求項１２乃至１４の何れか１項に記載のワークフロー管理方法。
【請求項１６】
前記判断工程における判断結果に基づいて、前記工程の前記作業において、前記算出工程において算出された使用量を使用する前記作業を実行不可能であると判断され、且つ既に予約されている、未使用の別ワークフローの工程用に予約された予約使用量を用いれば、前記算出工程において算出された使用量を使用可能であると判断された場合、ワークフローの前記工程の処理順序の変更依頼を、当該別ワークフローの予約者に通知する通知工程を更に有することを特徴とする請求項１２乃至１５の何れか１項に記載のワークフロー管理方法。
【請求項１７】
ワークフローを構成する複数の工程において、前記使用量に関する上限値の管理の集計期間内に処理が完了しない工程を特定する特定工程を更に有し、
前記使用量制御工程は、前記複数の工程のうち、前記特定工程によって特定された工程用に予約されていた予約使用量をキャンセルし、
前記管理工程は、前記使用量のキャンセルに従って前記使用可能な量を前記キャンセルされた予約使用量分増加することを特徴とする請求項１２乃至１６の何れか１項に記載のワークフロー管理方法。
【請求項１８】
前記使用量制御工程が、前記算出工程によって算出された前記ワークフローに含まれる複数の工程の使用量を予約した場合、当該ワークフローに関する処理の実行を許可する許可工程を更に有することを特徴とする請求項１０乃至１７の何れか１項に記載のワークフロー管理方法。
【請求項１９】
請求項１０乃至１８の何れか１項に記載のワークフロー管理方法をコンピュータに実行させることを特徴とするプログラム。
【請求項２０】
請求項１９に記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークフロー管理装置及びワークフロー管理方法に関する。
【背景技術】
【０００２】
ＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）に代表される画像形成装置の各機能を利用することにより、複数の機能を組み合わせた一連の作業から構成されるドキュメント・ワークフローがオフィス等で実施されている。
【０００３】
以下に、ドキュメント・ワークフローの一例を挙げる。あるユーザＡさんが配布用資料として１０００部の印刷を希望した場合に、ＭＦＰにおいて１０ページの原稿をスキャンした後、Ａさんの上長であるＢさんに承認依頼の通知を行う。次に、ＢさんがＰＣ等から内容の確認を行い、承認すると、オペレータであるＣさんに通知が届く。すると、ＣさんがＭＦＰにおいて原稿を１０００部（１００００ページ）印刷する、等である。つまり、このドキュメント・ワークフローは、入稿工程（依頼者）、承認工程（承認者）、印刷工程（作業者）によって構成される。
【０００４】
また、課金管理や出力抑制の目的においてユーザやグループ毎に一定期間に使用可能な用紙枚数等の上限値を設定し、使用の制限を行う上限値管理が可能な画像形成装置が知られている。
【０００５】
また、特許文献１には、ジョブのＩＤ別に設定される上限カウント値、出力処理に従ってカウントされる現在のカウント値、予約される予約カウント値、を管理する画像形成装置について記載されている。この画像形成装置では、予約ジョブの出力にて使用されるカウント値と現在のカウント値との加算結果が上限カウント値よりも大きくなると判定され、かつ、当該予約ジョブに保証モードが設定されている場合、予約ジョブをキャンセルする。その結果、特許文献１に記載の技術によって、予約ジョブの処理を開始した後、当該予約ジョブの処理が完了するまでに上限値に達することで処理が完了しない事態を防ぐことが記載されている。
【０００６】
【特許文献１】特開２００４−１５２１３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来技術では、そもそも複数の機能の上限値を管理して、複数の作業工程から構成されるワークフローを完了するように制御することについて想定していなかった。
【０００８】
また、従来技術では、複数の作業工程を順次処理するワークフロー用に、複数の機能の上限値をまとめて管理することについても想定していなかった。
【０００９】
上記特許文献１に記載の技術では、ワークフローのように処理の開始を指示してから、処理が完了するまでにタイムラグが発生するような場合に対応することができない。例えば、ワークフローは、複数の処理工程を含むため最初の処理工程と最後の処理工程の間にはタイムラグが発生して一連の処理が完了するまでに時間を要してしまう。それゆえに、ワークフロー開始時点では上限使用量までに余裕があったものの実際にワークフローの処理がユーザに到達するまでの間に、ユーザが別のジョブを実行することが考えられる。そして、別のジョブを実行したがために当該ユーザが使用可能な使用量に余裕がなくなってしまい、ワークフロー処理を行うには、例えば印刷カウンタの数が不足してしまって処理が出来なくなり、結果としてワークフローが停滞してしまう問題があった。
【００１０】
特許文献１に記載の技術では、ワークフローのように処理の開始から終了までにタイムラグが発生し、この間に当該ワークフローとは異なる処理を実行することによって、当該ワークフローの処理が行えなくなることを想定していなかった。その結果、従来技術では、ワークフローの処理開始を指示しても、当該ワークフローの処理を完了できなくなる場面が発生するおそれがある。
【００１１】
本発明はこのような問題点に鑑みなされたもので、ワークフローに含まれる作業工程の処理を実行するユーザに対して、実行可能な使用量が制限されている状態であっても、ワークフローを円滑に進めることを目的とする。
【課題を解決するための手段】
【００１２】
そこで、本発明のワークフロー管理装置は、ワークフローに含まれる複数の工程の複数種類の機能毎の使用量の上限値を管理する管理手段と、複数の工程から構成されるワークフローを実行する前に、ワークフローにおいて依頼された処理情報を処理するために必要となる各機能に係る使用量を算出する算出手段と、前記管理手段によって管理されている上限値と、前記算出手段において算出された使用量とに基づいて、前記使用量を使用するワークフローに含まれる各工程における作業を、実行可能か否かを判断する判断手段と、前記判断手段における判断結果に基づいて、前記算出手段において算出された使用量を使用する前記作業を実行可能であると判断された場合、前記ワークフローを実行する前に前記算出手段によって算出された各機能に係る使用量を前記管理手段によって管理する値として、機能毎に予約する使用量制御手段と、を有することを特徴とする。
【００１３】
係る構成とすることにより、ワークフロー開始時点でワークフローに含まれるユーザ毎の各機能別の使用量を予測算出して予約使用量として確保することができる。これにより、開始時には使用量の上限値に対して余裕があったもののワークフロー処理がユーザに到達するまでにユーザが別のジョブを実行し、使用量がその上限値に近くなってしまい、ワークフロー処理を行うのが出来なくなる等を防止することができる。よって、ワークフローを円滑に進めることができる。
【発明の効果】
【００１４】
本発明によれば、一連の処理として複数の工程からなるワークフローを円滑に進めることができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施形態について図面に基づいて説明する。
【００１６】
＜実施形態１＞
図１は、ＭＦＰの内部の構成の一例を示す図である。なお、図１では、１Ｄカラー系ＭＦＰを例として説明している。ここで、ＭＦＰには、フルカラー機器と、モノクロ機器とがあり、色処理や内部データ等を除いて、基本的な部分において、フルカラー機器がモノクロ機器の構成を包含することが多いため、図１ではフルカラー機器を主に説明する。
【００１７】
１Ｄカラー系のＭＦＰであるＭＦＰ１００は、スキャナ部１０１、レーザ露光部１０２、感光ドラム、作像部１０３、定着部１０４、給紙／搬送部１０５及びこれらを制御するＭＦＰ制御部２００等から構成される。
【００１８】
スキャナ部１０１は、原稿台に置かれた原稿に対して、照明を当てて原稿画像を光学的に読み取り、その像を電気信号に変換して画像データを作成する。
【００１９】
レーザ露光部１０２は、前記画像データに応じて変調されたレーザ光等の光線を等角速度で回転する回転多面鏡（ポリゴンミラー）に入射させ、反射走査光として感光ドラムに照射する。
【００２０】
作像部１０３は、感光ドラムを回転駆動し、帯電器によって帯電させ、レーザ露光部１０２によって感光ドラム上に形成された潜像をトナーによって現像化し、そのトナー像をシートに転写する。そして、作像部１０３は、その際に転写されずに感光ドラム上に残った微小トナーを回収する。作像部１０３は、このような一連の電子写真プロセスを実行して作像する。その際、シートが転写ベルトの所定位置に巻きつき、４回転する間に、マゼンタ（Ｍ）、シアン（Ｃ）、イエロー（Ｙ）、ブラック（Ｋ）のトナーを持つそれぞれの現像ユニット（現像ステーション）が入れ替わりで順次前述の電子写真プロセスを繰り返し実行する。４回転の後、４色のフルカラートナー像を転写されたシートは、転写ドラムを離れ、定着部１０４へ搬送される。
【００２１】
定着部１０４は、ローラやベルトの組み合わせによって構成され、ハロゲンヒータ等の熱源を内蔵し、作像部１０３によってトナー像が転写されたシート上のトナーを、熱と、圧力とによって溶解、定着させる。
【００２２】
給紙／搬送部１０５は、シートカセットやペーパーデッキに代表されるシート収納庫を一つ以上持っており、ＭＦＰ制御部２００の指示に応じてシート収納庫に収納された複数のシートの中から一枚分離し、作像部１０３、定着部１０４へ搬送する。シートは作像部１０３の転写ドラムに巻きつけられ、４回転した後に定着部１０４へ搬送される。４回転する間に前述のＹＭＣＫ各色のトナー像がシートに転写される。また、給紙／搬送部１０５は、シートの両面に画像形成する場合は、定着部１０４を通過したシートを再度作像部１０３へ搬送する搬送経路を通るように制御する。
【００２３】
ＭＦＰ制御部２００は、ＭＦＰ１００全体の制御を実行すると共に、前述のスキャナ、レーザ露光、作像、定着、給紙／搬送の各部の状態を管理しながら、全体が調和を保って円滑に動作できるよう指示を行う。
【００２４】
本実施形態のシステムの構成に関し、ＭＦＰは複数であってもよい。また、本実施形態のシステムは、ＭＦＰと、プリント機能を具備した単一機能型の画像形成装置等のＳＦＰ（Ｓｉｎｇｌｅ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）と、を組み合わせた構成でもよい。また、本実施形態のシステムは、ＭＦＰと、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）と、を組み合わせた構成でもよい。何れにしても、後述する、本実施形態に係る制御が実現可能な構成であればよい。
【００２５】
図２は、ＭＦＰ制御部２００の構成を示すブロック図である。図２において、２０５、２０６、２０６１、２０６２、２０７、２０７１、２０７２、２０８、２０９、２１０、２１１は、ＭＦＰ制御部２００を構成する処理モジュールである。これら処理モジュールは、ＣＰＵ２０１で実行されるアプリケーションプログラム、又はプログラムの一部として動作するモジュールである。
【００２６】
図２において、２０４、２０４１、２０４２、２０４３、２０４４は、ＭＦＰ制御部２００を構成する情報格納装置であり、ファイルシステム又はデータベースシステムを用いて不揮発性のハードディスクや、メモリ等を用いて情報を格納する。また、情報格納装置２０４、２０４１、２０４２、２０４３、２０４４に格納された情報へは、特定のキーや条件で直接アクセスすることができる。
【００２７】
ＣＰＵ２０１は、ＭＦＰ１００全体を制御し、メモリ２０２や記憶部２０４に格納されているプログラムを読み出して実行する等して各部に指示することによりスキャン、プリント、ファクシミリ等の動作を実現する。
【００２８】
メモリ２０２は、ＣＰＵ２０１が実行する各種プログラムを記憶するＲＯＭや、制御等に必要なデータを一時的に格納するＲＡＭ等から構成される。各種プログラムとは、使用量制御部２０６、使用量予約処理部２０６１、使用量予約繰越処理部２０６２、ワークフロー制御部２０７、使用量算出処理部２０７１、先行フロー割込み依頼部２０７２等に対応する。
【００２９】
外部インターフェース２０３は、ネットワーク等を介して外部装置との間で情報をやりとりする。
【００３０】
記憶部２０４は、ハードディスク等の不揮発性のメモリから構成され、各処理において生成された画像データ等を格納する他、各処理で用いる制御情報や設定情報を格納する。記憶部２０４は、上限量記憶部２０４１やワークフロー情報記憶部２０４２、ワークフロー・ステータス記憶部２０４３、ジョブ履歴記憶部１０４４等を備える。また、ここでは図示しないが、記憶部２０４は、認証システム（図示しない）において管理するユーザ情報を記憶してもよい。なお、メモリ２０２のＲＯＭの代わりに各種プログラムを記憶部２０４に記憶してもよい。記録部２０６に対してデータの読み書きを行う場合にはメモリ２０２を介して行われる。
【００３１】
上限量記憶部２０４１は、ユーザやグループに対するＩＤや、印刷やスキャンや送信やディスク使用量等の機能に対する一定期間内の上限使用量、使用済み使用量、予約使用量等を格納する。
【００３２】
ワークフロー情報記憶部２０４２は、ＭＦＰ１００で実行可能なワークフローの一覧と、各ワークフローを構成するジョブの情報とを格納する。
【００３３】
ワークフロー・ステータス記憶部２０４３は、実行されたワークフローの処理ステータスを格納する。ジョブ履歴記憶部２０４４は、ＭＦＰ１００で実行されたジョブの履歴を格納する。
【００３４】
操作制御部２０５は、ここでは図示されていないタッチパネル部やキー入力部を制御し、これらをユーザが操作することにより発せられた情報を各部に伝える。
【００３５】
使用量制御部２０６は、ユーザやシステムがＭＦＰ１００で実施する作業に関するユーザやグループ等のＩＤ毎の使用量を制御する。使用量の例としては、印刷カウンタ、スキャナカウンタ、画像データの容量、操作時間が挙げられる。
・印刷カウンタとは、プリンタ部において実行される印刷処理に伴いカウントアップされる値である。
・スキャナカウンタとは、スキャナ部において実行されるスキャン処理に伴いカウントアップされる値である。
・送受信カウンタとは、ファクシミリ等の送受信に伴いカウントアップされる値である。
・画像データの容量は、ユーザが記憶部２０４に格納する画像データの容量である。
・操作時間は、ユーザがＭＦＰ１００を操作した操作時間である。
【００３６】
使用量制御部２０６は、上限量記憶部２０４１を用いることにより、ＩＤ毎に各種使用量を加算及び把握する。そして使用量制御部２０６は、ＩＤ毎に定められた一定期間（例えば月単位）において、上限値が設定されている場合、当該一定期間において使用量が上限値に達すると、当該ＩＤに対応するユーザがそれ以上の処理を行わないように制限する。なお、本願の上限値とは、作業者が実行可能な使用量を指す。例えば、１ヶ月あたりの印刷可能枚数として固定的に設定された値も、１ヶ月あたりの印刷可能枚数として固定的に設定された値から、印刷処理に従って変化する当該作業者の処理可能枚数も本願では、上限値として定義する。つまり、１ヶ月あたりの印刷可能枚数として例えば１０００枚と設定された場合、この１０００枚が上限値となり、３００枚印刷した結果、残り印刷可能枚数は７００枚となった場合、この７００枚も上限値となる。
【００３７】
使用量予約処理部２０６１は、使用量制御部２０６の一部として動作する。そして使用量予約処理部２０６１は、ユーザがワークフローやジョブを実行する前に、当該ワークフローやジョブを処理するために使用するカウンタ等の使用量を予め確保する。
【００３８】
使用量予約繰越処理部２０６２は、使用量制御部２０６の一部として動作する。使用量予約繰越処理部２０６２は、使用量予約処理部２０６１により確保された使用量が、実際に使用される前にＩＤにおいて定められた上限値の集計期間を超えると判断された場合、その切替日時前の未処理の予約使用量を切替日時後の予約使用量として繰り越す。上限値の集計期間を超える例として、上限値の管理が月単位で行われていた場合に、月の変化に応じて、変化前の月において予約されていた使用量が、変化後の月の使用量として予約される。
【００３９】
ワークフロー制御部２０７は、ユーザやシステムがＭＦＰ１００を用いて実行する一連の処理として複数の工程から構成されるワークフローを制御する。ワークフロー制御部２０７は、ワークフロー情報記憶部２０４２、ワークフロー・ステータス記憶部２０４３等を用いることにより、実行可能なワークフローの一覧の管理や、そのワークフローの実行状況を把握する。また、ワークフロー制御部２０７は、予め定められた例外処理の実行等の制御も行う。
【００４０】
使用量算出処理部２０７１は、ワークフロー制御部２０７の一部として動作する。そして使用量算出処理部２０７１は、ユーザがＭＦＰ１００を用いてワークフローを開始する際に、ワークフローの過程に含まれる各工程の各処理において必要となる使用量を、選択されたワークフローの種類や依頼時に選択された原稿等から予測算出する。この予測算出された結果を基にして、ワークフロー制御部２０７が使用量予約処理部２０６１に対して指示することにより、各工程の処理を担当するユーザの使用量を予め予約することが可能になる。
【００４１】
先行フロー割込み依頼部２０７２は、ワークフロー制御部２０７の一部として動作する。先行フロー割込み依頼部２０７２は、ユーザがＭＦＰ１００を用いてワークフローを開始する際に、以下の要件を満たす場合、別ワークフローの依頼者に対してワークフローの処理順変更の依頼を通知する。要件とは「使用量算出処理部２０７１により算出された使用量が上限量記憶部２０４１に記憶されている使用可能使用量より多いが、既に予約されている未完了の別ワークフローの予約使用量を利用すればワークフローの予測算出された使用量を満たす」である。つまり、予約されている使用量を流用すれば、算出された使用量を処理できる場合を指す。
【００４２】
ワークフローの実行を予約した予約者が、予約使用量の開放を承認した場合、ワークフロー制御部２０７は、ワークフローの処理順序を変更して、割込みを依頼したワークフローの使用量を予約した上で先に処理することが可能になる。
【００４３】
スキャナ制御部２０８は、スキャナ部１０１を制御して、ＣＰＵ２０１からの指示に従ってスキャナ部１０１を駆動し、原稿台上の原稿を読み取り、読み取った原稿をメモリ２０２に格納する。
【００４４】
プリンタ制御部２０９は、ＣＰＵ２０１からの指示に従って、メモリ２０２から画像データを取得し、レーザ露光部１０２、作像部１０３、定着部１０４、給紙／搬送部１０５等のプリンタ部を制御して記録紙に画像を印刷する。
【００４５】
送信制御部２１０は、操作処理部２０５等を介して、ユーザが行った、ファクシミリや電子メール等のアプリケーションに係る操作指示を受け取る。すると、送信制御部２１０は、メモリ２０２や記憶部２０４から取得した画像データを、外部インターフェース２０３を介して外部に送信したり、逆に外部から送信された画像データを受信して記憶部２０４に記憶する。
【００４６】
画像処理部２１１は、操作制御部２０５等を介してユーザから指示された画像処理や画質向上のための処理や、ファクシミリ送信時に送信先の能力に合わせて送信する画像データの解像度や用紙サイズ等の変換を行う。
【００４７】
内部バス２１２は、それぞれ各部を接続するものであり、この内部バス２１２を介して画像データの転送や各部に対する指示や設定値等の送受信が行われる。
【００４８】
図３は、ＭＦＰ１００のタッチパネル部に表示され、ユーザの操作に対応して操作制御部２０５により制御されるワークフロー実行画面の１つである「ワークフロー一覧」画面３００の一例を示す図である。タッチパネル部は、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）と、その上に貼られた透明電極とからなるタッチパネルディスプレイにより構成される。タッチパネル部には、ＬＣＤに表示されるキー相当の部分の透明電極が指で触れられると、それを検知して別の操作画面を表示する等の処理が予めプログラムされている。
【００４９】
ワークフロータブ３０１は、ユーザが画面をワークフローの操作画面に遷移させるためのタブキーである。タブ遷移キー３０２は、ユーザが、コピー動作やファクシミリ、電子メール送信の送信動作等への遷移を指示するためのタブキーである。システムモニタキー３０３は、ＭＦＰ１００の状態や状況を表示するためのキーである。ユーザは、３０１、３０２、３０３の各タブを選択することで、ＭＦＰ１００をそれぞれの操作モードに遷移させることができる。
【００５０】
処理待ちキー３０４は、ＭＦＰ１００にログインしたユーザに対して、他のユーザ等から回ってきた処理すべきワークフローが存在している場合に、その処理待ちワークフローの一覧を表示するためのキーである。処理待ちキー３０４には処理待ちのワークフローの件数が表示される。
【００５１】
ワークフロー依頼キー３０５は、ＭＦＰ１００にログインしたユーザが開始することが出来るワークフローの一覧を表示するためのキーである。
【００５２】
各種ワークフロー依頼開始キー３０６は、ユーザがワークフロー依頼キー３０５を押下することにより表示される複数のキーである。ＭＦＰ１００は、各種ワークフロー依頼開始キー３０６において、ユーザが開始することが出来るワークフローを一覧表示する。ユーザは、表示されたキーの一覧から１つを選択して押下する。このことによりＭＦＰ１００は、選択されたワークフローを開始する。ワークフローの例としては、製本印刷依頼、名刺印刷依頼、文書電子化依頼、配布資料印刷依頼、ポスター作成依頼等が挙げられる。なお、各ワークフローには、図４にて後述するように作業工程が登録されている。よって、各種ワークフロー依頼開始キーの何れか１つが選択され、ワークフローの実行が指示されると、ワークフロー制御部２０７は、選択されたワークフローに登録されている作業工程を呼び出して、作業工程に対応する処理を実行する。
【００５３】
編集キー３０７は、ユーザがワークフロー依頼キー３０５を押下することにより表示された各種ワークフロー依頼開始キー３０６の登録情報を編集するためのキーである。ユーザがこのボタンを押下すると、編集画面が表示され、各ワークフローの表示名等の登録情報を編集することができる。
【００５４】
図４は、ユーザが「ワークフロー一覧」画面３００の各種ワークフロー依頼開始キー３０６から１つ選択した場合に表示される「ワークフロー開始」画面４００の一例を示す図である。「ワークフロー開始」画面４００は、ワークフロー依頼開始キーの選択に従って、複数の作業工程から構成されるワークフローを実施する前に、ワークフローの処理過程に含まれる作業工程毎に必要となる各機能別使用量を算出するための画面である。なお、図４では一例として「配布資料印刷依頼」が選択された場合の画面の例を図示している。また、本願では、ワークフローに含まれる複数の作業工程を複数のユーザによって実行する形態を想定して記載しているが、それに限られる必要はなく、１人のユーザによって実行されてもよい。
【００５５】
名称表示欄４０１は、選択されたワークフローの表示名を画面表示する欄である。コメント表示欄４０２は、選択されたワークフローの内容を文書でコメント表示するための欄である。
【００５６】
処理ステップ確認欄４０３は、選択されたワークフローを構成する複数の工程内容を表示するための欄である。ここで図示している例は、依頼者（つまりＭＦＰ１００にログインしているユーザ本人）が原稿を読み込ませて依頼を行うと、次に承認者（例えば組織上の上長）が承認を行い、その次に作業者が依頼された原稿を印刷するというワークフローである。つまり、配布資料印刷依頼ワークフローは、原稿読み込み（依頼者）、承認（承認者）、印刷（作業者）という３つの作業工程を順番に処理するように定義されている。
【００５７】
標準工程日数表示欄４０４は、該当するワークフローが開始から完了までにかかる標準的な日数を参考情報として表示するための欄である。希望完了日設定キー４０５は、該当するワークフローがいつ（年月日）までに完了することを希望するのか、を設定するためのキーである。
【００５８】
希望部数設定キー４０６は、希望する部数をユーザが設定するためのキーである。印刷体裁設定キー４０７は、希望する仕上がりの印刷体裁をユーザが設定するためのキーである。なお、図４においては、依頼者が希望部数を設定する。ここで、印刷体裁とは、例えば、カラー／モノクロ、片面／両面、面付け、製本指定等である。
【００５９】
優先度設定キー４０８は、ワークフローの処理優先度をユーザが設定するためのキーである。ここで、処理優先度とは、例えば、優先／標準等である。
【００６０】
開始キー４０９は、「ワークフロー開始」画面４００に表示されている内容のワークフローをユーザが開始依頼する際に押下するキーである。開始キー４０９を押下されると、ワークフロー制御部２０７等の制御に応じて、ユーザに対して必要な操作の指示（例えば「原稿を原稿台にセットして下さい」等）を行う。そして、「ワークフロー開始」画面４００においてユーザから設定された情報を、操作制御部２０５を経由して取得することにより、使用量算出処理部２０７１がワークフローを実施するにあたり各工程の処理を担当するユーザが必要とする使用量を算出する。そして、ワークフロー開始の条件が満たされると、ワークフロー制御部２０７によりワークフローが開始される。なお、ワークフロー開始の条件の一例として、選択されたワークフローに含まれる各作業工程の処理を担当する各ユーザの実行可能な使用可能量が当該各作業工程にて使用する使用量以上であるか否かが挙げられる。
【００６１】
取り消しキー４１０は、「ワークフロー開始」画面４００に表示されたワークフローを開始しない場合にユーザが押下するキーである。取り消しキー４１０が押下されるとタッチパネル部に表示されている画面は、「ワークフロー一覧」画面３００に戻る。
【００６２】
図５は、ワークフロー情報記憶部２０４２の一部であるワークフロー情報記憶テーブル５００の一例を示す図である。図３の「ワークフロー一覧」画面３００の画面例で挙げたワークフローの一覧はワークフロー情報記憶テーブル５００に格納される。図５では一例として、図４の「ワークフロー開始」画面４００で挙げた「配布資料印刷依頼」ワークフローの部分の構成をＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）形式にて表している。但し、ワークフローの情報は、テキスト形式やリレーショナル・データベース等において格納してもよい。ワークフロー情報記憶テーブル５００は主にワークフロー制御部２０７が参照する。
【００６３】
ｗｏｒｋｆｌｏｗタグ５０１は、ワークフローの内容を表す。ｗｆｉｄ属性は該当するワークフローを一意に識別する識別子である。図５の例では"ｆｉｄ＿００２"という識別子が割当てられている。ｃａｐｔｉｏｎ属性は、該当するワークフローの名称を表す。図３の「ワークフロー一覧」画面３００の各種ワークフロー依頼開始キー３０６の表示名や図４の「ワークフロー開始」画面４００の名称表示欄４０１に表示される名称はｃａｐｔｉｏｎ属性から引用される。
【００６４】
ｓｔａｎｄａｒｄ属性は、該当するワークフローの完了までに要する標準的な期間を表す。「ワークフロー開始」画面４００の標準工程日数表示欄４０４に表示される日数は、ｓｔａｎｄａｒｄ属性から引用される。ｌｉｍｉｔ属性は、該当するワークフローに対して定める一定期間であり、ユーザによりワークフローが放置された場合等一定期間を過ぎても処理されなかった残りの処理に関する予約使用量を開放する目的で用いられる。ｓｔｅｐ属性は、該当するワークフローを構成する作業工程の数を表す。
【００６５】
ａｃｔｉｖｉｔｙタグ５０２は、ｗｏｒｋｆｌｏｗタグ５０１の子タグであり、ワークフローを構成する個々の作業工程（又はアクティビティ）の内容を表す。ａｃｔｉｄ属性は、該当する作業工程を一意に識別する識別子であり、図５の例では"ａｉｄ＿ｒｅｑ＿００１"という識別子が割当てられている。ｒｏｌｅ属性は、該当する作業工程を実行可能な権限を表している。ワークフロー制御部２０７は、ｒｏｌｅ属性に応じて、ユーザやグループに対して認証システムにおいて割当てられた権限に応じて利用可能か否かを判断する。例えば、図４の配布資料印刷依頼の２つ目の工程のｒｏｌｅ属性には、「ｓｕｐｅｒｉｏｒ」と記載されている。つまり、ワークフロー制御部２０７は、「ｓｕｐｅｒｉｏｒ」というユーザ権限が与えられたユーザが承認した場合のみ、承認処理の実行を認める。
【００６６】
ｃａｐｔｉｏｎ属性は、該当する作業工程の名称を表している。「ワークフロー開始」画面４００の処理ステップ確認欄４０３に表示される名称はｃａｐｔｉｏｎ属性から引用される。ｓｅｑ属性は、該当するワークフローを構成する複数の作業工程の処理順を表している。ａｃｔｉｖｉｔｙタグ５０２の子タグとしてａｃｔｉｏｎタグがあり、該当する作業工程の処理内容を示すスキャンや送信等の機能種類（ｔｙｐｅ属性）と、カウンタ等の使用量算出のための係数（ｃｏｕｎｔｅｒ＿ｃｏｅｆｆｉｃｉｅｎｔ）とが規定される。
【００６７】
図６は、上限量記憶部２０４１の一部である使用上限量記憶テーブル６００の一例を示す図である。使用上限量記憶テーブル６００は主に、使用量制御部２０６、使用量予約処理部２０６１、使用量予約繰越処理部２０６２によって更新／参照される。使用上限量記憶テーブル６００は、ユーザやグループに対して一定期間に使用可能な用紙枚数等の上限値を設定し、制限を行うために用いられる。図６に示すように上限量記憶部２０４１は、ワークフローに含まれる複数の工程の複数種類の機能毎の使用量の上限値を管理する。
【００６８】
ユーザＩＤ６０１は、ユーザ又はグループを一意に識別する識別子である。ユーザ又はグループがＭＦＰ１００を利用するためにログイン等に際して入力した情報を用いて、ＭＦＰ１００に導入されている認証システムにより識別される識別子である。
【００６９】
機能種類６０２は、使用量を集計する対象の機能を表す。機能種類としては、印刷（ｐｒｉｎｔ）、スキャン（ｓｃａｎ）、送信（ｓｅｎｄ）、ディスク使用量（ｄｉｓｋ）、使用時間（ｔｉｍｅ）等が例として挙げられる。
【００７０】
切替日時６０３は、使用量を集計する一定期間が定められている場合の、現集計期間と次の集計期間との切替日時である。つまり、現在算出されている使用済み使用量は、切替日時になるとリセットされる。使用上限量記憶テーブル６００への新規登録は管理者権限を持つユーザ等が操作することにより行われる。その際には、新たな上限値管理の一定期間、つまり集計すべき期間を次の上限値管理期間に切り替える日時を切替日時６０３に設定する。
【００７１】
使用上限量記憶テーブル６００は、ユーザＩＤ６０１と、機能種類６０２と、切替日時６０３との組み合わせで一意となり、それに対して各使用量情報が格納される。
【００７２】
上限使用量６０４は、各ユーザが該当する機能を一定期間に使用することが可能な上限値を定める数値であり、単位は各機能によって異なる。例としては、印刷１０００００カウンタやディスク容量８１９２ＭＢ等が挙げられる。
【００７３】
使用済み使用量６０５は、各ユーザが該当する機能を該当する期間に実際に使用した使用量を表す数値である。この数値が上限使用量６０４の数値に達すると、ユーザは次の切替日時６０３までの間は該当する機能の利用が制限される。
【００７４】
予約使用量情報６０６は、該当するユーザが該当する機能を該当する期間において実際に使用する前に確実に使用できるように予め必要な値を確保する予約数を表す。予約使用量情報６０６は、予約ジョブＩＤ６０６１と、予約使用量６０６２との組み合わせを複数保持することが可能であり、その複数の予約使用量の合計が総予約使用量となる。予約ジョブＩＤ６０６１は、使用量予約を行うワークフローのジョブＩＤを示し、例えば"ｆ３５０／３"とあれば、フロー・ジョブＩＤ"ｆ３５０"を構成する３番目の工程であることを指す。予約使用量６０６２は、該当する予約ジョブＩＤにおいて予約する使用量である。例えば図６には、ユーザＩＤ「ｋａｔｏ」には、「ｐｒｉｎｔ」機能の上限値として「１０００００」枚が設定されており、現在の一定期間において「８５２００」枚の印刷が実行されていることが示されている。さらに、ワークフロー「ｆ３５０／３」において「１００００」枚の印刷とワークフロー「ｆ３５２／３」において「２５０」枚の印刷を行うことが予約されている。以上より、ユーザＩＤ「ｋａｔｏ」は、現在の一定期間において、「１０００００（上限使用量）―｛８５２００（使用済み使用量）＋（１００００＋２５０（予約使用量））｝により算出される「４５５０」枚分の印刷を実行することができる。
【００７５】
ＭＦＰ１００においてユーザが、複数のユーザの作業による複数の作業工程から構成されるワークフローを開始しようとすると、次のような処理が行われる。ワークフロー制御部２０７が使用量算出処理部２０７１を用いてワークフローの処理過程に含まれるユーザ毎に必要となる各機能別使用量を算出する。そして、使用量予約処理部２０６１が算出された使用量を、該当する予約使用量６０６（予約ジョブＩＤ６０６１と、予約使用量６０６２と）に加算登録する。
【００７６】
あるユーザの機能種類の当期間における現在の使用可能使用量は、以下の計算式で算出される。
「使用可能使用量＝上限使用量６０４−（使用済み使用量６０５＋総予約使用量）」
使用可能使用量が０になった場合、又は実行しようとする作業工程に必要となる使用量に満たなくなった場合には、ジョブの実行が制限される。
【００７７】
図７は、ワークフロー・ステータス記憶部２０４３の一部であるワークフロー実行ステータス管理テーブル７００の一例を示す図である。ワークフロー実行ステータス管理テーブル７００は主に、ワークフロー制御部２０７が登録／更新／参照を行い、複数のユーザの作業による複数の作業工程から構成されるワークフローの実行状態を管理する。
【００７８】
フロー・ジョブＩＤ７０１は、ユーザがワークフローを開始する際に発行されるワークフローを一意に識別するための識別子である。フロー・ジョブＩＤ７０１は、図６で説明した予約ジョブＩＤ６０６１や、後述するジョブ履歴管理テーブル８００との紐付けのために格納される。
【００７９】
開始日時７０２は、該当するワークフローが開始された日時が格納される。開始ユーザＩＤ７０３は、該当するワークフローを開始したユーザ又はグループのＩＤを格納する。図６のユーザＩＤ６０１と同様に、ＭＦＰ１００に導入されている認証システムにより識別される識別子である。
【００８０】
フローＩＤ７０４は、該当するワークフローを識別するための識別子が格納される。フローＩＤ７０４に格納される識別子は、ワークフロー制御部２０７が、図５のワークフロー情報記憶テーブル５００のｗｏｒｋｆｌｏｗタグのｗｆｉｄ属性に格納されているＩＤを引用して格納した識別子である。
【００８１】
希望完了日時７０５は、ワークフローを開始する際に依頼ユーザが図４の希望完了日設定キー４０５を操作する等して設定する、ワークフローの最終ステップが完了するまでの希望完了日時が格納される。
【００８２】
現ステータス７０６は、複数の作業工程から構成されるワークフローの何番目の作業工程まで進んだのかが格納される。例えば、"３／３"となっていれば３つの工程から構成されるワークフローの３番目の作業工程まで処理が進んでいることを示す。
【００８３】
完了ステータス７０７は、該当するワークフローが完了したのか、まだ処理中なのか、完了したのであればその完了が正常に処理されたのかキャンセルされたのか、等の完了の状態が格納される。
【００８４】
優先度７０８は、ワークフローを開始する際に依頼ユーザが図４の「ワークフロー開始」画面４００の優先度設定キー４０８を操作する等して設定する、ワークフローに対する処理優先度が格納される。ここで、優先度「ｈｉｇｈ」が設定されているワークフローは、優先度「ｎｏｒｍａｌ」、「ｌｏｗ」が設定されているワークフローよりも優先して実行される。一方、優先度「ｎｏｒｍａｌ」が設定されているワークフローは、優先度「ｌｏｗ」が設定されているワークフローよりも優先して実行される。
【００８５】
完了期限日時７０９は、開始日時７０２に図５のワークフロー情報記憶テーブル５００のｗｏｒｋｆｌｏｗタグのｌｉｍｉｔ属性に格納されている一定期間を加算した日時が格納される。ユーザによりワークフローが放置された場合等に、この完了期限日時７０９の日時を過ぎても処理されなかった残りの作業工程に関する予約使用量を開放する目的で用いられる。例えば、図７においてフロー・ジョブＩＤ「ｆ＿３５１」のワークフローは３つの作業工程のうち２つ目の作業工程であることが記憶されている。この状態で、完了期限日まで処理が実行されなかった場合、３つ目の作業工程用に予約されていた予約し容量は開放され、他のワークフロー用に使用することが可能となる。
【００８６】
ワークフローに含まれない一般的な作業工程を優先度の高いジョブとして、既に予約されているワークフローの作業工程より優先させて実行したい場合がある。優先度の高いジョブを他の予約ジョブに優先して処理するため、使用量を使用上限量記憶テーブル６００の上限使用量６０４以内に収めるには、他の予約ジョブに関する予約使用量６０６２を開放する必要がある。このように使用量制御部２０６が判断した場合、次のような処理が行われる。
【００８７】
まず、使用量制御部２０６が、優先度の高いジョブの内容（ユーザＩＤ６０１、機能種類６０２、切替日時６０３）から関連する他の予約ジョブのデータを検索する。使用量制御部２０６は、優先度の高いジョブを実行するために必要な使用量を処理できるか否か判定する。例えば、ユーザＩＤ「１」のユーザが、１週間あたり５０ページ分の印刷が可能であり、現在３０ページ印刷が処理済み、かつ、１５ページ分予約されているとする。この場合、ユーザＩＤ「１」のユーザは、残り５ページの印刷を実行することができる。この状態で、２０ページの印刷処理を実行しなければならない優先度の高いジョブが入力された場合、使用量制御部２０６は、予約されている１５ページ分を解放すれば、優先度の高いジョブについて処理可能と判断する。
このように、使用量制御部２０６が、未処理状態の予約ジョブをキャンセルすることによって、優先度の高いジョブを実行可能であると判定した場合、予約ジョブの予約ジョブＩＤ６０６１を取得する。
【００８８】
使用量制御部２０６は、取得した予約ジョブＩＤをキーにしてワークフロー実行ステータス管理テーブル７００を検索し、優先度７０８と、完了期限日時７０９とを取得する。そして、使用量制御部２０６は、まずは優先度の高いジョブの優先度と、予約ジョブの優先度とで優先度の比較を行う。
【００８９】
予約ジョブの優先度が、優先ジョブの優先度と同等以上であった場合には割込み処理は許可されないが、それ未満であった場合には割り込みが許可される。
【００９０】
割り込みが許可された場合、使用量制御部２０６は、取得した予約ジョブの完了期限日時が、当該予約ジョブの切替日時６０３以前に設定されているか否かを判定する。
【００９１】
取得した予約ジョブの完了期限日時が、当該予約ジョブの切替日時６０３以前に設定されていた場合、使用量予約処理部２０６１は、使用上限量記憶テーブル６００に予約されていた予約使用量情報６０６を開放する。これは、予約ジョブが切替日時以前に完了する場合、当該予約ジョブを開放することによって、切替日時前において優先ジョブを処理するための使用量を確保できるからである。
【００９２】
この場合、予約ジョブを含むワークフローは、上限使用量６０４の制限により、実行が制限される可能性がある。
【００９３】
一方、取得した予約ジョブの完了期限が関連する使用上限量記憶テーブル６００の切替日時６０３より後に設定されている場面を想定する。この場合、使用量予約繰越処理部２０６２は、使用上限量記憶テーブル６００の予約使用量情報６０６を、ユーザＩＤ６０１と機能種類６０２が同一で、切替日時６０３以降の期間のデータに繰り越す。これは、予約ジョブを含むワークフローに属するジョブのためである。
【００９４】
このような処理を行うことにより、優先度の高いジョブに割り込まれても、予約ジョブを含むワークフローは完了期限日時を満たしながら予約使用量も確保することができる。
【００９５】
図８は、ジョブ履歴部２０４４の一部であるジョブ履歴管理テーブル８００の一例を示す図である。ジョブ履歴管理テーブル８００は、主に使用量制御部２０６が登録／参照を行い、ワークフローを構成する個別の作業工程だけでなく、それ以外の処理も含めた操作ジョブの履歴を格納する。
【００９６】
ジョブＩＤ８０１は、ＭＦＰ１００においてジョブが実行される際に一意に発行される識別子である。
【００９７】
機能種類８０２は、ジョブの種類を表す。ジョブの種類として、例えば、印刷（ｐｒｉｎｔ）、スキャン（ｓｃａｎ）、送信（ｓｅｎｄ）、コピー（ｃｏｐｙ）等が例として挙げられる。
【００９８】
結果８０３は、ジョブの処理結果を表す。処理結果としては、例えば、正常終了（ＯＫ）、停止（ＳＴＯＰ）、エラー（ＥＲＲ）等が例として挙げられる。
【００９９】
ジョブ名８０４は、ジョブ処理の対象となった画像データや文書データの名称を表す。宛先８０５は、機能種類８０２が送信（ｓｅｎｄ）であった場合の送信先の宛先を表し、電子メールアドレスや電話番号、ＭＦＰ１００に登録済みの登録名等が格納される。
【０１００】
開始時間８０６は、該当するジョブ処理が開始された時間が格納される。使用量８０７は、該当するジョブ処理に使用された使用量（カウンタ値）が格納される。
【０１０１】
ユーザＩＤ８０８は、該当するジョブ処理を実施したユーザ又はグループを一意に識別する識別子である。図６のユーザＩＤ６０１と同様に、ＭＦＰ１００に導入されている認証システムにより識別される識別子である。
【０１０２】
フロー・ジョブＩＤ８０９は、ユーザがワークフローを開始する際に発行されたワークフローを一意に識別するための識別子であり、図７のフロー・ジョブＩＤ７０１や図６の予約ジョブＩＤ６０６１と紐付けのために格納されている。
【０１０３】
複数のユーザの作業による複数の作業工程から構成されるワークフローが実行される際に、ワークフローに含まれるジョブ処理が行われると、使用量制御部２０６によりジョブ処理の内容がジョブ履歴管理テーブル８００に追加される。その際には、実際に用いられたカウンタ値等が使用量８０７に記録される。すると、ワークフロー制御部２０７が、フロー・ジョブＩＤ８０９をキーとしてワークフロー実行ステータス管理テーブル７００を検索し、関連するワークフローのステータス（現ステータス７０６、完了ステータス７０７）を更新する。
【０１０４】
またワークフロー制御部２０７は、該当するジョブの機能種類８０２、開始時間８０６、ユーザＩＤ８０８、フロー・ジョブＩＤ８０９、フローＩＤ７０４等に基づいて、使用上限量記憶テーブル６００を検索する。そして、ワークフロー制御部２０７が、検索したデータの使用済み使用量６０５を加算しつつ、使用量予約処理部２０６１が、処理が終わった予約ジョブ情報６０６をクリアする。
【０１０５】
図９を用いて、ＭＦＰ１００において、複数のユーザの作業による複数の作業工程から構成されるワークフローを実施する前に、ワークフローの処理過程に含まれるユーザ毎に必要となる各機能別使用量を予測算出してからワークフローを実行する処理を説明する。なお、図９の各ステップは、ＭＦＰ１００のＣＰＵ２０１によって実行される。
【０１０６】
図９は、ワークフローを実行する制御方法の一連の処理を示すフローチャートである。まず、図４の「ワークフロー開始」画面４００が、ユーザの指示によって、ＭＦＰ１００のタッチパネル部に表示され、設定がなされて「開始」キー４０９が押下される。すると、ステップＳ１０１において、まずＭＦＰ制御部２００は、対象となるワークフロー、部数、印刷体裁、原稿文書を特定する。そして、使用量算出処理部２０７１が特定した情報を基にして、処理対象ワークフローの過程に含まれる各工程を処理すべきユーザと、その工程の作業内容である機能種類ごととに、依頼された処理情報を処理するために必要となるカウンタ値等の使用量を算出する。なお、処理情報とは、選択されたワークフローを用いて処理すべき仕事であり、例えば処理情報にて出力すべき部数や読み込むべき原稿数は、図４の画面を介して入力された値が設定される。
【０１０７】
より具体的に説明すると、まず、ＡさんがＭＦＰ１００のタッチパネル部に表示された「ワークフロー一覧」画面３００から「配布資料印刷依頼」ワークフローを選択する。続いてＡさんがワークフロー開始画面４００を用いて希望完了日は１０日後、希望部数は１０００部、印刷設定はＡ４、カラー、両面印刷、優先度は標準、原稿ページ数は１０ページを指定し、開始キー４０９を押下してワークフローを開始したとする。なお、この際、原稿ページはスキャン処理によって取り込まれてもよい。すると、ワークフロー制御部２０７は、ワークフロー情報記憶テーブル５００から取得した「配布資料印刷依頼」ワークフロー（ｗｆｉｄ＝"ｆｉｄ＿００２"）情報と、認証システムからの情報とを基にして、ワークフローの処理過程を取得する。このことにより、例えば、
「Ａさん」が「申請」として「原稿スキャン」と、「送信」とを行い、
次にＡさんの上長である「Ｂさん」が「承認」して「送信」を行い、
次に作業者である「Ｃさん」が「印刷」を行う、
という作業工程が当該ワークフローに含まれていると判明する。
【０１０８】
使用量算出処理部２０７１は、選択されたワークフローに含まれる作業工程の処理内容と設定された部数や体裁等に基づいて、
Ａさん：スキャンカウンタ１０、送信カウンタ１、ディスク容量３２ＭＢ、
Ｂさん：送信カウンタ１、
Ｃさん：印刷カウンタ：１００００、使用時間：３０分
のように、各作業工程を実行する作業者単位に必要使用量を事前に算出できる。
【０１０９】
ステップＳ１０２において、使用量予約処理部２０６１が、Ｓ１０１にて算出された必要使用量と、ワークフローの過程に含まれる各作業工程の当期間の使用可能量とを比較し、必要使用量が使用可能量に収まるかどうかをチェックする。使用量予約処理部２０６１は、使用上限量記憶テーブル６００から、ユーザＩＤ６０１と、機能種類６０２と、切替日時６０３とに基づいて、ワークフローに含まれる各作業工程に関連するデータを検索する。
【０１１０】
使用量予約処理部２０６１は、図６の説明時に記載した計算式である「使用可能使用量＝上限使用量６０４−（使用済み使用量６０５＋総予約使用量）」を用いて、使用可能使用量を算出し、ステップＳ１０１において算出された必要使用量と比較する。そして、ワークフローに含まれる各作業工程の必要使用量が使用可能使用量以下であった場合には、上限値に余裕があるとしてステップＳ１０８へと進む。逆に、ワークフローに含まれる各作業工程の少なくとも１つの工程の必要使用量が使用可能使用量以上であった場合には、上限値に余裕無しとしてステップＳ１０３へと進む。
【０１１１】
Ｓ１０３において、使用量予約処理部２０６１は、Ｓ１０２の処理により必要使用量が使用可能使用量以上であると判定された工程について、当該工程を担当するユーザの予約使用量６０６２の値を使用可能使用量に加算すれば必要使用量を満たすかを判定する。つまり、他のワークフロー用に予約されている予約使用量をキャンセルすることによって、現在処理対象としている作業工程の処理が実行可能となるか否かを判定する。Ｓ１０３の判定処理によって、現在処理対象としている作業工程の必要使用量が、先行するワークフローの予約使用量６０６２の値を流用して使用可能使用量に加算すれば必要使用量を満たす場合には、ステップＳ１０４へと進む。
一方、ワークフローに含まれる全作業工程のうち、必要使用量が使用可能使用量以上であった作業工程について、予約使用量を流用しても当該作業工程の必要使用量が、使用可能使用量を上回る場合、ステップＳ１０７へと進む。
【０１１２】
ステップＳ１０４において、まず、ワークフロー制御部２０７が、使用量予約処理部２０６１から、予約使用量６０６２を流用する意義のある先行するワークフローの作業工程の予約ジョブＩＤ６０６１（例えば、"ｆ３５０／３"）を受取る。なお、流用する意義のある先行ワークフローの作業工程とは、当該作業工程の予約を開放することで、Ｓ１０２によって余裕がないと判定された作業工程の使用可能量が増加する工程を指す。一例として、カラー印刷という作業工程が、使用可能量不足により実行できない状態であり、カラー印刷のカウント値とモノクロ印刷のカウント値を個別に管理している場面を想定する。ここで、単に印刷工程であってもモノクロ印刷を行う作業工程を有するワークフローの予約使用量を開放しても、モノクロ印刷の使用可能量は増加するがカラー印刷の使用可能量は増加しない。一方、カラー印刷を行う作業工程を有するワークフローの予約使用量を開放すると、カラー印刷の使用可能量が増加し、使用可能量不足が解消される。よって、この場合は、カラー印刷を行う作業工程を有するワークフローが意義のある先行ワークフローとなる。
【０１１３】
Ｓ１０３〜Ｓ１０４について詳細に説明する。ワークフロー制御部２０７が、Ｓ１０２において必要使用量が使用可能使用量以上であると判定された作業工程の作業内容から、機能種類を特定する。図６にて上述したように使用上限記憶テーブルには、ユーザ毎に予約ワークフローと予約使用量が対応付けて管理されている。よって、ワークフロー制御部２０７は、図６の使用上限記憶テーブルを参照して、Ｓ１０２において必要使用量が使用可能使用量以上であると判定された作業工程の作業者について、特定された機能種類を予約しているワークフローがあるか否かを判定する。そして、特定された機能種類と同じ機能種類が予約されている場合、使用量予約処理部２０６１は、特定したワークフローの予約ジョブＩＤをワークフロー制御部２０７に通知する。
【０１１４】
続いて、ワークフロー制御部２０７は、予約ジョブＩＤ６０６１に含まれるフロー・ジョブＩＤをキーにして、ワークフロー実行ステータス記憶テーブル７００を検索する。続いて、ワークフロー制御部２０７は、予約使用量を流用する対象となったワークフローの開始ユーザＩＤ７０３を特定する。
【０１１５】
そして、ワークフロー制御部２０７は、本ワークフローの開始を依頼したユーザに対してタッチパネル部に「先行予約されているワークフローの依頼者に、処理順変更の認可を申請しますか？」と画面表示する。ユーザが「はい」と選択したと判断すると、ステップＳ１０５へ進み、ユーザが「いいえ」を選択したと判断すると、ステップＳ１０７へ進む。
【０１１６】
ステップＳ１０５において、ワークフロー制御部２０７は、ステップＳ１０４で取得した開始ユーザＩＤ７０３のユーザに対して、後続のワークフローの依頼者からワークフローの処理順序の入れ替え要求がある旨を通知する。その通知を受取った先行ワークフローの依頼ユーザが承認／拒否を行う方法についての詳細な説明はここでは省略する。なお、通知方法の一例としては、ＭＦＰの記憶部に各ユーザのメールアドレスが記憶されていれば、特定されたユーザのメールアドレスを指定して、処理順を変更してもよいか否かを訪ねる。
【０１１７】
ステップＳ１０６において、ワークフロー制御部２０７は、先行ワークフローの依頼ユーザがワークフロー処理順序の入れ替えを承認したか否かを判定する。先行ワークフローの依頼ユーザがワークフロー処理順序の入れ替えを承認した場合、ワークフロー制御部２０７から指示された使用量予約処理部２０６１は、以下の処理を行い、ステップＳ１０８へと進む。つまり、使用量予約処理部２０６１は、ステップＳ１０３においてピックアップされた先行するワークフローの工程において使用する予約ジョブＩＤ６０６１の予約使用量６０６２を開放し、ステップＳ１０８へと進む。
【０１１８】
一方、先行ワークフローの依頼ユーザがワークフロー処理順序の入れ替えを拒否した場合、ステップＳ１０７へと進む。
【０１１９】
ステップＳ１０７において、ワークフロー制御部２０７は、本ワークフローの依頼ユーザに対してタッチパネル部に画面表示、又は電子メール等を介して、「上限使用量に達してしまうため、ワークフロー依頼は○月○日以降までお待ち下さい。」という旨の通知を行う。これにより、図９に示す一連の制御方法の処理を終了する。この通知は、例えば現在の期間では、既に使用済み使用量および予約使用量によって処理することができないが、これらの使用量がリセットされれば実行可能となるため、ワークフロー制御部２０７は、このリセット処理を実行する切替日時を通知する。
【０１２０】
ステップＳ１０８において、ワークフロー制御部２０７は、本ワークフローを一意に識別するフロー・ジョブＩＤを生成し、ワークフロー実行ステータス管理テーブル７００に本ワークフローの情報を新規追加する。その際、ワークフロー制御部２０７は、ワークフロー情報記憶テーブル５００の該当するｗｏｒｋｆｌｏｗタグ５０１のｌｉｍｉｔ属性に設定された一定期間をワークフロー実行ステータス管理テーブル７００の開始日時７０２に加算する。ワークフロー制御部２０７は、このように加算し、算出した日時を、完了期限日時７０９に設定する。
【０１２１】
使用量予約処理部２０６１は、ステップＳ１０１において導き出したワークフローの過程に含まれる作業工程を処理すべきユーザと、当該作業工程の機能種類ごとに必要となる使用量とを、使用上限量記憶テーブル６００の予約使用量情報６０６として追加登録する。ここで、追加登録される予約使用量情報６０６は、予約ジョブＩＤ６０６１と、予約使用量６０６２との組み合わせである。
【０１２２】
この処理により、本ワークフローの実行前に、当該ワークフローに含まれる複数のユーザの複数の工程の機能毎に使用量を予約することが可能となる。
【０１２３】
こうして、ステップＳ１０９において、ワークフロー制御部２０７は、本ワークフローの実際のジョブ処理を開始する。
【０１２４】
ステップＳ１１０において、ワークフロー制御部２０７は、フロー過程で例外が発生したか否かを判定する。ステップＳ１１０の分岐は、本ワークフローの処理過程での例外発生についての分岐である。なお、本願において想定する例外とは、ワークフローに含まれる作業工程を正常に実行できない状態を指し、フロー過程でのエラー、キャンセル、期限超過、集計すべき期間の切り替わり等を指すが、これに限られる必要はない。
【０１２５】
正常に処理が進んでいる場合（Ｓ１１０−Ｎｏ）、ワークフロー制御部２０７は、ステップＳ１１８の処理へと進む。例外の種類が、ユーザがＭＦＰ１００等を操作して本ワークフロー処理実行のキャンセルや却下を選択した場合、エラーが発生したことにより、ワークフロー処理が継続できなくなった場合、ワークフロー制御部２０７は、ステップＳ１１１の処理へと進む。一方、例外の種類が、本ワークフローの処理者となっているユーザが処理を忘れてしまい、ジョブ処理が放置され期限を超過する場合、ワークフロー制御部２０７は、ステップＳ１１４の処理へと進む。一方、例外の種類が、本ワークフローの過程で使用量に関する上限値管理の集計期間の切替日時を超える場合、ワークフロー制御部２０７の処理はステップＳ１１６へと進む。
【０１２６】
ステップＳ１１１において、ＭＦＰ制御部２００に対して操作制御部２０５や外部インターフェース２０３等を介してユーザから実行中の本ワークフローのキャンセルが伝えられると、ワークフロー制御部２０７がワークフロー中断の処理を行う。ユーザによるキャンセルや却下の他、システム上の事由によりこれ以降に本ワークフローを継続することが困難であるとＭＦＰ２００が判断した場合にも、ワークフロー制御部２０７がワークフロー中断の処理を行う。
【０１２７】
ステップＳ１１２において、ワークフロー制御部２０７は、ワークフロー実行ステータス管理テーブル７００を検索して、本ワークフローの開始ユーザＩＤ７０３を取得する。続いて、ワークフロー制御部２０７は、開始ユーザに対して、キャンセルや却下（又はエラー）等の理由により、本ワークフローを中断する旨を通知する。
【０１２８】
ステップＳ１１３において、ワークフロー制御部２０７から指示を受けた使用量予約処理部２０６１は、使用上限量記憶テーブル６００に登録済みの本ワークフローに含まれる各工程を開放する。また、ワークフロー制御部２０７から指示を受けた使用量予約処理部２０６１は、予約ジョブＩＤ６０６１で紐付く予約使用量６０６２がある場合には、予約使用量も開放する。この開放によって、使用量制御部は、使用可能な量を開放した使用量だけ増加する。
続いて、ワークフロー制御部２０７は、ワークフロー実行ステータス管理テーブル７００の本ワークフローと、フロー・ジョブＩＤ７０１で紐付くデータの完了ステータス７０７とをキャンセル（又はエラー）に更新する。これにより、一連の制御方法の処理を終了する。
【０１２９】
ステップＳ１１４は、本ワークフローの処理者となっているユーザが処理を忘れてしまってジョブ処理が放置されてしまった場合に実行される。例えば、ステップＳ１０１で例を挙げたＡさんの上長であるＢさんが本ワークフローの承認処理を忘却してしまい長期間放置してしまった場合等である。
【０１３０】
ステップＳ１１４において、ワークフロー制御部２０７は、ステップＳ１０８で設定されたワークフロー実行ステータス管理テーブル７００の完了期限日時７０９を監視することにより、一定期間を過ぎても本ワークフローが完了していないことを検知する。
【０１３１】
ステップＳ１１５において、ワークフロー制御部２０７から指示を受けた使用量予約処理部２０６１は、使用上限量記憶テーブル６００に登録済みの本ワークフローに含まれる未処理分の作業工程を開放する。また、ワークフロー制御部２０７から指示を受けた使用量予約処理部２０６１は、予約ジョブＩＤ６０６１で紐付く予約使用量６０６２がある場合には、予約使用量も開放し、ステップＳ１１０に進む。つまり、この場合には放置された本ワークフローに関しては予約使用量が確保されない。その代わりに、その他のジョブのために使用可能使用量を増やすことができる。
【０１３２】
ステップＳ１１６は、本ワークフローの処理過程で使用量に関する上限値管理の集計期間の切替日時を超える場合、実行される。例えば、上限値管理が月単位で行われている際に、６月中に開始されたワークフローの処理中に７月になった場合等である。管理者権限を持つユーザ等の操作により、使用量制御部２０６が使用上限量記憶テーブル６００に新規登録する際には、上限値管理の一定期間、つまり次の上限値管理期間との集計期間の切替日時６０３を設定する。
【０１３３】
ステップＳ１１６において、使用量予約繰越処理部２０６２は、集計期間の切替日時の監視を行うことにより、集計期間の切り替わりを検知する。
ステップＳ１１７において、使用量予約繰越処理部２０６２は、切替日時６０３になると、使用上限量記憶テーブル６００を検索する。そして、使用量予約繰越処理部２０６２は、切替日時以前に予約使用量情報６０６に登録されていた予約情報を、ユーザＩＤ６０１と、機能種類６０２とが同一で切替日時６０３が次の期間であるデータに付け替えてから、ステップＳ１１０に進む。
【０１３４】
つまり、例えばステップＳ１０１で例を挙げたＣさんが本ワークフローの処理を待っていた時に６月から７月になった場合にも、６月に予約してあったＣさんの予約使用量が自動的に７月の予約使用量として付け替えられることとなる。なお、Ｓ１１６、Ｓ１１７の処理は、図１０のフローチャートを用いて詳細に説明する。
【０１３５】
なお、ワークフローに含まれる未処理の作業工程に関する予約使用量の次の集計期間への予約使用量の付け替えは、ジョブ処理の実行が切替日時より後になることが明白になった時点で行ってもよい。
【０１３６】
正常にワークフロー処理が進むと、ステップＳ１１８において、本ワークフローの途中の作業工程の処理を実行するユーザに処理依頼が到達する。例えば、ステップＳ１０１で例を挙げた作業者の「Ｃさん」に電子メール等により「印刷」依頼が到達する。ユーザが図３に例を挙げたＭＦＰ１００のタッチパネル部に表示される「ワークフロー一覧」画面３００を開くと、処理待ちキー３０４に「処理待ち：１件」の様に表示されており、自分が処理すべきワークフローのジョブがあることがわかる。
【０１３７】
ステップＳ１１９において、ユーザが「ワークフロー一覧」画面３００の処理待ちキー３０４を押下すると、処理すべきワークフローのジョブの内容が表示される（図示しない）。例えば、ステップＳ１０１で例を挙げた作業者の「Ｃさん」の場合には、依頼者「Ａさん」から、希望部数１０００部、印刷設定としてＡ４、カラー、両面印刷、優先度は標準であることが通知される。また、スキャンされてＭＦＰ１００内の記憶部２０４に保存されているスキャン原稿を１０ページ印刷するように通知される。この指示に従ってユーザがタッチパネル部で操作することにより、操作制御部２０６が指示を受け、画像処理部２１１やプリンタ制御部２０９により印刷処理が実行される。この際、各設定値情報も通知されるので、ＭＦＰに対してこれらの設定値情報が設定されてもよい。
【０１３８】
ステップＳ１２０において、使用量制御部２０６は、図８で例を挙げたジョブ履歴管理テーブル８００に、実行した作業工程の内容（実際に用いられたカウンタ値等は使用量８０７に）を追加登録する。
また、ワークフロー制御部２０７は、ジョブ履歴管理テーブル８００に追加した該当するジョブのフロー・ジョブＩＤ８０９をキーとしてワークフロー実行ステータス管理テーブル７００を検索し、関連するワークフローの現ステータス７０６を更新する。またワークフロー制御部２０７はジョブ履歴管理テーブル８００に追加した該当するジョブの機能種類８０２、開始時間８０６、ユーザＩＤ８０８、フロー・ジョブＩＤ８０９、フローＩＤ７０４等に基づいて使用上限量記憶テーブル６００を検索する。そして、ワークフロー制御部２０７は、関連するデータの使用済み使用量６０５を加算する。
【０１３９】
ステップＳ１２１において、使用量予約処理部２０６１は、ステップＳ１２０で使用済み使用量６０５が加算されたデータに、処理が終わった予約ジョブ情報６０６が登録されていた場合、該当する予約ジョブＩＤ６０６１と、予約使用量６０６２とをクリアする。
【０１４０】
ステップＳ１２２において、ワークフロー制御部２０７は、本ワークフローにまだ続きの作業工程が有るか否かを判定する。本ワークフローにまだ続きのジョブが有る場合にはステップＳ１１０へと進み、ワークフロー制御部２０７は、例えば、後続のユーザに処理依頼を通知する。一方、いま処理を終えたジョブが本ワークフローの最後であったならば、ワークフロー制御部２０７は、完了処理を行う。つまり、ワークフロー制御部２０７は、ワークフロー実行ステータス管理テーブル７００のフロー・ジョブＩＤ７０１で紐付くデータの完了ステータス７０７に完了ステータスを更新する（例えば、正常であれば"ｏｋ"にする。）。これにより、一連の制御方法の処理を終了する。
つまり、ワークフロー制御部２０７は、対象となっているワークフローに含まれる各作業工程の使用量を予約した場合、ワークフローに関する処理の実行を許可する。
【０１４１】
以上、上述したように本実施形態によれば、ワークフロー開始時点でワークフローに含まれる各作業工程の処理を実行するユーザ毎の機能別の使用量を算出して予約使用量として確保することができる。
これにより、開始時には上限値に余裕があったものの実際にワークフロー処理がユーザに到達するまでに、ユーザが別のジョブを実行したために上限値に近くなってしまい、ワークフロー処理を行うのには使用量が不足し、処理が出来なくなることを防止できる。よって、ワークフローを円滑に進めることができる。
【０１４２】
更に、ワークフローの過程に含まれるユーザの見落とし等により長期に渡って放置されてしまった場合には、一定期間経過後に完了していないワークフローの残りのジョブ処理に関しては予め予約されていた予約使用量を開放する。そのことにより、その他のジョブの使用可能量を必要以上に制限してしまうことを防げる。
【０１４３】
更に、ワークフロー実施前のワークフローの処理過程に含まれるユーザに関して算出された使用量が利用可能使用量より多く、且つ既に予約されている未完了の別ワークフローの予約使用量を利用すればワークフローの予測算出された使用量を満たす場合がある。この場合、別ワークフローの依頼者に対してワークフローの処理順変更の依頼を通知する。そして、通知された依頼者により承認された場合には、予約使用量の振替が行われ、ワークフローの処理順の変更が容易に実施される。
【０１４４】
続いて、集計期間の変化に従って、予約使用量を現集計期間から次の集計期間へと移す場合について図１０のフローチャートを用いて説明する。
【０１４５】
ワークフロー制御部２０７は、現在対象となっているワークフローに含まれる作業工程数をｍ、判定対象となっている作業工程をｎとして管理する（Ｓ１００１）。
【０１４６】
ワークフロー制御部２０７は、判定対象となっている作業工程を初期化して（Ｓ１００２）、判定対象となっているｎ番目の作業工程が集計期間内に処理可能か否かを判定する（Ｓ１００３）。この処理によって、ワークフロー制御部２０７は、ワークフローを構成する複数の作業工程においてに含まれる工程において、使用量に関する上限値の管理の集計期間内に処理が完了しない作業工程を特定する。
【０１４７】
ワークフロー制御部２０７は、現在日時と次の切替日時から次の集計期間までの時間を算出する。そして、判定対象となっている処理工程の処理が終わっていれば、Ｓ１００３−ＹｅｓとしてＳ１００６へと処理を進める。一方、判定対象となっている処理工程の処理が未完了であり、当該処理工程の処理が次の集計期間までの時間内に終わらないと判定された場合、Ｓ１００３−Ｎｏと判定される。ここで、各作業工程に係る処理時間の算出方法について説明する。現在判定対象としている作業工程の機能が、印刷やスキャンであれば、デバイスの処理能力と各作業工程の作業量によって算出できる。また、承認工程であれば、過去の履歴等や機能ごとの基準値から算出する。基準値とは、例えば、「承認工程」であれば「１日」などの処理期間の目安を指す。
【０１４８】
Ｓ１００３によってＮｏと判定された場合、使用量予約繰越制御部２０６２は、現在判定対象となっているｎ番目の工程の予約使用量を次の集計期間の使用量として予約し（Ｓ１００４）、ｎ番目の工程の予約使用量を現集計期間から削除する（Ｓ１００５）。例えば、３月分の印刷工程の使用量として５００枚を予約していたが、当該印刷工程の処理が４月に行われそうと判定された場合、３月分として予約されていた５００枚を解消して、当該５００枚を４月分の使用量として予約する処理を指す。この結果、現集計期間の使用可能量はキャンセルされた使用量だけ増加する。
【０１４９】
ワークフロー制御部２０７は、全工程を判定対象としたかを判定し、全工程について終わっていれば処理を終了し、終わっていなければＳ１００３から処理を繰り返す（Ｓ１００６）。
【０１５０】
その結果、ワークフローが完了するまでの間に、上限値管理の集計期間の切替日時を跨ぐ場合にも、切替日時前の未処理の予約使用量を切替日時後の予約使用量として繰り越すことにより、予約使用量を確保することができる。
【０１５１】
この結果、ワークフローの処理中に次の集計期間へ跨ぐと判定された作業工程の予約使用量が他の処理用に開放されるため、効率的に他の処理を実行することが可能となる。
【０１５２】
また、次の集計期間へと跨ぐ作業工程用に予約されていた使用量を次の集計期間に持ち越すようにしても良い。例えば、３月の印刷上限値が１０００枚で、５００枚分の予約をしていた印刷工程が、次の集計期間である４月に入ると判定された場合、３月の予約分の５００枚をそのまま４月に持ち越す。その結果、３月の印刷上限値が５００枚に変更され、一方、４月の印刷上限値は１５００枚に変更される。
【０１５３】
このように持ち越すことにより、仕事の忙しさに応じて上限値を動的に変化することが可能となる。
【０１５４】
更に、優先度の高いジョブを割り込ませるためにワークフローに予約されている未処理の予約使用量を開放する必要があり、ワークフローに設定された希望完了日時が上限値管理の集計期間の切替日時以降に設定されている場面を想定する。この場合、切替日時以前の未処理の予約使用量を切替日時の後の予約使用量として繰り越す。これにより、割り込みジョブがあった場合にもワークフローの依頼者の希望する完了日時が切替日時以降であったなら、ワークフローの予約使用量を確保することができる。
【０１５５】
＜その他の実施形態＞
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（又は記憶媒体）を、システム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【０１５６】
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）等が実際の処理の一部又は全部を行う。その処理によって上述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１５７】
更に、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１５８】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【０１５９】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
なお、上述した実施形態では、ＭＦＰ装置を主体として記載したが、ホストコンピュータとしての情報処理装置が主体となって上述したような処理等を行ってもよい。
【図面の簡単な説明】
【０１６０】
【図１】ＭＦＰの内部の構成の一例を示す図である。
【図２】ＭＦＰ制御部２００の構成を示すブロック図である。
【図３】ＭＦＰ１００のタッチパネル部に表示され、ユーザの操作に対応して操作制御部２０５により制御されるワークフロー実行画面の１つである「ワークフロー一覧」画面３００の一例を示す図である。
【図４】ユーザが「ワークフロー一覧」画面３００の各種ワークフロー依頼開始キー３０６から１つ選択した場合に表示される「ワークフロー開始」画面４００の一例を示す図である。
【図５】ワークフロー情報記憶部２０４２の一部であるワークフロー情報記憶テーブル５００の一例を示す図である。
【図６】上限量記憶部２０４１の一部である使用上限量記憶テーブル６００の一例を示す図である。
【図７】ワークフロー・ステータス記憶部２０４３の一部であるワークフロー実行ステータス管理テーブル７００の一例を示す図である。
【図８】ジョブ履歴部２０４４の一部であるジョブ履歴管理テーブル８００の一例を示す図である。
【図９】ワークフローを実行する制御方法の一連の処理を示すフローチャートである。
【図１０】集計期間の変化用に実行される予約使用量の設定方法の処理を示すフローチャートである。
【符号の説明】
【０１６１】
１００    ＭＦＰ
１０１    スキャナ部
１０２    レーザ露光部
１０３    作像部
１０４    定着部
１０５    給紙／搬送部
２００    ＭＦＰ制御部
２０１    ＣＰＵ
【図１】
2008065702.tif 000003
【図２】
2008065702.tif 000004
【図３】
2008065702.tif 000005
【図４】
2008065702.tif 000006
【図５】
2008065702.tif 000007
【図６】
2008065702.tif 000008
【図７】
2008065702.tif 000009
【図８】
2008065702.tif 000010
【図９】
2008065702.tif 000011
【図１０】
2008065702.tif 000012