モニタリング・バッチ・プロセス

モニター・バッチ・プロセスを使用すると、エンティティの現在の状態に関連付けられたモニター・アルゴリズムを実行することで、ビジネス・オブジェクトを次の状態に遷移できます。モニター・ロジックをバッチで実行するユース・ケースは次のとおりです。

  • レコードが、遷移の前に何かが発生するのを待機している場合があります。モニター・アルゴリズムをコーディングして、条件が満たされたかどうかを判断し、次に遷移を開始できます。たとえば、状態の入力時にフィールド活動が生成され、レコードはフィールド活動の完了時に状態を終了します。モニター・アルゴリズムは、フィールド活動のステータスをチェックできます。

  • レコードが手動で追加または更新され、ビジネス・オブジェクト・ライフサイクルの次のステップには、ロジックがバッチで実行されるような大量の処理が含まれている場合があります。この場合、ビジネス・オブジェクト・ステータスは、バッチ管理(遅延と呼ばれる)への明示的な参照を使用して構成されます。これによって、モニター・アルゴリズムを自動的に実行せずに、バッチで実行するまで遅延するように、システムに指示します。後でバッチ・プロセスが実行されると、バッチ・プロセスではすべてのレコードを選択して処理し、レコードを進行させます。

    注意: ステータスに遅延バッチ管理が含まれている場合は、バッチを待機するのではなく、ユーザーが手動でレコードを次の状態に遷移できるように構成することもできます。モニター・アルゴリズムが含まれるレコードをユーザーが手動で遷移すると、そのアルゴリズムは実行されません。
  • レコードはバッチで追加または更新されますが、全体的なライフサイクルでの後続ステップは後で処理する必要があります。これを実現するには、後で処理する状態にリンクされたバッチ管理が、レコードを追加または更新したバッチ管理と一致していないことを確認します。

  • モニター・プロセスを使用して、レコードに関連するロジックを、レコードを実際に遷移せずに定期的に実行することもできます。

親ビジネス・オブジェクトのみが遅延モニター・バッチ・プロセスを参照できることに注意してください。ただし、継承チェーン内のビジネス・オブジェクトはすべて実行されるようにモニター・アルゴリズムで構成できます。

基本パッケージには、構成可能なビジネス・オブジェクト・ライフサイクルをサポートする各メンテナンス・オブジェクトに対して定期モニタリング・バッチ・プロセスが用意されています。このプロセスでは、異なるバッチ管理用の遅延モニタリング・バッチ・プロセスを明示的に参照する状態を除外して、エンティティの現在の状態に関連付けられているモニタリング・アルゴリズムを定期的に実行します。

遅延モニタリング・プロセスは、現在の状態がこの特定のバッチ管理をモニター・プロセスとして参照するレコードを選択します。異なるスケジュールを持つ同じタイプのレコードのモニタリングに対して、オブジェクトに異なるユース・ケースがある場合のみ、遅延モニター・プロセスが必要です。この場合、1つの定期モニター・バッチのみを構成する必要があります。その他のモニターは、処理にオーバーラップがないようにバッチ管理によって制限するために構成する必要があります。

注意: メンテナンス・オブジェクト・オプション構成。メンテナンス・オブジェクトには、定期および遅延モニター・バッチ管理に対して提供される、バッチ管理を指定するオプションが含まれています。

各モニタリング・プロセスの実行頻度とそのスケジュールの順序は、ビジネス・ルールで指定します。このタイプのバッチ管理に対してサポートされるパラメータの詳細は、バックグラウンド・プロセスの章の「モニター・バックグラウンド・プロセス」を参照してください。

注意: ビジネス・オブジェクトの更新。モニターアルゴリズムによってビジネス・オブジェクトの遷移が必要であると示された場合、モニター・バッチ・プロセスは、ビジネス・オブジェクトが適切に遷移し、適切な終了、開始およびモニター・アルゴリズムが実行されるのを確認します。ビジネス・オブジェクトはメンテナンス・オブジェクト・サービスへのコールを使用して更新されないため、デフォルトでは、ビジネス・オブジェクトにプラグインされているビジネス・ルールは実行されないことに注意してください。ただし、入力アルゴリズム、終了アルゴリズムまたはモニター・アルゴリズムでは、バッチ・プロセスによって他のアルゴリズムが実行されるように指定できます。「強制後処理」インジケータがtrueに設定されている場合、バッチ・プロセスはビジネス・オブジェクト後処理、ビジネス・オブジェクト監査およびメンテナンス・オブジェクト監査の各アルゴリズムを起動します。