Академический Документы
Профессиональный Документы
Культура Документы
The information in this presentation is confidential and proprietary to SAP and may not be disclosed without the permission
of SAP. This presentation is not subject to your license agreement or any other service or subscription agreement with SAP.
SAP has no obligation to pursue any course of business outlined in this document or any related presentation, or to develop
or release any functionality mentioned therein. This document, or any related presentation and SAP's strategy and possible
future developments, products and/or platforms directions and functionality are all subject to change and may be changed
by SAP at any time for any reason without notice. The information on this document is not a commitment, promise or legal
obligation to deliver any material, code or functionality. This document is provided without a warranty of any kind, either
express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or
non-infringement. This document is for informational purposes and may not be incorporated into a contract. SAP assumes
no responsibility for errors or omissions in this document, and shall have no liability for damages of any kind including
without limitation direct, special, indirect, or consequential damages that may result from the use of this document. This
limitation shall not apply in cases of intent or gross negligence.
All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ
materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, which
speak only as of their dates, and they should not be relied upon in making purchasing decisions.
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 2
Article Master Data in SAP S/4HANA Retail for merchandise
management in OP1610 delivery - Agenda
Ø Adaptation Overview
Ø Storage of Variant-Creating Data within Configuration (IBase)
Ø Technical Details – APIs
Ø Technical Details – Code replacement patterns
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 3
Changed Data Model for Generic Articles/Variants
Adaptation Overview
Generic Articles and Variants – Data Model Adaptation Overview
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 5
Changed Data Model for Generic Articles/Variants
Storage of Variant-Creating Data within Configuration (IBase) in SAP
S/4HANA OP1610 Delivery
Business Suite
Colors (variant-creating)
Qualities (informative)
Fancy Shirt
Gen. Article Class
Generic Article
Business Suite
Colors (variant-creating)
Fancy Shirt
Shirts for Men Sizes (variant-creating)
Gen. Article Class
Qualities (informative)
Sizes (variant-creating)
Fancy Shirt Shirts for Men
Gen. Article Class Merchandise Category Class Qualities (informative)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 8
Changed Data Model for Generic Articles/Variants
Storage of Variant-Creating Data within Configuration (IBase) in SAP
S/4HANA OP1610 Delivery
Business Suite
Colors (variant-creating)
Color / Size Profile
Characteristics Profile Class
Sizes (variant-creating)
Fancy Shirt
Gen. Article Class
Generic Article
Business Suite
Fancy Shirt
Shirts for Men Qualities (informative) Gen. Article Class
Colors (variant-creating)
Fancy Shirt Color / Size Profile
Gen. Article Class Characteristics Profile Class Sizes (variant-creating)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 11
Changed Data Model for Generic Articles/Variants
Storage of Variant-Creating Data within Configuration (IBase) in SAP
S/4HANA OP1610 Delivery
• Generic article and variants still have an object representation (INOB, class type 026) within
the merchandise category hierarchy but they are linked now directly to the merchandise
category or characteristic profile (KSSK, class type 026) and not to a generic article class
(KLAH, class type 026)
• Generic articles now have an object representation in table INOB for class type 300 and they
are linked to the configuration class (KLAH, KSSK, class type 300)
• Variants don’t appear as objects in table INOB for class type 300, they get handled as
configuration object instance within the IBase
• Variants are not linked to the configuration class in contrast to the generic article. As before
they have only the link to the generic article (MARA-SATNR).
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 13
Generic Article/Variants Transformation
Summary regarding the changed Data Model – Maintenance Aspects
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 14
Changed Data Model for Generic Articles/Variants
Technical Details for SAP S/4HANA OP1610 Delivery
Changed Data Model for Generic Articles/Variants
Technical Details for SAP S/4HANA OP1610 Delivery
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 17
Central Read API Class
Access to classification and configuration data in general (1)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_CLASSIFICATION
• Determine the classification/configuration data assigned to an article (replaces the old logic within FM
MATERIAL_READ_CLASSIFIC_RT)
• Input: Basic data of the article (MARA), structure with several control flags to define the functional scope of the read access,
compatibility mode flag to trigger the merge of the classification and configuration data together into one result set
• Output: Bundle with several result sets covering article master data, class data, characteristic assignment data similar to the
return tables of FM MATERIAL_READ_CLASSIFIC_RT
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 18
Central Read API Class
Access to classification and configuration data in general (2)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_CONTROL_PARAMETER
• Input: None
• Output: Structure with several control flags to define the functional scope of the read access
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 19
Central Read API Class
Access to configuration class type
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_VAR_CREATING_CLASS_TYPE
• Determine a variant creating class type
• Input: None
• Output: First found class type which can be used for variant configuration (normally class type 300)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 20
Central Read API Class
Access to class data within classification and configuration (1)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_CONF_CLASS
• Determine configuration class of a generic article
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 21
Central Read API Class
Access to class data within classification and configuration (2)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_CONF_CLASSES
• Read configuration classes for a list of generic articles
• Output: List of generic articles (MATNR) with the related configuration class data (CLINT, CLASS, KLART)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 22
Central Read API Class
Access to class data within classification and configuration (3)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_CHARACTERISTICS_PROFILE
• Determine characteristics profile assigned to an article (mainly generic article)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 23
Central Read API Class
Access to class data within classification and configuration (4)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_HIERARCHY_CLASSES
• Read class hierarchy bottom-up for a given start class
• Input: Internal class number (CLINT) or class name (CLASS), class type (KLART)
• Output: List of classes (CLINT) being part of the related hierarchy path
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 24
Central Read API Class
Access to characteristic assignments within classification and configuration (1)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_ASSIGNED_CHARACTERISTICS
• Read variant-creating characteristics assigned to a given class and class type
(valid for configuration classes and classes out of the merchandise category hierarchy like merchandise categories or
characteristics profiles)
• Input: Internal class number (CLINT) or class name (CLASS), class type (KLART), control parameter to search also for
inherited characteristics
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 25
Central Read API Class
Access to characteristic assignments within classification and configuration (2)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_VARIANT_CREATING_CHARS
• Determine the variant-creating characteristics of a generic article
• Output: List of variant-creating characteristics (ATINN) based on the assigned configuration class
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 26
Central Read API Class
Access to characteristic assignments within classification and configuration (3)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_CHAR_FOR_MC_AND_CP
• Determine the characteristics assigned to a merchandise category or characteristics profile
(according to the former logic based on the relevancy indicator)
• Input: Merchandise category (MATKL) and if needed characteristics profile (CLASS), flag to restrict the result set to variant-
creating characteristics
• Output: List of characteristics (ATINN) including the former relevancy indicator (RELEV)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 27
Central Read API Class
Access to characteristic valuations/value restrictions within classification and configuration (1a)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_CHARACTERISTIC_VALUATION
• Read characteristics valuations of articles (used especially for variants with informative and variant-creating characteristics)
• Input: List of articles (MATNR) and if needed a list of characteristics (ATINN-RANGE table format) and a list of characteristic
values (ATWRT/ATFLV/ATFLB-RANGE table format) separated by data type of the characteristic (CHAR versus NUM, DATE,
TIME) to restrict the result set
• Output: List of articles (MATNR) with the corresponding characteristics and their valuation
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 28
Central Read API Class
Access to characteristic valuations/value restrictions within classification and configuration (1b)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_CHARACTERISTIC_VALUATION
• Currently used in:
Ø Include LMBVAF01
Ø Include LMEVAF01
Ø FM MATERIAL_CREATE_VARIANTS_DARK (LMGKLU12)
Ø FM DETERMINE_SALES_VARIANT (LMGW5U02)
Ø FM DETERMINE_PURCHASE_VARIANT (LMGW5U03)
Ø Include LMR1MF67
Ø Include LMRMXFC0
Ø Include LMV01F04
Ø Include LWMCLF02
Ø FM WMCL_MAT_READ_CHAR_VALUES (LWMCLU02)
Ø Include LWMVCF04
Ø Include LWRF_CHARVAL_CONVERSIONF01
Ø Include LWRF_MATERIAL_CHARVALF04
Ø Include LWST2F03
Ø Include RWBE1F02
Ø Include RWRFMATCHARVAL
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 29
Central Read API Class
Access to characteristic valuations/value restrictions within classification and configuration (2)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_CHAR_VALUATION_FROM_BUFFER
• Retrieve the characteristic valuations of a variant out of buffer (classification and/or configuration (IBase))
• Input: Article number (MATNR) and internal configuration object number (IB_INSTANCE) and/or internal classification object
number (CUOBJ) of a variant, flags to restrict the scope of the result set (informative and/or variant-creating characteristic
valuations)
• Output: Characteristic values defined on variant level for informative and/or variant-creating characteristic (AUSP like format)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 30
Central Read API Class
Access to characteristic valuations/value restrictions within classification and configuration (3)
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_CHAR_VALUE_RESTRICTIONS
• Determine characteristic value restrictions for generic article and variant-creating characteristics
• Input: Generic article (MATNR) and if needed a list of variant-creating characteristics (ATINN-RANGE table format) to restrict
the result set
• Output: Characteristic values defined as restriction on generic article level for variant-creating characteristic (AUSP like
format)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 31
Central Read API Class
Characteristic value based article search
Class CL_MAT_CLASSIFIC_RT
Method IF_MGW_CLASSIFIC_ACCESS~GET_PRODUCTS_BY_CHAR_VALUATION
• Search for articles based on given characteristic values
• Input: List of characteristics (ATINN-RANGE table format), List of characteristic values (ATWRT/ATFLV/ATFLB-RANGE table
format) separated by data type of the characteristic (CHAR versus NUM, DATE, TIME)
• Output: List of articles (MATNR) which are valuated with the given characteristic values
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 32
Central Function Module APIs
Create/change article master data in background (low level API)
• If the new fields are not filled, a suitable configuration class gets searched automatically by
the system as fallback in case a new generic article shall be created
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 33
Central Function Module APIs
Create/change article master data in background (Article BAPI)
• The 2 new fields have been added also to the IDoc segment E1BPE1MATHEAD of the
ARTMAS IDoc
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 34
Examples of main Function Modules with Adaptations
• MATERIAL_READ_CLASSIFIC_RT
Ø Reads all classification/configuration data of a generic articles, variants and other articles
Ø Improved logic based on new read API class CL_MAT_CLASSIFIC_RT but nearly unchanged interface
Ø Often used within applications if the variant matrix UI shall be displayed (e.g. transaction MM42) or if the valuation of
the variant-creating characteristics of variants is required
• SATNR_VARI_CHARACTERISTICS
Ø Reads all variant-creating characteristics of a generic article
Ø Often used within applications if the variant matrix UI shall be displayed
• MATERIAL_CREATE_VARIANTS_DARK
Ø Creates the variants of a generic article during background processing (BAPI, ALE)
Ø Main usage within the processing of FM MATERIAL_MAINTAIN_DARK_RETAIL
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 35
Changed Data Model for Generic Articles/Variants
Technical Details for SAP S/4HANA OP1610 Delivery
• Besides the access of classification data via the general read API FM MATERIAL_READ_CLASSIFIC_RT there are many
situations where a hard-coded SELECT has been implemented to read classification data
• When using hard-coded SELECTs to the database tables INOB, KLAH, KSSK, KSML or AUSP in general a rework of the
implementation is needed as the data model switch for generic articles and variants has to be taken into account
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 37
Comparison of “new” vs. “old” access logic for KLAH/KSSK data – Example1
Method CL_WGDS_CONVERT_TO_VARIANT->GET_CHAR_PROFILE_OF_GEN_ART
SAP S/4HANA
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 38
Comparison of “new” vs. “old” access logic for KLAH/KSSK data – Example2
Method CL_INBOUND_CATALOGUE->READ_CHARACTERISTIC_PROFILES
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 39
Comparison of “new” vs. “old” access logic for INOB/KSSK data – Example3
FORM READ_MARA (Include LWWG2F0P)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 40
Comparison of “new” vs. “old” access logic for INOB/KSSK data – Example4
FM ARTICLE_RECLASSIFY_LITE_RETAIL
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 41
Comparison of “new” vs. “old” access logic for AUSP data – Example5
Function Module MATERIAL_CREATE_VARIANTS_DARK
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 42
Comparison of “new” vs. “old” access logic for AUSP data – Example6
FORM ART_BEWERTUNG_LESEN (Include LMV01F04)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 43
Comparison of “new” vs. “old” access logic for AUSP data – Example7a
FORM ART_BEWERTUNG_LESEN (Include LMV01F04)
SAP S/4HANA
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 44
Comparison of “new” vs. “old” access logic for AUSP data – Example7b
FORM ART_BEWERTUNG_LESEN (Include LMV01F04)
Retrieve the characteristic value restrictions of a generic article and put it into the former
AUSP format (in SAP S/4HANA only variant-creating characteristics can be restricted)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 45
Comparison of “new” vs. “old” access logic for CABN data – Example8
Method CL_WRF_CHARVAL_MIGRATION->READING_CHARVAL
Retrieve variant-creating characteristics which are candidates for a migration from the old
CAWN characteristic value storage into the new WRF_CHARVAL characteristic value storage
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 46
© 2016 SAP SE 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 SE or an SAP affiliate company.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP SE (or an SAP affiliate
company) in Germany and other countries. Please see http://global12.sap.com/corporate-en/legal/copyright/index.epx for additional trademark information and notices.
Some software products marketed by SAP SE and its distributors contain proprietary software components of other software vendors.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or warranty of any kind, and SAP SE or its
affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP SE or SAP affiliate company 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.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or any related presentation, or to develop
or release any functionality mentioned therein. This document, or any related presentation, and SAP SE’s or its affiliated companies’ strategy and possible future
developments, products, and/or platform directions and functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time
for any reason without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or functionality. All forward-
looking statements are subject to various risks and uncertainties that could cause actual results to differ materially from expectations. Readers are cautioned not to place
undue reliance on these forward-looking statements, which speak only as of their dates, and they should not be relied upon in making purchasing decisions.
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Generic Article Harmonization Customer 47