Anda di halaman 1dari 56

PRINT FROM SAP HELP PORTAL

Document:
Products
URL:
http://help.sap.com/saphelp_crm700_ehp02/helpdata/en/ed/bfb2ce6a6a46af92172c4ff901f125/frameset.htm
Date created:
July 17, 2013

2013 SAP AG or an SAP affiliate company. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express
permission of SAP AG. The information contained herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary
software components of other software vendors. National product specifications may vary. 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. SAP 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 other countries. Please see www.sap.com/corporate-en/legal/copyright/index.epx#trademark for additional trademark information
and notices.

Note
This PDF document contains the selected topic and its subtopics (max. 150) in the selected structure.
Subtopics from other structures are not included.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 1 of 56

Products
Products are goods which are the object of a company's business activities. Products can be tangible, such as a PC, or intangible, such as services like PC
maintenance.
The product master provides you with all information on the products that your company purchases and sells. It is the central source from which product-specific
data can be retrieved.
Product information is used in marketing, sales, and service processes. The product master functionality is integrated into various business roles and therefore
provides all functionality you require for working with products within the relevant business context.
Product data includes the information required for specific business processes (such as customer inquiries, sales orders, service processes, contracts), and
other basic data that essentially describes and categorizes the product. For example:
Data of a descriptive nature such as size and weight
Data with a control function such as the item category group for determining the item category for each item in an SAP CRM order
This information is stored in individual product master records. The integration of such data in a single database object eliminates redundant data storage.

Features
Product Types
The product type describes the basic characteristics of a product. It also determines to which product categories a product can be assigned, thus defining the
structure of the product and how it can be used. The following product types are available:
Material
Service
Warranty
Financing
Financial Service
Intellectual Property (IP)
Attributes and Set Types
Attributes are used to describe products and are grouped together into set types. The use of set types make it possible to model a product in a detailed manner in
your system. For more information, see Set Types and Attributes.
Categories and Hierarchies
Categories and hierarchies are used for structuring purposes, and allow you to group together products according to different criteria. Categories define which set
types and relationship types are allowed for a product, thereby enabling you to structure the information you require on your products through the assignment of
categories. For more information, see Product Hierarchies.
Relationships
Relationships can be created between products and other products or objects to represent certain product information. For example, service parts, services, or
accessories might be available for a particular product, or products may contain or belong to other products, such as sets and prepacks.
Alternative IDs
Alternative ID types can be defined in the product master and used in business processes instead of the product ID. Alternative IDs therefore allow you to use an
identification in your business processes that conforms to industry standards, for example ISBN, serial number, vehicle identification number.
You define alternative IDs in Customizing for Cross-Application Components, by choosing
UI configuration on the SAP Easy Access screen under

SAP Product Alternative Product IDs , and create the necessary

Master Data Products Create UI Configuration for ID Type

(see report documentation).

Competitor Products
Competitor products allow you to record information about products sold by your competitors and therefore in direct competition with your company's own products.
Competitor products are technically products with the product type Material, and are created on the Competitor Product page.

More Information
Specifics for Mobile Sales/Service (Laptop): Product Maintenance

Concepts

Set Types and Attributes


Set types are groups of attributes that are used to describe products. They are stored in the system as database tables.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 2 of 56

Note
In the documentation about set types and attributes, products includes both products and objects.

Set types enable groups of data fields to be assigned to a product, and the product to therefore be modeled in detail in the system.
Set types and attributes are used together with product hierarchies and categories. The combination of these elements enables the relevant set types to be made
available on the Product page and therefore used to describe the product.

Structure
Set types are assigned to categories and not to products directly. By assigning set types to categories, and then in turn assigning the categories to products, you
can make available the data you require to describe your products.
The mechanism is illustrated below:

See also Product Hierarchies.


Standard Set Types
Set types and attributes can either be standard set types provided by SAP, or set types and attributes you have defined yourself to meet your own requirements.
SAP provides the following standard set types:
General Set Types
Technical Name

Description

COMM_PR_SHTEXT

Descriptions

COMM_PR_UNIT

Units of Measure

COMM_PR_LGTEXT, COMM_PR_LGTEXT1, COMM_PR_LGTEXT2

Notes/Sales Notes

CRMM_PR_SALESA

Sales: Control Fields, Quantities

CRMM_PR_SALESG

Sales: Groupings

CRMM_PR_TAX

Taxes

Set Types for Materials


Technical Name

Description

COMM_PR_MAT

Basic Data on Materials

COMM_PR_GTIN

Gobal Trade Item Numbers

CRM_PR_RESIDVL

Financing-Dependent Attributes

Set Types for Services


Technical Name

Description

CRMM_PR_BTR

Transaction Control Fields

CRMM_PR_SRVDUR

Duration of Work

CRMM_PR_SRVRR

Resource Requirement

CRMM_PR_SRVENT

Default Values for Service Contracts

SERVICEPLAN

Service Plan

CRM_SERIALNUM

Serial Number Processing in Service

Set Types for Warranties

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 3 of 56

Technical Name

Description

CRMM_PRWTY

Warranty

CRMM_PRWTY_CAT

Warranty Catalog Data

CRMM_PRWTY_SRV

Warranty Services

CRMM_PRWTY_CNT

Warranty Counter Data

Set Types for Other Product Types


Product Type

Set Types

Financing

Financing Set Types

Financial Service

Set Types for Financial Service Products

Intellectual Property Management

Set Types for Intellectual Property Management

Definition of Set Types and Attributes


Set types enable you to model the data required about your products in detail. There are various ways in which set types can be modeled. When a set type is
created or changed, the system generates all necessary system objects such as database tables and function groups automatically. Once you have defined a
set type in a particular way and it is being used, it cannot simply be changed.
This functionality is designed for those responsible for modeling products in your system.

Features
Set Types
The table below outlines the options available to you when working with set types. Depending on which settings you make, other options may or may not be
available:
Set Type

Key Fields

Multiple-Value Attributes

Organizational Dependency

Multiple use

No

Yes

Can be organization-dependent

Yes

No

No

No

Yes

No

No multiple use

Organization-independent

Multiple Use
This is a technical setting which does not directly affect the appearance of the set type. It does however influence which other options are available to you and the
performance of your system:
By setting the Multiple Use indicator, each data record of a set type is assigned indirectly to a product using an assignment table. This means you could
assign the attribute values of a set type to more than one product in future releases. For example, general data such as the units of measure for a product is
likely to be the same for several products.
By not setting the Multiple Use indicator, each data record is assigned directly to one product. This is beneficial for performance and data volume, particularly
where large numbers of products are expected. If you are expecting a large number of products, and it is not likely that the various data records of a set type
will be used by more than one product, you should not set this indicator. For example, the serial number of a technical device will probably not be used by
more than one product.
Key Fields
If at least one of the attributes of a set type is designated as a key field several entries can be made for each field of this set type when creating or changing
product data. The attributes of the set type are maintained in tabular form.
Set types for which additional key fields are defined are known as multiline set types, whereas single-line set types are those without additional key fields.

Example: Single-Line Set Type

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 4 of 56

Example: Multiline Set Type


Multiple Values
Allows you to assign more than one value to an attribute in the relevant table when creating or changing product data.

Example: Single-Line Set Type with Multiple-Value Attributes


Organizational Dependency
Allows you to generate set types either dependent on the distribution chain or independent of the distribution chain. This means that the values of all attributes in
distribution-chain-dependent set types are specified for a specific sales organization and distribution channel.
Set types designated for multiple use, whether single-line or multiline, can be organization-dependent, whereas set types not designated for multiple use,
irrespective of whether they are single-line or multiline, are always organization-independent.
Template-Enabled
Templates allow you to predefine and therefore standardize data for set types. This data is referenced by the set types on the Product page. The templates
themselves are defined in Customizing for Cross-Application Components, by choosing

SAP Product Templates .

SAP NetWeaver Business Intelligence (BI)


To extract an attribute to SAP NetWeaver BI, you set the BW-Relevant indicator. The extraction structure will contain a field for the selected attribute.
By setting the Relevant for BW Selection indicator, you can use this attribute for data selection in SAP NetWeaver BI.
Attributes
Attribute Type
An attribute is defined by either a combination of its data type (for example, integer, character string, or date), its length, and optionally its value range (for
example, single values or intervals), or a value table. If you enter a table name, the attribute type and length are filled by the system.
On the Value Range tab page, you can specify either single values or value ranges for the attribute.

Example
To describe a monitor, you define the attribute screen diagonal as follows:
Name

ZSCREENDIAGONAL

Description

Screen diagonal

Attribute type

Integer

Length

Single values

17, 19, 21

Multiple Values
You can define an attribute with single values or multiple values.

Example
You define the attribute Color with the values Red, Green, and Blue. A car can be either red, green, or blue. However, you define the attribute Optional Extras
with the values Radio and Sunroof. This is a multiple-value attribute, as a car can have both a radio and a sunroof.
To actually use the attribute as a multiple-value attribute, you must define it as such when assigning it to the set type. This involves setting the Multiple Values
indicator.

Note
You cannot assign attributes you have defined to the standard set types delivered by SAP.

Creating UI Configuration for Set Types


After defining set types, the following steps are required to be able to use your set types on the CRM WebClient UI.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 5 of 56

Prerequisites
1. You have already created an enhancement set.
For more information, see Enhancement Set.
2. You have created an enhancement for each overview page you want to extend.
For more information about how to do this, see Create Enhancements.
This has to be done for each overview page (for example, PRD01OV for product).

Note
If the set type contains multiple-value attributes, you also have to create an enhancement for the component PRDGENSET.

Procedure
1. Assign Set Types to Overview Pages
1. Assign your set types to the relevant overview pages on the SAP Easy Access screen under

Master Data Products Assign Set Types to Overview

Pages . This report (CRM_UIU_PROD_REPOSITORY) generates the runtime repository for the set types so that they can be displayed on the overview
page.
Execute the report for every set type and overview page in which the set type is to be included (PRD0xOV, where x = product type).
The standard overview pages are as follows:
Product Type

Application

Component

Overview Page

01

Product

PRD01OV

PRD01OV/MaterialOV

01

Competitor Product

PRDCPOV

PRDCPOV/CompetitorProductOV

01

Object

PRDIOOV

PRDIOOV/ObjectOV

01

Distribution Chain View

PRDDC

PRDDC/DCOV

02

Service

PRD02OV

PRD02OV/ServiceOV

02

Distribution Chain View

PRDDC

PRDDC/DCOV

03

Financing

PRD07OV

PRD07OV/FSProdOV

03

Distribution Chain View

PRDDC

PRDDC/DCOV

05

Warranty

PRD05OV

PRD05OV/WarrantyOV

07

Financial Service

PRD07OV

PRD07OV/FSProdOV

07

Distribution Chain View

PRDDC

PRDDC/DCOV

04

IP

PRD04OV

PRD04OV/IPProdOV

04

Distribution Chain View

PRDDC

PRDDC/DCOV

For more information, see the documentation for the report CRM_UIU_PROD_REPOSITORY.
2. After generation, check in the transaction BSP_WD_CMPWB that the runtime repository has been generated correctly in the relevant overview pages and the
component PRDGENSET.
Note that for multiple-value attributes, additional component usages are generated in the component PRDGENSET.
2. Generate UI Configuration for Set Types
1. Create the UI configuration for your set types on the SAP Easy Access screen under

Master Data Products Create UI Configuration for Set Type .

You have to do this specifically for each set type. The type of set type involved determines on which view(s) of the component PRDGENSET the configuration
is created:
Type

View

Single-Line Set Type

SLSeteOV

Multiline Set Type

MLSeteOV

Single-Line Set Type

SLDCSetEF

Distribution-Chain-Specific
Multiline Set Type

MLDCSetEL

Distribution-Chain-Specific
Single-Line Set Type with Multiple-Value Attributes

SLMVSeteOVVS
SLMVAttreOV

Single-Line Set Type with Multiple-Value Attributes

SLMVDCSetELVS

Distribution-Chain-Specific

SLMVDCAttrEL

For more information, see the documentation for the report CRM_UIU_PROD_CONFIG.
2. In the transaction BSP_WD_CMPWB, check and adapt the configuration created in the component PRDGENSET.
The configuration has been created with the object = PRODUCT and object subtype = <set type ID>.
3. Add Set Types to Overview Pages
To add the set types to the overview pages as new assignment blocks, add your views to the relevant overview pages in transaction BSP_WD_CMPWB:
1. Select the relevant component and enhancement set, for example, PRD02OV, enhancement set ZPROD.
2. Select the relevant overview page view, for example, PRD02OV/ServiceOV, and go to the tab Configuration.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 6 of 56

3. Choose Show Technical Details to display the technical view name.


4. Switch to change mode to move assignment blocks from the set of available assignment blocks to the set of displayed assignment blocks.
5. Make sure that the views are in the correct order and the relevant load option has been selected.
6. Change the title of the view, as appropriate. This will be displayed on the overview page.
4. Remove Set Types from Overview Pages
1. To remove set types from the overview pages on which they have been included you have to first manually remove them from the relevant overview page
components in the transaction BSP_WD_CMPWB (see step 3).
2. The reports described above both provide a deletion option for deleting the data they generate:
CRM_UIU_PROD_CONFIG deletes the configuration of the set type from the view, as well as the configuration of mutiple-value attributes.
CRM_UIU_PROD_REPOSITORY removes the generated objects from the runtime repository of the specified overview page component.
The enhancements for multiple-value attributes made in the component PRDGENSET are only deleted if the Delete Set Type from All Overview Pages
action is performed.

Adding Fields to the UI Product Header View


You might want to make additional fields available on the UI in the product header data. These could be fields from your own set types, for example.
An empty view is provided for this purpose in the product header area, enabling you to include your own fields. An empty view is available for each application:
Application

Component/View for Customer Enhancement

Product (PRD01)

PRD01OV/CustomHeader

Service (PRD02)

PRD02OV/CustomHeader

IP Product (PRD04)

PRD04OV/CustomHeader

Warranty (PRD05)

PRD05OV/CustomHeader

Financing Product (PRD07)

PRD07OV/CustomHeader

Competitor Product (PRDCP)

PRDCPOV/CustomHeader

Object (PRDIO)

PRDIOOV/CustomHeader

Note
The product header is the topmost assignment block displayed on the overview page, and is called, for example, Product Details for products and Service
Details for services.

Prerequisites
The additional field is available in the business object layer (BOL) as a dependent object of the root object Product. Customer set types are automatically
available in BOL since the table entries required are generated when the set type is created.
You can only include organization-independent, single-line set types in the product header.
You have created an enhancement set. For more information, see Enhancement Set.

Procedure
The steps below describe how to enhance the product application PRD01. You can enhance the other applications in the same way.

Example
You want to add the attribute ZCOLOR from the set type ZSET1 to the application PRD01. In the database table ZSET1, the attribute ZCOLOR has the name
ZZ0010.
1. Use the transaction GENIL_MODEL_BROWSER (component set PROD_APPL) to check that there is a relevant BOL node which contains the new field. The
dependent object for the set type ZSET1 is called ZProdSetZSET1. The relationship between the product and ZProdSetZSET1 is called ZProdRelSetZSET1.
2. Execute transaction BSP_WD_CMPWB and enter the relevant component (for example, PRD01OV). Enter the enhancement set that you created.
3. If you have not created an enhancement for component PRD01OV, do so by choosing Enhance Component (for more information, see Create Enhancements).
You have to do this for each component that you want to enhance.
4. Enhance the view specified above (for example, PRD01OV/CustomHeader) by clicking Enhance with the secondary mouse button. This copies the view
controller class and the context class so that you can enhance them.
5. Select the view (PRD01OV/CustomHeader) and, on the right-hand side of the screen, choose in the structure

Context Context Node

and click Create

with the secondary mouse button. Enter the following data in the wizard:
Name of context node: Set type ID ZSET1 (recommended)
As there are certain special characters that are not permitted in context node names, such as _, you cannot always use the set type ID as the name. If
this applies, choose a different name.
BOL entity: BOL node of set type (for example, ZProdSetZSET1)
For the step "Define Dependency", choose PRODUCT as the superordinate node and enter the BOL relationship for the set type, for example,
ZProdRelSetZSET1.
On completion, a new context node is generated with an associated context node class (with the name ZL_PRD01OV_CUSTOMHEADER_CN01, for

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 7 of 56

example).
6. Go to the generated context node class and change the inheritance. Enter the class CL_PRD_HEADER_CONTEXT_NODE as the new superclass. This has
the following advantages:
Input helps are already implemented in the superclass (method GET_V_S_STRUCT). An attribute for which you have maintained fixed values or a value
table in the attribute definition therefore automatically has an input help.
The new fields are automatically set to ready for input or not ready for input (method GET_I_S_STRUCT of the superclass), if required. Description fields, for
example, are automatically set to not ready for input. If a set type is not assigned to a category or is referenced, the field is also not ready for input.
7. If you have changed the superclass to CL_PRD_HEADER_CONTEXT_NODE, you must implement the following methods in the generated context class:
New instance method CONSTRUCTOR (Public)
Code:

Syntax
1. METHOD constructor.
CALL METHOD super->constructor.
me->base_entity_name_inst = base_entity_name.
me->base_entity_relation
= 'ZProdRelSetZSET1'.
ENDMETHOD.
Change the existing method ON_NEW_FOCUS
New code:

Syntax
1. METHOD on_new_focus.
me->create_property( focus_bo ).
ENDMETHOD.
8. Create a new configuration for the view PRD01OV/CustomHeader, or enhance the existing configuration and add the new field (context node ZSET1, field
ZZ0010).
9. The superclass CL_PRD_HEADER_CONTEXT_NODE provides a generic input help. If this generic solution does not meet your requirements, you can
implement your own getter methods for the specific field in the generated context node class and thus override the standard behavior.

Example
Method GET_I_ZZ0010, to change the ready for input status of the field.
Method GET_V_ZZ0010 for your own input help.

Adding Fields to the Product Search


Procedure
To extend the product search to include attributes from your own set types or other set types perform the following steps:
1. Extend the search structure by adding the additional search attributes in an append to the following standard search structures:
CRMT_PRIL_QUERY_ADVSEARCH_PROD
CRMT_PRIL_QUERY_ADVSEARCH_IOBJ
2. If a search request contains the added attributes, the determination of the suitable search execution class is delegated to the method
GET_SEARCH_SCENARIO_OR_FILTER of the Business Add-In (BAdI) CRM_PRIL_SEARCHEXIT. A default implementation of this BAdI is active and is
executed automatically. It delegates the search to the search execution class CL_COM_PRSEARCHSCENARIO_ATTR (which consists of the search tool
class CL_COM_PRSEARCHTOOL_ATTR and suitable filter classes). You have the following options:
1. If you want to use this implementation the search tool class needs to know to which attribute of which set type a particular extension attribute belongs. You
make this setting in Customizing for Customer Relationship Management under

Master Data Products Basic Settings Add Attributes to Search

Structure . After maintaining your entries you have to transport them manually.
2. If you want to use your own implementation of this BAdI, you can do this by providing, for example, a suitable search execution class derived from
CL_COM_PRSEARCHSCENARIO_BASE.
3. You can also just return a filter class (a class that implements the interface IF_COM_PRSEARCHFILTER). It is taken into account in the calling method.
The standard attributes are processed further by the calling method PREPARE_DB_RANGE_SEARCH. If you want, you can use CRMC_PRSEA_ATTR in
your own implementation.
You can also use this method to have full control over the search. To do this, you set the EV_READY indicator to true in your implementation. Only the search
execution class you return is then used in the search. This means that it should then be able to handle all criteria, but it also means that you have full
responsibility for the search.
3. For the UI, the search views are located in the BSP components PRD01QR and PRDIOQR. These are PRD01QR/Search for the main search view,
PRD01QR/SearchHelp for the search help views (dialog boxes), and PRDIOQR/Search (used for main search view and in search help dialog boxes). After
you have added the appends to the search structure, the additional attributes are available in the configuration tool of the BSP component workbench and can
be set to visible.
Suitable value helps can be provided for the additional attributes using the method IF_CRM_PRIL_SEARCHEXIT~ CHANGE_DQUERY_DEF_EXTENSION of
the BAdI CRM_PRIL_SEARCHEXIT. You can define your own implementations for this method in your own BAdI implementation.
If you just want to make small changes to the existing implementation, you can use the source code enhancement concept and enhance the method
IF_CRM_PRIL_SEARCHEXIT~ CHANGE_DQUERY_DEF_EXTENSION of the default implementing class CL_CRM_PRIL_SEARCHEXIT_IMPL.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 8 of 56

Also see Note 1026956.

Transporting Set Types to Production Systems


The system in which you create your set types and attributes depends on your system landscape. Transport functionality is available, enabling you to transport
your objects between systems. However, you should consider the following points to avoid errors and data inconsistency:
Attributes and set types should be created in the same system.
You are advised to create them in the development system and then transport them within your landscape to the quality and production systems.
You can also create these objects in the quality and production systems, however you must ensure that the users involved have the appropriate authorizations.
Set types are created as local objects and are therefore assigned to the package $TMP. To transport a set type to a production system, the set type needs to be
assigned to a transportable package and included in a transport request.
Once a set type has been transported to a production system, any modifications or enhancements have to be transported additionally. For example, you add
some values to an attribute definition. You have the following options:
Create a workbench transport directly for the domain definition of this attribute.
Take one set type where this attribute is used and transport the complete set type.
Transport all set types where this attribute is used.

Prerequisites
A transportable package exists.
A transport request has been created.
The transport system has been set up correctly.

Procedure
1. On the SAP Easy Access screen, choose Maintain Set Types and Attributes.
2. Choose

Set Types /Attributes Transport Set Type

and enter the ID of the set type to be transported. Then choose Include in Transport Request.

Note
If you set the Create API Append indicator, it will also be possible to maintain the set type using APIs. The BDoc structure or API structure is extended
during this process, and the data included in data exchange and archiving.
3. Choose Execute.
4. In the dialog box that appears, choose Display/Change, specify the package to which you want to assign the set type, and choose Enter.
5. In the dialog box that appears, specify the transport request and choose Enter.
6. Release the transport request.
Once the transport request has been released and transported, the set type is transported to the given systems (for example,

Development System

Consolidation System Quality/Test System Production System ).

Product Hierarchies
Product hierarchies provide a structuring mechanism for modeling purposes within the product master.

Note
In the documentation about product hierarchies, products includes both products and objects.

Product hierarchies consist of categories and are used to group products according to different criteria. The purpose of a hierarchy depends on the business
criteria involved and your company's requirements.
A hierarchy can be multilevel and used for control or informative purposes.

Structure
The categories within a hierarchy are arranged hierarchically. All lower-level categories inherit the product type and set types from the higher-level category.
Additional set types can be assigned to lower-level categories.
An example is shown below (note that the set types shown are not standard set types, but examples of customer-defined set types):

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 9 of 56

If a product type is assigned to a category, only products of this product type can be assigned to the category. Assigning a product type to a category makes it
possible to assign set types to the category. The set types themselves appear as assignment blocks on the Product and Object pages.
To prevent a set type from being assigned to a product more than once based on different categories, the following rules apply when working with categories and
hierarchies:
A set type may be assigned to more than one category within a hierarchy, but to only one hierarchy for each product type. Therefore even if two categories are
in different hierarchies but have the same product type, it is not possible to assign the set type to both categories.
A product can be assigned to more than one category as long as the categories belong to different hierarchies. A product can therefore only be assigned to one
category in each hierarchy.

Note
The same rules apply to the assignment of relationship types.

Base Categories and Hierarchies


The base hierarchy used either for products in general or for specific product types.
A product can be assigned any number of categories. However, when you first create a product you must assign it to a base category. A base category is a
category belonging to the base hierarchy, which is the basic hierarchy defined for products in general or for a specific product type.
Defining Hierarchies as Base Hierarchies
Within the product master, assigning a hierarchy to the application Product enables it to be used as a base hierarchy, which is required to create products. Each
product created must be assigned to a category from this hierarchy. It is the starting point when you create a product.
You assign product hierarchies to applications in Customizing for Cross-Application Components, by choosing

SAP Product Product Category

Assign

Category Hierarchies to Applications :


You can assign a base hierarchy to a specific product type. This overrides the higher-level assignment between the hierarchy and application.
If a base hierarchy is not assigned to a product type, the hierarchy specified for the application serves as the base hierarchy for all product types.
The base category assigned to a product determines the product IDs allowed when a product is created.
You define the number ranges for internal and external number assignment in Customizing for Cross-Application Components, by choosing

SAP Product

Settings for Product Type Number Assignment Define Number Ranges for the Product Type "Material" /Define Number Ranges for the Product Type
"Service". Number ranges are defined for other product types in Customizing for Customer Relationship Management, by choosing
Settings for Product Type

Master Data Products

Number Assignment .

Base Hierarchies Replicated from SAP ECC


The main base hierarchy generally replicated from SAP ECC is the base hierarchy for Material/Service R3PRODSTYP. This hierarchy is assigned to the
application Product.
Base Hierarchies Created in SAP CRM
In the following cases the base hierarchies are created in SAP CRM:
The report CRM_PR_FIN_CREATE_HIERARCHY is used to create a base hierarchy for the product type Financing.
Base hierarchy for the product type Intellectual Property
Base hierarchy for the product type Warranty
Base hierarchy for the product type Service
If you are creating service products in SAP CRM and not replicating them from SAP ECC, do not use the hierarchy R3PRODSTYP as the base hierarchy for
services, but create a new hierarchy in SAP CRM.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 10 of 56

Creation of Categories and Hierarchies


Product hierarchies are used to classify products and group them according to different criteria. They are used primarily to describe differences within a business
context, for example, you might categorize your products according to their technical properties or how they are used.
A hierarchy is constructed like a tree structure with a root category that includes all other categories.
Hierarchies comprise data specified at hierarchy level, which applies to the entire hierarchy, and data at category level, which applies to lower levels within the
hierarchy. Certain data is inherited within the hierarchy.
The root category is the highest-level node within the hierarchy and does not generally contain any control information.

Prerequisites
You have defined numbering schemes for your product hierarchies in Customizing for Cross-Application Components, by choosing

SAP Product Product

Category Define Category Numbering Schemes .


You have defined authorization groups in Customizing for Cross-Application Components, by choosing

SAP Product Basic Settings

Define Authorization

Groups .
You have defined the partner determination procedures you require in Customizing for Customer Relationship Management, by choosing

Basic Functions

Partner Processing Define Partner Determination Procedure .


You have defined the alternative ID types you require in Customizing for Cross-Application Components, by choosing

SAP Product Alternative Product

IDs .

Features
Hierarchies
Certain features are available at hierarchy level and therefore apply to the entire hierarchy:
Numbering Scheme
You can assign category IDs yourself (alphanumeric or numeric), or they can be assigned automatically (numeric only). If you assign them yourself, the
system checks them against the numbering scheme.
Standard Schema
The entry you make indicates that the product schema (hierarchy) displayed is a standard schema.
You can transport categories and hierarchies to the relevant systems (for example, test system or production system) in Customizing for Cross-Application
Components, by choosing

SAP Product Product Category Transport Categories .

Categories
Categories define which set types and relationship types are allowed for a product, thereby enabling you to structure the information you require on your products.
If a product is assigned to more than one category, all set types and relationship types for the categories to which the product is assigned can be used.
Once a category has been assigned to a product and the data saved, the assignment cannot simply be deleted. You can reassign products on the SAP Easy
Access screen under

Master Data Products Recategorize Products .

General Data and Control Data


You can specify the following:
Whether a user is authorized to display, change, or create products belonging to this category.
Who is responsible for the category. You may, for example, want to specify the brand manager as the person responsible for the highest-level category, and
the product manager for lower-level categories.
What options are available on the Product page:
Whether products can be assigned; this should not be possible for root categories
Whether documents can be attached (this indicator can only be set for categories within the base hierarchy)
Whether prices can be specified (this indicator can only be set for categories within the base hierarchy)
Whether the category is restricted to objects and a certain object family. If so, you can specify a partner determination procedure to determine which parties can
be assigned to the object in the Parties Involved assignment block on the Object page. This option is only available for categories within the base hierarchy.
Set Types and Relationship Types
Set types and relationship types are specified in the respective assignment blocks:
Assigned Set Types
You can specify which set types should be assigned to the category concerned, and whether they should derive their data from a template. The system
indicates which set types have been inherited.
A Referenced indicator is an additional option available for objects for use in conjunction with reference products and is only visible for categories assigned an
object family.
Assigned Relationship Types
You can specify which relationship types should be assigned to the category, enabling these relationship types to be created for a product belonging to this
category. The system indicates which relationship types have been inherited.
Referenced Relationship Types Displayed in Objects
An option available for objects, enabling the relationships of the reference product to be displayed for the object concerned. Only certain relationship types can
be referenced, which are available for selection in the input help.
This assignment block is only visible if an object family has been specified for the category and referencing has been activated in Customizing for CrossApplication Components, by choosing

SAP Product Basic Settings Allow Product References for Individual Objects . For more information, see

Referencing Data from Products.


Prices
Prices can be created for products at product or category level. For more information about creating prices, see Prices at Category Level.
Inheritance
Certain fields can be inherited by lower-level categories. For more information about inheritance, see Inheritance Within Hierarchies.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 11 of 56

Prices at Category Level


Pricing conditions are used to calculate prices in business transactions, such as sales orders and purchase contracts.
Pricing conditions can be specified for individual products on the Product page and for an entire category of products at category level in the Assigned Prices
assignment block on the Product Hierarchy page. This is particularly advantageous when working with a large number of products, as pricing conditions, such as
prices, discounts, and surcharges, can be defined at the category level for an entire category of products, instead of at the product level solely for individual
products.
Pricing conditions replicated from SAP ECC that are specific to a category with the sales hierarchy (generally R3PRODHIER) can be displayed at category level
in a product hierarchy.
Pricing is based on the condition technique. For more information, see Pricing and The Pricing Process.

Prerequisites
You have made the following Customizing settings:
Customer Relationship Management Master Data Products Product Category Pricing Define Pricing-Relevant Hierarchies
Two pricing-relevant hierarchies, PRCATHIER1 and PRCATHIER2, are supported and delivered in the standard system. The pricing-relevant hierarchy
R3PRODHIER is used to display pricing conditions replicated from SAP ECC.
Customer Relationship Management Master Data Products Product Category Pricing Assign Product Hierarchy to Pricing-Relevant Hierarchy
Assign your product hierarchy to the pricing-relevant hierarchy. The Assigned Prices assignment block is not available on the Product Hierarchy page if the
product hierarchy is not relevant for pricing.
If you have downloaded pricing conditions from SAP ECC, assign the sales hierarchy downloaded from SAP ECC to R3PRODHIER.
Customer Relationship Management Basic Functions Pricing Define Settings for Pricing Create Pricing Procedure
If further hierarchies are required in addition to the standard two delivered, you also need to make the following Customizing settings:
Customer Relationship Management Basic Functions Pricing Define Settings for Pricing Maintain Field Catalog
Customer Relationship Management Master Data Products Product Category Pricing Assign Field Catalog Fields to Pricing-Relevant Hierarchy
Customer Relationship Management Basic Functions Pricing Define Settings for Pricing Create Access Sequences
Customer Relationship Management Basic Functions Pricing Define Settings for Pricing Create Condition Types
Customer Relationship Management Master Data Conditions and Condition Technique Condition Technique: Basics Create Maintenance Group
Customer Relationship Management Master Data Products Special Settings for Sales Operations Assign Condition Group to Application CRM
If you want to display pricing conditions replicated from SAP ECC at category level in a product hierarchy, check the Customizing for the pricing-relevant hierarchy
R3PRODHIER in the Customizing activity Assign Field Catalog Fields to Pricing-Relevant Hierarchy, by choosing

Customer Relationship Management

Master Data Products Product Category Pricing .

Features
Pricing is based on the condition technique. Prices can be specified on the Product Hierarchy page for an entire category of products:

1. You specify prices for the relevant category in the Assigned Prices assignment block on the Product Hierarchy page. You can create, change, and delete
prices with the price types defined in the standard version. You can check which condition types apply in Customizing by choosing

Customer Relationship

Management Master Data Conditions and Condition Technique Condition Technique: Basics Create Maintenance Group . The relevant maintenance
group delivered in the standard version is PRCAT_CRM. As with other conditions, you specify validity periods for the price records you create.
2. The condition types supported include, for example, price, surcharge, and discount. The access sequence maintained at the condition type level defines the
access steps required for condition determination.
3. Prices at category level are not inherited within the hierarchy, as the access sequence within the condition technique is used to determine which pricing
condition is relevant.
4. The pricing steps are processed when triggered by SAP CRM order management.
For more information about product prices, see Prices.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 12 of 56

Inheritance Within Hierarchies


Certain fields within product hierarchies are inherited by lower-level categories. This means that this data does not have to be maintained for each category within
the hierarchy.

Features
The following fields are inherited by lower-level categories:
Product Type
Authorization Group
Object Family
Partner Determination Procedure
Alternative ID Type
Assigned set types and templates, including Referenced indicator
Assigned relationship types
Inherited fields cannot be changed for lower-level categories. Note however the following exceptions:
Inheritance can be interrupted for templates. The mechanism by which inheritance is interrupted is shown in the example below.
A set type can be assigned to a higher-level category (Referenced indicator not set), and the Referenced indicator then set for lower-level categories. The
Referenced indicator cannot however be deselected for lower-level categories.

Example

1. The value X is maintained for the highest-level category H1 and inherited by lower-level categories.
2. The value is changed for category H1211 to Y. This new value is inherited by the categories H12111 and H12112.
3. The value X is now changed to Z for category H1. This new value is inherited by H11, H12, and H121, but not by H12111 and the categories below it. This is
the point at which inheritance is interrupted.
4. Inheritance can be restored by changing the value of category H12111 to the same value as the higher-level categories (from Y to Z).
5. Another change to the value of category H1 (new value W) is inherited throughout the hierarchy.

Template Framework
Definition
The template framework is a technical environment where you create and maintain mini-templates for the master data object SAP Product.

Use
The template framework simplifies master data maintenance by giving you access to mini-templates when you create or change products. For more information,
see Working with Mini-Templates.
This enables you to save time, and avoid data redundancy and errors because you no longer need to enter and maintain data that is commonly required in a large
number of products, in each of these products individually. Instead, you maintain this data once only in a mini-template, which the products then reference. Any
changes made subsequently to the mini-template are also reflected in the products that reference it, and in this way you can make mass changes quickly and

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 13 of 56

easily.
In order to avoid unwanted mass changes, a where-used list ensures that you are aware of which products reference a mini-template, before you change or delete
the mini-template in question. In addition, an authorization concept ensures that only the appropriate users can change or delete mini-templates.
Read strategies in the template framework define the sequence in which data is accessed for a product.

Structure
The template framework consists of the following parts:
Mini-template types
A mini-template type signifies the smallest set of attributes you can use to build a mini-template. It does not contain any values itself, but rather represents a
structure in the application that can be filled with values.
Mini-templates
A mini-template is a concrete occurrence of a particular mini-template type. Thus, a number of mini-templates, containing different values in each case, can
be based on one mini-template type. Mini-templates can either be differentiation key-dependent or -independent.

Integration
The template framework facilitates the transfer to external systems, such as SAP BI or SAP CRM, of changes made to mini-templates.

Working with Mini-Templates


Use
You use the template framework to maintain mini-templates, which can be reused by many product master records.
Mini-templates are defined in Customizing and assigned to product category hierarchies in the standard system. Which mini-templates are assigned to a specific
product is therefore determined implicitly when a product is assigned categories in product maintenance.
Mini-templates are used to maintain data for set types.

Prerequisites
Before you can work with mini-templates in product maintenance, you have to
Create set types in transaction COMM_ATTRSET
Activate these set types so that they can be used in mini-template maintenance by
Setting the flag Template-Enabled when you create a new set type, or maintain an existing set type
Choosing Set Type -> Activate Templates in the menu for set types that have already been generated or delivered, and that can be called up only in the
display mode.
A differentiation key-independent mini-template and a differentiation key-dependent mini-template are then generated automatically for each set type.
Maintain the appropriate data for your mini-templates in Customizing for SAP Product, by choosing Cross-Application Components -> SAP Product ->
Templates -> Maintain Mini-Templates.

Features
Assignment of Mini-Templates to Products
You assign mini-templates to categories in category and hierarchy maintenance. Mini-templates are therefore not assigned directly to products, but only to product
categories.
Mini-templates can be inherited from higher-level categories within a hierarchy.
During product maintenance, the categories for the product in question are read at runtime. If a mini-template is found, its data is read to the corresponding
attributes of the product if this product does not already have its own data.
For more information, see Creation of Categories and Hierarchies.

Usage of Mini-Template Data


You use mini-template data in product maintenance. Here, mini-template-enabled product set types reference the data in mini-templates that are assigned to
product categories. The mini-template data is read at runtime into the corresponding set types fields, which are in display mode and therefore cannot be
maintained. A text is displayed, indicating from which mini-template and category the data has been derived for a particular product set type. Choose Information
to display technical data on the mini-template.
You can copy the mini-template data to the set type of a product by choosing Create Own Data. The set types fields then become ready for input and you can
overwrite the mini-template data with your own data.
You can switch back to the referenced data by choosing Delete Own Data. Your own data is deleted, and the mini-template data is once again displayed.

Distribution of Changes to Mini-Templates


When changes to mini-templates are transported, they are cascaded into all the relevant clients in the target system. However, this does not mean that the
changes are automatically distributed to external systems, such as BI or ERP systems.
If distribution is required, you should schedule a variant of report TFW_DX_TEMPLATE_CHANGES

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 14 of 56

periodically
or once only, after an import
in the relevant clients of the target system.
You should carry out the scheduling using the view V_TFW_DX_JOB. In this way, an entry is made in the table TFW_DX_JOB, which prevents redundant
scheduling.

Where-Used List
Use
Many products can reference the same mini-template, and thus any changes made to a particular mini-template will be reflected in all the products that reference
it. The where-used list ensures that you are aware of the effect that changing mini-templates in Customizing would have on your product master records.

Features
The where-used list is triggered when you attempt to change or delete a mini-template. Checks are run to determine all the products that reference the minitemplate in question. The results are displayed in a dialog box. If the mini-template is being used, it is not possible for you to delete it.
If you are authorized to change mini-templates, a further dialog box gives you the option of scheduling a background job for the report
TFW_DX_TEMPLATE_CHANGES. This allows you to distribute changes made to mini-templates to external systems, such as ERP or SAP BI. If you cancel at
this point, the worklist is stored in the database table TFW_DX_MINITP, where you can process it later.
You should be aware that the where-used list is not triggered when you attempt to change or delete the assignment of a mini-template to a product category in
category and hierarchy maintenance. Thus, the dialog box mentioned above for scheduling report TFW_DX_TEMPLATE_CHANGES does not appear
automatically. If you want to distribute the changes to an external system, you must therefore schedule a job for this report manually.
You can schedule the distribution to external systems of mass changes caused by changing mini-templates, by choosing Templates -> Schedule Data
Exchange of Changes to Mini-Templates in Customizing of the SAP Product.

Read Strategies
Use
Read strategies define the sequence in which the data in mini-templates is accessed for products that do not have their own data.

Features
Read strategies can consist of several read methods. SAP delivers read methods for the SAP Product, describing different ways of reading data for your products.
Read strategies determine the sequence in which the read methods are called up, and thus, the sequence in which data is read for products that do not have their
own data. According to the active read strategy delivered for the SAP Product, the products own data is read before reference product data, which in turn is read
before the data in mini-templates assigned to product categories.
You should note that you cannot define your own read strategies. You can either use the read strategy delivered by SAP, or you can deactivate it. However, in the
latter case, the data contained in the mini-templates is then no longer available for use in your products.

Integration in SAP NetWeaver Business Intelligence


The integration of Products in SAP NetWeaver Business Intelligence (SAP NetWeaver BI) is divided into two essentially different areas.
SAP CRM Set Types (Standard)
Set types can be created as either distribution-chain-dependent or distribution-chain-independent. Where set types are distribution-chain-dependent, the attribute
values are only valid for a specific sales organization and a specific distribution channel.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 15 of 56

Standard set types used in Products are transferred to SAP NetWeaver BI using SAP CRM DataSources and mapped in SAP NetWeaver BI using one of the
following InfoObjects:
InfoObject 0CRM_PROD is used for distribution-chain-independent set types of type Material or Service
InfoObject 0CRM_PRFI is used for distribution-chain-independent set types of type Financing
InfoObject 0CRM_PRODSL is used for distribution-chain-dependent set types of type Material or Service
InfoObject 0CRM_PRFISL is used for distribution-chain-dependent set types of type Financing
There are several DataSources for the attributes of these InfoObjects, for which mapping rules are already available in the standard Business Content. This
standard Business Content only needs to be activated.
The following DataSources are provided for the InfoObject 0CRM_PROD (distribution-chain-independent, type Material/Service):
DataSource

Use

0CRM_PRODUCT_ATTR

Product: CRM Part

0CRM_PR_PRMAT_ATTR

Product Material Data

0CRM_TR_CONTROL_ATTR

Transaction Control Parameters

0CRM_PR_REST_IN_ATTR

Handling Indicator

The following DataSources are provided for the InfoObject 0CRM_PRFI (distribution-chain-independent, type Financing):
DataSource

Use

0CRM_PR_FIN01_ATTR

Financing : Basic Data

The following DataSources are provided for the InfoObject 0CRM_PRODSL (distribution-chain-dependent, type Material/Service):
DataSource

Use

0CRM_PR_SALESA_ATTR

Product: Order Data

0CRM_PR_SALESG_ATTR

Product: Sales Pricing

0CRM_PROD_STATUS_SALES_ATTR

Product: Status (Sales View)

0CRM_CR_CONTROL_ATTR

Control Parameters Claims/Returns

0CRM_EXCH_BUS_ATTR

Entitlements

0CRM_PR_RESIDVL_ATTR

Financing-Dependent Attributes

The following DataSources are provided for the InfoObject 0CRM_PRFISL (distribution-chain-dependent, type Financing):
DataSource

Use

0CRM_PR_FIN02_ATTR

Financing: Distribution-Chain-Dependent Data

0CRM_PR_FIN03_ATTR

Financing: Classification and Views

The following text DataSources are provided for attributes belonging to the InfoObject 0CRM_PROD:
DataSource

Use

0CRM_PROD_IDCMP_TEXT

Texts for Compound Product ID

0CRM_SRV_ESCAL_TEXT

Response Profile

0CRM_SRV_SERWI_TEXT

Service Profile

0CRM_ITEM_INSP_TEXT

Item Inspection

0CRM_PROD_HNDLCODE_TEXT

Handling Code

The following text DataSource is provided for attributes belonging to the InfoObject 0CRM_PRFI:
DataSource

Use

0CRM_CLASSIFICATION_TEXT

CRM Contract Class

The following text DataSources are provided for attributes belonging to the InfoObject 0CRM_PRODSL:
DataSource

Use

0CRM_REBATE_GROUP_TEXT

Volume Rebate Group

0CRM_RESID_VALUE_GRP_TEXT

Residual Value Curve

0CRM_RESID_VALUE_ST_TEXT

Residual Value Strategy

0CRM_ACCTGRPPROD_TEXT

Account Assignment Group Product

0CRM_COMM_GROUP_TEXT

Commission Group

0CRM_RETURNABL_TEXT

Returnable

0CRM_PROC_IND_TEXT

Process Indicator

0CRM_COREPART_IND_TEXT

Used Part Indicator

The following text DataSources are provided for attributes belonging to the InfoObject 0CRM_PRFISL:

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 16 of 56

DataSource

Use

0CRM_REFERENCE_INT_D_TEXT

Interest Reference ID

0CRM_REFERENCE_INT_TEXT

Reference Interest Rate

0CRM_TIMEUNIT_TEXT

Time Unit

0CRM_INTERIM_PERIOD_TEXT

Interim Period

0CRM_LOOKUP_FOR_INT_TEXT

Interest Determination

0CRM_PAYMNT_FORM_TEXT

Payment Form

0CRM_PAYMNT_FREQ_TEXT

Type of Installment Payment

0CRM_LEAS_CLASS_TEXT

Tax Pricing Strategy

0CRM_PRIC_FIMA_TEXT

Process Indicator Financial Mathematics

Customer-Defined Set Types


A separate DataSource is generated in the application system for each customer-defined set type if at least one attribute has been flagged as BW-relevant. The
SAP CRM DataSources generated for customer-defined set types allow all attributes in the set type designated as relevant to BW to be transferred to SAP
NetWeaver BI. If a field is also designated as relevant for selection, the data selection can be restricted later from SAP NetWeaver BI using this field. If the set
type contains attributes which require a text DataSource, these are also generated. However, the system does not generate any objects in SAP NetWeaver BI,
these must be made available by the application.
Before the DataSources generated in the application system can be transferred to SAP NetWeaver BI , and the missing meta data (InfoObjects and transfer rules)
created, the modeling must be specified within SAP NetWeaver BI. For SAP CRM distribution-chain-independent attributes for products, there are basically two
options:
Option 1: Include new attributes in existing InfoObjects
The attributes of type Material or Service that need to be transferred to SAP NetWeaver BI can be transferred as attributes of the InfoObject 0CRM_PROD
(Product), the attributes of type Financing can be transferred as attributes of the InfoObject 0CRM_PRFI (SAP CRM Financing Product). As a result, the total
number of attributes for these InfoObjects will increase considerably and may reach the technical limit of 249 attributes.
Option 2: Create new InfoObjects
If quite a large number of new attributes is anticipated or if the attributes are of a new type, you are advised to create a new InfoObject ZMY_PROD (or similar)
and append the attributes to it. This InfoObject must have the same data type and length as the InfoObject 0CRM_PROD or 0CRM_PRFI.
If the number of attributes is very high, you may want to create several of these InfoObjects and group the attributes thematically. The individual InfoObjects will
therefore remain compact and the number of attributes required later in a query can be better restricted.
The procedure is similar for SAP CRM distribution-chain-dependent attributes for products. There are basically two options:
Option 1: Include new distribution-chain-dependent attributes in existing InfoObjects
The distribution-chain-dependent attributes of type Material or Service that need to be transferred to SAP NetWeaver BI can be transferred as attributes of the
InfoObject 0CRM_PRODSL (Product Sales View), the distribution-chain-dependent attributes of type Financing can be transferred as attributes of the
InfoObject 0CRM_PRFISL (SAP CRM Financing Product Sales View). As a result, the total number of attributes for these InfoObjects will increase
considerably and may reach the technical limit of 249 attributes.
Option 2: Create new InfoObjects
If quite a large number of new attributes is anticipated or if the distribution-chain-dependent attributes are of a new type, you are advised to create a new
InfoObject ZMY_PRODSL (or similar), compounded with the InfoObjects 0CRM_SALORG and 0DISTR_CHAN, and append the attributes to it. This
InfoObject must have the same data type and length as the InfoObject 0CRM_PRODSL or 0CRM_PRFISL.
If the number of attributes is very high, you may want to create several of these InfoObjects and group the attributes thematically. The individual InfoObjects will
therefore remain compact and the number of attributes required later in a query can be better restricted.
The modeling of master data is very important for transaction data and queries.
When the transaction data is transferred, the product GUID (key in SAP NetWeaver BI) contained in the transfer structure must be copied to the relevant fields
(communication structure, update rules). This is possible because all InfoObjects for the product have the same data type and length.
When distribution-chain-dependent transaction data is transferred, the product GUID, the SAP CRM sales organization and distribution channel (compound key in
SAP NetWeaver BI) contained in the transfer structure must be copied to the relevant fields (communication structure, transfer rules)
You should first replicate the generated master data and text DataSources from the application system to SAP NetWeaver BI from the administrator workbench.

Functions

Prices
Prices are used for pricing purposes in business transactions (quotations, sales orders, contracts). They are based on the condition technique and enable pricing
information to be determined from the pricing condition records you create for the product concerned. Prices are calculated using the pricing engine.

Integration
The following table explains how terminology differs between the WebClient UI and Customizing.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 17 of 56

WebClient UI

Customizing

Price

Condition Maintenance Group

Customizing Activity

Maintenance

Customer Relationship Management Master Data Conditions and Condition Technique Condition
Technique: Basics Create Maintenance Group

Group
Price Type

Condition Maintenance Group


Entry

Customer Relationship Management Master Data Conditions and Condition Technique Condition
Technique: Basics Create Maintenance Group

(combination of condition type


and condition table)
Price Element

Condition Type

Customer Relationship Management Basic Functions Pricing Define Settings for Pricing Create
Condition Type

Prerequisites
If you want to use the pricing functionality in the product master, you must assign the product-specific condition tables and types to the appropriate condition
group in Customizing for Customer Relationship Management, by choosing

Master Data Conditions and Condition Technique Condition Technique:

Basics Create Maintenance Group .


If you want to use the pricing functionality in the product master, you must assign the condition group to the application SAP CRM in Customizing for Customer
Relationship Management, by choosing

Master Data Products Special Settings for Sales Operations Assign Condition Group to Application CRM .

If you want to view details of price calculation, you must enter the user parameter PRC_CALC_TRACE and the parameter value X in your user preferences
(transaction SU3).

Features
Pricing Procedure
The mechanism by which prices are calculated is complex. It enables a number of prices to be calculated, such as gross price, discount, and surcharge, which
might be relevant for a certain customer or on a certain date.
The data required for calculating the price can be derived from the pricing information specified for the following:
Sales order, service order, quotation, or contract
Product
Business partner
This information is accessed and evaluated in a pricing procedure, which defines how the price is calculated, that is which condition types apply and the
sequence in which they are calculated.
For more information about pricing, see The Pricing Process.
Price Calculation
You can view price details for items. For example, you can analyze prices and determine how the following are calculated:
User exits
If user exits are used, you can determine how the system uses user exits to calculate prices. For example, you can determine if condition values are changed
by condition value formulas.
Currency conversions
Scales
If scales are used, you can determine which condition rates are set by scales.
Condition exclusions
Quantity conversions
You can view sales unit to base unit conversions and condition unit to base unit conversions.
Price Type
The price type determines the type of price involved. This can be simply the price the product actually costs, or dependent on other factors such as distribution
chain or customer.
Technically the price type is an entry in the condition maintenance group. Each assigned combination of condition type and condition table constitutes a price
type. It determines which fields are available for specifying price information on the Product page and what type of scale can be created for the specific price.
Normally you create a standard price for a product. This is currently defined as specific to a sales organization and distribution channel:
Product Price: Condition type 0PR0, condition table SAP004
Customer-Specific Product Price: Condition type 0PR0, condition table SAP005
You might also want to create discounts or surcharges. Although you can create these directly for the product concerned, you are more likely to want to create them
for the following or a combination of the following:
Customer
Customer group
Category of products (for more information, see Prices at Category Level)
Product group
These are generally defined directly on the Price page.

Taxes
PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 18 of 56

Technical name: CRMM_PR_TAX


Set type for assigning the data required for tax determination to a product.
By assigning sales taxes to a product, you determine how a product is taxed. This entails specifying the following:
Country and region
Specifies in what country and region the tax applies.
Tax type
Any form of sales tax or withholding tax, such as VAT or excise duty.
Tax group
This classifies the product according to the rate of tax charged on it.

Example
The main form of tax on sales in Germany is VAT (value-added tax). Most products are subject to the full rate of VAT, certain products, such as basic
foodstuffs, are taxed at a reduced rate, and others are not taxed at all.
There are therefore three product tax groups: one for products taxed at the full rate; one for reduced-rate products; and one products that are not taxed.
Tax tariff code
For certain countries (for example, Brazil, Poland, and India), it is not sufficient to specify a tax group. To uniquely identify a product for tax purposes in these
countries, a tax tariff code is used.
Example 1
A product is to be taxed at full rate in Germany:
Product: 4711
Country: Germany
Product tax group: Full
Example 2
A product is to be taxed at half rate in Brazil:
Product: 4712
Country: Brazil
Product tax group: Half
Tax tariff code: NBM1
Customizing
You make the settings required for product taxes in Customizing for Customer Relationship Management, by choosing

Basic Functions Taxes Basic

Settings Tax Types and Tax Groups .

Units of Measure
Technical name: COMM_PR_UNIT
Set type containing a base unit of measure, alternative units of measure, and the conversion factors for these units, that is how the alternative unit of measure is
converted to the base unit of measure.
Products can be stored, sold, and delivered in various units of measure. The following units can be specified for products:
Base unit of measure
Alternative unit of measure
Sales unit (part of sales data)
Delivery unit (part of sales data)
The base unit of measure is the basic unit used for these processes. It is automatically used as the basis for calculations if no other unit is specified. To use other
units of measure, they must first be defined as alternative units of measure with conversion factors.
In business transactions, such as the sales order, you can replace the base unit of measure proposed by the system with an alternative unit of measure.
Quantities specified in alternative units of measure are automatically converted to the base unit of measure.
You can define any number of alternative units of measure. For materials (not for services), you can also enter weights, volumes, and dimensions for each unit of
measure.

Note
When you change a unit of measure or conversion factor for a particular product, these changes will apply to any pricing records that exist for this particular
product.
You can only use base units of measure that have been defined in Customizing for SAP Web Application Server, by choosing

General Settings Check Units

of Measurement

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 19 of 56

Descriptions
Technical name: COMM_PR_SHTEXT
Set type containing the descriptions created for a product. You can create descriptions for a product for all languages defined in the system. However, you can
only create descriptions for those products that originate from a system with the same logical system name as the CRM Server.
When creating a product, you can enter a description in your logon language in the general data of the product, as well as in the Descriptions assignment block
(set type) for all defined languages. When changing products however, a description can only be changed in the Descriptions assignment block.
Products can be saved without a description. This is the standard setting in the system. This means that you can save a product even if it has no description. This
setting can be changed in Customizing for Cross-Application Components, by choosing

SAP Product Basic Settings Define Characteristics of System

Messages . The default warning message that is issued in this situation can be changed to an error message.
When a product is uploaded to SAP ECC without a description, a description is created in the logon language, as an ERP material master record has to have a
description. The product ID is used as the description.

Notes and Attachments


Various sources of information available for products.

Notes and Sales Notes


Technical names: COMM_PR_LGTEXT, COMM_PR_LGTEXT1, COMM_PR_LGTEXT2
Various text types are available for products. They are divided into two main types:
Basic texts (not dependent on a distribution chain)
Sales texts (dependent on a distribution chain)
Each text type can be created once in each language for each product. Text types that are specific to a distribution chain can be created once in each distribution
chain and language for a particular product.
Three set types are available for texts:
All text types can be maintained on the set type COMM_PR_LGTEXT (Texts)
Only organization-independent text types can be maintained on the set type COMM_PR_LGTEXT1 (Basic Texts)
Only distribution-chain-dependent text types can be maintained on the set type COMM_PR_LGTEXT2 (Sales Texts)
Text Types
SAP delivers five organization-independent text types and five distribution-chain-specific text types:
Org.-Independent Text Types

Distribution-Chain-Dependent Text Types

Basic Text

Sales Text

Inspection Text

Sales Inspection Text

Internal Note

Internal Sales Indicator

Basic Eye-Catcher Text

Sales Eye-Catcher Text

Basic Price Eye-Catcher Text

Sales Price Eye-Catcher Text

Products from Other Systems


All text types can be used for products created in SAP CRM. However, where products have been created in an external system, you can only create and
change text types which are not downloaded to SAP CRM.
Text types which are exchanged between SAP ECC and SAP CRM are as follows:
SAP ECC

SAP CRM

Basic data text (service)

Basic Text

Basic data text (material)

Basic Text

Inspection text (material)

Inspection Text

Internal note (material)

Internal Note

Customizing
You can define your own text types, text determination procedures, and access sequences in Customizing for Customer Relationship Management, by choosing
Basic Functions Text Management .
You can also define which text types are allowed for a product type by choosing

Customer Relationship Management Master Data Products Settings for

Product Type Assign Text Object and Text Determination Procedure . This is done indirectly using a text determination procedure.
Attachments and Thumbnail
You can attach different types of documents to a product using content management functionality.
For more information, see CRM Content Management.
You can also attach a thumbnail to a product, thus providing a picture of the product in its general data. The image is assigned in the normal manner as for
attachments. However, the attachment must be designated as the default document in the document properties, and BDS_IMAGE selected as the document type.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 20 of 56

Sales Data
You can create sales data for products in the Distribution Chains assignment block. Sales data is created for a specific distribution chain, consisting of a sales
organization and distribution channel, which need to have been defined in the organizational model.

Features
The Distribution Chains assignment block shows all distribution chains for which sales data has already been created. To create sales data for a distribution chain
without any sales data as yet, you click New and select the relevant distribution chain.
You can also create new sales data by copying the data from a specific distribution chain to another distribution chain. To do this, you select the distribution chain
from which you want to copy the data, click Copy, and select the relevant distribution chain from the entries displayed. Only those distribution chains are
displayed for which sales data can be created for the product.
If a product does not originate from SAP CRM, sales data cannot be created for new distribution chains, but only for those for which sales data has already been
created.
You have the option of changing this behavior in Customizing for Customer Relationship Management, by choosing

Master Data Products Allow Changes to

Product Data . This involves making settings for the product types 01 (materials) and 02 (services) and the following set types:
CRMM_PR_SALESA (Sales: Control Fields, Quantities)
CRMM_PR_SALESG (Sales: Groupings)

More Information
For more information about sales notes, see Notes and Attachments.

Sales: Control Fields, Quantities


Technical name: CRMM_PR_SALESA
Set type containing sales data on a product. As this set type is dependent on a distribution chain, a distribution chain has to be selected before data can be
entered.
The set type is evaluated when an order is created and in pricing. You can specify:
The unit of measure in which the product is sold (sales unit).
A minimum order quantity in base units of measure, which is the minimum quantity a customer can specify during order entry.
The delivery unit in which the product is delivered. Only exact multiples of the delivery unit can be specified. For example, a delivery unit of 30 bottles means
that 30, 60, or 90 bottles can be delivered, but not 100.
A sales status, indicating whether the product can be used in an order in a specific distribution chain or whether it is blocked. If you set the status Blocked
(Warning), a warning message appears in the order when the product is used. An error message is issued for the status Blocked (Error).
An item category group. This is a grouping of products which is used by the system to determine item categories when processing business transactions.
A pricing reference product, which is used by the system as a reference for pricing.
Whether the product qualifies for a cash discount.
The tax location (delivering location) of the product, which is represented by an account.
Success Rate (CRMM_PR_SUCCESS)
The Success Rate field is technically a set type that displays the success rate for a particular product and distribution chain. The figure indicates as a
percentage the number of quotations successfully converted into sales orders, as compared to the total quantity of quotations for this product.
The information displayed in the field is derived from SAP NetWeaver BI. If a sales history is available for a specific product, this value also serves as the default
value for the order probability (the likelihood that a sales order is initiated on the basis of the quotation).
The field is display-only and the data cannot be changed. When a product is copied, the sales data is copied as well, with the exception of the success rate.
Similarly, when a distribution chain is copied in an existing product, the success rate is not copied.
You can however change the success rate value manually for a specific product using the report CRM_MAINTAIN_SUCCESS_RATE.
The Success Rate field is delivered as a hidden field and is available in the configuration tool.

Sales: Groupings
Technical name: CRMM_PR_SALESG
Set type allowing you to group products for various purposes. As this set type is dependent on distribution chains, a distribution chain has to be selected before
data can be maintained.
The set type is evaluated when an order is created and in pricing.
It contains various fields for grouping purposes. They allow you to group together products in a simple manner and use them in various ways:
Pricing conditions (field Product Group)

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 21 of 56

Commission calculation (field Commission Group)


Volume rebate settlement (field Volume Rebate Group)
Revenue or sales deduction account determination (field Account Assignment Group)
Your own analyses (product groups 1 5)
A sales category can be specified for a particular distribution chain and used for specific purposes within applications such as pricing and trade promotions.
However, certain applications such as partner/product ranges (PPRs) only interpret the organization-independent product category assignment.

Note
The sales category is not used in the same way as product categories, and does not influence the interface or other aspects of product maintenance.
Settings made to this category on the Product Hierarchy page will not be effective on the Product page.
You make the relevant Customizing settings as follows:
You define the groups you require in Customizing for Customer Relationship Management, by choosing

Master Data Products Special Settings for Sales

Operations .
The sales category you use must belong to the hierarchy assigned to the application Sales. You can check these settings in Customizing for Cross-Application
Components, by choosing

SAP Product Product Category Assign Category Hierarchies to Applications .

Material Data

Basic Data on Materials


Technical name: COMM_PR_MAT
Set type containing the item category group and division for materials.

Item Category Groups


An item category group represents the item categories allowed for a product. It enables products to be grouped together from a business perspective and the
relevant item category to be determined when processing business transactions.
During business transaction processing, the system determines the item category based on the item category group specified for the product, and the business
transaction type, and proposes it in the respective document. This determines how the item is processed in the business transaction, such as whether it is
subject to the availability check, whether standard pricing or free-of-charge pricing applies, and whether it is relevant for quotations.
When you enter a product in a sales order, for example, with a certain item category group, the system finds the relevant item category based on the item
categories assigned to the relevant transaction type of the item category group.
You define item category groups in Customizing for Customer Relationship Management, by choosing

Transactions Basic Settings Define Item Category

Group .
You make the settings required for item category determination in Customizing for Customer Relationship Management, by choosing

Transactions Basic

Settings Define Item Category Determination .


Divisions
A division is an attribute in organizational management. If a header division is not used in your system, the division exists only at item level and is derived from
the product data. You specify in Customizing whether a header division is being used.
Although a division is not required in SAP CRM and can be deactivated, a division is required for data transfer with SAP ECC, as SAP ECC can only process
documents and master data entered with a division. The division specified in SAP CRM must also be available in SAP ECC.
If you are not using divisions in SAP CRM you can set this function to inactive and use a dummy division instead for data transfer to SAP ECC. This enables the
data transferred to be processed further in SAP ECC.
You can set divisions to inactive and specify a dummy division to be used instead in Customizing for Customer Relationship Management, by choosing

Master

Data Products Special Settings for Sales Operations Define Division Settings .
You define divisions in Customizing for Customer Relationship Management, by choosing

Master Data Organizational Management Division Settings

Define Divisions .

Global Trade Item Number (GTIN)


Technical name: COMM_PR_GTIN
The Global Trade Item Number (GTIN) is a 14-digit number which includes various EAN/UCC numbering structures and is used to uniquely identify a product
worldwide. EAN/UCC product identification numbers allow a unique identifying GTIN number to be derived in the system. All EAN/UCC numbers are considered
as 14-digit numbers, right justified and zero filled where necessary.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 22 of 56

A GTIN is assigned to the product together with a unit of measure. As more than one unit of measure can be specified for a product, this means a product can
have more than one GTIN.
During an initial or delta download, EANs can be transferred from SAP ECC to SAP CRM as follows:
Only the EANs corresponding to the EAN/UCC-8, UCC-12, EAN/UCC-13, and EAN/UCC-14 standards can be transferred from SAP ECC.
As more than one EAN can be assigned to a material in SAP ECC per unit of measure but only one GTIN per unit of measure in the product master in SAP
CRM, only the EAN with the Main EAN indicator is transferred.

Note
A GTIN can only be maintained for the product type Material, not for services.
A GTIN should generally only be assigned once. However, you can specify how the system should respond if a GTIN is assigned twice. You make the relevant
settings in Customizing for Cross-Application Components, by choosing

SAP Product Basic Settings Define Characteristics of System Messages .

You create a new entry, enter 001 (GTIN has already been assigned) in the MsgNo field, and specify which type of message should be output in the fields
Online and Batchl.
If no entry is made for the message, a warning is output by default if the user attempts to assign a GTIN that has already been assigned.

Example
You do not want the same GTIN to be assigned more than once. You enter the following data: Message number = 001, Online = E, Batchl = E

Financing-Dependent Attributes
Technical name: CRM_PR_RESIDVL
During the course of a leasing process, a leasing contract is created for the financing product for the lessee concerned. This means there is a relationship to a
physical product, that is the object that is to be leased, rented, or financed by a loan.
The data that you enter for the physical object is distribution-chain-specific. It includes the residual value strategy, device class, and the residual value curve.
This data controls the residual value calculation that is performed on the financing product in pricing. The residual value curve can be overridden by the residual
value curve specified for the related financing product.

Service Data
Set type data for service processes.
The set types available specifically for services include the following and those described below:
Transaction Control Fields
Serial Number Processing in Service
Duration of Work (CRMM_PR_SRVDUR)
Set type for specifying the duration of work and time unit for a product representing the service which is to be performed.
It is used as a default value in the service item of a business transaction, and is available as information in subsequent resource planning.
This set type is available for service products with resources.
Resource Requirement (CRMM_PR_SRVRR)
Set type containing a rule as the default value specifying how the executing service organization which is to perform the service is determined automatically in the
service item of the business transaction.
This set type is available for service products with resources.
Default Values for Service Contracts (CRMM_PR_SRVENT)
Set type containing the default service profile and response profile to be used in service contracts in which the service is stipulated.
The service profile defines the times when a customer is entitled to a service, with specified availability times.
The response profile is used to generate date and time intervals for the performance of service tasks. The system calculates the time interval within which a
predefined task must be performed with reference to the service profile, to which the response profile is assigned.
You can define the profiles on the SAP Easy Access screen under

Service Maintain Availability and Response Times . For more information, see Service

Level Agreements (SLA).


This set type is available for service products for contracts.
Service Plan (SERVICEPLAN)
Set type for specifying a service interval template for the service plan.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 23 of 56

For periodic services, intervals are available with different plan types (time-based or counter-based, or a combination of both plan types) and with different
scheduling types (cyclical, once, alternating, or scheduling with fixed values). You can define templates for the different interval types.
You define service interval templates on the SAP Easy Access screen under

Service Maintain Service Interval Templates .

For more information, see Templates for Service Intervals.

More Information
Make the necessary settings for working with service products in Customizing for Customer Relationship Management, by choosing

Master Data Products

Special Settings for Service Processes Define Service Products .

Transaction Control Fields


Technical name: CRMM_PR_BTR
Set type containing the item category group.
An item category group represents the item categories allowed for a product. It enables products to be grouped together from a business perspective and the
relevant item category to be determined when processing business transactions.
During business transaction processing, the system determines the item category based on the item category group specified for the product, and the business
transaction type, and proposes it in the respective document. This determines how the item is processed in the business transaction, for example, whether a
service item is relevant for resource planning.
When you enter a product in a service order, for example, with a certain item category group, the system finds the relevant item category based on the item
categories assigned to the relevant transaction type of the item category group.
This set type is available for both service products for contracts and service products with resources. The item category group SRVP is provided for service
products as part of standard Customizing, and is used in service orders, contracts and confirmations.
You define item category groups in Customizing for Customer Relationship Management, by choosing

Transactions Basic Settings Define Item Category

Group .
You make the settings required for item category determination in Customizing for Customer Relationship Management, by choosing

Transactions Basic

Settings Define Item Category Determination .

Serial Number Processing in Service


Technical name: CRM_SERIALNUM
Set type containing a control indicator for serial number processing.
This set type is used for serial number processing in service processes. The control indicator is used to ensure consistent material movements where serial
numbers are involved, and where such processes are triggered in SAP CRM and occur in SAP ECC.
The set type CRM_SERIALNUM contains the attribute SERIALNO_PROCESSING (Serial Number Processing). It can have the following values, which determine
how serial number processing is handled in SAP CRM:
0 Default Value
1 Entries Possible, but no Check Against Master Data
2 Check in CRM Against Object
3 Check in CRM Against Object and Serial Number
4 Check in ERP Against Serial Number
The value can be entered manually or downloaded from SAP ECC. When materials are downloaded from SAP ECC, a check is performed to see if serial number
profiles are assigned to the material/plant combination. If any of them require serial numbers as mandatory information in material movements, the indicator value
is set to 4.
If serial numbers are also transferred from SAP ECC to SAP CRM, the initial check can be made against objects. In this case it is advisable to change the value
from 4 to 3.
The indicator value 1 allows you to record individual parts involved in the processes, but without any further checks.
The indicator value 2 is suitable for situations where individual parts exist in SAP CRM as objects, but a possible integration with SAP ECC is not taken into
consideration.
The set type CRM_SERIALNUM is not assigned to a category when material categories (DNL_CUST_PROD1) are downloaded. A manual step is therefore
required prior to the download in which this set type is assigned explicitly to the relevant categories, for example MAT_HAWA. For more information, see Note
824780.

Warranty Data
Set type data for warranties.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 24 of 56

The set types available specifically for warranties are described below.
You make the necessary settings for working with warranties in Customizing for Customer Relationship Management, by choosing

Master Data Products

Special Settings for Warranties Define Warranties .


Warranty (CRMM_PRWTY)
Set type containing general information such as customer or vendor warranty, warranty basis (based on a period, counter reading, or both), as well as the dates for
a time-based warranty. You can define flexible date rules to calculate the start date of a warranty and therefore its period of validity. The date profile you select
determines which date types and date rules you can use.
The accounting indicator allows you to specify the procedure for price determination, and the procedure for billing and transferring costs to controlling. This gives
you control over the costs incurred by warranties.
This set type is mandatory for warranties. Any warranty master record created without this set type cannot be used in warranty management.
Warranty Catalog Data (CRMM_PRWTY_CAT)
Set type specifying the type of complaint, damage, or defect that is covered by the warranty. The details are specified in the form of codes, and constitute a list in
which the items are either all included or all excluded.
Warranty Services (CRMM_PRWTY_SRV)
Set type detailing particular services, service parts, and even specific subjects to be fully covered or partially covered by the warranty. These are specified as a
list in which the items are either all included or all excluded.
Warranty Counter Data (CRMM_PRWTY_CNT)
Set type containing data for counter-based warranties.
For counter-based warranties, validity is defined by a limit set for usage or wear. You can specify the type of counter involved, that is the physical device that is
used to record the measurements, such as car mileage or electricity readings, and the limit to apply in each case.

More Information
Warranty Management

Status Management
Enables you to control the processing of a product based on the statuses assigned to it. By setting a status for a product, you determine its current processing
status and the actions that can be performed subsequently by the system or user.
Two types of status are available:
System status
A system status controls or regulates a process. It informs you that a particular transaction was performed. System statuses are predefined in the system and
delivered by SAP.
User status
This is a status you define yourself. It serves as an indicator, but has no effect on standard functionality.

Features
The product status consists of the following:
System Status
You can set the following system statuses:
To Archive
Locked
The following statuses are also available but are set by the system:
Deleted
Archived
Can Be Archived
For more information, see Product Status.
User Status
These are additional statuses you can define to describe aspects not covered by the system status or to describe certain states in more detail, such as
Released by Department X, Released by Department Y, and so on.
There are two types of user status available:
With a status number
This means that only one state is allowed at a time. A sequence of states can be specified in the status profile.
Without a status number
More than one state can be assigned at a time.
You can define the user statuses and status profiles you require in Customizing by choosing

Customer Relationship Management Master Data Products

Status Management .

Note
The user status function is available in the configuration tool and has to be activated.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 25 of 56

Note
The sales status set at distribution chain level applies only within the distribution chain and has a lower priority than the overall object status.

Activities
The product status is specified in the product details on the Product page by selecting the relevant status in the dropdown box of the New Status field. The
statuses shown are both system statuses and user statuses (if activated). The + or - indicates adding or removing a status.
To enter a user status, you first select the relevant status profile in the Status Profile field. The dropdown box of the New Status field displays for selection any
user statuses from your status profile that are selectable, together with the system statuses.

Product Status
The statuses available for products are Locked and To Archive. The statuses Deleted, Archived, and Archivable can only be set by the archiving programs.
If you set the status Locked for a product, this means the product can no longer be accessed by other applications. For example:
No new sales orders can be created for the product.
The product catalog is informed that the product is locked and the product no longer appears in the catalog.
You might want to prevent a product from being used by other applications for the following reasons:
You have created a product in SAP CRM but have not yet finished working on it. You want to complete and release it at a later point in time.
The product has been downloaded to SAP CRM and contains errors. It should not be used for the time being.
The product is a seasonal product.
If you set the status To Archive, the product is flagged for archiving. During the archiving process, the status is set to Archivable if archiving has been activated
in the system and the product is not used in any applications, such as sales orders. If the product is, however, being used, the product will not be checked again
until a certain amount of time (customizable) has passed.
For more information about archiving, see Archiving the SAP Product.
For more information about statuses, see Status Management.

Integration
When a material is downloaded from SAP ECC, the product status is set to To Archive if the material has a deletion flag at material header level (MARA-LVORM).

Note
The status Locked is set for configurable materials, as these products cannot currently be archived in SAP CRM.
The sales status is set according to the ERP sales status (MVKE-VMSTA) and the ERP deletion flag at distribution chain level. The deletion flag MVKE-LVORM is
transferred as the sales status Blocked (Warning) provided a higher sales status is not already set.
When a product is uploaded with the product status To Archive, the ERP deletion flag is set in the material header (MARA-LVORM). The sales status cannot be
transferred to SAP ECC automatically.
If you want to transfer the sales status to SAP ECC, you can implement the appropriate mapping in a user exit. For more information, see the document CRM
Products: Customer Enhancements for Downloading and Uploading Product Master Data, which is available as an attachment in Note 428989.

Structured Products
Structured products consist of a header product and any number of component products. They are used to represent a group of products as a distinct unit in
certain logistics processes.
Structured products can be created in SAP CRM on the Product page in the same manner as other products. In addition, structured articles (sets, displays, and
prepacks) can be downloaded from Retail systems and represented in SAP CRM as structured products.

Features
Creating structured products involves creating a product in the normal manner and then assigning components to it. Technically you are creating a relationship
(relationship type Component) between the header product and other products. You should not create configurable or financing products as they cannot be used
as the header or component of a structured product. Note the following points:
All products required, that is the header product and its component products, should already have been created. The product you are working with serves as
the header product.
You select the component products in the Components assignment block. You also specify the type of component you want to create, this being either a set,
display, or prepack, and the product quantity. The unit of measure is derived from the base unit of measure specified for the product.

Note

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 26 of 56

If a product has already been uploaded to a Retail system, components can only be assigned if the material category allows this. If this is the case, the
appropriate relationship type is defaulted by the system.

Constraints
A number of restrictions apply when working with structured products:
Component lists cannot be created in SAP CRM for header products downloaded from an ERP system. This restriction was implemented for data consistency
reasons and is handled as follows:
If the header product originated in the ERP system, the component list cannot be changed in SAP CRM, but merely displayed.
If the header product originated in SAP CRM, component lists can be created and changed in SAP CRM. Data can also be maintained in the ERP system,
but the SAP CRM system is regarded as the master system and the changes ignored.
Bills of material (for example, sales BOMs) cannot be downloaded from a standard ERP system as they are generally plant-specific and therefore cannot be
represented in SAP CRM due to the fact that structured products currently apply to the whole company.
Structured products are not supported in certain logistic processes in SAP CRM, such as the product catalog, where component information is not displayed.
Multilevel structured products are not allowed. If the header product is already the component of another structured product, no components can be assigned to
it.

Configurable Products
Products for which different options are available. For example, a PC can have different types of monitors or keyboards, or different memory sizes.
When configurable products are used in applications, the Web catalog for example, a customer can see which options are available and simulate configurations
before making a selection. The price of the product is recalculated depending on the options selected.

Integration
You can download configurable materials from SAP ECC to SAP CRM. The configurable materials have to be downloaded first, before the configuration models are
downloaded.
You download the configuration models using the load object SCE. You should not make any filter settings for this object, since they do not apply to the delta load.
A request load can be performed if it is necessary to repeat an initial load.

Prerequisites
You have specified that configurable products can be created in SAP CRM in Customizing for Customer Relationship Management, by choosing

Master Data

Products Settings for Configurable Products Allow Configurable Products for a Product Type .

Features
Configuration data for a product and other data related to configuration is available in the following assignment blocks on the Product page:
Product Models
Displays a list of configuration models in which the product is used. The following functions are available:
Select a model and click Simulation to simulate the configuration.
Select a model and click Edit to change the configuration.
Click Insert to create a new configuration model.
Product Variants
A product variant is a product that has already been configured and has its own product master record in which the configuration is stored.
A list of product variants which exist for the product and were downloaded from SAP ECC is displayed in the assignment block. They can be displayed but not
changed. The configuration data is contained in the Configuration assignment block.
Prices
Prices can be created for configurable products using the variant condition keys (price keys) created in the PME.
Variant conditions are pricing conditions that depend on characteristic values. The variant condition key (price key) is used to create a relationship between
characteristic values and the price of the configurable product.
When creating a price, you link the price key with the associated price.

More Information
Modeling Configurable Products
Importing Knowledge Bases

Modeling Configurable Products


You can use this function to create product models for configurable products, which you can use in Product Configuration. Configurable products are products for
which different options are available.
Product master data is bundled in a product model. The product model is a container for modeling data. It contains or references all master data that is needed

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 27 of 56

during the configuration process, such as dependencies, classes, characteristics, characteristic values, and products.

Note
This function in the WebClient user interface (UI) replaces the Product Modeling Environment (PME) application, which had to be installed separately.

Prerequisites
You have installed the Configuration Engine, a Java application.
For information about installing Java, see SAP Service Marketplace at http://service.sap.com/crm-inst in the following document: Installation Guide
SAP CRM Java on AIX: Oracle.

Features
Create and maintain product models
You can create and maintain one or more product models right from a Configurable Product (Configurable indicator is set). This means that you can create
products, classes, characteristics, and values, as well as product structures and their relationships to one another in a hierarchical tree. If a product model
contains many products on the topmost level, it can be accessed by using any one of those products.
You can work with active and inactive versions. To avoid defective or incomplete product models, you can make changes in an inactive version. When you are
finished making changes and you have tested the version, you can apply the changes, which generates a new active version from the modified version. This
new active version then overwrites the old active version.
You can build a product structure that contains all possible components. You can define rules that dictate the conditions that must be met for the system to
select a component in the configuration. A component can be configurable and can have its own product structure. Products with components can inherit
characteristic values from one another (both directions of inheritance are possible).
For more information, see Creating and Maintaining a Product Model and Editing Dependencies.
Testing product models
To test the current configuration, you can start the configurator with a single click.
Transporting product models between customer relationship management (CRM) systems
You can transport product models between different CRM systems. For example, you could create a product model in a test system and transport it into a
productive system later on.
For more information, see Importing the Knowledge Base.

More Information
For information about modelling configurable materials in SAP ERP, see SAP Library for SAP ERP on SAP Help Portal at

http://help.sap.com/erp

SAP ERP Central Component Logistics Logistics - General (LO) Variant Configuration (LO-VC) .

Creating and Maintaining a Product Model


You can use this function to create and maintain a product model from product maintenance of a configurable product. Maintenance includes various steps in
product modeling.

Prerequisites
You have made the settings for product models in Customizing for Customer Relationship Management by choosing

Master Data Products Settings for

Configurable Products .

Features
You start product modeling from product maintenance of a configurable product in the SAP WebClient user interface (UI), and use assignment block Product
Models.
Maintenance Functions: List of Product Models
If you choose Edit List, the following editing functions are available:
Create a new product model
You can use the following fields in when you create a new product model:
Name
Version
You enter the version number yourself.
Status
Only product models with status Released are available in the product configuration.
From Date
Product configuration always selects the latest version that is valid.
The product from which you started this function is automatically in your new product model.
Change a product model
When you change a product model, it becomes inactive initially. In the list of product models, the value Pending appears in the Changes column. To accept or
reject the changes, you can use the Apply Changes or Discard Changes buttons. To avoid defective product models, test the new, inactive version after you

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 28 of 56

make the change.


If you apply the changes, the new version, which was inactive until now, becomes the active version and replaces the previous active version.
If you discard the changes, the inactive version is deleted and no changes are made to the active version.
Create a new version of an existing product model
Create a new version of a product model by selecting a product model from the list and choosing Insert New Version. Assign a new version number and then
open this copy of your original version to make your changes.
Simulate a product model
Regardless of the status and regardless of whether the product model is active or inactive, you can start a simulation to test your configuration.
Delete a product model
Maintenance Functions: Product Model
The following maintenance functions are available for a product model:
Create products with components
You can add new configurable products to a product model. You can assign components to these main products (first-level products), creating a product
structure. The components, in turn, can also be configurable products, though they can also be non-configurable. You can define rules that dictate the conditions
that must be met for a component to be selected.
Creating classes and subclasses
You can create classes with subclasses and assign products of the product model and components to a class and subclass. You can also create
characteristics for classes and subclasses.

Note
You use classes to group characteristics that are relevant for multiple products. If you use classes, you create an inheritance structure: a lower-level class
inherits the characteristics of the higher-level class. If products have the same characteristics, you can assign different products to one class. If you change
a characteristic that is assigned to a class, that characteristic changes for all the products assigned to that class.
Create characteristics for products, components, classes, and subclasses
For more information on characteristics, see Characteristics and Their Parameters.
Define dependencies
You can save dependencies as a table or in custom functions. For more information about dependencies, see Editing Dependencies.
Status change
If you have finished maintaining the product model, change the status of your product model to Released.
This way, you activate your model for use in product configuration.
Simulation
You can check the behavior of your product model in configuration. To do this, choose Simulation.

Characteristics and Their Parameters


You use parameters for characteristics to define product attributes for your configurable product. This enables users of the product configuration to select one of
several product options.

Prerequisites
You have created a product model, class, or product.

Features
Characteristic Assignment
You can assign characteristics directly to a product or to a class. You can also assign characteristics to multiple classes (see SAP Note 1683551 and SAP
Note 1695337).
You can exclude values on class or product level, which makes reuse easier.
Characteristic Parameters
The following table shows the parameters available for characteristics:

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 29 of 56

Parameter

Description

Comment

Superclass

ID of the class is inherited from the

If you create a subclass for a class and assign characteristics to the class, the characteristics are

characteristic

inherited by the subclass. In the lower-level classes, the ID of the class appears in the field for the
superclass.

ID

Technical name of the characteristic

The name is language-independent and cannot be changed later.

Reference

Option to assign object references

Calls up a selection list for available table reference fields. For more information, see Creating

Characteristic
Description
Data Type

Reference Characteristics.
Language-dependent characteristic

This short description can be translated by choosing Texts and creating a language-dependent

name

text.

See table below.

The following data types are available:


String
Numeric
Date

Multiple

Characteristics can have one value or

See table below.

Values

multiple values.

Default Value

Characteristic value that is initially

If you have defined a value range (see row Value Range: Value From, Value To), select a value

displayed as the assigned value in the

that falls within the defined range as the default value.

interactive configuration.
Invisible

Characteristics can be classified as

Use this parameter for product options that are not relevant for the user.

hidden (invisible).
Required

Characteristics can be classified as

Use this parameter when the characteristic must contain a value.

required.
Read Only

Characteristics can only be displayed.

Use this parameter for product options that the system, rather than the customer, may select.

Allows Other

Enables fields for additional customized

If you set this indicator, in addition to the default values, fields for additional customized value

Values

value entries

entries are offered in the configuration.

Value Range:

Values that the characteristic can have

These fields are only available for data types Numeric and Date. After the values are entered, the

Value From,

during product configuration.

fields are no longer available for entry. If you want to change the contents of these fields, choose

Value To

Delete Value From/To and enter new values.

Case

Characteristic values can only be

Sensitive

entered in capital letters for fields that

This field is available for data type String.

Values

are not selected.

Number of

Number of digits in a numeric field or

This field is available for data types Numeric and String. The default length is 30, which is also the

Digits/Number

number of characters in a string.

maximum length.

Decimal

Number of decimal places in a numeric

This field is available for data type Numeric.

Places

value.

Long Text

In-depth, language-dependent

You see the long text in the product configuration or simulation. For more information, see Temporary

explanation for the characteristic

UI Settings.

Display

Determines whether characteristic

See SAP Note 1712658.

Option

values are displayed as radio buttons

of Characters

or dropdown lists.

Data Types in Connection with the Multiple-Value Indicator


Data

Multiple

Type

Values

Explanation

Example

Indicator

The values of the characteristic can contain any alphanumerical characters.

The characteristic Type of processor in a PC

not set

The characteristic can only accept one value at any one time.

configuration

Indicator

The values of the characteristic can contain any alphanumerical characters. For

The characteristic Accessories in the configuration of

set

the characteristic, you can select several characteristic values at the same

a PC

Field
String
String

time.
Numeric
Numeric

Indicator

The values of the characteristic can only contain numbers. The characteristic

The characteristic Number of processors in a server

not set

can only accept one value at any one time.

configuration

Indicator

The values of the characteristic can only contain numbers. For the

The characteristic Cable length in a PC configuration

set

characteristic, you can select several characteristic values at the same time.

(several cables with different lengths can be


selected).

Activities
Select the class or the product to which you want to assign the characteristic and choose New. Then enter the parameters for the characteristic.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 30 of 56

Variant Conditions
Variant conditions are pricing conditions that depend on the values of configurable characteristics. You enable pricing for a configurable product during the
configuration process. You use variant condition keys to create dependencies between characteristic values and the price of the configurable product.
A variant condition key is a multiple-value characteristic in string format.

Prerequisites
You have created a configurable product and a product model.

Activities
Create Variant Condition Key
You create variant condition keys and the corresponding value range restrictions at product or class level in product modeling. You use dependencies or a one-toone assignment to characteristic values to define the prerequisites that cause a variant condition key to be applied.
1. Create a new characteristic for a product or class. You can use PAINT as the ID, for example.
2. Select value VARIANT_CONDITION for the Reference Characteristic parameter.
3. Create values for the new characteristic. The values of the characteristic are the allowed variant condition keys.

Example
For example, if you want to link the selection of the colors red and black for a configurable car with an additional price, you can name the variant condition
keys COLOR: RED and COLOR: BLACK.

Recommendation
We recommend defining characteristics as hidden and defining dependencies with other characteristics as dependencies. This way, unexpected
interactions between the reference characteristics and user entries can be avoided.
You can use variant condition keys in your model in two different ways:
Use

Model

Example

One-to-one assignment to a

Use the 1:1 variant condition key

Product colors red and black are associated with a surcharge. You therefore

characteristic value

assignment in characteristic processing

create variant condition keys COLOR: RED and COLOR: BLACK.

for the relevant characteristic.


Use in dependencies (setting a

Use the variant condition key in formula

The characteristic value Color: Blue in combination with the characteristic value

key depending on several

dependencies.

Finish: Metallic includes a surcharge for a product, which is represented by the

characteristic values)

variant condition key BLUEMETALLIC.


Process the formula as follows::
If:
PAINT = "BLUEMETALLIC"
Then:
COLOR="BLUE" and "FINISH=METALLIC"

Create Variant Condition Records (Product Processing)


When you create condition records in product processing, you link the variant condition key with the associated prices. The variant condition keys used in
condition maintenance must be unique.
1. In product processing, choose the product for which you defined variant condition keys.
2. In the Prices assignment block, choose New.
3. Select price type Surcharge or Discount Variant. (Condition type 0VA0 Variant Price is assigned to this price type.)
4. In the Price Key field, select a variant condition key.
5. Enter the necessary data: sales organization, distribution channel, the variant condition key that was created in the product modeling environment, amount,
currency, price unit, and product unit.

Creating Reference Characteristics


A reference characteristic is a characteristic that you create with a reference to a table field. A table field is an attribute of an object in SAP Customer Relationship
Management (SAP CRM). The main data, such as format or length, is taken from the referenced table field.
In product modeling, reference characteristics are used above all to transfer movement/transaction data and master data from SAP CRM to the product
configuration.

Prerequisites
You have created a product model.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 31 of 56

Features
A predefined list of defined table fields is available in product modeling. Instead of technical names of the table fields or structure fields, this list contains alias
names.
For more information about the available table fields, see the documentation for product configuration: Reference Characteristics in SAP CRM.

Activities
As you edit the parameters of a characteristic, select a value in the Reference Characteristic field.

Recommendation
We recommend defining reference characteristics as hidden and defining dependencies with other characteristics as dependencies. This way, unexpected
interactions between the reference characteristics and user entries can be avoided.

Example
During configuration, you want the characteristic Country of Sold-To Party to be filled automatically, depending on the sold-to party: If sold-to party XY company's
headquarters are in Germany, the value in characteristic Country of Sold-To Party should be Germany.
To do so, you create a reference characteristic Country of Sold-To Party with reference to ITEM_SOLD_TO_COUNTRY.
You can then use the reference characteristic when editing dependencies, for example, to assign various supply voltages (such as 220 V for Germany, 110 V for
US) to various supplying countries in the configuration of a personal computer.
The result of modeling is as follows:
If you create an order for a personal computer for company XY in the SAP CRM system, and call the configuration from the order, the reference characteristic
Country of Sold-To Party is filled with the value Germany. This value cannot be changed. Dependencies are used to assign the supply voltage used in Germany
to the personal computer.

Editing Dependencies
In product modeling, you can use dependencies as follows:
To exclude combinations of characteristic values that are not allowed, such as a convertible with a sunroof.
To assign variable condition keys that then influence product pricing. For example, the price could increase automatically by EUR 1000 if you choose a sunroof
during configuration.
To derive values for characteristics.
To guide the user through interactive product configuration by making attributes hidden, required, not allowed, or display only, based on selection of other
characteristics.
To define rules that dictate the conditions that must be met for a component in the product structure to be selected.

Features
Types of Dependencies
There are six different types of dependencies:
Dependencies as Formulas
You can use dependencies as formulas to describe the dependencies that exist between different configurable characteristics and their values.
Formula is available at product level or class level.
Conditions for Characteristics
You can use conditions for characteristics to guide end users through interactive product configuration. You can define the circumstances under which
characteristics are visible, selectable (allowed), required, or display only.
Condition is available at product level or class level.
Dependencies as Tables
You can use dependencies as tables to store valid combinations of values for different characteristics and to restrict domains.
Table Formula is available at product level and class level if you have created a table with status Released in the product model.
Dependencies as Functions
You can use dependencies as functions to create custom functions.
Function Formula is available at product level and class level if you have created a function with status Released in the product model.
Component Conditions
You use component conditions to define the conditions under which a component can be selected in the configuration.
Component Condition is available at product level for a product to which you have assigned a component.
Dependencies as Component Formulas
The functions in dependencies as component formulas have the same functional scope as "Dependencies as Formulas". With dependencies as component
formulas, you can go a step further and describe dependencies between a product and one of its components.
Component Formula is available at product level for a product to which you have assigned a configurable component.
For more information on dependency syntax, see Dependency Syntax.
Dependency Status

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 32 of 56

You can set the following statuses:


Released
Dependencies with this status are available in product configuration and in the simulation.
In Preparation
Dependencies with this status are neither available in product configuration nor in the simulation.
When you create dependencies, this status is set automatically.
Blocked
Dependencies with this status are neither available in product configuration nor in the simulation.
When you change the status from In Preparation to Released, or if you change released dependencies, the system runs a syntax check. If this check fails, the
system sets the status to Blocked.
You can also set the status yourself.
You can change the statuses of "Dependencies as Formulas" and "Dependencies as Tables" to Released if the table or function was also released.
If there is a released dependency that uses a table or function, the structure of this released table or function cannot be changed.
Classes, products, tables, functions, characteristics, and components cannot be deleted if they are used in released dependencies.
Default Values for Syntax and Checking the Syntax in Dependencies
When you enter dependencies of the following types, you can make it easier to enter the syntax by using the Suggest button. You can then test the syntax that
was entered by using the Check Syntax button.
Formula
Conditions
Component Formula
Component Conditions
If you choose the Suggest button, the system offers a valid text for the end of a coding line, unless you have marked a spot in your coding where you want the
system to offer a suggestion with the placeholder /#.
If the system finds errors in the syntax, it marks these errors by surrounding them with placeholders as follows: /#syntax error/#.
For more information about syntax, see Dependency Syntax.
Displaying Dependencies
Display dependencies for classes
For classes, you can see the released and unreleased dependencies that were defined at this level.
Display dependencies for products
For products, you can see the released and unreleased dependencies that were defined at this level. You can also see the dependencies that were defined at
the class level that the product has inherited.
Display of dependencies for objects: Tables, functions, characteristics, and components
For objects, you can see the dependencies that you have used in the corresponding object and that have status Released under Dependency Types.

Conditions for Characteristics


Conditions for characteristics are used to make characteristics required, not allowed, read only, or hidden under certain circumstances.
Conditions for characteristics are listed in a conditions area (screen areas Condition and If) and an entry area (screen area Then), in which you indicate that,
under certain defined conditions, a characteristic that is assigned to a class or product is Invisible, Required, Read Only, or Not Allowed.

Features
Invisible
A characteristic that you define as invisible is only visible in the configuration if the condition that was entered is not met.
Required
A characteristic that you define as required must have an assigned value in the configuration if the condition entered in the conditions area is met.
Read Only
A characteristic that you define as read only appears in the configuration only if the condition that was entered is met.
Not Allowed
A characteristic that you define as not allowed may only be considered in the configuration if the condition that was entered is not met.
You can make it easier to enter the syntax by using the Suggest button and then test the syntax that was entered by using the Check Syntax button.

Activities
1. In screen area Dependencies, enter a new Condition for a product or class.
2. Enter an ID, a Description, and an Explanation (optional) for the condition for the characteristic.
3. Define a condition in the If field.
4. Check the syntax.
5. In screen area Then, you see the characteristics that you have assigned to the current class or the current product in a table.
6. For each characteristic, set the following indicators according to your needs: Invisible, Required, Read Only, and Not Allowed.
7. To use the dependency in the interactive configuration, set the status Released.
8. Save your entries.
Configuration Test
To check the functions of the conditions for the characteristics, choose Simulation.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 33 of 56

Note
In the configuration test, all released dependencies are taken into consideration.
If the condition for the characteristic from the dependency is fulfilled, the following applies:
Characteristics defined as required must have values assigned to them, otherwise the configuration is incomplete.
Characteristics defined as allowed or visible are only not allowed or hidden if the related condition is valued and false.
Characteristics defined as allowed or visible are only allowed or visible if the related condition is valued and true.

Dependencies as Formulas
You use formula dependencies to do the following:
Describe dependencies between different characteristics of an object
Calculate and set values
Restrict value ranges
Set default values

Features
Dependencies as formulas are made up of two entry areas: a formula and a condition. In the condition part (If field), you enter the conditions under which the
formula is to be applied.
You can make it easier to enter the syntax for the formula part and the condition part by using the Suggest button. You can then test the syntax that was entered
by using the Check Syntax button.

Note
Characteristics with multiple values can lead to unexpected conflicts. For example, if a multiple-value characteristic (mvChar) has values "red" and "green",
the conditions mvChar = "red" and mvChar <> "red" are both met, even though the conditions seem to be exclusionary.

Activities
1. In screen area Dependencies, enter a new Formula for a product, component, or class.
2. Enter an ID and a description.
3. In the Explanation, enter a language-dependent text.
4. Enter a condition (If field) and a formula (Then field). Use the suggestion help.
5. Check the syntax.
6. To use the dependency editor in the interactive configuration, set the status Released.
7. Save your entries.

Example
If
COLOR <> 'black'.
Then
MODEL = 'Standard'
In the configuration, if you select a color other than black, the system automatically selects model "Standard".

Dependencies as Tables
You use a table to store permitted combinations of values for various characteristics. In interactive product configuration, this enables the following:
Domain restriction
Consistency check
Set default values
Inference of values
You can infer a value for a required characteristic if the domain of this characteristic consists of one value.
As opposed to a formula or a condition, a table can be used to map dependencies between a large number of characteristics and their values. In addition, value
combinations from tables are valid, regardless of the sequence of characteristic valuation. The characteristics can be single-value or multi-value.

Note
When saving a product model, the system removes identical value combinations that occur more than once from the tables.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 34 of 56

Features
Use this function to:
Create and maintain tables
Import tables
Export tables for further uses
Use tables in table formulas
Table Maintenance Status
Status

Use

Comment

In

In this status, you can edit the table structure and its contents. In other words,

If you set an already filled table with this status and change

Preparation

you can edit the characteristics/columns that appear in the table and that

the table structure, the table contents are deleted. Note that

or

contain the combinations of characteristics.

this action cannot be undone.

In this status, you can edit the table contents, which are the characteristic value

Do not edit tables with no contents in this status, because

combinations.

this can cause problems in product configuration.

Blocked
Released

Tables with this status are evaluated in the configuration.

Restrictions
A table field may only contain exactly one characteristic value. You cannot enter interval values.

Activities
Maintaining Tables
1. In the product model, choose Tables and then choose New.
2. Enter a name and a description.
3. In section Table Columns, choose New and open the input help for Characteristic. A window opens in which you can select the characteristics that you want to
use in the table.
4. Set the Key indicator for one or more rows in the table.

Note
The meaning of this key is described in section "Assigning a Table to a Class or Product".
5. Select the table row where you want to enter information.
6. Choose Table Contents and then New.
7. Enter all permitted value combinations. Confirm your entries by using the enter key.

Note
You can directly enter values that you did not enter explicitly for the characteristic. However, you can only use the correct value combination in the
configuration if you enhance the characteristic domain accordingly.
8. At this point, the status of the table is In Preparation. To be able to assign the table to a class or product, set the status to Released.
Importing Tables
You can maintain tables in table-based programs and import them for use in your product model.
Create a table with the desired table contents and save it (file format: *.csv).

Caution
Use unique technical names for the characteristics and characteristic values. Use the correct case (uppercase or lowercase letters).
Enter the characteristic names in the first row of the table.
1. Create a table structure in the product modeling environment. Enter a name and the desired characteristics.

Caution
Assign exactly those characteristics that you have created in the table that you want to import.
2. Choose Table Contents and then Import.
3. A dialog box opens. Choose the desired file and where you want to save it.
4. Set the status of the table to Blocked or Released.
You can further process imported tables in the product modeling environment.
Exporting Tables
You can export tables from the product modeling environment to a table-based program for further processing.
1. Choose Table Contents and then Export.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 35 of 56

2. A dialog box opens. Choose your desired data here, which is then to be exported into the table contents (file format *.csv).

Note
With the table export, you can also create a new file. To do this, choose the storage location and enter the desired file name in the dialog box.

Assigning a Table to a Class or Product


When you have processed a table and released it, in section Dependencies, create a Table Formula for a class or product and select a table.
In the Type field, define the goal of the table formula:
Restrict values
This option is selected automatically and cannot be changed if you have set the Key indicator either for all table columns or for none of the table columns.
If this value is selected, in the Mapping section, you can select the following as actions for the characteristics: No Value or Restrict Value.
No Value
The table has no effect on this characteristic in the configuration.
Restrict Value
The effect on configuration is that when a characteristic is selected, the values of other characteristics are restricted.

Note
If you choose Restrict Value as the type, you must have entered all valid combinations in the table. If you failed to enter a combination in the table, it would
not be valid later in the configuration.

Example
A table lists the characteristics of car seats as follows:
Color

Upholstery Material

Light gray

Cloth

Anthracite

Cloth

Anthracite

Leather

Beige

Leather

You have set the Key indicator for both characteristics.


If you select Restrict Value as both the Type and for both characteristics, the table in the configuration will read as follows in any direction: When the color is
selected, the upholstery material is derived, and vice versa.
If you choose "light gray" as the color, the value for the upholstery material is automatically limited to "cloth". If you first choose "leather" as the upholstery
material, the color selection is limited to "anthracite" and "beige".
Set values and defaults
This option is available if you have set at least one table column (one characteristic), but not all columns, as the Key, and that characteristic is available in the
current class or product.
When you select this value, the system automatically selects Read Value as an action for characteristics for which you have assigned a key in the table
column in section Mapping. For characteristics that are not flagged as key characteristics, you can select No Value, Set Value, or Set Default.
Read Value
You cannot change this setting. The effect on configuration is that this value must be chosen by the user and cannot be deduced from other combinations of
characteristics.
No Value
The table has no effect on this characteristic in the configuration.
Set Value
The effect on configuration is that the system selects an appropriate value according to the table and the key field. You cannot change this value.
Set Default
The effect on configuration is that the system selects an appropriate value according to the table and the key field. You can change this value, however.

Note
You do not have to enter all possible combinations in the table; you must only enter the desired derivations.

Example
A table lists the characteristics of cars as follows:
Model

Transmission

Drive

Basis

Manual transmission

Front-wheel drive

Silver

Manual transmission

All-wheel drive

Gold

Automatic transmission

All-wheel drive

The "model" characteristic is marked as the key. This means that the assigned action is automatically Read Value, and you must select a value in
configuration.
If you select action Set Value for characteristic "transmission", the system automatically selects the value "manual transmission" according to the "Basis"
model in the configuration. You cannot change this value.
If you select action Set Default for the "Drive" characteristic, the system suggests the value "front-wheel drive" according to the "Basis" model in the
configuration. You can change this value to "all-wheel drive", however.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 36 of 56

Dependencies as Functions
You can create custom functions in Java and use them in product modeling.

Features
To be able to use a Java function in product modeling, under Functions, create a function with the same name as the Java function and then define which
characteristics you will use as parameters in that function.
You can assign functions to classes and products as dependency type Function Formula.

Activities
Editing Functions
1. In the product model, choose Functions and then choose New.
2. Enter a function name and a description.
3. In section Function Parameters, choose New and open the input help for Characteristic. A dialog box appears in which you can select the characteristics of
the product model that you want to use in the function.
4. Set the Key indicator for one or more characteristics.

Note
The meaning of this key is described in section "Assigning Functions as a Dependency Type to a Class or Product".
5. At this point, the status of the function is In Preparation.To be able to assign the function to a class or product, set the status to Released.
Assigning Functions as a Dependency Type to a Class or Product
When you have edited a function and released it, in section Dependencies, create a Function Formula for a class or product and select a function.

Note
Only functions with status Released appear in the selection list.
In the Mapping section, you see the characteristics that you selected before, if you created them for the selected class or product.
For characteristics that you did not indicate as key characteristics, you can select from the following actions:
No Value
The system uses this option as the default. If you select No Value, the function has no effect on this characteristic in the configuration.
Set Value
If you select Set Value, the formula determines a value during the configuration. You cannot change this value.
For characteristics that you have defined as key characteristics, the system automatically selects the Read Value action, which cannot be changed. The effect on
configuration is that this value must be chosen by the user and cannot be determined by the function.

More Information
Also refer to SAP Note 870201: Implementing variant functions in Java.

Component Conditions
Component conditions define the conditions under which a component is selected in product configuration. Component conditions are available at product level for
a product to which you have assigned a component.

Features
Component conditions consist of a condition area (screen areas Component Condition and If) and an entry area (screen area Then).
You define the specified conditions under which the components that are assigned to the product should be selected during configuration. To do so, set the Select
indicator for each component that you want to be selectable. Conversely, you should not set this indicator for components that should not be able to be selected
under the same conditions.
You can make it easier to enter the syntax by using the Suggest button. You can then test the syntax that was entered by using the Check Syntax button.

Activities
PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 37 of 56

1. In screen area Dependencies, enter a new Component Condition for a product at the topmost level.
2. Enter an ID, a Description, and an Explanation (optional) for the component condition.
3. Define a condition in the If field. Use the Suggest button to have the system propose the syntax.
4. Check the syntax.
5. In screen area Then, you see the components that you have assigned to the current product in a table.
6. Set the Select indicator for each component, according to your needs.
7. To use the dependency in the interactive configuration, set the status Released.
8. Save your entries.

Example
You have assigned component "sport seat" to product "car".
When you enter the following component condition, the system only selects "sport seat" in the product configuration (bill of material) if you select "leather" as the
upholstery material.
If: Upholstery material = "leather".
Then: Set Select indicator for "sport seat".

Dependencies as Component Formulas


The functions in dependencies as component formulas have the same functional scope as Dependencies as Formulas. With dependencies as component
formulas, you can go a step further and describe dependencies between a product and one of its components.
Component formulas are available at product level for a product to which you have assigned a configurable component.

Features
Dependencies as component formulas are made up of two entry areas: a formula and a condition. In the condition part (If field), you enter the conditions under
which the component formula is to be applied.
You can make it easier to enter the syntax for the formula part and the condition part by using the Suggest button. You can then test the syntax that was entered
by using the Check Syntax button.

Activities
1. In screen area Dependencies, enter a new Component Formula for a product at the topmost level.
2. Enter an ID and a description.
3. In the Component field, select a component to which the formula should refer.
4. In the Explanation field, enter a language-dependent text.
5. Enter a condition (If field) and a formula (Then field). Use the suggestion help.
Similar to Formula, key word component is also available in the suggestion help.
Use this word as a prefix of a characteristic in the component.

Example
If
RKT_EMAIL_ACCOUNT = "STD"
Then
component.RKT_MAIL_BOX_SIZE = "10"
component.RKT_MAIL_SPAM_FILTER = "N"
6. Check the syntax.
7. To use the dependency editor in the interactive configuration, set the status Released.
8. Save your entries.

Dependency Syntax
For the syntax in dependency processing, the system does not differentiate between uppercase and lowercase for characteristic names, object variables, and
operators. The following operators and functions are available:
Operators

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 38 of 56

Operators

Use in Dependencies

AND

Two statements that have an AND relationship are linked using AND.
Length = 300 AND Width = 200

OR

Two statements that have an OR relationship are linked using OR.


COLOR = 'red' OR BASIC MATERIAL = 'wood'

NOT

One or more statements can be negated using NOT.


NOT (COLOR = 'blue')
NOT (COLOR = 'red' AND BASIC MATERIAL = 'wood')

Features
Sequence of Statements

In lists, individual elements are separated by commas.


COLOR1 = 'RED', COLOR2 = 'BLUE', COLOR3 = 'GREEN'

String Operators
Lowercase (LC)

All letters are converted to lowercase.


Leather seat = LC('Alpha')
= 'alpha'

Uppercase

All letters are converted to uppercase.

(UC)

Leather seat = UC('Alpha')


= 'ALPHA'
The function is important if the assigned characteristic does not allow lowercase letters, but the assigned statement may contain lowercase
letters.

Concatenation:

The string is cut off at a maximum of 30 characters.

||

'bus driver' || 'driving exam'


= 'bus driver driving exam'

List of Built-in Conditions


Expression

Implied Condition

IN

One of the specified values must be set:


Color IN ['red', 'green', 'blue']

SPECIFIED

Attribute has a value:


SPECIFIED COLOR

Note
You cannot negate SPECIFIED.

Relational Operators
=

Equal to

<=

Less than or equal to

>=

Greater than or equal to

<

Less than

>

Greater than

<>

Unequal

Operators for Values and Value Ranges


=

Equal to

<=

Less than or equal to

>=

Greater than or equal to

<

Less than

>

Greater than

<>

Unequal

?=

Assignment of a default value

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 39 of 56

Using Arithmetic Operations


Basic Arithmetic Operations
You can use the following basic arithmetic operations in dependencies to perform calculations:
+ Addition
- Subtraction
/ Division
* Multiplication
Example:
CHAR_WIDTH = CHAR_LENGTH / 4
Standard Functions
sin

Sine

cos

Cosine

tan

Tangent

exp

Exponent for base e

In

Natural logarithm

abs

Absolute value

sqrt

Square root

log10

Logarithm for base 10

arcsin

Arcsine (inverse function of sine)

arccos

Arccosine (inverse function of cosine)

arctan

Arctangent (inverse function of tangent)

sign

Sign (plus or minus sign) of x

frac

Decimal part of x

Example:
SIN (2*3.14 * ANGLE /360)
In functions, no distinction is made between uppercase and lowercase. Function names are automatically converted to uppercase letters.
Precision and Rounding for Numeric Characteristics
You can use the following commands to round a value that was calculated using dependencies:
Function

Description

X = 3.1

X = -3.1

CEIL

Lowest integer that is not less than x.

+4

-3

TRUNC

Part of x that is an integer.

+3

-3

FLOOR

Greatest integer that is not greater than x.

+3

-4

ROUND

In the case of positive numbers:

+3

-3

FLOOR, if the decimal value is less than five;


CEIL, if the decimal value is greater than or equal to five
In the case of negative numbers:
CEIL, if the decimal value is less than five;
FLOOR, if the decimal value is greater than or equal to five

User-Interface Settings Specific to Product Model


You can link your product model knowledge base profile with fixed user interface parameters for use in the Web-based interactive configuration. This function
allows you to specifically activate or deactivate certain product-model-specific user interface functions, such as conflict handling.

Prerequisites
You are using the Configuration Engine for interactive configuration.
You have created a product model.

Features
You edit parameter records in component uiname of Extended Configuration Management (XCM) and assign them to your knowledge-base profile by using the
attribute UI Name. A UI name corresponds to exactly one record of configuration parameters. It overwrites the standard settings of the scenario.
You do not have to change your existing knowledge-base profile. If you do not set up a UI name for your knowledge-base profile, the default settings for the relevant
scenario apply.
Three predefined parameters (UINAMEs) are available:

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 40 of 56

SIMPLE
The parameter settings of this UI name are for easy-to-configure products for which you want to use all the functions of conflict handling.
NOCONFLICTEXPL
The parameter settings of this UI name are for easy-to-configure products for which you want to use conflict resolution but not conflict explanation. This also
includes product models that you model using product modeling.
COMPLEX
The parameter settings of this UI name are for complex products. Here, conflict handling is deactivated.
You can also define your own UI names. For more information about UINAME parameters, see the XCM documentation.

Activities
Entering UI Names in Product Models in Product Modeling
1. Open a product model.
2. Select a product.
3. Enter the UI name in field User Interface Settings.
Entering UI Names for Product Models in SAP ERP Variant Configuration
1. Open the knowledge base (CU33).
2. Open the list of knowledge-base profiles (Profiles button).
3. Select the desired profile.
4. Open the basic data view.
5. Enter the UI name in field UI Name.
For more information, see Creating or Changing Knowledge-Base Objects.
Result
When you call your product in the interactive configuration with the JSP UI of the Configuration Engine, the parameters that you specified are read and the
interface is displayed accordingly.

More Information
Product That Is Easy to Configure
Conflict Handling

Change History
Enables you to see the changes made to the product data.

Features
The change history is a separate assignment block displaying a list of all changes that have been made to the attributes of the product. It provides the following
information:
The area in which the change was made. These are technically set types such as basic data, units of measure, or descriptions, and are generally separate
assignment blocks, with the exception of basic data, which is incorporated in the header data.
The technical key. This is additional information identifying the product changed. In the case of sales data, for example, it gives the distribution chain ID, for
multiline set types it indicates the line of the table, or for product descriptions it gives the language.
The organizational unit for changes to sales area data.
The name of the field to which the change applies.
The old and new value.
When the change was made and the user who made it.
The history is sorted chronologically, with the most recent change shown first.

Note
You can manipulate the change history using the Business Add-Ins BAdI: Addition/Removal of History Blocks and BAdI: Changes to History Data in
Customizing for Customer Relationship Management under

Master Data Products Business Add-Ins

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 41 of 56

Data Exchange

Replicating Product Hierarchies from SAP ERP to SAP CRM


Hierarchy data is replicated from SAP ERP to SAP CRM using middleware. The data from SAP ERP that is replicated as categories is derived from fields in the
material master which have grouping characteristics and are used for classification purposes. These are the material type, material group, and product
hierarchy.
The replication of hierarchy data is performed as part of the Customizing download and uses the download object DNL_CUST_PROD1. This download has to be
performed before the material download.
A delta download is not available for Customizing objects. The initial download therefore has to be repeated for DNL_CUST_PROD1 if data is changed in SAP
ERP after the initial download.

Prerequisites
If a product hierarchy is used in SAP ERP, you have created the numbering scheme R3PRODHIER in SAP CRM for the product hierarchy from SAP ERP,
making sure that the numbering scheme corresponds precisely to the structure of the product hierarchy in SAP ERP (structure PRODHS). This numbering
scheme is essential for the data to be created correctly.
The number of levels in the numbering scheme must be the same as the number of fields in structure PRODHS, and the number of digits for each level must be
the same as the length of the corresponding field in structure PRODHS.
In Customizing for Cross-Application Components, choose

SAP Product Product Category Define Category Numbering Schemes .

Features
The hierarchy to which data is mapped is determined automatically during the initial download, when the hierarchies are created and assigned. You do not
generally have to make any entries manually.
The relevant settings can be checked in Customizing for

Cross-Application Components SAP Product Product Category Assign Category Hierarchies to

Applications . If the entries do not yet exist, you should generally not make any entries, as these will be created automatically during the initial download.
The following applications are relevant for the mapping processes:
Sales (used, for example, in orders and opportunities)
Purchasing (used in Enterprise Buyer functions, such as shopping baskets, purchase orders, bid invitations, and goods receipts)
Products
The grouping fields from the material master are mapped to the hierarchies in SAP CRM as follows:
SAP ERP

SAP CRM

Material type

Hierarchy assigned to Product application (03): Typically R3PRODSTYP

Material group

Hierarchy assigned to Purchasing application (02): Typically R3MATCLASS

Product hierarchy

Hierarchy assigned to Sales application (01): Typically R3PRODHIER

To do this, the following steps are performed during the download:


1. At the start of the download using the object DNL_CUST_PROD1, the system checks whether a hierarchy is already assigned to the applications 01, 02, and
03.
2. If a hierarchy has already been assigned, the categories are created in the respective hierarchy. This can also be a hierarchy that was created in SAP CRM.
3. If a hierarchy has not been assigned, a new hierarchy is created with the ID R3PRODHIER, R3PRODSTYP, or R3MATCLASS.

Note
If you have created hierarchies in SAP CRM and assigned them to applications before the download is performed, a warning is issued. However, if you
deactivate this message in Customizing (

Customer Relationship Management Master Data Products Basic Settings Define System Message

Characteristics ), the ERP categories will be created in the existing SAP CRM hierarchies.

Replication of Material Types


The hierarchy R3PRODSTYP has two levels:
The first level contains the categories MAT_ for materials and SRV_ for services.
For materials, the second level is a sublevel of MAT_ and contains the material types imported from SAP ERP, each with the prefix MAT_. For example, the
ERP material type HAWA (trading goods) is created as the category MAT_HAWA.
The standard SAP CRM set types are assigned to the categories of the hierarchy R3PRODSTYP as follows:
The following set types are assigned to the category MAT_, and therefore inherited by all material types:
COMM_PR_MAT (basic data on materials)
COMM_PR_SHTEXT (descriptions)
COMM_PR_UNIT (conversion of units of measure)
COMM_PR_LGTEXT1 (basic texts)
COMM_PR_GTIN (GTINs)
The following set types are also assigned to the category MAT_ if the status Sales is assigned to the material type in SAP ERP:
CRMM_PR_SALESA (sales: control fields, units of measure, and quantities)
CRMM_PR_SALESG (sales: groupings)
CRMM_PR_LGTEXT2 (sales: texts)

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 42 of 56

Subsequent Changes
Once you have replicated a hierarchy from SAP ERP you should not change the assignment to an application.
If you change the hierarchy assigned to an application, for example, Sales or Product, and then perform a material download, this causes an error. As a result of
downloading the category, the SAP CRM hierarchy is extended with the new data.
Multiple Backends
If material types or the sales product hierarchy are replicated from several backends, the IDs are merged.

Example
ERP1 has category 01, German name Auto
ERP1 has category 02, German name Fahrrad
ERP2 has category 02, English name Cycle
ERP2 has category 03, English name Motorbike
A download is performed firstly from ERP1, then from ERP2. The result is as follows:
Category 01 is not changed, as it is not contained in ERP2.
Category 02 is extended, an additional language is created and the existing language is overwritten.
Category 03 is created.
The behavior described above applies equally to material groups. However, this can be changed in Customizing. In Customizing for Customer Relationship
Management, choose

Master Data Products Product Category Define Settings for Downloading Product Categories from SAP ERP .

Where the sales product hierarchy is downloaded from multiple backends, it is important that the numbering schemes in both ERP systems are the same.
Delta Download
A delta download is not available for Customizing objects. An initial download has to be repeated in the following cases:
There are new categories in SAP ERP or existing categories have been changed
Repeat the initial download to replicate the changes.
Categories have been deleted in SAP ERP
By repeating the initial download the category will be deleted in SAP CRM, but only if it is not being used.

Activities
During the download the system performs the following checks and issues error messages in certain cases. Typical situations in which you might need to check
your data and make certain corrections are as follows:
Hierarchy is used for more than one application
You have probably specified in Customizing (

Cross-Application Components SAP Product Product Category Assign Category Hierarchies to

Applications ) that the same hierarchy is to be used for two applications. This is not allowed when downloading categories from SAP ERP. If a download has
been performed, the entries should read as follows:
Application Sales (01) Hierarchy R3PRODHIER
Application Purchasing (02) Hierarchy R3MATCLASS
Application Product (03) Hierarchy R3PRODSTYP
If you want to use a hierarchy other than R3PRODSTYP as the base hierarchy for the product type Financing or Service, you can assign it specifically for the
product type concerned. However, you should not do this for the product type Material, as this will cause the material types to be imported into this hierarchy.
Material groups cannot be imported into given hierarchy
You have specified that the given hierarchy is to be used for the application Purchasing (02) (

Cross-Application Components SAP Product Product

Category Assign Category Hierarchies to Applications ). This means that the material groups would be created in this hierarchy. You should delete this
setting and, if hierarchy R3MATCLASS already exists, assign this hierarchy to the Purchasing application. The material groups will then be created in this
hierarchy.
However, if you want to import the material groups into the given hierarchy, leave your settings as they are and deactivate the error message in Customizing (
Customer Relationship Management Master Data Products Basic Settings Define System Message Characteristics ).
Material types cannot be imported into given hierarchy
You have specified that the given hierarchy is to be used for the application Product (03) and product type Material(
Product

Cross-Application Components SAP

Product Category Assign Category Hierarchies to Applications ). This means that the material types would be created in this hierarchy. You

should delete this setting and, if hierarchy R3PRODSTYP already exists, assign this hierarchy to the Product application. The material types will then be
created in this hierarchy.
However, if you want to import the material types into the given hierarchy, leave your settings as they are and deactivate the error message in Customizing (
Customer Relationship Management Master Data Products Basic Settings Define System Message Characteristics ). Note however that you are
generally not advised to import material types into a customer-defined hierarchy.
Product hierarchy cannot be imported into given hierarchy
You have specified that the given hierarchy is to be used for the application Sales (01) (

Cross-Application Components SAP Product

Product Category

Assign Category Hierarchies to Applications ). This means that the ERP product hierarchies would be created in this hierarchy. You should delete this
setting and, if hierarchy R3PRODHIER already exists, assign this hierarchy to the Sales application. The ERP product hierarchies will then be created in this
hierarchy.
However, if you want to import the ERP product hierarchies into the given hierarchy, leave your settings as they are and deactivate the error message in
Customizing (

Customer Relationship Management Master Data Products Basic Settings Define System Message Characteristics ). Note however

that you are generally not advised to import ERP product hierarchies into a customer-defined hierarchy.
Numbering scheme R3PRODHIER not maintained
To import product hierarchies from SAP ERP you have to define the numbering scheme R3PRODHIER in SAP CRM. This numbering scheme must
correspond to the structure PRODHS in SAP ERP. You do this in Customizing for Cross-Application Components, by choosing

SAP Product Product

Category Define Category Numbering Schemes .


Given category ID is not suitable for numbering scheme
This refers to the download of product hierarchies. You should check your entries in table T179 in SAP ERP. The given product hierarchy does not comply with

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 43 of 56

the R3PRODHIER numbering scheme defined in SAP CRM. You should correct either the entry in table T179 or the R3PRODHIER numbering scheme.
After doing this, you restart the download for object DNL_CUST_PROD1 so that the new data is selected.

Replicating Customizing for Materials from SAP ERP to SAP CRM


Before data can be downloaded from the material master to the product master, certain Customizing information must be transferred. Once this has been
performed correctly without any errors occurring, the material master records can be downloaded. The data is transferred using middleware. The Customizing
information transferred determines, for example, how product IDs are stored in the product master and which product data can be created.

Note
Unless indicated otherwise, the information contained in this info object is relevant to the ERP material master for industries and to the ERP article master for
retail. Retail users are requested to substitute:
Article for material
Merchandise category for material group

Features
The Customizing download for materials involves the three middleware objects DNL_CUST_PROD0, DNL_CUST_PROD1, and DNL_CUST_PROD3. The
following information is transferred:
DNL_CUST_PROD0 (storage form of material numbers in sending system)
Information for converting the ERP material number to the product ID.
This specifies whether the material number is stored lexicographically in SAP ERP and the length of the product ID in the ERP database.
DNL_CUST_PROD1 (material types, material groups, and product hierarchy)
See Replicating Product Hierarchies from SAP ERP to SAP CRM.
DNL_CUST_PROD3 (material statuses in sales and distribution)
The Customizing settings for the material status are replicated to SAP CRM, enabling the material status to be mapped during the product download.

Activities
1. Using transaction R3AS, transfer the three middleware objects for the class CUSTOMIZING.
2. On the Product Hierarchy page, check whether the corresponding hierarchies have been created in SAP CRM.
3. Check in Customizing for Cross-Application Components whether the storage form (lexicographical or not) is correct for the material number transferred, by
choosing

SAP Product Basic Settings Define Output Format and Storage Format of Product IDs .

Replicating Material Master Data from SAP ERP to SAP CRM


Material master data is transferred from SAP ERP to SAP CRM using middleware. The relevant middleware object is MATERIAL.
A single initial download is used to download the materials required and to create them as products in SAP CRM. Subsequent changes and any new materials
created in SAP ERP after this point are transferred by delta downloads, which are triggered automatically when the initial download has been completed.

Note
You cannot download SAP ERP products with the product type Material as products with the product type Service in SAP CRM.

Prerequisites
Before the initial download can take place, you must have:
Transferred Customizing for general settings (in particular, transferred the units of measure, languages, and countries, using middleware objects beginning with
DNL_CUST_BASIS)
Transferred Customizing for organizational management (for example, transferred the sales offices)
In Customizing for Customer Relationship Management, choose

Master Data Organizational Management

Data Transfer .

Transferred Customizing for sales (for example, transferred the product groups, using middleware object DNL_CUST_SPROD)
Defined the mapping of sales tax data from the SAP ERP to the SAP CRM format
In Customizing for Customer Relationship Management, choose

Basic Functions Taxes Basic Settings Tax Types and Tax Groups Assign Tax

Groups to SAP ERP Tax Classifications (Product) .


Defined how the product ID is stored
In Customizing for Cross-Application Components, choose

SAP Product Basic Settings Define Output Format and Storage Format of Product IDs . We

recommended that you use the same settings in both systems. See the documentation for this Customizing activity for more information.
Transferred the middleware object CUSTOMER
Transferred the following middleware objects for the class CUSTOMIZING:

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 44 of 56

DNL_CUST_PROD0
DNL_CUST_PROD1
DNL_CUST_PROD3
For more information, see Initial Load of Customizing Objects (Solution Manager:

SAP CRM Configuration Structures SAP CRM Basic Settings for SAP

CRM Data Replication Replication of Customizing Objects ).

Features
The material data downloaded from SAP ERP includes the following data in particular:
General material data such as the base unit of measure, alternative units of measure, and material descriptions and general texts (such as basic texts)
Grouping characteristics, in particular the product hierarchy, material group, and material type
Sales data and sales texts
The SAP ERP sales statuses are created in SAP CRM as statuses of the status object Sales Product (PRS). The following system statuses are available:
I1001 (created)
I1050 (blocked with warning)
I1051 (blocked with error message)
Only one sales status is defined at distribution chain level (combination of sales organization and distribution channel). There is no general sales status for the
product.

Activities
1. Define which materials you want to download.
You do this in the filter conditions in middleware object management for the object MATERIAL using transaction R3AC1.
The filter conditions must be specified appropriately for the database format of the corresponding fields in the backend system. In particular, numeric material
numbers must have 18 positions and include leading zeros (unless you have specified the lexicographical storage format for material numbers). See SAP
Note 515706 for information about potential problems.
Save your entries in the initial screen. This takes approximately 1 minute, since modules are generated automatically.
2. Start the data transfer for the object MATERIAL using transaction R3AS.
3. Use transaction CRMM_PRPROD to check whether problems have occurred in the assignment of pricing reference materials during the transfer.

Note
Do not create a product master using a client copy or similar procedure either in SAP CRM or SAP ERP. If you want to set up new systems with product
master data or change or create a connection between existing systems, see SAP Note 418886 (and related notes). This SAP Note contains important
information about how to avoid inconsistencies at database level.

Replicating Customizing for Services from SAP ERP to SAP CRM


Before data can be downloaded from the service master to the product master, certain Customizing information must be transferred. Once this has been performed
correctly without any errors occurring, the service master records can be downloaded. The data is transferred using middleware.

Features
The Customizing download for services involves the middleware object DNL_CUST_SRVMAS. The Customizing information transferred contains the ERP service
category. It determines which data can be created for a product. This information is transferred to the hierarchy R3PRODSTYP (product subtype), which has two
levels:
The first level contains the categories MAT_ for materials and SRV_ for services.
For services, the second level is a sublevel of SRV_ and contains the service categories imported from SAP ERP, each with the prefix SRV_. For example,
the ERP service category GRND (basic service) is created as the category SRV_GRND.
The following standard SAP CRM set types are assigned to the category SRV_ of the hierarchy R3PRODSTYP, and therefore inherited by all service categories:
COMM_PR_SRV (basic data on services)
COMM_PR_SHTEXT (descriptions)
COMM_PR_UNIT (conversion of units of measure)
COMM_PR_LGTEXT1 (basic texts)
The service category download works in the same way as the category download using DNL_CUST_PROD1. For more information, see Replicating Product
Hierarchies from SAP ERP to SAP CRM and, in particular, the information about the assignment of applications to hierarchies, and the delta download.

Activities
1. Using transaction R3AS, transfer the middleware object DNL_CUST_SRVMAS for the class CUSTOMIZING.
2. On the Product Hierarchy page, check whether the corresponding hierarchies have been created in SAP CRM.

Replicating Service Master Data from SAP ERP to SAP CRM


PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 45 of 56

Service master data is transferred from SAP ERP to SAP CRM using middleware. The relevant middleware object is SERVICE_MASTER.
A single initial download is used to download the services required and create them as products in SAP CRM. Subsequent changes and any new services
created in SAP ERP after this point are transferred automatically by delta downloads.

Prerequisites
Before the initial download can take place, you must have:
Transferred Customizing for general settings (for example, transferred the units of measure, using middleware objects beginning with DNL_CUST_BASIS)
Transferred the middleware object DNL_CUST_SRVMAS for the class CUSTOMIZING
For more information, see Initial Load of Customizing Objects (Solution Manager:
CRM

SAP CRM Configuration Structures SAP CRM Basic Settings for SAP

Data Replication Replication of Customizing Objects) .

Features
The service data downloaded from SAP ERP that is necessary for functions within SAP CRM includes the following data in particular:
General service data such as the base unit of measure, work unit, and conversion factors, and also service descriptions and texts
Grouping characteristics, in particular the material group and service category

Activities
1. Define which services are to be transferred.
You do this in the filter conditions in middleware object management for the object SERVICE_MASTER using transaction R3AC1.
2. Start the transfer of data for the object SERVICE_MASTER using transaction R3AS.

Note
Do not create a product master using a client copy or similar procedure either in SAP CRM or SAP ERP. If you want to set up new systems with product
master data or change or create a connection between existing systems, see Note 418886 (and related notes) first. It contains important information about
how to avoid inconsistencies at database level.

Replication of Sales Bills of Material from SAP ERP (Structured


Products) to SAP CRM
You can use this function to replicate sales bills of materials (for example, structured articles) from an SAP ERP system for retail to SAP CRM. In SAP CRM,
these bills of material are stored as structured products.
You cannot upload bills of materials from SAP CRM to SAP ERP.
Note that the following restrictions apply to the download:
Multilevel BOMs are not downloaded.
Only group BOMs or BOMs from a specific plant are downloaded.
This is because structured products cannot be defined for a specific organization, but are always valid across clients.
Alternative BOMs or different BOM usages, such as multiple BOMs, are not downloaded.
BOMs in which a material is used multiple times as a component are not downloaded.
BOMs in which a configurable product is used as a header product or component are not downloaded.
Also note the following restrictions in the target system:
It is not possible to assign any type of validity parameters, such as time, to a BOM.
Header-level attributes of a BOM are not stored.
The reference quantity at header level is always 1 base unit of measure.
The only attribute at component level is the quantity (in the component base unit of measure).

Integration
The initial download is triggered in SAP CRM and is executed by middleware, using the adapter object BOM. Delta downloads take place automatically when
BOM data is changed in SAP ERP.

Activities
To run the initial download, start transaction R3AS, specify the load object BOM, and then select an SAP ERP system as the source site and an SAP CRM system
as the destination site.

More Information
For more information, see SAP Note 1156808.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 46 of 56

Replication of Bills of Material from SAP ERP to SAP CRM


You can use this function to replicate bills of material (BOMs) to SAP CRM from SAP ERP. You can replicate BOMs that are defined for the following types of
master data in SAP ERP:
Material
Equipment
Functional location
A BOM is a list of materials that are constituent components of the above entities. These materials are, for example, included in the product proposal in service
transactions, thereby providing your service employees with more accurate, transaction-specific information.

Note
You cannot change BOM data in SAP CRM.

Integration
The initial download is triggered in SAP CRM and is executed by middleware, using the adapter object BOM_ERP. Delta downloads take place automatically when
BOM data is changed in SAP ERP.

Prerequisites
You are using the following releases, or higher:
SAP CRM 7.0 (with active middleware)
SAP enhancement package 4 for SAP ERP 6.0
You have ensured that the objects to which BOMs are assigned have been downloaded from SAP ERP.
You can use transaction R3AM1 to check whether the objects have been downloaded.

Features
BOMs in SAP CRM
When replicated to SAP CRM, BOMs are represented as lists of products, linked by means of relationship types with the following:
Products representing materials replicated from SAP ERP
Objects representing equipment and functional locations replicated from SAP ERP
The entries in a BOM are displayed in the Service Parts - ERP assignment block in product and object data.
You cannot change BOM data in SAP CRM. It is not possible to assign any type of validity parameters, such as time. Header-level attributes of a BOM are not
stored in SAP CRM.
Bill of Materials for Reference Product
A material that is assigned to a piece of equipment in SAP ERP as a construction type is represented as the reference product in the corresponding equipment
object in SAP CRM. If a BOM exists for this material in SAP ERP, this is shown in the Referenced Service Parts - ERP assignment block in the equipment
object in SAP CRM.
Bills of Materials in Transactions
You can assign a product or object from SAP ERP as a reference product for a service contract (and quotation), service order (and quotation), or service
confirmation in SAP CRM. If this reference product has a BOM assigned to it in SAP ERP, the products from the BOM are included in the product proposal for
transaction items.
Restrictions for Replication of BOMs
The following restrictions apply to the download:
Only BOM items of the following item categories are downloaded:
I (PM structure element)
L (stock item)
N (non-stock item)
Only group BOMs or BOMs from a specific plant are downloaded.
This is because structured products cannot be defined for a specific organization, but are always valid across clients.
BOMs in which a material is used multiple times as a component are not downloaded.
BOMs in which a configurable product is used as a header product or component are not downloaded.

Activities
1. Assign relationship types to categories for the products/objects to which BOMs are linked.
In the CRM WebClient UI on the Product Hierarchy page, assign the relationship types BOMHEDS and BOMITMS to the following categories:
Material categories that you have downloaded from SAP ERP
Your category for equipment
Your category for functional locations
Note: On the Product Hierarchy page, you can also specify for each category whether you want BOM products for the reference product to be included in the
product proposal.
2. Activate and set filters for the adapter object BOM_ERP in transaction R3AC1.
Choose the In-/Active pushbutton to display inactive objects, then deselect the Inactive checkbox for the object.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 47 of 56

Set a filter for a combination of the fields WERKS (plant) and STLAN (usage type) and tables MAST (material), EQST (equipment), and TPST (functional
location), respectively.

Note
You can only set one active filter per table for each of these fields.
If you do not define a filter for a particular entity, BOMs are not downloaded for that entity.
3. To run the initial download, start transaction R3AS, specify the load object BOM_ERP, and then select an SAP ERP system as the source site and an SAP
CRM system as the destination site.

Uploading Products to SAP ERP


The upload function allows you to upload SAP CRM product data to SAP ERP. This may be necessary because the data is required in SAP ERP for a number of
logistical processes such as procurement, inventory management, billing, financial accounting, controlling.

Prerequisites
You have specified for each product type whether products of this type can be transferred to SAP ERP in Customizing for Customer Relationship Management,
by choosing

Master Data Products Settings for Product Type Allow Upload for a Product Type .

You can also enter a base unit of measure in case a base unit of measure was not specified in the product data. If financing products are to be uploaded, you
must enter a base unit of measure, as a base unit of measure cannot be specified in the product data for financing products.

Features
You start the upload of product data to SAP ERP manually from the Product page by clicking Send to ERP.
Data Relevant for the Upload
The data relevant for the upload is derived from the following set types, according to the product type:
Set types for materials
Product header data (COMM_PRODUCT) Basic data on materials (COMM_PR_MAT) Descriptions (COMM_PR_SHTEXT) Long texts (COMM_PR_LGTEXT)
Units of measure (COMM_PR_UNIT) Tax data (CRMM_PR_TAX) Purchasing data (BBPM_PR_GENERAL) Sales data order (CRMM_PR_SALESA) Sales
data pricing (CRMM_PR_SALESG)
Set types for services
Product header data (COMM_PRODUCT) Descriptions (COMM_PR_SHTEXT) Long texts (COMM_PR_LGTEXT) Units of measure (COMM_PR_UNIT) Tax
data (CRMM_PR_TAX) Purchasing data (BBPM_PR_GENERAL) Business transaction parameters (CRMM_PR_BTR) Sales data order
(CRMM_PR_SALESA) Sales data pricing (CRMM_PR_SALESG)
Creation of Product as Material/Article in SAP ERP
When a product is uploaded to SAP ERP, it can be created as a material or article, depending on whether the SAP ERP component is being used as a retail
system. One material or article can be created for a product for each logical system.
Not all data required to create materials or articles in SAP ERP is available in SAP CRM. This means that the missing data needs to be entered in the upload
dialog box. For more information, see Settings for Product Upload.
Once all the necessary data has been entered, the product data is transferred to the specified system using synchronous RFC (Remote Function Call). In SAP
ERP, the data is processed using the ALE interface available (materials using the message type MATMAS, articles using the message type ARTMAS). No
physical IDocs are generated in the IDoc database, but the product data is made available in IDoc format and passed directly to the ALE inbound module.
If the upload was performed successfully, this is recorded in SAP CRM in a mapping table. This mapping table contains the following information:
Which product was transferred to SAP ERP
To which ERP system the product was transferred
Under which material/article number the product was created in SAP ERP
The material type, industry sector, and material group with which the material was created in SAP ERP
The material type, material group, and material category with which the article was created in SAP ERP
Flag indicating whether another upload is necessary
Checks Performed Before the Upload
Before the upload can take place, the system uses the RFC destination to check whether the product involved has already been transferred to the system
concerned, or whether a material/article number derived from the product ID is already being used in SAP ERP:
1. A material/article is created in SAP ERP without internal number assignment
If the material/article number is not assigned internally, the product ID is used as the material/article number.
1. The mapping table does not contain an entry for the product and the selected ERP system, and in the ERP system there is no material/article whose
material/article number corresponds to the product ID. This is the usual case when materials/articles are created. The material/article can be created in
SAP ERP without any difficulty, and the product ID is used as the material/article number.
2. The mapping table does not contain an entry for the product and the selected ERP system, but in the ERP system there is already a material/article with a
material/article number corresponding to the product ID. If this is the case, you are informed about the situation in a dialog box. You can decide whether the
data of the material/article in SAP ERP should be overridden by the product data, or whether a new material/article should be created in SAP ERP using
internal number assignment.
2. A material/article is created in SAP ERP with internal number assignment

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 48 of 56

If the material/article number is assigned internally, the product ID is ignored as a potential material/article number.
1. The mapping table does not contain an entry for the product and the selected ERP system, and in the ERP system there is no material/article with a
material/article number corresponding to the product ID.
If you decide not to use the product ID as the material/article number, the material/article is created in SAP ERP with a material/article number assigned
internally. You will not be able to derive the product ID used in SAP CRM from the material/article number generated in SAP ERP.
2. The mapping table does not contain an entry for the product and the selected ERP system, but in the ERP system there is already a material/article with a
material/article number corresponding to the product ID.
If this is the case, you are informed about the situation in a dialog box. You can decide whether you do want to use the product ID as the material/article
number, instead of internal number assignment, and overwrite the existing material/article in SAP ERP.
3. A material/article is changed in SAP ERP
1. The mapping table contains an entry for the product and the selected ERP system, and the data contained in the mapping table (material type, material
group, industry sector, material category) corresponds to the data of the material/article in SAP ERP.
This is the usual case when a product is changed. The material/article can be changed in SAP ERP without any difficulty.
2. The mapping table contains an entry for the product and the selected ERP system, but the data contained in the mapping table no longer corresponds to
the data of the material/article in SAP ERP. For example, the material type or material group has been changed.
You are informed about this situation in a dialog box. The material/article data is changed in SAP ERP on the basis of this product data. In addition, the data
in the mapping table in SAP CRM is updated on the basis of the current material/article data.
3. The mapping table contains an entry for the product and the selected ERP system, but there is no longer a material/article in the ERP system with the
material/article number contained in the mapping table.
If the material/article was reorganized in SAP ERP, for example, and therefore deleted from the system, the entry still exists in the mapping table. You are
informed about the situation in a dialog box and have the option of creating the material/article again in SAP ERP.
Delta Uploads and Downloads
Any materials or articles created or changed in SAP ERP are downloaded directly to SAP CRM if the delta download is activated or an initial download takes place
subsequently. So that this data is not imported into CRM Middleware or SAP CRM, the data is discarded in CRM inbound processing if the mapping table
indicates that this material already exists as a product in SAP CRM and was uploaded to the specified ERP system. The downloaded material/article data is not
passed to the flow logic or mobile clients.
A material/article created by an upload may be changed in SAP ERP. As SAP CRM is the main system for creating CRM-specific data, the CRM product data
must not be affected by any changes to the material/article data in SAP ERP. However, it may be necessary to modify or extend a material/article in SAP ERP so
that processes such as procurement and inventory management can take place.
If a product is changed in SAP CRM after the initial upload, the changed product data is automatically transferred to all ERP systems to which the product was
uploaded manually. The mapping table containing all the material/article numbers created for the products is used to trigger the upload. This means that the data
in SAP ERP does not have to be adjusted by a manual upload.
If an automatic upload needs to be performed due to data having been changed, the mapping table is used to derive the data required for the upload dialog box,
meaning that this screen does not have to be processed.
If a particular product could not be uploaded automatically to SAP ERP without errors occurring, the indicator UPLOAD_NECESSARY is set in the mapping table.
Once the errors have been corrected, the upload should be repeated for all the upload processes that failed. To do this, either schedule the report
COM_PRODUCT_UPLOAD_BATCH periodically in the background or start it manually, when necessary. You can also perform a manual upload at any time, if
you prefer.
If product data is changed using the API interface, an automatic upload is not performed. The indicator UPLOAD_NECESSARY is merely set in the mapping
table and the upload can be performed later using the report COM_PRODUCT_UPLOAD_BATCH.
The messages issued in SAP ERP during the upload processing are stored in the application log in SAP ERP. A status message in SAP CRM indicates which
application log number contains the relevant message data in SAP ERP.
Constraints
Only the product data itself is transferred to SAP ERP. Additional data, such as classifications, relationships, conditions, is not uploaded. The sales statuses
are also not uploaded (for more information, see Note 495764).
If a product is changed in SAP CRM after the initial upload, individual changes to data segments containing more than one data record are not automatically
uploaded to SAP ERP. These data segments include set types such as units of measure, and texts such as sales texts.
The upload can be performed for all product types currently available. However, in the case of service and financing products, you should note that they are
created as service materials/articles in SAP ERP and not in the form of service or financing master data. For service and financing products therefore, only the
material type DIEN and material types derived from this are allowed when new material/article master data is created.
The upload only applies to products which were created in SAP CRM. This means the original system must be the SAP CRM system. Provided the SAP CRM
system was defined as the original system during a catalog import, products imported into SAP CRM using the catalog interface can also be transferred to SAP
ERP.
This function cannot be used to transfer several products at once to SAP ERP. If products were created in SAP CRM as the result of a mass import, using the
catalog interface for example, these products can only be uploaded individually to SAP ERP.

Settings for Product Upload


Certain information is required to be able to upload product data to SAP ERP. Since all the necessary data might not be available in the system, a dialog box is
displayed in which you can enter the missing data.
The first time the product is uploaded to SAP ERP, the system attempts to find this information as follows:
RFC Destination of ERP System
The RFC destination is used for data exchange with SAP ERP. Each system has its own RFC destination. Once an RFC destination has been selected, the
system knows to which ERP system the product data should be transferred.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 49 of 56

The default RFC destination and the possible RFC destinations which can be selected using the input help are determined as follows:
If an RFC destination was assigned to each relevant ERP system in the Administration Console using transaction SMOEAC, these RFC destinations can be
selected using the input help. If more than one RFC destination is determined, the first RFC destination found is displayed by default in the upload dialog box.
If none of the relevant ERP systems have been assigned an RFC destination using transaction SMOEAC, all RFC destinations defined in the system using
transaction SM59 can be selected using the input help.
If the input help lists several RFC destinations, you can set a default RFC destination by choosing

System User Profile Own Data Parameters . Enter

the parameter ID CRM_DESTINATION and the name of your RFC destination as the value. This means that whenever you log onto the system, this RFC
destination will be displayed by default in the upload dialog box.
Type of Object to Be Created in ERP System (Material or Article)
You can specify in the upload dialog box what type of object should be created in SAP ERP.
Materials are created by default. However, you can specify that articles should be created by default by choosing

System User Profile Own Data

Parameters . You assign the parameter ID CRM_OLTP_OBJ_TYPE the value 02. The value 01 is the default setting for creating materials.
Internal Assignment of Material/Article Number
You can indicate whether the material or article number should be assigned internally or the product ID used as the number.
The system attempts by default to use the product ID as the material/article number. However, as the product ID can have up to 40 characters and the
material/article number a maximum of 18 characters, this can cause problems. In this case, the only option you have is to use internal number assignment.
When internal number assignment is used, the product ID and the generated material/article number can no longer be derived from each other on a 1:1 basis. It is
only in the mapping table (see Uploading Products to SAP ERP) that you can find out which material/article number was assigned internally for a particular
product.
To avoid using internal number assignment, you need to ensure that the length of the product ID was restricted to 18 characters in SAP CRM. You do this in
Customizing for Cross-Application Components, by choosing

SAP Product Basic Settings Define Output Format and Storage Format of Product IDs .

This enables you to use product IDs on a 1:1 basis. It also means that products can be more easily identified in SAP ERP, as there is otherwise no information
available in SAP ERP indicating from which product a material/article was derived.
In the case of purely numerical product IDs, the 40-character numerical product ID with leading zeros is converted to an 18-character numerical material number
with leading zeros.

Note
To make sure that the number settings are known in SAP CRM and SAP ERP, you are advised to download the Customizing object DNL_CUST_PROD0.
This will make the number settings defined in SAP ERP known in SAP CRM.

Data Required for Creating Materials


When materials are created, the following data is required:
The material type and industry sector must be known (these are required entry fields on the initial screen of material master maintenance).
A value for the material type can be displayed by default in the dialog box due to the assignment of the product to a material type product hierarchy (= product
subtype hierarchy). Only the material type DIEN and material types derived from this are allowed for service and financing products. Service and financing
products are not assigned to material types, meaning that a default value cannot be determined for the material type.
The material group must be specified if purchasing data has been created for the product.
A value for the material group can be displayed by default in the dialog box due to the assignment of the product to an EBP material group hierarchy.
The product description can be used as the material description. As the description is not a mandatory entry in SAP CRM, the product ID is used as the
description for the material if the product description is missing.
You can change this behaviour in Customizing for Cross-Application Components, by choosing

SAP Product Basic Settings Define Characteristics of

System Messages .
An input help is available for the fields in the dialog box. Possible entries are obtained from SAP ERP using the specified RFC destination.
Data Required for Creating Articles
When articles are created, the following data is required:
The material type, material group, and material category must be known (these are required entry fields on the initial screen of article master maintenance).
A value for the material type can be displayed by default in the dialog box due to the assignment of the product to a material type product hierarchy (= product
subtype hierarchy). Only the material type DIEN and material types derived from this are allowed for service and financing products. Service and financing
products are not assigned to material types, meaning that a default value cannot be determined for the material type.
A value for the material group can be displayed by default in the dialog box due to the assignment of the product to an EBP material group hierarchy.
The product description, or the product ID if this is missing, can be used as the article description.
An input help is available for the fields in the dialog box. Possible entries are obtained from SAP ERP using the specified RFC destination.

Note
To be able to derive accurate default values, you are advised to assign products to a material type product hierarchy and, if you are using retail, to an EBP
material group hierarchy.

Note
The upload function does not support all material categories at present. For example, generic articles and variants cannot be created. You can display the
valid material categories using the input help.

Defining Required Entry Fields


For materials, you can define any fields as required entry fields using the field selection options in SAP ERP. Provided the required entry field attribute is set at
transaction level (MM01/MM02), this will not cause any problems for materials because when data is transferred, the field selection options set at transaction

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 50 of 56

level MAL1/MAL2 (allowing fewer required entry fields) are used. This means that the data uploaded will not contain all required entry fields, but that the data can
be uploaded. The required entry fields without entries can be filled later in SAP ERP in material master maintenance (transaction MM02) once the upload has
been completed. Problems will only arise if the required entry field attribute is set at material type level.
You can also define any fields as required entry fields for articles. For articles, this can only be done at transaction level MM01/MM02 as for materials, but not at
transaction level MAL1/MAL2. However, in the case of articles a material group reference article is available. This allows the missing required entry field data to
be added automatically.
If the product has already been uploaded to SAP ERP and if a manual upload is started again, the input fields in the upload dialog box become display fields. The
data stored in the mapping table after the first upload is displayed in the dialog box.

More Information
Uploading Products to SAP ERP

Using DIMa for Products


The Data Integrity Manager (transaction SDIMA), used to detect and repair inconsistencies between objects in different systems, can also be used to compare
product data.

Features
You can compare the following:
Product data in the ERP back-end database and CRM database
Product data in the CRM database and CDB (except customer material number)
The comparison detects the following:
Data that differs between the two systems
Data that only exists in SAP CRM
Data that only exists in SAP ERP
The following DIMa objects are available for products:
MATERIAL for comparing material/product data between the ERP back-end database and CRM database
SERVICE_MASTER for comparing service data between the ERP back-end database and CRM database
PRODUCT_MAT for comparing product data between the CRM database and CDB
PRODUCT_SRV for comparing service data between the CRM database and CDB
BOM for comparing bills of material between the ERP back-end database and CRM database
PRODUCT_IL_MAT for comparing bills of material between the CRM database and CDB
CUST_MAT_INFO for comparing the customer material number between the ERP back-end database and CRM database

Note
For general information about DIMa, see Checking Cross-Component Data Integrity (DIMa) in the middleware documentation.
For more information about using DIMa for products, see the SAP Note 642767.

Archiving the SAP Product


Purpose
Using archiving you can store product master data that is no longer required and subsequently delete if physically from the database. The SAP Product Archiving
Environment is completely controlled by status and is connected to the SAP Archive Information System.
The archiving object for SAP Product is called PRODUCT_MD.

Prerequisites
You have activated the archiving.

Process Flow
The archiving and deletion of SAP Product Data must be started separately:
Preparatory phase: Flagging the product for archiving
A product can be selected for archiving directly from product maintenance (transaction COMMPR01) by setting the status To Be Archived.
Archiving Phase Preprocessing: Execute usage check for products to be archived, and lock these products for archiving.
Only those products that are no longer used by any application and have no reference to other objects can be archived and subsequently deleted from the
database. The status of these products is changed by the usage check to Archivable. The usage check is dependent on the selected archiving object. The
products are deleted after preprocessing.
Archiving Phase - Write: Writing Data to the Archive

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 51 of 56

The product data with the status Archivable is written to an archive file. There is no status change in the product.
Archiving Phase - Delete: Check Archived Data
The system compares the data in the local archive with the data in the local database and sets the product status Archived for those objects that are in both the
archive and the database.
Archiving Phase - Postprocessing:
The system deletes the products that have the status Archived including the associated dependent data from the database.
Display Archived Objects in Product Maintenance
To display archived products in product maintenance, choose Environment Archived Products or use the transaction COMM_PRDARC.

Additional Information
For more information on archiving, see

Introduction to Data Archiving (CA_CARC).

Restrictions
The following constraints apply when archiving products in the CRM System:
Archived products cannot be reloaded into the CRM System
Products can only be deleted if they have been archived
Archived products can only be displayed in a technical view in the Archive Information System
Inactive products cannot be archived
Configurable products cannot be archived
Contents of documents are not archived, only the URL is archived
Documents and condition records cannot be archived or deleted

Technical Details for Archiving


Overview of the Status When Archiving
Archiving Status
Archiving Steps

Resulting Product Status

Status of the Archiving Run in the

Physical

Archive Administration (ADK)

Location of
Data

Archiving flag (either manually or via

To archive

Database

Preprocessing (can be scheduled to

Archivable

Database

be periodic).

Locked

customer-specific programs)

To be deleted
Writing (can be scheduled to be

Archivable

periodic).

Locked

Incomplete

Archive file
and database

To be deleted
Deletion (can be scheduled to be

Archivable

periodic).

Locked

Complete

Archive file
and database

To be deleted
Postprocessing (can be scheduled to

Product status no longer visible in product maintenance as it

be periodic).

has been physically deleted from the database.

Complete

Archive file

Programs and Functions


The following programs and functions are used for archiving SAP Products:

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 52 of 56

Archiving Function

Program

User Interface /

Execution Type

Use
Archive administration preprocessing

COM_PRODUCT_ SELECTIONS

Transaction SARA

Job

Archive administration writing

COM_PRODUCT_ARC_WRITE

Transaction SARA

Job

Archive administration deletion

COM_PRODUCT_ARC_CHECKBACK

Transaction SARA

Job

Archive administration

COM_PRODUCT_ARC_DELETE

Transaction SARA

Job

Function

BOR Method

Implicit Use

BOR Method

Implicit Use

BOR Method

Implicit Use

postprocessing
Select product GUIDs to be archived

COM_PRD_PRESELECT_FOR_ARCDEL
Usage check

Function
COM_PRD_VERIFY_FOR_ARCDEL

Delete products

Function
COM_PRD_DELETE_FOR_ARCDEL

Display products from the archive

Transaction
COMM_PRDARC

Customer-defined deletion checks

Implementation of Business Add-In

BAdI Method

PRODUCT_ARCHIVE

Implicit use: Calling point in program


COM_PRODUCT_ARC_CHECKBACK

Method VERIFY_EXTRA_DATA
Customer-defined usage checks

Implementation of Business Add-In

BAdI Method

Implicit use: Calling point in preprocessing program

PRODUCT_ARCHIVE

in function module

Method CHECK_ARCHIVABLE

COM_PRD_VERIFY_FOR_ARCDEL

Customer-defined extension for

Implementation of Business Add-In

archiving additional data

PRODUCT_ARCHIVE

BAdI Method

Implicit use: Calling point in program


COM_PRODUCT_ARC_ WRITE

Method ARCHIVE_EXTRA_DATA
Customer-defined extension for

Implementation of Business Add-In

archiving additional data in structures

PRODUCT_ARCHIVE

BAdI Method

Implicit use: Calling point in program


COM_PRODUCT_ARC_ WRITE

Method EXPAND_EXTRA_STRUCTURE
Customer-defined extension for

Implementation of the Business Add-In

deleting additional data

COM_PRODUCT_DELETE

BAdI Method

Implicit use: Calling point in program


COM_PRODUCT_ARC_ DELETE

Method DELETE_EXTRA_DATA

Business Add-Ins for the Extension of Archiving


The archiving of SAP Products can be extended using the following Business Add-Ins:
Business Add-In

Method / Use

PRODUCT_ARCHIVE

Using the method CHECK_ARCHIVABLE, you can define your own usage checks for SAP Product.
Using the method ARCHIVE_EXTRA_DATA, you can write additional data per product to the archive file.
Using the method EXPAND_EXTRA_STRUCTURE, you can include additional table structures for the SAP Product in the
archiving.
Using the method VERIFY_EXTRA_DATA, you can define your own deletion checks for SAP Product.

COM_PRODUCT_DELETE

Using the method DELETE_EXTRA_DATA, you can define other data that is to be deleted when deleting a product and that does
not directly belong to product master. However, you do not use this BAdI to delete the data of customer-defined set types; this is
automatically integrated in archiving during generation.

For more information on Business Add-Ins, see the Customizing of the Cross-Application Components under SAP Products Enhancements.

Structures for the Archiving Object of the SAP Product


The following structures are used to define the archiving object:
Structures
PRODUCT_MD

Archiving Object
Defines the product archiving framework.
Archiving information structure

SAP_PRODUCT_AIS

Defines the amount of all those fields that can be indexed that can used in field catalogs and thus in product archives.
For more information, see

Archive Information System.

Field Catalog

SAP_PRODUCT_MD

Structure of an archive index that is maintained in the SAP Archiving Information System. A field catalog always belongs to an
archiving information structure. An archiving information structure always belongs to an archiving object.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 53 of 56

Tables for the Archiving Object PRODUCT_MD


The data archived and deleted in the archiving object PRODUCT_MD comes from the following fixed tables. All of the table structures that are to be archived
(such as customer-defined set types) are determined when the archiving write program is run:
Tables
Table

Description

COMM_PRODUCT

Product header data

COMM_PRODUCTH

History of the product header data

CRM_JCDO

Change documents for the status object

CRM_JCDS

Change documents for the system /user status

CRM_JEST

Individual status per object

STXB

SAPscript texts: Texts not in SAPscript format

STXH

SAPscript texts: Header

STXL

SAPscript texts: Lines

Additional data for the product (for example, set types and multi-value attributes) are archived and deleted. This data is determined dynamically in the archiving
write program.

Activating the Archiving Functionality


Archiving must first be activated. To do so, you need to carry out various steps for SAP Product:

1. Adapt the Name and Path of the Archive File (Mandatory)


Before you carry out archiving you must adapt the definition of the archive file to your system landscape.
To adjust the definition of the archive file PRODUCT_MD, carry out the following steps:
1. In the archiving administration (transaction SARA), select the archiving object PRODUCT_MD.
2. Choose Customizing.
3. In the screen Data Archiving Customizing, choose Basis Customizing Cross-Client File Names/Paths
4. Enter data as required.
For more information, see

Defining Logical Paths and File Names.

The archive files for the archiving object PRODUCT_MD are created with the logical file name ARCHIVE_DATA_FILE in the logical path
ARCHIVE_GLOBAL_PATH.

2. Adapt the Runtime Settings for the Archiving Object PRODUCT_MD (Mandatory)
Before you carry out archiving, you must check the runtime settings for the archiving object PRODUCT_MD and adapt them to your system requirements if
necessary. Check in particular the settings for Logical File Names, since it is specified here where the data will be archived.
To check the technical data of the archiving object PRODUCT_MD, carry out the following steps:
1. In the archiving administration (transaction SARA), select the archiving object PRODUCT_MD.
2. Choose Customizing.
3. In the screen Data Archiving Customizing, choose Archiving Object-Specific Customizing Technical Settings
4. Check the system settings for Logical File Names.
5. Check the system setting for Archive File Size.
6. Check the settings for Settings for Delete Program.
7. Check the system settings for Place File in Storage System.
8. When you have adjusted the data, choose Save.

3. Create Program Variants for the Program COM_PRODUCT_SELECTIONS (optional)


We recommend that you create a variant (for example with the name PRODUCT_SEL) for the program COM_PRODUCT_SELECTIONS with which you can
restrict archiving to certain products (various product types, product IDs or products from a particular logical system). You can select these variants as variants for
checking objects.
To create a program variant, carry out the following steps:
1. In the archiving administration (transaction SARA), select the archiving object PRODUCT_MD.
2. Choose Customizing.
3. In the screen Data Archiving Customizing, choose Application-Specific Customizing Cross-Object Check/Delete.
4. In the screen Customizing for Cross- Archiving-Object Programs, choose Create Variant.
5. In the screen ABAP: Variants Initial Screen, enter a variant name and choose Create.
6. In the screen Maintain Variant: Report COM_PRODUCT_SELECTIONS, Variant <Variant Name>, enter data as required.
7. To specify attributes for these variants, choose Attributes.
8. To save the attributes, choose Save.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 54 of 56

9. To save the variants, choose Save.


10. To set a variant as active for archiving, in the screen Customizing for Cross- Archiving-Object Check/Delete, choose this variant in the field Active Variant.
11. Choose Save.

4. Activate Archiving Information Structure SAP_PRODUCT_AIS (Optional)


The archive information structure SAP_PRODUCT_AIS is delivered inactive with a field catalog SAP_PRODUCT_MD. The information structure must be
activated before the first archive read. The information structure can (if active) be automatically updated during the archiving deletion run and is required for
displaying archived products through the archive explorer of the SAP Archive Information System. You can also create the index for archiving specifically for the
PRODUCT_MD archive when archiving is complete.
To activate the archiving information structure, carry out the following steps:
1. Choose archiving administration, (transaction SARA).
2. Choose Goto Information System.
3. Choose Customizing.
4. In the field Archive Infostructure, enter SAP_PRODUCT_AIS.
5. Then choose Archive Infostructure Activate.

Archiving
1. Archiving-Object-Specific Usage Check
The archive-object-specific usage check checks all products with the status To Be Archived. If the checks confirm that a product can be archived, the system
sets the product status is to Archivable. To avoid data inconsistencies when archiving a product, the system simultaneously sets the status Locked and Deleted.
1. Start the archive-object-specific usage check using the archiving administration, (transaction SARA).
2. Enter the archiving object PRODUCT_MD.
3. Choose Preprocessing.

We recommend that you do not execute the cross-object usage check using Check/Delete for SAP Product, as this usage check includes all objects for
which the status To Be Archived was set. Using this may result in objects unintentionally being archived and being deleted in the database. Since, as a
general rule, archived objects cannot be retrieved, using the incorrect procedure could cause a loss of data.

2. Writing Object Data to the Archive


The write program writes the data of all objects that have the status Archivable to the archive files defined for the appropriate archiving object.
In the archive administration of the ADK (transaction SARA), the system sets the status of the archiving run to Incomplete.
1. Start the data-write to the archive using the archiving administration, (transaction SARA).
2. Enter the archiving object PRODUCT_MD.
3. Choose Write.
4. Enter the start date and the spool parameters.
You must enter an output device in the spool parameters. Normally there is the output device LP01 in the system (virtual printer).
5. Choose Execute.

3. Releasing Objects for Physical Deletion in the Database


The delete program opens the archive files that the write program previously created and then reads them there. To avoid the archive files being read several
times, the system flags these as read. For objects that were successfully read in the archive, the system sets the product status Archived, Locked and Deleted.
In the archive administration of the ADK (transaction SARA), the system sets the status of the archiving run to Complete.
1. Start the deletion of data from the database using the archiving administration, (transaction SARA).
2. Enter the archiving object PRODUCT_MD.
3. Choose Delete.
4. Enter the archive selection, start date and the spool parameters.
You must enter an output device in the spool parameters. Normally there is the output device LP01 in the system (virtual printer).
5. Choose Execute.

4. Archiving-Object-Specific Postprocessing
The archiving-object-specific postprocessing selects all SAP products for which the status Archived, Locked and Deleted is set, and deletes these objects from
the database. The objects are no longer displayed in product maintenance:
1. Start the postprocessing of the data using the archiving administration, (transaction SARA).
2. Enter the archiving object PRODUCT_MD.
3. Choose Postprocessing.
4. Enter the archive selection, start date and the spool parameters.
You must enter an output device in the spool parameters. Normally there is the output device LP01 in the system (virtual printer).
5. Choose Execute.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 55 of 56

5. Display Archived SAP Products in Product Maintenance


There is a technical view in product maintenance for archived products that allows you to read all the archived data and drill-down reporting of SAP Products
through the archive explorer of the archive information system.
For the archiving object PRODUCT_MD, the field catalog SAP_PRODUCT_MD and corresponding archive information structure SAP_PRODUCT_AIS are
delivered in the archive information system. You have to activate the archive information structure just once so that the archive for the SAP Product can be read.
You can activate the archive information structure either at the start of archiving or at a later date.
After activating archive information structure SAP_PRODUCT_AIS and creating the index, you can display the archived products in product maintenance via
Environment Display Archived Products.

Monitoring
1. Usage Check
During the usage check, products that could not be archived are logged in the application log. To evaluate these logs, use transaction SLG1 and enter subobject
PRODUCT_MD. You are advised to also specify the date and time of the usage check.

2. Archive Job
Execute transaction SARA and choose Goto Job Overview to see the status of the jobs generated in SARA for writing or deleting the archive

3. Archive File
Execute transaction SARA and choose Goto Statistics to display the status of the archive files.

4. Archive Information System


Use the archive information system to display the archive files of SAP Product. The following prerequisites must be fulfilled to be able to display data in the
archive information system:
Check if the archiving information structure SAP_PRODUCT_AIS has already been activated.
a. Choose the archiving information system, (transaction SARI).
b. Choose Customizing.
c. In the field Archive Infostructure, enter SAP_PRODUCT_AIS.
d. Choose Activate.
e. Check the system message.
Check if index structures were set up for the archive files.
a. Choose the archiving information system (transaction SARI).
b. Choose Status.
c. In the field Archiving Object, enter PRODUCT_MD.
d. Choose Status per Archive.
e. If the structure status is incomplete, select the desired archive.
f. Choose Build Structures.
You can execute the creation of the index structure in the dialog or in the background.
To display archived products in product maintenance, choose Environment Archived Products. All of the data created for a product is visible in the technical
view.

PUBLIC
2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 56 of 56