ビジネス・オブジェクトによるビジネス・ルールの定義

このタイプのエンティティの動作を管理するビジネス・ルールは、ビジネス・オブジェクトによって定義できます。

  • 要素レベルの簡単な検証はスキーマ属性によってサポートされています。要素レベルの検証は、メンテナンス・オブジェクト処理の前に実行されることに注意してください。高度なルールについては、「検証」アルゴリズムを作成してビジネス・オブジェクトに関連付けます。ビジネス・オブジェクト検証アルゴリズムが実行されるのは、メンテナンス・オブジェクトに保持されたコア検証が渡された後のみです。
  • 「前処理」アルゴリズムを使用して、メンテナンス・オブジェクト処理の前にビジネス・オブジェクトの要素を調整します。たとえば、要素レベルの簡単なデフォルト設定はスキーマ属性でサポートされていますが、より高度なデフォルト要素値にこのアルゴリズムのタイプを使用できます。
  • 「後処理」アルゴリズムを使用して、作業予定登録の作成などの追加ステップを実行したり、ビジネス・オブジェクトの論理トランザクションの一部としてログ・レコードを追加できます。これらのプラグインは、すべての検証ルールが実行された後に実行されます。
  • 「監査」アルゴリズムを使用して、このタイプのエンティティに対する変更を監査できます。

    ビジネス・エンティティが追加、変更または削除されると、そのトランザクションで実行された変更のリストが検出および要約され、そのビジネス・オブジェクトに関連付けられている「監査」プラグインに渡されます。これらのプラグインは、すべての後処理ルールが実行された後に実行されます。このようなアルゴリズムでは、ログ・エントリ、監査証跡表のエントリ、またはビジネス・イベント・ログのエントリなどとして、変更内容を記録する必要があります(適切な場合)。

    デフォルトでは、ビジネス・オブジェクトのすべての要素が監査対象です。ただし、noAuditスキーマ属性を使用して、監査プロセスから除外する特定の要素にマークを付けることができます。監査不可とマークが付けられた要素は、ビジネス・オブジェクトの監査プラグイン・スポットに変更済の要素として表示されません。さらに、ビジネス・オブジェクトで変更された唯一の要素が監査不可とマーク付けされている場合は、監査アルゴリズムはコールされません。この属性の詳細は、「スキーマ構文」を参照してください。

アルゴリズムの様々なタイプの詳細は、「ビジネス・オブジェクト - アルゴリズム」を参照してください。

ビジネス・オブジェクト・ルール(スキーマベースおよびアルゴリズム)は、ビジネス・オブジェクト・インスタンスが追加、変更または削除されるたびに適用されます。これが可能なのは、メンテナンス・オブジェクト・サービスを介してコールが実行された場合のみです。たとえば、ビジネス・オブジェクト・インタラクション(起動ビジネス・オブジェクト)を介してコールされた場合、メンテナンス・オブジェクトのメンテナンス・ページまたはインバウンドWebサービスによってビジネス・オブジェクトが参照されます。さらに、システムでは、処理されている実際のオブジェクトに関連付けられている識別ビジネス・オブジェクトの決定が可能である必要があります。メンテナンス・オブジェクト・インスタンスに対してビジネス・オブジェクトを決定できない場合、ビジネス・オブジェクト・ルールは適用されません。

注意:

前処理は特別です。「前処理」アルゴリズム・プラグイン・スポットは、ビジネス・オブジェクト相互作用中にのみ適用される点において特有です。これは、メンテナンス・オブジェクト処理の前に実行されます。これは、メンテナンス・オブジェクト・サービスを介して追加、変更または削除を実行すると、前処理プラグインは実行されないことを意味します。

注意: エンティティの直接更新では、ビジネス・ルールをバイパスします。前述のように、ビジネス・オブジェクト・ルールが適用されるのはメンテナンス・オブジェクト・サービス・レイヤーです。メンテナンス・オブジェクト・サービスを介さずにエンティティを直接更新するプロセスでは、構成したビジネス・オブジェクト・ルールをバイパスします。
ファストパス: ライフサイクル・アルゴリズムに対してこれらのアルゴリズムを実行するタイミングの要約は、「ビジネス・オブジェクト・アルゴリズムの実行順序」を参照してください。

前述のプラグイン・スポットは、すべてのビジネス・オブジェクトで使用可能で、ビジネス・オブジェクトに追加または更新処理を行う場合にシステムによって実行されます。特定のメンテナンス・オブジェクトで、そのメンテナンス・オブジェクトのビジネス・オブジェクト用の特別なプラグイン・スポットを定義できます。これを行う場合、メンテナンス・オブジェクトによってMOオプション: 有効BOシステム・イベントとして特殊アルゴリズム・エンティティ参照値が識別されるため、ビジネス・オブジェクト・アルゴリズム・コレクションにそのリスト内のシステム・イベントが含まれる結果になります。