Loading
資料管理員

資料管理員

「資料管理員」是「產品設定程式」的狀態管理和協調流程元件。此元件會儲存產品資料,並使用流程事件將資料移入流程畫面上的其他元件。

必要版本

適用於:Lightning Experience
提供版本:具有 Revenue Cloud Growth 授權或 Revenue Cloud Advanced 授權的 Revenue Management (先前稱為 Revenue Cloud) 的 Enterprise、Unlimited 及 Developer Edition

資料管理員責任

  • 維護交易內容與組態狀態
  • 叫用 Configurator API 和流程回應
  • 從 UI 元件處理 Lightning 訊息服務 (LMS) 事件
  • 將資料提供給 UI,並將反應性內容公開給子系元件
  • 支援儲存和載入我的最愛組態

資料管理員 API 名稱

S01_DataManager

資料管理員輸入內容

資料管理員接受使用者所設定父系或流程元件內容的資料。

內容 類型 必要 描述
transactionLineId 字串 是 根產品或交易條列識別碼
currentTransactionLineId 字串 是 正在檢視的目前線條
transactionId 字串 是 銷售交易識別碼 (報價、訂單等)
ParentName 字串 是 組態所屬父系交易的名稱或標題。
來源 字串 是 交易記錄父系物件的名稱。範例:「機會」、「報價」、「訂單」、「資產」等等。這會識別啟動組態的 Salesforce 物件類型。用於瀏覽、UI 標籤等。
addedNodes 陣列 否 包含與父系記錄交易相關聯之 Apex ProductConfig__SalesTransactionItem 記錄集合的流程資源。
isNonBlockingEnabled 布林值 否 開啟非封鎖模式。開啟時,這可讓使用者在 API 呼叫在背景中處理時,繼續與 UI 互動。變更會以非同步方式進行排入和處理,而不會封鎖 UI。當關閉時,UI 會在 API 呼叫期間鎖定。
areMessagesFixed 布林值 否 訊息元件是否有固定位置。若為 true,則訊息元件會固定在畫面頂端,且在捲動時保持可見 (固定定位)。若為 false,則訊息元件會捲動頁面內容 (相對位置)。在組態期間讓驗證錯誤/警告永遠可見時很實用
contextId 字串 否 針對「產品設定程式」指定的交易內容識別碼
enableARCValidation 布林值 否 表示是否在產品組態期間執行 ARC (資產續約組態) 驗證
transactionLineGroupId 字串 否 包含正在設定的目前交易條列之群組的識別碼。針對「報價」,這是「報價條列群組識別碼」。針對「訂單」,這是「訂單項目群組識別碼」。
explainabilityEnabled 布林值 否 當「可說明」啟用時,「產品設定程式」會提供關於隱藏、停用或建議產品原因的詳細說明。顯示規則執行詳細資料和業務邏輯推理,以協助使用者瞭解組態限制。
userContext 物件 否

包含使用者資格資料之流程變數的 API 名稱。此變數屬於 ProductConfig__UserContext 類型,並根據使用者特有的屬性決定產品資格。

1. 在 Flow Builder 中,建立變數 API 名稱,例如 userContextData。

2. 使用「指派」或「取得記錄」元素填入變數,並設定欄位,例如 role、region、accountType 等。例如,{!userContextData.role} = {!$User.UserRole.Name}

3. 在「資料管理員」中,針對「使用者內容」選取「{!userContextData}」。Configurator API 會使用此資料評估資格規則,並篩選可用的產品。例如,如果您有如「僅向企業銷售代表顯示企業產品」等規則,API 會從此內容檢查使用者的角色。

只有在您有產品資格規則取決於使用者特定的屬性 (例如角色、區域範圍等) 時,才選取使用者內容。如果所有產品都可供所有使用者使用,請將此欄位保留空白。

instantPricing 布林值 否 指示是否依預設開啟立即定價的布林值。

資料管理員輸出內容

資料管理員會撰寫客戶可讀取的輸出內容。內部方法會產生資料,且 FlowAttributeChangeEvent 會將資料分派至相關內容,如此範例中所示。

this.dispatchEvent(
   new FlowAttributeChangeEvent(FLOW_REACTIVITY_MESSAGES, messages)
);

此表格顯示「資料管理員」提供給其他元件的資料。「資料來源」欄會識別產生資料的內部流程。

內容 資料類型 描述 資料來源
標頭 物件 目前產品標題資訊 mergeContexts()
訊息 陣列 驗證/錯誤訊息 API 回應 + 規則
optionGroups 陣列 產品元件群組 (選項) mergeContexts()
attributeCategories 陣列 產品屬性種類 mergeContexts()
summary 物件 組態摘要 (合併交易樹狀目錄) mergeContexts()
navigationRoute 陣列 目前瀏覽路徑或結點 buildNavigationInfo()
searchInfo 陣列 搜尋產品目錄的資料 buildSearchInfo()
索引標籤 陣列 多根配套的可用索引標籤 buildTabs()
currencyCode 字串 定價的貨幣代碼 API 回應
transactionRecord 物件 交易記錄詳細資料 populateTransactionRecord()
headerTitle 字串 標題標題文字 generateHeaderTitle()
isInstantPricingToggleEnabled 布林值 是否顯示立即定價切換開關 setToggleStates()
isInstantPricingEnabled 布林值 目前立即定價狀態 切換開關/API
isProductValidationEnabled 布林值 目前驗證狀態 切換開關/API
showPrices 布林值 是否顯示價格 州/省邏輯
showSummaryTotalSection 布林值 是否顯示摘要總計區段 保險覆寫
favoriteData

字串 (JSON)

我的最愛組態資料 getFavoriteData()
isConfiguratorDisabled 布林值 設定程式是否已停用 UI 狀態
isApiInProgress 布林值 API 呼叫是否正在進行中 API 生命週期
isPriceRampEnabled 布林值 是否啟用價格橫幅 內容檢查
isGroupRampEnabled 布林值 是否已啟用群組 ramp 群組計算
salesTransactionItems 陣列 所有交易項目 API 回應
layoutMode 字串 版面配置模式 (標準或精簡) 切換
searchResultOptionId 字串 選取的搜尋結果選項識別碼 搜尋瀏覽
rootProductId 字串 根產品識別碼 目錄資料
currentGroupName 字串 目前群組名稱 getCurrentGroupName()
contextMetadata 物件 可自訂「銷售交易項目」屬性的內容中繼資料。包含可在 UI 中顯示之自訂屬性的欄位定義 (標籤、資料類型、選項清單值)。 內容剖析
eligiblePromotions 陣列 符合資格的促銷清單 促銷 API

事件資料管理員接聽

資料管理員會聆聽 Lightning Message Service (LMS) 事件和電線轉接器。

若要聆聽 LMS 事件,資料管理員會訂閱訊息管道,並接收其他元件在此發佈的 LMS 事件。此表格顯示 LMS 事件動作、其處理常式方法,以及動作的功能。

事件動作 處理常式方法 功能
valueChange setState() 更新組態狀態 (選擇項目、數量、屬性)
瀏覽 navigate() 瀏覽整個配套階層
closePreview closePreview() 關閉預覽視窗
toggleInstantPricing setInstantPricing() 開啟/關閉立即定價
toggleExplainability setExplainability() 開關可說明性開啟/關閉
toggleRulesValidation setProductValidation() 開關驗證開啟/關閉
updatePrices updatePrices() 手動觸發定價
validateProduct validateProduct() 手動觸發驗證
cloneItems cloneItems() 複製交易項目
toggleCompactLayout setLayoutModeOnToggle() 切換版面配置模式
contextDefinitionChanged setContextDefinition() 更新內容定義
saveFavConfiguration handleSaveConfiguration() 將組態儲存為我的最愛
loadFavorite handleLoadFavorite() 載入我的最愛組態

電線轉接器會自動從 Salesforce Platform 聆聽資料變更,並將資料變更傳送至資料管理員。此表格顯示「資料管理員」接聽的電線轉接器事件。

電線轉接器 來源 其傾聽的對象 處理常式方法 目的
MessageContext Lightning/messageService LMS 的訊息內容

不適用 (提供內容)

啟用 LMS 通訊
getContextServiceDefinition Lightning/industriesContextApi 內容定義變更

gotContextDefinition()

聆聽內容定義資料
getObjectInfos (2nd) Lightning/uiObjectInfoApi 交易項目物件資訊 getObjectInfos() 聆聽交易項目中繼資料

事件資料管理員觸發

資料管理員會觸發自訂事件、快顯事件和流程屬性變更事件。

此表格顯示「資料管理員」觸發的自訂事件,包括泡泡和複製的事件。

事件名稱 泡泡 已組成 觸發時 目的
載入 是 是 初始載入期間 通知載入狀態的父系
繼續 是 是 根目錄取消或關閉視窗 無須儲存即可關閉設定程式
儲存 是 是 儲存並結束瀏覽 儲存組態並結束
close_modal 是 是 關閉預覽 關閉預覽視窗
showConflictToast 是 是 已偵測非封鎖 API 衝突 顯示衝突警告快顯

此表格顯示快顯事件「資料管理員」觸發。

事件名稱 何時觸發 目的
ShowToastEvent 成功載入我的最愛後 通知使用者成功載入我的最愛

資料管理員會為每個 UI 更新的所有反應性內容分派 FlowAttributeChange 事件。

 
正在載入
Salesforce Help | Article