Schedule Options on More Than One Level of an Assemble to Order Item
Get more detailed capable-to-promise calculations and more accurate promise dates for a complex assemble-to-order item.
If your item has subassemblies at more than one level, then each subassembly might have different optional components and alternative configurations. You can now include the resource requirements in a bill of resources for the options that your customer selects at each level when you schedule shipment or delivery.
Use this feature to improve the quality of your promising results. Promising will apply resource constraints, such as calendars, availability, and so on when it promises an assemble-to-order item. It applies the constraint according to the configure option that your customer selects for each option dependent resource at run time.
Try It
- Set up your assemble-to-order item.
- See Overview of Configure-to-Order.
- Specify resources, including which ones are option dependent. See Guidelines for Creating Work Definitions for Configured Items and Create Work Definitions for Configured Items.
- Set up promising for your configured item. See these topics:
- Include Resources for Configure Options
- Exclude Options and Option Classes for Configured Items
- Include Supplier Capacity When You Promise ATO Items
- The Search Components and Resources subtopic in Set Attributes on Your Supply Chain Search
- Set up the bill of resources for your configured item. See Create Bills of Resources for Configured Items.
Example 1: Use Option Dependent Operations for All Optional Items
Assume you set up your assemble-to-order (ATO) model so it has this hierarchy.
My Model | Operation | Resource |
---|---|---|
Option Class A Option 1 Option 2 |
OP10 OP20 |
R1 R2 |
Option Class B Option 3 Option 4 |
OP30 OP40 |
R3 R4 |
Note
- The model has class A and class B.
- Class A contains options 1 and 2, and class B contains options 3 and 4.
- You set the Option Dependent attribute to Y for each operation. For details, see Guidelines for Creating Work Definitions for Configured Items.
- The OP10 operation and the R1 resource fulfills option 1.
- The OP20 operation and the R2 resource fulfills option 2.
- The OP30 operation and the R3 resource fulfills option 3.
- The OP40 operation and the R4 resource fulfills option 4.
Now examine your bill of resources:
- Go to the Plan Inputs work area.
- On the Plan Inputs page, click Open.
- In the dialog that displays, click the row that has Aggregate Bill of Resources, then click OK.
- Search for your bill of resources, then examine the values.
Here's what your bill of resources will contain.
Assembly Item | Resource | Usage Quantity | Option Dependent |
---|---|---|---|
My Model | R1 | 1 hour | Yes |
My Model | R2 | 1 hour | Yes |
My Model | R3 | 1 hour | Yes |
My Model | R4 | 1 hour | Yes |
These are design time values, not run time values.
The Option Dependent Resource Details section of you bill of resources will contain a similar set of design time values. It includes all the options that the model contains, not the runtime values.
Assembly Item | Resource | Option | Operation Sequence Number | Option Lineage | Usage Quantity |
---|---|---|---|---|---|
My Model | R1 | Option 1 | OP10 | My Model > Option Class A > Option 1 | 1 |
My Model | R2 | Option 2 | OP20 | My Model > Option Class A > Option 2 | 1 |
My Model | R3 | Option 3 | OP30 | My Model > Option Class B > Option 3 | 1 |
My Model | R4 | Option 4 | OP40 | My Model > Option Class B > Option 4 | 1 |
Note that the Usage Quantity's unit of measure is hours, such as 1 hour.
Assume you select options 1 and 3 in the sales order at run time.
My Model | Operation | Resource |
---|---|---|
Option Class A Option 1 |
OP10 |
R1 |
Option Class B Option 3 |
OP30 |
R3 |
Promising will use the OP10 operation and the R1 resource to fulfill option 1, and the OP13 operation and the R3 resource to fulfill option 3.
The Aggregate Bill of Resources table in the Plan Inputs work area only displays design time values. You can use the Review Supply Availability action to examine run time values that have the actual consumption for your sales order. For details, read See What Supply is Available and Allocated. As an alternative, submit your sales order, then use the Check Availability page. For details see Check Availability.
Example 2: Use the Same Resource to Fulfill All Operations
My Model | Operation | Resource | Resource's Usage Quantity |
---|---|---|---|
Option Class A Option 1 Option 2 |
OP10 OP20 |
R1 R1 |
1 hour 2 hours |
Option Class B Option 3 Option 4 |
OP30 OP40 |
R1 R1 |
3 hours 4 hours |
The R1 resource consumes:
- 1 hour to fulfill option 1.
- 2 hours to fulfill option 2.
- 3 hours to fulfill option 3.
- 4 hours to fulfill option 4.
Your bill of resources will contain all of the potential resources, but Promising will consume only the R1 resource.
Assembly Item | Resource | Usage Quantity | Option Dependent |
---|---|---|---|
My Model | R1 | 10 | Yes |
Note that 4 hours is a design time value, not a run time value. 4 hours is the sum of all possible usage quantities for the model.
The Option Dependent Resource Details section of you bill of resources will contain a similar set of design time values. It includes all the options that the model might contain, not the runtime values.
Assembly Item | Resource | Option | Operation Sequence Number | Option Lineage | Usage Quantity |
---|---|---|---|---|---|
My Model | R1 | Option 1 | OP10 | My Model > Option Class A > Option 1 | 1 |
My Model | R1 | Option 2 | OP20 | My Model > Option Class A > Option 2 | 2 |
My Model | R1 | Option 3 | OP30 | My Model > Option Class B > Option 3 | 3 |
My Model | R1 | Option 4 | OP40 | My Model > Option Class A > Option 4 | 4 |
Assume you select options 1 and 3 in the sales order at run time.
My Model | Operation | Resource |
---|---|---|
Option Class A Option 1 |
OP10 |
R1 |
Option Class B Option 3 |
OP30 |
R1 |
Promising will consume 4 hours of R1's time. 1 hour for the OP10 operation plus 3 hours for the OP30 operation. Here's the actual runtime usage for this example.
Assembly Item | Resource | Usage Quantity | Option Dependent |
---|---|---|---|
My Model | R1 | 4 hours | Yes |
You selected options 1 and 3, so the actual run time operations and consumption are:
Assembly Item | Resource | Option | Operation Sequence Number | Option Lineage | Usage Quantity |
---|---|---|---|---|---|
My Model | R1 | Option 1 | OP10 | My Model > Option Class A > Option 1 | 1 |
My Model | R1 | Option 3 | OP30 | My Model > Option Class B > Option 3 | 3 |
Example 3: Use the Same Resource to Fulfill All Operations, Including Required Operations
Assume you add a required OP25 operation to Option Class B in your model, and you also add another required OP45 operation to the entire model. You will use the same resource to fulfill all of the option dependent operations, and also the required operations too.
My Model | Operation | Resource | Resource's Usage Quantity |
---|---|---|---|
Option Class A Option 1 Option 2 |
OP10 OP20 |
R1 R1 |
1 hour 2 hours |
Option Class B Required Option 3 Option 4 |
OP25 OP30 OP40 |
R1 R1 R1 |
3 hours 4 hours 5 hours |
Required | OP45 | R1 | 6 hours |
Your bill of resources will contain all of the potential resources, but Promising will consume only the R1 resource.
Assembly Item | Resource | Usage Quantity | Option Dependent |
---|---|---|---|
My Model | R1 | 21 hours | Yes |
21 hours is a design time value. It is the total usage quantity for of all of the model's operations.
The Option Dependent Resource Details section of you bill of resources will contain these design time values.
Assembly Item | Resource | Option | Operation Sequence Number | Option Lineage | Usage Quantity |
---|---|---|---|---|---|
My Model | R1 | Option 1 | OP10 | My Model > Option Class A > Option 1 | 1 |
My Model | R1 | Option 2 | OP20 | My Model > Option Class A > Option 2 | 2 |
My Model | R1 | - | OP25 | 3 | |
My Model | R1 | Option 3 | OP30 | My Model > Option Class B > Option 3 | 4 |
My Model | R1 | Option 4 | OP40 | My Model > Option Class A > Option 4 | 5 |
My Model | R1 | - | OP45 | - | 6 |
Operations OP25 and OP45 are required, so their Option attributes and Option Lineage attributes don't have a value.
Assume you select options 1 and 3 in the sales order at run time.
My Model | Operation | Resource |
---|---|---|
Option Class A Option 1 |
OP10 |
R1 |
Option Class B Option 3 |
OP30 |
R1 |
Promising will consume resources for the options.
Assembly Item | Resource | Usage Quantity | Option Dependent |
---|---|---|---|
My Model | R1 | 5 hours | Yes |
It will consume 5 hours for the options:
- 1 hour for OP10 to fulfill Option 1
- 4 hours for OP30 to fulfill Option 3
You selected options 1 and 3, so the actual run time operations and consumption are:
Assembly Item | Resource | Option | Operation Sequence Number | Option Lineage | Usage Quantity |
---|---|---|---|---|---|
My Model | R1 | Option 1 | OP10 | My Model > Option Class A > Option 1 | 1 |
My Model | R1 | Option 3 | OP30 | My Model > Option Class B > Option 3 | 4 |
Promising will consume 9 hours of R1's time for the required components regardless of the options that you select in the sales order. It will also consume 5 hours for the options, for a total of 14 hours.
Example 4: Add a Child Model
Assume you add a child model to My Model.
My Model | Operation | Resource | Resource's Usage Quantity |
---|---|---|---|
Option Class A Option 1 Option 2 |
OP10 OP20 |
R1 R2 |
0.5 hours 2 hours |
Option Class B Option 3 Option 4 |
OP30 OP40 |
R3 R4 |
2 hours 2.5 hours |
Child Model Option Class C Option 5 Option 6 |
OP50 OP60 |
R3 R5 |
3 hours 1 hour |
Assume you also changed the usage quantity for some of the other resources.
- Option 1 from 1 hour to 0.5 hours.
- Option 3 from 3 hours to 2 hours.
- Option 4 from 4 hours to 2.5 hours.
Your bill of resources will have these assembly items at design time.
Assembly Item | Resource | Usage Quantity | Option Dependent |
---|---|---|---|
Model | R1 | 0.5 | Yes |
Model | R2 | 1 | Yes |
Model | R3 | 2 | Yes |
Model | R4 | 2.5 | Yes |
Child Model | R3 | 3 | Yes |
Child Model | R5 | 1 | Yes |
These are design time values. They include all of the possible resources that the model might consume.
- Option 1 consumes 0.5 hours of R1 and Option 3 consumes 2 hours of R1, for a total of 2.5 hours.
- Option 5 consumes 1 hour of R3.
The Option Dependent Resource Details section of you bill of resources will contain these design time values.
Assembly Item | Resource | Option | Operation Sequence Number | Option Lineage | Usage Quantity |
---|---|---|---|---|---|
Model | R1 | Option 1 | OP10 | Model > Option Class A > Option 1 | .5 |
Model | R2 | Option 2 | OP20 | Model > Option Class A > Option 2 | 1 |
Model | R3 | Option 3 | OP30 | Model > Option Class B > Option 3 | 2 |
Model | R4 | Option 4 | OP40 | Model > Option Class B > Option 4 | 2.5 |
Child Model | R3 | Option 5 | Op50 | Child Model > Option Class C > Option 5 | 3 |
Child Model | R5 | Option 6 | Op60 | Child Model > Option Class C > Option 6 | 1 |
Next, assume you select options 1, 3, and 5 in the sales order at run time.
My Model | Operation | Resource |
---|---|---|
Option Class A Option 1 |
OP10 |
R1 |
Option Class B Option 3 |
OP30 |
R1 |
Child Model Option Class C Option 5 |
OP50 |
R3 |
You will consume these resources.
Assembly Item | Resource | Option | Operation Sequence Number | Option Lineage | Usage Quantity |
---|---|---|---|---|---|
Model | R1 | Option 1 | OP10 | Model > Option Class A > Option 1 | .5 |
Model | R3 | Option 3 | OP30 | Model > Option Class B > Option 3 | 2 |
Child Model | R3 | Option 5 | Op50 | Child Model > Option Class C > Option 5 | 3 |
File-Based Data Import
If you use File-Based Data Import to import your bill of resources, then make sure each value in the Operation Sequence Number attribute is unique for each option dependent operation.
- Use the value in the Operation Sequence Number attribute only for the bill of material's component that you're using to fulfill one option dependent operation.
- You can't use the same number with an operation that isn't option dependent. Use some other operation sequence number for operations that aren't option dependent.
Assume you use an option dependent operation for every optional item in your model, and you set up your assemble-to-order (ATO) model so it has this hierarchy.
My Model | Operation | Resource |
---|---|---|
Option Class A Option 1 Option 2 |
OP10 OP20 |
R1 R2 |
Option Class B Option 3 Option 4 |
OP30 OP40 |
R3 R4 |
You can use these values in the ScpBillOfResourcesImportTemplate.xlsm FBDI template that you use to import your bill of resources.
Assembly Item Name | Operation Sequence Number | Option |
---|---|---|
Option Class A | OP10 | Option 1 |
Option Class A | OP20 | Option 2 |
Option Class B | OP30 | Option 3 |
Option Class B | OP40 | Option 4 |
Model | OP1 | Option Class A |
Model | OP1 | Option Class B |
In this example, each value in the Operation Sequence Number is unique for each inventory item.
For details about the template, go to File-Based Data Import (FBDI) for Oracle SCM, then search for Supply Chain Planning Bill of Resources.