Integrating MDM Server with Enterprise Information Systems using SAP as an example, Part 1: Delivering customer records to SAP

This tutorial demonstrates how customer data managed by IBM® InfoSphere® Master Data Management Server (MDM) can be propagated to Enterprise Information Systems such as SAP®. In the demonstrated scenario, customers are created and updated with the MDM Server Data Stewardship Console. The updates made on the customer records in MDM server will be sent to the Enterprise Service Bus (ESB), which performs the necessary transcoding and mapping steps. Finally, the WebSphere® Adapter for SAP Applications is used to send an SAP Intermediate Document (IDoc) containing the updated customer information to the SAP system. Part 2 of this series demonstrates how additional customer information managed by SAP, such as the customer's tax ID, can be propagated back to the customer record managed by MDM Server.

Hans Schoen (Hans.Schoen@de.ibm.com), Software Engineer, Information Platform and Solutions Development, IBM

Hans SchoenHans Schoen is a software engineer working in the Information Platform and Solutions team in IBM's Development Lab in Boeblingen, Germany. He joined IBM in October 2000. He started as developer for IBM Document Composing applications. In 2004, he moved to the WebSphere Process Server development team (Human Tasks). Since 2007, he's has been working in Information Platform and Solutions development. He is developing applications and tools for the integration of SAP into IBM Information Server products.



Sebastian Nelke (snelke@de.ibm.com), Software Engineer, Information Platform and Solutions Development, IBM

Sebastian NelkeSebastian Nelke is a software engineer working in the Information Platform and Solutions team in IBM's Development Lab in Boeblingen, Germany. He joined IBM in March 2005 after he participated in IBM's "Extreme Blue" program during summer 2004. He started working in the area of enterprise search and text analytics, then moved on to Information Platform and Solutions development after three years. His current focus area is bringing together the Information Server product portfolio with SAP software.



Mike Grasselt (grasselt@de.ibm.com), Software Engineer, Information Platform and Solutions Development, IBM

Mike GrasseltMike Grasselt is a senior software engineer who has worked for IBM since 1997. Currently, he leads an Information Platform and Solutions development team focusing on solutions integrating Master Data Management and SAP. In earlier roles, he integrated text analysis technology with content management and was an author of the IBM Redbooks publication "eClient 101 Customization and Integration." He has presented university lectures on software development for IBM mainframe servers. He developed an SQL extension for the Business Processes Execution Language (BPEL) and published several papers on data-aware business processes and web services. He was responsible for the service-oriented architecture (SOA) alignment of InfoSphere Information Server to allow integration with WebSphere Portal, WebSphere Process Server, and InfoSphere Master Data Management Server. In addition to his technical responsibilities, he is a mentor in the IBM technical community.



25 August 2011

Before you start

What you will learn

IBM InfoSphere Master Data Management Server is a repository that can centralize and manage an organization's critical master data entities such as customer, product, supplier, and more. The centralization of these entities creates a single view of customers and products that results in better service, improved customer satisfaction, and improved relationships with partners and suppliers. Because many, if not all, of the organization's applications (SAP applications, for example) and business processes operate on these entities, a reliable and flexible delivery of the master data is a key characteristic of the solution architecture. This tutorial provides the assembly instructions that will help you understand how IBM InfoSphere Master Data Management Server can work with SAP regarding the management of customer data. The integration approach demonstrated here can also be applied for other business objects managed by the MDM server (product, supplier, etc.).

As illustrated in Figure 1, the scenario covered here includes both directions. Customer data is managed in MDM Server and sent to SAP. An SAP transaction is used to add the tax ID to the customer record. This additional information needs to be sent to MDM Server to update the central customer entities.

To keep the tutorial manageable, it has been split into two parts. Part 1 covers the required steps to create a solution that notifies SAP of a customer data change in MDM Server. Part 2 adds the steps for the update of the customer entity managed by MDM Server with the tax ID added by SAP.

Figure 1. Solution overview
Diagram shows flow of data from MDM Server, through ESB to SAP and back

The customer data is created or updated with the IBM Master Data Management Data Stewardship Console and saved on the MDM system. MDM Server behavior extensions create a SAP customer ID (SAP KUNNR) for new records and send the customer data to a JMS topic. An Enterprise Service Bus (ESB) mediation flow reads the customer data from the JMS topic, performs the transcoding for country and province code, and calls the WebSphere adapter for SAP, which then sends a DEBMAS IDoc to the SAP system.

The "Extending the MDM Server" section describes how to enable notifications in the MDM Server database. The JMS topic used to distribute the customer data is already defined in MDM Server. But to receive this data in the ESB, a corresponding topic is required in the Process Server. The section describes how you create this topic in the Process Server and how you connect it to the JMS topic defined in MDM Server. Using the connected topics, messages sent to the MDM Server topic can be received with the Process Server topic. Finally, the section describes how you extend the MDM Server model with behavior extensions using the MDM Workbench. Using a behavior extension, business logic can be executed before or after a MDM Server transaction. It shows how to create an extension that runs before the MDM Server addParty transaction. This extension creates the SAP customer number using a database table. Other extensions are defined to run after the add and update transactions for person name and address. These extensions share the same implementation, which sends an XML representation of the MDM Server customer business object to the MDM server JMS topic. The behavior extension source code is provided with the ZIP file in the Download section. This file also contains the database script for the database table creating the customer number.

The "Configuring the SAP system" section describes the steps for configuring the SAP system. The SAP system will receive the customer data as an SAP Intermediate Document (IDoc) structure. The predefined Debmas IDoc is used here. The section describes how to create the necessary SAP Remote Function Call (RFC) connection, port, logical system, partner profile, and IDoc distribution model.

The "Creating the ESB mediation flow" section describes how to implement the mediation between the message sent by the MDM Server and the IDoc to be sent to the SAP System. The mediation flow is implemented using WebSphere Integration Developer. Since the XML data types of the MDM Server message are required to read the message, the section first describes how you import the MDM Server XML Schema into the mediation flow project. This is followed by the steps for creating the JMS component listening for incoming messages and the configuration of the SAP adapter component. Finally, the section describes how to implement the XSLT transformation to map the MDM message to the SAP IDoc structure. Because MDM Server and SAP use different codes to specify a country or a province, the transformation needs to implement the translation. In this tutorial, we use simple transcoding tables. However, this could also be implemented differently, such as with calls to a transcoding web service. The database scripts to create the transcoding tables are provided with the ZIP file in the Download section.

The "Running the scenario" section describes how to use the MDM Data Stewardship Console to create new and update existing MDM customer records, and how to use the SAP UI to check the customer objects on the SAP system.

System requirements

The tutorial was developed using the product versions and fixes specified below. You will need the following software installed:

  1. IBM Master Data Management Workbench V9.0.1. Follow the instructions described in the Workbench User Guide (MDMWorkbenchUserGuide.pdf) to install the Workbench and the Development and Test Environment in Rational® Software Architect.
    • Use IBM Rational Software Architect for WebSphere Software V7.5.5.4, including the IBM WebSphere Application Server V7 Test Environment 7.0.0.13 Update 1.
    • Navigate to your WebSphere Application Server administration console and uninstall the MDM Enterprise Application. This is needed as we will modify the MDM Enterprise Application according to the sample scenario of this tutorial and redeploy it from your MDM workbench.
  2. IBM Master Data Management Data Stewardship Console on your WebSphere Application Server
    • The Data Stewardship Console source code (MDMDataStewardship_src.zip) is available in the MDM Server samples package. Import the projects into a RSA workspace.
    • In the CustomerDataStewardship project, open the propertiesUI.jar file and edit the mdmUIConfiguration.properties file. You need to specify the java.naming.provider.url and the UserGroupImpl properties (see the examples given in the properties file).
    • Install the CustomerDataStewardship application on the MDM Server application server.
  3. IBM WebSphere Integration Developer V7.0.0.201
    • IBM WebSphere Process Server V7.0.0.2 (as integrated test environment for WebSphere Integration Developer). Make sure the following Process Server fixes are installed:
      • JR36507 7.0.0.2
      • JR36532 7.0.0.2
  4. IBM DB2® V9.7
  5. An SAP system able to send and receive SAP IDocs of type debmas06. We used an SAP ECC V6.0 IDES system.
    NOTE: The steps performed during this tutorial will modify the master data stored on your SAP system. Don't use a production system.

This tutorial describes how to implement the sample scenario using the MDM Server Development and test environment. It does not describe how to run the sample scenario with the stand-alone MDM Server.


Extending the MDM Server

Enable MDM Server notifications

To work with MDM Server notifications, you have to enable the MDM notification mechanism as described below:

  1. Open a DB2 command window and connect to your MDM database:
    db2 connect to mdm
  2. Enable notifications at application level
    db2 update configelement set value='true', last_update_dt=current timestamp where name='/IBM/DWLCommonServices/Notifications/enabled'
  3. Disconnect from the MDM database:
    db2 disconnect mdm

Creating and connecting the topic

Set up the JMS on your ESB:

  1. Open the Administration console of the Process Server and expand the Resources branch and the JMS branch.
  2. Click on Topics.
  3. Select the scope Node=yournode,Server=server1 (where yournode is the name of your WebSphere Application Server node).
  4. Click the New button to add a new topic.
  5. Ensure that Default messaging provider is selected and click OK.
    Figure 2. Default messaging provider
    Default messaging provider button selected
  6. The Topic configuration panel appears:
    Figure 3. Topic configuration panel
    Image shows creating JMS topic
    Enter MDMTopic for the name and com/dwl/base/notification/MDMTopic for the JNDI name of the topic.
  7. Set the Topic name to the topic name notification/ElementChange as defined by MDM Server.
  8. Set the Bus name to other, please specify and enter MDM.SIB.server1 for the Bus name, as defined in MDM Server.
  9. Set the Topic space to other, please specify and enter notification.ElementChange for the name of the origin Topic Bus destination.
  10. Click OK to confirm the changes.
  11. Save the configuration.

Creating and connecting the activation specification

In this section, you will configure the activation specification for the JMS:

  1. Click Activation specifications.
  2. Select the scope Node=yournode,Server=server1 (where yournode is the name of your WebSphere Application Server node).
  3. Click New to add a new Activation Spec.
  4. Ensure that Default messaging provider is selected and click OK.
    Figure 4. Default messaging provider
    Image shows default messaging provider button selected
  5. The Activation Spec configuration panel appears: Enter MDMTopicAS for the Name and jms/MDMTopicAS for the JNDI name of the activation spec.
  6. For Destination type, select Topic.
  7. Set the Destination JNDI name to the JNDI name of the appropriate MDM Topic JNDI name (com/dwl/base/notification/ElementChange).
  8. Set the Bus name to other, please specify and enter MDM.SIB.server1 for the name of the origin MDM bus name.
  9. In the Multi-entry Provider endpoints field, enter the MDM server destination in the following format:
    host:port:chainname (port is the SIB_ENDPOINT_ADDRESS port of your MDM server)
    (for example: mdmhost:7277:BootstrapBasicMessaging
    or for secured hosts
    mdmhost:7287:BootstrapSecureMessaging
    Figure 5. Create JMS activation spec
    Image shows Activation Spec panel with input fields
  10. Click OK to confirm the changes.
  11. Save the configuration.

Creating the MDM behavior extension

To get notified of data updates, we need to create a Behavior Extension in MDM Server:

  1. In the MDM Workbench, create a Hub Module project by selecting File > New > other and scrolling down to the InfoSphere Master Information Hub folder. Now select Hub Module project and click Next.
    Figure 6. Create a Hub Module project
    Screenshot shows selecting the wizard from an explorer view
  2. Fill the fields of the wizard page:
    • Project name: PartyExtensions
    • Base Java package name: com.example.mdmsap
    • Service namespace URI: http://example.com/mdmsap
    • EAR project name: MDM
    • Hub base name: MDM
    • Database schema name: db2admin
    Note: The schema name must be identical to the schema of the DB user name you entered during the DEST installation.
    Figure 7. Specify settings for the hub module project
    Screenshot shows Hub Module project definition
    Click Finish to create the project.
  3. Add the required behavior extensions:
    1. Select the Model tab to switch to Hub Module model.
    2. Click on the PartyExtensions folder, then select New and click Behavior Extension.
      Figure 8. Adding a behavior extension
      Screenshot shows selecting behavior extension
    3. Enter PartyBehaviorExtensions in the Name field and ensure that in the Implementation field, Java is selected.
    4. Right-click on the PartyBehaviorExtensions extension and select New > Action Event.
      Figure 9. Adding an action event
      Screenshot shows adding action event
    5. Enter AddPartyEvent in the Name field and click Edit for the Transaction.
    6. Expand the Party model and expand the CoreParty model. Select the addParty event and click OK.
      Figure 10. Add party
      Screenshot shows selecting addParty in explorer view
    7. Repeat steps d-f to add the following action events.
      NameEvent
      UpdatePartyEventupdateParty
      AddPartyAddressEventaddPartyAddress
      UpdatePartyAddressEventupdatePartyAddress
      AddPersonNameEventaddPersonName
      UpdatePersonNameEventupdatePersonName
    8. Again, repeat steps d-f to add the AddPartyPreEvent action event. But this time, select the Pre checkbox. This extension is called before the transaction runs and will be used to create the SAP customer number.
      Figure 11. Add party extension
      Screenshot shows selecting AddPartyPreEvent
  4. Click Validate model on the bottom. A message box with the message "Model validation complete: no problems found" should occur. Otherwise, fix the error.
  5. When all issues are fixed, click Generate Implementation. A message box with the text "Generating Code ..." will appear and the extension code generation is started.
  6. When the code generation is completed, open the PartyExtensions project and switch to ejbModule > com.example.mdmsap.behaviour.
    Figure 12. EJB behavior extension
    Image shows selecting com.example.mdmsap.behavior from explorer view
    Copy the two files PartyBehaviorExtensions.java and PartyNotification.java from the download package to this package (replace the existing PartyBehaviorExtensions.java file that was generated in the previous step).
  7. Make sure that the Project > Build automatically option is enabled. Refresh the project. Some Java compile errors will occur, which we will fix subsequently.
  8. Update the class path by right-clicking on project PartyExtensions and selecting Properties. Now switch to Java EE Module Dependencies and look for the Party.jar entry in the list. Enable the checkbox next to Party.jar.
    Figure 13. Java EE module dependencies
    Screenshot shows adding classpath dependency for Party.jar
    Click OK. The Java errors should disappear.
  9. Update the database with the generated behavior extensions.
    Figure 14. Run the SQL script to update the behavior extensions
    Image shows explorer view of PartyExtensions
    Open a DB2 command window and change to the PartyExtensions\resources\sql\db2 directory in your RSA workspace. Now run the PartyExtensions_MetaData_DB2.sql SQL script:
    db2 connect to mdm

    db2 -tvf PartyExtensions_MetaData_DB2.sql

    db2 disconnect mdm
  10. In this sample, the extension code generates the SAP customer number by using a DB2 database table. Create this table using the sapkey.sql SQL script. Open a DB2 command window, switch to the directory containing the extracted tutorial files, and run the following db2 commands:
    db2 connect to mdm

    db2 -tvf sapkey.sql

    db2 disconnect mdm

Configuring MDM Server Party web service security

In this tutorial, the web service level security of the Party service needs to be disabled with the following steps:

  1. In the MDM Workbench, expand PartyWSEJB/ejbModule/META-INF.
  2. Right-click ibm-webservices-bnd.xmi, click Refactor.../Rename, specify a name for the backup file, e.g., ibm-webservices-bnd.xmi_Original and click OK.
  3. Right-click ibm-webservices-bnd.xmi_SecurityDisabled, copy this file (press Ctrl+C, press Ctrl-V), specify the name ibm-webservices-bnd.xmi and click OK.
  4. Right-click ibm-webservices-ext.xmi, click Refactor.../Rename, specify a name for the backup file, e.g., ibm-webservices-ext.xmi_Original and click OK.
  5. Right-click ibm-webservices-ext.xmi_SecurityDisabled, copy this file (press Ctrl+C, press Ctrl-V), specify the name ibm-webservices-ext.xmi and click OK.
    Figure 15. Disabling security for the MDM Server Party web service
    Disabling security for the MDM Server Party web service
  6. In the Servers view, right-click your server and select Publish to update the MDM application with the workbench modifications.

Configuring the SAP system

To enable your SAP system to receive IDocs sent from the WebSphere Adapter for SAP Software, some settings on your SAP system have to be configured. This tutorial will only cover the outbound scenario (changes on the MDM data will be propagated to the ESB, which makes use of the WebSphere Adapter for SAP Software to send IDocs to your SAP system). However, the following configuration steps will also set up your SAP system for the inbound scenario (changes on data on the SAP side will trigger an IDoc to be sent to the ESB, which then will propagate the changed data to the MDM system). The inbound scenario will be described in Part 2 of this series. Perform the following configuration steps on your SAP system:

  1. An RFC connection must be configured on your SAP system to receive data sent by the WebSphere Adapter For SAP.
  2. A new RFC port must be defined to receive data in a transactional way.
  3. A logical system must be defined.
  4. A partner profile must be set up that defines the communication between the SAP system and the foreign system (ESB).
  5. The SAP IDoc distribution model will be adapted to send IDocs to the ESB whenever SAP master data was changed.

Setting up the RFC connection

  1. Log on to your SAP system and call SM59.
  2. Click New to create a new connection:
    Figure 16. Create new connection
    Screenshot shows configuration of RFC connections
  3. Now enter the following values:
    1. Field RFC Destination: MDM_SAP_TUTORIAL_DESTINATION
    2. Connection Type: T
  4. Switch to the Technical Settings tab:
    1. Select Registered Server Program as the Activation Type.
    2. Enter MDM_SAP_TUTORIAL_PROGRAM_ID as the Program ID of the registered Server Program.
    3. Click the disk icon to save your settings

    Figure 17. Create new connection
    create new connection
  5. Now switch to the MDMP & Unicode tab:
    1. Locate the Communication Type with Target System section and select the Unicode option.
    2. Click the disk icon to save your settings

    Figure 18. Enable unicode communication
    Enable unicode communication

Creating the tRFC port

  1. Enter SAP transaction code WE21.
  2. Open the section Ports and select the subsection Transactional RFC.
  3. Click the Create icon to create a new tRFC port.
  4. Choose the option own port name and enter MDM_PORT as the name of the port. Click the green checkmark to save your settings
    Figure 19. Create new tRFC port
    Screenshot shows ports in IDoc processing
  5. Enter MDM_SAP_TUTORIAL_DESTINATION for the name of the RFC destination created in the previous step, or select the name from the list. Click the disk icon to save your settings.
    Figure 20. Create new tRFC port
    Screenshot shows creating a tRFC port

Creating a new logical system

  1. Navigate to SAP transaction BD54.
  2. Switch from read to edit mode and add the following entry to the table:
    • Log. System: MDMSAP
    • Name: MDM_SAP_LOGICAL_SYSTEM
  3. Click the disk icon to save your settings.
    Figure 21. Create new tRFC port
    Screenshot shows overview of added entries

Creating the partner profile

  1. Open transaction WE20 and click the Create button.
  2. Enter the name of the logical system created in the previous step (MDMSAP).
  3. Set the Partner Type to LS (which means a logical system).
  4. Switch to the Post processing: permitted agent tab.
  5. Enter the following values:
    • Type: US (which stands for User)
    • Agent: <your username>
    • language: EN
  6. Save your changes by clicking the disk icon before you continue.
    Figure 22. Creating a partner profile
    Screenshot shows Partner Profiles
  7. Click the Create outbound parameter icon which is located below the Outbound parameters table
    1. In the pop-up dialog that opens, enter the following:
      • Message Type: DEBMAS
      • Receiver Port: MDM_PORT
      • Basic Type: DEBMAS06
    2. Make sure the option Transfer IDoc Immed. is set.
    3. Save your settings by clicking the disk icon.
    4. Return to the previous screen by clicking the green back icon.
      Figure 23. Configuring outbound parameters
      Screenshot shows partner profile, showing where SAP username goes
  8. Click the Create inbound parameter icon, located below the Inbound parameters table
    1. In the pop-up dialog that opens, enter the following:
      • Partner No.: MDMSAP
      • Partn. Type: LS
      • Message type: DEBMAS
      • Process code: DEBM
    2. Save your settings by clicking the disk icon.
    3. Return to the previous screen by clicking the green back icon.
      Figure 24. Configuring inbound parameters
      Screenshot shows Partner Profile inbound parameters
  9. Your partner profile configuration should now look like the screenshot displayed in step 6.

Modifying the IDoc distribution model

  1. Call SAP transaction BD64.
  2. Switch to edit mode.
  3. Open the Model views > Subsystems > itself system. (If there are multiple systems, pick the one with the client ID belonging to your system. For IDES systems, the client ID usually is 800.)
  4. Now click the Add message type button.
  5. In the pop-up dialog that opens, enter the following values:
    • Receiver: MDMSAP
    • Message Type: DEBMAS
    Click the green checkmark to close the dialog.
  6. After the pop-up closes, click the disk icon to save your modifications on the IDoc distribution model.
    Figure 25. Modifying the IDoc distribution model
    Screenshot shows changing the distribution model

Creating the ESB mediation flow

Importing the MDM Server types into WebSphere Integration Developer

To process a MDM Server message in the ESB, the MDM Server data types need to be imported into the ESB module:

  1. Open the MDM Workbench and select File > Export....
  2. In the Export window, expand the General folder, and select File System.
  3. Expand the CustomerResources folder and select xsd (do not set the checkbox).
  4. From the file list on the right, select the following files:
    • DWLCommonRequest.xsd
    • DWLCommonRequest_extension.xsd
    • myTCRM.xsd
    • tcrmRequest_extension.xsd
  5. Specify the directory to export to and click Finish.
    Figure 26. Export XSD
    Screenshot shows exporting resources to the local file system
  6. Open WebSphere Integration Developer and make sure you use the Business Integration perspective.
  7. Select File > New > Other....
  8. Expand the Business Integration folder and select Library.
  9. Specify the library name MDMDataTypes and click Finish.
  10. Select File > Import....
  11. In the Import Window, expand the Business Integration folder and select WSDL and XSD, then click Next.
  12. Select Local WSDL or XSD file and click Next.
  13. Use the browse button to navigate to the directory containing the XSD files (the directory you specified in step 5).
  14. In the file list on the right, click the checkbox next to myTCRM.xsd.
  15. In the Target module or library field list, select the library you created in step 9 (e.g., MDMDataTypes).
  16. Make sure the Import dependent resources option is checked and the dependency tree shows the four XSD files.
    Figure 27. Import XSD
    Screenshot shows importing local WSDL, XSD, or both
  17. Click Finish.
  18. Select Window > Show View > Other....
  19. Expand the Business Integration folder and select Physical Resources.
  20. In the Physical Resources view, expand the MDMDataTypes folder. You see the list of imported XSD files. In the following steps, you will add a namespace definition to these files.
    Note: Please use the namespace specified below; otherwise, the messages generated by the MDM Server behavior extensions cannot be received properly.
  21. Right-click DWLCommonRequest_extension.xsd and select Open With > Text Editor.
    Change the schema element from:
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
    to:
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://example.com/mdmsap" targetNamespace="http://example.com/mdmsap" elementFormDefault="qualified">
    Save the changes with Ctrl+S.
  22. Right-click DWLCommonRequest.xsd and select Open With > Text Editor.
    Change the schema element from:
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
    to:
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://example.com/mdmsap" targetNamespace="http://example.com/mdmsap" elementFormDefault="qualified">
    Save the changes with Ctrl+S.
  23. Right-click myTCRM.xsd and select Open With > Text Editor.
    Change the schema from:
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <xsd:include schemaLocation="DWLCommonRequest.xsd"/>
    <xsd:include schemaLocation="tcrmRequest_extension.xsd"/>

    to:
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://example.com/mdmsap" targetNamespace="http://example.com/mdmsap" elementFormDefault="qualified">
    <xsd:include schemaLocation="DWLCommonRequest.xsd"/>
    <!-- <xsd:include schemaLocation="tcrmRequest_extension.xsd"/> -->

    Save the changes with Ctrl+S.
  24. Right-click tcrmRequest_extension.xsd and select Open With > Text Editor.
    Change the schema from:
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
    to:
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://example.com/mdmsap" targetNamespace="http://example.com/mdmsap" elementFormDefault="qualified">
    <xsd:include schemaLocation="myTCRM.xsd"/>

    Save the changes with Ctrl+S.
  25. Verify that the Physical Resources view does not show any errors.

Creating the JMS Export component listening for incoming MDM Server messages

After the MDM Server data types are available in WebSphere Integration Developer, you can create the JMS component that is able to receive the MDM Server messages:

  1. Open the WebSphere Integration Developer.
  2. Right-click the MDMDataTypes library module you created in the previous steps and select New >Interface.
  3. In the New Interface window, make sure the MDMDataTypes library is selected and specify a name (e.g., MDMInput), then click Finish.
  4. In the interface editor, click the Add One Way Operation icon.
    Figure 28. Interface editor
    Screenshot shows MDMInput defining interface editor
  5. Initially, the new operation has one input named input1 of type string. Click string to and select Browse... in the selection window.
  6. In the Data Type Selection window, type TCRMService into the filter field and select the TCRMService data type in the result list. Click OK. Verify that the name and type of the operation input changed to TCRMService.
    Figure 29. Define operation
    Screenshot shows MDMInput defining operations
  7. Save the changes with Ctrl+S.
  8. Select File > New > Other..., expand the Business Integration folder, select Module, then click Next.
  9. Specify a module name (e.g., MDM2SAP), then click Next.
  10. Select the checkbox next to the MDMDataTypes library and click Finish.
  11. In the Business Integration view, double-click Assembly Diagram.
  12. In the Assembly Diagram editor, expand the Components section and drag an Export to the canvas.
    Figure 30. Create new export
    Screenshot shows MDM2SAP assembly diagram
  13. Right-click the new Export1 component, select Rename, and specify a name (e.g., MDMRequest).
  14. Right-click the new MDMRequest component and select Add Interface. Select the MDMInput interface and click OK.
  15. Right-click the MDMRequest component and select Generate Binding... > Message Binding > JMS Binding.
  16. In the Configure JMS Export Service window, select Publish-Subscribe as the JMS messaging domain.
  17. Select Use pre-configured messaging provider resources.
  18. Click the Select... button next to the activation specification field, select your target server, click Next, select jms/MDMTopicAS from the list, then click Finish.
  19. Press the Select... button next to the receive destination field, select your target server, expand the Topics folder, select com/dwl/base/notification/MDMTopic, and click Finish.
    Figure 31. Specify JMS configuration settings
    Screenshot shows configuring JMS Export Service
  20. Click OK.
  21. Press Ctrl+S to save the Assembly Diagram.
    Figure 32. Assembly diagram with JMS export
    Screenshot shows MDM2SAP assembly

Setting up the SAP adapter

To be able to send messages to the SAP system, the WebSphere Adapter for SAP Software has to be configured:

  1. Because the adapter is using the SAP Java Connector (JCo), the sapjco3.dll and sapjco3.jar files need to be copied to the system running the ESB. Both files can be obtained from the downloads section of the SAP marketplace. Copy both files to the lib directory of the WebSphere Process Server (e.g., C:\Program Files\IBM\WID7_WTE\runtimes\bi_v7\lib).
  2. In the MDM2SAP Assembly Diagram editor, expand the Outbound Adapters section and drag an SAP component to the canvas.
  3. In the New External Service window, select the IBM WebSphere Adapter for SAP Software with transaction support.
    Figure 33. New IBM WebSphere Adapter for SAP Software
    Screenshot shows New External Service
  4. Click Next.
  5. On the next page, leave the defaults and click Next.
  6. On the next page, specify the location of the SAP JCo files.
    Figure 34. Specify the location of the JCO connector files
    Screenshot shows locating files for new external service
  7. Click Next.
  8. On the next page, specify the SAP system connection information. The SAP interface name to use is ALE.
    Figure 35. Specify the discovery properties
    Screenshot shows specifying discovery properties
  9. Click Next.
  10. Expand the ALE node and select Discover IDoc From System.
  11. Click the filter button and type *debmas* in the pattern field. Make sure you include wildcard (*) characters.
    Figure 36. Find objects in the enterprise system
    Screenshot shows finding objects in the enterprise system
  12. Click OK.
  13. Expand the Discover IDoc from System (filtered) node.
  14. From the list of discovered objects, select DEBMAS06 and add it to the Selected objects list on the right. A configuration dialog appears.
  15. In the Configuration Properties for DEBMAS06, select the first four checkboxes and specify IDoc release version 700.
    Figure 37. Configuration properties for IDoc DEBMAS06
    Screenshot shows specifying the configuration properties for 'DEBMAS06
  16. Click OK and continue by clicking Next.
  17. Specify a folder for the generated business objects. Enter debmas in the Folder field and click Next.
  18. In the Deployment Properties, select Using security properties from the managed connection factory, then click Next.
  19. Click Finish.
  20. Press Ctrl+S to save the MDM2SAP Assembly Diagram.
    Figure 38. Assembly diagram
    Screenshot shows the MDM2SAP assembly diagram

Creating the mediation module

Now you have to create the mediation between the incoming MDM message and the SAP message. Since MDM Server and SAP use different codes for a country or a province, the mediation has to transcode the appropriate values.

Creating the MDMSAP transcoding database

  1. Open a DB2 command window and change to the directory with the extracted tutorial sample files.
  2. Create the transcoding database:
    db2 create database MDMSAP
  3. Connect to the database:
    db2 connect to MDMSAP
  4. Enter this command to create the country codes table:
    db2 -tvf countryCodes.sql
  5. Enter this command to create the province codes table:
    db2 -tvf provinceCodes.sql
  6. Disconnect from the database:
    db2 disconnect MDMSAP

Creating the MDMSAP data source

  1. In WebSphere Integration Developer, open the Servers view, right-click WebSphere Process Server v7.0, and select Start. Wait for the state to change to Started.
  2. Right-click WebSphere Process Server v7.0 and select Administration > Run administrative console.
  3. In the Admin Console on the left, expand Security and click Global security.
  4. In the Authentication section on the right, expand Java Authentication and Authorization Service and click J2C authentication data.
  5. Click the New button.
  6. Specify an alias (e.g., MDMSAP_DB_Auth_Alias) and the user ID and password of the user to connect to the MDMSAP database. Click OK. In Messages at the top of the page, select Save to save your changes.
    Figure 39. J2C authentication data
    Screenshot shows global security screen
  7. In the Admin Console on the left, expand Resources > JDBC.
  8. Click Data sources.
  9. On the Data sources page, select the server1 scope and click New.
  10. On the Basic data source information page, enter the data source name (MDMSAP) and the JNDI name (jdbc/MDMSAP), then click Next.
  11. On the JDBC provider page, select Create new JDBC provider, then click Next.
  12. On the new JDBC provider page, select Database type: DB2, Provider type: DB2 Universal JDBC Driver Provider, Implementation type: XA data source.
    Figure 40. Create new JDBC provider
    Image shows creating a new JDBC provider
  13. Click Next.
  14. In the database class path information window, specify the directory of your DB2 installation containing the db2jcc.jar file. Leave the Native library path field empty and click Next.
  15. On the database-specific properties page, select Driver type: 4, Database name: MDMSAP and the (DB2) Server name. Click Next.
  16. From the Component-managed authentication alias drop-down box, select the MDMSAP_DB_Auth_Alias and click Next.
  17. Click Finish. In the Messages at the top of the page, click Save.
    Figure 41. MDMSAP data source
    Screenshot shows data sources
  18. Select the checkbox next to MDMSAP and click the Test connection button. In the Messages at the top of the page, verify that the connection test for MDMSAP was successful.
  19. Restart the application server.

Creating the mediation flow component

  1. In the MDM2SAP Assembly Diagram editor, expand the Components section and drag a Mediation Flow component to the canvas.
  2. Right-click the new Mediation Flow component, select Rename, and specify a name (e.g., MDM2SAPMediation.
  3. In the Palette, click the Wire icon.
    Figure 42. New Mediation flow
    Screenshot shows MDM2SAP mediation diagram
  4. Click the MDMRequest component and the MDM2SAPMediation component.
  5. In the Add Wire dialog, click OK.
  6. Click the MDM2SAPMediation component and the SAPImport component.
  7. In the Add Wire dialog, click OK.
  8. Right-click the canvas and select Automatic Layout.
  9. In the Palette, click the Selection Tool.
    Figure 43. Wiring the components
    Screenshot shows the MDM2SAP assembly diagram
  10. Press Ctrl+S to save your changes.

Implementing the mediation component

  1. In WebSphere Integration Developer, right-click the MDMDataTypes library project and select New > Business Object.
  2. Specify the name (e.g., TranscodingBO). Click Finish.
  3. In the TranscodingBO editor, use the Add a Field to a business object icon to create these four fields of type string:
    • MDMCountryCode
    • MDMProvinceCode
    • SAPCountryCode
    • SAPProvinceCode
  4. Add a TCRMPersonBObj field of type TCRMPersonBObjType (to specify the type, click string, select Browse..., enter TCRMPerson, and select TCRMPersonBObjType from the Matching data types list.
    Figure 44. Adding fields
    Screenshot shows the business object
  5. Press Ctrl+S to save your changes.
  6. In the MDM2SAP Assembly Diagram, double-click the MDM2SAPMediation component and select Yes in the Open dialog.
  7. In the Generate Implementation window, click OK.
  8. In the MDM2SAPMediation editor window, select operation1 of the MDMInput interface.
  9. Select Blank Mediation Flow.
    Figure 45. Blank Mediation Flow
    Screenshot shows MDM2SAPMediation
  10. In the MDMSAPMediation editor on the right side, click the plus sign (+) next to Transient Context.
  11. In the Filter field, enter TranscodingBO, select TranscodingBO from the Matching data types list and click OK.
    Figure 46. Transient Context
    Screenshot shows adding Transient Context
  12. In the MDMSAPMediation editor on the left side, expand the Service Invocation section and drag a Callout to the canvas.
  13. Select the SAPImportPartner reference, then click OK.
  14. From the Routing section, drag a Message Filter to the canvas. Right-click the Message Filter, select Rename, and specify the name validate message.
  15. From the Transformation section, drag the following to the canvas:
    • XSLT Transformation (name: prepare context)
    • Database Lookup (name: transcode province codes)
    • Database Lookup (name: transcode country codes)
    • XSLT Transformation (name: create SAP message)
  16. Connect the created artifacts as follows:
    • Connect Input with validate message
    • Connect the match1 output of validate message with prepare context
    • Connect the out output of prepare context with transcode province codes
    • Connect the out output of transcode province codes with transcode country codes
    • Connect the out output of transcode country codes with create SAP message
    • Connect create SAP message with Callout
  17. Right-click the canvas and select Automatic Layout.
    Figure 47. Automatic Layout
    Screenshot shows Flow with connected primitives
  18. Click validate message.
  19. In the Properties view, select the Details tab, then click the Add... button on the right.
  20. In the Add/Edit window, enter the pattern below. In this sample, we just verify that the city element is set.

    boolean(/body/operation1/TCRMService/TCRMTx/TCRMObject/TCRMPersonBObj/ TCRMPartyAddressBObj/TCRMAddressBObj/City)
  21. Select match1 as the terminal name.
    Figure 48. Add/Edit properties
    Screenshot shows Add/Edit properties
  22. Click Finish.
  23. Double-click prepare context.
  24. In the New XML Map window, click Next.
  25. In the Message Root drop-down box, select '/'.
  26. Verify that the Input Message Body is set to operation1RequestMsg.
  27. To specify the Output Message Body, click the Browse button next to the field, select Specific message type, select MDMInput/operation1/operation1RequestMsg, then click OK.
    Figure 49. New XML Map
    Screenshot shows new XML Map
  28. Click Finish and the mapping editor is opened.
  29. In the mapping editor, create the following connections between the elements of the structure on the left and the elements of the structure on the right:
    Left elementRight elementTransform function
    bodybodyMove
    body/operation1/TCRMService/TCRMTx/TCRMObject/TCRMPersonBObj/context/transient/TCRMPersonBObjMove
    body/operation1/TCRMService/TCRMTx/TCRMObject/TCRMPersonBObj/ TCRMPartyAddressBObj/TCRMAddressBObj/CountryTypecontext/transient/MDMCountryCodeMove
    body/operation1/TCRMService/TCRMTx/TCRMObject/TCRMPersonBObj/ TCRMPartyAddressBObj/TCRMAddressBObj/ProvinceStateTypecontext/transient/MDMProvinceCodeMove
    Figure 50. Context Map
    Diagram shows context mapping
  30. Press Ctrl+S to save your changes.
  31. In the MDMSAPMediation editor, click transcode province codes.
  32. Click the Terminal tab.
  33. Expand Input terminal and click in. Click the Change button next to Message type field and select MDMInput/operation1/operation1RequestMsg.
  34. Click in the Details tab.
  35. Enter the following values:
    • In the Data source field, enter jdbc/MDMSAP.
    • In the Table field, enter MDMSAP.PROVINCE_CODES.
    • In the Search column field, enter MDM_PROVINCE.
    • In the Search location field, enter /context/transient/MDMProvinceCode.
    • In the target location table, enter SAP_PROVINCE for the Column, string for the Type field, and /context/transient/SAPProvinceCode for the Target location.
    Figure 51. Database lookup for province codes
    Screenshot shows database lookup: transcode province codes
  36. Press Ctrl+S to save your changes.
  37. In the MDMSAPMediation editor, click transcode country codes.
  38. Enter the following values:
    • In the Data source field, enter jdbc/MDMSAP.
    • In the Table field, enter MDMSAP.COUNTRY_CODES.
    • In the Search column field, enter MDM_COUNTRY.
    • In the Search location field, enter /context/transient/MDMCountryCode.
    • In the target location table, enter SAP_COUNTRY for the Column, string for the Type field, and /context/transient/SAPCountryCode as the Target location.
    Figure 52. Database lookup for country codes
    Screenshot shows details of database lookup transcode country codes
  39. Press Ctrl+S to save your changes.
  40. In the MDMSAPMediation editor, double-click create SAP message.
  41. In the New XML Map window, press Next.
  42. In the Message Root drop-down box, select '/'.
  43. To specify the Input Message Body, click the Browse button next to the field, select Specific message type, select MDMInput/operation1/operation1RequestMsg, click OK.
  44. Verify that the Output Message Body is set to executeSapDebmas06RequestMsg.
    Figure 53. Specify Message Types
    Screenshot shows entering new XML map
  45. Click Finish and the mapping editor is opened.
  46. In the mapping editor, create the following connections between the fields of the structure on the left and the fields of the structure on the right:
    #Left fieldRight fieldTransform function
    All fields below are relative to:
    body/executeSapDebmas06/executeSapDebmas06Input/SapDebmas06IDocBO/ SapDebmas06DataRecord/SapDebmas06E2kna1m005
    1context/transient/SAPProvinceCodeREGIOMove
    2context/transient/SAPCountryCodeLAND1Move
    3body/operation1/TCRMService/TCRMTx/TCRMObject/TCRMPersonBObj/ TCRMPartyAddressBObj/TCRMAddressBObj/AddressLineOneSTRASMove
    4body/operation1/TCRMService/TCRMTx/TCRMObject/TCRMPersonBObj/ TCRMPartyAddressBObj/TCRMAddressBObj/CityORT01Move
    5body/operation1/TCRMService/TCRMTx/TCRMObject/TCRMPersonBObj/ TCRMPartyAddressBObj/TCRMAddressBObj/ZipPostalCodePSTLZMove
    6body/operation1/TCRMService/TCRMTx/TCRMObject/TCRMPersonBObj/ TCRMPartyIdentificationBObj/IdentificationNumberSTCD1Move
    7Two inputs:
    body/operation1/TCRMService/ TCRMTx/TCRMObject/TCRMPersonBObj/TCRMAdminContEquivBObj/
    AdminPartyId and
    body/operation1/TCRMService/TCRMTx/TCRMObject/TCRMPersonBObj/ TCRMAdminContEquivBObj/AdminSystemType
    KUNNRIf (see configuration instructions for this If transformation below)
    8Two inputs:
    body/operation1/TCRMService/TCRMTx/ TCRMObject/TCRMPersonBObj/TCRMPersonNameBObj/GivenNameOne
    and
    body/operation1/TCRMService/TCRMTx/TCRMObject/TCRMPersonBObj/ TCRMPersonNameBObj/LastName
    NAME1Concat (see configuration instructions for this Concat transformation below)
    9body/operation1/TCRMService/TCRMTx/TCRMObject/TCRMPersonBObj/ TCRMPersonNameBObj/LastNameSORTLMove
    • Configuration instructions for the If transformation in row 7 of the table above:
      Connect AdminPartyId with KUNNR and AdminSystemType with the box representing the transformation function. Then switch the type of the transformation to If. Click the If transformation and specify the condition: $AdminSystemType = '1'. Finally, double-click the If transformation and connect the AdminPartyId with KUNNR. Now the party ID is assigned to the customer number only if the value of the system type is '1'. Other systems are ignored.
    • Configuration instructions for the Concat transformation in row 8 of the table above:
      Connect GivenNameOne with NAME1 and LastName with the box representing the transformation function. A Concat transformation is created. Click the Concat transformation. On the General tab, select Space character as the Default delimiter. Verify that the Example string looks like: <GivenNameOne> <LastName> (including space character).
  47. Some fields of the SAP message need to be set with default values. Default values can be assigned with the Assign function. To create an Assign, right-click the appropriate field and select Create Assign. In the Properties of the Assign, the value can be specified on the General tab. Create the assigns listed in the table below.
    #Assign for fieldsValue to be assignedSAP transaction
    All fields below are relative to:
    body/executeSapDebmas06/executeSapDebmas06Input/ SapDebmas06IDocBO/SapIDocControlRecord/
    1RCVPORMDM_PORTwe21
    2SNDPRTLS
    3IDOCTYPDEBMAS06
    4SNDPRNMDMSAPwe20
    5TABNAMEDI_DC
    6MANDT800
    7MESTYPDEBMAS
    8RCVPRNT90CLNT090bd64, check the subsystem defining the MDMSAP logical system
    9SNDPORTRFC
    10RCVPRTLS
    #Assign for fieldsValue to be assigned
    All fields below are relative to:
    body/executeSapDebmas06/executeSapDebmas06Input/SapDebmas06IDocBO/ SapDebmas06DataRecord/SapDebmas06E2kna1m005/
    1MSGFN005
    2KTOKD0001
    3SPRASE
    4LZONE0000000003
  48. Press Ctrl+S to save your changes.
  49. In the MDMSAPMediation editor, some components still have terminals that are not yet connected. Connect each fail terminal to a Fail component from the Error Handling section of the Palette. Connect all remaining unused terminals to a Stop component from the Error Handling section of the Palette.
  50. Right-click the Canvas and select Automatic Layout (the layout below is modified to fit the screen).
    Figure 54. Final request flow
    Image shows final request flow
  51. In the MDMSAPMediation editor, click the Response tab.
  52. Connect the out terminal of the Callout Response component with a Trace component from the Tracing section of the Palette.
  53. Connect the out terminal of this Trace component to a Stop component from the Error Handling section of the Palette
  54. Connect all remaining unused terminals with a Fail component from the Error Handling section of the Palette.
  55. Right-click the canvas and select Automatic Layout.
    Figure 55. Final response flow
    Diagram shows response flow
  56. Press Ctrl+S to save your change.
  57. Switch to the MDM2SAP Assembly Diagram and press Ctrl+S to save your changes.

Deploy the application to the server

  1. In the Servers view, right-click WebSphere Process Server v7.0 at localhost and select Add and Remove projects.....
  2. Select MDM2SAPApp from the Available Projects list and click Add.
    Figure 56. Add application to server
    Screen cap: add and remove projects
  3. Click Finish.
  4. Wait for the Status to change to Synchronized.

Running the scenario

To test this tutorial's scenario, you will use the MDM Data Stewardship Console to create a new MDM person entity. The created entity will then be processed by the ESB. The transcoding for country and province will be done and finally an IDoc message will be sent to the SAP system

Using the MDM Data Stewardship Console to create a new MDM Person entity

  1. Navigate your browser to the MDM Data Stewardship Console (usually http://myMDMHost:9080/CustomerDataStewardshipWeb/ where myMDMHost is the name of your MDM system; the port may be different on your system).
  2. In the left navigation menu, open the section Party Maintenance and select the menu item Add Person.
  3. Enter data for at least the following fields:
    • Name Usage Type: Legal
    • Given Name: John
    • Family Name: Doe
  4. Click Submit.
    Figure 57. Add person data stewardship
    Screenshot shows data stewardship screen in MDM server showing add person function
  5. In the following pop-up dialog, click OK to save your changes.
  6. Now click on the Addresses tab to add an address for the newly created person.
  7. Click the green Add button at the bottom of the address list.
  8. Specify at least the following values:
    • Address Type: Business
    • Address Line: Evergreen Terrace
    • City: Los Angeles
    • Province/State: CA
    • ZIP Code: 54321
    • Country: United States of America
  9. Click the Submit button to save your changes, then click OK in the appearing pop-up dialog.
    Figure 58. Customer general data
    Screenshot shows adding address info
  10. The MDM Person entity is created and an IDoc was send to the SAP system. Click on the Customer Key tab to find the record's ID generated for usage in the SAP system. Note the key or copy it to the clipboard, it will be used in the next step to find the record on the SAP system.
    Figure 59. View customer key
    Screenshot shows viewing customer key

Viewing the record on the SAP system

  1. Log in to the SAP system and call transaction XD03.
  2. Type or paste the SAP customer number from the previous step into the Customer field and click the green checkmark.
    Figure 60. Transaction XD03
    Screenshot shows customer display: initial screen
  3. You should now see a Customer record that was created on the SAP system, containing all relevant address and person information as entered in the MDM Data Stewardship Console.
    Figure 61. Transaction XD03
    Screenshot shows display customer: general data
  4. Note: In case the customer record was not transferred to the SAP system, the WebSphere Adapter for SAP software may have a problem. Have a look at the process server log files and check that the following exception occurred:
    java.lang.NoClassDefFoundError: com.ibm.j2ca.sap.ext.JCo3DestinationDataProvider.
    Check the linked document "SAP JCo environment setup errors" listed in the Resources section to fix this problem.

Updating the MDM Person entity

  1. Close SAP transaction XD03 so that the customer record will not be locked by the SAP system and the changes sent by the ESB can be applied immediately.
  2. Go to the MDM Data Stewardship Console. If the MDM person record you created in the previous step isn't still open, use the Party Maintenance > Search Party menu item to search for it by specifying the family name Doe, for example, and clicking the Submit button.
    Figure 62. Search Party
    Screenshot shows searching on family name
  3. Now modify the name or the address of the record and save your changes. The changes on the MDM side will be propagated to the SAP system and should be visible when calling transaction XD03 again.

Summary

Conclusion

Now that you finished this tutorial, you should have a good understanding of how to integrate MDM Server with an Enterprise Information System. We focused on a sample integration with SAP, but the basic steps you learned will be identical or at least similar for other system integrations.

The starting point of our integration was the creation of MDM behavior extensions that allow us to react to changes made on the master data managed by MDM. In our example, we focused on the "customer" business object and sending data to a JMS topic whenever a customer record on the MDM system is created or updated. The next building block was the ESB mediation flow, which picks up the data from the JMS topic. An ESB mediation flow is an excellent tool that allows you to handle data in a very flexible way.

You have learned how to easily perform the transcoding of type codes in a mediation flow — a step that is always needed in integrations when the source and the target system use different codes for attributes. In the mediation flow, we also transformed the MDM message to the SAP IDoc structure and finally used the WebSphere Adapter for SAP applications to send the IDoc to a SAP system.

Outlook

Part 2 of this tutorial series demonstrates how data for sole attributes (e.g., attribute "tax ID" managed by the SAP system) can be propagated back to the MDM system.


Download

DescriptionNameSize
Sample code and SQL scriptsdownload.zip11KB

Resources

Learn

Get products and technologies

  • Build your next development project with IBM trial software, available for download directly from developerWorks.

Discuss

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into Information management on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Information Management, WebSphere
ArticleID=955253
ArticleTitle=Integrating MDM Server with Enterprise Information Systems using SAP as an example, Part 1: Delivering customer records to SAP
publish-date=08252011