協調流程計畫中的業務流程變更
當您首展「動態收入協調流程」的階段式實作時,每個首展階段可能會變更業務流程,或需要其多個組態才能共存。
必要版本
| 適用於:Lightning Experience |
| 提供版本:Enterprise、Unlimited 及 Developer Edition of Revenue Management |
條件是檢查訂單、產品或帳戶屬性的規則,可決定是否適用步驟、步驟群組或案例。您選取的屬性會決定條件的行為方式:針對所有訂單的單一裁切使用以日期為基礎的條件、針對邏輯的產品屬性條件 (因服務類型而有所不同)、針對試用版或特定區段的帳戶屬性條件、針對以風險為基礎的工作流程使用訂單值條件,以及針對訂單或履行事件發生時套用的業務里程碑條件。當變更相依於多個因素時結合條件。如需建構條件的詳細資訊,請參閱 瞭解訂單履行的執行條件。
當您在首展階段期間需要取代、新增或變更協調流程計畫中的業務流程時,請勿在該位置編輯已啟用的組態。當下一個首展階段發生時,長時間執行中的訂單通常仍在運作中,並且立即編輯可能會中斷訂單。請改為將條件套用至每個變更,並在變更有顯著意義的情況下並行執行舊組態與新組態。
舊版組態會在訂單完成時自然淘汰。當變更影響服務層級時,允許時間進行 Sandbox 測試、文件更新和客戶通知,並為更大的變更 (例如更換業務流程或導入新情況) 提供更多前置時間。
下列模式是您可以針對自己的首展進行調整的建議,並非進行這些變更的唯一方式。針對每個變更,將變更建模為套用至新訂單,而不會中斷已執行的訂單。單一首展階段可以結合多個變更,選擇適合業務案例和運行中訂單類型的組合,以便降低風險。
- 取代現有的業務流程
- 將取代部署為新的步驟群組或案例,並使用條件將新訂單路由至該群組。將現有步驟群組保持為已使用的訂單,並在訂單完成後淘汰。
- 新增業務流程
- 新增新的步驟群組 (或外部呼叫的新步驟),並將其連結至含有條件的案例,使其僅符合需要的訂單資格。已在出貨中的訂單不會受到影響。
- 變更業務流程的執行方式,例如手動至自動
- 將新的執行建模為新的步驟定義或條件所控制的新案例,而非編輯執行步驟。新訂單會使用自動路徑,且運作中訂單會完成其啟動的流程。
- 變更業務流程的一部分
- 將條件套用至變更的特定步驟,以便只有合格的訂單選擇新行為。條件會抑制新訂單的舊步驟,而非刪除這些步驟,而機上訂單仍會參照這些步驟。
- 取代業務流程後的履行系統
- 當變更取代整個下游或後端系統時,請選擇隔離層級。如果相同的技術產品仍適用,請將新訂單路由至不同的案例或步驟群組,例如更換業務流程時。如果履行邏輯必須完全分開 (例如,由於在線訂單必須持續針對舊系統進行修訂或取消,直到其完成為止),請改為使用根據產品或訂單屬性執行規則路由至不同的技術產品。如需執行規則選取技術產品的方式,請參閱 解壓縮關係類型。若要設定執行規則背後的條件,請參閱 定義解壓縮規則的執行規則。
例如,以下是變更將條件式執行步驟插入現有程序時,「變更業務流程的一部分」模式的外觀:
選擇如何建模新的或更換業務流程
當上述模式導入新的或取代的業務流程時,請決定將其建模為步驟群組還是步驟。您的選擇會決定您稍後可以再次變更的速度。
- 作為履行步驟定義群組
- 將完全在 Salesforce 內執行的業務流程建模為履行步驟定義群組,也稱為步驟群組。步驟群組會保留流程的已排序步驟。較大的業務流程不必對應至單一步驟群組,多個步驟群組可以每個代表其片段。如需在協調流程計畫中定義步驟群組和步驟的詳細資訊,請參閱定義協調流程計畫元件。
- 作為步驟
- 將呼叫下游或外部履行系統的業務流程建模為步驟群組中的單一步驟,例如呼叫步驟。
履行情況會將產品連結至針對訂單執行的步驟群組。從一開始按生命週期階段分組步驟—先識別產品之間常見的步驟,然後僅將產品特有的邏輯分割為個別的步驟群組,並在可能的情境層級套用條件。此結構可讓您稍後更輕鬆地新增邏輯路徑,而無須重構。
維護業務流程的多個組態
首展階段通常表示相同業務流程的多個組態必須在一段期間共存。選擇符合舊組態與新組態一起執行所需時間的共存模式。
- 長期共存
- 依持久條件路由,無限期地將平行案例保持不變。當企業計畫保留這兩個變體時 (例如針對不同的產品或區域),請使用此模型。
- 共存,直到舊組態上的訂單完成為止
- 使用條件抑制新訂單的舊組態,並讓執行中的訂單過時。參照舊組態的所有訂單完成後,請淘汰舊的步驟群組、步驟或案例。「動態收入協調流程」會封鎖此刪除,而未完成的步驟仍會參照步驟群組、步驟或案例—請勿強制中繼資料覆寫以略過區段,因為這會損毀機內訂單的風險。定期檢查其訂單全部已完成的已抑制步驟和已淘汰情況,並將其移除。具有許多條件的計畫會增加處理延遲,並可接近平台限制,特別是針對大規模訂單。如需特定限制,請參閱 動態收入協調流程器限制。
- 新組態會在停用後覆寫舊組態
- 使用以日期為基礎的條件,讓截止前的訂單使用舊組態,截止後的訂單則使用新組態。此模型提供簡潔、時間型轉換,無須混淆邏輯。
使用協調流程變更程式碼的時機
您可以使用組態 (修改案例、步驟定義、條件和步驟相依性) 來處理大多數協調流程計畫變更,而不是使用自訂程式碼。跨階段性首展部署組態變更更安全,因為您可以透過條件控制變更,並與現有邏輯並行執行。只有在變更需要條件無法表達的邏輯時,才使用自訂程式碼,例如 Apex 或流程。
| 工作 | 如何使用程式碼 |
|---|---|
| 轉換資料 | 使用程式碼來重新打造、對應或增強步驟傳送至下游系統的裝載資料。 |
| 計算業務值 | 將程式碼用於超出條件欄位值比較的計算,例如定價或資格邏輯。 |
| 呼叫整合端點 | 使用程式碼,透過呼叫將步驟連線至外部履行系統。 |
| 強制執行 API 契約 | 當步驟必須產生或耗用下游系統所需的特定要求或回應契約時,請使用程式碼。 |
只有在輸入和輸出契約保持相同時,修改基本邏輯 (例如 Apex 或流程) 同時保留相同的步驟定義才會安全。參數或必要裝載內容的任何變更都會造成執行步驟失敗。
依訂單狀態的實體層級變更影響
以上模式和共存模型可透過編輯四個實體中的一或多個實體 (履行案例、步驟定義、條件和步驟相依性) 來運作。此表格列出對新訂單、執行中訂單和補充訂單每個實體層級變更的完整影響,因此您可以檢查所進行特定變更的成果。
| 實體 | 變更類型 | 新增訂單 | 執行指示 | 補充訂單 |
|---|---|---|---|---|
| 履行情況 | 新增記錄 | 適用於新訂單。 | 沒有影響。 | 如果情況符合補充訂單,則包含步驟的新步驟群組會新增至計畫。 |
| 刪除記錄 | 連結的步驟群組不會在計畫中納入考量。不會建立屬於該步驟群組的步驟。 | 沒有影響。 | 由於存在此情況而建立的步驟會根據步驟的執行狀態取消或捨棄。 | |
| 變更現有記錄中的產品或步驟群組 | 新組態會套用至新訂單。系統會評估新條件 (若有),並建立步驟。 | 沒有影響。 | 舊組態下建立的步驟會根據步驟的執行狀態取消或捨棄,若新組態符合補充訂單資格,則會將包含步驟的新步驟群組新增至計畫。 | |
| 履行情況上的條件 | 新增條件 | 系統會評估新的條件,若符合條件,則會建立步驟。 | 沒有影響。 | 如果情況因條件而停止符合資格,則會根據步驟的執行狀態取消或捨棄步驟。 |
| 刪除條件 | 屬於步驟群組一部分的步驟定義用於建立新步驟。 | 沒有影響。 | 情況會開始合格。如果是,則會在補充訂單的計畫協調流程期間新增這些步驟。 | |
| 變更現有條件的條件 | 系統會評估新的條件。系統會根據成果建立或忽略步驟。 | 沒有影響。 | 如果情況開始符合新條件,則會在補充訂單的計畫協調流程期間新增這些步驟。如果步驟停止合格,則會根據步驟的執行狀態取消或捨棄步驟。 | |
| 履行步驟定義 | 新增記錄 | 系統會為新的步驟定義建立步驟。 | 沒有影響。 | 系統會為新的步驟定義建立步驟。 |
| 刪除記錄 | 如果未完成的步驟參照它,則不允許刪除。 | 如果未完成的步驟參照它,則不允許刪除。 | 如果未完成的步驟參照它,則不允許刪除。如果此步驟完成,則薪水會插入計畫中。 | |
| 新增步驟 | 如果案例符合資格,則步驟會新增至計畫。 | 沒有影響。 | 如果情況繼續符合資格,則會在補充計畫協調流程期間新增該步驟。 | |
| 刪除步驟 | 系統會忽略刪除的步驟定義。如果任何計畫根據指定的步驟定義具有未完成的步驟,則無法刪除步驟定義。 | 如果未完成的步驟參照它,則不允許刪除。 | 根據執行的狀態,會取消或捨棄步驟。如果任何計畫根據指定的步驟定義具有未完成的步驟,則無法刪除步驟定義。 | |
| 變更步驟類型 | 系統會使用新步驟類型建立步驟。 | 沒有影響。 | 計畫協調期間忽略。 | |
| 變更步驟範圍 | 系統會在新範圍中建立步驟。 | 沒有影響。 | 補充訂單遭到拒絕。 | |
| 變更未退貨點 (PONR) | 系統會使用新的 PONR 值建立步驟。 | 沒有影響。 | 計畫協調期間忽略。 | |
| 變更修正或取消步驟群組 | 系統會根據修正和取消群組建立步驟。 | 沒有影響。 | 計畫協調期間忽略。 | |
| 變更 Apex、流程、整合定義或指派規則 | 系統會根據新的 Apex 或流程建立步驟。使用流程的最新已啟用版本。 | 如果在 Apex 或流程變更之前開始執行,則目前執行的步驟會執行舊版本。如果步驟在變更之後執行,則會執行新版本。如果契約 (輸入、輸出或前後條件) 變更新實作,則步驟可能會失敗。 | 取決於步驟的契約 (輸入、輸出或實作的功能) 是否變更。如果執行且步驟執行,則步驟可能會失敗。如果您變更定義中的 Apex 類別或流程,但將舊的 Apex 類別或流程保持原狀,則根據從屬類別、組態和子流程中的其他變更,步驟可以正常執行。 | |
| 新增條件 | 從建立的履行步驟記錄參照新條件。 | 沒有影響。 | 系統會忽略在建立步驟之後新增至定義的條件。 | |
| 刪除條件 | 系統會在未參照條件的情況下建立履行步驟記錄。 | 從定義中刪除的條件 (對規則集對應值執行或恢復) 也會從執行步驟中移除。 | 系統會忽略在建立步驟之後從定義中刪除的條件,並評估舊條件。 | |
| 變更現有條件的條件 | 履行步驟記錄參照規則集。 | 履行步驟記錄參照規則集。條件中的變更會影響略過或執行步驟的執行。 | 履行步驟僅會儲存規則集的參照。如果條件變更,則會在協調流程執行期間評估新的條件。 | |
| 步驟相依性定義 | 在現有步驟之間新增新的相依性 | 適用於新訂單。 | 沒有影響。 | 計畫協調期間會新增新的相依性記錄。此相依性記錄可能會影響或不會影響實際的協調流程執行。 |
| 在現有步驟與新增的步驟之間新增相依性 | 適用於新訂單。 | 沒有影響。 | 計畫協調期間會新增新的相依性記錄。 | |
| 新增新增的步驟與現有步驟之間的相依性 | 適用於新訂單。 | 沒有影響。 | 計畫協調期間會新增新的相依性記錄。此相依性記錄可能會影響或不會影響實際的協調流程執行。 | |
| 在兩個新增的步驟之間新增相依性 | 只要步驟位於正確的範圍中,步驟之間就會建立具有履行步驟相依性記錄的步驟。 | 沒有影響。 | 計畫協調期間會新增新的相依性記錄。 | |
| 刪除相依性 | 系統會在步驟之間建立沒有任何履行步驟相依性記錄的步驟。 | 沒有影響。 | 一旦建立相依性記錄,便不會刪除。 | |
| 變更相依性範圍 | 適用於新訂單。 | 沒有影響。 | 沒有影響。 |
