オントロジーの構築オブジェクトモニターコアな概念条件
Warning

注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

条件

オブジェクトモニターは Automate に置き換えられました。Automate は、プラットフォーム内のすべてのビジネス自動化のための一元的なエントリーポイントを提供する、完全に下位互換性のある製品です。

オブジェクトモニターの条件は、新たに監視されるアクティビティがいつ検出され、記録されるかを定義します。しきい値 条件は、連続した真偽のステータスをもたらし、一方で イベント 条件は、離散的なイベントを生成します。条件はいくつかのサブ条件を含むことがあり、複数の input オブジェクトセットをリファレンスすることができます。オブジェクトモニターは以下の条件タイプをサポートしています:

イベント

イベント条件は最も一般的な条件タイプです。イベント条件には、入力から追加または削除されたオブジェクト、メトリックの増減条件が含まれます。各イベントは特定の時間に発生し、離散的なイベントです。そのため、アクティビティグラフではドットとして表示されます。

オブジェクトモニターアプリのアクティビティ履歴タブ

以下の例では、イベント条件は単一の入力探索を使用し、その探索で新たに使用されるオブジェクトを確認します。オブジェクトは、新たに作成されたため、または入力を定義するために使用されたフィルター処理に一致するように変更されたために追加されることがあります。

例:追加されたセールスオポチュニティのイベント条件

一部のイベント条件では、しきい値のサブ条件が必要となる場合があります。これらのケースでは、主条件とサブ条件の両方が真でなければ、イベントは検出されません。例えば、しきい値のサブ条件は、入力オブジェクトの数が増えたときに検出するために使用されるかもしれませんが、すでに N 個のオブジェクトが入力セットに存在するという主条件が満たされている場合に限ります。

しきい値

しきい値条件は、入力に対して実行され、時間経過とともに true または false のステータスを生成します。しきい値がどちらの方向にも越えられたときに、アクティビティが記録されます。しきい値を使用する条件には、任意の数のネストされたサブ条件が含まれる可能性があります。

以下に示すのは、Object Monitors アプリケーションでのしきい値条件の例です。この例では、条件は、セールスオポチュニティのカスタムコーホート全体で amount の合計が 10,000 を超えたときを確認します。

例:セールスオポチュニティのしきい値条件

しきい値条件は リアルタイム評価 をサポートしていません。

関数を利用した

関数を利用した条件は、イベントまたはしきい値ルールオプションによってサポートされていないものを含む、より複雑な条件定義を可能にするために設計されています。関数を利用した条件は、 true または false のブール値を返す関数を定義し、公開することで機能します。モニターが評価されるときに関数が呼び出され、応答はその実行の結果を示さなければなりません。ステータスが変更された場合、イベントが記録されます。

関数は監視対象のオブジェクトタイプの ObjectSet<> を取り、条件が満たされているかどうかを示すブール値を返すべきです。オブジェクトモニターで使用するための 関数の作成 について詳しく学んでください。

以下の例では、関数を使用して、入力セットのセールスオポチュニティオブジェクトの realized_amount の合計が expected_amount の合計未満になるときを計算します。

例:関数を利用したセールスオポチュニティの条件

@Function()
/**
 * この関数は、一連のセールスチャンスの実現額がすべてのチャンス額の合計よりも小さいかどうかを計算します。
 */
public async calculateOpportunityUnderRealized(opportunities: ObjectSet<SalesOpportunity>): Promise<boolean> {
    // opportunitiesのamountを合計する
    let amount = await opportunities.sum(o => o.amount)
    // opportunitiesのamountRealizedを合計する
    let amountRealized = await opportunities.sum(o => o.amountRealized)
    // amountとamountRealizedがnullでなく、amountRealizedがamountより小さい場合、trueを返す
    if (amount !== null && amountRealized !== null && amountRealized < amount) {
        return true
    } else {
        return false
    }
}