The task involves migrating legacy Calculation Matrices to Decision Matrices and Calculation
Procedures to Expression Sets in OmniStudio. A key consideration arises from the differences in
functionality between these tools, particularly with looping logic, making D the correct answer.
Here’s why D. Looping procedures cannot be migrated as Expression Sets is the correct answer:
Migration Context:
Calculation Matrices → Decision Matrices: Calculation Matrices (from older Vlocity tools) are lookup
tables that map inputs to outputs. They migrate to Decision Matrices in OmniStudio, which serve the
same purpose (e.g., returning a discount based on inputs) and are generally straightforward to
convert, as both are data-driven tables stored as Salesforce metadata.
Calculation Procedures → Expression Sets: Calculation Procedures are sequential, logic-driven
processes that can include formulas, conditions, and loops. They migrate to Expression Sets in
OmniStudio, which are collections of reusable expressions (formulas or conditions) executed in a
specific order.
Key Consideration – Looping:
Calculation Procedures: These legacy procedures support looping logic, such as iterating over a list of
items (e.g., processing multiple line items in a quote to calculate totals).
Expression Sets: Expression Sets in OmniStudio are designed for linear, non-iterative calculations.
They execute a series of expressions (e.g., Total = Price * Quantity) but do not natively support
looping constructs like “for each” or “while” loops. Looping requires an Integration Procedure or
custom Apex in OmniStudio, not Expression Sets.
Impact: If a Calculation Procedure includes looping (e.g., summing values across a JSON array), it
cannot be directly migrated to an Expression Set without rearchitecting the logic. The consultant
must consider alternative tools (e.g., an Integration Procedure with a Loop Block) to handle such
cases.
Why It’s Key: Failing to account for looping can break the migrated process, as Expression Sets lack
this capability. Identifying and addressing looping logic upfront is critical to ensure functional
equivalence post-migration.
Now, let’s examine why the other options are incorrect:
A . Procedures can be migrated without considerations: This is false. Calculation Procedures often
include complex logic (e.g., loops, branching), and Expression Sets have limitations (e.g., no looping),
requiring careful analysis and potential redesign during migration.
B . Matrices can be migrated with minimal considerations: While migrating Calculation Matrices to
Decision Matrices is relatively straightforward (both are lookup tables), “minimal considerations”
understates potential issues like data mapping or deprecated features, though looping isn’t a factor
here. This isn’t the key consideration compared to D.
C . Matrices can be migrated without considerations: This is incorrect. Even for matrices,
considerations like field mappings, data type compatibility, or version differences exist, though
they’re less complex than procedure migrations.
Reference:
Salesforce OmniStudio Documentation: Migration Guide – Discusses migrating Calculation Matrices
and Procedures, noting limitations like looping in Expression Sets.
Salesforce OmniStudio Developer Guide: Expression Sets – Confirms Expression Sets lack looping,
unlike Integration Procedures.