The configuration profile (CU41) is the control center for any VC model. It ties together the class, the configurable material, the BOM, the routing, and all dependencies.
If the class defines the characteristics, the configuration profile defines how they interact.
What Is a Configuration Profile?
Created in CU41, the configuration profile is assigned to a configurable material. It specifies:
- Which class the configuration uses
- How procedures execute (in what order)
- Which dependency nets (constraints) apply
- BOM and routing applicability settings
Key CU41 Tabs
Basic Data Tab
- Configurable material: the KMAT or configurable material number
- Class: the class containing all variant characteristics
- Base quantity: default 1 for unit-based configuration
- Allowed object types: which objects (BOM, routing) are included
Assignment Tab
- Procedure list: ordered list of procedures assigned to the profile
- Dependency nets: constraint groups (created in CU21)
BOM Explosion Tab
Controls how and when the BOM is exploded:
- BOM explosion: determines which BOM alternative(s) apply
- Status: controls BOM selection
Why the Profile Procedure Order Matters
Procedures on the profile run in a defined sequence. Procedures on individual characteristics lose this ordering guarantee.
Processing sequence:
1. Profile procedures (in order listed)
2. Procedures on characteristics (no guaranteed order)
3. Procedures on characteristic values
4. Preconditions
5. Selection conditions
If Procedure A sets a value that Procedure B depends on, both must be in the profile procedure list, with A before B. Procedures scattered across characteristics may run in an unpredictable order.
Dependency Nets (CU21)
Constraints are grouped into dependency nets in CU21. The net is assigned to the configuration profile. This centralizes all cross-object constraint logic in one place.
Best practice: Use constraint nets on the profile instead of preconditions on individual characteristic values. Finding all preconditions means checking every value of every characteristic. Constraints live in one place.
CUOB Table Assignment
Every configuration profile assignment is stored in CUOB:
Material → CUCO (profile header) → CUOB (dependency assignments)
CUOB stores KNOBJ (object number) and KNNUM (dependency number) for every object linked to the profile.
Common Mistakes
- No profile procedure order: scattering procedures across characteristics then wondering why they execute unexpectedly
- Missing dependency net assignment: creating constraints in CU21 but forgetting to assign them to the profile
- Wrong BOM explosion setting: getting incorrect BOM selection because the profile's BOM settings don't match the configuration scenario
Best Practices
- Always use profile procedures for production logic
- Centralize constraints in dependency nets on the profile
- Document the procedure order in comments
- Use dependency trace via CU50 to verify profile-dependency linkage one class per profile: multiple classes add complexity
Sources: SAP Help: Configuration Profile | CU41 transaction documentation