You are on page 1of 71

SAP 2010 / 0 / 0 AG 2010

Lessons for Streamlining Information Between Sales and Engineering Using Variant Configuration Functionality
Jan De Ridder Accenture
2010 Wellesley Information Services. All rights reserved.

In This Session ...


Explain the concepts of variant configuration See how variant configuration can help to minimize master data maintenance Explain in detail how variant configuration is set up Show what dependencies, variant tables, super BOMs, etc. are and how they are created Explain how variant configuration is integrated in the modules SD, MM, PP, QM, PS, and PM Talk about roles and responsibilities in an organization to maintain and operate variant configuration Give some tips and tricks for your variant configuration implementation

What Well Cover


Introduction Setting up variant configuration in SAP Integrating variant configuration with SD, MM, PP, PS and PM Exploring roles and responsibilities related to variant configuration Sharing tips, tricks, and pitfalls Wrap-up

Introduction

In general, there are two types of businesses:


Pricelist business

Menu business

Fixed list of products No customization possible Mainly Make-to-Stock (MTS)

Set of products with many variants Customer customizes the product Mainly Make-to-Order (MTO)

Examples:

Examples:

Food industry Chemical industry Household products Electrical equipment

Cars Elevators Aircraft All types of engineering

Variant configuration will streamline the processes of a menu business by allowing mass customization in SAP
4

Why Use Variant Configuration?

Imagine a car manufacturer running SAP A new model is introduced: Y-series The entire supply chain is run by SAP; from order entry to delivery in the garage In the entire supply chain, each car must specified correctly, especially for production! Each car can be customized by the customer:
Engine Color - silver metallic - black - black metallic - white - red - red metallic Interior - black - grey - leather black - leather white - leather red - GPS - aluminum wheels - Bluetooth - parking sensor - night vision Options

- 1.4 diesel - 2.0 diesel - 1.2 petrol - 1.6 petrol - 2.2 petrol

5 options

6 options

5 options

5 options = 750 combinations 5

Why Use Variant Configuration? (cont.)

For this simple example (a real car has many more combinations) you must create 750 materials! With variant configuration, you create one material: Y-model with the following characteristics: Engine Color Interior Options The order entry clerk checks the valid option for each characteristic This data is used to determine the BOM and the routing so that production knows what and how to make it
6

Two Phases of Variant Configuration Process

A variant configuration process has two phases:


During order entry the specifications are entered During production the specifications are translated in the production process

Modeling

Execution

Modules VC components

- Characteristics & classes - Material - Configuration profile - Dependencies - Variant table - Variant function - SD (Sales & Distribution) - MM (Materials Management)

-Super BOM -Super routing

- PP (Planning & Production) - PM (Plant Maintenance) - PS (Project System) - QM (Quality Management)


7

This is an overview with the main use, some objects are used in both modeling and execution

What Well Cover


Introduction Setting up variant configuration in SAP Integrating variant configuration with SD, MM, PP, PS and PM Exploring roles and responsibilities related to variant configuration Sharing tips, tricks, and pitfalls Wrap-up

Setting Up Variant Configuration in SAP

To set up variant configuration in SAP, you must set up the following: Characteristics and classes Material Configuration profile Dependencies Super BOM Super routing Variant table Variant function

Characteristics

To model our product we use characteristics


Descriptions in other languages

Transaction CT04:
Name of characteristic Description in log-on language Possible to group by function Status should be Released

2 formats mainly used: - Character (text) - Numeric Additional parameters depend on the format (UOM, decimals, )

10

Characteristics (cont.)

In tab Values you can predefine possible values. The user will see them as a drop-down list.
Additional value checks are available: - Check table: database table - Function module - Catalog char.: selected set (QM)

With this flag, the user can add additional values during order entry

1 value can be flagged as Default

11

Characteristics (cont.)
By filling the table and field name, a reference characteristic is created. This can be used in modeling and dependencies.

Additional settings: - Not Ready for Input value is gray - No Display char is hidden - Display Allowed Values

12

Reference Characteristics Can Work in Two Directions

Read data from sales order VBAK Header data VBAP Item data MAEPV Material master fields MAAPV Material master fields VBKD Sales document: commercial data VBPA_AG/WE/RE/RG Partner function Change data in sales order VCSD_UPDATE weight, volume, item quantity, etc. Change data in purchase order Possible only in DIMP/IS-MILL

13

Reference Characteristics Can Work in Two Directions (cont.)

Change data in other applications STPO BOM PLPO Routing To change the database fields we use an object dependency

14

Classes

For variant configuration we need a class with type 300

Transaction CL02
Description Status should be Released Possible to group by function

Add all characteristics needed in the variant configuration

In the class you can overwrite the characteristics properties and add dependencies

15

Material

You need at least one material which will be used for order processing, stock-keeping, inbound and outbound logistics, etc. If your company is selling different types of products (e.g., models of cars) you should set up different configurable materials This has advantages in stock-keeping and reporting Define that a material is configurable in the material type Use the standard material type KMAT or flag Material is configurable in your Z-material type

16

Material (cont.)

Create the material (transaction MM01) with the configurable material type (i.e., KMAT) In the tab Classification assign the type 300 class It is possible to assign values To predefine a value (use: material variant) To define an allowed range (use: specs) This value can not be changed or outranged in configuration!

17

Material (cont.)

Basic Data 2 view: Material is configurable is flagged automatically For material variants the configurable material must be entered here

18

Configuration Profile

To use materials in Variant Configuration (VC), a configuration profile is mandatory Transaction CU41 Enter the name and class type (300) Several profiles can be created: With manual data entry: the user must select from drop down IDOC/ALE: SAP takes highest priority An interface design can be assigned to several materials If this is assigned, the VC class can be split up in different tabs or pushbuttons

Further settings for the variant configuration (VC) interface are available

19

Configuration Profile (cont.)

Options: - Plnd/Prod. Order: no BOM explosion - Sales order: BOM items are shown in order as sub-items - Order BOM: BOM can be composed manually in sales order

Important settings for the BOM explosion in the sales order


You can select whether the BOM explosion is singleor multilevel in the sales order

If you work with BOM alternatives, this key determines how the selection of the alternative is done

This feature activates an availability check for the BOM components in the sales order! The sales clerk has immediate feedback if all components are in stock or not.

20

Dependencies

Dependencies are, in many cases, the engine of variant configuration With dependencies you can do the following: Make selections (e.g., for BOM items) Change values of database tables Make calculations Set defaults Read tables

21

Types of Available Dependencies


Precondition Selection condition Action Procedure Constraint Rule

22

Precondition

Used to hide characteristics and characteristic values based on different kinds of criteria. Example: A car model has three lines: Basic Comfort Luxury In the Basic line, the option leather is not available With variant configuration we create a dependency for the characteristic leather

This dependency is assigned to the characteristic Leather. This assignment is done via the class 300. The status must be released

This dependency will show the characteristic only if the line is comfort or luxury

23

Selection Condition

Used to select characteristics, BOM items, or routing operations. Example: For a car model you can select the option GPS In the BOM of the production order, the component GPS must be selected With variant configuration, we create a dependency to select the component GPS

This dependency is assigned to the BOM item We define that the characteristic OPTION_GPS of the parent material (header material of the BOM Car) must have value Yes. If this is true, the item GPS will be part of the component list in the production order. Identify objects (characteristics) as follows: - $SELF own level - $PARENT header material - $ROOT root material when using multilevel BOM

24

Procedure

Used to change values such as characteristics, BOM item quantity, routing operation time, database table field. Example: A company sells bottled paint, which is sold in volume units The dimensions are entered in variant configuration and the volume is calculated with a procedure

This procedure can be assigned to: - The class 300 - The configuration profile A procedure can also be assigned to a characteristic. It will be executed only if that characteristic is changed. Do not assign the procedure to the characteristic which is changed by the procedure. It will never be triggered!

Action is an old dependency type and should not be used. A procedure can almost always replace an action and has more features.

25

Notes on Syntax for Dependencies


Use a comma (,) to separate the code lines Always use an object variable before conditions ($SELF, $PARENT, $ROOT) If statements are put behind the code that must be executed You can use AND, OR, and NOT statements Texts can be concatenated with || Check if a characteristic has a value: use function SPECIFIED Calculations can be made with +, -, * and / Mathematical functions (sin, cos, ln, log10, abs, exp, etc.) are available Dont work with characteristics without values; dependencies will not work!
26

Super BOM

Using super BOMs shows the true added value of variant configuration. The idea is simple: The super BOM contains all components that could be used to assemble the product By entering the characteristics values in VC: The system will select the relevant components for the order The BOM item quantity can be manipulated Examples: For a car, you can make a super BOM with all the possible engine types, options, tires, etc. included The super BOM of a sandwich will contain white bread, whole wheat bread, cheese, bacon, mozzarella, honey sauce, mustard sauce, etc.
27

Super BOM (cont.)

Two frequently used methods for selecting the BOM items: Selection condition: Assign the dependency to the BOM items
The dependency is assigned to the BOM Item

The BOM item will be part of the component list only if the selection condition is fulfilled Component classification

28

Component Classification

Classify the component with specifications. If they match the variant configuration classification, the item will be selected.

In the BOM item, the flag as selection condition is flagged, and the class type is 001

Additional class is created (type 001) with the dimensions characteristics of the VC. The dimensions of the packing materials are maintained via MM02.

The selection is based on the variant configuration of the BOM header material.

29

Super BOM Change Item Quantities

Next to selection of components you can also manipulate the item quantity of a BOM This is done with a procedure (dependency) which alters the value of a reference characteristic

You can give any name to the characteristic Make reference to table STPO field MENGE. The description and other properties of the characteristic will be set automatically.

Create a procedure to edit the item quantity. Any formula or calculation can be used. The procedure must be assigned to the BOM item. The reference characteristic can be used for all items; you need to create it only once.

30

Phantom BOMs

If you have several configurable materials with the same type of packaging or sub-assemblies, you can use phantom BOMs

For phantom materials, the special procurement key must be 50 The phantom indicator is automatically flagged in the BOM item

The phantom item in a BOM (also called phantom assembly) has its own BOM with real materials as components. At the time of explosion (i.e., in production order or purchase order) the phantom BOM is exploded but the phantom material will not be part of the component list. You can use phantom assemblies for groups of components which are part of many different BOMs. This allows central maintenance without having a dummy material in the component lists at the time of explosion. 31

Phantom BOMs (cont.)


The phantom material must also have a configuration profile A procedure (assigned to the configuration profile) will copy the VC values from the header material to the phantom material. Needed for the packing component selection.

The BOM of the phantom material

32

Super Routing

A super routing is similar to a super BOM You create a routing with all possible operations, which are selected via a selection condition Example: PC production with the following operations in the routing (transactions CA01/02/03):

The power supply can be 220V or 110V. It is defined by a characteristic POWER and determines whether operation 0040 or 0050 must be performed.

33

Super Routing (cont.)

Assign the following selection condition dependency:

Do the same for the operation 0050 for 110V power supply
34

Super Routing (cont.)

In addition to selecting operations, you can also manipulate the standard values of operations Create a new reference characteristic with reference to the routing operation table PLPO and field machine time (VGW02 in our example):

Assign the following procedure (dependency) to the operation:

35

Variant Table

A variant table allows you to store data and offers flexible use of the data in various dependencies Two frequent usages of variant tables: In constraints, to store allowed combinations of characteristic values For defaults, e.g., store defaults for a certain customer You can create any table with any key and any characteristics

36

Variant Table (cont.)

Create a variant table with transaction CU61:

You can give any name to the table The status must be released

On the characteristics view you can add the characteristics which will be the columns of your table With this flag, a characteristic is defined as a key on which you can make selections in dependencies. There can be multiple keys in a table.

37

Three Ways to Maintain Variant Tables


1.

Transaction CU60

2. 3.

This is a good method to maintain small variant tables; for big tables the transaction is cumbersome Transaction CU60e: upload from Microsoft Excel file Link the variant table to a database table This gives better performance for big tables Via SM30 or maintenance view, this is more user-friendly

38

Example of Procedure to Read the Data from the Table


Assign this procedure to the configuration profile For key fields, dont put $SELF For non-key fields, put $SELF at right side of the comparison

This puts the values for engine and color in the variant configuration, but the customer can not change these values! Use intermediate characteristics and function default to use the table values as defaults:

Add 2 command lines to set the defaults

39

Variant Function

Via a variant function you can use a standard or custom-made function module in variant configuration without using user exits This can be used for complex calculations or to change database tables A variant function is created with transaction CU65

Create a function module where you can call other function modules. You need an access key for this activity.

40

Variant Function (cont.)


On the Characteristic tab, you can add characteristics as input and output parameters of the function.

How to use a variant function in a procedure:

The syntax is almost identical to the variant table syntax. Note that for the input parameter $SELF is not added in the right side of the comparison.

41

What Well Cover


Introduction Setting up variant configuration in SAP Integrating variant configuration with SD, MM, PP, PS and PM Exploring roles and responsibilities related to variant configuration Sharing tips, tricks, and pitfalls Wrap-up

42

Integration with SD

To have variant configuration in the sales document (quotation, contract, order) three conditions must be fulfilled: 1. In the item category, the field Configuration Strategy must be filled: TAC is a standard item category for
variant configuration If this field is on 01, the order item is ready for VC Controls the variant matching process

Controls the BOM explosion. This can be further specified by material in the configuration profile.

43

Integration with SD (cont.)


Basic Data 1 view of the material master When using the standard order types and item categories, the material master must have GenItemCatGroup 0002. With this key, the VC item categories are determined.
SPRO > SD > Sales > Sales Documents > Sales Document Item > Assign Item Categories

2.

The material master must have the flag Material is configurable (defined in the material type, e.g., KMAT)
You find this flag on Basic Data 2

3.

The material must have a configuration profile Now we can use variant configuration in the sales documents
44

Integration with SD (cont.)

In the overview screen of the order, click the Configuration button to see the variant configuration

45

Variant Matching

Variant matching suits mixed MTO/MTS scenarios For a configurable material, you can make variants for which the configuration is already maintained in the material master When creating a sales order, SAP checks whether a material variant exists with exactly the same parameters as those entered in the variant configuration Depending on the settings (item category and configuration profile), SAP will replace the configurable material by the material variant automatically or after confirmation by the user An ATP check on the material variant can be executed so the user can see whether there is stock or not

46

Pricing

You can integrate pricing in the variant configuration Certain conditions will be calculated via dependencies, and these conditions can be used in the item pricing scheme The following conditions are available in standard SAP: VA00 Variant Price Quantity VA01 Variant Price Percentage VASE Variant Price Quantity monthly price

47

Pricing (cont.)

These conditions can be used as follows: Create a reference characteristic for structure SDCOM, field VKOND (CT04)

Create a procedure to set values (CU01)

48

Pricing (cont.)
Assign procedure to configuration profile (CU42)

Create a condition variant (VK11)


You can create condition records for VA00, VA01 or VASE

49

Pricing (cont.)
Add the condition type to the pricing scheme (SPRO)

Now the variant pricing is active in the sales order (VA01)


Variant configuration screen

Item pricing tab

50

Integration with MM

To activate variant configuration in MM, no customizing is required There are less possibilities to customize the flow The material must be configured properly and the material must have a configuration profile When maintaining VC in a contract, it is copied automatically to the PO that refers to the contract; it can still be overwritten Pricing Variant conditions can be used in pricing, similar to SD The difference is that the reference characteristic should be made to table MMCOM instead of SDCOM Subcontracting BOM As in SD and PP, you can manipulate the BOM explosion with variant configuration The BOM can be set up as universal or production
51

Integration with PP

Together with SD, PP is the most obvious module where you would use variant configuration In a typical MTO flow, the configuration is entered in SD (sales order) and the configuration is used in the production order to control the BOM explosion and routing implementation No configuration is needed in PP to activate variant configuration it is controlled by the master data (material, configuration profile, BOM, routing, dependencies, etc.)
The user can display the variant configuration in the production order. The VC is entered in the MTO sales order.

52

Integration with QM: Inspection by Configuration

The values entered in variant configuration are transferred as specifications to the inspection lot This can be used for sales MTO and for purchasing; this allows full integration between SD-PP-QM and MM-QM This is available for the following inspection lot origins: 01 Goods Receipt for Purchase Order 03 Inspection during production 04 Goods receipt from production

53

Integration with QM: Inspection by Configuration (cont.)

Prerequisites The Master Inspection Characteristics (used in QM) must be linked to the class characteristics (used in variant configuration and on the batch) In the material master (QM inspection setup view), the flag Insp. by configuratn should be flagged

54

Integration with PM

The setup of variant configuration in PM is very similar to PP You can also create a super BOM and use dependencies A super routing is replaced by a super task list You can create a super maintenance plan with operations for all types of equipment Depending of the specific equipment in a maintenance order, certain operations will be selected The configuration profile must be created for the task list instead of material (transaction CU41)

55

Integration with PS

The use of VC in PS is similar to the MTO flow in SD and PP Variant configuration will be used in an assemble-to-order environment You can use a material or standard network to be configured (selected when creating the configuration profile, transaction CU41) In the business flow, you will create a sales order followed by a network (in PP this is a production order)

56

What Well Cover


Introduction Setting up variant configuration in SAP Integrating variant configuration with SD, MM, PP, PS and PM Exploring roles and responsibilities related to variant configuration Sharing tips, tricks, and pitfalls Wrap-up

57

Effects of a Variant Configuration Implementation on the Organization


The master data volumes are smaller (less materials) The complexity of the master data increases More steps to create a material (i.e., configuration profile) Complex setup of the variant configuration engine (dependencies, integration with QM, etc.) The complexity of the system increases Users need to have a good understanding of the VC setup The key to VC is integration, so the users need to have a basic knowledge of the processes in the other modules The project team should be creative When implementing VC many processes can be changed/improved; often beyond the project scope So take the time to take a step back and have a look at the big picture during design and implementation

58

Two Maintenance Roles

Day-to-day master data maintenance Creation/change materials, BOMs, routings, etc. Should have a very good training and understanding of VC: they must assign the dependencies and should understand the big lines of the VC engine Try to implement workflow procedures: request, approval, maintain object 1, maintain object 2, final approval, release. This can be in SAP, Excel, SharePoint, etc. Application support team Maintain the VC engine: add new characteristics, update dependencies, implement new concepts, etc. This setup is all master data in SAP (no SPRO) but should be considered as configuration from an organizational point of view
59

What Well Cover


Introduction Setting up variant configuration in SAP Integrating variant configuration with SD, MM, PP, PS and PM Exploring roles and responsibilities related to variant configuration Sharing tips, tricks, and pitfalls Wrap-up

60

Creative Use of Variant Configuration


The use of variant configuration should not be limited to the text book examples like cars, and bicycles It can be used as a data carrier in any integrated process flow where not each order can be seen as standard Example: Variant configuration can be an alternative for active ingredients management in SAP Values of the active ingredients can be entered directly in VC or calculated based on the product properties These values can be used to determine the presence and quantity of the BOM components This allows active ingredient on order/batch level, especially when Discrete Industries and Mill Products (DIMP) is installed (copy characteristic values to batch at GR)
61

DIMP/IS-MILL

If your system depends highly on classification and variant configuration, you can install this SAP industry solution DIMP/IS-MILL offers a series of standard add-ons. Examples: Variant configuration values from PO are copied automatically to the batch characteristics at Goods Receipt (PO or production order) It is possible to use reference characteristics in MM (normally only in SD) Sales order versioning is possible (including configuration) Classifying info records (customer-material and purchasing) Fast entry of characteristics in sales order (up to 10) in addition to the characteristic value assignment screen

62

Simulation, Reporting, and Technical Consultants

Simulation Make use of the simulation transaction CU50 This allows you to model the product without creating an order This is ideal when you set up the system Reporting Foresee a specific budget to build some Z-reports None or few reports on the configuration No integration of characteristics in the standard reports such as VA05, COOIS Developer/technical consultant At any VC implementation there should be a technical person around; there are some SAP Notes that must be implemented
63

Some Interesting SAP Notes

900734: When copying sales documents, the configuration can not be changed in the subsequent document. This can occur when you work with serial numbers, sales order stock. 73021: Interval not permitted as characteristic. This is an issue when you want to integrate with QM: the VC values should be a range in QM to do the valuation. Solution is to implement SAP Note 119708, which allows you to work with 2 characteristics in VC: MIN and MAX. In QM they will be merged into one characteristic as a range. 158459: Variant table does not allow characteristic value blank. Dependencies will not work when the table contains a blank characteristic value. You may discover more during your own project
64

What Well Cover


Introduction Setting up variant configuration in SAP Integrating variant configuration with SD, MM, PP, PS and PM Exploring roles and responsibilities related to variant configuration Sharing tips, tricks, and pitfalls Wrap-up

65

Resources

SAP Best Practices: Make-to-Order Production with Variant Configuration http://help.sap.com/bp_bl604/BBLibrary/HTML/147_EN_DE.HTM SAP courses PLM140 & PLM143 www.sap.com/services/education/index.epx Variant Configuration (LO-VC) http://help.sap.com/saphelp_erp60_sp/helpdata/en/92/58d45541 7011d189ec0000e81ddfac/frameset.htm Configuration Workgroup www.configuration-workgroup.com

66

Resources (cont.)

SAP Variant Configuration Technology blog http://sapvariantconfiguration.blogspot.com Uwe Blumhr, Manfred Mnch, Marin Ukalovic, Variant Configuration with SAP (SAP Press, 2009). A full list of IS-MILLS/DIMP functionalities http://help.sap.com/saphelp_dimp50/helpdata/EN/4e/1796374b0 88e5ce10000009b38f8cf/frameset.htm

67

7 Key Points to Take Home


Variant configuration is feature rich; we discussed the basics, but there is much more to discover! Take advantage of the documentation available on variant configuration Have a good technical person involved in variant configuration to help you with your implementation Foresee some additional budget to supplement standard reporting with custom reports Variant configuration is designed mainly for MTO processes, but variant matching brings MTS into scope Variant configuration helps you reduce the amount of master data, but the complexity may increase Be creative and make your own flow. You can go much further than our text book example of producing cars!
68

Your Turn!

How to contact me: Jan De Ridder jan.de.ridder@accenture.com


69

Disclaimer
SAP, R/3, mySAP, mySAP.com, SAP NetWeaver, Duet, PartnerEdge, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. Wellesley Information Services is neither owned nor controlled by SAP.

70

You might also like