Variant configuration enables the manufacturing of complex products that also have many variants. Often, new variants are created
by modifying existing product designs as the order is processed and reacting quickly to customers' requirements is also necessary.
With variant configuration, the customer or a salesperson can also determine features of a product, collect and document
specifications for the product and ensure that the product can be produced with those specifications while productions costs are
automatically calculated. The product configuration also improves information exchange between sales, engineering, and production.
Variant Configuration is integrated with or has interfaces to the following modules:
CA-CL |
Classification |
---|---|
LO-MD-BOM / LO-MD-MM |
Material Master, Bill of Material |
PP |
Routings, MRP, Production order |
PP-PI |
Master Recipes |
SD |
Sales, Conditions |
MM |
Purchasing |
CO |
Costing |
Additionally, interfaces to CRM (IPC) and APO are also provided.
It is possible to configure:
The master data of a configuration model comprises materials, bills of material (BOMs), classes, characteristics,
dependencies, and configuration profiles.
In the material master, the MARA-KZKFG indicator determines whether a material is configurable. Before a material
can be configured, at least one valid configuration profile and one variant class (standard class type 300) must be
assigned to the material.
The realization of a product's Bill of Materials / routings is controlled by the configuration model and its dependency knowledge
which is modeled and designed by the user.
The following steps are required to be able to configure objects and simplify and automate the production process:
Most important configuration tables:
Table |
Description |
---|---|
MARA |
General material data |
CUCO | Master data table for configuration profiles |
INOB | Assignment of internal number to object |
MAST | Assignment: material to BOM |
KSSK | Assignment: object to class |
CUOB | Assignment: object to dependencies |
STPO | BOM items |
CABN | Characteristic master data |
KLAH | Class header master data |
KSML | Assignment: characteristics to classes |
CAWN | Characteristic value master data |
CUEX | Dependency source code - compilation |
CUKB | Administrative information for dependency maintenance |
CUKN | Dependencies for variants / configuration Database |
The configuration profile contains the main dependency logic for the configurable material, controls how
BOM explosion is processed and allows further specifications for the BOM. Additionally, the class assignment
can also be maintained here.
For BOM processing, the following options are available:
1.Planned/Production Order
When the level of BOM explosion (none, single level, multi-level) in the sales order is selected, the following
processes apply:
2.Sales Order (SET)
3.Order BOM
Order BOM is used for customer specific adjustment of the BOM and the value assignment is done in SD,
but not in BOM explosion.
Two types of order BOM can be choosen:
Generally, the BOM explosion is controlled by the BOM usage, the BOM application and the BOM filters.
The following type of dependencies are used in variant configuration:
Dependency Type |
Where it is attached |
What it is used For |
Processing order |
---|---|---|---|
Preconditions |
Characteristic value |
Hide a value |
Preconditions are processed after the value has been set (by pressing enter) |
Selection condition |
Characteristic |
Make a characteristic required |
Selection conditions are processed after the value has been set (pressing enter) |
Procedure |
Characteristic Value |
Infer values, send values from root material to subcomponents |
Procedures are processed in sequential order after the value has been set (pressing enter) |
Constraint |
Configuration Profile |
Infer values top down and vice versa |
Processing order of constraints is not fixed |
The objects in the BOM can be called by either: $SELF , $PARENT or $ROOT depending on the level on which the object can be found.
High Level
On high level, every interactive configuration and all dependencies are processed.
Low level
Low level configuration refers to background explosion of BOM, production order creation and MRP restrictions of the selection condition,
the procedures changing master data and the class nodes replacements.
In low level configuration, processing of dependcies is limited and some syntax such as $set_pricing_factor is not read.
Class nodes can be created by using classes as nodes instead of setting multiple BOM items in a following manner:
The main anchor where the configuration of an object in an application is stored is TABLE_APPLICATION-CUOBJ
Table |
Description |
---|---|
AFPO |
Production order |
PLAF |
Planned order |
RESB |
Reservations |
VBAP |
Sales orders |
MARA(CUOBF) |
Plant independent material variants |
MARC(CUOBJ/V) |
Plant specific material variants |
EQUI |
Equipments |
SER00 |
Serial numbers |
EBAN |
Purchase requisitions |
LIPS |
Deliveries |
EKPO |
Purchase orders |
VBRP |
Invoices |
BGMP |
Master Warranty Item |
ESLH |
Service packages |
PBED |
Independent requirement data |
Use CUOBJ and go to transaction CUTABLEINFO .
There you get all relevant configuration data stored in different tables on the data base on one screen.
Table |
Description |
Important fields |
---|---|---|
IBIB |
Basic data |
Ibase, objnr |
IBIN |
Instance |
Instance (=ibase+1) |
IBINOWN |
Owner of instance |
Inttyp, (obtab), objkey |
IBINVALUES |
Characteristic values of an instance |
Sybmol_id, ataut |
IBSYMBOL |
Char-value combinations |
Atinn, atwrt, atflv |
Very important is the pricing Reference characteristic to SDCOM-VKOND
Very common is changing master data via dependencies e.g. number of components in the BOM
Reference characteristic STPO-MENGE
The following fields can be changes by variant configuration.
Reading access to sales order data
Table |
Description |
---|---|
VBAK | Header data |
VBAP | Item data |
MAEPV | Material master fields |
MAAPV | Material master fields |
VBKD | Sales document: commercial data |
VBPA_AG | Partner: sold-to party |
VBPA_WE | Partner: ship-to party |
VBPA_RE | Partner: bill-to party |
VBPA_RG | Partner: payer |
Changing access by using VCSD_UPDATE Structure
Table |
Description |
---|---|
BRGEW | Gross weight of item |
NTGEW | Net weight of item |
GEWEI | Unit of weight |
VOLUM | Volume |
VOLEH | Volume unit |
KWMENG | Item quantity |
VRKME | Sales unit of measure |
ZMENG | Target quantity |
ZIEME | Target quantity unit |
ARKTX | Article description |
You moreover have the possibility to change master of BOM, routing and master recipes
Table |
Description |
---|---|
STPO | Bill of Material (BOM) |
POTX1 | Item text |
POTX2 | Item text |
ROMS1-3 | Variable-size item sizes 1-3 |
ROANZ | Number of variable-size items |
ROMEN | Variable-size item quantity |
MENGE | Component quantity |
Table |
Description |
---|---|
PLPOD | Task list and master recipe |
LAR01-06 | Activity types |
VGW01-06 | Standard values |
VGE01-06 | Unit of measure |
ARBPL | Work center |
LTXA1 | Operation description |
LTXA2 | Operation description |
Table |
Description |
---|---|
PLFLD | Sequence of operations |
LOSVN | Lot size from |
LOSBS | Lot size to |
Table |
Description |
---|---|
PLFHD | Production resources/tools |
MGVGW | Quantity |
MGFORM | Quantity formula |
EWVGW | Required quantity |
EWFORM | Required quantity formula |
Standard function module for interactive processing (high level)
ce_c_processing
Standard function modules for low level configuration BOM explosions
CUBX_CONFIGURE_MDSP
CUBX_CONFIGURE_OBJECT
CUBX_CONFIGURE_STPOB
CUKO_DDB_HAS_COMPONENTS (SD)
CUBX_MDSP_HAS_CONFIGURATION (multi-level)
CUBX_STPOB_HAS_CONFIGURATION (multi-level)
Standard reading configuration from data base vc_i_get_configuration (with dependency knowledge)
vc_i_get_configuration_ibase (without dependency knowledge)
External value set (BAPI/IDOC) Use transaction BAPI
--> Sales and distribution
--> Sales
--> Sales Order
Relevant function module cei0_ddb_set_values_for_idoc