Thanks for see my post Sap Buzz Training provide Sap VC online training  real time project experts.Very in depth course material with real time scenarios.We will provide class and demo session at student flexible timings So Contact:+91-9052734398

facebook link:

Variant Configuration

To get an understanding of what Variant Configuration actually is let’s read the description offered by the SAP Online Help:

1. Variant Configuration

Variant configuration is for manufacturing complex products in which customer determines the features of the product. Objective of variant configuration is to react quickly to customers’ requirements.

Here it needs not to create separate material for each variant of a product. When companies introduce variant configuration this often goes beyond a business process re-engineering project. Variant configuration offers an opportunity to restructure product structures for which then processes are defined. This has a direct impact to the core areas such as marketing and product data management.

2. Advantages of VC

· No need to Create separate material master for each variant combination.

· Super BOM and Super Routing is enough for representing all possible Variants and Operations.

· Able to react more flexible to customer demands.

· Increase Information exchange between sales, engineering and production.

3.What is Configurable Material?

· A material with different features or characteristics and options is known as configurable material. Example: PC, Car.

· Configurable materials are either created in a material type that allows the configuration (n the standard system, the material type KMAT) or they are given the indicator Configurable in the material master record.

4.Master Data used for VC

Following Objects are used as Master data for Variant configuration.

1. Super BOM

2. Super Routing

3. Characteristic

4. Class

5. Object Dependencies

6. Configuration Profile

7. SD Condition records

4.1 Super BOM

Super BOM Contains all the components for producing configurable product. It contains both variant as well as non-variant parts required for producing configurable product.

4.1.1 Super BOM configuration

Super BOM can be created either one of the following methods.

· Create BOM with class Item of 200-class type that contains all characteristic of a configurable material.

· Create BOM with all possible materials as its components. Then assign /define dependencies to each component.

The different between this two method is

· BOM with class item, no need to assign or define object dependencies. Instead of that each material is classified in material master itself using class 200.

· For both cases all characteristics are assigned to class 300 which is again assigned to KMAT material in order to trigger configuration in configuration profile.

4.1.2 Super BOM with Class Item

Class items used to control the selection of variant parts in a BOM. Variant parts are classified in a class, and the class is entered in the BOM as a class item. When you configure the material, the class is replaced by a suitable variant part.

4.1.3 Advantages of using Class Item in BOM

· Only one item for the class is enough, instead of several items for the individual variant parts.

· No need to create and assign selection conditions.

· Able to classify additional objects in the class at any time, without having to change the BOM.

4.1.4 Steps involved in super BOM with Class

? Define all Characteristics and its Values assign it to Class with type 200.

? Assign characteristic Values to materials by Classification material

? Assign class 200 with material instead of assigning all BOM items.

? Create and Assign class 300 (with same characteristics) with configurable product using configuration profile.

4.1.5 Super BOM with Material Components

This bill of material (BOM) of a configurable material contains all the components that are required to manufacture the material. The BOM contains components that are only used in specific variants (variant parts), as well as components that are used in all variants (non-variable parts).

4.1.6 Steps involved in super BOM with Material Components

? Define all Characteristics and its values assign it to Class with type 300.

? Assign Class with configurable material in Configuration profile.

? BOM is created with all variant and non-variant items.

? Define interdependency between objects (Characteristic, BOM item, Routing Operation etc?) by using Object Dependencies.

? Assign class 300 with configurable product using configuration profile.

4.2 Super Routing

A configurable routing describes the production process for all variants of a product. Instead of creating a routing for each variant of a product, you can create operations for one routing, or a “super” routing.

It is possible to maintain Object dependencies for following in super routing:

· Sequences

· Operations/sub-operations

· Production resource/tool assignments

The routing is configured by system, when order is created for KMAT material.

4.3 Characteristic

Characteristic is used to define the features of a configurable material. To enable to use characteristics to configure a material, assign the material to a class of class type 300. The customer can choose from among different options for each characteristic.

· Characteristics describe the properties of objects. The values of a characteristic specify these properties.

· Value assignment to characteristic may be single value or multiple value with required entry or restrict able entry.

· In characteristic it is also possible to use table name and its field name in order to change the Object quantity or values. I.e. BOM item quantity or Operation time, which is known as ?reference characteristic?.

· In Restriction screen allowed Class types are entered i.e. for what are the class this characteristic may used. In general for Variant configuration class 200 and 300 are used.

· It is also possible to assign Dependency to characteristic values maintained in Characteristic.

4.4 Variant Class

· In Variant configuration, Class is used to hold the characteristics that describe about configurable material. Class type to determine which object types can be classified.

· Class is used in variant configuration if the class has a class type that supports variant configuration. In Customizing for Classification, the Variant class type indicator must be set for the class type. In the standard system, this is class type 300.

4.5 Dependencies

· Dependencies restricts the combinations of options i.e. characteristic that are not allowed. It also select exactly the right BOM components and operations to produce a variant.

· It also describe the interdependencies between characteristics and characteristic values

· It control which components are selected from a bill of material (BOM) and which operations are selected from a task list

· It also changes the values of fields in BOM items and operations during configuration.

4.5.1 Global and Local Dependencies

Global dependencies have the following properties:

· They are independent of any object.

· They are identified by a name that you assign, and are maintained and managed centrally.

· If you change a global dependency, the change affects all the objects where the dependency is used

Local dependencies have the following properties:

· They are only available to the object for which you create them

· You cannot use the central maintenance functions on these dependencies, and you cannot allocate them to other objects

· They are identified by a number assigned by the system, not an external name

Local dependencies are only used where certain dependency will not be needed elsewhere

The differences between global and local dependencies are as follows:

· Global dependencies are created centrally and can be assigned to several objects.

· Local dependencies are created for one object and can only be used with this object

4.5.2 Declarative and Procedural Dependency

· In Declarative dependencies the result are explained logically

· Declarative dependencies are easier to trace than procedural dependencies, because the point in time when the dependency is processed and the sequence in which the dependencies are processed are not relevant.

· Example for Declarative dependency:



Preconditions (provided that they contain no non-declarative expressions)

Selection conditions (provided that they contain no non-declarative expressions)

· In Procedural Dependency result depends on the processing sequence and the point in time when the dependency is processed.


Preconditions (only if they contain non-declarative expressions)

Selection conditions (only if they contain non-declarative expressions)

4.5.3 Dependencies Types

The SAP System supports the following types of dependencies:

· Preconditions

· Selection conditions

· Procedures

· Actions (obsolete)

· Constraints

4.5.4 Preconditions 

Preconditions can be allocated to the following objects:

· A characteristic that you want to hide

· A characteristic value that you want to hide

Preconditions are used to hide characteristics and characteristic values that are not allowed and thereby ensure that the configuration of an object is consistent. In the precondition, it is also possible define the circumstances under which a characteristic or value is hidden.

A precondition is fulfilled if the condition you enter is either true or not violated.

4.5.5 Selection Conditions 

Selection conditions used to ensure that all the objects relevant to a variant are selected:

· Selection conditions determine which variants require a specific component or operation

· Selection conditions determine when it is mandatory to assign a value to a characteristic

Selection conditions may allocate to the following objects:

· Characteristics

· BOM items

· Operations in task lists

· Sub-operations

· Sequences of operations

· Production resources/tools (PRTs)

A selection condition is fulfilled if the condition in it is unambiguously true.

4.5.6 Procedure

Procedures can be assigned to the following objects:

· The characteristic value that triggers the procedure

· The characteristic that triggers the procedure

· The configuration profile of the configurable object

Procedure is used for following purposes.

· A procedure is used to infer a value for a characteristic, you enter the variable $SELF before the characteristic.

· Procedures can overwrite values that are set by other procedures.

· Procedures are always used for pricing (see Variant Conditions).

Processing Sequences of Procedure

If an object has more than one procedure, a processing sequence is used to define the point when the procedure is processed.

4.5.7 Action

Actions are used to infer characteristic values. An action is processed as soon as the characteristic to which it is assigned has a value. It is not possible to overwrite the characteristic values that are set by an action.

The following Objects can assign to action:

· The characteristic value that triggers the action

· The characteristic that triggers the action

· The configuration profile of the configurable object

· Configuration profile

· BOM items ? to change the quantity

· Operations in task lists ? to change the standard values

Since Action is lead to serious system performance problems, it is replaced by Procedure and Constraint.

4.5.8 Constraint

This dependency type is mainly for intensively interactive configuration tasks and for configuration tasks in which you need to take into account the dependencies between the characteristics of several objects. The main purpose of a constraint is to monitor the consistency of a configuration.

Constraints have the following distinguishing features:

· Constraints are used to describe the dependencies between completely different objects and their characteristics.

· Constraints are used to store information on which conditions must be fulfilled if the configuration is to be consistent.

· Constraints are not directly allocated to individual objects. They are grouped together to form dependency nets and allocated to a configurable material in the configuration profile.

· In constraints, you enter objects in their general form of expression, without using $SELF, $ROOT, or $PARENT to identify objects. As a rule, you refer to objects in constraints by entering the class to which the objects are allocated.

· Constraints are declarative dependencies. The processing sequence of constraints and the point in time when constraints are processed is not relevant.

· Constraints are not processed in a specific order. You cannot determine when a specific constraint is used.

In any processing situation, a constraint is only processed once. If a value that is relevant to the constraint is changed, the constraint is triggered again. Structure of Constraints

There are four sections in a constraint. Each part is identified by a keyword. A colon follows the keyword. Each section ends with a period.


In this section, you enter the objects that are relevant to the constraint. You must enter the relevant objects in all constraints. You can also define variables for objects or characteristics.


The condition entered here must be fulfilled in order for the constraint to be used. You do not need to enter a condition in a constraint. You can leave out the keyword CONDITION: if required. However, if you enter the keyword you must enter a condition.


In this section, you enter the relation that must exist between the objects and characteristics if the configuration is to be consistent. You must enter a restriction in a constraint.


In this section, you enter the characteristics for which characteristic values are to be inferred. The main purpose of constraints is to check the consistency of a configuration. Usually, values are only inferred if you make an entry in this section.

For reasons of performance, only use constraints to infer values if it is really necessary. Constraints are grouped together to form dependency nets. The dependency net is allocated to a configurable material in the configuration profile.

4.5.9 Dependency Net:

Constraints are grouped together in dependency nets. For this reason, the variant configuration menu does not support a function for creating constraints directly. So that only constraints are defined within a dependency net.

5 Configuration Profile

The configuration profile for a material controls the configuration process in sales order. Configurable profile also used to define central settings for configuring the object. Using this profile it is possible to hide some of the characteristic value defined during characteristic creation. We can assign any number profile for a configurable material in which selection is based on either priority or manual selection during configuration.

By defining a filter in the configuration profile, possible to determine the scope of the BOM items to improve system performance when exploding the BOM. The filter is active in high-level configuration, in result-oriented BOMs, and in SET processing.

5.1 Filters in Configurable Profile

Following objects can be used as filter:

· Object type

Class, material, document, text

In the standard system, all object types are selected and therefore exploded in the configuration. Deselect the object types that you do not want to be displayed.

· Item category, for example, stock or non-stock item

All item categories in the configuration are exploded in the standard system. Remove the selection for the item categories you do not want to be displayed.

· Item status

You maintain the status of a BOM item in maintain BOM dependent on its usage.

All items are displayed regardless of their item status in the standard system. However, only the items with this status are displayed when you select specific item statuses. Items are not displayed that do not have the selected status.

· Sort string

You can assign sort strings for BOM items in maintain BOM. You can restrict the display of the BOM items by using these sort strings.

Only items that carry sort strings are checked and only those that match are displayed. Items that have no sort string are always displayed.

5.2 Component availability in the configuration profile

The availability check is just a snapshot, telling that whether the materials required are in stock at this moment. Several users can access the same material at once. This means that supply problems can sometimes be overlooked.

Example: Only 2 pieces of a material are in stock, but the material is used in 3 BOMs. The availability check does not detect a supply problem. The availability check for all 3 BOMs shows 2 pieces in stock.

5.3 Process Overview

There are different processes for configurable materials in sales documents. These processes can be defined on the Configuration initial screen tab in the configuration profile, by choosing the Configuration parameter tab.

The Process are described in the following scenarios:

Planned/Production orders

This processing type is used to describe variant products whose configurable materials are assembled using planned and production orders. The bill of material (BOM) can have single-level, multi-level, or no explosion.

Sales Order (SET)

This processing type is used to describe variant products that comprise salable configurable materials. These products are supplied together, but are not assembled in a production order. Only sales-relevant BOM items are exploded in the sales order.

Order BOM.

You use this processing type if you want to make customer-specific changes to the BOM of a material that you configure in the sales order. In the sales order, you assign values to the characteristics of the header material, but the BOM is not exploded in the sales order.

6 Material Variant and Planning Material

6.1 Material Variant

· Material Variant is an material that can arises from individual Configuration of a configurable product and can be kept in stock

· For variants that are required frequently, we can create material variants, which can be produced without a sales order and kept in stock. When a sales order is received, it is possible to check whether the variant required is in stock, so that it can deliver immediately.

· For material variants, a separate material master record is created with a material type that is kept in stock.

· Separate BOM and routing for a material variant, or you can link the material variant to the BOM and routing of the configurable material. The correct BOM items and operations are determined from the characteristic values assigned to the variant.

6.2 Planning Material

· Planning Material is a material, which contains all the non-variant parts.

· By using planning material all non-variants are procured / produced before sales order.

· It is also possible for Planing the Planning Materials without reference to any sales requirement.

· Planning material is planned separately using strategy 65 and produced before sales order creation.

7 Planing in VC

The following strategies are used for planning configurable materials and its variant parts.

Make to Order production of Variants

? Make to Order for Material Variant. – 26

? Planning Variants without final Assembly- 55

? Planning Variants with planning Material – 65

? Make to order with configurable material.- 25

? Characteristic Planning with dependent requirement – 56 and

? Assembly Processing with Characteristic Planning – 89

8 Variant Configuration: (Object Diagram)

9 Variant Pricing and Surcharges

9.1 Sales BOM

A bill of material (BOM) describes the different components that together create a product. A BOM for a bicycle, for example, consists of all the parts that make up the bicycle: the frame, the saddle, wheels, and so on.

When you enter the material number of a bill of materials that is relevant for sales order processing, the system displays the material that describes the whole bill of materials as a main item. The individual components are displayed as lower-level items.

There are two ways to process a bill of materials in Sales. Once you have entered a bill of material in a sales order, the system runs pricing, inventory control, and delivery processing at: Main item level if the material is assembled, or – Component level if the material is not assembled.

9.2 Processing at Main Item Level (ERLA)

If you want the system to carry out pricing, inventory control, and delivery processing at main item level, enter ERLA in the Item category group field of the Sales: sales org. 2 screen in the material master record of the finished product. This means that the components only function as text items and are not relevant for delivery.

9.3 Processing at Component Level (LUMF)

If you want the system to carry out pricing, inventory control, and delivery processing at the component level, enter LUMF in the Item category group field of the Sales: sales org. 2 screen in the material master record of the finished product. In this case, only the components are relevant for delivery. During processing the system automatically creates a delivery group. The latest delivery date among all the components becomes the delivery date for the entire delivery group.

10 Configuration of VC

10.1 Production Planning and Control

10.1.1 Creating Material


The purpose of this activity is to create the material masters for the materials required in this scenario.


Access the activity using one of the following navigation options:

SAP Menu Logistics ® Materials Management ® Material Master ® Material ® Create (General) ® Immediately

Transaction Code MM01

In Material Master of KMAT material following settings are maintained:

· Configurable material indicator in Basic Data must set.

· MRP type is PD.

· Lot size ? EX ( Lot for lot size)

· Availability check ? 02

· Planning Strategy 25 is entered in MRP 3 screen view.

· Item category group 0002 or 0004 is to be given in sales view.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s