Skip to Content
SD (Sales and Distribution)

Material Determination - Concept/Customizing/Programs/Common Errors



When you replace a product by another product in a sales order, that is called material determination. For example:

  • A material that is ordered for some reason is not available, with material determination the system replaces it with another material that is available;

  • In some sectors of industry, the same products are sold in different packaging materials. You can have packaging for your standard product and another packaging for articles on sale or for holidays;

  • To change the customer's material number to your own material number.

Material master records exist in the system for managing these stocks. When you enter an order, you can use different material numbers for the same product.

Material Determination Types

In the standard system, there are basically 2 substitution reasons:

  • Reason for Substitution 0005 for Manual Product Selection
    • The system does not replace the material automatically, but it displays a popup with a list of all subsitution materials and other information in the master record.

  • Reason for Substitution 0004 and 0006 for Automatic Product Selection
    • The system replaces the material automatically if it is not available. The system can display entered and replacing material as main and sub-items in the sales order.

Material Determination and Condition Technique

The material determination is based on the sales document type. With condition technique criteria can be defined and condition records can be maintained.

The logical sequence is:

1 procedure ---> 1 or more condition types

1 condition type ---> 1 access sequence

1 access sequence ---> 1 or more accesses

1 access ---> 1 condition table


For the customizing of material determination, you have to start at:

SPRO > Sales and Distribution > Basic Functions > Material Determination

Or you can go through the transactions:

  • VB11 to create material determination
  • VB12 to change material determination
  • VB13 to display material determination

The condition type setting determines the period of validity of the master record.

Other general settings include:

  • OV26 for Field Catalog: contains the available fields that can be used for selection on the product substitution
  • OV16 for Condition Table: contains the fields which are necessary for the material determination master data. In standard, table 001 is filled with the main material
  • OV11 for Define Access Sequences: here you can check the customizing for the access sequences, linked with accesses and respective fields
  • OV12 for Condition Type: this transaction is executed to assign the access sequence to the condition type
  • OV13 for Procedures: fixes the condition types which are going to be used in the material determination. In standard, the procedure A00001 is configured in order to have the condition type A001 on it. Due to this, the condition records from condition type A001 are checked
  • OV14 for Sales Document Types Material Substitution: the document type suggests which values should be used in the sales document in order to determine the substitute products
  • VOV4 for Item Category Assignment
  • 0184 for Delivery Item Category Determination

Reasons for substitution

Transactions VB11 or VB12 are used to create condition records for the corresponding key combinations. In this process, you do not specify a reason for substitution. In transaction OVRQ you can create a substitution reason. You can check more information on how to do this here: Creating Substitution Reasons - Basic Functions and Master Data in SD Processing (SD-BF) - SAP Library

Copy Control

VTAA: Copy control for sales documents item category

  • ' ' (blank): product selection is carried out again in the newly created sales order to take into account the new availability situation of alternative materials
  • 'A': the results of product selection are copied from the quotation. If a change is made to the sales order, such as a change in required delivery quantity or required delivery date, product selection is carried out again.
  • 'B': the product selection is copied from the order and is not carried out again even if quantities are changed.

VTLA: Copy control for delivery documents item category

  • no relevant information for product selection

VTFL: Copy control for delivery and billing document

  • no relevant information for product selection

Programs and Function Modules

The material determination runs directly according to the material entry. The call sequence is:




In the Form MATERIALFINDUNG, the communication structures are filled, calling KOMKD and KOMPD here.

There are userexits to enable you to fill the tables as per your needs, these are:

  • userexit_move_field_to_komkd (MV45AFZA)
  • userexit_move_field_to_komkd (MV45AFZA)

Then, function module PRODUCT_SUBSTITUTION is called. It transfers date, schema, communication structures and application indicator. It will return data in KONDDP_TAB.

Common Errors

Please consider the following notes:

97186 - VA01/VA02:preventing mater. determin. for subitem

412789 - Restrictions for product selection

550396 - FAQ: Material substitution and product selection

542537 - Plant determination during material substitution

901178 - Matl determination: Incorrect VRKME determination in order

907023 - Poor performance in material determination

1776268 - Problems w/ material determination for mass change in VA05

1803235 - Authorization check in VB11/12/13

1840554 - Incorrect unit of measure after material determination