SAP Classsification System

 
  
Study Material Contributed by Ulhas Kavle - Senior SAP Consultant
 

SAP Characteristics

 

SAP Characteristics

 

 

One can create characteristics through the use of transaction code CT04 in the cross application classification system of SAP.

 

A characteristic is a Specification master data which defines the specification and gives it an identity in SAP. Characteristics describe the properties of objects.

 

Example: Characteristic “COLOR” has the values 'red', 'green', and 'blue'. When you classify an object, you use this characteristic to specify the color of the object.

 

Example: Characteristic “Viscosity” has the values ’10 cP', ’20 cP', and ’30 cP'. When you classify an object, you use this characteristic to specify the color of the object.

 

 
SAP Characteristics are mostly used to define specifications and record their values for example “width of product”, “length of product”, “color of paint”, “density of steel coil”, “tensile strength of steel coil”, “pH value of product”, “viscosity of product”, “carbon content in steel”, “magnesium content in steel”, “etc. On the other hand you can define characteristics to record values for “manufacturing line”, “shift supervisor” etc, SAP also provides standard reference characteristics with automatic value recording for characteristics like the “Production date”, “shelf life”, “last goods receipt date” etc., referencing the same from a SAP table and field.  

 

As a consultant we can use characteristics in the material class or batch or variant class to record values for certain features or characteristics which are not available in SAP or not provided by SAP.

 

SAP Characteristics can be used to define values for a given feature in:

 

  • A Batch Class defining the specifications and their values for the produced goods
  • A Material Class defining the standard theoretical material specifications
  • A Variant classes where specifications are used to configure a product according to customer provided values
  • Any other Class type where you have to define certain features and specifications and give predefined values to it, as required.

 

When creating a characteristics, one needs to define the format for the values it would carry (character alphanumeric or date or numeric format) and if required a predefined set of values which are allowed for use at the time of result recording (Values in the character format if the characteristics is a character format characteristics or the values can be numerical in the form of single value or tolerance range. If the Characteristics have no values, then any value can be recorded for the characteristics provided the “additional values allowed indicator in the characteristics is set).

 

 
Note: There can be situations where the allowed tolerances changes material wise; in which case you can leave the values section in Characteristics as blank and maintain the required tolerances in the characteristics at the material master classification view for the batch class.

 

Characteristics are also called as General characteristics and they differ totally from the Master inspection Characteristics. A Characteristic is linked with the Master Inspection Characteristics, so that the QM inspection data recorded against a Master Inspection characteristic can flow in to the Characteristics of the Batch Record.

 

Eventually the characteristics are grouped together in a class to specify the set of characteristics that belong to a particular group of Materials. This grouping of characteristics is called “Creation of Class”. This Class is further Assigned to a set of Materials that have the same set of characteristics.

 

 

Creation of SAP Characteristics

 

 

For creating characteristics you have to maintain at least the basic data view to specify the name, description, group and format of the characteristics.

 

You can use the description tab to specify the description of the characteristics in various languages used for log-on.

 

The Allowed values tab can be optionally used to restrict the values that would be used while recording the characteristics.

 

The Additional data tab can be used to make the characteristics a reference characteristic so that its values can be fetched from a standard SAP table. At the same you can set to be a hidden characteristic or characteristics which would not carry any values at all.

 

The Last tab called the restrictions tab allows you to restrict the use of the characteristics to a certain class type only. This again is optional. Not doing this allows you to use the characteristics in any class type across the client.

 

 

 

Basic Data View

 
 
 
 
 
Name of Characteristics

 

 
If the name is more than one word then use underscores (underscore _) to separate the words in the name. For example Characteristics steel carbon content can have a name such as “CARBON_CONTENT”. It is always recommended that you should not use blank or hyphens as a word separator.
 
 
Description of Characteristics
 
 
You can maintain a description of the characteristics name chosen. For example you can have a description as – Carbon Chemistry %.
 
 
 
Characteristics Group
 
 
You can create a characteristics group in configuration, but you can choose not to use this field.
 
 
Status
 
 
You should use the characteristics status to lock it for use or to release it for use in classes. If you are creating in the process of creation, you can also choose the status – “in Preparation”.

 

 
Format of Characteristics
 
 
One can create characteristics, to have a value in date format or character format (alphanumeric value up to 30 characters) or a numeric value (with number of characters and the number of decimals places within those characters and a UOM).

 

For example if you are creating a characteristics with characters as 5 and number of decimals 3, it can carry a value as – 12.345 and if you are creating characteristics with total characters as 7 and number of decimals as 2, then it can carry value as – 12345.67.

 

 
UOM
 
 
The UOM of the characteristics has to be pulled in from the drop-down available. If a certain UOM does not exist in the drop down, you should create the UOM in the SPRO (IMG customizing). Units of measure are defined in Customizing for Global Settings by choosing Units of Measurement. Use the transaction code CUNI for creating or changing the Unit of Measure (path SPRO >>> SAP NetWeaver >>> General Settings >>> Check Unit of Measure.

 

 

Template of characteristics
 
 
You can have a predefined template with number of characters and decimals and UOM preconfigured thereby avoiding the pain of entering characters, decimals and UOM.

 

 
Single or Multiple Values
 
 
You have to mention whether you want to maintain single value result or multiple value (more than one value) result for the characteristics (when it is used).

 

 
Intervals allowed
 
 
When you choose intervals allowed, you can maintain values in the form of intervals for numeric characteristics instead of maintain an absolute value. For example you can maintain result value for the characteristics (wherever it is used in batch class or material class) in the form of intervals. Note: If you want to activate the characteristics as an intervals allowed then the characteristics should be marked as “Multiple Value” Characteristics (This is a Mandatory requirement)

 

 

Restrictable Characteristics
 
 
You can restrict the allowed values for this characteristic in Variant configuration.

 

 
Entry required
 
 
When you feel that the users should always maintain/record a value for this characteristics (wherever it is used), you should mark the characteristics as mandatorily required for entry. If the characteristics is being used in a batch class with an entry required indicator, then without a Characteristics value being entered for this characteristics goods receipt is not saved (thus value becomes mandatory). Similarly if the characteristic is used in a material class, a value entry for the characteristics in the material master classification view becomes mandatory.
 
 
 
Assigning Object Dependencies
 
 
If you want to hide a characteristics value assignment or you want to hide the characteristics, depending upon the value of other characteristics or if you want to assign a value to a characteristics depending upon the value of other characteristics, then you can make use of object dependencies and assign the same to the characteristics or to the value of the characteristics which you want to govern.
 
You can assign the following type of object dependencies to a characteristics or characteristics values:
 
 
A) Pre-conditions (Both Characteristics and Characteristcis values)
 
B) Selection Conditions (Both Characteristics)
 
C) Procedures (Both Characteristics and Characteristcis values)
 
 
 
1st Example: Pre-conditions for Characteristics Values
 
 
If you are producing a Honda car, then a "Accord EX" Brand can only have "Leather Seating of Type AA".
 
Create two characteirstics "Brand" and "Seating" and assign both the characteristics the material that is being produced, it can be a configurable material used in varaint configuration or it can be a regular material whose value assignment needs to be governed (it can be controlling the value assignment in materia class or a batch class or in a variant class) see below:
 
 
Characteristics - BRAND -
 
01 - HONDA CITY
02 - HONDA CIVIC LX
03 - HONDA CIVIX EX
04 - HONDA ACCORD LX
05 - HONDA ACCORD EX
 
 
Characteristics - SEATING
 
01 - CLOTH SEATING TYPE TQ
02 - CLOTH SEATING TYPE HV
03 - LEATHER SEATING TYPE PT
04 - LEATHER SEATING TYPE AA   ($SELF.BRAND = '05')
 
 
The object dependencies "Z01" - Precondition (just an example name) can be created as a precondition with an algorithm $SELF.BRAND = '05'. The object dependency must be assigned to the value 04 - Leather Seating of Type AA of the characteristics "Seating"
 
 
 
2nd Example: Pre-conditions for Characteristics Values
 
 
You may also want to hide the characteristics Value - "04"  (Leather seating of type AA) for characteristics "Seating", if the characteristics "Brand" does not have a value "05" (Honda Accord EX), then you need to create a object dependency "Z02" and assign it to the characteristics value "04" of the characteristics "Seating"
 
Object Dependency - Z02 - Precondition - $SELF.BRAND = '05' and SPECIFIED BRAND
 
 
 
3rd Example: Pre-conditions for Characteristics
 
 
The characteristics "Seating" is available for use and value assignment if the value of the characteristics "Brand" is "05" (Honda Accord EX). To have the characteirstics open, you can do so by assigning an object dependency (Z03) to the characteristics "Seating" at the header level.
 
Object dependency Z03 - Precondition - $SELF.BRAND = '05'
 
 
 
4th Example: Pre-conditions for Characteristics Values
 
 
You may also want to hide the characteristics "Seating", if the characteristics "Brand" does not have a value "05" (Honda Accord EX), then you need to create a object dependency "Z04" and assign it to the characteristics "Seating" at the header level.
 
Object Dependency - Z04 - Precondition - $SELF.BRAND = '05' and SPECIFIED BRAND
 
 
 
5th: Selection Condition for Characteristics
 
 
Assigning Selection Conditions to a characteristics would make it mandatory for the value assignment to the characteristics based on a value assigned to the other characteristics.
 
The characteristics "Seating" should be entered with a characteristics value if the value of the characteristics "Brand" is "05" (Honda Accord EX). To have the characteirstics mandatory for input, you can do so by assigning an object dependency (Z05) to the characteristics "Seating" at the header level.
 
Object dependency Z05 - Selection condition  = $SELF.BRAND = '05'
 
An object dependency - Z03 - Precondition added to the characteristics would unhide the characteristics "Seating" if brand = 05 (Honda Accord EX) - $SELF.BRAND = '05'
 
Both the precondition and selection condition working together would firstly unhide the characteristics and make an entry mandatory respectively.  
 
 
 
 
6th: Procedures for Characteristics
 
 
Procedures are object dependencies which are used to infer the characteristics values. Procedures can be used at characteristics header level or at characteristics value level. In varaint configuration scenarios you can assign procedures to the configuration profiles.
 
In Variant configuration, procedures can be used to change BOM quantity or change the Routing/Recipe Standard Values.
 
Procedures are also used to default values to characteristics.
 
 
For example:
 
When you are in a business of manufacturing of steel, you can have the theoretical weight of the steel billets inferred through the weight and length of the billet as shown below:
 
Characteristics
 
Width = P m
Length = Q m
Height = R m
Weight =  ? cubic meter
Packing_Type =
 
$SELF.Weight = $Self. width * $Self.Length * $Self.Height
 
 
Similarly, you can also infer the value of characteristics "Packing_Type" depending upon the weight of the steel billet. Use a source code as below:
 
$Self. Packing_type = 'CONTAINER1' IF $Self.Weight < 100
$Self.Packing_type = 'CONTAINER2' IF $self.Weight > 100
 
 
 
Descriptions View
 
 
 
 
Maintaining Descriptions
 
You can maintain descriptions in various languages to have the description shown when a user logs on in various other languages other than English. The other use of descriptions is for printing them on forms or certificates that you may send to the customer with the characteristics value.

 

 

If you want to maintain in other languages other than English, then you can enter the language code and enter the description in that language. If you don’t maintain the description in other languages, then on, logging-in SAP in that given language, you would not see the description of the characteristics.  

 
 

 

Values View

 
 
 
 
In this view, you can predefine allowed values for the characteristics.

 

If the characteristic is a character format characteristic (COLOR), you can manually define the allowed value as RED, YELLOW, BLUE, GREEN. The number of characters used to define the value should be equal to the allowed characters define in the basic data view of the characteristics.

 

If the characteristic is a numeric format characteristic (pH), you can manually define the allowed value as 1, 2, 3, 4, 5 pH. The number of characters used to define the value should be equal to the allowed characters define in the basic data view of the characteristics. For numerical characteristics you can also define tolerance ranges within which the characteristics values should be set or you can define the allowed values to be equal to or greater than or less than a certain value.

 

 

 

Other Value Check

 
 
 
 

The “other value check” option allows you to enter the allowed values manually or fetch the same through a ‘check table’ maintained in SAP or to restrict the allowed values through a logic programmed in a functional module or have the allowed values directly brought in from a QM catalog for character format characteristics as shown below:

 

 

 

 

Additional Data View:

 
 
 
 

You can define the characteristics as reference characteristics to pull in the values of the characteristics from a standard ‘SAP Table – Field Combination’. Enter the Table name and the field name in the tab area as shown in the screen below:

 
a) Table Name – Define the SAP Table name where the values are referenced from while recording the Characteristics

 

b) Field Name – Define the SAP Field name where the values are referenced from while recording the Characteristics

 

 
Not ready for input
 
If you select this indicator for the characteristic, the values cannot be entered manually and would be referenced automatically or entered through other programmatic methods.

 

 
No Display
 
The Characteristics is hidden and you have to press the “Hidden Characteristics” Button to see these characteristics.

 

 
Display Allowed Values
 
The allowed values are shown on the screen below the characteristics; you don’t have to pull-down to see the allowed values.

 

 
 
Restriction View

 

 
 
 
If you want to restrict a Characteristics for use in a particular Class Type, then you can enter the Class types that you are restricting the characteristics to, in the Restrictions Tab, For Example if you want to use a characteristics “G2I_VISCOSITY” in the Batch Class type 023, and not in the Material Class type- 001, then don’t enter 001 in the restrictions tab.

 

If you don’t use the restrictions, you can use the characteristics in any class type as required. 

 

 

SAP Class and Class Type

 

SAP Class and Class Type

 

 

Define Class and Class Type

 
 

You can use SAP transaction code CL01 (CL02/CL03) to create a characteristics.

 

Instead of directly assigning the characteristics to an object like the material master or a batch, SAP has come up with a simpler solution, where it first assigns the characteristics to a class and then assigns the class to the object.

 

Classes are created for a class type, for example, if you want to create a class assigned with characteristics for defining the material features, then the class type is called “material class type – 001”, if you are creating a class with a set of characteristics to be used for recording the batch related values, then you have to create the class with a “batch class type – 022 or 023” etc, etc. A class is created for a purpose, for assignment to a certain object and for a certain reason; this very reason defines the class type of the class.

 

A class is created with a class type, name and description (in languages required) and with the set of characteristics required for recording values against the class.

 

The class type determines how classes are processed, and how objects can be classified and retrieved in these classes. You define class types for a specific object type, such as materials.

§  Material class

§  Batch class

 

 

 

Class Where-Used List

 

 

If you run the where-used list for classes, you can see the assigned objects to the classes. For this you would need to go to CL02 or CL03 Transaction menu >>> environment >>> Press where-Used List. You could also use the transaction codes CL30N - Find Objects in Classes or CL31 - Find Object in Class Type or CL6BN - Object List

 

 

 

Class List Report

 
 
You can use the class list to check the list of classes and the assigned characteristics with their formats. Similarly you can check the class hierarchy using the CL6B transaction code in SAP.

 

 

 

Creation of SAP Class and Class Type

 

 

Classes are created individually in SAP using the CL01 transaction code while class types are pre-configured by SAP.

 

Following steps are required to create a class:

 

 
 
Basic Data View
 
 
 
 
The Basic Data view contains the following. You should first enter values for the Basic data view explained as below:

 

         The class type for which you are creating the class for

 

         The Name of the class

 

         The Description of the class. You can also define keywords for the class.

 

         The Validity of the class with the “valid from” and the “valid to” dates

 

         Status: You should use the characteristics status to lock it for use or to release it for use in classes. If you are creating in the process of creation, you can also choose the status – “in Preparation”

 

         Class Group: The classification of a class or the grouping of the class helps in reporting or retrieving a certain class.

 

         Assignment of the class to an organization area like Sales, purchasing, production, where the characteristics of the class are going to be used. This is really optional

 

         “Do not check” for identical characteristics values in the classification of an different object of the same class

 

         When identical values are assigned to the classification of different object using the same class, the system issues a warning – Check with warning

 

         When identical values are assigned to the classification of different object using the same class, the system issues a error – Check with error

 

         Authorization restriction for maintaining, using the class for classification and searching objects of the class.

 

         Assignment indicator – defines whether objects are already assigned to the class.

 
 
 
Characteristics View
 
 
 
 

In the characteristics tab, you have to enter the name of the characteristics which is required to be assigned to the class. Pressing F1 on the characteristics in the characteristics tab would divert you to the characteristics master data. When you insert characteristics in the characteristics tab, the format of the characteristics is also pulled in.

 
 
Documents View

 

 
You can also assign documents to the class through the documents view

 

 

 

Assignment of SAP Classes to Objects

 

Assign of Classes to Objects

 

 
The classes have to be assigned to the objects. Objects in SAP are mostly materials; though they can be other objects in SAP where classification is required (this is not discussed here). Assignment of classes to material, indirectly assigns the characteristics to the objects or the material master.

 

 

Class Where-Used List

 

 

If you run the where-used list for classes, you can see the assigned objects to the classes. For this you would need to go to CL02 or CL03 Transaction menu >>> environment >>> Press where-Used List. You could also use the transaction codes CL30N - Find Objects in Classes or CL31 - Find Object in Class Type or CL6BN - Object List

 

 

 

What are Objects

 

 

  • If you wish include batch class to capture batch management characteristics values at the point of goods receipt from the order, you should assign the material with a ‘batch classes’ (class type 022 or 023)

 

  • If you wish include material class to capture material (product features) characteristics values at the point of creating a material, you should assign the material with a ‘material classes’ (class type 001)

 

  • If you wish include variant configuration class to capture configuration values with characteristics at the point of creating a sales order, you should assign the configurable material with Variant class (300)

 

  • Similarly if you are trying to use configurable class – 200 to the materials so as to use the same in variant configuration, you should assign the class 200 in the material variants (and not in the configurable material).

 

 

Create Assignment of Classes to Objects

 

 

The assignment of the classes to the objects is carried out using the following methods:

 

·         The material master (MM01 or MM02) itself in the classification view

 

Example:

 

Material Master Classification View:

 

Material = M1

 

Assignment Class 1

Assignment Class 2

Assignment Class 3

Assignment Class 4

Assignment Class n

 

 

·         Or through the use of CL20 (Assignment of classes of single class type to single material master)

 

Example:

 

Material = M1

Class Type = 023

 

Assignment Class 1

Assignment Class 2

Assignment Class 3

Assignment Class 4

Assignment Class n

 

 

·         Or through the use of CL24N (Assignment of single class of a single class type to multiple materials)

 

Example:

 

Class = XYZ

Class Type = 023

 

Assignment Material 1

Assignment Material 2

Assignment Material 3

Assignment Material 4

Assignment Material n

 

 

·         Or assign classes to a superior class, thus creating class hierarchies through the use of CL22N

 

Example:

 

Class = XYZ

 

Assignment of class 1

Assignment of class 2

Assignment of class 3

Assignment of class 4

Assignment of class n

 

 

Other Points about SAP Classification

 

Other Points about SAP Classification

 

 

Other important points and tricks about SAP Characteristics and Classes:

 
 

Changing characteristics or removing characteristics from the class:

 

 

When a SAP Characteristic is used in any class and assigned to the objects (for example – material, batch etc) and further classified in objects with values (like in material master or batches), it becomes really difficult to remove the assignment of the characteristics from the class or change the characteristics master data (especially for format).

 

If you wish to really remove the assignments or change the characteristics (you would have to go back in the same route you have come):

 

1st: First you would have to use the where used list for the characteristics and find out the objects to which it is assigned. You will get a list of classes and the objects (materials and batches) to which the characteristic is assigned to.

 

2nd: You would have then ‘remove or delete’ any classification values set on all the objects for the characteristics or class (material or batch). For deleting the whole classification, there is a provision especially in the batches initiated by pressing the “delete classification button”. On the other hand, you may also removing values for the required characteristics from all the objects. To go to the classification area, you should go to classification tab in the batches or in the classification view of the material master.

 

3rd: After the steps 1 and 2 are done, the system would let you remove the ‘characteristics’ from the class or classes. This removes any connection of the characteristics with the classes and the objects.  

 

4th: Then you can change the characteristics master data for the format; you may create new characteristics with the correct details and then reassign it to the class or classes.

 

 

Note: There is a program in SAP to remove or delete the characteristics from the classes even though they are classified in objects. This Standard SAP program “RCCLZUOB” can be used.

 

 

Deleting the class:

 

 

Follow the below steps so to delete a class. The system will not let you delete the class, if the class is already assigned to objects and they are classified in materials or in batches or in variant classes.

 

1st: For deleting the class, you would have to go in to the where-used list of the class and find out the objects to which it is assigned to (for example – materials, batches).

 

2nd: Then you should go individually in to the materials to remove the assignment of classes from the materials; alternatively you can go in to CL24N to remove the assignment of materials for the class and class type.

 

If the system does not let you remove the assignment of the classes from the materials then you should delete the classification (i.e., delete all the classified value for the material or in other words remove the classified values for all the assigned objects). If the class is a batch class you should go and delete the classification from the batches classification view and for material class you should go in to the material master and remove the material classification values. This will let you delete the class… J

 

3rd: Deleting the assignment of the objects would let you delete the class using CL02 transaction.