高度なリベートおよび獲得後処理 - ソース生成 DPE の設定
カスタムディメンションで集計された発生計算結果を Salesforce Core に書き戻します。
必要なエディション
| 使用可能なエディション: リベートおよび獲得管理の高度な機能が有効になっている Enterprise Edition、Unlimited Edition、および Developer Edition。 |
-
プログラムリベート種別獲得源の新規項目の作成:
- アンカー値のカスタム項目を作成します (Region__c など)。
- この項目には、各獲得元レコードのディメンション値が保存されます。
-
データソースノードで [項目を入力] を選択します。
- プログラムリベート種別獲得ソースデータソースノードを開きます。
- 新しく作成したアンカー項目を選択する
-
パススルー結合ノード:
- 項目が次の順序で流れるようにします。 リベート種別獲得参照番号を使用した強化
-
AnchorString 数式を作成:
- 適切なノードに数式項目を追加する
- 「Anchor1String」(または「Anchor2String」、「Anchor3String」) という名前を付けます。
-
数式: IF(CONTAINS({AggregationCriteria}, "Region__c")==true, {Anchor1}, "_") "Region__c" をプログラムリベート種別に表示される項目名に置き換え、{Anchor1} を DLO のアンカー項目に置き換えます。
この数式は、アンカー値 (設定されている場合) または "_" (使用されていない場合) を返します。
-
uniqueRefKey 数式を更新します。
- 移動先: Build Unique Key for Existing Sources (既存のソースの一意の鍵を作成)
- uniqueRefKey 数式を見つけます。
-
連結に AnchorString を追加する
たとえば、CONCAT 関数に {Anchor1String} を含めます。
-
[Anchor1String Across Period Processing Nodes (期間処理ノード全体での Anchor1String)] を選択します。次の 6 つのノードで Anchor1String 項目を選択します。
- リベート種別と期間の詳細の入力
- 期間種別と出力データの結合
- 不要な項目の削除
- 最新のランク情報の追加
- 前の期間の合計を追加
- 現在の期間の合計を追加
-
[両方のソース] で [Anchor1String] を選択します。
- 移動先: Combine Current and Prior Period Amounts (現在の期間金額と以前の期間金額を統合)
- このノードには 2 つの入力ソースがあります。両方のソースから [Anchor1String] を選択します。
-
Add Merge Period Formula (マージ期間数式を追加):
- 移動先: 期間値のマージ
- 数式項目を作成します: IF(ISBLANK({AccruedAnchor1String}),{PriorAnchor1String},{AccruedAnchor1String} )
これにより、現在と前の期間のデータを結合するときにアンカー値が正しく継承されます。 -
[Anchor1 Across Four Nodes (4 つのノードにまたがる Anchor1)] を選択します。
- プログラムメンバーの詳細による強化
- Check for Existing Member Accruals (既存のメンバー獲得の確認)
- Check for Existing Rebate Type Accruals (既存のリベート種別獲得の確認)
- レコードへのランク値の追加
-
新しいソースノードの UniqueRefKey を更新します。
- 移動先: Build Unique Key for New Sources (新規ソースの一意の鍵の作成)
- Anchor1 が含まれるように UniqueRefKey 数式を更新します: CONCAT({ProgramRebateTypeAccrualRef},"_",{MemberAccrualReferenceNumber},"_",{BenefitString},"_",{Member},"_",{Product},"_",{Anchor1})
これにより、メンバー、商品、カスタムディメンションの一意の組み合わせごとに独自の獲得元レコードが取得されます。 -
検索条件ノードで Anchor1 を選択します。
- 移動: Filter Unique Records For Sources Generation (ソース生成の一意のレコードの絞り込み)
- [照合] ノード設定で、[このソースから Anchor1] を選択します。
-
[他のソースからのアンカー] を選択します。
- 同じ一致ノードで、他の入力ソースから [Anchor1] を選択します。これにより、アンカーディメンションで一致が行われます。
-
[Calculate Accrual Source Fields Formula (獲得元項目の計算数式)] を作成します。
- 移動先: Calculate Accrual Source Fields (獲得元項目の計算)
-
アンカー項目の数式を作成します: IF(ISBLANK({Id}),IF(({Anchor1String}=="_")==true,NULL,{Anchor1String}),{ExistingAnchor1})
ロジック: 新規レコードの場合: 設定されていればアンカー値を使用し、設定されていない場合は NULL を使用します。既存のレコードの場合: 既存のアンカー値が保持されます。
-
書き戻しノードの Anchor1 の対応付け:
- [Create or Update Accrual Source Details (獲得元の詳細を作成または更新)] に移動します。
- 計算済みアンカー項目を [プログラムリベート種別獲得元] の Anchor1 項目に対応付けます。
これにより、最終的な集計結果が Salesforce コアに書き戻されます。
この記事で問題は解決されましたか?
ご意見をお待ちしております。
