PLM146 - Variant Configuration - Scenarios & Enhancements
January 11, 2017 | Author: syedhashmatullah | Category: N/A
Short Description
Download PLM146 - Variant Configuration - Scenarios & Enhancements...
Description
PLM146 Variant Configuration 3 - Scenarios & Enhancements
PLM146
Variant Configuration – Scenarios & Enhancements
THE BEST-RUN BUSINESSES RUN SAP SAP AG 2006 © SAP AG©2006
SAP R/3 Enterprise 2006/Q2 Material number 50078818
Copyright
Copyright 2005 SAP AG. All rights reserved. Neither this publication nor any part of it may be copied or reproduced in any form or by any means without the prior written consent of SAP AG. The information contained in this publication is subject to change without prior notice.
© SAP AG 2003
Trademarks Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Microsoft, Windows, Outlook and PowerPoint are registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, and Informix are trademarks or registered trademarks of IBM Corp. in the USA and/or other countries. ORACLE is a registered trademark of ORACLE Corporation. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc. HTML, XML, XHTML, and W3C are trademarks or registered trademarks of W3C®, World Wide Web Consortium, Massachusetts Institute of Technology. JAVA is a registered trademark of Sun Microsystems, Inc. JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. MaxDB is a trademark of MySQL AB, Sweden.
SAP, R/3, mySAP.com, xApps, xApp 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 other countries worldwide. All other product and service names mentioned are the trademarks of their respective owners. Data contained in this document serves informational purposes only. National product specifications may vary. The information contained in this publication is subject to change without prior notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty.
Course Prerequisites
Required: PLM140 Variant Configuration 1 - Modeling Or thorough knowledge of the relevant functions (in R/3 4.5 or higher) (Overview course PLM100)
Recommended: PLM143 Variant Configuration 2 - Integration PLM130 Classification SCM600 Processes in Sales and Distribution SCM200 Supply Chain Planning Overview SCM300 Supply Chain Manufacturing Overview © SAP AG 2003
Target Audience
Course participants Variant modelers for: SAP ERP - Configurator (SAP IPC - Sales Configuration Engine) Project team DP organizers • Duration: 3 days
© SAP AG 2006
Notes to the user The training materials are not teach-yourself programs. They complement the course instructor's explanations. On the sheets, there is space for you to write down additional information.
Course Overview
Contents: Course Goals Course Objectives Course Content Course Overview Diagram Main Business Scenario
© SAP AG 2002
© SAP AG
PLM146
1-6
Course Goals
This course will prepare you to: Model multi-variant products by building on your existing knowledge of variant configuration and examining its functions and handling in detail
© SAP AG 2002
© SAP AG
PLM146
1-7
Course Objectives
At the conclusion of this course, you will be familiar with and be able to use: Advanced settings of the configuration profile and interface design Specialized aspects of object dependencies (specifically constraints) Special features of the different scenarios Knowledge-based and result-oriented order BOMs Multilevel configuration structures Low-level and high-level configuration Additional tools (BAPI, ALE, user exits, and the analysis tool) The different ways of storing variant configuration data Hints on system performance © SAP AG 2002
© SAP AG
PLM146
1-8
Course Content
Preface Unit 1
Course Overview
Unit 2
Variant Configuration: Consolidation
Unit 3
Control Options in the Configuration Profile
Unit 4
Configuration Scenario Without BOM Explosion
Unit 5
More About Constraints
Unit 6
More About Object Dependencies
...
© SAP AG 2002
© SAP AG
PLM146
1-9
Course Content
Unit 7
Configuration Scenarios with BOM Explosion
Unit 8
Configuration Scenarios with Order BOMs
Unit 9
Other Variant Configuration Tools
Unit 10
Conclusion Appendix Data for Exercises Structure of Examples in Exercises Frequently Used Menu Paths Ideas for Modeling
© SAP AG 2002
© SAP AG
PLM146
1-10
Course Overview Diagram
Course Overview
1
More About Object Dependencies
6
Variant Configuration: Consolidation
2
Configuration Scenarios with BOM Explosion
7
Control Options in the Configuration Profile
3
Configuration Scenarios with Order BOMs
8
Configuration Scenarios Without BOM Explosion
4
Other Variant Configuration Tools
9
More About Constraints
5
Conclusion
10
© SAP AG 2002
© SAP AG
PLM146
1-11
Main Business Scenario
You are a manufacturer of multi-variant products. To map your multi-variant products, you want to use the variant configuration functions in SAP R/3. Your design process requires detailed knowledge of the functions and handling of variant configuration that are relevant to modeling.
© SAP AG 2002
© SAP AG
PLM146
1-12
Variant Configuration: Consolidation
Contents: Procedure for variant configuration modeling Classification system tools Material master, bills of material, and task lists Configuration profile Dependencies Pricing Material variants Customizing
© SAP AG 2002
© SAP AG
PLM146
2-13
Variant Configuration: Consolidation: Unit Objectives
At the conclusion of this unit, you will be able to: With the help of an overview of the basics of variant configuration as covered by course PLM140: Use all the functions taught in PLM140 See where the new topics covered by course PLM146 fit into the modeling process as a whole
© SAP AG 2003
© SAP AG
PLM146
2-14
Variant Configuration: Consolidation: Course Overview Diagram
Course Overview
1
More About Object Dependencies
6
Variant Configuration: Consolidation
2
Configuration Scenarios with BOM Explosion
7
Control Options in the Configuration Profile
3
Configuration Scenarios with Order BOMs
8
Configuration Scenarios Without BOM Explosion
4
Other Variant Configuration Tools
9
More About Constraints
5
Conclusion
10
© SAP AG 2002
© SAP AG
PLM146
2-15
Variant Configuration: Consolidation: Business Scenario
You are designing the solution to a modeling task. A major concern is to keep an overview of the integrated objects.
© SAP AG 2002
© SAP AG
PLM146
2-16
Modeling Variant Configuration Dependencies Characteristics haracteristics Material variant
Preconditions
Pricing
Classes
Constraints
Procedure (action)
Material master record
Configuration profile
BOM
Routing
Selection conditions
© SAP AG 2006
There are a number of individual steps to setting up a knowledge base for a configurable material. First, you need the characteristics that describe the material. You assign the characteristics to a variant class. You maintain dependencies for the characteristics and characteristic values, to ensure that only allowed values can be selected. You maintain settings for the configurable material in the material master. You create a configuration profile to define the configuration parameters. The material master record must be assigned to the variant class. You define the components for manufacturing a configurable material in a super BOM and the operations for manufacturing a configurable material in a super task list. You assign object dependencies to the operations and components that are only required for specific variants. Before you can configure a material for production, we advise you to simulate configuration, to check whether all the data is maintained correctly.
© SAP AG
PLM146
2-17
Screens for Maintaining Characteristics
Basic Data
Description, format, and control data
Descriptions
Multilingual headings and descriptions
Values
List of allowed characteristic values
Addnl Data
Reference characteristics, document info records, and user interface
Restrictions
Restriction to class types
Classification
Classification of characteristic
© SAP AG 2002
Naming conventions: Letters, figures, underscore, and hyphen Characteristic names must start with a letter Characteristic names containing a hyphen are allowed in object dependencies, but are not as easy to use. If you use a characteristic whose name contains a hyphen, you must use the expression SKEY to address the characteristic in dependencies. You enter the characteristic name in single quote marks: SKEY 'EXT-COLOR'. (For example, $self.skey‘EXT-COLOR‘ = ‘red‘) You can rename characteristics, because they are stored under an internal number. However, you cannot rename a characteristic that is used in dependencies.
© SAP AG
PLM146
2-18
Entry + Format + Value Assignment Format
Single value
NUM
Numeric value Number of characters (decimal places) Unit Exponent display Template Negative values
CHAR
Character value Number of characters Template Case sensitive
DATE
Date value
TIME
Time value
CURR
Currency value
...
Entry
except class assignment & hierarchy values
Multiple values
Restrictable
User-defined data type
(When assigning values) Required: yes? no?
Indicator cannot be overwritten in class
© SAP AG 2006
The full functions of formats DATE, TIME, and CURR cannot be used in variant configuration. You cannot use user-defined data types, because dependencies can only read single characteristics. You use the Entry required indicator to define whether it is always obligatory to assign a value to the characteristic. The allowed values and allowed intervals that you define are binding for value assignment, unless you define that additional values are also allowed. You can overwrite characteristic values for a specific class. Indicators for single value, multiple values, and restrictable: The Single value indicator means that only one value can be assigned to an object. If you assign other classes or hierarchy nodes to this class, you can assign more than one value. This serves to restrict the allowed values. The Restrictable indicator denotes a special type of single-value characteristic, which can only be used in constraints. In R/3, you can only use Restrictable together with Single value.
© SAP AG
PLM146
2-19
Classes in Variant Configuration
Variant class Classes of class type 300 (or (or similar) similar) collect and manage the characteristics to which you assign values in the sales order.
Class node Classes of type 200 (or (or similar) similar) collect and manage the characteristics for specifying a precise component in the BOM
© SAP AG 2006
The control parameters for a class type in Customizing define a class type as a variant class type or a class type for class nodes. In the standard system, you can define an existing class type as a class type for class nodes or a variant class type. You can also define additional variant class types and additional class types for class nodes in Customizing. The class type has central control functions for class maintenance. You cannot change the class type once you have saved a class. You define class statuses, classification statuses, organizational areas, text types, functions, and filters separately for each class type. In the standard system, the class statuses for all class types are: 0 = In preparation (only class maintenance allowed) 1 = Released (no restrictions on use) 2 = Locked (no classification allowed)
© SAP AG
PLM146
2-20
Screens for Maintaining Classes
Basic Data Keywords Characteristics
Texts
Document
Standard
Addnl Data
General information, control data
Strings for finding the class by matchcode
Characteristics of class
ClassClass-specific overwrite
Texts explaining the class
Document info record and document link
Data for standardized classes (DIN standards)
Additional data for class nodes
© SAP AG 2002
© SAP AG
PLM146
2-21
Configurable Material
Material number under which all variants of a product are stored in SAP R/3 Reference for all related objects (bills of material, task lists, configuration profiles, and so on) Essential control parameters, especially those for MRP and sales
© SAP AG 2002
The material master is the reference point for all other objects that are relevant to a product with multiple variants. The bills of material, task lists, and so on, are all created for the configurable material. The material master contains essential control parameters, especially those that are relevant to material requirements planning (MRP) and sales. In the standard system, material type KMAT is defined for configurable materials. However, you can define materials of other material types as configurable materials (by setting an indicator on the Basic data screen of the material master record) or define additional material types for configurable materials.
© SAP AG
PLM146
2-22
(Super) BOM
Master data > Dependencies > Configured BOM
BOM
Material BOM
Dynamic BOM Order BOM
© SAP AG 2006
Definition of a bill of material (BOM): a purpose-built, complete, formally structured list of the objects that make up an object. The list contains the description, object number, quantity, and unit of measure for all objects. The BOM of a configurable material contains all the components that are used in all possible variants of the product. You use dependencies to configure the BOM. In other words, only the components that are required for a specific variant are selected. The BOM is exploded according to the characteristic values you assign. If you define certain settings in the configuration profile, you can make manual changes to the BOM for a sales order. The BOM is then saved as an order BOM for the sales order. You can change the BOM in a production order, as you can for production without variants. Types of BOM items that are especially relevant to variant configuration are classes, non-stock items for materials of the material type KMAT, and variable-size items.
© SAP AG
PLM146
2-23
(Super) Task List
Task list > Dependencies > Configured task list
Task list
Routing
Dynamic operation sequence Copy function
© SAP AG 2002
Definition of routing (task list): A routing is a task list that describes the process for producing a material or for performing a service. It contains all the operations, suboperations, and production resources/tools (PRTs) that are required to manufacture the material. The super task list of a configurable material comprises the sequences, operations, suboperations, and PRT assignments that are required to manufacture all possible variants of the material. You use dependencies to select the correct operations for a specific variant. The task list is exploded according to the characteristic values assigned. You can create a routing by copying the configuration simulation. You can also create a routing with reference to a sales order. An alternative sequence lets you select alternative operations for an operation sequence. This can be useful to deal with either different production processes for different lot sizes, or capacity problems. A parallel sequence lets you process operations in parallel with other operations. Suboperations are subordinate to an operation, and can be used to calculate costs and capacity in more detail (control key). You can assign PRTs to any operation. Each production resource/tool must have a master record.
© SAP AG
PLM146
2-24
Configuration Profile for a Material
Selecting a class type Provides characteristics Enables link to variant class
Variant class Material master
Defining the configuration scenario Other control parameters Allowed screens, initial screen Availability check Scenario-based control parameters
© SAP AG 2006
A configurable material must be linked to classes that have a variant class type, to provide the characteristics for configuration. This is just a general material-to-class assignment, without assigned values. Assigning values would restrict the allowed values. You can assign a material to a class in any of the following situations: In master data maintenance (material master) In the classification menu (maintain allocation) In the configuration profile You can define how a BOM is exploded in configuration: Value assignment on top level only Interactive, multi-level configuration in sales order Depending on the type of configuration profile, you can also define whether: Manual changes to components are allowed Whether an order BOM is fixed (created automatically) How the order BOM is saved, and how fixing and instantiation works
© SAP AG
PLM146
2-25
Dependency Types
Precondition
Can a characteristic or characteristic value be included in the configuration? The characteristic or characteristic value CAN be included in the configuration
Selection condition
MUST an object be included in the configuration?
Procedure (action)
SETS characteristic VALUES or changes object items in the configuration, if the relevant object is included in the configuration
Constraint
Describes dependencies between SEVERAL objects in the configuration
© SAP AG 2006
-
Dependencies describe the interdependencies between objects in the configuration process. They are used in configuration to ensure that the configuration is complete and consistent. Paradigms of the SAP configurator: Declarative The user only declares rules and data The SAP System determines the processing sequence The only exception: procedures Object oriented Dependencies for objects selected in configuration are read Inheritance of dependencies
© SAP AG
PLM146
2-26
Interdependencies Between Objects in the Model Characteristics & Values
Assign dependencies
Material master
Variant class
Dependencies
Configuration profile
• Precondition • Sel. condition • Procedures • Actions • Constraints
Assign dependencies
Pricing (condition records)
Material variants Order BOMs Planning Engin. chg. mgmt ECM Engin. chg. mgmt OCM SCE configurator ...
Material BOM
Task List
Assign dependencies
Assign dependencies
© SAP AG 2003
© SAP AG
PLM146
2-27
Pricing in SD Surcharge CPU XXL/Minitower 430 UNI Price
Surcharge Modem
250 UNI
2,820 UNI
Surcharge Sound card
340 UNI
Total price
2,820 UNI
Create a multiple-value characteristic (such as SURCHARGE) with reference to field SDCOM-VKOND. Create condition records of condition type VA00 (absolute amounts) and (or) VA01 (percentage amounts). (The entry in key field "Variant" is entirely your choice.) Set up a pricing procedure in SD that reads condition types VA00 and (or) VA01. Assign the condition record to the characteristic value, or create dependencies (procedures or actions) for the pricing characteristic (SURCHARGE) as follows: $SELF.SURCHARGE = '' if characteristic ABC eq value 4711 ... Assign dependencies to the characteristic values or configuration profile. © SAP AG 2003
Pricing in R/3 sales is based on conditions. Objects in the configuration are described by characteristics and characteristic values. Pricing for configurable objects must therefore read the characteristics and values for a configurable material and SD conditions. Create a reference characteristic (such as SURCHARGE) with reference to field SDCOMVKOND. Create condition records with condition type VA00 (absolute amounts) and/or VA01 (percentage amounts). You can use both VA01 and VA00 in pricing. The key for the condition records is your choice. (Caution: these keys are case sensitive.) You create the one-to-one assignments between characteristic values and condition records using the user interface for configuration simulation. You use dependencies (procedures) to assign condition record keys to the reference characteristic, and enter conditions if required. You usually assign the procedure to the configuration profile. The following example illustrates the syntax: SURCHARGE is a reference characteristic for field SDCOM-VKOND. Surcharge_xyz is a variant condition key: $SELF. = ‘key of condition record’ IF - Example: $SELF.SURCHARGE = `Surcharge_xyz´ if EXTRAS eq `MODEM´ and EXTRAS eq `MOUSE´.
© SAP AG
PLM146
2-28
Material Variants
Material: PC_01 Sales: Item category group: NORM MRP: MRP group: 0065 Configurable product: PC
Routing Material-routing assignment
Status Released Locked Incomplete
Specific task list
Char. value assgmt CPU Casing Color
FAST TOWER Blue Specific BOM BOM Configurable material assignment
© SAP AG 2003
You create material variants with a material type that is kept in stock. To let you assign characteristic values to a material variant, you link the material to the configurable material whose characteristics you want to use to describe the variant. You can enter a cross-plant configurable material on the basic data screen. However, a cross-plant configurable material can only be used in purchasing. There, you can print out a document item with its assigned values. If you do not enter a plant-specific configurable material for the material, the characteristic values of the cross-plant configurable material are displayed. Before you can use variant matching in SD, you must enter a plant-specific configurable material in the MRP data of the material master. To assign values, choose Configure Variant. You also need to define a BOM for material variants. You can either create a new BOM for the material, which is separate from the configurable material, or you can link the material variant to the BOM of the configurable material. The BOM is then interpreted and exploded according to the values you assign in the material master record. You can also create a separate task list (routing) for the material variant, or use the task list of the configurable material. The task list for the configurable material is also interpreted and exploded according to the characteristic values assigned in the material master record.
© SAP AG
PLM146
2-29
Customizing for Classification
Default settings
Characteristic status
Characteristics groups
Templates
Maintain object types
Objects
Object table? Class status
MARA Class type?
Organizational areas
001 200, 300
Text types Classification status
Class groups
Functions and filters User profile © SAP AG 2002
Menu path: In the SAP Reference IMG: Cross-Application Components --> Classification --> Classes/Characteristics In Customizing for classification, under Characteristics, you can: Define default settings Define characteristics groups Check the statuses supplied and change them if required Define template characters and templates The class statuses, organizational areas, text types for classes, classification statuses, and functions and filters for finding objects are defined separately for each class type. Class statuses and classification statuses are predefined in the standard system. You can check the statuses and change them if required. In the same way as for characteristics, you can define groups for classes. Class groups are not dependent on class type.
© SAP AG
PLM146
2-30
Customizing for Variant Configuration
Maintenance authorizations Dependency status Dependency groups Variant tables Variant functions (For each object type): Configuration profile status Maintain settings Customer enhancements © SAP AG 2002
Menu path: In the SAP Reference IMG: Logistics General --> Variant Configuration
© SAP AG
PLM146
2-31
Variant Configuration: Consolidation: Unit Summary You are now able to: With the help of an overview of the basics of variant configuration as covered by course PLM140: Use all the functions taught in PLM140 See where the new topics covered by course PLM146 fit into the modeling process as a whole These include: Procedure for variant configuration modeling Classification tools Material master, bills of material, and task lists Configuration profile Dependencies
© SAP AG 2003
© SAP AG
Pricing and material variants Customizing
PLM146
2-32
Control Options in the Configuration Profile
Contents: Function of the configuration profile Basic data and class assignment Configuration initial screen Configuration parameters Settings Sales order and order BOM processes
Details of filter Details of interface design
© SAP AG 2002
© SAP AG
PLM146
3-33
Control Options in the Configuration Profile: Unit Objectives
At the conclusion of this unit, you will be able to Define all settings in the configuration profile Explain the effects of the control options in the profile
© SAP AG 2002
© SAP AG
PLM146
3-34
Control Options in the Profile: Course Overview Diagram
Course Overview
1
More About Object Dependencies
6
Variant Configuration: Consolidation
2
Configuration Scenarios with BOM Explosion
7
Control Options in the Configuration Profile
3
Configuration Scenarios with Order BOMs
8
Configuration Scenarios Without BOM Explosion
4
Other Variant Configuration Tools
9
More About Constraints
5
Conclusion
10
© SAP AG 2002
© SAP AG
PLM146
3-35
Control Options in the Profile: Business Scenario
In the design phase, you need to determine which configuration scenarios to work with. One important factor is the business scenario: ATO = assemble-to-order (according to catalog) MTO = make-to-order (individual products) ETO = engineer-to-order (projects)
© SAP AG 2002
© SAP AG
PLM146
3-36
Configuration Profile for a Material
Selecting a class type Provides characteristics Enables link to variant class
Variant class Material master
Defining the configuration scenario Other control parameters Allowed screens, initial screen Availability check Scenario-based control parameters
© SAP AG 2002
© SAP AG
PLM146
3-37
Configuration Profile: Basic Data
Structure:
Basic data Configuration initial screen
P-501
Material Profile name Basic data
see following slides
Pump (Order BOM configuration)
Profile_1
Confign initial screen
Class Type
300
Status
Variants
Class Assignment
Released
Valid From Start Logo
Dependencies
© SAP AG 2003
© SAP AG
PLM146
3-38
Configuration Profile: Configuration Initial Screen
Configuration initial screen structure: Basic data Confign initial screen
Confign Parameters
UserInterf
Process
Order BOM
User interface (all profile-specific settings) see following slides
Sales Order
BOM Explosion
Plnd/Prod. Order
None
Sales Order (SET)
Sing-Level
Order BOM
Multilevel
Configuration parameters (7 configuration scenarios)
Knowl.-Based
Depending on configuration scenario: Order BOM see following slides
Result-Oriented
BOM application PP01
Production - general
Filter
Order Functions Component Availability
Sales order (manual changes allowed)
Level of Detail Only Configurable Assemblies
© SAP AG 2003
© SAP AG
PLM146
3-39
Configuration Profile: Filters, Priority, and Simulation Filter: Option of restricting the BOM explosion in high-level configuration according to: - Object type (material, class, document, text) - Item category (D, I, K, L, M, N, R, T) - Item status (relevancy indicators) - Sort strings
Priority of Configuration Profile: In dialog mode: Sequence of configuration profiles shown
Without dialog (ALE, IDoc): Profile of highest priority (= lowest number) is selected
Simulation of functions in
Sales Engineering Planned order
© SAP AG 2003
The use of filters lets you restrict the explosion of BOMs in high-level configuration. The filters apply to all high-level configuration, so components that are not displayed because of the filter are ignored in both the sales order and in order BOM maintenance. The BOM explosion in high-level configuration can be restricted by the level of detail in the configuration profile and the definition of BOM applications assigned to the configuration profile, as well as by filters.
© SAP AG
PLM146
3-40
Configuration Profile: User Interface Interface design is created in an interface-design profile: - Characteristics groups - Sequences Authorization object - Relevancy to printing C_LOVC_DSG - Language Settings for: (also alternative language) - Display options - Scope - Pricing - Default values - Configurator
Confign initial screen
UserInterf Interface design Settings
(Can be overwritten for user in configuration simulation)
Confign browser Allowed screens
Start with
Char. value assgmt
Char. value assgmt
Result
Result
Master Data
Master Data
Confign structure
Confign structure
1. "Current settings" 2. "User settings" 3. "Profile settings"
© SAP AG 2003
Interface design: Name of interface design: Any character string up to 18 characters (such as material number) Name is unique and linked internally with a number from the number range Checks for same name of interface design: Results in identical interface design Possible for materials with identical class assignment Class assignment can be changed later => no check => problem! Configuration browser The configuration browser lets you navigate around the configuration structure, and at the same time displays the value assignment screen for the selected material, so that you can enter values. The configuration browser thereby replaces the configuration structure screen and value assignment screen, so you can only select the configuration browser if you have not selected these screens. Settings Can be defined in the configuration profile. They are then saved for the specific configuration profile. These settings have the lowest priority.
© SAP AG
PLM146
3-41
Can be defined on the value assignment screen. If you save these settings, they are saved for your user for all configuration profiles. These settings have a higher priority. Settings that you define on the value assignment screen and do not save are known as the current settings. These settings have the highest priority. However, you can switch between the 3 different settings at any time (provided that they exist).
© SAP AG
PLM146
3-42
Configuration Profile: Order BOM
Settings for the order BOM: Maintenance in order allowed Automatic fixing
Fix:
Selected assys
Instantiate:
Selected assys
Top down
Top down
Bottom up
Bottom up (Only for result-oriented order BOM)
© SAP AG 2003
© SAP AG
PLM146
3-43
Configuration Profile: Scenarios Configuration scenarios Planned/production order & no BOM explosion (= old Planned/production order - single-level) Planned/production order & single-level BOM explosion Order BOM & single-level BOM explosion Sales order and single-level BOM explosion Planned/production order & multilevel BOM explosion (= old Planned/production order - multilevel) Order BOM & multilevel BOM explosion (If knowledge-based = old Order BOM) Sales order & multilevel BOM Explosion (= old Sales order)
© SAP AG 2003
Single-level BOM explosion for the header material. In other words, the (single-level) BOM of the material is exploded. The BOM explosion stops after this. Any configurable assemblies in this BOM can be configured, provided that their configuration profiles allow it. Single-level BOM explosion for configurable assemblies according to the functionality above. The prerequisite for this is that the material above the assembly has a multilevel configuration scenario and its BOM has been exploded.
© SAP AG
PLM146
3-44
Overview: Combinations of Scenarios Header Component
Planned/Prod. Single-level/ No BOM multilevel explosion Plnd/prod.
Single-level/ multilevel Sales order
Single-level/ multilevel Order BOM
Plnd/prod. No BOM explosion Single/multilevel Plnd/prod. order Single/multilevel Sales order Single/multilevel Order BOM
( )
Possible / allowed
( ) Possible / allowed, but only with same way of storing order BOM No effect ->
(Note 14 87 78) © SAP AG 2002
© SAP AG
This component is treated as though its profile did not exist or were not released. This profile is excluded from the profiles for selection.
PLM146
3-45
Control Options in the Profile: Unit Summary
You are now able to: Define all settings in the configuration profile Explain the effects of the control options in the profile
© SAP AG 2002
© SAP AG
PLM146
3-46
© SAP AG
PLM146
3-47
Control Options in the Configuration Pr –
Exercises
Unit:
Control Options in the Configuration Profile
Topic:
Create Configuration Profile
At the conclusion of these exercises, you will be able to: • Create detailed configuration profiles The exercise also covers: • Checking the master data required • Creating the characteristics, variant class, and configuration profile A configurable casing needs to be modeled. Material master records and the super BOM (without dependencies) already exist. Further master data needs to be maintained.
Assign the characteristics, classes, and dependencies that you have created to your characteristics/class/dependency group T-##. All the data already exists for group 00. It may help you to use this data as a template to copy from.
1-1
Check the master data that already exists for modeling the configurable casing T-VB1##. 1-1-1 Display material master record T-VB1## with the basic data, sales, and MRP views. Use the following organizational levels: Plant: 1000 Sales organization: 1000 Distribution channel: 10 1-1-2 Display the BOM for your casing with usage 1 in plant 1000. Compare it with the slide "1. Customer Example Part Structure (Casing)" in the appendix.
© SAP AG
PLM146
3-48
1-2
Create the characteristics, variant class, and configuration profile required for the example. 1-2-1 Create the following single-value characteristics (you can copy from group 00). The characteristics must be character format characteristics with 2 characters: Pump for
Pump type
T01_## Values: 01 02 03 04 T02_## Values: 01 02 03 04
Oil Water Waste water Suspension Vacuum Rotary Wing Wet pit
1-2-2 Create variant class T_VB1## for your configurable casing T-VB1## and assign the two characteristics you just created to this class. Assign the class to class group T-##. 1-2-3 Create a configuration profile for your configurable casing T-VB1##. Use a name of your choice for your profile. Assign your configurable casing to variant class T_VB1##. Set the following parameters: Process: Planned/production order BOM Explosion: None (Leave the rest as they default Check all other settings of the configuration profile, to see what the default settings for configuration profiles are. (Settings, …).
© SAP AG
PLM146
3-49
Control Options in the Configuration Pr
Solutions
Unit:
Control Options in the Configuration Profile
Topic:
Create Configuration Profile
1-1 1-1-1 User Menu → Material → Display → Display Current
Display material master T-VB1## (current status): Views:
Basic data 1 + 2 Sales: Sales Org. Data 1 + 2 Sales: General / Plant Data MRP 1 -4
Organizational levels:
Plant: Sales organization: 1000 Distribution channel: 10
1000
=> The material master record exists with at least these views for at least these organizational levels. 1-1-2 User Menu → Bill of Material → Material BOM → Display
Display BOM with usage 1 in plant 1000. Compare it with the slide "1. Customer Example Part Structure (Casing)" in the appendix. 1-2 1-2-1 User Menu → Classification → Master Data → Characteristics
Create single-value characteristics (you can copy from group 00): T01_##
© SAP AG
Pump for
PLM146
3-50
T-## 1 Released Character format (CHAR) 2 characters
© SAP AG
PLM146
3-51
Values:
01 02 03 04
Oil Water Waste water Suspension
T02_##
Pump type T-## 1 Released Character format (CHAR) 2 characters
Values:
01 02 03 04
Vacuum Rotary Wing Wet pit
1-2-2 User Menu → Classification → Master Data → Classes
Create a variant class:
T_VB1## 300 Variant class Casing T-VB1## 1 (Released) T-## Characteristics:
T01_##
T02_## 1-2-3 User Menu → Variant Configuration → Configuration Profile → Create
Create a configuration profile for configurable material T-VB1##. Profile overview:
0-BOM(or any name)
Class assignment
T_VB1##
300 (class type)
Configuration initial screen:
© SAP AG
Configuration parameters
Process: Planned/production order BOM Explosion: None No further settings
UserInterf
No settings
PLM146
3-52
(On the Userinterf tab page, choose Settings and make a note of any default settings.)
© SAP AG
PLM146
3-53
Configuration Scenario: No BOM Explosion
Contents: Overview of scenario Combinations of configuration profiles System performance and configuration profiles Selection conditions Problems with $parent and $root Table access TYPE_OF
© SAP AG 2002
© SAP AG
PLM146
4-54
Configuration Scenario: No BOM Explosion: Unit Objectives
At the conclusion of this unit, you will be able to: Model configuration tasks using the scenario without BOM explosion, taking account of elementary performance considerations Use class nodes correctly in this scenario Formulate complex selection conditions
© SAP AG 2002
© SAP AG
PLM146
4-55
Configuration Scenario: No BOM Explosion: Course Overview Diagram
Course Overview
1
More About Object Dependencies
6
Variant Configuration: Consolidation
2
Configuration Scenarios with BOM Explosion
7
Control Options in the Configuration Profile
3
Configuration Scenarios with Order BOMs
8
Configuration Scenarios Without BOM Explosion
4
Other Variant Configuration Tools
9
More About Constraints
5
Conclusion
10
© SAP AG 2002
© SAP AG
PLM146
4-56
Configuration Scenario: No BOM Explosion: Business Scenario
Your configurable product is modeled in its entirety. This means that you do not need orderspecific post-processing for the BOM and routing. The configurable product is configured on one level. The product structure is not relevant to sales.
© SAP AG 2002
© SAP AG
PLM146
4-57
IDES Example: No BOM Explosion
P-500 (Plnd/prod, 0 levels)
Rtg
Casing G
Shaft assembly (No profile)
Support Rtg
Casing A
Characteristics: Pump for: Oil, Water, Waste w. Mode Pump type: Plunger, Rotary ... Connection: RAngle, Rd2, Rd4 ...
Class: Color
Chars: COLOR GLOSS
Casing C
Bearing A Bearing B
Linchpin
Bearing C
Rtg
Shaft (No profile)
Slug
© SAP AG 2002
© SAP AG
PLM146
4-58
Configuration Scenario: No BOM Explosion: Overview Sales / Customer Only BOM master data Characteristic value assignment on top level Super BOM (Master data BOM) P-500 (Pump)
Sales order Sales order 10 P-500 (Pump)
Shaft assy Shaft
Assigned char. values Pump Pump for
Oil
Mode
Manual
Pump type
Plunger
Single-level, Single-level, interactive interactive value value assignment assignment
10 P-500 (Pump)
Values for Pump ...
...
Connection Right-angled flange © SAP AG 2002
Configuration Scenario: No BOM Explosion Value assignment: values are only assigned to the item in the sales order. (You can use constraints here.) Configuration: dependencies for BOM items are not processed until you explode the BOM (in material requirements planning (MRP), for example). Constraints are ignored. Dependencies for subordinate configuration profiles cannot (!) be processed. Dependencies for BOM items are processed, but only the values assigned to the header material can be used. BOM explosion: - is simulated in the simulation environment - does not take place in the SD / sales order - takes place in MRP Material requirements: independent requirements are generated for the item entered in the sales order. Type matching only occurs on the top level. Material variants (previously known as stockable types) are only found for the object that is being configured. This function is not available for configurable materials on lower levels.
© SAP AG
PLM146
4-59
Configuration Scenario: No BOM Explosion: Important Points
Only the $ROOT object can be interactively configured in the sales order. Only the material you enter ($ROOT object) becomes a (main) item in the SD sales order. Components and operations are determined automatically during the MRP run and when creating the production order. There is only a dynamic BOM or sequence of operations in the sales order. You can simulate the explosion of the BOM or task list in the simulation environment. The ATP availability check can be run from the sales order.
© SAP AG 2002
The function for creating order-specific routings is not affected by settings for the configuration scenario, so this function can be used here. Note: The authorization object for an interface design is: C_LOVC_DSG
© SAP AG
PLM146
4-60
Combinations of Configuration Scenarios Effective No profile
No BOM explosion Planned/prod. order
No BOM explosion Planned/prod. order
Same as No profile *)
Single-level explosion Planned/prod. order
Same as No profile *)
Multilevel explosion Planned/prod. order
Same as No profile *)
Single-level explosion Order BOM
Same as No profile *)
Multilevel explosion Order BOM
Same as No profile *)
Single-level explosion Sales order
Same as No profile *)
Multilevel explosion Sales order
Same as No profile *)
*) = Can be used in purchase orders in purchasing © SAP AG 2002
When you create a sales order for a configurable material with the scenario No BOM explosion, you can only assign characteristic values to the header material, so only the dependencies for the configuration profile of the header material are active. You cannot assign values to a configurable assembly with a profile. However, you can use the profile in purchasing in the following way: Assign the characteristics of the assembly to the variant class of the header material, as well as to the assembly. In purchasing documents, the values assigned to the header material are copied to the characteristics of the variant class of the assembly.
© SAP AG
PLM146
4-61
System Performance and Configuration Profiles
General for all scenarios: Few or no "allowed screens" Limited BOM explosion: Number of levels BOM application Filter Indicator "Configurable assemblies only"
© SAP AG 2003
© SAP AG
PLM146
4-62
Configuration Profile on Top Level Only
P-500 (No BOM explosion)
Characteristics: Pump for: Oil, Water, Waste w. Mode Pump type: Plunger, Rotary Connection: RAngle, Rd2, Rd4 Extras: With support, ...
Shaft assembly (No profile)
Support
$root = header $parent = next instance
Selection condition: $root.EXTRAS eq 'With... or $parent.EXTRAS eq 'With... not $self.EXTRAS eq 'With...
Bearing A Bearing B
Selection condition: $root.CONNECTION eq 'Rd2' or $parent.CONNECTION eq 'Rd2' not $self.CONNECTION eq 'Rd2'
Bearing C © SAP AG 2002
$self is not possible in selection conditions. In this scenario, you can only query values assigned to the header material, $root. In this scenario, you can also use $parent to query values assigned to the header material. The default is $root.
© SAP AG
PLM146
4-63
Configuration Profile on Several Levels
P-500 (No BOM explosion)
Characteristics: Pump for: Oil, Water, Waste w. Mode Pump type: Plunger, Rotary ...
Shaft assembly (No BOM explosion)
Selection conditions: Characteristic Connection cannot be used $parent $root
Bearing A Bearing B
Characteristics: ... Connection:
RAngle Rd2 Rd4
Characteristic Connection - No interactive value assgmt - Dependencies cannot infer value
Bearing C © SAP AG 2002
Characteristics CONNECTION, and so on, of assembly SHAFT ASSEMBLY cannot have values assigned to them in the sales order, if you create a sales order for the Pump P-500. No data can be saved for the shaft assembly. In purchasing, a configuration profile for the shaft assembly can be used as a filter. If I create a purchase order for the shaft assembly, and the shaft assembly has no configuration profile, all the values assigned to the header material are copied to the purchase order. If I create a purchase order for the shaft assembly, and the shaft assembly has a configuration profile, the values assigned to the header material are only copied to the purchase order if the characteristics are also assigned to the configuration profile of the shaft assembly.
© SAP AG
PLM146
4-64
Class Nodes in This Scenario
P-500 (Plnd/prod, 0 levels)
Class: Color
Characteristics: Pump for: Oil, Water, Waste w. Mode ... Color: Red, Blue, Green
Caution ! Color is read only if no values for class node Characteristics: Color: Red, Blue, Green Gloss: yes/no Action $self.GLOSS = 'Yes' if ...
No manual specialization of class node with this scenario Only automatic specialization of class node possible, by: - Value assignment on value assignment interface or - Value assignment for class node by procedure © SAP AG 2002
If the value assigned to characteristic COLOR is sufficient to specialize the class node, you can work this way. If 2 different materials have the value 'Blue' and one has GLOSS 'Yes' while the other has GLOSS 'No', and no value is assigned to characteristic GLOSS, you have no influence over which material is selected in material requirements planning (MRP). To optimize system performance, if you use class nodes with automatic specialization, use an additional selection condition for cases where no material is needed or no material can be found.
© SAP AG
PLM146
4-65
Selection Conditions (Complex) Sales order Confble matl
RAM: giant
RAM: large
Application: ... CPU: ... Hard disk: ...
RAM: standard
Selection condition:
Selection condition:
APPLICATION APPLICATION eq eq ’PHOTO' ’PHOTO' and CPU eq eq ’fast' ’fast' and Hard Hard disk eq ’large' OR OR APPLICATION APPLICATION eq eq ’PHOTO' ’PHOTO' and CPU eq eq ’fast' ’fast' and Hard Hard disk eq ’medium' OR...... OR......
APPLICATION APPLICATION eq eq ’TEXT' ’TEXT' and and CPU eq eq ’medium' ’medium' and and Hard disk disk eq ’medium' ’medium' OR APPLICATION APPLICATION eq eq ’SERVER' ’SERVER' and CPU eq ’standard' ’standard' and Hard Hard disk eq eq ’large' OR...... OR......
© SAP AG 2002
If you want a BOM item or operation to be selected according to complex selection conditions, it is often useful to define tables with the allowed combinations of values and use selection conditions to access the table.
© SAP AG
PLM146
4-66
Table and (Complex) Selection Conditions
Table SEL Application
Hard disk
CPU
Char. 4
PHOTO
Large
Fast
A
PHOTO
Medium
Fast
A
SERVER
Large
SERVER
Large
TEXT
Medium
Medium Slow Medium
B C C
Each line represents a valid combination of characteristic values © SAP AG 2003
If you want to access one table in selection conditions for several BOM items, you must define in the table which table line refers to which BOM item. To do this, you create an additional characteristic (the 4th characteristic, in this example) to identify the BOM item. For each selection condition, you enter the characteristic value that is to trigger the selection condition. The table is only read if all its characteristics have values assigned in the sales order. If no entry in the table matches the values assigned, no component is included in the exploded BOM. Example of a selection condition: table SEL (APPLICATION = $parent.APPLICATION, HARD_DISK = $parent.HARD_DISK CPU = $parent.CPU, CHAR_4 = 'A')
© SAP AG
PLM146
4-67
Selection Condition Without TYPE_OF
Sales order KMAT Configurable BIKE
Sales order
Extras: Pump ...
KMAT Configurable MOPED
KMAT
KMAT
Extras
Pump
Extras: Pump ...
Extras
Selection condition: EXTRAS eq 'PUMP'
© SAP AG 2002
If a configurable assembly is used multiple times as a component, there are 2 possibilities: 1.) Without TYPE_OF In the selection condition, only the values assigned to the header material are used. A selection according to the type of the header material is not possible.
© SAP AG
PLM146
4-68
Selection Condition with TYPE_OF
Sales order KMAT Configurable BIKE
Sales order
Extras: Bell ...
KMAT Configurable MOPED
KMAT
Extras: Bell ...
KMAT
Extras
Extras
Bell 1
Bell 2
Selection condition:
Selection condition:
TYPE_OF ($ROOT, (300)BIKE) AND EXTRAS eq 'BELL'
TYPE_OF ($ROOT, (300)MOPED) AND EXTRAS eq 'BELL'
© SAP AG 2002
2.) With TYPE_OF In the selection condition, the values assigned to the header material and the type of the header material are both used. Reference to header material using material number: TYPE_OF ( $ROOT, (MATERIAL) (300) ( NR = 'BIKE' ) ) Reference to header material using class number: TYPE_OF ( $ROOT, (300) BIKE )
© SAP AG
PLM146
4-69
Configuration Scenario: No BOM Explosion: Unit Summary You are now able to: Model configuration tasks using the scenario without BOM explosion, taking account of elementary performance considerations Use class nodes in this scenario Formulate complex selection conditions, using: $parent and $root Multiple table calls TYPE_OF
© SAP AG 2003
© SAP AG
PLM146
4-70
© SAP AG
PLM146
4-71
Configuration Scenario: No BOM Exp
Exercises
Unit:
Configuration Scenario: No BOM Explosion
Topic:
Selection Conditions with Table Calls
At the conclusion of these exercises, you will be able to: • Maintain multiple table calls with selection conditions The exercise also covers: • Table maintenance The conditions under which several components are selected are to be stored in a variant table and accessed using selection conditions. Assign the characteristics, classes, and dependencies that you have created to your characteristics/class/dependency group T-##. All the data already exists for group 00. It may help you to use this data as a template to copy from. Read through the entire exercise before you start. 1-1 describes the task as a whole. 1-1
Assign selection conditions to the three casing items in the BOM of your configurable casing T-VB1## (graycast, aluminum, and steel) to ensure that the components are selected according to the following list: Pump for: 500-101 (Graycast): 500-102 (Aluminum):
500-103 (Steel)
© SAP AG
Pump type:
Oil Waste water
Vacuum
Oil Waste water Suspension
Rotary Wet pit
Water Water Waste water
PLM146
Vacuum Wet pit
Rotary Wing Wing
4-72
© SAP AG
PLM146
4-73
1-1-1 Create variant table T_SEL_COND_## that maps the possible combinations shown above. Remember that an additional characteristic is required to represent the casing types. Enter exactly one value for each characteristic in each table line. The additional characteristic must be a character format characteristic with one character. This is important for another exercise later on (link between variant table and database table). 1-1-2 Create selection conditions that refer to this table and assign the selection conditions to the relevant BOM items. Remember that the casing can be an assembly in another structure. ($root or $parent?) 1-1-3 Test the result.
© SAP AG
PLM146
4-74
Configuration Scenario. No BOM Explo Solutions Unit:
Configuration Scenario: No BOM Explosion
Topic:
Selection Conditions with Table Calls
1-1 1-1-1 User Menu → Classification → Master Data → Characteristics
Create additional characteristic for mapping casing types. Create:
T03_## Casing type T-## Character format (CHAR) Values:
1
Graycast 2 3
1 character
Aluminum Steel
User menu→ Variant Configuration → Tools → Table Structure → Create
Create variant table:
T_SEL_COND_## Table for selection conditions 1 (Released) T-##
Characteristics:
© SAP AG
T01_## T02_## T03_## (No key required)
PLM146
4-75
User menu→ Variant Configuration → Tools → Table Contents → Maintain
Fill variant table: T_SEL_COND_## T01_##
T02_##
01 (Oil) 01 (Oil) 02 (Water) 02 (Water)
01 (Vacuum) 1 (GC) 04 (Wet pit) 2 (Alu) 02 (Rotary) 3 (St.) 03 (Wing)
T03_## Table maintenance:
3 (St.) 03 (Waste water) 01 (Vacuum) 1 (GC) 03 (Waste water) 02 (Rotary) 2 (Alu) 03 (Waste water) 03 (Wing) 3 (St.) 04 ( Suspension) 04 (Wet pit)
2 (Alu)
(GC=Graycast, Alu=Aluminum, and St.=Steel.) 1-1-2 (Create global dependencies during assignment) User Menu → Bill of Material → Material BOM → Change
T-VB1## Plant: 1000 Usage: 1 ...(Item Overview) → Pushbutton = Ctrl + F1 or Extras → Object dependencies → Assignments
Selection condition for component: 500-101 (Graycast): T_SC_T03_##_1 table T_SEL_COND_## (T01_## = $parent.T01_##, T02_## = $parent.T02_##, T03_## = '1' ) similarly (by copying the above selection condition): Selection condition for component: 500-102 (Aluminum): T_SC_T03_##_2
… T03_## = '2' )
Selection condition for component: 500-103 (Steel):
© SAP AG
PLM146
4-76
T_SC_T03_##_3
© SAP AG
… T03_## = '3' ).
PLM146
4-77
1-1-3 User menu→ Variant Configuration → Environment → Configuration Simulation
Configuration simulation: T-VB1## Plant: 1000 (Sales/distribution) (BOM) => Final state can be checked in result (BOM application PP01) or in planned order
© SAP AG
PLM146
4-78
More About Constraints
Contents: Overview and system performance Application examples for the INFERENCES section Value assignment for class nodes
© SAP AG 2002
© SAP AG
PLM146
5-79
More About Constraints: Unit Objectives
At the conclusion of this unit, you will be able to: Process equations and tables in ways that are not covered by procedures (actions) Use restrictable characteristics Name the options for improving system performance with regard to constraints and variant tables
© SAP AG 2002
© SAP AG
PLM146
5-80
More About Constraints: Course Overview Diagram
Course Overview
1
More About Object Dependencies
6
Variant Configuration: Consolidation
2
Configuration Scenarios with BOM Explosion
7
Control Options in the Configuration Profile
3
Configuration Scenarios with Order BOMs
8
Configuration Scenarios Without BOM Explosion
4
Other Variant Configuration Tools
9
More About Constraints
5
Conclusion
10
© SAP AG 2002
© SAP AG
PLM146
5-81
More About Constraints: Business Scenario
Modeling in larger configuration structures Use of functions only available in constraints
© SAP AG 2002
© SAP AG
PLM146
5-82
Constraints
Constraints Constraint 3
Infer values and check consistency
Constraint 2
Between any objects in a configuration task
Constraint 1
Active in configuration only No effect on BOM and task-list explosion in low-level configuration (in MRP, for example)
Dependency net
Cannot replace selection conditions and procedures Additional functions
© SAP AG 2002
Constraints are especially necessary for multilevel, interactive configuration. Constraints read or write characteristic values as well as: - The configurable material and its assigned classes or class structures - Multiple levels of the BOM structure or class hierarchy The additional functions that constraints provide are also useful in single-level configuration. Constraints can and should be used instead of actions to set up the user interface for value assignment. Constraints are only active during interactive configuration. Constraints are ignored when you explode a BOM or task list dynamically in material requirements planning (MRP) or when you create a production order. Constraints can only be created locally within a constraint net. You assign the constraint net to the configuration profile.
© SAP AG
PLM146
5-83
Parameters in a Constraint OBJECTS Declaration of all classes and objects used
CONDITION Prerequisite for processing the constraint
RESTRICTION(S) Relation between elements in the OBJECTS section that must be true Value inference and consistency check Direct or using variant functions and variant tables
INFERENCES Definition of which characteristic values are to be inferred (from equations, tables, or functions) © SAP AG 2002
A constraint has up to 4 sections, but has at least the 2 sections OBJECTS and RESTRICTIONS. You only use the CONDITION and INFERENCES sections if required. These sections are always in the same order. You can close each section with a period.
© SAP AG
PLM146
5-84
OBJECTS Section (Declaration)
(300)
PC
Class type
Class name
Declaration of an object (class)
(Material)
(300)
Object identifier
Class type
= (Nr Partial key name
'PC_01') Partial key value
Declaration of other object (such as material) © SAP AG 2002
To declare an object, you enter the class type and class name. To declare a specific object, such as a material, you enter: Object identifier defined in Customizing Class type (optional) Name of the partial key for the object, as defined in Customizing Partial key value (the partial key for a material is the material number ) Quote marks and parentheses must be used as shown. If you do not enter the class type, you must enter empty parentheses ( ). Example of document declaration: (Document) (017) (Type = `DRW´ , Version = `00´ , Part = `000´ , Nr = `P-100´)
© SAP AG
PLM146
5-85
Variables for Objects, Classes, and Characteristics
X Variable name
is_a
Y Variable name
is_object
(300) PC Object declaration for class (Material) (300) (Nr = 'PC_01') Object declaration for material
(300) PC SW OS Variable name
where = =
; Software Operating system , (300) PR ... . Characteristic name
© SAP AG 2002
Constraint variables are subject to the same naming conventions as characteristics and classes. However, you can start the name with a query (?). The variables only apply locally in the constraint. Examples of valid variable names: X or ?X or ?my_variable Convention for object declaration of a class: is_a Other object declaration: is_object In the above example, X replaces the expression (300) PC. Variables replace complex expressions in the following sections of a constraint: SW replaces (300) PC.SOFTWARE OS replaces (300) PC.OPERATING_SYSTEM. Use a comma to separate lists of the following equivalent expressions: Object or class declarations in the OBJECTS section Objects in the INFERENCES section Actions in the RESTRICTIONS section Use a semicolon to separate equivalent expressions in a list of characteristic declarations. You can use a period to close each section, such as the OBJECTS section.
© SAP AG
PLM146
5-86
CONDITION Section
Optional Syntax: similar to preconditions Logical expression No $self, $parent, $root, or TYPE_OF
Additional terms: PART_OF and SUBPART_OF Function: condition for processing constraint
© SAP AG 2003
In the CONDITION section, you specify when the constraint is processed. A constraint is only processed if the condition in this section is true. The syntax of the CONDITION section is similar to the syntax of a precondition or selection condition. However, the following differences apply: Instead of $self, $parent, or $root, you name either the object or its variable TYPE_OF is not allowed You can use variables for objects, classes, and characteristics You can use logical expressions of any complexity, including nested disjunctions and conjunctions (AND, OR and parentheses) In addition, you can use the expressions PART_OF and SUBPART_OF. You use PART_OF to check whether one material or document is in the BOM of another. SUBPART_OF checks the same thing across multiple levels of the BOM. In the condition section and in IF conditions in the restrictions section, statements such as the following are false if the characteristic has no value assigned: = The functioning of such statements is the same as in preconditions and selection conditions.
© SAP AG
PLM146
5-87
RESTRICTIONS Section
Syntax: similar to actions Object variables instead of $self, $parent, and $root Additional term: "false"
Function: similar to actions Calculates additional values as in INFERENCES section Checks all values for consistency
© SAP AG 2003
Constraints are declarative dependencies. You can use the following elements in the RESTRICTIONS section, as for actions: Formulas Tables and functions Calculation of values on the left-hand side of an equation, if the restriction is an equation SAP R/3 checks whether the restriction is fulfilled. If it is not, the configuration is inconsistent. This also applies if the constraint calculates characteristic values. If a single-value characteristic already has a value of another origin (such as user entry): If the value is different, an inconsistency is generated If the value is the same, an additional explanation is saved
© SAP AG
PLM146
5-88
Value Assignment for Class Nodes Automatic: By assigning values to relevant characteristics for superior configuration profiles
PC
Manual: By finding objects in the class, if scenario allows Only in scenarios "sales order " or "order BOM"
...
Class node
Procedure for class node: ($self.COLOR = 'Red', $self.GLOSS = '0' ) if CASING = 'TW'
Constraint: Only in scenarios Sales order or Order BOM
objects: (300) PC (200) HUE restrictions: COL = 'red' GL = '0'
where CS = CASING where COL = COLOR GL = GLOSS
, ; .
if CS eq 'TW', if CS eq 'TW'.
© SAP AG 2002
Caution: Constraints can only be used to assign values to class nodes in high-level configuration. For this reason, such constraints only work if the replaced component is saved. This is only possible in the scenarios "sales order" and "order BOM".
© SAP AG
PLM146
5-89
part_of, subpart_of in the CONDITION Section
PC package 15
PC
Casing
Monitor
CD drive
part_of (PC, PC package) is true. part_of (PC, PC package, ‘0015’) is true. part_of (Casing, PC package) is false. subpart_of (PC, PC package) is true. subpart_of (casing, PC package) is also true.
part_of refers to a component of a BOM and the material for which the BOM was created. subpart_of also refers to several levels of the BOM.
© SAP AG 2002
© SAP AG
PLM146
5-90
INFERENCES Section
Each characteristic variable in the RESTRICTIONS section can be inferred Applies to: Formulas Tables Function calls in the RESTRICTIONS section
Conditions: The variable is in the INFERENCES section. Conversion is mathematically possible or a key is defined. Variable is not in any conditional section.
© SAP AG 2002
The INFERENCES section can only contain characteristic variables - separated by commas. If you call a table or function, the relevant access key must be defined (value assignment alternative of table or function). If you use arithmetical expressions, it must be possible to solve them with the variables in the INFERENCES section.
© SAP AG
PLM146
5-91
Examples of Constraints
objects: (300) PC where OS = OPERATING_SYSTEM, (300) PRINTER where PD = PRINTER_DRIVE. Package
restrictions: PD
=
OS Printer
PC
objects: (300) PC where OS = OPERATING_SYSTEM, (300) PRINTER where PD = PRINTER_DRIVE. restrictions: PD
=
OS
inferences: PD , OS © SAP AG 2002
The constraint returns an inconsistency if the RESTRICTIONS section is not true. The RESTRICTIONS section can also infer values. Without an INFERENCES section, you can only infer values in the same way as with procedures (or actions). Further values can only be inferred by using the INFERENCES section. In the above examples, the characteristic values (not the value descriptions) must be the same.
© SAP AG
PLM146
5-92
Equations
objects: (300) Special_casing where D = Depth; W = Width; H = Height; V = Volume. restrictions:
V = D * W * H.
inferences:
V , D , W , H.
The RESTRICTIONS section can be processed in any direction. If three variables (= n-1) are known, the fourth (last) can be inferred.
© SAP AG 2002
R/3 converts the equation to the following additional equations: D=V/W/H W=V/D/H H=V/D/W As soon as three values are known, R/3 finds the appropriate equation and executes it. Variant tables and variant functions with alternative selection function in a similar way. If you use variant functions, it is the responsibility of the programmer to ensure that the inverse equation exists and is called. To optimize system performance, only trigger the conversions you really need in the INFERENCES section.
© SAP AG
PLM146
5-93
Constraints with Tables and INFERENCES (1)
Check and inference of correct values Table CS Printer
CPU
Monitor
Inkjet
20"
Standard
Laser_1
21"
Medium
Laser_2
24"
Fast
Value assignment alternatives
Each column is unique Each characteristic can be used as a key
Check table for all keys Use INFERENCES section
© SAP AG 2002
Values are only inferred if the key has complete values. Otherwise, processing is terminated and the table is ignored. If processing of the table produces ambiguity, a runtime error occurs. ==> Check the table! You cannot define dependencies for table entries.
© SAP AG
PLM146
5-94
Constraints with Tables and INFERENCES (2)
OBJECTS: PC IS_A
(300)PC.
RESTRICTIONS: table CS (PRINTER MONITOR CPU
= PC. PRINTER, = PC. MONITOR, = PC. CPU ).
INFERENCES: PC. PRINTER, PC. MONITOR, PC. CPU
Table CS Printer
Monitor
CPU
Inkjet
20"
Standard
Laser_1
21"
Medium
Laser_2
24"
Fast
© SAP AG 2002
Table CS is for inferring values for characteristics PRINTER, MONITOR, and CPU. The allowed value combinations are defined in table CS. Value assignment alternatives must be defined to infer values for all three characteristics. For each characteristic (value assignment key), the table allows values to be inferred for the other two characteristics. This means that each characteristic represents its own complete key.
© SAP AG
PLM146
5-95
Variant Table for Constraints with Restrictable Characteristics
Char. Language Allowed values
Allowed combinations
D;E;F;S;P;R
Printer handbook
OS handbook
Software handbook
D;E;F;S;R
D;E;F;S
D;E;S
D
D
D
D
E
E
E
E
F
F
F
D;E;S
S
S
S
S
P
S
S;E
S;E
R
R
D;E
D;E
No value assignment alternatives © SAP AG 2003
Purpose: When a value is entered for one or more characteristics in the list above, the missing values (for characteristics language and handbook language for printer, operating system, and other software) are to be inferred. - If this is not possible, the result is a restriction to the values still allowed. In constraints, you can restrict the allowed values for a characteristic, as well as inferring values. The characteristics on the value assignment user interface (assigned to the variant class) must be single-value and restrictable. To manage the allowed values of a characteristic dynamically, you can refer to a table. A key is required to do this. Enter the characteristics whose allowed values you want to restrict in the INFERENCES section.
© SAP AG
PLM146
5-96
Constraints with a Variant Table and Restrictable Characteristics
OBJECTS:
PC IS_A (300)PC.
RESTRICTIONS:
(LANGUAGE PRINTER_HB OS_HANDBOOK SOFTWARE_HB
table LANGUAGE
= PC.LANGUAGE, = PC.PRINTER_HB, = PC.OS_HANDBOOK, = PC.SOFTWARE_HB).
INFERENCES:
PC.LANGUAGE, PC.PRINTER_HB, PC.OS_HANDBOOK, PC.SOFTWARE_HB).
(HB = Handbook)
Language
Printer handbook
D;E;F;S;P;R
D;E;F;S;R
OS handbook
Software handbook
D;E;F;S
D;E;S
D
D
D
D
E
E
E
E
F
F
F
D;E;S
S
S
S
S
P
S
S;E
S;E
R
R
D;E
D;E
© SAP AG 2003
© SAP AG
PLM146
5-97
System Performance and Constraints
To improve system performance: Collect constraints in a small number of nets Use the CONDITION section Set up the CONDITION section as a "disjunctive standard form", making purely "or" relations from any purely "and" relations: Example: (a1 and ... and an) or (b1 and ... and bn) ... Example: not a or not b
(instead of not (a and b) )
Use characteristic variables if you use a characteristic more than once in a constraint Only enter what you really need to enter in the INFERENCES section
© SAP AG 2002
© SAP AG
PLM146
5-98
System Performance and Variant Tables
To improve system performance: - Variant tables without runtime objects + Variant tables with runtime objects ++
Transparent tables
Runtime objects: Created and updated automatically as of R/3 4.5 (up to R/3 4.0): Display/change/create in table structure Extras Runtime object
Activate
© SAP AG 2003
Variant tables without runtime objects existed only up to R/3 4.0x.
© SAP AG
PLM146
5-99
... More About Constraints: Unit Summary
Four sections of a constraint: - OBJECTS - CONDITION - RESTRICTIONS - INFERENCES Functions of each section? INFERENCES section and equations, tables, and functions Constraints and restrictable characteristics Class nodes System performance when using constraints and variant tables
© SAP AG 2003
© SAP AG
PLM146
5-100
... More About Constraints
Exercises
Unit:
... More About Constraints
Topic:
Restrictable Characteristics and Constraints
At the conclusion of these exercises, you will be able to: • Maintain constraints with restrictable characteristics The exercise also covers: •
Creating the characteristics and variant tables required
Three characteristics need to be included in the user interface for value assignment of your casing, and only certain combinations of values can be assigned to them. Dependencies are to be used to ensure that it is not possible to enter inconsistent values. In other words: If values are assigned to these three characteristics, only allowed values are displayed for the other characteristics. If the allowed values are restricted to exactly one value, this value is set by the system. 1-1
Create the following single-value restrictable characteristics for the user interface for value assignment (you can copy from group 00): Language Values:
© SAP AG
T05_## en de fr es pt ru
English German French Spanish Portuguese Russian
Documentation
T06_##
Values:
English German Spanish Russian
en de es ru
PLM146
5-101
© SAP AG
PLM146
5-102
Inscription Values:
T07_## en de ru
English German Russian
Assign these characteristics to the class for the casing T_VB1##. 1-2
The values that can be set (either manually or by the system) for characteristics Language, Documentation, and Inscription are as shown in the table below: Language
Documentation
Inscription
de en fr es pt ru
de;en en en;es en;es en;es ru;en
de;en en en en en ru;en
Create variant table T_CONSTRAINT_## that maps the possible combinations shown above. 1-3
Create constraint net T_CN_VB1## for the casing. Assign constraint T_CS_VB1## to this constraint net. This constraint ensures that values can only be assigned manually or by the system according to the above variant table. The constraint net must be assigned to the configuration profile of the configurable casing T-VB1##.
1-4
© SAP AG
Check the result in configuration simulation.
PLM146
5-103
... More About Constraints
Solutions
Unit: More About Constraints Topic: Restrictable Characteristics and Constraints
1-1 Remember to use your group number! When copying, change the group number from T-00 to your group number. User Menu → Classification → Master Data → Characteristics
For all 3 characteristics:
T-## (group) 1 Released Character format (CHAR) 2 characters Single-value restrictable
Language
T05_##
Values:
en de fr es pt ru
English German French Spanish Portuguese Russian
Documentation T06_##
Values:
en de es ru
English German Spanish Russian
Inscription
Values:
en de ru
English German Russian
T07_##
User Menu → Classification → Master Data → Classes
© SAP AG
PLM146
5-104
Change variant class:
T_VB1## 300
Characteristics:
T05_## T06_## T07_##
User menu→ Variant Configuration → Tools → Table Structure → Create
Create variant table structure:
T_CONSTRAINT_## Table for constraint 1 (Released) T-##
Characteristics: T05_## T06_## T07_## (Key is not required here.)
(Key column blank)
User menu→ Variant Configuration → Tools → Table Contents → Maintain
T_CONSTRAINT_## Table for constraint T05_## Language
T06_## Documentation
T07_## Inscription
de en fr es pt ru
de;en en en;es en;es en;es ru;en
de;en en en en en ru;en
(View: Table Maintenance) Button: Display options → Indicator: All Values
To use this variant table in the SAP IPC SCE (although it is not the purpose of this course to cover SCE), the table must be normalized. To do this, choose (from the table maintenance view) Table Untag. 1-3 User menu→ Variant Configuration → Dependency → Dependency Net → Create
© SAP AG
PLM146
5-105
Create constraint net T_CN_VB1## with constraint T_CS_VB1##. Create constraint net:
T_CN_VB1## 1 (Released) T-## (group)
!!!
Assign and create constraint at the same time: T_CS_VB1## T-## (group) objects: (300)T_VB1## where LANGUAGE = T05_##; DOCUMENTATION = T06_##; INSCRIPTION = T07_##. restriction: table T_CONSTRAINT_## (T05_## = LANGUAGE, T06_## = DOCUMENTATION, T07_## = INSCRIPTION) inferences: LANGUAGE, DOCUMENTATION, INSCRIPTION – Check and save syntax – Release and save constraint – Release, check, and save constraint net User Menu → Variant Configuration → Configuration Profile → Change
Change configuration profile: Pushbutton:
1-4
for material T-VB1##
Assign object dependencies Assign constraint net T_CN_VB1##
Configuration simulation: T-VB1## 1000 Sales/distribution and BOM => Check final state
© SAP AG
PLM146
5-106
© SAP AG
PLM146
5-107
More About Object Dependencies
Contents: Variant tables and database tables Variant functions Characteristic selection and configuration profile Information from the sales order and object dependencies Structure VCSD_UPDATE Structure SCREEN_DEP
© SAP AG 2002
© SAP AG
PLM146
6-108
More About Object Dependencies: Unit Objectives
At the conclusion of this unit, you will be able to: Maintain table calls and function calls Link variant tables to database tables and transfer data between them Use multiple classification and class hierarchies in variant configuration Select characteristics in configuration profile maintenance by using different class types or organizational areas Read information from the sales order and use dependencies to write to fields in the sales order Use structure SCREEN_DEP for interface design
© SAP AG 2003
© SAP AG
PLM146
6-109
More About Object Dependencies: Course Overview Diagram
Course Overview
1
More About Object Dependencies
6
Variant Configuration: Consolidation
2
Configuration Scenarios with BOM Explosion
7
Control Options in the Configuration Profile
3
Configuration Scenarios with Order BOMs
8
Configuration Scenarios Without BOM Explosion
4
Other Variant Configuration Tools
9
More About Constraints
5
Conclusion
10
© SAP AG 2002
© SAP AG
PLM146
6-110
More About Object Dependencies: Business Scenario
For further modeling of your configurable product, you need more detailed information on suitable object dependencies.
© SAP AG 2002
© SAP AG
PLM146
6-111
System Performance and Dependencies
Define global dependencies if used more than once (if local, dependency must be loaded several times) Value check using function module, instead of precondition restrictable characteristics with constraint and variant table Do not mix procedures, actions, and constraints (value inferences should not influence each other)
© SAP AG 2003
Training systems contain function module Z_VALUE_CHECK for demo purposes. This is used in course PLM130 as a value check.
© SAP AG
PLM146
6-112
Variant Tables - Summary
Variant table Key required?
Table contents unambiguous?
Access when?
Preconditions, Value sel. conditions, inference if...
Value restrictions (set values)
no
yes (First key only n keys) inferences:
no
no
yes (for all keys) ambiguity => runtime error no entry => terminates no error
no
Key has value (First key, one key)
always
All chars have values
inferences
© SAP AG 2003
Usage: Describing allowed combinations of values (access only if all characteristics have values assigned) in selection conditions, preconditions, constraints, and in IF conditions of procedures and actions. Inference of characteristic values (access only if all keys have values assigned) in procedures, actions, and constraints. Restricting allowed values (immediate access) in special constraints. Restrictions: Try to use only single-value characteristics in the table structure. In simple dependencies (not constraints) only the first value assignment alternative can be used. All characteristics required to access the table must have values assigned, or the dependencies terminate. If no value is inferred (for example, missing table entry)? Dependencies terminate: value to be inferred is not defined.
© SAP AG
PLM146
6-113
Linking Variant Tables (1)
1) Variant tables without links - See system performance tips "System Performance and Variant Tables" in unit "More About Constraints" 2) Use existing database tables as variant tables Create structure of variant table (basic data, characteristics) In basic data of variant table: enter database table Link active Field assignment
© SAP AG 2003
© SAP AG
PLM146
6-114
Linking Variant Tables (2)
3) Link existing variant table to new database table Create database table in ABAP Workbench and activate it Here: - Define field names with suitable data elements (format) - For all characteristics used as keys in the variant table, define corresponding fields as keys (unambiguous) Link variant table to database table (as in 2): In basic data of variant table: enter database table Link active Field assignment Data transfer: variant table to database table In menu for Tools variant configuration Function Table structure Table contents Database operations
Maintain Transfer to database table
Insert Insert and change Insert, change, and delete
© SAP AG 2003
© SAP AG
PLM146
6-115
Variant Functions - Summary
Functions
Usage: Additional functions in dependencies by using ABAP programs
Procedure: Define input and output characteristics Define an ABAP program Create a function that calls the ABAP program Enter the function in a dependency, such as a procedure, and link the dependency to the configuration profile (keyword: FUNCTION) and assign dependencies to (for example) the configuration profile
© SAP AG 2003
In variant configuration, you can use your own ABAP programs to describe interdependencies that are not covered by the standard dependencies.
© SAP AG
PLM146
6-116
Example of a Variant Function 4.
Enter the function in a dependency (action, for example)
3.
Create a function that calls the ABAP program
2.
Define an ABAP program
function function z_t146 z_t146 (char1_f (char1_f char2_f char2_f char3_f char3_f
== char1_o char1_o ,, == char2_o char2_o ,, == $self.char3_o) $self.char3_o)
Similar Similar to to variant variant tables: tables: Variant configuration Tools Variant configuration Tools Characteristics Characteristics Keys Keys
Functions Functions
Function module Interface: Import and export parameters
1.
Define input and output characteristics
Import parameter Global
Ref. field CUOV_00
Interface: Table parameters and exceptions Table parameters
Ref. structure
Exceptions
QUERY
CUOV_01
FAIL
MATCH
CUOV_01
Internal_ERROR
© SAP AG 2002
© SAP AG
PLM146
6-117
Class Hierarchy and Multiple Classification
Class 1
LENGTH: 1 - 10
Values: LENGTH: 2 -7
Class hierarchy
Values: LENGTH: 4 -9
Class 3 COLOR: R, B, G
Class 2 HEIGHT: 2 - 20
Class 4
Class 5 VERSION: E, S, L
WIDTH: 3 - 30
Multiple classification Values: VERSION: E, S
Configurable product LENGTH: 4 - 7 HEIGHT: 2 - 20 COLOR: R, B, G VERSION: E, S WIDTH: 3 - 30
© SAP AG 2002
In variant configuration you can use classes that are part of a class hierarchy. Characteristics that are assigned to classes in a class hierarchy are always inherited by the subordinate classes. The allowed values of inherited characteristics can be restricted for the subordinate class. The Single value attribute of a characteristic is not active in assignments of classes to other classes, so the allowed values can be restricted to any range of values.
© SAP AG
PLM146
6-118
Selecting a Class by the Class Type
Class 6 Type 300 Char: VERSION HEIGHT
Class 7 Type 300
Class 6 Type 300
Char: WIDTH COLOR
Char: VERSION HEIGHT
Configurable product Conf. prof. A Type 300
Conf. prof. B Type 300
Char: VERSION HEIGHT WIDTH COLOR
Char: VERSION HEIGHT WIDTH COLOR
Class 8 Type 301 Char: WIDTH COLOR
Configurable product Conf. prof. A Type 301 Char: WIDTH COLOR
Conf. prof. B Type 300 Char: VERSION HEIGHT
© SAP AG 2002
You can create additional variant class types. You can select a variant class type for each configuration profile. Several active configuration profiles result in a selection screen in the sales order. Do you want this? 1. Multiple classification with one class type If all the classes assigned to the configurable material have the same variant class type, you cannot define which characteristics of which class are displayed in any more detail. 2. Multiple class types - one classification per class type If all the classes assigned to the configurable material have different variant class types, you can select a class in the profile by selecting a variant class type. The characteristics of this class are then displayed. You can combine these forms as required.
© SAP AG
PLM146
6-119
Selecting Characteristics by the Organizational Area
Class 6 Org.area: E,F
Class 7 Org.area: R,T Char: Org.area VERSION E LENGTH E,F
Char: Org.area WIDTH R COLOR T
Configurable product Conf. prof. A Org.area: E,R
Conf. prof. B Org.area: F,T
Char: VERSION LENGTH WIDTH
Char: LENGTH COLOR
© SAP AG 2002
Organizational areas are defined per class type in Customizing. 1. In basic data of class, assign organizational areas to class 2. Assign organizational areas to characteristics 3. Assign organizational areas to configuration profiles Organizational areas are only relevant to the user interface: you must still assign a value to required characteristics. The authorization object for organizational areas is C_TCLS_BER. You must still assign a value to required characteristics. If you are not authorized to assign all required values, the configuration can only be saved with status "incomplete".
© SAP AG
PLM146
6-120
Reading Information from the Sales Order
Concept: If the customer is called Acme Oil Company, the pump is always for oil
Solution: Procedure that refers to a reference characteristic for the sales order (such as CUSTOMER)
Syntax:
$SELF.PUMP_FOR = 'Oil' if CUSTOMER eq 'Acme Oil Company'.
© SAP AG 2002
In dependencies, you can process any information you want from the current sales order. To do this, you need reference characteristics. For constraints, you must enter the reference characteristics in the variant class (characteristic that is hidden during value assignment). To find the name of the table field, choose the F1 help, then Technical info.
© SAP AG
PLM146
6-121
Writing Information to the Sales Order
Concept: Depending on the customer's choice (assigned values), the weight of the pump is calculated. Then it is updated in the sales order item. Solution: Procedure that refers to a reference characteristic for the sales order (such as VCSD_UPDATE).
Syntax:
$SELF.WEIGHT = 45 if PUMP_TYPE eq 'Wet pit'.
© SAP AG 2002
As of R/3 4.5, you can also use dependencies directly with individual fields in the sales order item. These are: Gross and net weight + unit Volume + unit Cumulative order quantity + sales unit Counter + factor for converting sales unit to storage unit Target quantity + target quantity unit Counter + factor for converting target quantity unit to storage unit Description For constraints, you must enter the reference characteristics in the variant class (characteristic that is hidden during value assignment). To find the name of the table field, choose the F1 help, then Technical info.
© SAP AG
PLM146
6-122
Reference Characteristics - Write Access Tables whose field values can be changed by dependencies: SDCOM
Structure for communication between SD and variant configuration
MMCOM
Structure for communication between MM and variant configuration
VCSD_UPDATE Structure for updating the sales document STPO
BOM item fields
PLPO
Operation fields in routing
PLFH
Production resource/tool fields
PLFL
Operation sequence fields
SCREEN_DEP
Dynamic change to how characteristic is displayed
© SAP AG 2002
In table SDCOM, field VKOND, you maintain variant conditions for determining surcharges and discounts during value assignment, by entering reference characteristics that refer to these fields in dependencies, or in characteristics maintenance. In purchasing, field VKOND in table MMCOM is used for maintaining variant conditions. In table PLPO, not all fields can be changed. Structure PLPO_CFMOD defines which fields can be changed.
© SAP AG
PLM146
6-123
Reference Characteristics - Read-Only Access Sales order tables whose field values can be read by dependencies: VBAK
Header data
VBAP
Item data
VBKD
Commercial data
MAEPV
Material master fields
MAAPV
Material master fields
VEDA
Contract data
VBPA_AG Partner: Sold-to Party VBPA_WE Partner: Ship-to Party VBPA_RE Partner: Bill-to Party VBPA_RG Partner: Payer © SAP AG 2002
You can use reference characteristics to refer to these sales order tables. However, dependencies have read-only access to fields in these tables. You cannot use dependencies to change field values.
© SAP AG
PLM146
6-124
Dynamic Change to User Interface Status (1)
= Override settings defined in characteristic Structure SCREEN_DEP
Options:
Hide characteristic
INVISIBLE
Characteristic ready for input, manual value assignment possible
INPUT
Characteristic displayed only, no manual value assignment
NO_INPUT
Delete dynamically set parameters
RESET
© SAP AG 2002
© SAP AG
PLM146
6-125
Dynamic Change to User Interface Status (2)
Procedure: Create multiple-value reference characteristics for structure SCREEN_DEP Create action and assign to profile (for example) Syntax: $self. = '' if
Example: reference characteristic DISPLAY with reference to SCREEN_DEP - NO_INPUT
$SELF.DISPLAY = 'PUMP_TYPE'
if .........
© SAP AG 2002
© SAP AG
PLM146
6-126
More About Object Dependencies: Unit Summary
You are now able to: Maintain table calls and function calls Link variant tables to database tables and transfer data between them Use multiple classification and class hierarchies in variant configuration Select characteristics in configuration profile maintenance by using different class types or organizational areas Read information from the sales order and use dependencies to write to fields in the sales order Use structure SCREEN_DEP for interface design
© SAP AG 2003
© SAP AG
PLM146
6-127
... More About Object Dependencies
Exercises
Unit:
More About Object Dependencies
Topic:
Linking Variant Tables
At the conclusion of these exercises, you will be able to: • Link variant tables to database tables • Transfer data from a variant table to a database table To optimize system performance for object dependencies, you want to work with database tables. You do not want to work with variant functions here. Table maintenance will be carried out in the variant table.
1
You want to link your variant table T_SEL_COND_## to an existing database table and transfer the contents. 1-1
Display the existing database table ZTPUMP_## in the Data Dictionary. Transaction SE11 – add this to your favorites.
Make a note of the field names, keys, field types or data types, and field lengths: 1. _________________________ 2. _________________________ 3. _________________________ 4. _________________________ 1-2
Check that the table is empty. Transaction SE16 – add this to your favorites.
© SAP AG
PLM146
6-128
1-3
Create the link between variant table T_SEL_COND_## and the database table. Assign fields 1 to 3, in that order, to characteristics T01_## to T03_##, in that order. Activate the link. You want to link the variant table for your selection conditions to the database table. Make sure that you do not use the wrong variant table.
1-4
Transfer the table contents of the variant table to the database table.
1-5
Check that the table contents of the database table are correct.
(The rest is optional) Insert a new entry in the variant table. Make sure that your new entry is a new combination of pump medium (pump for) and pump type. Change the casing type in one of the existing entries. Transfer the changed data to the database table, by using Insert and change. Check the result in the database table.
© SAP AG
PLM146
6-129
... More About Object Dependencies
Exercises
Unit:
More About Object Dependencies
Topic:
Object Dependencies with Information from the Sales Order
At the conclusion of these exercises, you will be able to: •
Use reference characteristics to query information in the sales order
You have included three language characteristics in the user interface for value assignment. When assigning values to these characteristics, you want to use information from the sales order or the location of the sold-to party.
2
Use a reference characteristic T09_## to create a link to table field VBPA_AGLAND1 (country of origin of sold-to party). Assign this reference characteristic to your variant class. The country of origin will be used to set the value of language characteristic T05_## automatically. Check the result by creating a sales order. Exit the sales order without saving. Order type: OR = (Standard order) Sales organization: 1000 Distribution channel: 10 Division: 00 ---------------------------------------------------------Sold-to party: 1000 Ship-to party: 1000 Purchase order number: (Your choice)
© SAP AG
PLM146
6-130
© SAP AG
PLM146
6-131
... More About Object Dependencies Exercises Unit:
More About Object Dependencies
Topic:
Object Dependencies for Changing Information in the Sales Order, Using Structure VCSD_UPDATE
At the conclusion of these exercises, you will be able to: •
Perform recursive calculations
•
Change individual fields in a sales order item by using object dependencies and reference characteristics
The weight of your material (the configurable casing) depends on the configuration. This means that you need to make it possible to change the gross and net weight in the sales order item, depending on the characteristic values assigned.
3-1
You want to use dependencies to change the weight specifications in the sales order item. To do this, you need reference characteristics for structure VCSD_UPDATE. Create reference characteristics T19N_## and T19B_##, for transferring the net and gross weight to the sales order item. (Reference to table fields VCSD_UPDATE-NTGEW and VCSD_UPDATE-BRGEW.) These reference characteristics should not be displayed on the value assignment screen. The net weight from the material master record is to be used in the calculation. Create reference characteristic T19_##, referring to table field NTGEW (net weight) in table MAAPV. (Reference to table field MAAPV-NTGEW) Assign the characteristics to your variant class.
3-2
The net weight in the material master applies to vacuum pumps. The net weight for rotary pumps is 1.5 kg more. The net weight for wing pumps is 2 kg more. The net weight for rotary pumps is 3.5 kg more. The gross weight is 10% more than the net weight.
© SAP AG
PLM146
6-132
Create a procedure that transfers the net weight and gross weight to the sales order item, depending on the values assigned. 3-3
Check the result by creating a sales order. Exit the sales order without saving.
© SAP AG
PLM146
6-133
© SAP AG
PLM146
6-134
... More About Object Dependencies Exercises Unit:
More About Object Dependencies
Topic:
Object Dependencies with Structure SCREEN_DEP and recursive calculations
At the conclusion of these exercises, you will be able to: •
Perform recursive calculations
•
Dynamically change how characteristics are displayed by using structure SCREEN_DEP
Our pump program is designed so that the maximum pump capacity derives automatically from the pump type and pump medium (pump for). You want to use procedures to calculate the maximum pump capacity and show the result in the sales order. The pump capacity must always be calculated by the system. To ensure that this happens, this characteristic must only be displayed once a value has been assigned to it. It must not then be possible to enter the value manually.
4-1
Create numeric characteristic T04_## for the pump capacity, with allowed values from 1,000 – 100,000 l/h, and assign this characteristic to your class.
4-2
Create dependencies that calculate the pump capacity according to the following rules: The pump capacity for a plunger or vacuum pump is 5,000 l/h. The pump capacity for a wet pit pump is 4,000 l/h. The pump capacity for a wing pump is 8,000 l/h. The pump capacity for a rotary pump is 6,000 l/h. The pump capacity doubles for waste water, triples for oil, and quadruples for water. (optional: Check the dependencies in configuration simulation.)
© SAP AG
PLM146
6-135
4-3
The pump capacity must always be calculated by the system. If the system has not calculated a value, the characteristic for the pump capacity must not be displayed. To do this, create a reference characteristic T10_## with reference to table SCREEN_DEP and field INVISIBLE. Once the system has calculated the pump capacity (according to the value assigned to the pump-type characteristic), the characteristic for pump capacity is displayed, but the value cannot be changed. To do this set the appropriate characteristic indicator. Test the result in the simulation or by creating a sales order (but exit the sales order without saving).
© SAP AG
PLM146
6-136
.. More About Object Dependencies
Solutions
Unit:
More About Object Dependencies
Topic:
Linking Variant Tables
1 1-1 Insert transaction SE11 (ABAP Dictionary) in your favorites: Favorites → Insert transaction (= Ctrl + Shift + F4)
or: SAP Menu → Tools → ABAP Workbench → Development → ABAP Dictionary = SE11
→ Favorites → Insert (= Ctrl + Shift + F6)
Display database table ZTPUMP_##. => Fields
1. MANDT
(Key)
Clnt 3 characters
2. FIELD1
(Key)
Char 2 characters
3. FIELD2
(Key)
Char 2 characters
4. FIELD3
Char 1 character
(The status is after the table name. This must be "active".) 1-2 Add transaction SE16 (data browser) to your favorites: Favorites → Insert transaction (= Ctrl + Shift + F4)
or: SAP Menu → Tools → ABAP Workbench → Development → Data Browser = SE16 → Favorites → Insert (= Ctrl + Shift + F6)
Check the table contents: Database table ZTPUMP_## Leave selection screen blank => empty
© SAP AG
PLM146
Enter Execute = F8
6-137
1-3 User Menu → Variant Configuration → Tools → Table Structure → Change
Variant table Database table
T_SEL_COND_## ZTPUMP_##
Enter
→ Pushbutton: Field assignment
T01_## T02_## T03_##
Field1 Field2 Field3
(use F4 help)
→ Back
Activate link and save 1-4 User menu: → Variant Configuration → Tools → Table Contents → Transfer to Database Table
Variant table T_SEL_COND_## "Insert" Execute = F8 => 8 Inserted data records 1-5
Favorites → Data Browser (SE16) Database table
ZTPUMP_## (All 8 entries exist)
(optional) New entry in variant table: For example: 01 (Oil) 02 (Rotary) 3 (Steel) Change existing entry: For example line 1: 01 (Oil) 01 (Vacuum) 3 (Steel) User menu: → Variant Configuration → Tools → Table Contents → Transfer to Database Table
Variant table T_SEL_COND_## Insert and Change Execute => Warning message: Entries already exist in database table. => 1 inserted data record, 1 changed data record Favorites → Data Browser (SE16)
Database table ZTPUMP_## (Now 9 entries exist) © SAP AG
PLM146
6-138
... More About Object Dependencies
Solutions
Unit:
More About Object Dependencies
Topic:
Object Dependencies with Information from the Sales Order
2 User Menu Classification → Master Data → Characteristics Create characteristic:
T09_##
Create Straight to Additional Data Table: VBPA_AG Field: LAND1 Leave all settings as in ABAP Dictionary Characteristics group: T-## User Menu Classification → Master Data → Classes
Change variant class:
T_VB1## 300
Characteristics:
Add T09_## (Ignore warning message)
User Menu → Variant Configuration → Configuration Profile → Change
Change configuration profile: for material T-VB1## Pushbutton: Assign dependencies = Ctrl + F9 Create procedure during assignment: 40
T_PROC_T09_##
(The country of origin will be used to set the value of language characteristic T05_## automatically.) Syntax: $self.T05_## = $self.T09_##
© SAP AG
PLM146
6-139
Check the result by creating a sales order. Exit the sales order without saving. SAP Menu → Logistics → Sales and Distribution → Sales → Order → Create = VA01 or Favorites → Create Sales Order = VA01 Order type: OR = (Standard order) Sales organization: 1000 Distribution channel: 10 Division: 00 --------------------------------------------------------Sold-to party: 1000 Ship-to party: 1000 Purchase order number: (Your choice) T-VB1##
1 piece
Value assignment screen => Language filled according to country key (Exit order without saving)
© SAP AG
PLM146
6-140
... More About Object Dependencies
3-1
Solutions
Unit:
More About Object Dependencies
Topic:
Object Dependencies for Changing Information in the Sales Order, Using Structure VCSD_UPDATE
Create reference characteristic for updating the net weight in the sales order: User Menu Classification → Master Data → Characteristics
Create characteristic:
T19N_##
Create Straight to Additional Data tab page Table: VCSD_UPDATE Field: NTGEW Leave all settings as in ABAP Dictionary Except. Select No Display (!) Characteristics group: T-## Create reference characteristic for updating the gross weight in the sales order: Create characteristic:
T19B_##
Create Straight to Additional Data tab page Table: VCSD_UPDATE Field: BRGEW Leave all settings as in ABAP Dictionary Except. Select No Display (!) Characteristics group: T-## Create reference characteristic for reading the net weight from the material master: Create characteristic:
T19_##
Create Straight to Additional Data tab page Table: MAAPV Field: NTGEW Leave all settings as in ABAP Dictionary Characteristics group: T-##
© SAP AG
PLM146
6-141
User Menu Classification → Master Data → Classes
Change variant class: Characteristics: 3-2
T_VB1## 300
Add T19_##, T19N_##, and T19B_##.
Change net weight and gross weight according to the pump type: User Menu → Variant Configuration → Configuration Profile → Change
Change configuration profile:
for material T-VB1##
Pushbutton: Assign object dependencies Create procedure in assignment: 10
T_PROC_T19_##
Syntax: $self.T19N_## = mdata $self.T19_## if $self.T02 _## = '01' , $self.T19N_## = mdata $self.T19_## + 3.5 if $self.T02 _## = '02' , $self.T19N_## = mdata $self.T19_## + 2 if $self.T02 _## = '03' , $self.T19N_## = mdata $self.T19_## + 1.5 if $self.T02 _## = '04', $self.T19B_## = $self.T19N_## * 1.1 3-3
Check the result by creating a sales order. Exit the sales order without saving. Favorites → Create Sales Order (VA01)
Order type: Sales organization: Distribution channel: Division: ---------------------------------Sold-to party: Ship-to party: Purchase order number: T-VB1##
OR = (Standard order) 1000 10 00 1000 1000 (Your choice) 1 piece
On the value assignment screen: Net weight (according to material master record) = 2,500 is displayed Net © SAP AG
PLM146
6-142
weight and gross weight of the item are under Hidden characteristics. A value only appears here if the pump type has an assigned value. Weights also in order overview. Here, the weight is always specified. If no pump type was assigned, the weights are taken directly from the material master record. With a pump type, the values calculated by the procedure are shown. (In the order overview table, scroll right to relevant columns.)
© SAP AG
PLM146
6-143
... More About Object Dependencies
Solutions
Unit:
More About Object Dependencies
Topic:
Object Dependencies with Structure SCREEN_DEP
4-1 User Menu Classification → Master Data → Characteristics
Create numeric characteristic T04_##. Pump capacity in l/h T-## 1 (Released) NUM 6 characters Maybe unit of measure l/h Select Single-value Values: 1000 – 100,000 And assign to class: User Menu Classification → Master Data → Classes
Change variant class:
T_VB1## 300
Characteristics:
Add T04_##
4-2 User Menu → Variant Configuration → Configuration Profile → Change
Change configuration profile:
for material T-VB1##
Pushbutton: Assign object dependencies
© SAP AG
PLM146
6-144
Create procedure in assignment: 20 T_PROC_T402_##
© SAP AG
PLM146
6-145
Syntax:
$self.T04_## = 5000 if $self.T02 _## = '01' , $self.T04_## = 4000 if $self.T02 _## = '04' , $self.T04_## = 8000 if $self.T02 _## = '03' , $self.T04_## = 6000 if $self.T02 _## = '02'
Create a second procedure or include its contents in the first procedure. Make sure the sequence is correct! Create procedure in assignment: 30 T_PROC_T0401_## Syntax:
$self.T04_## = $self.T04 ## * 2 if $self.T01_## = '03', $self.T04_## = $self.T04 ## * 3 if $self.T01_## = '01', $self.T04_## = $self.T04 ## * 4 if $self.T01_## = '02'.
Configuration simulation:
T-VB1## 1000 PP01
=> Final state (Pump capacity only if pump type is assigned.) 4-3
Create reference characteristic for hiding characteristics. User Menu Classification → Master Data → Characteristics
Create characteristic: T10_## Straight to Additional Data tab page Table: SCREEN_DEP Field: INVISIBLE Description: SCREEN_DEP invisible Characteristics group: T-## No Display Rest default User Menu Classification → Master Data → Classes
© SAP AG
Change variant class:
T_VB1## 300
Characteristics:
Add T10_##.
PLM146
6-146
Hide using dependencies for characteristic "pump capacity" if this characteristic has no assigned value: User Menu → Variant Configuration → Configuration Profile → Change
Change configuration profile: Material T-VB1## Pushbutton: Assign object dependencies Create procedure in assignment: 50
T_PROC_T10_##
Syntax: $self.T10_## = 'T04_##' if not $self.T04_## specified (Make sure the sequence is correct! Calculate the pump capacity first, before processing this procedure!) Once the system has calculated the pump capacity (if a value is assigned to the pump-type characteristic), the characteristic for pump capacity is displayed, but the value cannot be changed. Change characteristic:
T04_##
Additional data: Indicator Not ready for input Check the result in the simulation or in the sales order. (See above for solution.)
© SAP AG
PLM146
6-147
Configuration Scenarios with BOM Explosion
Contents:
Planned/Production Order Scenario with BOM Explosion Scenario Sales Order
Overview of scenario Combinations of configuration profiles Item category determination in SD, transfer of requirements, and variant configuration Simple SET processing with SET in SET Multilevel configuration and dependencies for updating configuration Problems with $ROOT in the sales order scenario $SUM_PARTS and $COUNT_PARTS © SAP AG 2002
© SAP AG
PLM146
7-148
Configuration Scenarios with BOM Explosion: Unit Objectives
At the conclusion of this unit, you will be able to: Maintain multilevel configuration structures with scenarios with BOM explosion Maintain dependencies in this environment to: Update the values assigned to individual configuration profiles Explode BOMs
Identify more aspects of modeling and configuration that you can use to improve system performance
© SAP AG 2002
© SAP AG
PLM146
7-149
Configuration Scenarios with BOM Explosion: Course Overview Diagram
Course Overview
1
More About Object Dependencies
6
Variant Configuration: Consolidation
2
Configuration Scenarios with BOM Explosion
7
Control Options in the Configuration Profile
3
Configuration Scenarios with Order BOMs
8
Configuration Scenarios Without BOM Explosion
4
Other Variant Configuration Tools
9
More About Constraints
5
Conclusion
10
© SAP AG 2002
© SAP AG
PLM146
7-150
Configuration Scenarios with BOM Explosion: Business Scenario
Your multivariant product is a collection of configurable products (assemblies) from the customer's point of view. For this reason, this is the structure you want to show in sales and distribution: It must be possible to assign values to individual configurable components.
© SAP AG 2002
© SAP AG
PLM146
7-151
Configuration Scenarios with Process Planned/Production Order: Topic Objectives
At the conclusion of this topic, you will be able to: Maintain multilevel configuration structures with scenarios with BOM explosion and process planned/production order Maintain dependencies for this environment Identify more aspects of modeling and configuration that you can use to improve system performance
© SAP AG 2002
© SAP AG
PLM146
7-152
IDES Example: Planned/Production Order with BOM Explosion
P-502
Rtg
(Plnd/prod. M-L)
Casing
Shaft assy
(Plnd/prod. M-L)
(Plnd/prod. M-L)
Characteristics: Pump for Pump type Color
Rtg
Characteristics: Pump for Mode Pump type ...
Characteristics: W. pressure Range Connection
Packaging (Plnd/prod. M-L)
Char.: Packaging
SD relevant
Purch. part Shaft (No profile)
Rtg
© SAP AG 2002
© SAP AG
PLM146
7-153
Configuration Scenario: Planned/Production Order with BOM Explosion: Overview Sales Master data BOM Value assignment on all levels Super BOM (Master data BOM)
Sales order
P-502 (Pump)
10 P-502 (Pump)
Multilevel, interactive configuration
Sales order P-502 (Pump) Casing
Shaft assy
Packaging (SD relevant)
Pump for
Oil
Casing Color
Red
Packaging Packaging ...
20 (10) Packaging
Wood
Also for items not relevant to sales Values for Pump, Casing Shaft, and Packaging
Shaft assy
Connection
Round 2
© SAP AG 2002
Multilevel configuration in sales order: Configuration: - Multilevel, interactive configuration of all configurable items (not only sales-relevant items) in sales order Characteristic values can be saved for each configurable component. Pricing for the header material Sales BOM and production BOM - You can use separate BOMs for sales (5) and production (1). - You can also combine the two, by defining sales-relevant items in a universal BOM (3).
© SAP AG
PLM146
7-154
Configuration Scenario: Planned/Production Order with BOM Explosion: Important Points
In the sales order: - The header object is configured interactively - All items (not only sales-relevant items) are configured interactively - Across: Any number of levels (multilevel BOM explosion) Two levels if present (single-level BOM explosion) The result is one or more lines in the sales order linked to a main item. However, only sales-relevant items appear in the sales order. The values assigned to all items are saved with reference to the main item. The main item generates independent requirements.
© SAP AG 2002
If you want to configure across any number of levels, define all configuration profiles with scenario: Planned/production order with multilevel BOM explosion and from the second level Planned/production order scenarios with single-level or multilevel BOM explosion. If you want to restrict the configuration to two levels, use a configuration profile with scenario: Planned/production order with single-level BOM explosion at header level, and from the second level Planned/production order scenarios with single-level or multilevel BOM explosion.
© SAP AG
PLM146
7-155
Combinations of Configuration Scenarios Useful No profile No BOM explosion Plnd/prod. order
SingleSingle-level or multilevel BOM explosion Planned/ Planned/production order
Same as No profile
Single-level explosion Plnd/prod. order
Single-level or multilevel BOM explosion and configuration across two or more levels *)
Multilevel explosion Plnd/prod. order
Single-level or multilevel BOM explosion and configuration across two or more levels *)
Single-level explosion Order BOM
Same as No profile *)
Multilevel explosion Order BOM
Same as No profile *)
Single-level explosion Sales order
Same as No profile *)
Multilevel explosion Sales order
Same as No profile *)
*) = Only the profile for the header material determines whether single-level or multilevel BOM explosion © SAP AG 2003
When a configuration profile for a material is selected, the system first searches for all active profiles. Then it searches for the $parent material. If there is no $parent material (in other words, the material is the header), all active profiles are displayed on the profile selection screen. If a $parent material exists, only the profiles that are allowed in combination with the $parent profile are displayed on the profile selection screen.
© SAP AG
PLM146
7-156
Configuration Scenario: Planned/Production Order with BOM Explosion: Transfer of Requirements Master data
SD: Sales order
Super BOM and Material master
Sales BOM $root
Pump Pump (Item cat. grp 0002)
Shaft (Item cat. grp 0002)
Casing
Casing (Item cat. grp 0002)
Shaft
MRP: BOM Explosion Production BOMs $root Pump Casing
Shaft
$parent
BOM explosion for: Pump Values for pump Shaft Values for pump and shaft Casing Values for pump and casing © SAP AG 2003
Item category group 0002 for the header material (in the standard system) ensures that the values assigned to the header material can be referred to as $root in both SD and MRP. The BOM explosion in MRP can use: The values assigned to the pump to explode the BOM of the pump The values assigned to the pump and the shaft to explode the BOM of the shaft The values assigned to the pump and the casing to explode the BOM of the casing The sales relevancy and item category group of the items do not affect this in the standard system. A configurable header material with item category group 0004 cannot be used as a header material in the scenario 'Planned/Production Order With BOM explosion' in the standard system.
© SAP AG
PLM146
7-157
Item Category Determination and Variant Configuration (Standard Settings) Header material
1.
Item category group: generates item category:
2.
Item category group: generates item category:
0002 TAC
0002 TAE
NORM TAE
0004 TAE as for 2.
as for 2.
Header material
3.
Item category group: generates item category:
4.
Item category group: generates item category:
0004 TAM
0002 TAC as for 2.
NORM TAN
0004 TAM as for 4.
© SAP AG 2002
See Customizing: Sales Search for Assign item categories In this environment, the item categories and item category groups are defined. See SAP Library: -> LO -> LO General -> Variant Configuration search for -> Item categories -> Graphic 1 (and following)
© SAP AG
PLM146
7-158
Configuration Profiles on Several Levels: Value Assignment
P-502 (multilevel BOM)
Casing
Shaft assy
(multilevel BOM)
(multilevel BOM)
Characteristics: Pump for Pump type Color: Blue
Chars: W. pressure Range Connection
Characteristics: Pump for Mode Pump type ...
Packaging (multilevel BOM)
Char.: Packaging: Wood
Task: If the color of the casing is BLUE, the packaging must be wood. © SAP AG 2003
Configurable materials in the BOM for pump P-502 (participants can fill out the table): Material type Item cat. group Procurement type Sales-relevance (BOM) Pump P-502 Casing 500-100 Shaft (assy) 502-300 Packaging 500-800
© SAP AG
PLM146
7-159
System Performance and Configuration General hints for all scenarios: Configurator ++ On request + On enter - - Permanent View
Settings
Pricing (including procedures in group SAP_PRICNG) + On request - Permanent View
Navigation in structure ++ Navigation button
not
Settings
- Configuration structure - Result screen
© SAP AG 2003
© SAP AG
PLM146
7-160
BOM Explosion (MRP) in this Environment (1)
P-502 (Plnd/prod. M-L)
$root
Shaft assy (Plnd/prod. M-L)
?
Characteristics: Pump for Mode Pump type ...
Chars: W. pressure Range Connection
Shaft
$parent
(No profile)
© SAP AG 2002
© SAP AG
$self.
PLM146
7-161
BOM Explosion (MRP) in this Environment (2)
P-502 (Plnd/prod. M-L)
Shaft assy (Plnd/prod. M-L)
Chars: W. pressure Range ...
Shaft (Plnd/prod. M-L)
Characteristics: Pump for Mode Pump type ...
Values for $root or $parent Not possible
Chars: Connection $root $parent
? $self.
© SAP AG 2002
© SAP AG
PLM146
7-162
System Performance and Configuration Structure, BOM, and Task List
General hints for all scenarios: Few configuration levels (also reduces time for user navigation) Keep configuration model small: Several small models are better than one large model Separate BOMs
for configuration in SD and for MRP and production order (Standard: PP01, SD01)
In task list: alternative sequences instead of several operations with the same selection conditions
© SAP AG 2002
Few configuration levels Large structures require more time to explode during the configuration process. It also takes the user more time to navigate around them. Separate BOMs You can use the BOM application and the selection ID for alternative selection, to control how the BOM is found according to the BOM usage in SD, MRP, and production control. To improve system performance, you need to consider whether to restrict the number of levels in the BOM explosion in SD. You can do this by changing existing BOM applications or creating new ones. (For example, SD01: Priority 1, BOM usage 3 (universal), no other priorities) Task list If you have several consecutive operations with the same selection conditions: - You can group them together in an alternative sequence - You assign the selection conditions one, to the entire sequence - You may need to add a dummy operation in the standard sequence
© SAP AG
PLM146
7-163
Configuration Scenarios with Sales Order: Topic Objectives
At the conclusion of this topic, you will be able to: Maintain multilevel configuration structures with sales order scenarios: Only for header material (SET processing) Possibly for additional assemblies (SET in SET) also Maintain dependencies in this environment Use the procedural expressions $SUM_PARTS and $COUNT_PARTS
© SAP AG 2002
© SAP AG
PLM146
7-164
IDES Example: with Sales Order Process
PC: T-PC ... (Sales order)
Minitower casing
Characteristics: Casing type No. of CD drives Software Itm cat. grp ... 0004
CD drive 1
Special casing
CD drive 2
(No BOM explosion) Characteristics: Dimensions Number Slots Inserts ... SD Rtg relevant
(Order BOM)
Characteristics:
Software 1 Software 2
SD relevant
Software 3 Rtg
© SAP AG 2002
© SAP AG
PLM146
7-165
Configuration Scenarios with Sales Order: Overview Super BOM (Master data BOM)
Sales
Several sales order items Char. value assgmt Manual changes
T-PC... (PC)
Multi-level, interactive configuration in sales order
Casing SD relevant CD drive SD relevant Software SD relevant Color SD relevant
Sales order T-PC... Casing type Hard disk
MT 10 GB
Casing Height
50 cm
Only salesrelevant BOM items
Manual changes allowed
Sales order 10 T-PC.. (PC) 20 (10) Casing 30 (10) CD drive 40 (10) Software 50 (10) Material from class
Values for PC, Casing, CD drive, …
CD drive Property
Value1
© SAP AG 2002
Sales order process = "SET" processing Manual changes to items are saved in the sales order. Changes to master data do not affect order-specific item changes. Pricing and requirements transfer Item category group 0004 (in the standard system) means that pricing is calculated and requirements are transferred for the individual components of the set (not on the top level). Material requirements are only transferred to PP if the configuration is consistent and complete. Requirements are only transferred for the subordinate items that are relevant to sales. (These are also the items that appear in the sales order.)
© SAP AG
PLM146
7-166
Sales Order Process: Change of $root Object
Master data
SD: Sales order
Super BOM and Material master
Sales BOM $root
PC PC (Item cat. grp 0004)
Casing
Casing Drive (Item cat. grp 0002) (Item cat. grp 0002)
Drive
MRP: BOM Explosion Production BOMs Drive
$root
Casing
$root
$ROOT in MRP generates requirements © SAP AG 2002
Sales order process = "SET" processing Transfer of requirements - $root Item category group 0004 (in the standard system) means that requirements are transferred for the individual components of the set. The MRP run interprets the materials for which planned independent requirements are transferred as $root. Selection conditions for BOM items of these assemblies and subordinate assemblies (Drive and Casing in the example) can use $root to refer to characteristics of the material of the assembly that generates planned independent requirements. The values assigned to the PC are not available in MRP. In the sales order, however, $root is always the header material - the material for which you created the sales order.
© SAP AG
PLM146
7-167
Configuration Scenario Sales Order: Important Points
In the sales order, you configure the following interactively: Header object All sales-relevant items, across: Two levels Any number of levels The result is several lines in the sales order, linked to the main item Pricing can be set at main item level or at subitem level Transfer of requirements can only take place at subitem level.
© SAP AG 2006
If you want to configure across any number of levels, use a configuration profile with scenario: multilevel BOM explosion at header level. If you want to restrict configuration to only two levels, use a configuration profile with scenario: single-level BOM explosion at header level.
© SAP AG
PLM146
7-168
Combinations of Configuration Scenarios
No profile No BOM explosion Plnd/prod. order
SingleSingle-level or multilevel BOM explosion sales order
© SAP AG 2006
Cannot be used, since value assignment using header material does not exist in MRP Can be used: see relevant unit
Single-level explosion Plnd/prod. order
Same as no profile, cannot be used (see above)
Multilevel explosion Plnd/prod. order
Same as no profile, cannot be used (see above)
Single-level explosion Order BOM
Can be used: see relevant unit
Multilevel explosion Order BOM
Can be used: see relevant unit
Single-level explosion Sales order
Single-level or multilevel BOM explosion and configuration across two or more levels *)
Multilevel explosion Sales order
Single-level or multilevel BOM explosion and configuration across two or more levels *)
*) = Only the profile for the header material determines whether single-level or multilevel BOM explosion takes place
When a configuration profile for a material is selected, the system first searches for all active profiles. Then it searches for the $parent material. If there is no $parent material (in other words, the material is the header), all active profiles are displayed on the profile selection screen. If a $parent material exists, only the profiles that are allowed in combination with the $parent profile are displayed on the profile selection screen.
© SAP AG
PLM146
7-169
IDES Example: "SET in SET" All SD relevant
Handbook 1 Handbook 2 Handbook 3 Handbook ...
PC package (Sales order)
Class Monitor
Class Printer
Packaging (...)
PC: T-PC ... (Sales order)
Casing Minitower
CD drive 1
Special casing
CD drive 2
(No BOM explosion) Chars: ...
(Order BOM)
Characteristics: With printer? With monitor? Itm cat. grp ... 0004
Chars: ...
Chars : ...
Characteristics: Casing type Itm cat. grp ... 0004
Software 1 Software 2 Software 3
© SAP AG 2003
© SAP AG
PLM146
7-170
Item Categories for Scenarios with Sales Order
Header material
Sales order:
0002 TAC
0002 TAE
NORM TAE
10
0004 TAE
Header material 0004 TAM
0002 TAC
NORM TAN
PC package
TAM
20 (10) Monitor 30 (10) PC
TAN TAM
40 50 60 80
TAC TAC TAN TAN
(30) Casing (30) CD drive (30) Software (30) CPU
40 (10) Printer
TAC
0004 TAM
© SAP AG 2002
See Customizing: Sales Search for Assign item categories In this environment, the item categories and item category groups are defined. See SAP Library: -> Logistics -> LO Logistics General -> Variant Configuration -> Configurable Materials in Sales Documents -> Item Categories for Configurable Materials -> Graphic 1 (and following)
© SAP AG
PLM146
7-171
BOM Explosion (MRP) in this Environment PC package (Sales order)
Handbook 1 Handbook 2 Handbook 3 Handbook ...
Class Monitor
Class Printer
Packaging
PC: T-PC ...
CD drive 1
Special casing
CD drive 2
(No BOM explosion)
(Order BOM)
Not possible
Characteristics: Casing type Itm cat. grp ... 0004
Software 1 Software 2
$root
$self
...
(...)
(Sales order)
Casing Minitower
Characteristics: With printer? With monitor? Itm cat. grp ... 0004
Software 3
? Not possible
© SAP AG 2003
In this example, item category group 0004 for materials PC package and PC generate item category TAM in the sales order. According to the standard settings in Customizing for Sales and Distribution, no requirements are transferred for these "SET materials". In this example, planned independent requirements are transferred for the top level (possibly configurable) components outside the gray (online the red) area. These materials are the $root materials in MRP.
© SAP AG
PLM146
7-172
The Function: $sum_parts
Concept: several
A numeric characteristic is to be summed across configurable materials in a configuration structure. Example: Total weight Total dimensions PC: Number of slots and
inserts
Solution:
Procedure with $sum_parts Example.:
Prerequisite:
$self.TOTAL_WEIGHT = $sum_parts ($self, PART_WEIGHT)
- Multi-level configuration - After BOM is exploded
See SAP Library
© SAP AG 2006
© SAP AG
PLM146
7-173
The Function: $count_parts
Concept: You want to sum the total number of components in a configuration structure to process this result further.
Solution: Procedure with $count_parts Example: $self.NUMBER_PARTS = $count_parts($self
Prerequisites:
- Multilevel configuration - Same unit for all components - After BOM is exploded - You need the sum of all components - You need the sum on the first level See SAP Library
© SAP AG 2006
© SAP AG
PLM146
7-174
Configuration Scenarios with BOM Explosion: Unit Summary (1)
You are now able to: Maintain multilevel configuration structures with scenarios with BOM explosion Maintain dependencies for this environment to: Update the values assigned to individual configuration profiles Explode BOMs Identify more aspects of modeling and configuration that you can use to improve system performance
© SAP AG 2002
© SAP AG
PLM146
7-175
Configuration Scenarios with BOM Explosion: Unit Summary (2)
You are now able to: Model multilevel configuration structures with scenarios that have BOM explosion and either process planned/production order or process sales order (including "SET in SET") Explain and set up item category determination and item category groups Explain special features for scenario process sales order Optimize system performance regarding: Configuration Configuration structure BOM Routing Use $part_of, $subpart_of, $sum_parts, and $count_parts
© SAP AG 2003
© SAP AG
PLM146
7-176
Configuration Scenarios with–
Exercises
Unit:
Configuration Scenarios with BOM Explosion
Topic:
Planned/Production Order Scenario with Multilevel BOM Explosion
At the conclusion of these exercises, you will be able to: • Create sales orders for configurable materials in this scenario, and execute processing in MRP and so on The exercise also covers: • Checking the master data required • Creating the characteristics, variant class, and configuration profiles • Creating constraints and other object dependencies The configurable material "casing" is now an assembly in a configurable pump. In sales and distribution, you want to be able to assign values to the assembly. You need to create dependencies to model multilevel configuration. 1-1
Check the master data that already exists for modeling the configurable pump T-VPU##. 1-1-1 Display material master record T-VPU## with the basic data, sales, and MRP views. Use the following organizational levels: Plant: 1000 Sales organization: 1000 Distribution channel: 10 1-1-2 In change mode, display the BOM for your pump with usage 3 in plant 1000. Compare it with the slide "2. Customer Example Part Structure (Pump Without Casing)" in the appendix. Add the configurable assembly (T-VB1##) to the BOM, if it is not already there.
© SAP AG
PLM146
7-177
1-2
Create a configuration profile with a variant class for the configurable pump. 1-2-1 Create the characteristics required (copy from group 00): Length of metal sheet (cm)
T13_## Values:
Width of metal sheet (cm)
T14_## Values:
Area of metal sheet (m2)
10 – 100 10 – 100
T15_## Values:
0.01 - 1
1-2-2 Create variant class T_VPU## for your configurable pump and assign the characteristics you just created to this class. 1-2-3 Create a configuration profile for your configurable pump T-VPU##. Use the name N-BOM for your profile. Assign your configurable pump to variant class T_VPU##. Set the following parameters: – Multilevel BOM explosion – PP01 (BOM application) – No availability check – No restrictions for BOM explosion – All screens, including configuration browser – (Rest: default) 1-2 -4 Check the configuration profile in the simulation. Can you assign values to your casing when configuring the pump? __________________________ Why?
__________________________
1-2-5 Create another configuration profile for your configurable casing TVB1##. (Do not change the existing profile, because it will be needed again.) Use the name 1-BOM for your profile. Do you need to reassign variant class T_VB1##? Set the following parameters: – Single-level BOM explosion – All object dependencies of the first profile – Rest as in 1-2-3
© SAP AG
PLM146
7-178
Use the copy function for assigning object dependencies: Ctrl Y + Ctrl C + Ctrl V
© SAP AG
PLM146
7-179
1-3
Optional The BOM of the pump contains a variable-size item for sheet metal ST37 (100-700). 1-3-1 Create and assign dependencies to ensure that the following formula is used to calculate the area (Size 3) from the other 2 sizes – length and width: Area = Length x Width / 10,000 (Division by 10,000 is necessary to convert the length and width in cm to the area in m2.) 1-3-2 Assign dependencies to the BOM so that variable-size item data is overwritten according to the values assigned. 1-3-3 Check the result in the simulation.
1-4
Create and save a sales order with the following data: Order (OR)
Sold-to party: = Ship-to party: Purchase order no.:
1000 10 00 1000 Your choice
Material No./Qty.
T-VPU##
1 piece
Assign values to the header material and the configurable assembly. Can you assign values to the assembly? Must this assembly appear as an item in the sales order? Save your sales order and make a note of the number. Do an MRP run for configurable pump T-VPU##. To do this, use single-item planning for sales order with the number of your sales order. Display the stock/requirements list for the following materials: T-VPU## T-VB1## Single-item planning: Transaction MD50 – add this to your favorites. Stock/requirements list: Transaction MD04 – add this to your favorites.
© SAP AG
PLM146
7-180
Display the relevant planned orders with their values and account assignment.
© SAP AG
PLM146
7-181
Configuration Scenarios with BOM Exercises Unit:
Configuration Scenarios with BOM Explosion
Topic:
Process Sales Order with Multilevel BOM Explosion
At the conclusion of these exercises, you will be able to: • Set up and execute SET processing ("sales order" processes) The exercise also covers: • Changing a material master and BOM for SET processing and creating configuration profiles • Creating constraints • Creating sales orders You now want to supply the pump as a set or package. To do this, you change the existing structure. You need to decide which dependencies from the configuration profile – for the Planned/production order scenario with multilevel BOM explosion – you need to re-use. The task also gives you the option of creating further constraints (optional). 2-1
Using the structure from the previous unit, you want to model SET processing. 2-1-1 Change material master record T-VPU## to stop the header material from generating planned independent requirements. Use the following organizational levels: Plant: 1000 Sales organization: 1000 Distribution Channel: 10 2-1-2 Change the BOM for your pump with usage 3 in plant 1000, so that all of its components are relevant to sales. 2-1-3 Create a configuration profile for your configurable pump T-VPU##, using the scenario "sales order with multi-level BOM explosion". Give the profile a higher priority than the profile you created in the previous unit.
© SAP AG
PLM146
7-182
Use the name N-SET for your profile.
© SAP AG
PLM146
7-183
Set the following parameters: – Sales Order (SET) – Multilevel BOM explosion – PP01 (BOM application) – No availability check – No restrictions for BOM explosion UserInterf browser Sales order
– All screens, including configuration – No manual changes allowed – (Rest: default)
Do you need to assign a class again? Why? 2-2
Optional Create dependencies that map the following interdependencies in multilevel value assignment: Assign all the characteristics you create here to the variant class for the pump. Some of these characteristics will be used in subsequent exercises, but you can create them later instead. 2-2-1
Create a characteristic for the "range". T18_##
Values:
01
Open 02 Closed
The range must be closed if the pump is for oil. Which types of dependency can you use to do this? Check the result in the simulation. 2-2-2 Create characteristics for the "maximum working pressure (bars)": T17_##
Values:
2 – 10
Values:
01
and the "connection": T11_## angled flange
© SAP AG
02
Round flange (2-hole)
04
Round flange (4-hole)
XX
Other
PLM146
Right-
7-184
If the maximum working pressure is over 8 bars, the pump must be a plunger pump with a 4-hole round flange as the connection. Which types of dependency can you use to do this? Check the result in the simulation.
© SAP AG
PLM146
7-185
2-2-3 Create a characteristic for the "rotation direction": T16_## Clockwise
Values:
02
Counter-clockwise
03
Both
01
If the pressure cover in the BOM for the pump is item ‘0055’, the rotation direction must be "Both". Which types of dependency can you use to do this? Check the result in the simulation. 2-3
Create and save a sales order with the following data: OR 1000 10 00 Sold-to party: = Ship-to party: Purchase order no.:
1000 Your choice
Material No. / Qty
T-VPU##
1 piece
Select the configuration profile for SET processing. In which order are the profiles shown? Why? Assign values to the header material and the configurable assembly. Can you assign values to the assembly? ____ Must this assembly appear as an item in the sales order? ____ Which configuration profile lets you assign values to the assembly? _______
Why this profile and not the others?
__________
Which items appear in the sales order? __________ What is the default item category for the individual items? ___________
Why are there problems with components? __________
© SAP AG
PLM146
7-186
In the sales order, check the weights of: The casing (T-VB1##) The bearing case (100-500) Where does this data come from? Save your sales order and make a note of the number. Which configurable materials transfer independent requirements as a result of this sales order? ____________
© SAP AG
PLM146
7-187
Configuration Scenarios with BOM E
© SAP AG
PLM146
7-188
xpl
1-1
Solutions
Unit:
Configuration Scenarios with BOM Explosion
Topic:
Planned/Production Order Scenario with Multilevel BOM Explosion
Check the modeling of the configurable pump T-VPU##:
1-1-1 User menu Material → Display → Display Current Material T-VPU##: Views:
Basic data 1 + 2 Sales: Sales Org. Data 1 + 2 Sales: General / Plant Data MRP 1 -4
Organizational levels:
Plant: 1000 Sales organization: 1000 Distribution channel: 10
1-1-2 User menu Bill of Material → Material BOM → Display Change BOM with usage 3 plant 1000. Compare with graphic (see appendix). Add new material item: L
© SAP AG
PLM146
T-VB1##
1 piece
7-189
1-2 1-2-1 User menu → Classification → Master Data → Characteristics Create single-value characteristics (copy from group 00 as much as possible): T13_##
Description: Length of metal sheet (cm) Numeric Characteristics group: T-## Unit of measure: cm Values:
T14_##
10 – 100
Description: Width of metal sheet (cm) Numeric Characteristics group: T-## Unit of measure: cm Values:
T15_##
10 – 100
Description: Area of metal sheet (m2) Numeric Characteristics group: T-## Unit of measure: m2 Values:
0.01 – 1
1-2-2 User menu → Classification → Master Data → Classes Create a variant class:
T_VPU## 300 Variant class for pump assembly 1 (Released) T-##
Characteristics:
© SAP AG
T13_## T14_## T15_##
PLM146
7-190
1-2-3 User menu → Variant Configuration → Configuration Profile → Create Create a configuration profile for the pump T-VPU##. Prof. Name: Class assignment
N-BOM
300
T_VPU##
Configuration initial screen: Configuration parameters – Process: Planned/prod. order – Multilevel BOM explosion – PP01 (BOM application) – No availability check – No restrictions for BOM explosion User interface browser
– All screens, including configuration In other words, without configuration
structure – (Rest: default) 1-2-4 Configuration simulation (see previous exercises) You cannot assign values to the casing, because configuration scenarios planned/production order without BOM explosion are inactive under configuration scenarios planned/production order with BOM explosion. 1-2-5 User menu → Variant Configuration → Configuration Profile → Change Create another configuration profile for casing T-VB1##. (Do not change the existing profile.) New entries Profile name: Class assignment
1-BOM
300
already exists
Copy object dependencies from the first profile for the casing. Session 2: Display configuration profile 0-BOM for your material TVB1##. Here, select the list of dependencies with Ctrl + Y then
© SAP AG
PLM146
7-191
copy with Ctrl + C. Session 1: → Assign dependencies (= Ctrl + F9 Here: Insert dependencies using Ctrl +V Resort (Sort sequence from profile 0-BOM)
© SAP AG
PLM146
7-192
Configuration initial screen: Configuration parameters
– Process: Planned/prod. order –
BOM explosion: single level – PP01 (BOM application) – No availability check UserInterf
© SAP AG
– All views, including configuration browser – (Rest: default)
PLM146
7-193
1-3
Optional 1-3-1 Create a constraint that uses the following formula to calculate the area (Size 3) from the other 2 sizes – length and width: Area = Length x Width / 10,000 Create constraint net T_CN1_VPU## with constraint T_CS1_VPU##: User menu Variant Configuration → Dependency → Dependency Net → Create Create constraint net:
T_CN1_VPU## Description is your choice 1 (Released) T-## (group)
Assign and create constraint at the same time: T_CS1_VPU## Description: Size calculation T-## (group) objects:
(300)T_VPU##
where
L = T13_##; W = T14_##; A = T15_##.
restriction:
A = L * W / 10000.
inferences:
A, L, W Save all and release
Assign constraint net to the configuration profile of the pump: User Menu → Variant Configuration → Configuration Profile → Change Change configuration profile:
for material T-VPU##
Pushbutton: Assign dependencies = Ctrl + F9 Assign constraint net T_CN1_VPU##
© SAP AG
PLM146
7-194
1-3-2 Assign dependencies to the BOM so that variable-size item data is overwritten according to the values assigned. Create reference characteristics with reference to fields ROMS1, ROMS2, and ROMEN in table STPO. (Not necessary if dependencies work with reference characteristics of group 00: TROMS1_00, TROMS2_00, and TROMEN_00.) User Menu → Classification → Master Data → Characteristics Create reference characteristic: TROMS1_##
Additional data: STPO – ROMS1 Characteristics group: T-##
TROMS2_##
Additional data: STPO – ROMS2 Characteristics group: T-##
TROMEN_##
Additional data: STPO – ROMEN Characteristics group: T-##
User Menu Bill of Material → Material BOM → Change T-VPU## Plant: 1000 Usage: 3 Item 30 (100-700 = metal sheet ST37 as variable-size item) ...(Item Overview) → Pushbutton or Extras → Object dependencies → Assign Assign and create procedure at the same time 10
T_PROC_ROMS_##
$self.TROMS1_## = T13_## , $self.TROMS2_## = T14_## , $self.TROMEN_## = T15_## . (Alternatively you can work with the reference characteristics for group 00.) 1-3-3 Configuration simulation (see previous exercises)
© SAP AG
PLM146
7-195
1-4
Create and save sales order SAP Menu → Logistics → Sales and Distribution → Sales → Order → Create = VA01 or Favorites → Create Sales Order = VA01 Order type: Sales organization: Distribution channel: Division: ---------------------------------Sold-to party: Ship-to party: Purchase order number:
OR = (Standard order) 1000 10 00 1000 1000 (Your choice)
T-VPU##
1 piece
Assign values to the header material and the configurable assembly.
Values are assigned to assembly T-VB1## via configuration profile 1-BOM. (On value assignment screen, see Environment → Configuration Profile.) The assembly need not appear as an item in the sales order. Save your sales order and make a note of the number. (Ignore the pricing error and any other incompleteness messages.) Execute single-item planning for sales order with the number of your sales order.
Transaction MD50 (Planning for sales order) and Transaction MD04 (Display stock/requirements list) Add both transactions to your favorites: Favorites → Insert transaction (= Ctrl + Shift + F4) Planning for sales order:
Sales order number Item 10 Keep defaults + confirm
Stock/requirements lists for materials: T-VPU## T-VB1## (both in plant 1000) (Start with one)
Overview
Double-click on planned order
Details of MRP element
Pushbutton: Display element
Display planned order (header)
Values
© SAP AG
PLM146
7-196
Pushbutton: Configuration Account assignment Tab: Assignment
© SAP AG
PLM146
7-197
Configuration Scenarios with BOM Explosion
2-1
Solutions
Unit:
Configuration Scenarios with BOM Explosion
Topic:
Process Sales Order with Multilevel BOM Explosion
Model SET processing: 2-1-1 Change material master record T-VPU## to stop the header material from generating independent requirements. User menu Material → Change → Immediately Use the following organizational levels: Plant: 1000 Sales organization: 1000 Distribution channel: 10 Screen: Sales:
Sales Org. Data 2 Item Category Group: 0004
2-1-2 Change BOM for pump to make all components sales relevant. User Menu Bill of Material → Material BOM → Change BOM
Material: Usage Plant
T-VPU## 3 1000
Pushbutton: Select all (= Ctrl + F3) Pushbutton: Item (= F7) Tab: Status/long text Set sales-relevant indicator (Continue with Next Item = Shift + F6) 2-1-3 User Menu → Variant Configuration → Configuration Profile → Change Material T-VPU## New Entries 02 N-BOM 01 N-SET © SAP AG
300 300
(Released) (Released) PLM146
7-198
Parameters of profile in detail: – Sales order process – Multilevel BOM explosion – PP01 (BOM application) – No availability check – No restrictions BOM explosion UserInterf browser
– All screens, including configuration In other words, without configuration
structure Sales order
– No manual changes allowed – (Rest: default)
Do you need to assign a class again? No Why? The link is at material level, not at profile level 2-2
Optional General: User menu Variant Configuration → Dependency → Dependency Net → Create Create constraint net
T_CN2_VPU## 1 (Released) T-## (group)
User Menu → Variant Configuration → Configuration Profile → Change Change configuration profile N-SET
for material T-VPU##
Pushbutton: Assign object dependencies Assign constraint net T_CN2_VPU##
© SAP AG
PLM146
7-199
2-2-1
The range must be closed if the pump is for oil. User Menu → Classification → Master Data → Characteristics Create characteristic "Range": T18_##
T-## (group) 1 Released Character format (CHAR) 2 characters single value
Values:
01
Open 02 Closed
User Menu → Classification → Master Data → Classes Change variant class:
T_VPU## 300 Char:
Add T18_##.
User menu Variant Configuration → Dependency → Dependency Net → Change Change constraint net T_CN2_VPU## Assign and create constraint at the same time: T_CS_VPU##_221 T-## objects:
(300)T_VPU##, (300)T_VB1##
restriction: if
(300)T_VPU##.T18_## = '02' (300)T_VB1##.T01_## = '01'.
Which types of dependency can you use to do this? constraints
Only
Check the result in the simulation. (See above for solutions)
© SAP AG
PLM146
7-200
2-2-2 If the maximum working pressure is over 8 bars, the pump must be a plunger pump with a 4-hole round flange as the connection. User Menu → Classification → Master Data → Characteristics Create characteristic “Maximum working pressure (bar)”: T17_##
T-## (group) 1 Released Numeric (NUM) 2 characters Single-value Values:
2 - 10
Create characteristic "Connection": T11_##
T-## (group) 1 Released Character format (CHAR) 2 characters single value Values:
01
Right-angled flange 02 Round flange
(2-hole) 04
Round flange
XX
Other
(4-hole) User Menu → Classification → Master Data → Classes Change variant class:
T_VPU## 300
Characteristics:
Add T17_## and T11_##.
User menu Variant Configuration → Dependency → Dependency Net → Change Change constraint net T_CN2_VPU## Assign and create constraint at the same time: T_CS_VPU##_222 T-##
© SAP AG
objects:
(300)T_VPU##, (300)T_VB1##
condition:
(300)T_VPU##.T17_## > 8
PLM146
7-201
restriction:
(300)T_VPU##.T11_## = 'o4', (300)T_VB1##.T02_## = '01'
Which types of dependency can you use to do this? or procedures (or actions)
Constraints
Check the result in the simulation. (See above for solutions) 2-2-3 If the pressure cover in the BOM for the pump is item ‘0055’, the rotation direction must be "Both". User Menu → Classification → Master Data → Characteristics Create characteristic "Rotation direction": T16_##
T-## (group) 1 Released Character format (CHAR) 2 characters single value Values:
01
Clockwise 02 03
Counter-clockwise Both
User Menu → Classification → Master Data → Classes Change variant class:
T_VPU## 300 Char: Add T16_##.
User menu Variant Configuration → Dependency → Dependency Net → Change Change constraint net T_CN2_VPU## Assign and create constraint at the same time: T_CS_VPU##_223 T-## (group) objects:
condition:
© SAP AG
PU is_a (300)T_VPU## , XX is_object (Material)()(Nr = '100-400') part_of(XX, PU, '0055')
PLM146
7-202
restriction:
PU.T16_## = '03'
Which types of dependency can you use to do this? constraints
Only
Check in the simulation before and after changing the BOM (with item number 55 and with another item number).
© SAP AG
PLM146
7-203
2-2
Create and save sales order: Favorites → Create Conditions (VA01) Order (OR) 1000 10 00 Sold-to party: Ship-to party: Purchase order no.:
1000 1000 Your choice
T-VPU##
1 piece
– Two profiles in quotation for header material – "N-SET" first, because the priority is higher – Values assigned to header material with profile "N-SET" – Values can be assigned to casing, but only with profile "0-BOM" because this profile is allowed below scenario sales order and profile 1-BOM is not allowed here.
Must this assembly appear as an item in the sales order? Yes (sales-relevant) Which items appear in the sales order? All BOM items, because they are sales relevant (except materials whose sales views are not maintained – this is a modeling problem) What is the default item category for the individual items? Pump TAM (assembly item) Casing TAC (variant configuration) Others TAN (standard item) Weights in item overview: dependencies
T-VB1##
According to object
100-500
According to material master
Save your sales order and make a note of the number. Favorites → Display stock/requirements list MD04 Stock/requirements lists for materials: T-VPU## T-VB1## (Start with one)
© SAP AG
Overview
PLM146
7-204
Sales order exists for configurable casing (not for the pump).
© SAP AG
PLM146
7-205
Configuration Scenarios with Order BOMs
Contents: Overview of scenario Settings in the configuration profile Combinations of configuration profiles Knowledge-based order BOM Result-oriented order BOM Class nodes, system performance, and classification Single-level order BOM Multilevel order BOM (including type matching for assemblies) Problems with $parent and $root © SAP AG 2002
© SAP AG
PLM146
8-206
Configuration Scenarios with Order BOMs: Unit Objectives
At the conclusion of this unit, you will be able to: Maintain single-level and multilevel order BOM structures Create sales orders for the order BOM scenario and make technical changes to the BOM Create and change both knowledge-based and result-oriented order BOMs in technical postprocessing Use class nodes in this scenario Control the BOM explosion
© SAP AG 2002
© SAP AG
PLM146
8-207
Configuration Scenarios with Order BOMs: Course Overview Diagram
Course Overview
1
More About Object Dependencies
6
Variant Configuration: Consolidation
2
Configuration Scenarios with BOM Explosion
7
Control Options in the Configuration Profile
3
Configuration Scenarios with Order BOMs
8
Configuration Scenarios Without BOM Explosion
4
Other Variant Configuration Tools
9
More About Constraints
5
Conclusion
10
© SAP AG 2002
© SAP AG
PLM146
8-208
Configuration Scenarios with Order BOMs: Business Scenario
You want to model your configurable product so that it is possible to make manual, order-specific modifications at any time. The configuration scenario with the order BOM process gives you the option of creating order BOMs and (if required) order-specific routings in technical postprocessing.
© SAP AG 2002
© SAP AG
PLM146
8-209
IDES Example with BOM Explosion and Order BOM Process
P-501 (Pump) (Order BOM)
Rtg
Characteristics: Pump for: Oil, Water, Waste w. Mode Pump type: Plunger, Rotary ...
Purch. part
Suction chnl (Order BOM)
Characteristics: Pump for Pump type Material Diameter
Casing G
Support
Casing A
Shaft assy (Order BOM)
Rtg
Casing C
Bearing A Bearing B Bearing C
Linch pin
Rtg
Shaft (No profile)
Slug
© SAP AG 2002
© SAP AG
PLM146
8-210
Configuration Scenarios with Order BOMs: Overview Technical order processing
Sales 1.
2.
Two steps Super BOM (Master data BOM) P-501 (Pump)
Sales order
BOM maintenance
10 P-501 (Pump)
Sales order item 10 P-501 (Pump)
Shaft assy Shaft
Single-level Single-level (standard), (standard), interactive interactive configuration configuration
Multilevel, Multilevel, interactive interactive configuration configuration Manual Manual changes changes Type Type matching matching on on request request
© SAP AG 2002
Configuration Scenario with Order BOM: Two-step process: In Sales and Distribution (SD), configuration is on the top level only as standard. You can use the configuration profile to define that multilevel configuration is possible in the sales order (Indicator "Maintenance allowed in order"). In BOM maintenance, configuration can be interactive and on multiple levels, and manual changes can be made. - All BOM items can be processed, unless filters restrict processing. - As of R/3 4.0A, type matching is possible for assemblies.
© SAP AG
PLM146
8-211
Order BOM Step 1 Sales 1.
Super BOM (Master data BOM) P-501 (Pump)
Sales order Sales order 10 P-501 (Pump)
Shaft assy Shaft
Assigned char. values Pump Pump for
Oil
Mode
Manual
Pump type
Plunger
As As standard, standard, single-level, single-level, interactive interactive value value assignment assignment
10 P-501 (Pump)
Values for Pump ...
.. .
© SAP AG 2002
Configuration Scenario with Order BOM: in Sales and Distribution Configuration In Sales and Distribution (SD), configuration is on the top level only as standard. You can use the configuration profile to define that multilevel configuration is possible in the sales order. (Indicator "Maintenance allowed in order") BOM explosion None Material requirements: Transferred from sales order for header material. Type matching Only possible for header material in sales.
© SAP AG
PLM146
8-212
Order BOM Step 2 Technical order processing Value assignment across number of levels specified in profile Order-specific BOMs where needed or wanted
2.
Super BOM (Master data BOM) P-501 (Pump)
BOM maintenance Sales order item
Shaft assy
P-501 10 Pump for
Oil
Shaft
Shaft assy Connection ... ...
RAngle, Round 2, Round 4
Multi-level, Multi-level, interactive interactive configuration configuration
Order BOM P-501 (Pump) 10 Flywheel 20 Shaft assy 30 ...
Manual Manual changes changes Type Type matching matching on on request request
Values for Pump, Shaft assembly, shaft
Shaft © SAP AG 2002
...
...
Configuration Scenario with Order BOM: in technical order processing Multilevel, interactive configuration, number of levels can be defined in configuration profiles. Assigned values are saved for all configurable items. Manual changes can always be made to components of a configurable material with an active profile. If you are using a result-oriented BOM without restricting the level of detail, you can also maintain other order-specific BOMs. A changed assembly is saved as an order BOM for the sales order. If no changes are made to a changeable assembly, an order-specific BOM is still saved if the Automatic fix indicator is set (see next slide). As of R/3 4.5, manual fixing is also possible. Requirements Material requirements for a sales order item are transferred from the sales order. Order-specific changes to the BOM are read in material requirements planning (MRP), whether the changes are made manually or as a result of the configuration process.
© SAP AG
PLM146
8-213
Automatic Fixing Indicator
VA01 only
->
No order BOM
Automatic fixing
->
No order BOM
Automatic fixing
->
Order BOM
->
Order BOM
VA01 and CU51 without manual changes
VA01 + CU51 and manual changes
© SAP AG 2002
The Automatic fixing indicator lets you automatically create order BOMs for assemblies in technical order processing, even if no manual changes are made. An order BOM is then created the first time you call technical processing for the sales order. 1. Sales order created in SD, no technical order processing ==> No order BOM created 2. Sales order created in SD, technical postprocessing, but without manual changes, Automatic fix indicator not set ==> No order BOM created 3. Sales order created in SD, technical postprocessing, but without manual changes, Automatic fix indicator set ==> Order BOM created (if it does not already exist) 4. Sales order created in SD, technical order processing, with manual changes ==> Order BOM created
© SAP AG
PLM146
8-214
Configuration Scenarios with Order BOMs: Important Points
Two-step process: 1. Sales 2. Technical order processing In the sales order, only the header material is configured interactively as standard. The configurable components can be interactively configured subsequently in a separate environment (CU51). In the order BOM, any components can be changed, deleted, copied, or added. The result is a line in the sales order and one or more new BOMs with reference to the sales order item. Changes are relevant to material requirements planning (only if indicator KASTL is set to plant-specific in table T399D)
© SAP AG 2002
© SAP AG
PLM146
8-215
Combinations of Configuration Scenarios No profile
Useful
No BOM explosion Plnd/prod. order
Same as No profile
Single-level explosion Plnd/prod. order
Same as No profile
SingleSingle-level or multilevel BOM explosion
Multilevel explosion Plnd/prod. order
Same as No profile
Order BOM
Single-level explosion Order BOM
Single-level or multilevel BOM explosion and configuration across two or more levels *)**)
Multilevel explosion Order BOM
Single-level or multilevel BOM explosion and configuration across two or more levels *)**)
Single-level explosion Sales order
Same as No profile *)
Multilevel explosion Sales order
Same as No profile *)
*) = Only the profile for the header material determines whether single-level or multilevel BOM explosion **) = If header and assembly material are not saved in the same way, same as No profile © SAP AG 2003
When a configuration profile for a material is selected, the system first searches for all active profiles. Then it searches for the $parent material. If there is no $parent material (in other words, the material is the header), all active profiles are displayed on the profile selection screen. If a $parent material exists, only the profiles that are allowed in combination with the $parent profile are displayed on the profile selection screen. If you create a sales order for a configurable material that has the order BOM scenario, you can only assign values to the header material in sales (in the standard system). Only the dependencies for the configuration profile of the header material are active. In technical postprocessing, you can assign values to configurable assemblies that have the order BOM scenario. Dependencies for the configuration profiles of configurable assemblies to which you can assign values are active here. You can maintain order BOMs. For more information, see note 148778.
© SAP AG
PLM146
8-216
"Single-Level Order BOM" (1)
P-501 (Order BOM)
... Selection condition: $root.EXTRAS eq 'With ... or $parent.EXTRAS eq 'With ... not $self.EXTRAS eq 'With ...
Procedure (or action): $self.QUANT eq 4 if ... not $parent.QUANT eq 4 not $root.QUANT eq 4
Support base
Characteristics: Pump for: Oil, Water, Waste w. Connection: RAngle, Rd2, Rd4 Extras: With support, ... ...
Shaft assy (No active profile)
$root = header $parent = next instance
Bearing A Bearing B Bearing C
Selection condition: $root.CONNECTION eq 'Rd2' or $parent.CONNECTION eq 'Rd2' not $self.CONNECTION eq 'Rd2'
© SAP AG 2003
The above model has an active profile at header material level only. All configurable components either have no configuration profile or their configuration profiles are not released. Each configuration has only one instance in the above model. This instance can be queried by all items of the multilevel BOM structure with $parent or $root.
© SAP AG
PLM146
8-217
Class Nodes for Order BOMs
P-501 (Order BOM)
Class: Color
Characteristics: Pump for: Oil, Water, Waste w. Connection: RAngle, Rd2, Rd4 Extras: With support, ... ...
Characteristics: Color: Red, Blue, Green Gloss: yes/no
A manual specialization of a class node is also possible in this scenario. Finding objects It is possible to use a constraint
to assign a value to the class node.
It is possible to use a procedure
to assign a value to the class node.
An automatic specialization is also possible. (Assign values to characteristics COLOR and GLOSS on the value assignment interface.)
© SAP AG 2003
If the class node is not specialized automatically, you can specialize it manually in technical postprocessing. The function for finding classified objects is available for this purpose (= functions of transaction CL30N) Automatic specialization uses the values assigned to characteristics of the class node. You can use a procedure or a constraint to do this. If this does not work, the system automatically searches for characteristics of the class node on the $parent level (immediately above). If this does not work, the system automatically analyzes each next level up, toward the $root material. If you use classification as a selection condition (BOM ==> Item ==> General data), the values assigned to $root are always queried.
© SAP AG
PLM146
8-218
Single-Level Order BOM (2) Characteristics: Pump for: Oil, Water, Waste w. Connection: RAngle, Rd2, Rd4 Extras: With support, ... ...
P-501 (Pump) (Order BOM)
...
Shaft assy
Support
(No profile)
Bearing A
...
Bearing B Bearing C
Manual changes always allowed! Manual changes only allowed for result-oriented BOM with unrestricted level of detail!
© SAP AG 2002
© SAP AG
PLM146
8-219
Communication Between Sales and Engineering
After creating the sales order and configuring the sales product, technical postprocessing must take place.
SD Sales order 10 PM-1000
10 Pc
This means that sales must inform engineering of incoming orders. Implementation options: -
Set user status in the sales order item and report on the status Define a workflow (not in standard) Send a mail about the sales order item
PP Engineering
Confirmation to sales after creating the order BOM to trigger: -
Recalculation of prices Transfer of requirements Change of user status
© SAP AG 2002
If the customer requires an enhancement to material configuration, sales and engineering must work closely together. Technical postprocessing of order items is not automatic: it requires sales to inform engineering.
© SAP AG
PLM146
8-220
Locking Requirements Transfer from SD to PP SD Sales order 10 Matl PM-100010 Pc
Requirements for the sales order can be transferred only after the order BOM and order routing have been created. Planning in MRP follows this.
PP Customer requirement
PP MRP
Options for temporarily locking requirements transfer from SD to PP: Set the status of the configuration to incomplete or locked Set a delivery block in the order header and set the Fixed date and quantity indicator Change the schedule line category in the order (CN/CP - with or without transfer of requirements) Set reason for rejection in order item
PP Planned order
Status in BOM and routing influence relevancy to MRP.
© SAP AG 2002
You can define customer-specific reasons for rejecting a sales document item in Customizing for SD. Remember that locking of requirements transfer also means that any requirements already planned will not be consumed. For more information on managing configuration statuses, see note 139978 and related notes.
© SAP AG
PLM146
8-221
Order BOM: Manual Changes Delete items: Non-variable part Variant parts, even if dependencies make them relevant Configurable items and all their components
Change items: Non-variable part Variant parts, even if dependencies make them relevant Configurable items and all their components
Add items: Non-variable part NO class items Configurable items
Copy items: As for adding items If possible, no exploded class items
© SAP AG 2003
SAP Menu Logistics Production Master Data Bills of Material Bill of Material Order BOM Create Change Display Maintain (Multilevel) Display (Multilevel) Order Browser
If you add configurable items: If the item has a configuration profile with the Order BOM scenario, you can assign values to it, explode its BOM, and make manual changes. If you add or change items: You cannot add dependencies to be processed subsequently or items with dependencies to be processed subsequently.
© SAP AG
PLM146
8-222
System Performance and Classification
General hints for all scenarios: Use class hierarchies or prevent them in Customizing Default values defined in the characteristic are quicker than default values set by dependencies Smallest possible number of highly-selective characteristics for class node Run statistics for the class type for class nodes Use separate material items instead of class nodes with few materials Separate class types for class nodes and variant classes Set up database tables for selection in class nodes
© SAP AG 2002
How do you set up database tables for class nodes? In Customizing for the class type (200 here), set the "generated tables" flag. (Transaction O1CL.) This assumes that report RCCLUKA2 has been started for this class type (transaction SA38). In class maintenance for the class node (transaction CL02), set the characteristics to index relevant. Set up the database table for selection, by creating it and filling it (transaction CLGT). The names of the tables are stored in system tables GEN_TABLES_MAIN and GEN_TABLES_SUB.
© SAP AG
PLM146
8-223
Multilevel Order BOM (1)
P-501 (Order BOM)
$parent = next instance
Shaft assy (Order BOM)
Characteristics: Pump for: Oil, Water, Waste w. Mode: Electric Pump type: Plunger, Rotary ...
Characteristics: ... Connection: RAngle, Rd2 , Rd4 Standard:
Selection condition: $parent.CONNECTION eq Rd2 not $self.CONNECTION eq Rd2 not $root.CONNECTION eq Rd2
Bearing A Bearing B Bearing C
© SAP AG 2002
In the sales order, only the header material can have values assigned to it (in this example, only the pump). This means the connection cannot have values assigned. This level can only have values assigned in technical postprocessing.
Standard: (Without "Maintenance Allowed in Sales Order" Flag) Create sales order in SD for pump P-501 Only assign values to header material No value assignment for configurable assemblies (manually or by dependencies) - for example, bearings are not selected (correctly) No order BOMs can be maintained from the sales order Extended Mode: (With "Maintenance Allowed in Sales Order" Flag) Create sales order in SD for pump P-501 At first, you can only assign values to the header material In the sales order, switch to engineering view: here you can also assign values to configurable assemblies (manually and by using dependencies for the header or assembly), and the BOM can be exploded across multiple levels Order BOMs cannot be maintained from the sales order
© SAP AG
PLM146
8-224
"Multilevel Order BOM" (2)
P-501 (Order BOM)
X...
Characteristics: Pump for: Oil, Water, Waste w. Mode: Electric Pump type: Vacuum, Rotary ...
Shaft assy
...
(Order BOM)
Y...
Characteristics: ... Connection: RAngle, Rd2 , Rd4
Z...
Bearing A Bearing B
Manual changes to assigned values allowed!
Bearing C © SAP AG 2003
Technical postprocessing for sales order for pump P-501 Values assigned to header material cannot be changed (even with constraints) Value assignment for configurable assemblies with order BOM scenarios (manually or by dependencies, also depending on values assigned to $root) Order BOMs for each assembly: - With manual changes - With the "Automatic Fixing" Indicator - Fixed manually
© SAP AG
PLM146
8-225
How Order BOMs are Saved Knowledge based
= Super = Master data BOM
KMAT 1
KMAT 2 KMAT
= Result = Exploded BOM
2 KMAT 1
KMAT 2 KMAT
Saving of result of fixing
3
Result oriented
Changed Deleted Added
KMAT 2 KMAT
2
KMAT 2 KMAT
3
© SAP AG 2002
© SAP AG
PLM146
8-226
Configuration Profile – Fixing Selected assembly KMAT 1
= Result in technical postprocessing CU51 or CU51E Top down KMAT 2 2 KMAT
KMAT 2 3 KMAT
Bottom up
Manual Manual saving saving of order of order BOMs BOMs
Fix Fix
Solution Solution:: ... ... © SAP AG 2006
© SAP AG
PLM146
8-227
Configuration Profile – Instantiation Selected assembly KMAT 1
KMAT 2 2 KMAT
Variant class 300
Value 1 Value 2 Value 3
?? KMAT 2 2 KMAT
Variant class 300
Value 1 Value 2 Value 3
Top down
1 2 A
1 2 B
Bottom up
Same Same product product "KMAT2" "KMAT2" twice twice
Instantiate Instantiate
Solution Solution:: ... ... © SAP AG 2002
© SAP AG
PLM146
8-228
Type Matching (Variant Matching) for Assemblies
P-501 Rtg
Support base
Shaft assy (Order BOM)
(Order BOM)
Characteristics: Pump for: Oil, Water, Waste w. Mode: Electric Pump type: Vacuum, Rotary ...
Characteristics: Max. pressure: 8 bar Range: closed Connection: Rd4
Rtg Type matching for material variant
Bearing A Bearing B Bearing C © SAP AG 2003
Shaft - 03 Max. pressure: 8 bar Range: closed Connection: other Shaft - 02
Linch pin Shaft - 01 Max. pressure: 5 bar Range: open Connection: Rd2
Max. pressure: 8 bar Range: closed Connection: Rd4
Type matching (variant matching) is also possible at assembly level. Prerequisite: - Scenario Order BOM for configuration profile of header material and assembly - Values assigned must match material variant exactly Type matching (variant matching): Only in technical postprocessing Started manually Works for all assemblies, not selected assemblies Saved in order BOM
© SAP AG
PLM146
8-229
Can Dependencies Do This?
Header Order BOM
Assembly 1 Order BOM
Characteristics: VERSION: S, N, L LENGTH: 1 - 10 COLOR: R, B, G
Characteristics: HEIGHT: 2 - 20 COLOR: R, B, G
Assembly 2 No order BOM
Values assigned in sales
Characteristics: WIDTH: 3 - 30 PROP: 1, 2, 3
Values assigned in CU51
Are the examples possible? How?: 1. WIDTH = (HEIGHT + LENGTH) / 2 2. Header COLOR R results in VERSION L 3. Assembly 1 COLOR R results in VERSION L © SAP AG 2003
Header material: - Value assignment or changing of values only in sales order Assembly 1: - Value assignment or changing of values only in technical postprocessing - Only values assigned to header can be used (in dependencies) Assembly 2: - Configuration profile is handled as inactive Example 1? …………………………………………………………………………………….
Example 2? ……………………………………………………………………………………..
Example 3? …………………………………………………………………………………….
© SAP AG
PLM146
8-230
Pricing and the Order BOM Scenario
Only values assigned in SD (VA01 or VA02), only at header level, are relevant to pricing Characteristics of subordinate assemblies are not relevant to pricing No values assigned or manual changes made in technical postprocessing (CU51) are relevant to pricing
© SAP AG 2002
© SAP AG
PLM146
8-231
BOM Explosion (1)
$root
Assembly 1 Order BOM
Header Order BOM
Characteristics: VERSION: S, N, L LENGTH: 1 - 10 COLOR: R, B, G Characteristics: WIDTH: 3 - 30 PROP: 1, 2, 3
Characteristics: HEIGHT: 2 - 20 COLOR: R, B, G
Assembly 2 No order BOM
$parent
No profile $self
© SAP AG 2002
© SAP AG
PLM146
8-232
BOM Explosion (2) Characteristics: VERSION: S, N, L LENGTH: 1 - 10 COLOR: R R, B, G
Header Order BOM
Assembly 1 Order BOM
Red
Characteristics: WIDTH: 3 - 30 PROP: 1, 2, 3
Characteristics: HEIGHT: 2 - 20 R B, G COLOR: R,
Assembly 2 No order BOM
No Selection condition: profile $parent.COLOR eq RR $root.COLOR eq R R
Procedure: $set_default($self, COLOR, $root.COLOR)
Procedure: $self.STPO_MENGE = ... if ... © SAP AG 2002
If the same characteristic is assigned to different materials by means of variant classes, you can assign values independently. You can use dependencies to describe interdependencies (for example, for default values). In selection conditions, both values assigned to characteristic COLOR can be accessed independently of each other. For example, you can change the component quantity depending on the values assigned to both levels.
© SAP AG
PLM146
8-233
BOM Explosion (3)
Header Order BOM
$root
Characteristics: VERSION: S, N, L LENGTH: 1 - 10 COLOR: R, B, G
Characteristics: WIDTH: 3 - 30 PROP: 1, 2, 3
Characteristics: HEIGHT: 2 - 20 COLOR: R, B, G
Assembly 1 Order BOM
$root
Assembly 2 No order BOM
$parent
No!
No profile $self
No!
© SAP AG 2002
$self
If a BOM structure has a large number of levels, all characteristic values that are required for processing dependencies must be at one of the following levels: $root level $parent level If values cannot be assigned to any characteristics at $parent level, only $root level is available. $self level -> Changes to BOM item with reference characteristics Configuration profiles with scenarios other than order BOM are ignored. This can lead to the situation shown in the above example, in which the $parent level is more than one level above the current item, even perhaps the header material.
© SAP AG
PLM146
8-234
Configuration Scenarios with Order BOMs: Unit Summary
You are now able to: Maintain single-level and multilevel order BOM structures Create sales orders for the order BOM scenario and make technical changes to the BOM Maintain both knowledge-based and result-oriented order BOMs in technical postprocessing Use class nodes in this scenario Control the BOM explosion
© SAP AG 2002
© SAP AG
PLM146
8-235
Configuration Scenarios with Order BOMs
Exercises
Unit:
Configuration Scenarios with Order BOMs
Topic:
Single-Level Configuration Structure with Scenario Order BOM
At the conclusion of these exercises, you will be able to: • Process sales orders in the environment of this scenario, including order BOM maintenance The exercise also covers: • Checking the master data required • Creating the characteristics, variant class, and configuration profile • Creating a sales order (VA01) and maintaining an order BOM (CU51) A configurable shaft assembly needs to be modeled. Material master records and the super BOM already exist, but without dependencies. The configuration cannot and should not be modeled completely. For this reason, you want to use the option of creating an order BOM. This is implemented as the "order BOM" scenario, with the option of subsequent technical postprocessing. 1-1
Check the master data that already exists for modeling the configurable shaft assembly T-VB2##. 1-1-1 Display material master record T-VB2## with the basic data, sales, and MRP views. Use the following organizational levels: Plant: 1000 Sales organization: 1000 Distribution channel: 10 1-1-2 Display the BOM for your shaft assembly with usage 1 in plant 1000. Compare it with the slide "4. Customer Example Part Structure (Shaft)" in the appendix. (Assembly T-VB3## is not yet in the BOM. Do not assign it to the BOM yet.)
© SAP AG
PLM146
8-236
1-2
The bearing selected is to depend on the value assigned to characteristic "connection", according to the following list: Bearing A Bearing B Bearing C
For right-angled flange For round flange (2-hole or 4-hole) For other connection
To do this, create selection conditions that work correctly, even if the shaft is an assembly in another structure. ($parent or $root?) You do not want the number of screws required to be set by object dependencies – you want to be able to change this manually in technical order processing. If you did not create characteristic "connection" in the previous unit, create it now: T11_##
Values:
01 02 04 XX
Right-angled flange Round flange (2-hole) Round flange (4-hole) Other
1-2-1 Create variant class T_VB2## for your configurable shaft, and assign the characteristic you just created to this class. 1-2-2 Create a configuration profile for your configurable shaft T-VB2##. Use the name N-OBOM for your profile. Assign your configurable shaft to variant class T_VB2##. Set the following parameters: – Process "order BOM" Result-Oriented – Multilevel BOM explosion – PP01 (BOM application) – No availability check – BOM explosion only for configurable assemblies UserInterf browser Order BOM
– All views, including configuration – (All default) – (Rest: default)
© SAP AG
PLM146
8-237
1-2-3 Assign selection conditions to the three bearing items, so that the components are selected according to the values above: Remember that the shaft can be an assembly in another BOM. ($parent or $root?) Check the result in the simulation.
© SAP AG
PLM146
8-238
You can simulate both steps in the simulation. In the sales view, you assign values to the header material. Here: pushbutton: Engineering In the engineering view, you can simulate the BOM explosion. 1-3
Add a sales-relevant item for the shaft T-VB2## to the BOM for your pump T-VPU##. Check the BOM structure of the pump T-VPU## in the simulation. Which configuration profiles are shown for the pump? For each profile you select for the pump, which configuration profiles can be used for the two configurable assemblies? Why? If only one profile is possible, this profile is selected automatically without being displayed explicitly first. To see the profile that is active in the simulation (including the sales order), choose
→ Environment → Configuration Profile. 1-4
Create and save a sales order with the following data: Order (OR) 1000 10 00 Customer: Purchase order no.: T-VB2##
1000 Your choice 1 piece
→ Assign values and
save. 1-5
In technical postprocessing (order BOM maintenance), change the following data:
•
You require 3 screws M6x60 and no harness (cable structure).
•
Increase the component number of the slug 100-310 to 2. Can you? Why?
© SAP AG
PLM146
8-239
Optional Display the order BOM as saved in database table STPO.
© SAP AG
PLM146
8-240
Configuration Scenarios with Order BOMs
Exercises
Unit:
Configuration Scenarios with Order BOMs
Topic:
Multilevel Configuration Structure with Scenario Order BOM
At the conclusion of these exercises, you will be able to: • Process sales orders in the environment of this scenario, including order BOM maintenance The exercise also covers: • Checking the master data required • Creating the characteristics, variant classes, and configuration profiles • Creating sales orders (VA01) and creating and processing order BOMs (CU51) In the BOM structure of the configurable shaft assembly, you want to include a configurable assembly. You want to be able to maintain order BOMs for this assembly, too. Material master records and the super BOM already exist for the configurable assembly, but without dependencies. 2-1
Check the master data that already exists for modeling the configurable shaft assembly T-VB3##. Display the BOM of your assembly T-VB2## (shaft) in change mode, with usage 1 in plant 1000. Compare it with the slide "4. Customer Example Part Structure (Shaft)" in the appendix. Add assembly T-VB3## to the BOM of the configurable shaft.
2-2
The color selected is to depend on the value assigned to characteristic "color", according to the following list: 100-801 (Red) If value 'Red' is assigned to T-VB2## (shaft) 100-803 (Yellow) If value 'Yellow' is assigned to T-VB3## (assembly color) 100-805 (Blue) If value 'Blue' is assigned to T-VB2## (shaft) or T-VB3## (assembly color)
© SAP AG
PLM146
8-241
The quantity of material T-OIL required must be maintained manually in technical postprocessing.
2-2-1 Create the following single-value characteristic (you can copy from group 00):
Color
T12_## Values:
1 3 5
Red Yellow Blue
2-2-2 Create variant class T_VB3## for your configurable assembly and assign the characteristic you just created to this class. Assign the color characteristic to variant class T_VB2##. 2-2-3 Create a configuration profile for your configurable assembly TVB3##. Use the name 1-OBOM for your profile. Assign your configurable shaft to variant class T_VB3##. Set the following parameters: – Process order BOM Result oriented – Single-level BOM explosion – PP01 (BOM application) – No availability check UserInterf – All views, including configuration browser (Rest: default) 2-2-4 Assign selection conditions to the three color items, so that the components are selected according to the list above: Check the result in the simulation. Start configuration with material TVB2##. 2-3
© SAP AG
Create and save a sales order with the following data:
PLM146
8-242
Standard order (OR) 1000 10 00 Customer: Purchase order no.: T-VB2##
1000 Your choice 1 piece
Assign values to the configurable shaft. Can you assign values to the "color" assembly?
2-4
In technical postprocessing (order BOM maintenance), assign values to assembly "color", and change data in both BOMs. Why can you now make changes to both BOMs?
© SAP AG
PLM146
8-243
Configuration Scenarios with Order BOMs
1-1
Solutions
Unit:
Configuration Scenarios with Order BOMs
Topic:
Single-Level Configuration Structure with Scenario Order BOM
Check the modeling of the configurable shaft T-VB2##. 1-1-1 User menu Material → Display → Display Current
Display material master T-VB2## (current status): Views: Basic data 1 + 2 Sales: Sales Org. Data 1 + 2 Sales: General / Plant Data MRP 1 -4 Organizational levels: Plant: Sales organization: Distribution channel:
1000 1000 10
1-1-2 User Menu Bill of Material → Material BOM → Display
Display BOM with usage 1 in plant 1000. Compare with the slide in the appendix. Assembly T-VB3## is not yet in the BOM 1-2
The bearing selected is to depend on the value assigned to characteristic "connection": 1-2-1
(If you did not create characteristic "connection" in the previous unit, create it now T11_##
Values:
01 02 04 XX
Right-angled flange Round flange (2-hole) Round flange (4-hole) Other)
User Menu → Classification → Master Data → Classes
© SAP AG
PLM146
8-244
Create a variant class:
T_VB2## 300 Variant class shaft 1 (Released) T-## Characteristics:
T11_##
1-2-2 Create a configuration profile for the shaft T-VB2##. User menu → Variant Configuration → Configuration Profile → Create
Profile overview:
N-OBOM
Class assignment
T_VB2##
300
Configuration initial screen: – Process "order BOM" Result-Oriented – BOM explosion multilevel – PP01 (BOM application) – No availability check – BOM explosion only for configurable assemblies !! UserInterf
– All views, including configuration browser
(Rest: default) 1-2-3 Create the following selection conditions: Bearing A Bearing B Bearing C
For right-angled flange For round flange (2-hole or 4-hole) For other connection
User Menu Bill of Material → Material BOM → Change
© SAP AG
PLM146
8-245
T-VB2## Plant: 1000 Usage: 1
© SAP AG
PLM146
8-246
Assign and create selection condition for component Bearing type A = 500-501 at the same time: T_SC_T11RE_## $parent.T11_## eq '01' Assign and create selection condition for component Bearing type B = 500-502 at the same time: T_SC_T1124_## $parent.T11_## in ('02', '04') Assign and create selection condition for component Bearing type C = 500-503 at the same time: T_SC_T11XX_## $parent.T11_## eq 'XX' Configuration simulation (see previous exercises) Value assignment in sales view BOM explosion in engineering view 1-3
Add shaft to BOM for pump as sales-relevant item: User Menu → Bill of Material → Material BOM → Change
BOM for material T-VPU## with usage 3 in plant 1000 Add new material item: L T-VB2##
1 piece
Sales-relevant indicator (In item detail screen, status) Configuration simulation (see previous exercises) Result: Two possible configuration profiles for pump:
© SAP AG
1. N-BOM
Only profile 1-BOM possible for casing No profile active for shaft
2. N-SET
Only profile 0-BOM possible for casing Profile N-OBOM possible for shaft
PLM146
8-247
1-4
Create and save sales order Favorites → Create Sales Order (VA01)
Standard order (OR) 1000 10 00 Sold-to party: (if prompeted, ship-to party: 1000) Purchase order no.: Your choice T-VB2##
1000
1 piece
Assign values to the header material. 1-5
Order BOM maintenance: User Menu → Bill of Material → Order BOM → Maintain (Multilevel) => Value assignment screen (display only) Pushbutton: Result You require 3 screws M6x60 and no harness (cable structure). (Select item for screw M6x60, then choose Pushbutton: Item full = Shift + F4 Change quantity Select item for cable structure Pushbutton: Delete = Shift + F2 or
→ Edit → Delete)
Can you change the component quantity of the slug 100-310 to 2? No Why? Even though it is a result-oriented BOM (this allows maintenance of order BOMs even for non-configurable assemblies), the BOM of the shaft 100-300 is not displayed here and therefore cannot be changed. (See flag in configuration profile "Only configurable assemblies".)
© SAP AG
PLM146
8-248
optional Favorites → Data Browser (SE16)
Database table
KDST
Select order BOMs using order number in Field: VBELN Make a note of the internal BOM number STLNR Favorites → Data Browser (SE16)
Database table
STPO
(Select items of order BOMs using BOM category STLTY = K and internal BOM number STLNR) You can also use ANNAM = PLM-##.
© SAP AG
PLM146
8-249
Configuration Scenarios with Order BOMs
2-1
Solutions
Unit:
Configuration Scenarios with Order BOMs
Topic:
Multilevel Configuration Structure with Scenario Order BOM
Check the modeling of the configurable assembly T-VB3## User Menu Bill of Material → Material BOM → Change
Display BOM for material T-VB2## with usage 1 plant 1000. Compare with graphic. Add new material item: L
T-VB3##
1 piece
2-2 2-2-1 User Menu → Classification → Master Data → Characteristics
Create single-value characteristic, copying from group 00 if possible: T12_##
Description: Color Group T-## Values:
1 3 5
Red Yellow Blue
2-2-2 User Menu → Classification → Master Data → Classes
Create a variant class:
T_VB3## 300 Variant class for color 1 (Released) T-##
Characteristics: Change variant class:
© SAP AG
T12_## T_VB2##
PLM146
300
8-250
Add characteristic T12_##.
2-2-3 User Menu → Variant Configuration → Configuration Profile → Create
Create a configuration profile for color T-VB3##. Profile overview:
1-OBOM
Class assignment
T_VB3##
300
Configuration initial screen: Configuration parameters – Process "order BOM" Result-oriented order BOM – Single-level BOM explosion – PP01 (BOM application) – No availability check UserInterf
– All views including
configuration browser (Rest: default) 2-2-4 Assign selection conditions to colors according to the following list: 100-801 (Red) If value 'Red' is assigned to T-VB2## (shaft) 100-803 (yellow) If value 'Yellow' is assigned to T-VB3## (color) 100-805 (Blue) If value 'Blue' is assigned to T-VB2## (shaft) or T-VB3## (assembly color) User Menu Bill of Material → Material BOM → Change
T-VB3## Plant: 1000 Usage: 1 (Item Overview) → Pushbutton or Extras → Object Dependencies → Assignments = Ctrl + F1
Assign and create dependency (procedure) at the same time Item: 100-801:
© SAP AG
Selection condition: T_SC_ROOT_1_##
PLM146
8-251
Syntax: Item: 100-803:
$root.T12_## = '1'
Selection condition: T_SC_PARENT_3_## Syntax:
$parent.T12_## = '3'
Item: 100-805: Selection condition: T_SC_ROOT_PARENT_5_## Syntax: or
$root.T12_## = '5' $parent.T12_## = '5'
Configuration simulation with T-VB2## (see previous exercises). Value assignment in sales view BOM explosion in engineering view
2-3
Create and save sales order: Favorites → Create Sales Order (VA01)
Standard order (OR) 1000 10 00 Sold-to party: (if prompted, ship-to party: Purchase order no.: T-VB2##
1000 1000) Your choice 1 piece
You can only assign values to the header material. (You cannot assign values to assembly T-VB3##.) 2-4
Create order BOM: User Menu → Bill of Material → Order BOM → Maintain (Multilevel) → Value assignment screen (display only) Assigning values to the assembly is possible here, because configuration profile is also "order BOM". Pushbutton: Result
Changes possible in both BOMs.
(Reason: active profiles with same type of order BOM (result oriented))
© SAP AG
PLM146
8-252
© SAP AG
PLM146
8-253
Other Variant Configuration Tools
Contents: Tables for storing variant configuration data Application Programming Interface (API) Application Link Enabling (ALE) User exits Analysis tool SAP IPC Sales Configuration Engine
© SAP AG 2003
© SAP AG
PLM146
9-254
Other Variant Configuration Tools: Unit Objectives
At the conclusion of this unit, you will be able to: Describe how variant configuration is saved. Say which APIs and user exits exist in the variant configuration environment. Use ALE to distribute variant configuration models. Use the analysis tools for reporting. Describe how modeling for the SAP IPC Configuration Engine differs from modeling for the SAP ERP variant configuration.
© SAP AG 2006
© SAP AG
PLM146
9-255
Other Variant Configuration Tools: Course Overview Diagram
Course Overview
1
More About Object Dependencies
6
Variant Configuration: Consolidation
2
Configuration Scenarios with BOM Explosion
7
Control Options in the Configuration Profile
3
Configuration Scenarios with Order BOMs
8
Configuration Scenarios Without BOM Explosion
4
Other Variant Configuration Tools
9
More About Constraints
5
Conclusion
10
© SAP AG 2002
© SAP AG
PLM146
9-256
Other Variant Configuration Tools: Business Scenario
You want to keep variant configuration open, so that you can: Use interfaces Distribute models to other SAP ERP Systems Work with models outside the SAP ERP System (?SCE)
You want to explore further technical possibilities
© SAP AG 2006
© SAP AG
PLM146
9-257
How Variant Configuration is Saved (1)
IBase: IBIB Instances: IBIN IBINT
IBase administrative data
Instances Instance descriptions
No conversion required for new table structure
Assigned characteristic values: IBINVALUES Symbols for instance IBSYMBOL Characteristic value or interval Structure: IBST
Parent and root information
Owner: IBINOWN Observer: IBINOBS
Owner of configuration, such as sales order or material
Interested party for instance, such as planned order or production order
© SAP AG 2003
IBIN contains one entry for each configuration. Date validity is relevant here, so the primary key is the IN_RECNO field, not the object or the instance. IBINVALUES contains the value assignment key for each value assigned in the configuration (primary key IN_RECNO). The key is given by the SYMBOL_ID field. This means that the assigned values are not explicitly in database table IBINVALUES. IBSYMBOL contains the information on which value was assigned to which characteristics in which class type for each symbol ID. Together with the entries in IBINVALUES, this gives the assigned values in the configuration.
© SAP AG
PLM146
9-258
How Variant Configuration is Saved (2)
CUVTAB
Table header
CUVFUN
Function header
CUVTAB_ADM
Administrative data
CUVFUN_ADM
Administrative data
CUVTAB_TX
Texts
CUVFUN_TX
Texts
CUVTAB_FLD
Characteristics (old: KSML)
CUVFUN_PAR
Characteristics (old: KSML)
CUVTAB_IND
Value assignment alternatives (old: KRIF)
CUVFUN_IND
Value assignment alternatives (old: KRIF)
CUVTLN
Line (old: CUVT and KSSK), only here with engineering change management
CUVTAB_VALC
Character values
CUVTAB_VALC
Non-character values
Conversion to new table structure required: XPRA (= conversion report program) runs automatically on upgrade
© SAP AG 2002
This new way of saving variant tables and variant functions requires new steps in Customizing for variant configuration: Maintain statuses for variant tables (previously class statuses for class type 029) Maintain groups for variant tables (previously class groups) Maintain statuses for variant functions (previously class statuses for class type 036) Maintain groups for variant functions (previously class groups) In authorization management, there are new authorization objects for: Maintaining variant tables (structure and contents) Linking to database tables Maintaining variant functions Only the maintenance of table contents is interfaced to engineering change management.
© SAP AG
PLM146
9-259
SAP Interface Landscape
External systems CAx
API
SAP ERP RFC
...
Accessed from SAP
User Exits
BAPI
C, C++
SAP ERP SCE
SAPGUI
Accessed externally
User Exits
API
CAD Interface
Reports
User Exits
SAP User Code
© SAP AG 2006
© SAP AG
PLM146
9-260
Terms in the Interface Landscape
User exits
Customer-specific programs are called at a specific point in time, with a predefined interface - Existing INCLUDE commands access INCLUDE files that are initially empty
API
Interfaces used by application programs to communicate with other systems - Function modules that comply with predefined rules (for example, RFC compatible)
BAPI
Business Application Programming Interface; - Standardized interface (API with additional predefined rules)
RFC
Remote Function Call; - Procedure enabling communication between SAP Systems and external systems (including other SAP Systems)
© SAP AG 2006
© SAP AG
PLM146
9-261
Test Environment for APIs in Variant Configuration CAVC_#_ O = Object C = Configuration of all instances I = Configuration of one instance
API List
Log File
Finish Initialization
Configurator APIs/BAPIs
Analysis
Sales order item
CAVC O ORDER BOM INIT CAVC O ORDER BOM SAVE
Example: Order BOM - Initialize - Save and close - Exit CU51
CAVC O ORDER BOM CANCEL
CAVC_ TEST © SAP AG 2006
© SAP AG
PLM146
9-262
User Exits in the Variant Configuration Environment (1) User exits on the value assigment screen: -
Pushbutton 01 Pushbutton 02 Pushbutton 10
Use interface design to fulfill prerequisites Create pushbuttons Name: CUSTOMER_PUSHBUTTON_### Any description and pushbutton label No other details to specify
Exit_SAPLCEI0_010 Exit_SAPLCEI0_011 Exit_SAPLCEI0_019
In program LCEI0F01 in FORM routine EXECUTE_PUSHBUTTON_GROUP
© SAP AG 2002
© SAP AG
PLM146
9-263
User Exits in the Variant Configuration Environment (2) Additional user exits for variant configuration CCUX0000
= Additional check on configuration - Executed at final check on configuration - Contains function module: Exit_SAPLCUKO_001
CCUX0001
= Load function for configuration - Controls whether source for loading is external: Function module: Exit_SAPLCUD0_001 - Loads from external source: Function module: Exit_SAPLCUXC_001
CCUX0002
= Specification of a class node - Reacts to inconsistencies in object search Function module: Exit_SAPLCUD0_002
CCUX0800
= Controls level of detail in multilevel configurations - Sets explosion of all or only configurable assemblies Function module: Exit_SAPLCUKO_002
© SAP AG 2002
The list above contains a selection of user exits with the function modules they include. For a complete list, go into transaction SMOD. In the F4 help, choose the Hierarchy of SAP applications. To find all the user exits in the variant configuration environment, look under: SAP LO LO-VC CU In the components of the enhancement, you will find the list of function modules.
© SAP AG
PLM146
9-264
Analysis Tool
Extras : : The analysis tool can be called from the result screen of configuration. Analysis It logs the following for the current configuration: Summary Configurable item Class node Characteristics (single-level, multilevel, restrictable) Values
Overview of dependencies: which are used, how often, and where? Explosion of all BOMs of configurable items Reporting for class nodes Detailed list of configuration of configurable items:
Configuration profile Dependencies Assigned values
© SAP AG 2002
© SAP AG
PLM146
9-265
Application Link Enabling (ALE)
ALE
ALE Engineering
ALE
Structure of the complete model of the configurable product
Advantages Use of a SAP System with special Customizing as a PDM System Separate release upgrades Distribution of system load Heterogeneous SAP system landscape can be represented © SAP AG 2006
Requirements of data distribution The following must be possible: (Selective) transport of product data to different target systems, especially master data for variant configuration Robust, reliable, fast data distribution Change management across different systems Monitoring across different systems Keep the productive system running without interruption during data distribution Which tools are available for data distribution, and when should you use which tool?
© SAP AG
PLM146
9-266
ALE Strategies (Simplified) Change Material: Basic Data
CAD application (and local PDM application)
Material: A-01 Assembly 01
Save change
Material status: 01 Basic material: ST37
Directly
Interface TM
Manual transaction
IDoc generation ALE
ALE SAP ERP Application
Set a change pointer Batch jobs
SAP PLM Application
Material
02
Source system
Target system
Material Material: A-01
Material Material: A-01
TM
© SAP AG 2006
The SAP System has two distribution options. First, there is direct distribution. You use a report program to select the objects you want to distribute. Second, you can use a "change pointer" to control distribution. Each change to an object, such as a status change in a material master, can generate a change pointer. This pointer can generate IDocs (intermediate documents) that control the transport from the source system to the target system. For more detailed information, see the SAP documentation on ALE.
© SAP AG
PLM146
9-267
Sequence for Transporting Objects with ALE Characteristics and characteristic values Classes Table structures Table contents Function modules
11
Functions Global dependencies Constraint nets Characteristics and values for assignment of global dependencies Material master records 11
Configuration profiles
12
Interface design
13
Bills of material
14
Material master records of material variants
© SAP AG 2003
Message types (IDocs) supplied
Material master record MATMAS Bill of material BOMMAT Characteristics CHRMAS Classes CLSMAS (basic data & dependencies) (basic data & dependencies) Object classification CLFMAS Global dependencies KNOMAS Configuration profile CNPMAS Variant tables VTAMAS Variant table contents VTMMAS Constraint nets DEPNET Variant function VFNMAS Document DOCMAS Cost center COSMAS Cost center group COGRP Cost elements COELEM Cost element group COGRP2 Activity types COASMAS Activity type group COGRP5 Prices COACTV Change numbers ECMMAS Prices and conditions COND_A Interface designs are distributed using a BAdI (object name VariantConfigUI, method Savem). The values assigned to material variants are distributed with the material master records. Settings are required for this in the Global Settings in Customizing for the material master.
© SAP AG
PLM146
9-268
Product Replication with ALE Distribution Units Product replication with mySAP PLM distributes products from a central PLM system to other productive SAP systems. The product data is collected in consistent data packets and distributed to the target system using ALE.
Distribution of products instead of individual objects Collected in configuration folders in the replication workbench Simultaneous distribution to different target systems Controlled, transparent process Notification of recipients
© SAP AG 2003
A product version is created in a central PLM system. This version consists of consistent data and contains the product structure. The distribution of the product version uses Application Link Enabling (ALE) technology for replication of the entire product. Product replication with mySAP PLM makes the distribution of products from a central PLM system to various production systems easier. Product data is collected in the replication workbench For example, you select a material master record, collect all the data related to it by using the "baseline" procedure, and transfer this data to a configuration folder. Then you define the target system and the recipients responsible are notified. Distribution transfers either delta information only or all data (for the initial distribution).
© SAP AG
PLM146
9-269
SAP IPC - Sales Configuration Engine
Internet Sales
Online Store PLM
CRM Contact Center
SAP IPC
Vehicle Management System
Modeling in the SAP ERP System
Mobile Sales
Specific Integration Scenario
Non-SAP
Creating a knowledge-base object Creating one or more runtime versions
Runtime version 1 Downloading the runtime version to the SCE database
SCE database
© SAP AG 2006
Abbreviations: CRM Customer Relationship Management IPC Internet Pricing and Configurator ITS Internet Transaction Server KB Knowledge base PLM Product Lifecycle Management RFC Remote Function Call SCE Sales Configuration Engine SPE Sales Pricing Engine A knowledge-base object defines virtual parentheses around all objects in the knowledge base of a configurable product. Runtime versions can only be generated for released knowledgebase objects. The runtime version of a knowledge-base object defines the criteria (date, plant, and BOM application) for the knowledge base. On generation of the runtime version, the data of all objects in the knowledge base is collected together. The consistency of the data is checked. Each has a unique name.
© SAP AG
PLM146
9-270
Modeling for the SCE: Differences from SAP R/3 (1)
Each runtime version contains: Exactly one plant Exactly one BOM explosion Exactly one development status (ECM) = date (Parameter effectivity is ignored)
No configuration profiles with single-level BOM explosion No order BOM maintenance in the IPC SCE No type matching at assembly level Only sales-relevant BOM items can be configured Only material items and class items are copied to the runtime versions Item key consists of an item number and a material or class number © SAP AG 2002
© SAP AG
PLM146
9-271
Modeling for the SCE: Differences from SAP R/3 (2)
The classification of materials cannot be used as a selection condition (see basic data, item detail screen) Manual creation and deletion of items is not possible BOMs for configurable materials only No conversion between units of measure - it uses the base unit of measure All characteristics must be assigned to (variant) classes, including reference characteristics, otherwise they are not downloaded User-defined data types (UDEF) cannot be used Value hierarchies cannot be used (only end nodes are transferred) Intervals cannot be assigned as values No class-specific overwrite Organizational areas are ignored © SAP AG 2002
© SAP AG
PLM146
9-272
Modeling for the SCE: Differences from SAP R/3 (3)
Reference characteristics can only be used for: STPO-MENGE, SDCOM (VBAK and VBAP downloaded by sales application, not in SCE knowledge base) 1:1 assignment of reference characteristic to table field For both techniques for value-dependent pricing, reference characteristic SDCOM-VKOND is required Class nodes are only replaced if exactly one suitable material number is found Find objects in class node only by assigning values at the class node itself Manual replacement of class node only with swing user interface (UI), not with Web UI.
© SAP AG 2003
© SAP AG
PLM146
9-273
Modeling for the SCE: Differences from SAP R/3 (4)
Syntax elements part_of and subpart_of can be processed only for configuration scenarios Sales order and Planned/production order multilevel You cannot use $sum_parts and $count_parts All procedures must be assigned to the configuration profile or BOM, not to characteristics or characteristic values Actions cannot be used! Variants functions and user exits must be written in Java (or C) Names of variant tables and their columns must consist entirely of alphanumeric characters and underscores, and must not start with SCE Each table field must contain exactly one entry
© SAP AG 2002
© SAP AG
PLM146
9-274
Other Variant Configuration Tools: Unit Summary
You are now able to: Describe how variant configuration is saved (new structure!) Say which APIs and user exits exist in the variant configuration environment Use ALE to distribute variant configuration models Use the analysis tools for reporting Describe how modeling for the SAP IPC SCE differs from modeling for SAP R/3
© SAP AG 2002
© SAP AG
PLM146
9-275
Conclusion: Course Overview Diagram
Course Overview
1
More About Object Dependencies
6
Variant Configuration: Consolidation
2
Configuration Scenarios with BOM Explosion
7
Control Options in the Configuration Profile
3
Configuration Scenarios with Order BOMs
8
Configuration Scenarios Without BOM Explosion
4
Other Variant Configuration Tools
9
More About Constraints
5
Conclusion
10
© SAP AG 2002
© SAP AG
PLM146
10-276
Course Summary
Now you are familiar with and are able to use: Advanced settings of the configuration profile and interface design Special aspects of object dependencies Special features of the different scenarios Knowledge-based and result-oriented order BOMs Multilevel configuration structures Low-level and high-level configuration Additional tools (BAPI, ALE, user exits, and the analysis tool) The different ways of storing variant configuration data Hints on system performance © SAP AG 2002
© SAP AG
PLM146
10-277
Recommended Follow-up Activities
Go through the exercises using IDES data or your own data Read online documentation Read IMG documentation Read release notes
© SAP AG 2002
© SAP AG
PLM146
10-278
Appendix
Contents: Structure of customer example: Pump T-VPU## Data Sheet for Exercises Frequently-used menu paths
Ideas for Modeling
© SAP AG 2003
© SAP AG
PLM146
11-279
Customer Example Structure (Pump) Pump T-VPU## configurable
Casing T-VB1##
Met. sh. 100 - 700
Brg case 100 - 500
Electrics 100 - 400
configurable
Shaft T-VB2## configurable
Casing 100 - 410
Bearing 100 - 510 Grayc. 500 - 101 Alu. 500 - 102 Steel 500 - 103
Harness 100 - 432
Chip 100 - 420
Bolt 100 - 433
Color display 100 - 430 Power supply 100 - 431 Harness 100 - 432 Bolt 100 - 433
Bearing A 500 -501 Bearing B 500 -502
Harness 100 - 432
Bolt M 6x60 100 - 433
Color T-VB3## configurable
Shaft 100 - 300
Bearing C 500 -503 Slug for shaft 100 -310 Red 100 - 801 Yellow 100-803 Blue 100 - 805
T-OIL
© SAP AG 2003
© SAP AG
PLM146
11-280
1. Customer Example Substructure (Casing)
Casing T-VB1##
Grayc. 500 - 101 Alu. 500 - 102
T_VB1##
Pump for:
Oil, Water, Waste water, Suspension Vacuum, Wet pit, Rotary, Wing De, En, Fr, Es, Pt, Ru De, En, Es, Ru De, En, Ru 1000 - 100,000 l/h
Pump type:
configurable
Plnd/Prod. order without BOM explosion
Variant class:
Harness 100 - 432
Bolt M 6x60 100 - 433
Language: Documentation: Inscription: Pump lift: Weight: + (reference characteristics)
Steel 500 - 103
© SAP AG 2003
© SAP AG
PLM146
11-281
2. Customer Example Structure (Pump Without Shaft) Variant class: T_VPU##
Plnd/Prod. order with multilevel BOM explosion
Met. sh. 100 - 700
Casing T-VB1## configurable Plnd/Prod. order with single-level BOM explosion
Pump T-VPU##
Rotation: Max. W. pressure: Range:
CW, Ctr-CW, Any 2 - 10 bars open, closed
Length: Width: Area: Color:
10 - 100 cm 10 - 100 cm 0.01 - 1 m² Red, Yellow, Blue
configurable
Brg case 100 - 500
Electrics 100 - 400
R
Plnd/Prod. order without BOM explosion
© SAP AG 2003
© SAP AG
PLM146
11-282
3. Customer Example Structure (Pump Without Shaft) Variant class: T_VPU##
Plnd/Prod. order with multilevel BOM explosion
Pump T-VPU##
Sales order with multilevel BOM explosion
Met. sh. 100 - 700
Casing T-VB1## configurable Plnd/Prod. order with single-level BOM explosion
Rotation: Max. W. pressure: Range:
CW, Ctr-CW, Any 2 - 10 bars open, closed
Length: Width: Area: Color:
10 - 100 cm 10 - 100 cm 0.01 - 1 m² Red, Yellow, Blue
configurable
Brg case 100 - 500
Electrics 100 - 400
R
Plnd/Prod. order without BOM explosion
© SAP AG 2003
© SAP AG
PLM146
11-283
4. Customer Example Part Structure (Shaft)
Variant class:
T_VB2##
Connection:
Right-angled flange Round flange (2-hole) Round flange (4-hole) Other Red, Yellow, Blue
Color:
Bearing A 500 -501
Shaft 100 - 300
Harness 100 - 432
configurable
Order BOM Multilevel
Bolt M 6x60 100 - 433
Bearing B 500 -502 Bearing C 500 -503
Shaft T-VB2##
Color T-VB3## Order BOM Single level
Slug for shaft 100 -310
Red 100 - 801
configurable
T-OIL
Yellow 100-803
Variant class:
T_VB3##
Color:
Red, Yellow, Blue
Blue 100 - 805
© SAP AG 2003
© SAP AG
PLM146
11-284
5. Customer Example Structure (Pump) Variant class: T_VPU##
Plnd/Prod. order with multilevel BOM explosion
Pump T-VPU##
Sales order with multilevel BOM explosion
Met. sh. 100 - 700
Casing T-VB1## configurable Plnd/Prod. order with single-level BOM explosion
Rotation: Max. W. pressure: Range:
CW, Ctr-CW, Any 2 - 10 bars open, closed
Length: Width: Area: Color:
10 - 100 cm 10 - 100 cm 0.01 - 1 m² Red, Yellow, Blue
configurable
Brg case 100 - 500
R
Electrics 100 - 400
Shaft T-VB2## configurable Order BOM Multilevel
Plnd/Prod. order without BOM explosion
Color T-VB3## configurable Order BOM Sing-Level
© SAP AG 2003
© SAP AG
PLM146
11-285
Database Tables for Variant Configuration (1) KSSK
KLAH
KSML
CABN
CAWN
OBJEK
CLINT
CLINT
ATINN
ATINN
= Object key
= Internal class number
= Internal class number
= Internal char. number
= Internal char. number
KLART
KNOBJ
IMERK
ATNAM
ATWRT
= Class type
= Object no. for dep.
= Internal char. number
= Characteristic name
= Char. value (CHAR)
CLINT
OMERK
KNOBJ
ATFLV
= Internal class number
= Internal char. number
= Object no. for dep.
= From char. value (NUM)
ATFLB = To char. value (NUM)
KNOBJ = Object no. for dep.
CUCO
CUOB
CUEX
CUKB
OBJEK
KNOBJ
KNOBJ
KNNUM
= Object key
= Object no. for dep.
= Object no. for dep.
= Int. dependency no.
KNOBJ
KNNUM
KNNUM
KNNAM
= Object no. for dep.
= Int. dependency no.
= Int. dependency no.
= Dependency name
CUKN KNNUM = Int. dependency no.
© SAP AG 2003
MARA MARC CUCO VBAP INOB MAST KDST AUSP KSSK CUOB STPO CABN KLAH KSML CAWN CUEX CUKB CUKN
© SAP AG
General material data Plant data for material Master data table for configuration profiles Item data for sales document Assignment of an internal number to any object Link between material and bill of material Link between sales order item and bill of material Values assigned to characteristics Assignment table: object to class Assignment of object to dependencies BOM items Master data for characteristics Master data for class header Assignment of characteristics to classes Master data for characteristic values Dependency compilation Administrative information on dependency maintenance Dependency source code base for variants / configuration
PLM146
11-286
Database Tables for Variant Configuration (2) Database tables for routing
MARC MATNR = Material number
CUOBJ STDPD = Plant-specific material variant
= Material number
CUOBF SATNR = Cross-plant material variant
STLNR
STLTY
= Document number
POSNR
KNOBJ
= Item number
= Object no. for dep.
VBAP VBELN
= BOM number
MATNR = Material number
WERKS = Plant
KDST STLNR
= Configuration object
= BOM number
= Part 3
= Object no. for dep.
= Part 1
= Internal char. number
IBASE
= Item number
IBSYMBOL-ATINN
MATNR
KSSK
= Internal char. number
= Material number
OBJEK = Object key
INOB
AUSP
CUOBJ
OBJEK
= Internal object number
KNOBJ
= Database table of object
= Object key
ATINN = Internal char. number
KLAH CLINT = Internal class number
OBJEK
CUOB
= Object key
KNOBJ = Object no. for dep.
© SAP AG 2003
© SAP AG
= Internal item number
ATINN
OBTAB
MARA MARC CUCO VBAP INOB MAST KDST AUSP KSSK CUOB STPO CABN KLAH KSML CAWN CUEX CUKB CUKN
STPOZ
CABN
= Object key = Object no. for dep.
= BOM number
= Document number
POSNR
= Instance of configuration
OBJEK
STLNR
VBELN
IBIN-INSTANCE
CUCO
= BOM category
KNOBJ
MATNR CUOBJ
MATNR
STPO
PLPO PLFH PLFL
= Material number
MARA
MAST
General material data Plant data for material Master data table for configuration profiles Item data for sales document Assignment of an internal number to any object Link between material and bill of material Link between sales order item and bill of material Values assigned to characteristics Assignment table: object to class Assignment of object to dependencies BOM items Master data for characteristics Master data for class header Assignment of characteristics to classes Master data for characteristic values Dependency compilation Administrative information on dependency maintenance Dependency source code base for variants / configuration
PLM146
11-287
Database Tables for Variant Configuration (3) Data analysis: IBINOWN-INTTYP + IBINOWN-OBJKEY Root: IBINOWN-INSTANCE IBIN-INSTANCE
IBINOWN
IBINOBS
INSTANCE
INSTANCE
= Instance number
= Instance number
INTTYP
INTTYP
= Type of owner
= Type of observer
OBJKEY
OBJKEY
= Object key of owner
= Object key of observer
IBST
IBSTREF
INSTANCE
IN_RECNO
= Instance number
= Unique record number
PARENT
OBJKEY
= Superior component
= Object key
IBIN-IBASE All: IBIN-INSTANCE IBIN-IN_RECNO IBINVALUES-SYMBOL_ID IBSYMBOL-AT...
IBIB
IBIN
IBASE
IBASE
= IBase number
= IBase number
ROOT = Top-level component
ATINN = Internal char. number
ATWRT
= Instance number
OBJNR
IBINVALUES
= Object number incl. object type
IN_RECNO
= Unique record number
SYMBOL_ID = Symbol identifier
INSTANCE
IN_RECNO
IBSYMBOL
= Char. value (CHAR)
ATFLV
= Unique record number
= From char. value (NUM)
SYMBOL_ID
ATFLB
= Symbol identifier
= To char. value (NUM)
© SAP AG 2003
IBIB IBIN IBINT IBST IBINVALUES IBINOWN IBINOBS IBSTREF IBSYMBOL
© SAP AG
IBase administrative data Data of an instance version Instance descriptions Root relationship and is_part_of relationship ("Parent" and "Root") Assignment of a characteristic value to an instance Owner of root instance and therefore of IBASE (for example, sales order item) Instance observer (for example, follow-up documents for sales order, such as production order) BOM reference to an is_part_of relationship / instance Characteristic value (single value or interval)
PLM146
11-288
© SAP AG
PLM146
11-289
Data Sheet for Exercises
Explanation of Symbols in Exercises and Solutions Exercises Solutions Objectives Business Scenario Hints and Tips Warning or Caution
© SAP AG
PLM146
11-290
Data in the Exercises All data exists in IDES. The IDES demo data was used as a copy template. Type of Data
Exercise Data in IDES
Demo Data in IDES
Pump (configurable) …*)
T-VPU##
P-500
Casing (configurable) …*)
T-VB1##
500-100
Shaft (configurable) …*)
T-VB2##
500-300
Color (configurable) …*)
T-VB3##
Copy of 500-100
Casing (cast iron)
500-101
500-101
Casing (aluminum)
500-102
500-102
Casing steel
500-103
500-103
Cable structure
100-432
100-432
Screw (bolt) M 6x60
100-433
100-433
Sheet metal ST37
100-700
100-700
Bearing case
100-500
100-500
Ball bearing
100-510
100-510
Electronic
100-400
100-400
Casing for electronic drive
100-410
100-410
Circuit board M-1000
100-420
100-420
Color display
100-430
100-430
Mains adapter 100 –240 V
100-431
100-431
Bearing Case A
500-501
500-501
Bearing Case B
500-502
500-502
Bearing Case C
500-503
500-503
Color red without gloss
100-801
100-801
Color yellow without gloss
100-803
100-803
Color blue without gloss
100-805
100-805
Materials *) = Group ##
© SAP AG
PLM146
11-291
Oil (OH material)
T-OIL
T-OIL
Shaft
100-300
100-300
Slug for shaft
100-310
100-310
All the following data already exists in IDES for group 00. Data for all other groups also exists, unless it is marked with (*). In these cases, the data is created or assigned (bill of material, for example) in the exercises during the course. Bills of Material Header material
Component
T-VPU## (plant 1000) (usage 3)
L T-VB1## (*) L T-VB2## (*) R 100-700 L 100-500 L 100-400
T-VB1## (plant 1000) (usage 1)
L 500-101 L 500-102 L 500-103 L 100-432 L 100-433
T-VB2## (plant 1000) (usage 1)
L 500-501 L 500-502 L 500-503 L T-VB3## (*) L 100-432 L 100-433 L 100-300
T-VB3## (plant 1000) (usage 1)
L 100-801 L 100-803
© SAP AG
PLM146
11-292
L 100-805 L T-OIL
Classes (all *)
(300)T_VB1## (300)T_VB2## (300)T_VB3## (300)T_VPU##
Characteristics (all *)
© SAP AG
T01_##
Pump for
T02_##
Pump type
T03_##
Type of casing
T04_##
Pump capacity
T05_##
Language
T06_##
Documentation
T07_##
Lettering
T09_##
Country key
T10_##
SCREEN_DEP invisible
T11_##
Connection
T12_##
Color
T13_##
Length of sheet metal (cm)
T14_##
Width of sheet metal (cm)
T15_##
Area of sheet metal (m2)
T16_##
Rotation direction
PLM146
11-293
T17_##
Maximum working pressure (bar)
T18_##
Range
T19_##
Object Dependencies (*)
Net weight (material master)
T19N_##
Net weight of item
T19B_##
Gross weight of item
TROMS1_##
Size 1
TROMS2_##
Size 2
TROMEN_##
Quantity of variablesize item
T_SC_T03_##_1 T_SC_T03_##_2 T_SC_T03_##_3 T_CN_VB1## T_CS_VB1## T_PROC_T401_## T_PROC_T402_## T_PROC_T09_## T_PROC_T10_## T_PROC_T19_## T_SC_T11RE_## T_SC_T1124_## T_SC_T11XX_## T_SC_ROOT_1_## T_SC_PARENT_3_## T_SC_ROOT_PARENT_5_##
© SAP AG
PLM146
11-294
T_PROC_ROMS_## T_CN1_VPU## (N-BOM profile) T_CN2_VPU## (N-SET profile) T_CS1_VPU## (in T_CN1_VPU##) T_CS_VPU##_221 (in T_CN2_VPU##) T_CS_VPU##_222 (in T_CN2_VPU##) T_CS_VPU##_223 (in T_CN2_VPU##)
Variant Tables (*)
T_SEL_COND_## T_CONSTRAINT_##
Configuration Profiles (*)
For T-VB1##
0-BOM 1-BOM
For T-VB2##
N-OBOM
For T-VB3##
1-OBOM
For T-VPU##
N-BOM N-SET
© SAP AG
PLM146
11-295
© SAP AG
PLM146
11-296
Frequently-Used Menu Paths Activities
Menu Path
Master Data Maintenance: Display material master
1. SAP Menu → 2. Logistics → 3. Production → 4. Master Data → 5. Material Master → 6. Material → 7. Display → 8. Display Current
Change material master
…→ 7. Change → 8. Immediately
Create material master
…→ 7. Change General → 8. Immediately
Display material BOM
…→ 5. Bills of Material → 6. Bill of Material → 7. Material BOM → 8. Display
Change material BOM
… → 8. Change
Create material BOM
… → 8. Create
Display routing
… → 5. Routings → 6. Routings → 7. Standard Routings → 8. Display
Change routing
…→ 8. Change
Create routing
… → 8. Create
Classification Objects: Characteristics maintenance
1. SAP Menu → 2. Cross-Application Components → 3. Classification System → 4. Master Data → 6. Characteristics
Class maintenance
…→ 5. Classes
Variants Menu Objects: Display single dependency
1. SAP Menu → 2. Logistics → 3. Central Functions → 4. Variant Configuration → 5.Dependency → 6. Single Dependency → 7. Display
Change single dependency
…→ 7. Change
Create single dependency
… → 7. Create
© SAP AG
PLM146
11-297
Activities
Menu Path
Variants Menu Objects (Continued): Modeling environment Variant configuration ->
1. SAP Menu → 2. Logistics → 3. Central Functions → 4. Variant Configuration → 5. Modeling Environment for Variant Configuration
Display constraints and constraint nets
1. SAP Menu → 2. Logistics → 3. Central Functions → 4. Variant Configuration → 5. Dependency → 6. Dependency Net → 7. Display
Change constraints and constraint nets
…→ 7. Change
Create constraints and constraint nets
… → 7. Create
Display configuration profile
1. SAP Menu → 2. Logistics → 3. Central Functions → 4. Variant Configuration → 5. Configuration Profile → 6. Display
Change configuration profile
…→ 6. Change
Create configuration profile
… → 6. Create
Display variant table structure
1. SAP Menu → 2. Logistics → 3. Central Functions → 4. Variant Configuration → 5. Tools → 6. Table Structure → 7. Display
Change variant table structure
…→ 7. Change
Create variant table structure
… → 7. Create
Maintain variant table contents
1. SAP Menu → 2. Logistics → 3. Central Functions → 4. Variant Configuration → 5. Tools → 6. Table Contents → 7. Maintain
Transfer variant table contents → database table
1. SAP Menu → 2. Logistics → 3. Central Functions → 4. Variant Configuration → 5. Tools → 6. Table Contents → 7. Transfer to Database Table
Create pricing conditions
1. SAP Menu → 2. Logistics → 3. Central Functions → 4. Variant Configuration → 5. Environment → 6. Pricing → 7. Create Condition
Change pricing conditions
…→ 7. Change Condition
Display pricing conditions
… → 7. Display Condition
© SAP AG
PLM146
11-298
Activities
Menu Path
Maintain order BOM (variant configuration)
1. SAP Menu → 2. Logistics → 3. Production → 4. Master Data → 5. Bills of Material → 6. Bill of Material → 7. Order BOM → 8. Maintain (Multilevel)
Display order BOM
… → 8. Display (Multilevel)
ABAP Workbench ABAP Dictionary
1. SAP Menu → 2. Tools → 3. ABAP Workbench → 4. Development → 5. ABAP Dictionary
Data Browser
1. SAP Menu → 2. Tools → 3. ABAP Workbench → 4. Overview → 5. Data Browser
Sales Create sales order
1. SAP Menu → 2. Logistics → 3. Sales and Distribution → 4. Sales → 5. Order → 6. Create
Change sales order
…→ 6. Change
Create sales order
…→ 6. Create
PP Material Requirements Planning Planning for sales order
1. SAP Menu → 2. Logistics → 3. Production → 4. MRP → 5. Planning → 6. Single-Item Planning, Sales Order
Display stock/requirements list
1. SAP Menu → 2. Logistics → 3. Production → 4. MRP → 5. Evaluations → 6. Stock/Reqmts List
© SAP AG
PLM146
11-299
Appendix: Ideas for Modeling
Contents: Introduction to Modeling The Configurable Product Dependencies for the Configurable Product
© SAP AG 2002
© SAP AG
PLM146
12-300
Appendix: Hints
This material is not part of the standard course. This section contains additional material to give you ideas for modeling variants. Each customer is different, so there are few general rules that will necessarily apply to everyone. For this reason, this section contains only suggestions for setting up a variant model.
© SAP AG 2002
© SAP AG
PLM146
12-301
Part 1: Introduction to Modeling
Introduction to Modeling
© SAP AG 2002
© SAP AG
PLM146
12-302
Data Structure for Variants
SD SD Conditions Conditions
Configurable Object Configurable Configurable material, material, (300) (300)class, class, Characteristics Characteristics
Dependencies
PP PP BOM BOM Routing Routing PS PS Network Network
Dependencies Dependencies
PM PM Maint. Maint.ord. ord. SM SM MSS MSS © SAP AG 2002
© SAP AG
PLM146
12-303
Introduction to Variant Configuration
Define who is involved Product manager Design engineer Work scheduler, and so on
Execution Knowledge Acquisition Implementation Testing
© SAP AG 2002
© SAP AG
PLM146
12-304
Who is Involved
Central group: Product manager Design engineer
Configurable Configurable material, material, (300) (300)class, class, Characteristics Characteristics
Dependencies
Dependencies Dependencies
The data structure determines the team structure
SD SD Conditions Conditions
Sales
PP PP BOM BOM Routing Routing
Production
PS PS Network Network
Project production
PM PM Maint. Maint.ord. ord.
Plant maintenance
SM SM MSS MSS
Service management
© SAP AG 2002
© SAP AG
PLM146
12-305
Procedure
Task of the central group Product identification Characteristics and characteristic values Central dependencies
Preparatory work in departments Collecting and setting up data General, non-product-specific data, for example, that pricing always depends on customer plus material
As soon as the central group has finished, the departments model according to central specifications
© SAP AG 2002
© SAP AG
PLM146
12-306
Knowledge Acquisition
Sources Sales catalog, technical documentation Legacy configurator New product structure
Viewpoints New structure or 1:1 copy of existing structures Reengineering
The target structure must be the focus
© SAP AG 2002
© SAP AG
PLM146
12-307
Working with Knowledge Sources
Highlight objects in red Objects such as products, bills of material, and task lists, depending on what you are currently working on
Highlight attributes in yellow Attributes are often described with adjectives in continuous prose, such as large, or colored
Highlight configuration knowledge in green Configuration knowledge is often present in the form of flow diagrams or descriptions, such as "Whenever… then…"
© SAP AG 2002
© SAP AG
PLM146
12-308
Part 1: Topic Summary
The data structure determines the order in which you set up a configurable product. A project group for modeling configurable products comprises a central, interdepartmental group, plus groups in the departments. The central project group defines important structures for all departments. Sources for knowledge acquisition must be processed methodically before they are formalized.
© SAP AG 2002
© SAP AG
PLM146
12-309
Part 2: The Configurable Product
The Configurable Product
© SAP AG 2002
© SAP AG
PLM146
12-310
Knowledge on a Configurable Product
Identifying Configurable Products Name components from the customer viewpoint, if the product is multilevel
Define variables Restrict variables "You can only select this option if ... "
© SAP AG 2002
© SAP AG
PLM146
12-311
Identifying Configurable Products
What is a product and what are its variants? One product with millions of variants? Millions of products without variants? A middle way?
Is a product single-level or multilevel? Several products are logically related
Viewpoint and language of customer are always decisive
© SAP AG 2002
© SAP AG
PLM146
12-312
Multilevel Configuration Only If...
The customer sees the product as multilevel Product comprises many logically related units Example: standing closet and wall closet with the same finish
The same component is configured in different ways One product on the top level does not accurately represent a configuration Example: several standing closets, each with a different number of drawers => can only be determined for each closet separately, not for the entire kitchen
© SAP AG 2002
Check carefully whether multilevel configuration is necessary for your application. In many cases, it is sufficient to include a configurable material in the BOM without configuring it separately. The BOM and routing of the configurable material are determined from the configuration of the header material. Multilevel configuration can be useful if you require an order BOM for certain components, but you always want to configure others dynamically.
© SAP AG
PLM146
12-313
Modeling Questions for Multilevel Models
How many product levels (= BOM levels)? The fewer the better. Ideally: only use one level. Customer must be able to understand the structure.
Product levels to match BOM levels? Can be mapped separately
Which characteristics on which level? As general as possible => Characteristics on top level As specific as necessary => Characteristics at component level
© SAP AG 2002
© SAP AG
PLM146
12-314
Separate Structures for Product and Production
Customer viewpoint differs from production viewpoint Kitchen example: production only looks at the individual closets. The closets are assembled to make a kitchen at the customer's premises. The "kitchen" level is not relevant to production.
Possible scenarios Individual components different in production => Define BOM items as relevant to sales Sales and production use different structures => Separate BOMs for sales Header material not relevant to production => Transfer requirements at component level
This section looks at the product structure only
© SAP AG 2002
© SAP AG
PLM146
12-315
Product Modeling Task 1
Identify your products red in your knowledge sources Use the terms highlighted in red
Decide for each product whether it must be multilevel How is the product described in the sales catalog?
If multilevel: list the components Make a graphic of the product hierarchy
© SAP AG 2002
© SAP AG
PLM146
12-316
Use of Groups
If you maintain your data directly in SAP R/3, create groups in Customizing for: Materials (discuss with your project section leader first) Characteristics Classes Dependencies (procedures for pricing in SAP_PRICING)
Create a separate group for each product Use the same group name for different types of master data for the same product
© SAP AG 2002
© SAP AG
PLM146
12-317
Define Characteristics
Characteristics are configuration parameters from the customer viewpoint Characteristics must reflect the customer's terminology Characteristics and their values are printed in the order confirmation Consider using language-independent terminology for your characteristics and values
Characteristics must describe a product in its entirety From the viewpoint of sales, production, purchasing, plant maintenance, and so on
© SAP AG 2002
© SAP AG
PLM146
12-318
Working with Organizational Areas
Organizational areas let you show only certain characteristics, depending on the task at hand Not all characteristics are relevant to all steps of order processing Example: You do not need the color in a quotation, but you do in a sales order => Separate organizational areas for quotation and sales order
For each characteristic, note the steps where it is not relevant Group together related steps in the process when you define organizational areas
© SAP AG 2002
© SAP AG
PLM146
12-319
How Not to Define Characteristics (1)
Two characteristics representing the same attribute Example 1: one characteristic for brake horsepower, one for kilowatt Example 2: one characteristic each for length, width, and area
Characteristics on the wrong level of the hierarchy Example: characteristic FINISH for each component of the kitchen, although all components have the same finish
© SAP AG 2002
© SAP AG
PLM146
12-320
How Not to Define Characteristics (2)
No reuse of characteristics The same characteristic is created multiple times for different products Example: the standing closet and the wall closet have the same finish, so there must be one characteristic for both products Different allowed values or meanings collected in one characteristic Example: the length of a ship and the length of a microprocessor must not be represented by the same characteristic
© SAP AG 2002
© SAP AG
PLM146
12-321
Product Modeling Task 2
Identify your characteristics: Use the terms highlighted in yellow in your knowledge sources Enter the allowed values for each characteristic Set up naming conventions for characteristics and their values, especially for language-independent keys
Create a new page for each product A new page for each component, too, if the structure is multilevel
Start a new line: For each characteristic. List details of the characteristic header. For each characteristic value.
© SAP AG 2002
© SAP AG
PLM146
12-322
Example of Characteristics List
Product: Standing closet Name sc_width 60cm 80cm
Description Width
sc_opng L R
Door opening char Left Right
Data type Single/multi-val. Opt./reqd num [cm] Single-value Required
Single-value
Display only
Required
You could use a spreadsheet program to create a list. You could then create a batch-input program to transfer the data to SAP R/3.
© SAP AG 2002
© SAP AG
PLM146
12-323
Revision of the Product Structure
After assigning characteristics, examine your product structure critically. Which products must be grouped together as variants? Which products must be broken down?
Document your criteria for grouping together and breaking down products.
© SAP AG 2002
© SAP AG
PLM146
12-324
Grouping Together and Breaking Down Products
Quantitative criteria Number of common characteristics Number of common characteristic values Common configuration logic (see next section)
Qualitative criteria Are products or characteristics essentially different? Example: a mosquito is not an elephant, although both have long legs and a long nose Does the customer understand why products are grouped together or broken down?
© SAP AG 2002
© SAP AG
PLM146
12-325
Part 3: Dependencies
Dependencies
© SAP AG 2002
© SAP AG
PLM146
12-326
Dependencies Can Be Assigned...
At characteristic or characteristic value level: Precondition Selection condition Action Procedure
At configuration profile level: Action Procedure Constraint net
© SAP AG 2002
© SAP AG
PLM146
12-327
Dependencies at Characteristic (Value) Level (1)
Apply to all products that use the characteristic If one dependency applies to many products, dependency maintenance involves less work Exception: you assign the dependency to a characteristic for one class only
The knowledge base is scattered among many characteristics If a product has many complex dependencies, dependency maintenance involves more work However, on the configuration screen, you can display the dependencies assigned to each characteristic and value
© SAP AG 2002
© SAP AG
PLM146
12-328
Dependencies at Characteristic (Value) Level (2)
You can maintain dependencies at characteristic (value) level only if you want to: Hide characteristics Hide characteristic values (except for restrictable characteristics) Make optional characteristics into required characteristics
© SAP AG 2002
© SAP AG
PLM146
12-329
Dependencies at Configuration Profile Level
Apply to only one configuration profile However, a dependency can be used in many configuration profiles If the same dependencies must be repeatedly assigned to many configuration profiles, dependency maintenance involves more work Exception for constraints: you can group together many constraints in a constraint net and assign the net to many configuration profiles
All of the dependencies are assigned to one object If a product has many complex dependencies, dependency maintenance involves less work
© SAP AG 2002
© SAP AG
PLM146
12-330
Complex Dependencies
To calculate a third characteristic value from two known characteristic values, it is best to assign the dependency to the configuration profile. Example: Area = Length * Width
© SAP AG 2002
© SAP AG
PLM146
12-331
Product Modeling Task 3
Set up your configuration knowledge: Assign dependencies to products, characteristics, and values Use the terms highlighted in green in your knowledge sources Assign cross-characteristic dependencies to the product
Extend your lists from Part 2 Create tables for more complex interdependencies
© SAP AG 2002
© SAP AG
PLM146
12-332
Example of Extended Lists
Product: Standing closet Cross-characteristic: Standing closet only for "Blue Moon" range Name sc_width 60cm 80cm
Description Width
sc_opng L R
Door opening char Left Right
Data type . . . num [cm]
Condition IF Height > 180 IF Height < 160
Set doorknob installation point = 'Right' Set doorknob installation point = 'Left'
You could complete the tables from Part 2 by adding a column for configuration knowledge.
© SAP AG 2002
© SAP AG
PLM146
12-333
Tables
For each table, document: Whether it only checks a value combination Whether certain columns are used to calculate the values for others: mark these columns
Assign the tables to the products
© SAP AG 2002
© SAP AG
PLM146
12-334
Modeling Knowledge in the Bill of Material
Classification knowledge Class items Individual classified objects
Dependencies Selection conditions Procedures (actions)
Configurable phantom assemblies
© SAP AG 2002
© SAP AG
PLM146
12-335
When Do You Use Class Items?
Objects classified in the class are: Interchangeable Large in number
Selection: Always follows the same scheme Is logically simple - using AND relationships, for example For more complex logical expressions, it can be useful to define a selection condition for the class item
© SAP AG 2002
© SAP AG
PLM146
12-336
Advantages of Class Items
Easier to maintain dependencies Selection conditions for BOM items not needed If there are changes, you need to maintain only the class Caution: these changes are at client level, but BOM changes are at plant level
Better overview in the bill of material One generic item instead of many material items No need to search for dependencies in the BOM
© SAP AG 2002
© SAP AG
PLM146
12-337
Fine-Tuning of Class Items
Additional data screen of class Check: required, optional, or multiple selection Default values
Dependencies for class item Set characteristic values for finding objects in class If characteristics do not appear directly on configuration screen
Manual search for objects in class during configuration
© SAP AG 2002
© SAP AG
PLM146
12-338
Using Dependencies to Find Objects in Classes
Dependencies set characteristic values for class Used instead of assigning values directly on the value assignment user interface Dependencies are assigned to class item (not class) You can use the following dependencies: Procedures (Actions) Constraints (only if fixing the search result)
Objects are found according to characteristic values
© SAP AG 2002
Dependencies link characteristics in the configuration to characteristics of classes in the BOM. Multiple assignments are supported Characteristics and values in the configuration can be totally different from those in the class Without dependencies for the class item, the search for objects in the class uses: Characteristics that occur in the configuration and in the class (same name) The values assigned during configuration
© SAP AG
PLM146
12-339
Manual Search for Objects in Configuration
On the configuration screen, you can: Choose Configuration structure to see an overview of the configurable objects and class items Select a class item and start finding objects
This is the easy way because: No dependencies are required Characteristics for finding objects need not be in the configuration
You can use dependencies to check consistency
© SAP AG 2002
You can start finding objects in the class: On the configuration screen In the configuration result In the order BOM This is useful if the components can be selected directly by the user according to the classification. Advantages: Very flexible Least work for modeling You can use constraints to check consistency. Example: Objects: - (300) Computer where application = application, - (200) Processor where power = power Condition: - application = screen_processing and power = low Restriction: - false - * A computer for screen processing cannot work with - * a low-power processor.
© SAP AG
PLM146
12-340
Classified Objects as BOM Items: Classification as a Selection Condition
Instead of a class item, you can enter classified objects as BOM items Materials can be assigned to a class or class type that is not defined for use in BOMs Enter the class type on the item detail screen
Entering classified objects as BOM items is useful if: You want to avoid selecting from all objects classified in the class You want to use existing classifications to avoid creating selection conditions => dependency maintenance involves less work
© SAP AG 2002
© SAP AG
PLM146
12-341
Task for Class Items
Take a printout of your bill of material: Highlight in color all the materials that could be defined in a class item Write the number or name of a class for each class item
For each class, create a list of: Characteristics Classified objects Characteristic values for materials
Set up a BOM containing the class items
© SAP AG 2002
© SAP AG
PLM146
12-342
Example of Class List
Class (300) Standing closet Material No. hs_01 hs_02 hs_03 hs_04 hs_11 hs_12 hs_13 hs_14
Width 60 80 60 80 60 80 60 80
Height 180 180 200 200 180 180 200 200
Finish Oak Oak Oak Oak Beech Beech Beech Beech
Define (if required) whether at least 1 object or at most 1 object must be selected
© SAP AG 2002
© SAP AG
PLM146
12-343
Dependencies in BOMs
You can assign the following dependencies to a BOM item: Selection conditions Actions Procedures
You cannot assign dependencies to a BOM header Processing of the entire BOM is limited to $SUM_PARTS and $COUNT_PARTS Prerequisite: multilevel, interactive configuration
© SAP AG 2002
You cannot assign preconditions or constraint nets to a BOM item. Preconditions do not make sense here, because they explain when the assigned object is not valid, but do not say when it is valid. With a BOM item, you need to be definite about exactly when it is selected. Processing of the entire BOM is limited. It can be useful to calculate information such as the sum of all component weights and the frequency of components. You can use a constraint with $sum_parts or $count_parts for processes of limited scope. However, the user must configure the BOM interactively.
© SAP AG
PLM146
12-344
Variable-Size Items and Actions
Actions do not trigger recalculations in variable-size items If an action overwrites the value or quantity of a size, this does not trigger recalculation in MRP Workaround: use a procedure to calculate the actual quantity directly
© SAP AG 2002
© SAP AG
PLM146
12-345
Complex Dependencies
SAP R/3 calculates a fact for each applicable dependency System performance suffers if dependencies are very complex
For this reason, it can be advisable to: Break down complex expressions into more simple expressions Use the simplified expressions multiple times Avoid using local dependencies
© SAP AG 2002
© SAP AG
PLM146
12-346
Differences Between Dependency Types
Preconditions are conjunctive: If logically related by AND, split up and assign separately A precondition is a necessary condition (for a characteristic value, for example)
Selection conditions are disjunctive: If logically related by OR, split up and assign separately A selection condition is a sufficient condition (for a BOM item, for example)
© SAP AG 2002
© SAP AG
PLM146
12-347
Simplifying Preconditions: Example
a 1 ∧ (b1 ∨ c1 ) ∧ d 1 a 2 ∧ (b1 ∨ c1 ) ∧ d 1 a 1 ∧ (b2 ∨ c 2 ) ∧ d 1
a1 , a2 , a3 , a4 b1 ∧ c1 , b2 ∧ c2 d1 , d 2 , d 3
... a 4 ∧ (b2 ∨ c 2 ) ∧ d
3
24 preconditions create 24 facts
You can do the same with 9 preconditions.
© SAP AG 2002
© SAP AG
PLM146
12-348
Why Split Complex Expressions?
System performance improves, because SAP R/3 needs to calculate fewer facts Dependency maintenance involves less work because: Logical expressions are simpler (overview) There are fewer dependencies
© SAP AG 2002
© SAP AG
PLM146
12-349
Only Split Conditions If...
It makes sense semantically For example, due to different functional or logical background
You want to improve: System performance: the system needs to calculate fewer facts Dependency maintenance: it is easier to see what is happening (for example, there are fewer dependencies and they are simpler)
Resist the temptation to overdo it!
© SAP AG 2002
© SAP AG
PLM146
12-350
Task for Improving Dependency Maintenance
Create a list of all dependencies - for one product, for example Duplication: Delete dependencies that have the same source code Check local dependencies very carefully
Complex logical expressions: Collect similar logical expressions Check whether it makes sense to break them down
© SAP AG 2002
© SAP AG
PLM146
12-351
View more...
Comments