f or Key-Mappi ng of mast et r dat a Ulf Kretzschmar, SAP Deutschland AG & Co. KG 18.11.2008 SAP 2008 / Page 2 1. One requirement => various solutions 1.1. project requirements 1.2. possible solutions 2. Standard solution =>UKMS (Unified Key-Mapping Service) 2.1. functionality 2.2. possible use 3. Customer development 3.1. requirements 3.2. development 3.3. realization 4. Pro und cons 4.1. UKMS 4.2. individual solution 4.3. summary Agenda SAP CONSULTI NG SAP 2008 / Page 3 Agenda SAP CONSULTI NG One requirement => various solutions Standard solution =>UKMS (Unified Key-Mapping Service) Customer development Pro und cons SAP 2008 / Page 4 Agenda SAP CONSULTI NG possible solutions project requirements SAP 2008 / Page 5 As I s - si t uat i on: Isolated master data Multiple systems have for the same thing e.g. material name different names Requirement in both systems to have both information available to match the right data e.g. to the right voucher. =>multiple master data maintenance Valid for SAP to SAP as well as for SAP to non SAP communication =>single data store incoherent knowledge Inconsistent master data no duplicate check Evaluation over several systems quite complicate Multiple points of contact for missing / wrong master data SAP 2008 / Page 6 As I s => pro and c ons Data availability in all effected systems pro: Local data validation and responsibilities, Short ways to get decisions cons: multiple data storage, with increasing the number of target system the number of data who has to maintain is also increasing No central point of contact for data maintenance and responsibilities SAP 2008 / Page 7 Shoul d be - si t uat i on : Uniform / shared basis of master data Harmonized master data Handling of different requirements like different data types, multiple Keys. Central master data storage with decentralized data maintenance (one-stop maintenance) Using of available authorization profile authorization profile concept for data maintenance Logging of activities related to master data Coherent knowledge of master data Central master data database duplicate check Synchronized evaluation SAP 2008 / Page 8 Shoul d be => pr o and c ons Central data storage pro: no redundant data maintenance =>reduced effort for support, clear responsibilities, central point of contact cons: data validation and responsibilities are distributed on several systems / different contacts, longerr ways for decisions SAP 2008 / Page 9 Agenda SAP CONSULTI NG project requirements possible solutions SAP 2008 / Page 10 appr oac h 1 => St andar d UKMS System B System B ORDERS MATERIALS System A System A GLOBAL SEARCH ORDERS DATA CONSOLIDATION USER INTERFACES MATERIALS UKMS System C System C PRODUCTS Source message <CCode>DE</ CCode > <CCode>US</ CCode > <RCode>BW</ RCode > Target message <CCode>GER</ CCod e> <CCode>USA</ CCod e> <RCode>BW</ RCode > XI MAPPING Use of standard functionality UKMS (Unified Key-Mapping Service) with SAP NetWeaver 7.0 (2004s) (downgraded to WebAS 6.40) Customer development of UI is necessary SAP 2008 / Page 11 appr oac h 2 => Cust omer devel opment File Server GOM Send Sample SAP XI Provide Value maping Service Receive Sampl e Message File Adapter SOAP Adapter Store Sample File Adapter Perform Lookup Call duri ng Message Mapping Send Sampl e Message ABAP Proxy Customer development of whole functionality, developed on project requirements SAP 2008 / Page 12 appr oac h 3 => MDM mast er dat a di st r i but i on master data harmonization with MDM (only named for completeness) SAP 2008 / Page 13 Agenda SAP CONSULTI NG Standard solution =>UKMS (Unified Key-Mapping Service) One requirement =>various solutions Customer development Pro und cons SAP 2008 / Page 14 Agenda SAP CONSULTI NG Use Cases Functionality SAP 2008 / Page 15 f unc t i onal i t y Unified Key-Mapping Service (UKMS ) is a generic service who is linking the key mapping information's between source and target system GROUP of synonymous objects Thesaurus functi onali ty provide the identifiers of one object Dicti onary functionality provide the objects of a group and their identifiers 1 IDENTIFIER 2 IDENTIFIER OBJECT withmultiple identifiers 1 IDENTIFIER 1 IDENTIFIER 2 IDENTIFIER 2 IDENTIFIER OBJECT withmultiple identifiers 3 IDENTIFIER 4 IDENTIFIER OBJECT withmultiple identifiers 3 IDENTIFIER 3 IDENTIFIER 4 IDENTIFIER 4 IDENTIFIER OBJECT withmultiple identifiers System A System A System B System B ORDER 4711 2 pc. material bike ORDER 4711 2 pc. material cycle UKMS SAP 2008 / Page 16 UKMS: Tec hnol ogy & Ar c hi t ec t ur e Implementation UKMS engine embedded in ABAP stack Part of SAP NetWeaver 2004s and later Easy Use & Setup Typically no configuration steps necessary For use within XI mapping runtime, key store is referenced via RFC communication channel Choice of 3 interface flavors: ABAP OO, RFC, J ava SAP NetWeaver ABAP AS UKMS Engine Common Access Layer Buffer Generated Persistency D a t a b a s e S u p p l i e r
o r
C o n s u m e r SAP 2008 / Page 17 UKMS: Tec hnol ogy & Ar c hi t ec t ur e => I nt er f ac es Unified Key Mapping (UKM) provides various interfaces for accessing key mapping. The interface that is closest to the UKM core is the ABAP-OO interface. It provides the entire scope of functions with the greatest granularity. RFC-enabled function modules wrap parts of the ABAP-OO interface and provide cross-system access to the most important methods. A J ava API represents a wrapper for the RFC-enabled function module. This J ava API is provided as XI content for SAP Basis. To make it easier to call the J ava API from xslt mappings, you can use an xslt include that contains the J ava calls. The following diagram shows the wrapper layers of the UKM: DB DB SAP 2008 / Page 18 UKMS: Tec hnol ogy & Ar c hi t ec t ur e => sc ope of f unc t i onal i t y UKM offers a simple ABAP-OO interface that supports reading, writing, deleting, and saving mappings as well as their clean-up. There are also wrappers in the form of RFC-enabled function modules for reading, writing and deleting mappings. XI interface mappings (XSLT transformations) can access mappings of the UKM using a J ava API. The J ava API is stored in SAP Basis as XI content. In the interfaces, a mapping consists of pairs of keys that are stored in the database as a grouped mapping of objects. This means that more than two keys are supported for each mapping group. To identify a key, core component type "Identifier" is fully supported. UKM supports transactional behavior and transaction-dependent buffering. All interfaces are mass-enabled. The UKM does not need any customizing settings. UKM can manage multiple independent mapping instances in order to support an intentional separation. For example, you might want a separate instance for each master data object type (business partner, product master). A mapping instance is identified by the mapping context. SAP 2008 / Page 19 Agenda SAP CONSULTI NG Functionality Use Cases SAP 2008 / Page 20 Use Cases Master data distribution between non-harmonized systems Synchronous access to a non-harmonized system System A System A System B System B MATERIAL MaterialID =bike MATERIAL MaterialID=cycle UKMS System A System A System B System B getObj(bike) getObj(cycle) return(bike) return(cycle) MATERIAL MaterialID=cycle Using Component UKMS SAP 2008 / Page 21 Use Cases Message code validation and translation Translation between incompatible software components (material product, customer/vendor System A System A System C System C MATERIAL MaterialID=bike PRODUCT ProductGUID= 47110815A BC8165765 123A65F UKMS Target message <CCode>GER</ CCode> <CCode>USA</ CCode> <RCode>BW</ RCode> Source message <CCode>DE</ CCode> <CCode>US</ CCode> <RCode>BW</ RCode> translate validate UKMS SAP 2008 / Page 22 Use Cases Persistency for result of data consolidation Code validation and translation of entered data System A System A MATERIAL MaterialID=bike MATERIAL MaterialID=cycle DATA CONSOLIDATION compare provide results UKMS translate validate UKMS SAP 2008 / Page 23 Agenda SAP CONSULTI NG Pro und cons One requirement =>various solutions Standard solution =>UKMS (Unified Key-Mapping Service) Customer development SAP 2008 / Page 24 Agenda SAP CONSULTI NG Implementation / realization Requirements SAP 2008 / Page 25 Val ue Mappi ng Cust omer Requi r ement s MAJ OR aspects Data Integrity Performance Future XOM requirements SAP future release strategy Security / Authorization Implementation effort ($) MINOR aspects Monitoring Transport management Usability SAP 2008 / Page 26 Key Fi ndi ngs UKMS quest i ons and c onc er ns i n t he Pr oj ec t Performance impacts Concerns around concepts going through different layers of ABAP and J ava involving remote calls Use of XSLT mappings could improve performance of the calls to UKM. However Current planning based upon use of graphical editor XSLT mappings in itself have negative impact which would neutralize performance gain related to UKM Compound Keys Can only be handled as concatenations of keys into one field Mapping table synchronization across different SAP systems currently not supported Currently it needs to be located on the TSW Box since it requires NetWeaver 2004S Could we downgrade it to WebAS 6.40? (Assessed to be difficult) Comment: Later the functionality was downgraded to WebAS 6.40 SAP 2008 / Page 27 Agenda SAP CONSULTI NG Requirements Implementation / realization SAP 2008 / Page 28 Val ue Mappi ng Dat a model Approach: The data tables that provide the actual mapping keys are stored and maintained on the Hub No Business user access to XI Business and SAP COE users need to maintain the Mapping table data Access to mapping data using authorization model, Control reports etc. Use global codes whenever suitable (hub approach) Data model should support bidirectional value mapping Use one generic table to facilitate replication and to reduce maintenance efforts SAP 2008 / Page 29 Val ue Mappi ng Dat a model i n det ai l The 5 keys are "from" metadata category by definition Value keysequence number is 1 to 5 range for source system The 5 global values are metadata category "to" by definition These tables tells about the numeric or alphanumeric format and domains in SAP DDIC. DDIC will also specifies field lookup tables can control value of can control format of is part of has authorization rules in controls is described by SOURCE SYSTEM (YGOM_DATASOURCE) Source systemcode Source systemname ERP source system indicator Site datasource code (FK) ERP source system code (FK) MAPPING OBJ ECT Mapping object acronym Mapping object description SCENARIO VALUE KEY METADATA Source system code (FK) Mapping object acronym(FK) Scenario metadata category indicator Scenario value key sequence number TABNAME (FK) FIELDNAME (FK) Non SAP table name (FK) Non SAP table field name (FK) SAP TABLE (DD02L) TABNAME SAP TABLE FIELD (DD03L) TABNAME (FK) FIELDNAME NON SAP TABLE (YGOM_xxx) Non SAP table name NON SAP TABLE FIELD (YGOM_xxx) Non SAP table name (FK) Non SAP table field name Non-SAP field data type Non-SAP field length VALUE MAPPING Mapping object acronym (FK) Source system code (FK) Value mapping key 1 value Value mapping key 2 value Value mapping key 3 value Value mapping key 4 value Value mapping key 5 value Value mapped to value 1 Value mapped to value 2 Value mapped to value 3 Value mapped to value 4 Value mapped to value 5 Default value indicator SCENARIO Source system code (FK) Mapping object acronym (FK) Display role code Maintenance role code Global mapping indicator Mapping by exception indicator SAP 2008 / Page 30 Cust omer Val ue Mappi ng Sol ut i on Ar c hi t ec t ur e SAP 2008 / Page 31 Val ue Mappi ng i n GOM ABAP API Table with mapping values YXI_VM_VALUES SAP 2008 / Page 32 Val ue Mappi ng Dat a model ABAP API Table with scenario description YXI_VM_SCENARIO And some reference tables Table Description Data maintenance YXI_VM_SCENARIO_KEYS Contains the mapping scenario metadata including key fields and reference tables Transaction ZXI_VM_SCENARIO_KEYS YXI_VM_VALUES Contains the actual keys that are looked up by the mapping service Transaction ZXI_VM_VALUES YXI_VM_SCEN Contains the mapping scenario names standard maintenance screen YXI_SYSTEM Contains systems that occur in Mapping scenarios standard maintenance screen YXI_VM_SCENARIO Contains Display- and Maintenance Roles for mapping scenario/system-combination. Indicators for global mapping, mapping by exception, source/target. standard maintenance screen YXI_VM_DATTYP Description of data fields in Non-SAP tables standard maintenance screen YXI_VM_TABLES List of Non-SAP Tables that occur in mapping scenarios standard maintenance screen SAP 2008 / Page 33 Val ue Mappi ng Dat a model Y_XI_VALUE_MAPPING implements the following logic Check in YXI_VM_SCENARIO if I_RECEIVER is of type sourceor target fill empty source-keys by Xand select target-values for I_SENDER, I_SCENARIO and source keys on table YXI_VM_VALUES I_RECEIVER is target I_RECEIVER is source fill empty export parameters with string #NODATA# Export target values as export parameters E_TVAL1, , E_TVAL5 Check in YXI_VM_SCENARIO if I_SENDER is of type sourceor target select source-values for I_RECEIVER, I_SCENARIO and target values fromimporting parameters on table YXI_VM_VALUES where DEFAULT=Y I_SENDER is source I_SENDER is target First SELECT: fill empty source-keys by Xand select target-values for I_SENDER, I_SCENARIO andsource keys on table YXI_VM_VALUES Second SELECT: select source-values in table YXI_VM_VALUES for I_RECEIVER, I_SCENARIO and target values fromfirst SELECT with DEFAULT-flag =Y. If no record is found fill export parameters with string #NOVALUE# SAP 2008 / Page 34 Val ue Mappi ng Dat a model ERP offers the Value Mapping as a Web Service utilizing the SAP WAS Proxy Framework The ABAP Proxy can be called using plain SOAP The Proxy itself uses FM Y_XI_VALUE_MAPPING Proxy Implementation Proxy Interface YXI_SII_VALUE_MAPPING Implementing Class YXI_SCL_VALUE_MAPPING Package YXI_SVC Comment SAP 2008 / Page 35 Val ue Mappi ng PI - Desi gn On XI the Value Mapping Service will be called from within the graphical mapping tool SAP 2008 / Page 36 Agenda SAP CONSULTI NG Customer development One requirement =>various solutions Standard solution =>UKMS (Unified Key-Mapping Service) Pro und cons SAP 2008 / Page 37 Agenda SAP CONSULTI NG Customer Development Standard UKMS Summary SAP 2008 / Page 38 St andar d UKMS => PRO + CONS BP decided on UKMS from SAP after conducting a rapid prototype which rendered the following benefits: Flexible - its very easy to add new mapping objects & data Scalable single repository capable of holding all key mappings and supporting all translations and a given SAP NetWeaver Exchange Infrastructure (SAP NetWeaver XI) system can support multiple UKMS instances Performing UKMS sits in SAP NetWeaver XI. This provides tight coupling with our integration bus as each translation call is executed wholly within SAP NetWeaver XI. Limited dependency on external systems. UKMS does not go down as routine maintenance etc. occurs on non-SAP NetWeaver XI systems. Easy to Use Standard SAP routines provided and supported Mapping Access Routines are easily converted to Web Services We developed a simple web front-end which exposes powerful UKMS functionality in a user- friendly manner Secure UKMS database is housed in SAP NetWeaver XI and all data translations occur on the inside of our firewall protector No incremental cost to use. UKMS is delivered standard beginning with SAP NetWeaver 7.0 http://www.sap.com/community/showdetail.epx?itemID=13885 Contra: Multiple Keys onlysupported with using delimiters New User profiel has to be maintained on PI-system SAP 2008 / Page 39 Agenda SAP CONSULTI NG Standard UKMS Customer Development Summary SAP 2008 / Page 40 Cust omer Devel opment PRO Functionality can be build on project requirements Multiple keys can be handled with several fields, no delimiter User interface has to be developed any way If data are stored on ERP system, already existing authorizationconcept can be used CONTRA More less already existing functionality has to be developed again No SAP support No standard supported VM codes like ABAP, XSLT, J AVA SAP 2008 / Page 41 Agenda SAP CONSULTI NG Standard UKMS Summary Customer Development SAP 2008 / Page 42 Summar y Both solutions have pro and cons. PRO For sure to use standard UKMS has the advantage to use STANDARD. Also a lot of functionality is delivered and the possibility to access UKMS is offered via ABAP-OO, RFC, J ava or XSLT. CONTRA Unfortunately there is not maintenance screen to access or maintain data means you have to develop in any case. Also the way to handle multiple keys has a potential to improve. SAP 2008 / Page 43 Copyr i ght 2008 SAP AG Al l Ri ght s Reser ved 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. SAP, R/3, xApps, xApp, SAP NetWeaver, Duet, SAP Business ByDesign, ByDesign, PartnerEdge 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 in several other countries all over the world. All other product and service names mentioned and associated logos displayed are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary. The information in this document is proprietary to SAP. No part of this document may be reproduced, copied, or transmitted in any form or for any purpose without the express prior written permission of SAP AG. This document is a preliminary version and not subject to your license agreement or any other agreement with SAP. This document contains only intended strategies, developments, and functionalities of the SAPproduct and is not intended to be binding upon SAP to any particular course of business, product strategy, and/or development. Please note that this document is subject to change and may be changed by SAP at any time without notice. SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant the accuracy or completeness of the information, text, graphics, links, or other items contained within this material. 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. SAP 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 these materials. This limitation shall not apply in cases of intent or gross negligence. The statutory liability for personal injury and defective products is not affected. SAP has no control over the information that you may access through the use of hot links contained in these materials and does not endorse your use of third-party Web pages nor provide any warranty whatsoever relating to third-party Web pages. Weitergabe und Vervielfltigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, ohne die ausdrckliche schriftliche Genehmigung durch SAP AG nicht gestattet. In dieser Publikation enthaltene Informationen knnen ohne vorherige Ankndigung gendert werden. Einige von der SAP AG und deren Vertriebspartnern vertriebene Softwareprodukte knnen Softwarekomponenten umfassen, die Eigentum anderer Softwarehersteller sind. SAP, R/3, xApps, xApp, SAP NetWeaver, Duet, SAP Business ByDesign, ByDesign, PartnerEdge und andere in diesem Dokument erwhnte SAP-Produkte und Services sowie die dazugehrigen Logos sind Marken oder eingetragene Marken der SAP AG in Deutschland und in mehreren anderen Lndern weltweit. Alle anderen in diesem Dokument erwhnten Namen von Produkten und Services sowie die damit verbundenen Firmenlogos sind Marken der jeweiligen Unternehmen. Die Angaben im Text sind unverbindlich und dienen lediglich zu Informationszwecken. Produkte knnen lnderspezifische Unterschiede aufweisen. Die in dieser Publikation enthaltene Information ist Eigentum der SAP. Weitergabe und Vervielfltigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, nur mit ausdrcklicher schriftlicher Genehmigung durch SAP AG gestattet. Bei dieser Publikation handelt es sich um eine vorlufige Version, die nicht Ihrem gltigen Lizenzvertrag oder anderen Vereinbarungen mit SAP unterliegt. Diese Publikation enthlt nur vorgesehene Strategien, Entwicklungen und Funktionen des SAP-Produkts. SAP entsteht aus dieser Publikation keine Verpflichtung zu einer bestimmten Geschfts- oder Produktstrategie und/oder bestimmten Entwicklungen. Diese Publikation kann von SAP jederzeit ohne vorherige Ankndigung gendert werden. SAP bernimmt keine Haftung fr Fehler oder Auslassungen in dieser Publikation. Des Weiteren bernimmt SAP keine Garantie fr die Exaktheit oder Vollstndigkeit der Informationen, Texte, Grafiken, Links und sonstigen in dieser Publikation enthaltenen Elementen. Diese Publikation wird ohne jegliche Gewhr, weder ausdrcklich noch stillschweigend, bereitgestellt. Dies gilt u. a., aber nicht ausschlielich, hinsichtlich der Gewhrleistung der Marktgngigkeit und der Eignung fr einen bestimmten Zweck sowie fr die Gewhrleistung der Nichtverletzung geltenden Rechts. SAP haftet nicht fr entstandene Schden. Dies gilt u. a. und uneingeschrnkt fr konkrete, besondere und mittelbare Schden oder Folgeschden, die aus der Nutzung dieser Materialien entstehen knnen. Diese Einschrnkung gilt nicht bei Vorsatz oder grober Fahrlssigkeit. Die gesetzliche Haftung bei Personenschden oder Produkthaftung bleibt unberhrt. Die Informationen, auf die Sie mglicherweise ber die in diesem Material enthaltenen Hotlinks zugreifen, unterliegen nicht dem Einfluss von SAP, und SAP untersttzt nicht die Nutzung von Internetseiten Dritter durch Sie und gibt keinerlei Gewhrleistungen oder Zusagen ber Internetseiten Dritter ab. Alle Rechte vorbehalten. SAP 2008 / Page 44