Assemble-to-Order Configurator

 

Overview

The Assemble to Order (ATO) Configurator is functionality integrated in the 3.0 and higher releases of xTuple applications which includes PostBooks, Standard and Manufacturing editions of xTupleERP. It is designed to facilitate scenarios where goods or services are sold in which attributes about a particular product may change from one sale to another, and where these attributes can affect bill of materials, costing and pricing. For products, the ATO Configurator is designed to leverage the capabilities of the Job item type which is designed for make-to-order environments. The Reference item type may also be used for configuration in scenarios where materials and cost are not tracked, but users want to be able configure the pricing of an item sold based on attributes. 

Prerequisites

This topic assumes the user has an understanding of the following xTupleERP concepts:

Brief Explanation

Configuration starts at the item window. Items with type of Job or Reference may be flagged as configured. Characteristics on configured items may have a price associated with them. Advanced characteristic pricing for configured items is also supported by Pricing Schedules. Associations between characteristics and bill of material items may be defined for configured Job items such that a bill of material item is only used when a specific characteristic value is selected on a Sales Order.

Sales Order line items will recognize and treat configured items differently than other items. If applicable, changes in characteristic selections will affect the pricing and pending availability listings. When a work order for a configured line item is exploded, materials added to the work order are based on characteristic selection for the line item. After work order explosion characteristics on the sales order line item may no longer be edited unless the work order is imploded. Configured items behave in the manufacturing, shipping and billing cycles the same way non configured Job and Reference items behave.

Detailed Explanation

Item

item1.png

The item maintenance window includes a "Configured" check box that is enabled when the Item Type selected is either "Job" or "Reference."

The limitation of item types means that configured items may not be stored or tracked in inventory. This limitation exists because as of this writing it would not be possible to distinguish the difference between one item and another for either netting or costing purposes if we were to allow inventory stocking of configured goods. Depending on community involvement, future functionality could be added to allow inventory tracking of configured items by serial number.

 

When "Configured" is checked, a list price column becomes visible on the Characteristics tab. Characteristic list price also appears as an editable field when characteristics are added or edited for the item. The normal list price for a configured item will be reflected as the "Base Price" on a Sales Order. Characteristic list prices will be the default prices used when that characteristic and value combination are selected on a sales order, and will be added to the Base Price to calculate a new Net Unit Price for the item on the sale.

The usual business logic of characteristic selection values works the same as with any other item. That means a list of selectable values for Sales can be built by including the same characteristic multiple times with different values. The characteristic flagged as "Default" will be the default value on the Sales Order. 

 

Pricing Schedule Item

Pricing of characteristic values for Configured items can also be controlled at a more granular level through pricing schedules.

pricechar1.png pricechar2.png

The pricing schedule item screen has a Base tab where over rides to the item list price may be added. For configured items, a characteristic tab will be enabled that allows over-ride pricing by characteristic to be added. The Sales Order window implements pricing selection logic for characteristics the same way as item pricing: the customer receives the lowest price they are eligible for based on price schedule assignments and price schedule quantity break logic.

Bill of Material Item

Characteristic assignments may be set to affect Bill of Material explosion on Work Orders for configured items. A "Configuration" tab is made visible on the Bill of Material Item window when the parent item is flagged as Configured. To associate a Bill of Material item with one of its parent's characteristic values, simply select a characteristic and value that would be selected on a Sales Order to cause it to be included in the Work Order. The listing of characteristics and corresponding values on this tab are determined by the characteristics that have been added to the parent item in the item window.

If no characteristic information is selected, the item will be included on all work orders.

bomitem1.png bomitem2.png

The Bill of Material Item windows pictured show a set up where YPAINT1 is only included on Work Orders where the parent Sales Order has selected the value Yellow for Characteristic I-COLOR. A separate Bill of Material Item exists for RPAINT1 that specifies it will be only be included if the I-COLOR value selection is Red.

Sales Order

Sales Order entry works almost exactly the same way with configured items as it does with non-configured items. The main difference is between how information is calculated and displayed. In the first examples pictured we can see a user is entering an order for a Custom Truck. By default the truck comes with yellow paint which is identified by the characteristic value for I-COLOR being set to Yellow. The Net Unit Price is the item price for CTRUCK1, plus the price of all the characteristic values selected. We can see the "Base Price" for the item on the characteristic tab as $10.00. The price for yellow paint of $3.00 is added giving us a total Net Unit Price of $13.00. On the Supply tab when dependencies is selected we can see yellow paint (YPAINT1) is listed on the Bill of Materials.

salesline1.png salesline2.png

 

On the following pictures we can see that the user has changed the color selection to Red. This changed the characteristic price for I-COLOR to $10.00 which increased the Net Unit Price to $20.00. We can also see on the Supply tab that the yellow paint has been replaced by red paint.

salesline3.png salesline4.png

It is important to note for Job Items that a Work Order will be created when the line item is saved. It is common for users to have xTuple configured to automatically explode Work Orders when they are created, which means that the Bill of Material is copied to the Work Order. Once this happens, the characteristics on the sales order will be set to view only. This is necessary to enforce the integrity of the relationship between the characteristics on the Sales Order and the materials on the Work Order. If a user wishes to change sales order characteristic selections on a sales order in this state, the work order must be manually imploded first. If the work order is already in process it will not be possible to implode the work order or change sales order characteristics. Any changes to the work order at that point would have to be accomplished by manually adding and removing materials through the Work Order Materials window.

If you encounter frequent changes to Sales Order characteristics on configured items before work has begun, it may be best to disable automatic work order explosion so that this is handled manually by the shop floor when they are ready. Automatic Work Order explosion can be enabled and disabled in System > Configure > Manufacture.

 

Configured items behave in the manufacturing, shipping and billing cycles the same way non configured Job and Reference items behave.

ATO Routings

The configurator for ATO looks nice but where are the routers? I have used Friedman's ERP system for the past 11 years and their ATO product configurator allowed for routers to vary based on characteristic values. For instance we may route a product to a high speed assy machine for high volume items or based on color (again high volume). Packaging was most frequently used. Packaging could vary and was part of the ATO. Based on packaging selection, we would route the product differently. I see bills and pricing that vary but do not see routers that vary.

Yes, your observation that

Yes, your observation that routings are not yet supported is correct. The software is always evolving, usually at the request of our user base. Adding support for ATO to the Bills of Operations would be a logical advancement for the software. Let us know if you are interested in getting behind such an enhancement either via sponsorship or code contribution.

Regards,

John