Guidelines for Assigning Orchestration Processes
Create an assignment rule that assigns an orchestration process to one or more order lines of a sales order.
-
Assign the orchestration process according to your unique requirements.
-
Order Management doesn't create different versions of an assignment rule so the changes that you release take effect immediately. You can save rules without releasing them.
-
Use the Otherwise logic to assign an orchestration process that will apply by default. Use it for each orchestration group.
-
Create an assignment rule that references data from a different model. For details, see Get Data from Product Management.
-
You don't need to specify a version or effective date for an assignment rule because the orchestration process controls them.
-
Use the rules editor to help you filter the attributes that you can use in your assignment rule. For details, see Use Tools and Environments to Create Business Rules.
Note
-
You must set up your orchestration processes before you create your assignment rule.
-
Order Management can't reassign an existing order line to a different orchestration process when you revise a sales order. For details, see Fix Problems That Happen When Assigning Orchestration Processes.
-
If a group of order lines are part of a shipment set, then you can't assign different orchestration processes to different lines in the set. For example, if order line w and order line x are part of a shipment set, then you can't assign line w to process y and line x to process z.
Order Management assigns the first line that it encounters in the set to an orchestration process, and then assigns all subsequent lines in the set to the same orchestration process. If you create an assignment rule that attempts to assign a subsequent line in the set to a different orchestration process, then Order Management will ignore that rule. Order Management uses this configuration to make sure it can schedule, reserve, and ship the lines together.
-
Don't create an assignment rule that assigns an order line to an orchestration process when you revise a sales order. If you need to reassign an order line to an orchestration process that's different from the one that the order line currently uses, then you must cancel the sales order or the order line and create a new one.
- If you assign an order line according to category, then use Item Category (Order Fulfill Line). Don't use Category (Order Fulfill Line).
Examples
|
Assign an Orchestration Process According To |
Description |
|---|---|
|
Item |
Each sales order for the AS54888 Desktop Computer must use the same processing steps. You write an assignment rule that assigns an orchestration process named AS54888 Desktop Computer Process to each order line that includes the AS54888 in the Item attribute of the order line. |
|
Customer |
Customer Computer Service and Rentals requires an inspection step for each sales order. You write an assignment rule that assigns an orchestration process named Computer Service and Rentals Process to each order line that includes Computer Service and Rentals in the Customer attribute of the order header. |
|
Destination |
Each sales order that the fulfillment system must ship to a country that resides outside of your current location requires different handling, such as completing customs forms. You write an assignment rule that assigns an orchestration process named International Orders Process to each order line that includes a foreign country in the Ship-To Address attribute of the order header. |
Assign Your Priority
Each assignment rule has a priority, such as Highest. Order Management evaluates the highest priority first and the lowest priority last:
- Highest
- Higher
- High
- Medium
- Low
- Lower
- Lowest
Note
- A higher priority rule runs before a lower priority rule. The Highest priority rule always runs first.
- A lower priority runs after higher priority. The Lowest priority runs last, so it will override all other priorities.
Use AssignProcess
Order Management always evaluates the predefined AssignProcess rule, which comes with a Medium priority, by default. This provides a central anchor point, and it runs even if its inactive. We recommend that you always use AssignProcess with a Medium priority rule as a starting point.
Make Your Custom Rule the Primary Driver
Assume you create a rule named MyRule. You want your custom logic to be the primary driver, but you want Order Management to use AssignProcess as the default to catch anything you missed:
- Set MyRule's Priority to High, Higher, or Highest.
- MyRule will run first. If it doesn't apply, then AssignProcess will apply the standard logic.
Give Your Custom Rule the Final Say
Assume you want AssignProcess to perform its standard logic first, but want your custom rule to have the final say:
- Set MyRule's Priority to Low, Lower, or Lowest.
- AssignProcess will assign a value, and then MyRule will override AssignProcess.
Note
| Priority | Sequence | Override Potential |
|---|---|---|
| Highest | Runs first | Highest. Most likely to be overridden. |
| Medium | Runs 4th | Neutral |
| Lowest | Runs 7th | Lowest. Least likely to be overridden. |
Don't Use Medium for Your Custom Rule
If you set MyRule to Medium, then it competes directly with AssignProcess. Order Management can't consistently apply the sequence so you might encounter inconsistent results. Sometimes Order Management might use MyRule, other times it might use AssignProcess.
Assign the Same Priority to Only One Rule
If more than one rule has the same priority, then Order Management might apply either one. For example, if rule x and rule y are at the Lowest priority, and if they both apply to the same condition, then Order Management might apply x one time and y the next time it meets the same condition, and that can cause inconsistent behavior.
Order Management doesn't use an alphabetical or chronological order, so you might have inconsistent and unexpected results. For example:
- If x ran last, it will override y.
- If y ran last, it will override x.
Summary
| Scenario | Priority Configuration | Predictability | Result |
|---|---|---|---|
| Different Priority |
Rule x High Rule y Low |
High y always overrides x |
Consistent and predictable. |
| Default |
Rule x Low AssignProcessMedium |
High Custom always overrides AssignProcess. |
Consistent and predictable. |
| Same Priority |
Rule x Low Rule y Low |
Low | Not consistent and not predicable. Don't do it. |
Use Orchestration Groups
An orchestration group is a collection of order lines that Order Management processes together. Each orchestration group is a subset of a sales order. You can assign an orchestration process for an orchestration group:
-
You create an orchestration group as a shipment set, configured item, or set of order lines.
-
Your assignment rule processes each orchestration group at runtime, so you must add a test that links each order line with the group. The predefined assignment rules already include this test.
Here are the predefined groups that you can use:
|
This Orchestration Group. . . |
Groups All Order Lines That Fulfill. . . |
|---|---|
|
Standard |
A standard item. |
|
Configured Item or Kit |
A configured item or kit. |
|
Shipment Set |
A shipment set. |
Predefined Assignment Rules
Order Management comes with predefined assignment rules. To view them, go to the Manage Orchestration Process Assignment Rules page, then click View Predefined Rules:
|
Predefined Rule |
Description |
|---|---|
|
CreateSTDGroups |
Assign the orchestration process when the order line has an item that isn't configured or that's configured but that the user has finished configuring. |
|
AddSTDLines |
Add an order line when you assign an orchestration process according to lines that have items that aren't configured or that are finished items. |
|
CreateShipSets |
Assign an orchestration process according to order lines that have a shipment set. |
|
AddShipSetLines |
Add an order line when you assign an orchestration process according to lines that have a shipment set. |
|
CreateModels |
Assign an orchestration process according to order lines that have a configured item. |
To view the predefined AssignProcess rule on the Manage Orchestration Process Assignment Rules, set the View attribute to AssignProcess.
If you create your own rule, then consider the predefined rules when you set priority. If you want Order Management to apply your custom rule first, then set the priority higher on your custom rule than the value that's on the predefined rule.