JP2005173764A - Service processor - Google Patents
Service processor Download PDFInfo
- Publication number
- JP2005173764A JP2005173764A JP2003409924A JP2003409924A JP2005173764A JP 2005173764 A JP2005173764 A JP 2005173764A JP 2003409924 A JP2003409924 A JP 2003409924A JP 2003409924 A JP2003409924 A JP 2003409924A JP 2005173764 A JP2005173764 A JP 2005173764A
- Authority
- JP
- Japan
- Prior art keywords
- service
- time
- execution
- job
- processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Abstract
Description
本発明はサービス処理装置に係り、特に、連携して実行すべき一連のサービス処理から成るフローサービスジョブのうちの特定のサービス処理の実行が指示されると、該特定のサービス処理を実行待ちテーブルに登録し、該実行待ちテーブルに登録した特定のサービス処理の実行が完了すると、前記フローサービスジョブにおいて特定のサービス処理の次に実行すべきサービス処理を、該サービス処理を実行可能なサービス処理装置に実行させるための処理を行うサービス処理装置に関する。 The present invention relates to a service processing apparatus, and in particular, when execution of a specific service process is instructed from a flow service job composed of a series of service processes to be executed in cooperation with each other, the specific service process is executed in an execution waiting table. Service processing apparatus capable of executing a service process to be executed next to the specific service process in the flow service job when the execution of the specific service process registered in the execution waiting table is completed The present invention relates to a service processing apparatus that performs a process for causing a server to execute the process.
従来より、例えば回覧や少額稟議、承認等のように文書の流れが定型化されている業務について、ネットワークを利用し、電子化した文書を定型化された流れに沿って関係者間で流通させることで業務の効率化を実現するワークフローシステムが提案されている。また、インターネット関連技術の発達に伴い、ネットワークに接続されたスキャナ、ファクシミリ装置、複写機、これらを単一の機器として統合した複合機、パーソナル・コンピュータ(PC)等の機器(サービス処理装置と称する)が提供可能なサービスをサービスコンポーネントとして利用し、利用可能な各サービスコンポーネントの中から所望の複数のサービス処理を連携させることで、より高度な業務処理の実行を実現する、所謂フローサービスも提案されている。 Traditionally, for business that has a standardized document flow, such as circulation, small-scale deliberation, approval, etc., use a network to distribute electronic documents among related parties along the standardized flow Therefore, a workflow system has been proposed that realizes business efficiency. With the development of Internet-related technology, devices (service processing devices) such as scanners, facsimile machines, copying machines connected to a network, multi-function machines integrating these as a single device, personal computers (PCs), etc. ) Is also available as a service component, and a so-called flow service is also proposed that realizes more advanced business processing execution by linking multiple desired service processing among the available service components. Has been.
また、上記のサービス処理装置として機能させることが可能な複合機(複写機・ファクシミリ・プリンタの機能を兼ね備えた装置)に関し、特許文献1には、ホストコンピュータ等から送られた出力データを解析し、出力データで指定された優先度のリストを優先度テーブルにセットしておき、指定された機能処理の優先度を求めると共に、システムの構成及び各構成要素の状態を調べ、得られた情報に基づいて所定の機能処理(例えばPDLプリント処理、FAXプリント処理及びFAX送信処理の何れか)を実行する技術が開示されている。
ところで、フローサービスにおいて、実行すべきサービス処理を規定したり、複数のサービス処理を連携させるジョブ(フローサービスジョブ)の実行を指示することは、指示書(指示情報)を用いることで実現できるが、この指示書を用いることで、例えば所定時刻に所定の文書をファクシミリで送信させる等のようにサービス処理の処理時刻を指定したり、操作者による操作を必要とするサービス処理を規定することも可能とされている。これに対し、サービス処理装置では通常、指示情報によりオンラインでサービス処理の実行が指示される以外に、サービス処理の実行が操作パネルを介してオフラインでも指示されるため、実行待ちのサービス処理を受付順に処理する構成となっており、実行待ちのサービス処理と同一のフローサービスジョブに属する後段のサービス処理の中に、処理時刻が指定されたサービス処理や操作者による操作を必要とするサービス処理が含まれているか否かは考慮していない。 By the way, in a flow service, specifying a service process to be executed or instructing execution of a job (flow service job) for linking a plurality of service processes can be realized by using an instruction sheet (instruction information). By using this instruction, for example, the processing time of service processing can be specified, for example, a predetermined document can be transmitted by facsimile at a predetermined time, or a service processing that requires an operation by an operator can be specified. It is possible. On the other hand, the service processing apparatus normally accepts service processing waiting for execution because execution of service processing is also instructed offline via the operation panel, in addition to instructing execution of service processing online by instruction information. The service process is configured in order, and among the subsequent service processes belonging to the same flow service job as the service process waiting to be executed, the service process with the specified processing time and the service process that requires an operation by the operator are included. Whether it is included or not is not considered.
このため、特に障害の発生等によりサービス処理装置の稼働が一時期停止していた等の場合、当該サービス処理装置で実行すべきサービス処理の数が膨大な数となることで、実行待ちの特定のサービス処理と同一のフローサービスジョブに属する後段のサービス処理の実行が遅延する。そして、例えばフローサービスジョブの実行開始が指示されてから実行が終了する迄に極端に長い時間がかかったり、例えば同一のフローサービスジョブに属するサービス処理として処理時刻が指定されたサービス処理が後段に存在していた場合、該サービス処理が指定された処理時刻に実行されなかったり、例えば同一のフローサービスジョブに属するサービス処理として操作者の介入を必要とするサービス処理が後段に存在していた場合、該サービス処理の実行時間帯が操作者が不在の時間帯にずれ込むことで、サービス処理の実行完了が長時間滞ることがある、という問題があった。 For this reason, in particular, when the operation of the service processing device has been temporarily stopped due to the occurrence of a failure or the like, the number of service processes to be executed by the service processing device becomes a huge number. Execution of subsequent service processing belonging to the same flow service job as the service processing is delayed. For example, it takes an extremely long time from the start of execution of a flow service job to the end of execution, or, for example, a service process with a processing time specified as a service process belonging to the same flow service job If the service process does not execute at the specified processing time, or there is a service process that requires operator intervention as a service process belonging to the same flow service job, for example, As a result, the execution time of the service process is shifted to a time period when the operator is absent, so that the completion of execution of the service process may be delayed for a long time.
なお、前述の特許文献1に記載の技術は、機能処理単位で予め指定された優先度と各構成要素の情報に基づいて実行する機能処理を選択する技術であり、この技術を適用したとしても上記の問題を解決することは困難である。 Note that the technique described in Patent Document 1 described above is a technique for selecting a function process to be executed based on priority specified in advance in a function processing unit and information on each component, and even if this technique is applied, It is difficult to solve the above problem.
本発明は上記事実を考慮して成されたもので、装置の稼働が停止していた場合にもフローサービスジョブを適切に実行させることが可能なサービス処理装置を得ることが目的である。 The present invention has been made in consideration of the above facts, and an object of the present invention is to provide a service processing apparatus capable of appropriately executing a flow service job even when the operation of the apparatus is stopped.
上記目的を達成するために請求項1記載の発明に係るサービス処理装置は、連携して実行すべき一連のサービス処理から成るフローサービスジョブのうちの特定のサービス処理の実行が指示されると、該特定のサービス処理を実行待ちテーブルに登録し、該実行待ちテーブルに登録した特定のサービス処理の実行が完了すると、前記フローサービスジョブにおいて特定のサービス処理の次に実行すべきサービス処理を、該サービス処理を実行可能なサービス処理装置に実行させるための処理を行うサービス処理装置であって、自装置がサービス処理を実行可能な状態になった場合に、前記実行待ちテーブルに登録されている実行待ちサービス処理に対応するフローサービスジョブにおいて、前記実行待ちサービス処理の後段の任意のサービス処理が実行される時刻を予測する予測手段と、前記予測手段によって予測された時刻が所定の時刻よりも遅いか、又は所定の時間帯から外れている場合に、前記後段のサービス処理と同一のフローサービスジョブに属する実行待ちサービス処理が実行されるタイミングが早くなるように、実行待ちサービス処理の処理順を変更するか、該処理順を変更するための処理を行う変更手段と、を備えたことを特徴としている。 In order to achieve the above object, the service processing apparatus according to claim 1 is instructed to execute a specific service process in a flow service job including a series of service processes to be executed in cooperation with each other. When the specific service process is registered in the execution waiting table and the execution of the specific service process registered in the execution waiting table is completed, the service process to be executed next to the specific service process in the flow service job is A service processing apparatus that performs a process for causing a service processing apparatus that can execute a service process to execute, and when the local apparatus is ready to execute the service process, the execution registered in the execution waiting table In a flow service job corresponding to a waiting service process, an arbitrary service subsequent to the execution waiting service process Prediction means for predicting the time at which the processing is executed, and when the time predicted by the prediction means is later than a predetermined time or out of a predetermined time zone, it is the same as the service processing in the subsequent stage Changing means for changing the processing order of the waiting service processing or changing the processing order so that the waiting time of the waiting service process belonging to the flow service job is executed. It is characterized by that.
請求項1記載の発明に係るサービス処理装置は、連携して実行すべき一連のサービス処理から成るフローサービスジョブのうちの特定のサービス処理の実行が指示されると、該特定のサービス処理を実行待ちテーブルに登録し、該実行待ちテーブルに登録した特定のサービス処理の実行が完了すると、前記フローサービスジョブにおいて特定のサービス処理の次に実行すべきサービス処理を、該サービス処理を実行可能なサービス処理装置に実行させるための処理を行う。なお、上記のサービス処理としては、例えば文書の複写、文書の印刷、文書の電子化、文書情報の送受信等のように文書に関する処理でもよいし画像処理等の他の処理であってもよく、任意の処理を適用可能である。また、フローサービスジョブにおいて特定のサービス処理の次に実行すべきサービス処理を、該サービス処理を実行可能なサービス処理装置に実行させるための処理は、例えば次に実行すべきサービス処理の実行を指示する情報を前記サービス処理装置へ送信する処理であってもよいし、特定のサービス処理の実行を指示した指示元に対して特定のサービス処理の実行完了を通知する処理であってもよい。 The service processing apparatus according to the first aspect of the invention executes a specific service process when an instruction to execute a specific service process is given among flow service jobs including a series of service processes to be executed in cooperation. A service that can be registered in the wait table and that can execute the service process to be executed next to the specific service process in the flow service job when the execution of the specific service process registered in the execution wait table is completed Processing for causing the processing device to execute is performed. The service processing described above may be processing related to a document such as document copying, document printing, document digitization, document information transmission / reception, or other processing such as image processing. Arbitrary processing can be applied. The process for causing a service processing apparatus capable of executing a service process to be executed next to a specific service process in the flow service job to instruct the execution of the service process to be executed next, for example. It may be a process of transmitting information to the service processing apparatus, or a process of notifying completion of execution of a specific service process to an instruction source that has instructed execution of the specific service process.
ここで、請求項1記載の発明では、自装置がサービス処理を実行可能な状態になった場合(例えば障害等が発生し稼働が停止していた状態から復帰した場合)に、予測手段により、実行待ちテーブルに登録されている実行待ちサービス処理に対応するフローサービスジョブにおいて、実行待ちサービス処理の後段の任意のサービス処理(実行待ちサービス処理と同一のフローサービスジョブに属する未実行の任意のサービス処理)が実行される時刻が予測される。この予測は、例えば実行待ちテーブルに登録されている特定の実行待ちサービス処理よりも実行順序が前の各サービス処理の数、該各サービス処理の実行所要時間の予測値、前記特定の実行待ちサービス処理の実行所要時間の予測値、特定の実行待ちサービス処理の実行が完了してから後段のサービス処理の実行が開始されるまでの所要時間の予測値の各情報のうちの一部又は全部に基づいて行うことができる。 Here, in the invention according to claim 1, when the own apparatus is in a state in which service processing can be performed (for example, when the operation is stopped due to a failure or the like), the prediction means In a flow service job corresponding to a pending service process registered in the pending table, any service process following the pending service process (any unexecuted service belonging to the same flow service job as the pending service process) The time at which the processing is executed is predicted. For example, the prediction includes the number of each service process whose execution order is earlier than a specific execution-waiting service process registered in the execution-waiting table, a predicted value of the execution time required for each service process, and the specific execution-waiting service. Some or all of the predicted value of the execution time of the process and the information of the estimated value of the required time from the completion of execution of the specific waiting service process until the start of the subsequent service process Can be done on the basis.
そして請求項1記載の発明では、予測手段によって予測された時刻が所定の時刻よりも遅いか、又は所定の時間帯から外れている場合に、後段のサービス処理と同一のフローサービスジョブに属する実行待ちサービス処理が実行されるタイミングが早くなるように、実行待ちサービス処理の処理順を変更するか、該処理順を変更するための処理が変更手段によって行われる。これにより、後段のサービス処理が所定の時刻よりも遅い時間に実行されるか、又は所定の時間帯から外れた時間帯に実行されることが予測されるフローサービスジョブに対応する実行待ちのサービス処理が、より早いタイミングで実行されることになるので、装置の稼働が停止していた場合にもフローサービスジョブを適切に実行させることが可能となる。 According to the first aspect of the present invention, when the time predicted by the prediction means is later than the predetermined time or is out of the predetermined time zone, the execution belonging to the same flow service job as the subsequent service processing The changing means performs processing for changing the processing order of the waiting service processing or changing the processing order so that the waiting service processing is executed earlier. As a result, a service waiting for execution corresponding to a flow service job that is expected to be executed in a time later than a predetermined time or in a time zone that is out of a predetermined time zone. Since the processing is executed at an earlier timing, the flow service job can be appropriately executed even when the operation of the apparatus is stopped.
なお、請求項1記載の発明において、例えば請求項2に記載したように、予測手段は、フローサービスジョブにおける最終段のサービス処理が実行される時刻を予測し、変更手段は、所定の時刻として、フローサービスジョブの実行が指示されてから一定時間経過後の時刻を用いることが好ましい。これにより、フローサービスジョブの実行が指示されてから一定時間が経過する迄の間に、前記フローサービスジョブにおける最終段のサービス処理が実行されるように、前記フローサービスジョブに属する実行待ちのサービス処理がより早いタイミングで実行されることになるので、障害等の影響で装置の稼働が停止していた場合にも、実行が指示された個々のフローサービスジョブを適切に実行させる(実行終了迄に極端に長い時間がかかってしまうことを防止する)ことが可能となる。 In the first aspect of the present invention, as described in the second aspect, for example, the predicting means predicts a time at which the last stage service processing in the flow service job is executed, and the changing means sets the predetermined time as It is preferable to use a time after a certain time has elapsed since the execution of the flow service job was instructed. As a result, the service waiting for execution belonging to the flow service job is executed so that the last stage of service processing in the flow service job is executed until a predetermined time elapses after the execution of the flow service job is instructed. Since the processing is executed at an earlier timing, even when the operation of the apparatus is stopped due to the failure or the like, the individual flow service job instructed to be executed is appropriately executed (until the execution is completed). Can be prevented from taking an extremely long time).
また、請求項1記載の発明において、実行待ちテーブルに登録されている実行待ちサービス処理に対応するフローサービスジョブが、実行待ちサービス処理よりも後段に処理時刻が予め指定されているサービス処理が存在している処理時刻指定ジョブである場合、例えば請求項3に記載したように、予測手段は処理時刻が予め指定されているサービス処理が実行される時刻を予測し、変更手段は所定の時刻として予め指定された処理時刻を用いることが好ましい。なお、処理時刻指定ジョブか否かの判断は、例えば実行待ちの個々のサービス処理に対応する個々のフローサービスジョブを規定する指示情報を各々参照することで行うことができる。これにより、処理時刻指定ジョブのうちの処理時刻が予め指定されている後段のサービス処理が、指定されている処理時刻以前に実行されるように、処理時刻指定ジョブに属する実行待ちのサービス処理がより早いタイミングで実行されることになるので、障害等の影響で装置の稼働が停止していた場合にも、処理時刻指定ジョブを適切に実行させる(処理時刻が予め指定されている後段のサービス処理を、指定された処理時刻に実行させる)ことが可能となる。 In the first aspect of the present invention, there is a service process whose processing time is specified in advance after the execution waiting service process in the flow service job corresponding to the execution waiting service process registered in the execution waiting table. For example, as described in claim 3, the predicting unit predicts a time at which a service process whose processing time is specified in advance is executed, and the changing unit sets the predetermined time as a predetermined time. It is preferable to use a processing time designated in advance. The determination as to whether or not the job is a processing time designation job can be made by referring to, for example, instruction information that defines individual flow service jobs corresponding to individual service processes waiting to be executed. As a result, the waiting service processing belonging to the processing time designation job is executed so that the subsequent service processing in which the processing time of the processing time designation job is designated in advance is executed before the designated processing time. Since it is executed at an earlier timing, even when the operation of the device is stopped due to the influence of a failure or the like, the processing time designation job is appropriately executed (the latter service in which the processing time is designated in advance) It is possible to execute processing at a specified processing time).
また、請求項3記載の発明において、例えば請求項4に記載したように、予測手段によって予測された時刻が予め指定された処理時刻よりも遅い場合に、処理時刻指定ジョブに対応する実行待ちサービス処理の実行タイミングを早くすることで、処理時刻指定ジョブのうち処理時刻が指定されている後段のサービス処理が実行される時刻が予め指定された処理時刻以前になるか否かを判断し、前記実行される時刻が予め指定された処理時刻以前にならないと判断した場合には、処理時刻指定ジョブの実行を中止させる中止制御手段を更に設けてもよい。処理時刻が指定されるサービス処理は、一般に指定された処理時刻以外の時刻に実行しても無意味な処理であることが多い。これに対して請求項4記載の発明では、処理時刻指定ジョブに対応する実行待ちのサービス処理の実行タイミングを早くしても、処理時刻が指定されている後段のサービス処理を指定された処理時刻以前に実行できない場合には、処理時刻指定ジョブの実行を中止させるので、指定された処理時刻以前に実行できないことが判明したサービス処理(及び該サービス処理を含む処理時刻指定ジョブ)を実行することで、サービス処理装置の負荷が無駄に増大することを防止することができる。 Further, in the invention according to claim 3, for example, as described in claim 4, when the time predicted by the prediction means is later than the processing time designated in advance, an execution waiting service corresponding to the processing time designation job By accelerating the execution timing of the process, it is determined whether or not the time at which the subsequent service process in which the process time is specified among the process time designation jobs is executed is before the process time specified in advance. If it is determined that the time to be executed is not before the processing time designated in advance, stop control means for stopping the execution of the processing time designation job may be further provided. A service process for which a processing time is specified is generally a meaningless process even if executed at a time other than the specified processing time. On the other hand, in the invention according to claim 4, even if the execution timing of the service process waiting for execution corresponding to the processing time designation job is advanced, the processing time designated for the subsequent service processing for which the processing time is designated If it cannot be executed before, the execution of the processing time designation job is stopped, so that the service processing (and the processing time designation job including the service processing) that has been found to be unable to be executed before the designated processing time is executed. Thus, it is possible to prevent the load on the service processing apparatus from increasing unnecessarily.
更に、請求項1記載の発明において、実行待ちテーブルに登録されている実行待ちサービス処理に対応するフローサービスジョブが、実行待ちサービス処理よりも後段に操作者による操作を必要とするサービス処理が存在している要操作ジョブである場合、例えば請求項5に記載したように、予測手段は、操作者による操作を必要とするサービス処理が実行される時刻を予測し、変更手段は、所定の時間帯として操作者が存在していることが予想される時間帯を用いることが好ましい。なお、要操作ジョブか否かの判断も、例えば実行待ちの個々のサービス処理に対応する個々のフローサービスジョブを規定する指示情報を各々参照することで行うことができる。これにより、要操作ジョブのうち操作者による操作を必要とする後段のサービス処理が操作者が存在していることが予想される時間帯に実行されるように、要操作ジョブに属する実行待ちのサービス処理がより早いタイミングで実行されることになるので、障害等の影響で装置の稼働が停止していた場合にも、要操作ジョブを適切に実行させる(操作者による操作を必要とする後段のサービス処理を、操作者が存在していることが予想される時間帯に実行させる)ことが可能となる。 Furthermore, in the first aspect of the invention, the flow service job corresponding to the execution waiting service process registered in the execution waiting table has a service process that requires an operation by the operator after the execution waiting service process. For example, as described in claim 5, the predicting unit predicts a time at which a service process that requires an operation by the operator is executed, and the changing unit includes a predetermined time. It is preferable to use a time zone in which the operator is expected to be present as the zone. Whether or not an operation job is required can be determined by referring to instruction information that defines individual flow service jobs corresponding to individual service processes waiting to be executed, for example. As a result, waiting for execution belonging to the operation-necessary job is executed so that subsequent service processing that requires operation by the operator of the operation-required job is executed at a time when the operator is expected to exist. Since the service processing is executed at an earlier timing, even if the operation of the device is stopped due to the failure or the like, the required operation job is appropriately executed (the latter stage requiring the operation by the operator). This service processing can be executed in a time zone in which the operator is expected to exist).
なお、請求項1記載の発明において、特定の実行待ちのサービス処理が実行されるタイミングを早くさせることは、例えば特定の実行待ちサービス処理の処理順を直接変更することで実現できるが、サービス処理装置が個々のサービス処理単位、又はサービス処理のグループ単位で付与された優先度に基づいて、実行待ちの個々のサービス処理のスケジューリング(実行順序の制御)を行う構成である場合には、上記に代えて、例えば請求項6に記載したように、実行タイミングを早くすべき実行待ちサービス処理の優先度を相対的に高くする(実行タイミングを早くすべき実行待ちのサービス処理、又は該サービス処理が属するグループの優先度を高くするか、実行タイミングを早くすべき実行待ちのサービス処理以外のサービス処理、又は前記サービス処理が属していないグループの優先度を低くする)処理を行うように変更手段を構成することで実現できる。 In the first aspect of the invention, the timing at which a specific execution waiting service process is executed can be accelerated, for example, by directly changing the processing order of the specific execution waiting service process. If the device is configured to perform scheduling (control of execution order) of individual service processes waiting to be executed based on the priority assigned to each service process unit or group of service processes, Instead, for example, as described in claim 6, the priority of the execution waiting service process whose execution timing should be advanced is relatively increased (the execution waiting service process whose execution timing should be advanced or the service process is Increase the priority of the group to which the group belongs, or perform service processing other than the waiting-for-execution service processing that should be executed earlier, or The lower the priority of the service processing does not belong groups) can be realized by configuring the changing unit to perform the process.
また、請求項6記載の発明において、サービス処理装置は単一のサービス処理から成る単独ジョブも実行可能とされている場合、実行待ちのサービス処理を、フローサービスジョブに対応する実行待ちのサービス処理のグループと、単独ジョブに対応する実行待ちのサービス処理のグループに分類してもよい。この場合、変更手段は、例えば請求項7に記載したように、フローサービスジョブに対応する実行待ちのサービス処理の優先度を、単独ジョブに対応する実行待ちのサービス処理の優先度よりも相対的に高くすることで、実行タイミングを早くすべき実行待ちのサービス処理が実行されるタイミングを早くさせることができる。上記態様は請求項6,7記載の発明に対応している。
Further, in the invention according to claim 6, when the service processing apparatus can execute a single job consisting of a single service process, the service process waiting for execution is changed to a service process waiting for execution corresponding to the flow service job. And a group of service processes waiting for execution corresponding to a single job. In this case, for example, as described in
以上説明したように本発明は、自装置がサービス処理を実行可能な状態になった場合に、実行待ちテーブルに登録されている実行待ちサービス処理に対応するフローサービスジョブにおいて、実行待ちサービス処理の後段の任意のサービス処理が実行される時刻を予測し、予測した時刻が所定の時刻よりも遅いか、又は所定の時間帯から外れている場合に、後段のサービス処理と同一のフローサービスジョブに属する実行待ちサービス処理が実行されるタイミングが早くなるように、実行待ちサービス処理の処理順を変更するか、該処理順を変更するための処理を行うので、装置の稼働が停止していた場合にもフローサービスジョブを適切に実行させることが可能となる、という優れた効果を有する。 As described above, according to the present invention, when the self-apparatus becomes ready to execute service processing, the flow service job corresponding to the execution waiting service processing registered in the execution waiting table performs the execution waiting service processing. The time at which the subsequent service processing is executed is predicted, and if the predicted time is later than the predetermined time or is out of the predetermined time zone, the same flow service job as the subsequent service processing is executed. When the operation of the device has been stopped because the processing order of the waiting service processing is changed or the processing order is changed so that the processing timing of the waiting service processing to be executed is advanced In addition, it has an excellent effect that the flow service job can be appropriately executed.
以下、図面を参照して本発明の実施形態の一例を詳細に説明する。図1には本実施形態に係る文書処理システム10が示されている。文書処理システム10は、様々なサービスを提供する複数台のサービス処理装置12と、ユーザによって操作される複数台のクライアント端末14と、管理サーバ16がネットワーク(例えばLAN)18を介して相互に接続されて構成されている。なお、個々のサービス処理装置12は本発明に係るサービス処理装置に対応している。
Hereinafter, an example of an embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 shows a document processing system 10 according to the present embodiment. In the document processing system 10, a plurality of
本実施形態において、サービス処理装置12が提供するサービスは、外部からの要求に応じて文書に関する各種の処理(サービス処理という)を行うサービスを指し、例えばコピー(文書の複写)、プリント(文書の印刷)、スキャン(文書の電子化)、ファクシミリ送受信(電子化した文書の送受信)、メール配信、リポジトリへの格納やリポジトリからの読込、OCR(Optical Character Recognition)処理、ノイズ除去処理等の画像処理、画像合成等の文書編集が挙げられる。サービス処理装置12は、例えば先に列挙した各種サービスのうちの複数種のサービスを提供する機能を備えた複合機で構成することができるが、これに限定されるものではなく、複写機、プリンタ、スキャナ、ファクシミリ装置等のように単一のサービスのみを提供する装置であってもよいし、文書データに所定の処理を施すアプリケーション・プログラムがインストールされたコンピュータであってもよい。
In the present embodiment, the service provided by the
図2を参照し、プリント及び画像処理をサービスとして提供する機能を備えたサービス処理装置12を例にその構成を説明すると、サービス処理装置12は、ネットワーク18に接続されネットワーク18を介しての他の装置との通信を司るネットワークI/F(インタフェース)部20を備えている。ネットワークI/F部20は内部バス22に接続されており、この内部バス22には、システム制御部24、メモリ管理部26、受信データ処理部28、バックアップ電源に接続された不揮発性のRAM(NVRAM)30、記録出力部32、記録出力制御部34、画像データ展開処理部36、印刷処理管理部38、表示パネル及びテンキー等のキーボードから成る操作パネル40、及び、サービス処理の実行を制御するサービス処理制御部42が各々接続されている。
With reference to FIG. 2, the configuration of the
このうち、システム制御部24はマイクロコンピュータを含んで構成されており、サービス処理装置12の各部を制御する。また、メモリ管理部26にはページメモリ44及びリングバッファ46が接続されており、メモリ管理部26はこれらのメモリ44及びバッファ46を管理する。また、受信データ処理部28にはHDD(Hard Disk Drive)等から成る蓄積装置48が接続されており、受信データ処理部28は外部から受信したデータを蓄積装置48に蓄積させると共に蓄積装置32に蓄積されているデータの読み出し等を行う。更に、記録出力部32はサービス処理としてのプリント処理を行う機能を備えており、記録出力制御部34は記録出力部32の動作を制御する。また、画像データ展開処理部36は記録出力部32でのプリント処理に用いられる画像データをページメモリ44等に展開すると共に、サービス処理としての画像処理を行う機能を備えており、印刷処理管理部38は記録出力部32によって順次実行される印刷ジョブ(文書のプリント出力)を管理する。
Among these, the
なお、図2ではサービス処理制御部42が備えている機能のうち、本発明に係る機能を障害復帰判定処理部42A、後工程処理時間演算部42B、指示書解析処理部42C、処理順制御処理部42D及びジョブ種別識別処理部42Eの各機能ブロックとして示している。各機能ブロックについては後述する。
In FIG. 2, among the functions of the service
サービス処理装置12のNVRAM30には、サービス処理装置12が提供するサービスを外部から利用可能とするためのI/F情報が記憶されている。I/F情報はサービス処理装置12が提供可能な単一のサービスを規定する情報であり、複数種のサービスを提供可能なサービス処理装置12では、提供可能なサービスの種類数と同数のI/F情報がNVRAM30に記憶される。図3(A)に示すように、I/F情報は<サービス種類(Service Class)>、<サービス名(Service Name)>、<サービス・アイコン(Service Icon)>、<サービス・ロケーション情報(Service Info Location)>、<入力(Input)>、<出力(Output)>、<パラメータ制限ルール(Parameter Restriction Rules)>、<サービス・ロケーション(Service Location)>、<メソッド名(Method Name)>、<起動方法(Invocation Scheme)>、<黙示要素(Inplicit Elements)>から構成されている。
The
<サービス種類>にはサービス処理装置12が提供するサービスの種類(例えばプリント、スキャン、レポジトリ格納等)を表す情報が設定され、<サービス名>には提供サービスの名称を表す情報が設定される。また、<サービス・アイコン>にはGUIを介して表示させる際の提供サービスのアイコンを規定する情報が設定され、<サービス・ロケーション情報>にはネットワーク18上でのI/F情報の格納アドレス(URL)が設定される。また、<メソッド名>には提供サービスについての提供手法を宣言する情報が設定され、<起動方法>には提供サービスを実行するサービス処理を呼び出して起動する方法を宣言する情報が設定される。なお、<起動方法>としては、例えばメッセージ交換のプロトコルであるSOAP(Simple Object Access Protocol)やSTMP(Simple Mail Transfer Protocol)等を用いることができる。また、<黙示要素>には後段のサービス処理で参照可能なデータが設定される。サービス処理装置12は上記のI/F情報の一部を管理サーバ16に登録すると共に、外部の装置からの送信要求に応じてI/F情報を送信する。
Information indicating the type of service (for example, printing, scanning, repository storage, etc.) provided by the
一方、文書処理システム10において、サービス処理装置12が提供する各種サービスのうち所望の単一のサービスを利用したり、所望の複数種のサービスを連携させて単一のサービス(フローサービス)として利用するには指示書情報(本発明に係る指示情報に相当)が用いられる。図3(B)に示すように、指示書情報はヘッダ情報とサービス規定情報から構成されている。ヘッダ情報には指示書情報の名称等の情報が設定されると共に、指示書情報で規定されたサービスの実行が指示されると、そのときの時刻が指示開始時刻として設定される。また、サービス規定情報は利用対象の単一のサービスを規定する情報であり、複数種のサービスを組み合わせて利用する場合には、組み合わせる複数種のサービスの何れかに対応する複数のサービス規定情報が追加される。個々のサービス規定情報は、前述のI/F情報と同様に<サービス種類>、<サービス名>、<サービス・アイコン>、<サービス・ロケーション情報>、<入力>、<出力>、<パラメータ制限ルール>、<サービス・ロケーション>、<メソッド名>、<起動方法>、<黙示要素>から構成されている。。
On the other hand, in the document processing system 10, a desired single service among various services provided by the
また、複数種のサービスを連携させる場合、指示書情報のヘッダ情報には、サービス規定情報で規定された個々のサービス間の連携に関する情報を記述する<フロー(Flow)>が設定される。<フロー>は、サービス処理装置12の特定のメソッドを表しサービスの呼び出しを実行する<起動(Invoke)>や、制御や論理演算等をするための<if>等を要素として含んでいる。<起動>には、パラメータの位置情報を示す<マップ>と呼び出すメソッド名<メソッド>が要素として含まれている。また、制御や論理演算等をするための<if>、<and>、<eq>、<gt>は、連携処理時に条件分岐を行ったり、サービス処理間で受け渡されるパラメータの調整を行うために設定される。複数種のサービスを連携させて単一のサービス(フローサービス)として利用する際の各サービス処理の連携は、<フロー>として記述された情報に従って制御される。
Further, when a plurality of types of services are linked, <Flow> describing information related to linkage between individual services defined in the service definition information is set in the header information of the instruction information. <Flow> represents a specific method of the
上記の指示書情報は、例えば指示書エディタのプログラムが予めインストールされたクライアント端末14上で指示書エディタを起動し、クライアント端末14のキーボードやマウスを介してユーザが所定の操作を行うことで、指示書エディタによって作成・編集される。指示書情報の作成・編集時には、クライアント端末14のディスプレイに、例として図4に示すような指示書作成・編集画面100が表示される。指示書作成・編集画面100は、利用可能なサービスをアイコンで表示するためのサービスウインドウ101と、利用するサービス及びそれらの連携の仕方(指示書情報の基となるワークフロー)をアイコンで表示するためのフローウインドウ102と、利用サービスの連携のパターンをアイコンで表示するためのロジックウインドウ103と、各アイコンの詳細な設定パラメータを表示するためのプロパティウインドウ104で構成されている。
The above instruction form information is obtained by, for example, starting the instruction form editor on the
管理サーバ16は、文書処理システム10の各サービス処理装置12が提供する利用可能なサービスを検索するサービス検索サーバとしての機能を備えている。指示書エディタは、管理サーバ16によって検索された利用可能なサービスの概要を表したサービスリストを管理サーバ16から取得すると共に、取得したサービスリストに記述されている各サービス処理装置12のロケーション情報に基づき、各サービス処理装置12からサービスの利用方法を示すI/F情報を取得する。そして取得した情報に基づきサービスウインドウ101及びプロパティウインドウ104に前述の情報を表示させる。
The
ワークフローの作成は、ユーザがクライアント端末14のマウス等を操作し、サービスウインドウ101のアイコンとロジックウインドウ103のアイコンをフローウインドウ102にドラッグ・アンド・ドロップすることによって成される。またユーザは、所望のアイコンを選択してプロパティウインドウ104に表示される内容を編集する等により、実行されるサービス処理や連携のロジックを詳細に設定することができる。ワークフローの作成が完了すると、指示書エディタは、作成されたワークフローに従って指示書情報をXML形式で生成し、管理サーバ16へ送信する。管理サーバ16は指示書情報を管理する指示書管理サーバとしても機能を備えており、受信した指示書情報を保持すると共に、クライアント端末14又はサービス処理装置12からの要求に応じて指示書情報を送信する。
The workflow is created by the user operating the mouse or the like of the
また、既存の指示書情報の編集を行う場合、指示書エディタは、ユーザからの指示に従い管理サーバ16が保持している各指示書情報の名称の送信を管理サーバ16に要求し、管理サーバ16から受信した各指示書情報の名称を一覧表示させる。また、ユーザによって特定の名称が選択されると、選択された名称に対応する指示書情報の送信を管理サーバ16に要求し、管理サーバ16から受信した指示書情報の内容を指示書作成・編集画面100に表示させる。また、所望のサービス処理の実行に必要なパラメータがユーザによって入力されると、その内容を指示書情報に反映することで指示書情報の編集(更新)を行う。そして、指示書情報の編集が完了すると、編集が完了した指示書情報を管理サーバ16へ送信する。
When editing the existing instruction information, the instruction editor requests the
なお、上述した指示書情報の作成・編集は、サービス処理装置12の操作パネル40を介してユーザが所定の操作を行うことで、サービス処理制御部42によって行わせることも可能である。また、指示書情報の実行(指示書情報に記述されたサービスの利用)についても、クライアント端末14から指示することも、サービス処理装置12の操作パネル40を介して指示することも可能とされている。
Note that the above-described creation / editing of instruction form information can also be performed by the service
指示書情報を受信したサービス処理装置12では、受信した指示書情報のうち自装置で実行すべきサービス処理に対応するサービス規定情報を参照することで、実行すべきサービス処理の詳細を把握した後に、サービス規定情報で規定されているサービス処理を実行する。サービス処理の実行が完了すると、サービス処理装置12は、実行を完了したサービス処理に対応するサービス規定情報に、実行が完了したことを表す完了フラグを設定した後に、指示書情報を参照して次に実行すべきサービス処理の有無を判定する。次に実行すべきサービス処理が存在していた場合、サービス処理装置は、次に実行すべきサービス処理を実行可能なサービス処理装置12へ指示書情報を転送する。これが繰り返されることで、指示書情報が規定する複数種のサービス処理の連携させるフローサービスが実現される。また、次に実行すべきサービス処理が存在していない場合には、指示書情報が規定するサービス処理の実行が完了したと判断し、指示書情報を最初に送信したサービス処理装置12(又はクライアント端末14)に対して実行結果を表す情報及び指示書情報を送信する。
The
次に本実施形態の作用を説明する。本実施形態に係るサービス処理装置12では、上述のように指示書情報を受信することでサービス処理の実行が指示される以外に、操作パネル40が操作されることでサービス処理の実行が指示される場合もある。サービス処理装置12では、指示書情報を受信することで実行が指示されたサービス処理と操作パネル40が操作されることで実行が指示されたサービス処理をジョブと総称しており、サービス処理装置12のNVRAM30には未実行のジョブ(サービス処理)を登録するための実行待ちテーブルが記憶されている。サービス処理装置12は、指示書情報を受信するか操作パネル40が操作されることでジョブの実行が指示される毎に、実行が指示されたジョブに対応するジョブ情報(受信した指示書情報又は操作パネル40を介して実行が指示されたジョブの内容を表す情報)を実行待ちテーブルに登録する。そして、或るジョブの実行が終了する毎に、実行待ちテーブルから未実行かつ単一のジョブのジョブ情報(例えば実行待ちテーブルに登録されているジョブ情報のうち登録日時が最も古いジョブ情報)を取り出し、取り出したジョブ情報に対応するジョブを実行するように構成されている。従って、実行待ちテーブルに登録されたジョブは通常、テーブルへの登録順に処理されることになる。
Next, the operation of this embodiment will be described. In the
またサービス処理装置12では、何らかの障害が発生しジョブを実行できない状態になった場合、NVRAM30に記憶されている障害フラグに1を代入する。そしてサービス処理装置12では、電源が投入されると自己診断を行い、サービス処理を実行可能な状態であることを確認すると、NVRAM30に記憶されている障害フラグが0か否かを確認する。このとき、障害フラグが0の場合は実行待ちテーブルに登録されている未実行のジョブを通常通りの順序で実行するが、障害フラグが1の場合には自装置に何らかの障害が発生していたと判断できるので、実行待ちテーブルに登録されているジョブの実行に先立ち、次に説明する実行順序制御処理がサービス処理制御部42で行われる。なお、障害フラグが0か否かに基づいて実行順序制御処理を実行するか否かを判断することに代えて、実行待ちテーブルに登録されている未実行のジョブの数が閾値以上か否かに基づいて実行順序制御処理を実行するか否かを判断するようにしてもよい。上述した処理はサービス処理制御部42(の障害復帰判定処理部42A)で行われる。
Further, in the
図5に示すように、実行順序制御処理では、まずステップ100で「フラグ」に0を代入し、次のステップ102で「実行開始時刻」として現時刻を設定する初期設定を行う。なお、ステップ102において、現時刻に代えて現時刻+α(例えば実行順序制御処理の実行時間)に相当する時刻を設定するようにしてもよい。ステップ104では、実行待ちテーブルに登録されているジョブの中に、未処理(次のステップ106以降の処理を未実行)のジョブが存在しているか否か判定する。当初は、実行待ちテーブルに何らかのジョブが登録されていれば判定が肯定されてステップ106へ移行し、未処理のジョブのうち実行順序が最初のジョブのジョブ情報を実行待ちテーブルからジョブXとして抽出する。ステップ108ではジョブXの実行開始時刻(の予測値)として「実行開始時刻」を設定し、次のステップ110では、ジョブXのジョブ情報に基づいてサービス処理装置12でジョブXを実行するのに要する時間(実行時間)を予測する。なお、この実行時間の予測は、例えばサービス処理装置12で実行可能なジョブの種類毎にサービス処理装置12での標準的な実行所要時間を定めておき、ジョブXのジョブ情報に基づいてジョブXの種類を判断し、判断したジョブXの種類に対応する標準的な実行所要時間を検索・設定することで行うことができる。
As shown in FIG. 5, in the execution order control process, first, 0 is substituted for “flag” in
ステップ112では、ジョブXが、指示書情報を受信することで実行が指示されたジョブ(以下、このジョブをサービスジョブと称する)か否か判定する。判定が否定された場合、ジョブXは操作パネル40が操作されることで実行が指示された単独ジョブであるので、ステップ146へ移行し、「実行開始時刻」にステップ110で予測したジョブXの実行時間を加算した時刻を「実行開始時刻」に代入し、ステップ104へ戻る。
In
一方、ジョブXがサービスジョブである場合、ジョブXの実行が遅延すると、ジョブXを含む一連のサービス処理(同一の指示書情報で実行が指示されている一連のサービス処理:本発明に係るフローサービスジョブに相当)のうち、ジョブXよりも後に実行するよう指示されている後段のサービス処理で不都合が生ずる可能性がある。このため、ステップ112の判定が肯定された場合には、ステップ114で先のステップ106で抽出したジョブ情報、すなわち指示書情報を参照し、次のステップ116において、ジョブXを含む一連のサービス処理が全て終了する時刻を予測する。
On the other hand, when the job X is a service job, if execution of the job X is delayed, a series of service processes including the job X (a series of service processes instructed to be executed by the same instruction information: flow according to the present invention) (Corresponding to a service job), there is a possibility that inconvenience may occur in the subsequent service processing instructed to be executed after job X. Therefore, if the determination in
なお、この終了時刻の予測についても、例えば、或るサービス処理装置12へ指示書情報を送信してから、該指示書情報がサービス処理装置12で受信され、受信された指示書情報によって実行が指示されている単一のサービス処理が実行され、後段のサービス処理を実行するサービス処理装置12へ指示書情報が送信される迄に要する標準的な実行所要時間をサービス処理の種類毎に定めておき、ジョブXの後段の各サービス処理について、サービス処理の種類から求まる標準的な実行所要時間を各々求めて積算し、ステップ108で求めたジョブXの実行開始時刻に、ステップ110で予測したジョブXの実行時間と、ジョブXの後段の各サービス処理の実行所要時間の積算値を加算することで行うことができる。
The prediction of the end time is also executed by, for example, transmitting the instruction form information to a certain
続いてステップ118では、指示書情報のヘッダに設定されている指示開始時刻に所定の許容時間を加算し、ステップ116で予測した終了時刻を減算することで、実行余裕時間(=(指示開始時刻+許容時間)−終了時刻)を演算する。上記の許容時間には、指示書情報を送信することで一連のサービス処理の実行開始を指示してから、前記一連のサービス処理の実行が完了する迄の許容最大時間が設定されている。従って、実行余裕時間は、その符号が「−」の場合は、現在のジョブXの実行開始時刻では、ジョブXを含む一連のサービス処理の実行開始が指示されてから前記一連のサービス処理が終了する迄の時間が、実行余裕時間分だけ許容時間を超過することを意味している。また実行余裕時間は、符号が「+」の場合には、現在のジョブXの実行開始時刻にジョブXの実行を開始したとしても、ジョブXを含む一連のサービス処理の実行開始が指示されてから許容時間が経過するタイミングよりも実行余裕時間分だけ前のタイミングで前記一連のサービス処理が完了することを意味している。
Subsequently, in
次のステップ120では、ジョブXを含む一連のサービス処理のうちジョブXよりも後段のサービス処理の中に、処理の実行時刻が予め指定されているサービス処理(時刻指定サービス)が存在しているか否か判定する。判定が否定された場合は何ら処理を行うことなくステップ130へ移行するが、判定が肯定された場合はステップ122へ移行し、時刻指定サービスの実行時刻を予測する。この時刻指定サービスの実行時刻の予測についても、先の終了時刻の予測と同様に、ジョブXの後段でかつ時刻指定サービス迄の各サービス処理について、サービス処理の種類から求まる標準的な実行所要時間を各々求めて積算し、ジョブXの実行開始時刻に、ジョブXの実行時間と、上記各サービス処理の実行所要時間の積算値を加算することで行うことができる。
In the
また、次のステップ124では、時刻指定サービスにおける指定時刻から、ステップ122で予測した時刻指定サービスの実行時刻を減算することで、指定余裕時間(=指定時刻−実行時刻)を演算する。この指定余裕時間は、その符号が「−」の場合は、現在のジョブXの実行開始時刻では、時刻指定サービスが実行される時刻が指定時刻に対して指定余裕時間分だけ遅延することになる一方、符号が「+」の場合には、現在のジョブXの実行開始時刻にジョブXの実行を開始したとしても、指定時刻より指定余裕時間分だけ前のタイミングで時刻指定サービスが実行可能な状態になることを意味している。次のステップ128では、指定余裕時間が実行余裕時間よりも小さいか否か判定する。判定が否定された場合は何ら処理を行うことなくステップ130へ移行するが、判定が肯定された場合はステップ128において、ステップ124で演算した指定余裕時間を実行余裕時間に代入することで指定余裕時間を更新した後に、ステップ130へ移行する。
In the next step 124, the designated margin time (= designated time-execution time) is calculated by subtracting the execution time of the time designation service predicted in
次のステップ130では、ジョブXを含む一連のサービス処理のうちジョブXよりも後段のサービス処理の中に、ユーザの介入操作を必要とするサービス処理(要介入サービス)が存在しているか否か判定する。判定が否定された場合は何ら処理を行うことなくステップ140へ移行するが、判定が肯定された場合はステップ132へ移行し、要介入サービスの実行時刻を予測する。この要介入サービスの実行時刻の予測についても、先の終了時刻の予測や時刻指定サービスの実行時刻の予測と同様に、ジョブXの後段でかつ要介入サービス迄の各サービス処理について、サービス処理の種類から求まる標準的な実行所要時間を各々求めて積算し、ジョブXの実行開始時刻に、ジョブXの実行時間と、上記各サービス処理の実行所要時間の積算値を加算することで行うことができる。
In the
次のステップ134では、ステップ132で予測した要介入サービスの実行時刻から、ユーザが介入操作を行うことが可能な時間帯(ユーザ(操作者)が存在していることが予想される時間帯:例えばユーザの勤務時間帯)の終了時刻を減算することで、介入余裕時間(=実行時刻−ユーザ介入可能時間帯の終了時刻)を演算する。この介入余裕時間は、その符号が「−」の場合は、現在のジョブXの実行開始時刻では、要介入サービスが実行可能となる時刻がユーザ介入可能時間帯の終了時刻に対して介入余裕時間分だけ遅延することになる一方、符号が「+」の場合には、現在のジョブXの実行開始時刻にジョブXの実行を開始したとしても、ユーザ介入可能時間帯の終了時刻より介入余裕時間分だけ前のタイミングで要介入サービスが実行可能な状態になることを意味している。次のステップ136では、介入余裕時間が実行余裕時間よりも小さいか否か判定する。判定が否定された場合は何ら処理を行うことなくステップ140へ移行するが、判定が肯定された場合はステップ138において、ステップ134で演算した介入余裕時間を実行余裕時間に代入することで指定余裕時間を更新した後にステップ140へ移行する。
In the
上記処理により、ジョブXを含む一連のサービス処理の中に時刻指定サービスや要介入サービスが含まれていない場合には、ステップ118で演算された実行余裕時間がそのまま実行余裕時間として設定されるが、一連のサービス処理の中に時刻指定サービスや要介入サービスが含まれている場合は、一連のサービス処理の実行開始が指示されてから処理が終了する迄の時間と許容時間との差異、時刻指定サービスの実行時刻と指定時刻との差異、要介入サービスの実行時刻とユーザ介入可能時間帯の終了時刻との差異のうち、最も余裕の小さい事象に対応する余裕時間が実行余裕時間として設定されることになる。そしてステップ140では、最終的に得られた実行余裕時間をジョブXの実行余裕時間として記憶する。
With the above processing, if the time designation service or intervention required service is not included in the series of service processes including job X, the execution allowance time calculated in
次のステップ142では、実行余裕時間が0より小さいか(符号が「−」か)否か判定する。判定が否定された場合は何ら処理を行うことなくステップ146へ移行するが、判定が肯定された場合には、現在のジョブXの実行開始時刻では、一連のサービス処理の実行開始が指示されてから処理が終了する迄の時間が許容時間よりも大きくなる(事象A)か、時刻指定サービスの実行時刻が指定時刻よりも遅くなる(事象B)か、要介入サービスの実行時刻がユーザ介入可能時間帯の終了時刻よりも遅くなる(事象C)と判断できるので、ステップ144で「フラグ」に1を代入することで、実行順序を変更すべきジョブが存在していることを記憶する。ステップ144の処理を行うと、前述のようにステップ146で「実行開始時刻」を更新した後にステップ104へ戻る。
In the next step 142, it is determined whether or not the execution margin time is smaller than 0 (the sign is “−”). If the determination is negative, the process proceeds to step 146 without performing any processing. If the determination is affirmative, execution of a series of service processes is instructed at the current job X execution start time. The time from the start to the end of the process is longer than the allowable time (event A), the execution time of the time specified service is later than the specified time (event B), or the execution time of the service requiring intervention can be intervened by the user Since it can be determined that the time is later than the end time of the time zone (event C), the fact that there is a job whose execution order is to be changed is stored by substituting 1 into “flag” in
これにより、ステップ104の判定が肯定される迄の間、実行待ちテーブルに登録されている全てのジョブに対してステップ104〜ステップ146の処理が繰り返され、個々のジョブの実行開始時刻が各々予測・記憶されると共に、サービスジョブについては実行余裕時間も演算・記憶されることになる。なお、上述した処理のうちステップ114〜ステップ140は本発明に係る予測手段(詳しくは請求項2,3,5に記載の予測手段)に対応しており、サービス処理制御部の後工程処理時間演算部42Bによって行われる。実行待ちテーブルに登録されている全てのジョブに対してステップ104〜ステップ146の処理が各々行われることで、ステップ104の判定が否定されるとステップ148へ移行し、「フラグ」が0か否か判定する。ステップ148の判定が肯定された場合には、実行待ちテーブルに登録されている各ジョブを現在の実行順序で実行したとしても、各ジョブのうちの何れのサービスジョブでも事象A〜事象Cの何れも生じないと判断できるので、何ら処理を行うことなく実行順序制御処理を終了する。
Thus, until the determination in
一方、「フラグ」が1の場合には、実行待ちテーブルに登録されている少なくとも何れかのサービスジョブにおいて、事象A〜事象Cの少なくとも1つが生ずると判断できる。このため、ステップ148の判定が否定された場合には、ステップ150でジョブ並べ替え処理を行う。以下、このジョブ並べ替え処理について、図6のフローチャートを参照して説明する。なお、ジョブ並べ替え処理は、先に説明したステップ142,144と共に本発明に係る変更手段(詳しくは請求項2,3,5に記載の変更手段)に対応しており、サービス処理制御部42(の処理順制御処理部42D)で実行される。
On the other hand, when the “flag” is 1, it can be determined that at least one of event A to event C occurs in at least one of the service jobs registered in the execution waiting table. Therefore, if the determination in
ジョブ並べ替え処理では、まずステップ160において、実行待ちテーブルに登録されているジョブの中から、実行余裕時間が0よりも小さくかつ実行余裕時間が最も小さいサービスジョブYを検索する。次のステップ162では、実行待ちテーブルから抽出されたサービスジョブYの実行順序を変更する。この実行順序の変更は、例えばサービスジョブYの現在の実行開始時刻からサービスジョブYの実行余裕時間の絶対値を減算した時刻を演算した後に、実行待ちテーブルに登録されている各ジョブの実行開始時刻を演算した時刻と順に比較し、実行開始時刻として演算した時刻以前の時刻が設定されているジョブの実行順序をサービスジョブYの実行順序とし、以降のジョブの実行順序を1つずつ繰り下げることで行うことができる。またステップ162では、サービスジョブYの実行順序を変更した後に、前述のステップ114〜ステップ140と同様の処理を行うことで、サービスジョブYの実行余裕時間を再度演算して更新する。
In the job rearrangement process, first, in
次のステップ164では、実行待ちテーブルに登録されているジョブのうち、サービスジョブYの変更後の実行順序よりも後で、変更前の実行順序よりも前に実行される各ジョブについて実行開始時刻を更新すると共に、前記各ジョブのうちのサービスジョブについては、前述のステップ114〜ステップ140と同様の処理を行うことで、実行余裕時間の再演算及び更新も同時に行う。次のステップ166では、実行待ちテーブルに登録されているジョブの中に、実行余裕時間が0よりも小さい(符号が「−」の)サービスジョブが残存しているか否か判定する。判定が肯定された場合にはステップ160に戻る。
In the next step 164, among the jobs registered in the execution waiting table, the execution start time for each job executed after the changed execution order of the service job Y and before the changed execution order. In addition, the service job of each of the jobs is recalculated and updated at the same time by performing the same processing as in
これにより、ステップ166の判定が否定される迄、ステップ160〜ステップ166が繰り返されることになり、実行待ちテーブルに登録されているジョブのうち、実行余裕時間が0より小さい(事象A〜事象Cの少なくとも1つが生ずることが予想される)サービスジョブについて、実行余裕時間が0以上となるように実行順序が変更される。従って、サービス処理装置12に何らかの障害が発生して稼働が停止していた(ジョブを実行できない状態になっていた)場合にも、一連のサービス処理の実行が終了する迄に極端に時間がかかったり、一連のサービス処理に含まれる時刻指定サービスが指定時刻に実行できなかったり、一連のサービス処理に含まれる要介入サービスをユーザ介入可能時間帯内に実行できない等の不都合を生じさせることなく、一連のサービス処理に含まれるサービスジョブを適切なタイミングで実行させることができる。
As a result, steps 160 to 166 are repeated until the determination in
なお、上記では単独ジョブ(操作パネルが操作されることで実行が指示される複写処理や、受信したFAX文書を出力する処理など、処理装置単独で処理が完了可能なジョブ)とサービスジョブ(外部から送られてきた指示書情報を処理装置が受信完了と共に自動実行するジョブ、もしくは処理装置内部に格納された指示書情報が選択されてユーザから指示されることで実行するジョブ)を単一の実行待ちテーブルに登録する態様において、実行待ちテーブルに登録された各ジョブの実行順序を変更する例を説明したが、これに限定されるものではなく、単独ジョブとサービスジョブを各々別個のテーブルに登録し、個々のテーブルを単位として実行の優先度を変更する(例えばテーブルA,Bに登録されているジョブを通常は交互に実行するところを、テーブルAに登録されたジョブを2個実行する毎にテーブルBに登録されたジョブを1個実行する等)ようにしてもよい。 In the above, a single job (a job that can be completed by the processing device alone, such as a copy process instructed to be executed by operating the operation panel or a process of outputting a received FAX document) and a service job (external A job that is automatically executed by the processing device upon completion of reception of the instruction information sent from the server, or a job that is executed when the instruction information stored in the processing device is selected and instructed by the user. In the aspect of registering in the execution waiting table, the example in which the execution order of each job registered in the execution waiting table is changed has been described. However, the present invention is not limited to this, and each single job and service job are stored in separate tables. Register and change execution priority in units of individual tables (for example, jobs registered in tables A and B are normally executed alternately) Where a, the jobs registered in the table B in each execution two jobs registered in table A may be one like to run) so.
また、上記ではサービス処理装置12が単独ジョブ及びサービスジョブを各々実行する例を説明したが、これに限定されるものではなく、サービスジョブのみを実行するようにサービス処理装置12を構成してもよい。
In the above description, the
また、例えば重度の障害が発生したことでサービス処理装置12の稼働が長期間停止していた等の場合には、実行待ちテーブルに登録されているジョブの実行順序を変更してもサービスジョブの実行余裕時間を0以上とすることができない場合も生じ得るが、特に時刻指定サービスは、指定された処理時刻以外の時刻での実行が無意味な処理であることが多い。このため、実行待ちテーブルに登録されているジョブの実行順序を変更しても、後段に時刻指定サービスが存在しているサービスジョブの実行余裕時間(詳しくは指定余裕時間)を0以上とすることができない場合には、当該サービスジョブ及び後段の時刻指定サービスを含む一連のサービス処理の実行を自動的に中止、又はユーザの許可を経て中止するようにしてもよい。これにより、サービス処理装置12の負荷が無駄に増大することを防止することができる。上記態様は請求項4記載の発明に対応している。
Further, for example, when the
更に、上記では一連のサービス処理における個々のサービス処理を規定するサービス規定情報を指示書情報に各々設定しておき、サービス処理装置間で指示書情報を送受することで一連のサービス処理を実行する態様を例に説明したが、これに限定されるものではなく、一連のサービス処理の実行を管理するサーバを設け、前記サーバは一連のサービス処理のうちの単一のサービス処理の実行を指示する指示書情報をサービス処理装置へ送信し、個々のサービス処理装置は前記サーバからの指示に従ってサービス処理を実行する毎に前記サーバへ応答を返し、前記サーバは応答を受信する毎に次のサービス処理装置へ指示書情報を送信することで、一連のサービス処理を実行するように構成してもよい。この場合、個々のサービス処理装置における後段の時刻指定サービスや要介入サービスの有無の判断は、前記サーバに問い合わせるか、又は文書処理システム10内の特定のアドレスに保管されている後段のサービス処理に対応する指示書情報をサービス処理装置12が参照することで実現することができる。
Further, in the above, service specification information that defines individual service processes in a series of service processes is set in the instruction form information, and the series of service processes is executed by transmitting and receiving the instruction form information between the service processing apparatuses. Although the embodiment has been described as an example, the present invention is not limited to this, and a server that manages execution of a series of service processes is provided, and the server instructs execution of a single service process in the series of service processes. The instruction information is transmitted to the service processing device, and each service processing device returns a response to the server every time the service processing is executed according to the instruction from the server, and each time the server receives the response, the server performs the next service processing. A series of service processes may be executed by transmitting the instruction information to the apparatus. In this case, the determination of the presence or absence of a later time designation service or an intervention required service in each service processing apparatus is performed by inquiring of the server or in the subsequent service processing stored at a specific address in the document processing system 10. This can be realized by the
10 文書処理システム
12 サービス処理装置
14 クライアント端末
16 管理サーバ
18 ネットワーク
DESCRIPTION OF SYMBOLS 10
Claims (7)
自装置がサービス処理を実行可能な状態になった場合に、前記実行待ちテーブルに登録されている実行待ちサービス処理に対応するフローサービスジョブにおいて、前記実行待ちサービス処理の後段の任意のサービス処理が実行される時刻を予測する予測手段と、
前記予測手段によって予測された時刻が所定の時刻よりも遅いか、又は所定の時間帯から外れている場合に、前記後段のサービス処理と同一のフローサービスジョブに属する実行待ちサービス処理が実行されるタイミングが早くなるように、実行待ちサービス処理の処理順を変更するか、該処理順を変更するための処理を行う変更手段と、
を備えたことを特徴とするサービス処理装置。 When the execution of a specific service process of a flow service job composed of a series of service processes to be executed in cooperation is instructed, the specific service process is registered in the execution wait table and registered in the execution wait table When the execution of a specific service process is completed, the service processing apparatus performs a process for causing a service processing apparatus capable of executing the service process to execute a service process to be executed next to the specific service process in the flow service job Because
In the flow service job corresponding to the execution waiting service process registered in the execution waiting table, any service process subsequent to the execution waiting service process is executed when the own apparatus becomes ready to execute the service process. A prediction means for predicting the time to be executed;
When the time predicted by the prediction means is later than a predetermined time or out of a predetermined time zone, an execution waiting service process belonging to the same flow service job as the subsequent service process is executed. A change means for changing the processing order of the waiting service processing or performing a process for changing the processing order so that the timing is advanced;
A service processing apparatus comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003409924A JP2005173764A (en) | 2003-12-09 | 2003-12-09 | Service processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003409924A JP2005173764A (en) | 2003-12-09 | 2003-12-09 | Service processor |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005173764A true JP2005173764A (en) | 2005-06-30 |
Family
ID=34731128
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003409924A Withdrawn JP2005173764A (en) | 2003-12-09 | 2003-12-09 | Service processor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005173764A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7952741B2 (en) | 2006-11-01 | 2011-05-31 | Konica Minolta Business Technologies, Inc. | Information-processing system causing a plurality of processing execution apparatuses to execute a plurality of kinds of processing for one kind of data |
JP2012038001A (en) * | 2010-08-05 | 2012-02-23 | Fujitsu Ltd | Prediction device, prediction method and prediction program |
WO2013001951A1 (en) * | 2011-06-30 | 2013-01-03 | 楽天株式会社 | Ticket purchasing system, control method, program and recording medium for ticket purchasing system |
JP2014119860A (en) * | 2012-12-14 | 2014-06-30 | Hitachi Systems Ltd | Schedule management system |
-
2003
- 2003-12-09 JP JP2003409924A patent/JP2005173764A/en not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7952741B2 (en) | 2006-11-01 | 2011-05-31 | Konica Minolta Business Technologies, Inc. | Information-processing system causing a plurality of processing execution apparatuses to execute a plurality of kinds of processing for one kind of data |
JP2012038001A (en) * | 2010-08-05 | 2012-02-23 | Fujitsu Ltd | Prediction device, prediction method and prediction program |
WO2013001951A1 (en) * | 2011-06-30 | 2013-01-03 | 楽天株式会社 | Ticket purchasing system, control method, program and recording medium for ticket purchasing system |
JP2013015910A (en) * | 2011-06-30 | 2013-01-24 | Rakuten Inc | Lottery purchase system, method for controlling the system, program and recording medium |
JP2014119860A (en) * | 2012-12-14 | 2014-06-30 | Hitachi Systems Ltd | Schedule management system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7209249B2 (en) | Method of and apparatus for image formation, and computer product | |
US7873918B2 (en) | Method and apparatus for displaying workflow | |
US8584137B2 (en) | Image processing system for judging whether a partial job should be processed by an own device or another device | |
JP2010021896A (en) | Information processing apparatus, image input apparatus, document distribution system, and control method therefor | |
JP5828357B2 (en) | Image forming apparatus, image forming method, and program | |
US20080307428A1 (en) | Image forming apparatus, application execution method, and storage medium | |
JP2004266471A (en) | Service processing system and program | |
US20100235841A1 (en) | Information processing apparatus and method of controlling same | |
JP5402344B2 (en) | Image processing apparatus, image output management method, and program | |
JP2011035675A (en) | Data processing system and method of controlling the same | |
JP2007320084A (en) | Printer, managing method for printing job, and computer program | |
JP2006092182A (en) | Image processor, its control method and control program | |
JP2005173764A (en) | Service processor | |
JP2005050018A (en) | Document file management device and data structure | |
JP4341269B2 (en) | Service processing system, service processing method, and service processing program | |
JP2006031452A (en) | Image forming apparatus, control method, control program, job management apparatus, job processing method and job management program | |
JP2004288041A (en) | Data processing system and program | |
US20090064201A1 (en) | Image Forming Apparatus, Application Management Method, and Computer-Readable Recording Medium Having Application Management Program | |
JP2005267492A (en) | Service cooperation processing device and service cooperation processing method | |
JP2005196334A (en) | Service process execution management device and method | |
JP2005050017A (en) | Document file management device, document file management method and data structure | |
JP3599718B2 (en) | Facsimile machine | |
JP2005287042A (en) | Apparatus, method and program for image formation | |
JP2005262675A (en) | Service processing device | |
JP2007305143A (en) | Information processor and information processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061127 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20081016 |