1) What is decomposition relationships?
Industries Order Management uses decomposition relationships to define these rules that are needed to decompose the commercial order into sub-orders, called fulfillment requests, tailored for specific downstream systems.
Information from fields, attribute from commercial order is copied to attribute on fulfilment requests.
In short, Order decomposition breaks down the original commercial order into technical orders that are custom-designed for fulfillment systems according to use case requirements. The Order Decomposition process does not modify the original order. Instead, the process generates a set of Fulfillment Requests (FR), each containing Fulfillment Request Lines (FRL).
We can interpret FRL is a wrapper for the technical product specification defined in the catalog in a similar manner in which the Order Item is a wrapper for the commercial product specification.
FRL action is identified during the decomposition process based on analysis of the current technical inventory in a similar manner in which the Order Item actions are derived from assets.
2) What are different types of decomposition relationships?
Basically there are three types of decomposition relationships.
a) One-to-One Decomposition:
A common use case for a one-to-one order decomposition involves an offer containing multiple products of the same type that must be activated individually.
b) One-to-Many Decomposition Relationship:
A common use case for a one-to-many order decomposition is an offer containing a product that affects multiple fulfillment systems i.e that needs to be provisioned to multiple systems.
For example: A product which needs to be activated in network and has an OTC or MRC charge that needs to be sent to billing system.
So in the above use case we will need to create two technical products one of which will hold information needed by networking system and the other will hold the OTC or MRC charge for billing system.
c) Many-to-One Decomposition Relationship:
A common use case is a fulfillment system that requires information defined on a different commercial order items in single request. So in this case we will need to decompose multiple commercial products into single technical product.
This type of decomposition is generally achieved by using scope on technical product as “Account” or “Order Item".
For example, let say one of the commercial product hold Data/SMS/MIN value and the other hold the information say SIM details.
In the above use case we will create two decomposition relationship one from first commercial product which will map DATA/SMS/MIN to technical product attributes and other from second commercial product which will map SIM details to technical product attribute and then the information can be send to downstream system from technical product in a single request.
d) Multi-Level Decomposition Relationships:
Lastly, we can also create multi-level decomposition relationships. They are comprised of 1:1, 1:M, and/or M:1 relationships.
The need of multi-level decomposition arise when single level decomposition relationship is not sufficient to decompose commercial product into desired technical product.
As a best practice, a maximum of four levels is recommended.
Multi-Level Decomposition Relationships
3) What is product class and when to use it?
By default, when we create a new product using the Product Console, the Record Type is set to Product however “Product Class” is an abbreviated way to refer to a product with the Record Type as Class.
Product Class is neither a commercial product nor a technical product, simply it's a mechanism used by Industries Order Management to categorize certain products in order to simplify the order decomposition configuration process.
The need of product class arise when there are multiple commercial product and decomposition behavior is same for all i.e all decompose similarly to technical product.
Let say we have 100 commercial product in that case will need to create 100 decomposition relationship to decompose the commercial product to technical product. Isn’t this process time consuming?
Implementing decomposition by Product Class includes three main steps:
1) Create the Product Class.
Create a product and set the record type to Class.
2) Associate similar commercial products with the Product Class.
This is done by setting the commercial product's Parent Class field to a product created in step 1 with a record type of Class.
3) Create a single decomposition relationship from product class to technical product.
4) What are primary functions we perform using industry order management?
1) Order decomposition
2) Order Orchestration
5) What is order orchestration?
Once the order decomposition is completed the next step is the order orchestration.
Orchestration is basically a process of communicating with external systems to send the necessary information needed by the external system to process the order.
Example of external system include billing, network activation, inventory management.
6) Is it necessary to perform order decomposition?
The main purpose of the order decomposition is to accumulate the necessary information from fields/attributes from different commercial products into attributes on technical products and then send the necessary information to external system for provisioning.
order decomposition is optional and is explained using the example below.
Sometime the integration with external system is so complex that it is necessary to break the commercial information from different commercial products or single commercial product into different technical products or single technical product as per the need of external system. In order to achieve this type of integration in simpler way it is necessary to make use of decomposition process to map the necessary information on technical product and then which can be used to communicate with external system however sometime the integration with external are simple and can be easily achieved based on the information available on commercial product and in this type of scenario we do not need decomposition.
7) Is it ok to map the action parameter from commercial product to technical product in decomposition?
we should avoid mapping the action parameter from commercial to technical product. This is explain using the below example.
Let say you have a commercial product "Bill Plan" which has DATA, MINS and SMS as an attribute. Let say you created a technical product called "Bill Plan TP" which has DATA_TP, MINS_TP as an attribute.
Note : We are not mapping SMS attribute from commercial to technical product. Let say the downstream system for which technical product is created does not need SMS value.
Let say you map commercial product "Bill Plan" attribute DATA, MINS to technical product "Bill Plan TP" attribute DATA_TP, MINS_TP. In this case initially in base order our order item(Bill Plan) and fulfilment line item (Bill Plan TP) both will have add action and accordingly once order is assetized the asset and inventory would be created.
Now, let say we raised another MACD for bill plan change where we are modifying the attribute SMS on commercial product "Bill Plan".
So in the above case in cart we will be able to see the action Change on "Bill Plan" order item and action on fulfilment "Bill Plan TP" will be still NoChange this is because there is no change that has happened to commercial product "Bill Plan" attribute DATA, MINS which is mapped to "Bill Plan TP" attribute DATA_TP, MINS_TP however if we would have mapped the action parameter as well from order item to fulfilment line item it would have resulted in Modify action on fulfilment line item as well which can result in error if we have callout that need to be executed based on Modify action on fulfilment line item.
8) What are conditions and mapping rules while creating decomposition relationship?
A condition rule places a condition on the decomposition relationship. Order Management initiates decomposition of an order item only if the specified condition evaluates as true. Otherwise, Order Management skips the decomposition relationship.
Note: The conditional rule is optional.
Mapping Rules provide a way to pass the attributes from your commercial products to technical product attributes.
There are three different types of Mapping Rules.
a) Ad-verbatim : Here the value of the source attribute is copied as is to the destination attribute.
b) List : For a given list mapping, the source value is set to the corresponding destination value.
Example : Let say you have 2 values on commercial side on an attribute as Gold, Silver and let say you have 2 values on technical side on an attribute as 100 GB and 50 GB.
Using list mapping type we can map GOLD to 100 GB and Silver to 50 GB.
c) Static : Here we can specify any value on technical product attribute directly.
Note: The mapping rule is mandatory.
9) What is the need of setting product scope on technical product?
Order Management generates Fulfillment Request Lines (FRL) from order items as a result of the decomposition process.
Sometimes there is a need to create one fulfillment request line (FRL) from particular order item which we call as 1:1 decomposition
or Sometimes there is a need to create multiple fulfillment request lines (FRL) from one order item which we call 1:M decomposition
or Sometimes there is a need to create one fulfillment request line (FRL) for multiple order items which we call as M:1 decomposition.
The above behavior is controlled by using scope field on product2 object.
The Scope field appears for all products, whether they are commercial or technical. However, Order Management considers Scope only for technical products because they are used in decomposition results.
10) What are different scope available to set on technical product?
Scope has below picklist values:
a) Account
b) Order Item
c) Downstream Order Item
d) Top Order Item
e) Order
11) Explain what is Account scope?
If we set the Scope for a technical product to Account it creates a single instance of the technical product Fulfillment Request Line. Only one inventory item for the technical product exists for the given account. If there is another order requesting the same bundle, then the decomposition process generates a FRL based on the existing inventory item.
12) Explain what is Order scope?
If we set the Scope for a technical product to Order creates a single instance of the technical product (Fulfillment Request Line) per order. But, unlike the Account scope, for every subsequent order that requests the same bundle, one inventory item fulfillment request per technical product is created.
13) Explain what is Order Item scope?
As we have seen in the above examples if we set the scope to Account or Order then irrespective of the number of time the bundle is added in Order 1 decomposition always resulted in single technical product getting generated however if we want separate technical product to be created for each bundle as shown in image below then we can set the scope to Order Item.
Now, I created an order and added bundle product twice as shown below. Have a look at decomposition shown on right side. The decomposition resulted in a separate technical product for each bundle.
14) Explain what is Downstream Order Item scope?
If we set the Scope for a technical product to Downstream Order Item then it results in no merge of a technical product i.e FRL is created for each commercial instance.
15) Explain what is orchestration plan definition?
- Milestone.
- Auto-Task.
- Callout.
- Manual Task.
- and Push Event.
Status(Salesforce) Vlocity Order Status
Original Order Draft Cancelled Requested
Supplemental Order Draft Ready to Submit
Status(Salesforce) Vlocity Order Status Fulfilment Status
Original Order Draft Superseded
Supplemental Order Activated Cancelled Activated
Status(Salesforce) Vlocity Order Status
Original Order Draft In Progress
Supplemental Order Activated Rejected
- A new downstream fulfillment request is added for Back Cover with vlocity action as Add.
- The fulfillment request Technical Product Mobile gets a supplemental action of Amend because it's the parent of the new fulfillment request.
- The Mobile Phone order item has changed, so gets a supplemental action of Amend.
- The memory card order item is carried forward as is, so has supplemental action of No Change.
No comments:
Post a Comment