how to integrate master data management (mdm) and business ... · how to integrate master data...

77
SAP NetWeaver How-To Guide How to Integrate Master Data Management (MDM) and Business Process Management (BPM) Applicable Releases: SAP NetWeaver Master Data Management 7.1 Topic Area: Enterprise Information Management Capability: Master Data Management Version 2.20 December 2013

Upload: others

Post on 19-Jan-2021

2 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

SAP NetWeaverHow-To Guide

How to Integrate Master DataManagement (MDM) and BusinessProcess Management (BPM)

Applicable Releases:

SAP NetWeaver Master Data Management 7.1

Topic Area:Enterprise Information Management

Capability:Master Data Management

Version 2.20

December 2013

Page 2: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

© Copyright 2014 SAP AG. All rights reserved.

No part of this publication may be reproduced ortransmitted in any form or for any purpose without theexpress permission of SAP AG. The information containedherein may be changed without prior notice.

Some software products marketed by SAP AG and itsdistributors contain proprietary software components ofother software vendors.

Microsoft, Windows, Outlook, and PowerPoint areregistered trademarks of Microsoft Corporation.

IBM, DB2, DB2 Universal Database, OS/2, ParallelSysplex, MVS/ESA, AIX, S/390, AS/400, OS/390,OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP,Intelligent Miner, WebSphere, Netfinity, Tivoli, Informix,i5/OS, POWER, POWER5, OpenPower and PowerPC aretrademarks or registered trademarks of IBM Corporation.

Adobe, the Adobe logo, Acrobat, PostScript, and Readerare either trademarks or registered trademarks of AdobeSystems Incorporated in the United States and/or othercountries.

Oracle is a registered trademark of Oracle Corporation.

UNIX, X/Open, OSF/1, and Motif are registeredtrademarks of the Open Group.

Citrix, ICA, Program Neighborhood, MetaFrame,WinFrame, VideoFrame, and MultiWin are trademarks orregistered trademarks of Citrix Systems, Inc.

HTML, XML, XHTML and W3C are trademarks orregistered trademarks of W3C®, World Wide WebConsortium, Massachusetts Institute of Technology.

Java is a registered trademark of Sun Microsystems, Inc.

JavaScript is a registered trademark of Sun Microsystems,Inc., used under license for technology invented andimplemented by Netscape.

MaxDB is a trademark of MySQL AB, Sweden.

SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAPNetWeaver, and other SAP products and servicesmentioned herein as well as their respective logos aretrademarks or registered trademarks of SAP AG inGermany and in several other countries all over the world.All other product and service names mentioned are thetrademarks of their respective companies. Data containedin this document serves informational purposes only.National product specifications may vary.

These materials are subject to change without notice.These materials are provided by SAP AG and its affiliatedcompanies ("SAP Group") for informational purposes only,without representation or warranty of any kind, and SAPGroup shall not be liable for errors or omissions withrespect to the materials. The only warranties for SAPGroup products and services are those that are set forth inthe express warranty statements accompanying suchproducts and services, if any. Nothing herein should beconstrued as constituting an additional warranty.

These materials are provided “as is” without a warranty ofany kind, either express or implied, including but notlimited to, the implied warranties of merchantability,fitness for a particular purpose, or non-infringement.

SAP shall not be liable for damages of any kind includingwithout limitation direct, special, indirect, or consequentialdamages that may result from the use of these materials.

SAP does not warrant the accuracy or completeness of theinformation, text, graphics, links or other items containedwithin these materials. SAP has no control over theinformation that you may access through the use of hotlinks contained in these materials and does not endorseyour use of third party web pages nor provide any warrantywhatsoever relating to third party web pages.

SAP NetWeaver “How-to” Guides are intended to simplifythe product implementation. While specific productfeatures and procedures typically are explained in apractical business context, it is not implied that thosefeatures and procedures are the only approach in solving aspecific business problem using SAP NetWeaver. Shouldyou wish to receive additional information, clarification orsupport, please refer to SAP Consulting.

Any software coding and/or code lines / strings (“Code”)included in this documentation are only examples and arenot intended to be used in a productive systemenvironment. The Code is only intended better explain andvisualize the syntax and phrasing rules of certain coding.SAP does not warrant the correctness and completeness ofthe Code given herein, and SAP shall not be liable forerrors or damages caused by the usage of the Code, exceptif such damages were caused by SAP intentionally orgrossly negligent.

Disclaimer

Some components of this product are based on Java™. Anycode change in these components may cause unpredictableand severe malfunctions and is therefore expressivelyprohibited, as is any decompilation of these components.

Any Java™ Source Code delivered with this product is onlyto be used by SAP’s Support Services and may not bemodified or altered in any way.

Page 3: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

Document HistoryDocument Version Description

2.20

· Links have been updated.

· Other general updates

2.10Terminology updated to reflect changes in the user interface of the MDM WebDynpro Configuration Manager

2.00 The How To Consume MDM Web Dynpro Components v1.0 guide has beensplit into the following two guides:

· How To Build Web Applications Using MDM Web Dynpro Components

Explains how MDM Web Dynpro components are consumed by othercustom Web Dynpro components to create a Web Dynpro applicationwith the flexibility to run as a stand-alone application or in a portalenvironment.

NoteDuring the course of this guide, there are references to the HowTo Build Web Applications Using MDM Web DynproComponents guide which is available on SAP DeveloperNetwork (SDN) athttp://www.sdn.sap.com/irj/sdn/howtoguides

The direct link to the guide is: How to Build WebApplications Using MDM Web DynproComponents

· How To Integrate MDM and BPM

This guide concentrates on how to integrate MDM and BPM using MDMWeb Dynpro components and Web services.

1.00 First official release of this guide – How To Consume MDM Web DynproComponents

Page 4: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

Typographic ConventionsType Style Description

Example Text Words or characters quotedfrom the screen. These includefield names, screen titles,pushbuttons labels, menunames, menu paths, and menuoptions.

Cross-references to otherdocumentation

Example text Emphasized words or phrasesin body text, graphic titles, andtable titles

Example text File and directory names andtheir paths, messages, names ofvariables and parameters,source text, and names ofinstallation, upgrade anddatabase tools.

Example text User entry texts. These arewords or characters that youenter in the system exactly asthey appear in thedocumentation.

<Exampletext>

Variable user entry. Anglebrackets indicate that youreplace these words andcharacters with appropriateentries to make entries in thesystem.

EXAMPLE TEXT Keys on the keyboard, forexample, F2 or ENTER.

IconsIcon Description

Caution

Note or Important

Example

Recommendation or Tip

Page 5: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

Table of Contents

1 Business Scenario.......................................................................................................................... 1

2 Prerequisites................................................................................................................................. 3

3 Consuming an MDM Web Dynpro Component in a BPM Process .................................................. 5

4 Consuming MDM Web Dynpro Components and MDM Web Services .......................................... 13

5 Passing MDM Semantic Data Between BPM Process Steps Using a Wrapper Application ........... 53

6 BPM and UWL Mapping using worklistVariable ........................................................................... 70

Page 6: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 1

1 Business Scenario

Business Process Management (BPM)SAP NetWeaver Business Process Management (BPM) is used to build composite business processes; mainlyservice-based processes that support both human-centric and system-centric workflows (human interactionand process integration).

SAP NetWeaver Master Data Management (MDM) – Web DynproComponentsSAP NetWeaver MDM provides consistent, accurate, timely master data that is accessible across anenterprise from a centralized database called the MDM repository.

The SAP NetWeaver MDM Web Dynpro Configuration Manager (Configuration Manager) is a wizard-based toolthat exposes MDM repository metadata and is used for configuring MDM Web Dynpro components. Thesecomponents are reusable units of code that are used as building blocks for developing modular Webapplications; they can also be extended with Java coding. They are consumed (as used components) bycustom developed Web Dynpro wrapper applications and can be used for customizing or applying differenttypes of business logic to suit a variety of business scenarios such as Business Process Management (BPM).

There are two ways in which an MDM Web Dynpro component can be consumed in a BPM process:

· Directly, by referencing a Web Dynpro Item Details component from a BPM scenario. For example, anMDM Item Details Web Dynpro component can be embedded during design time in a BPM processwithout adding any additional coding.

· Indirectly, by referencing a custom wrapper application from a BPM scenario.

Typically a BPM process would involve a combination of MDM Web Dynpro components and MDM Webservices. For example you can have a BPM process consisting of an automated step using MDM Web services(for creating a new record), and a human step using MDM Web Dynpro components (for modifying a record, oras a final approval step).

The examples in this guide focus on master data creation scenarios. There are two approaches on how tomodel a BPM process when creating and maintaining an MDM record:

· Without saving the record in the MDM repository until the final step

In this case, all the record data is passed between the BPM steps stored in the BPM context. Toreference an example of this approach, see, Passing MDM Semantic Data Between BPM Process StepsUsing a Wrapper Application on page 53.

CAUTIONThe BPM context stores the data that controls the execution of a workflow. For performancereasons, it is not recommended to keep the entered master data in the BPM context since youhave to pass the complete master data from step to step.

· Saving the record from the start after each step (ensuring that the record exists in the repository).

This is done by using the Web Service CheckOutAsNew functionality or the Checkout Recordsoperation for existing records. In this case, only the record ID is passed between the BPM steps usingthe BPM context.

Page 7: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 2

Examples of this approach are:

¡ Consuming an MDM Web Dynpro Component in a BPM Process on page 5.

¡ Consuming MDM Web Dynpro Components and MDM Web Services on page 13.

In the final step, you can either:

¡ Check in the record using the Web service Check In Records operation.

¡ Roll back the record using the Web service Roll Back Records operation. This deletes the recordif it is checked out as new or it reverses the changes for the checked out record.

ExamplesThe following examples in this guide show how to consume Web Dynpro components in a BPM process:

· The first example is a simple BPM process that only includes a human task.

For more information, see Consuming an MDM Web Dynpro Component in a BPM Process on page 5.

· The second example shows how to configure a BPM process that consumes MDM Web Dynprocomponents and MDM Web Services. It includes both human and automated tasks.

For more information, see Consuming MDM Web Dynpro Components and MDM Web Services on page13.

· The third example demonstrates two main aspects of BPM and Web Dynpro integration:

¡ Firstly we show you how to create a Web Dynpro wrapper application consisting of an ItemDetails Web Dynpro component (includes semantic data entered by the user).

¡ We then show you how to create a BPM process that consumes the above wrapper applicationand passes the semantic data to the BPM context.

For more information, see Passing MDM Semantic Data Between BPM Process Steps Using a WrapperApplication on page 53.

· The last example shows how to map data in a BPM task so that records are displayed in a UniversalWorklist (UWL).

A UWL only displays information related to a BPM task and does not give any details regarding theactual record on which the task needs to be performed. This example shows how to map key identifyingdata (for example, customer name, part number), for a record belonging to a BPM task, to aworklistVariable. This data is then displayed in the UWL enabling the user to easily identify therecord on which to perform the task.

For more information, see BPM and UWL Mapping using worklistVariable on page 70.

Page 8: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 3

2 Prerequisites...

· Prior knowledge of Web Dynpro and Business Process Management (BPM).

For more information, see SAP Help Portal at help.sap.com.

· You have read the guide, How to Build Web Applications Using MDM Web Dynpro Components, which isavailable on SAP Developer Network (SDN) at http://www.sdn.sap.com/irj/sdn/howtoguides

· The direct link is How To Build Web Applications Using MDM Web Dynpro Components.

· Before you can develop a BPM process that consumes MDM WD components, make sure the followingis in place:

¡ SAP NetWeaver Composition Environment (CE) 7.11 SP04 (or higher) and SAP NetWeaverApplication Server (AS) Java is installed and running.

¡ SAP NetWeaver Developer Studio (NWDS) is installed and running and is the same version asthe SAP NetWeaver AS Java you are running.

¡ You are using SAP NetWeaver MDM 7.1 SP04 or higher.

¡ The MDM repository is mounted and loaded.

¡ MDM JAVA API 7.1.is deployed.

For more information about deploying the Java API library and MDM Connector, seehttp://help.sap.com/nwmdm71 ® SAP NetWeaver Master Data Management 7.1 ®Development Information ® MDM Java and .NET API Guide:

§ Getting Started with Java API

§ Installing and Referencing the MDM Connector ® Installation

§ Deploying the Java API and MDM Connector Using JSPM

¡ MDM JAVA WD FRAMEWORK 7.1 7.11 is deployed.

For more information, see http://help.sap.com/nwmdm71® SAP NetWeaver Master DataManagement 7.1 ® Development Information ® MDM Web Dynpro Components: ReferenceGuide:

§ Installing the MDM Web Dynpro Environment

§ Deploying the MDM Web Dynpro Components Framework

¡ You have run the MDM Web Dynpro Configuration Manager application, and configured yourcomponents.

For more information, see http://help.sap.com/nwmdm71® SAP NetWeaver Master DataManagement 7.1 ® Development Information ® MDM Web Dynpro Components Guide ®Configuring a Project in the MDM WD Configuration Manager.

· You have imported the MDM Web Dynpro and MDM Java API software components (SC) to yourworkspace as follows:

a. In the SAP NetWeaver Developer Studio (NWDS), choose the Development Infrastructureperspective as follows:

Window ® Open Perspective ® Other ® Development Infrastructure.

b. Import the MDM_JAVA_API software component to your LocalDevelopmentdevelopment track as follows:

i. In the context menu of the LocalDevelopment track, choose Import SC… to openthe Import Software Component screen.

ii. Browse for the MDMJ710<SP-Number>_P<Patch-Number>.sca file.

Page 9: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 4

c. Import the MDM_JAVA_WD_FRAMEWORK software component to your development trackexactly as you did in step b above for the API. You import the MDMJAVAWDFRW<SP-Number>_P<Patch-Number>.sca file.

Two new software components appear in the LocalDevelopment track – MDM_JAVA_APIand MDM_JAVA_WD_FRAMEWORK.

d. Add a new dependency to the MyComponents SC, for theMDM_JAVA_API andMDM_JAVA_WD FRAMEWORK software components.

· You have created a Destination to establish a connection to the MDM repository.

For more information, http://help.sap.com/nwmdm71 ® SAP NetWeaver Master Data Management7.1 ® Development Information ® MDM Web Dynpro Components: Reference Guide ® Creating aDestination for the MDM Repository.

Page 10: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 5

3 Consuming an MDM Web DynproComponent in a BPM Process

This example is a simple BPM process that only includes an Update operation (human task). We demonstratehow to directly reference an Item Details WD component from a BPM process.

This is the result that we want to achieve:

...

Procedure

ImportantEnsure that you have carried out all the prerequisite steps.

For more information, see Prerequisites on page 3.

Create a new development component (DC) project

InfoYou have already imported the Web Dynpro software component (SC) to your workspace. Youare now going to create a new development component (DC) project.

1. In the SAP NetWeaver Developer Studio (NWDS), choose the Process Composer perspective asfollows:

File ® New® Process Composer Development Component.

2. Choose the software component (SC) where you want the development component (DC) project to becreated (that is, in the LocalDevelopment track, select the MyComponents software component).

InfoLocal Development is the name of a local development track, within which there is asoftware component called MyComponents.

Page 11: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 6

3. Name the new DC project,test/mdmprocess.

Set the dependencies

InfoDCs can depend on one another and use each other. To enable a DC to use the functionality ofanother DC, you have to publish their functions in a set of public interfaces called public partsand a dependency to the public part of the DC must be declared. When you declaredependencies, you should select only those public parts that your component actually uses.

4. Choose the Development Infrastructure perspective.

5. In the context menu of the test/mdmprocessDC, choose Show In ® Component Properties.

Page 12: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 7

6. In the Dependencies tab, add dependencies to the public parts of the relevant component – in thisexample it is the tc/mdm/wdcomps/itemdetails/wd component.

7. Choose Next and Finish to complete this activity.

Create a new BPM process8. In the context menu of the Processes node, create a new process called MDMProcess.

Add a new task9. Go back to the Process Composer perspective and expand the newtest/mdmprocessDC.

Page 13: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 8

10. In the context menu of the Tasks node, add a new task to the project.

11. Name the new task,Update Record Data.

12. Choose Finish to create the Update Record Data task.

Define the User Interface13. From the tab of the new Update Record Data task, choose the Overview tab.

14. Choose the Item Details component and its Public Part, ITEM_DETAILS.

Page 14: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 9

15. Choose Next to select the Item Details component and its Interface View,ItemDetailsCompInterfaceView.

16. Choose Next and select the completeTaskEvent as the Completion Event.

17. Choose Finish to complete defining the user interface.

Page 15: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 10

Assign potential owners for the new task18. Navigate to the Roles tab and choose the User, Role, or Group defined in the User Management Engine

(UME).

19. Search for and add the UME user. For this example, we have selected Administrator.

CAUTIONBe sure that the user is a trusted MDM user.

For more information, see http://help.sap.com/nwmdm71® SAP NetWeaver Master DataManagement 7.1 ® Development Information ® MDM Web Dynpro Components: ReferenceGuide ® Defining a Trusted Connection.

20. Save the changes. The task is now configured.

Define the BPM process flow21. In the context menu of the new MDMProcess, open the Process Modeler.

22. Add the Update Record Data task to the MDMProcess (drag and drop).

Page 16: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 11

23. Use the sequence flow connectors to connect the steps of the process.

Define input mappings for the new process24. In the Properties tab of the Update Record Data task, choose Input Mapping and enter the internal

record ID of the record that needs updating.

Page 17: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 12

25. Specify the Item Details configuration and enter the name of the project, the name of the component,and the ID in inverted commas.

26. Save the changes.

27. Build and deploy the new DC.

Start the new BPM process

CAUTIONEnsure that the user ID has been assigned to the following two roles:

§ Every User Core Role (eu_core_user)

Adds the Home TLN (portal Top Level Navigation) entry that includes the UWL foraccessing BPM tasks at runtime

§ BPEM End User (com.sap.bpem.Enduser)

Enables running a BPM job

For more information, see SAP Help Portal at http://help.sap.com/netweaver ® SAP NetWeaver ®SAP NetWeaver CE. Open the SAP Library documentation that corresponds to your SAP NetWeaver CEversion. Open the Developer’s Guide ® Modeling Processes with Process Composer.

28. To run the process, see the next example, Consuming MDM Web Dynpro Components and MDM WebServices ®Start the BPM Process.

Page 18: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 13

4 Consuming MDM Web DynproComponents and MDM Web Services

Background:In this example, we show you how to configure a BPM process that consumes both an MDM Web Dynprocomponent (human step), as well as an MDM Web service (automated step).

NoteAll screen captures were taken from SAP NetWeaver CE 7.2.

ProcessThe process in our example includes three main steps consisting of one automated task and two human tasks:...

1. Create new record – an automated task using the Create Records MDM Web service operation.

RecommendationYou may want to allow one or more users to edit a record over an extended period of time aspart of a collaborative process. You also want this record to be invisible to others until the user isready to commit the changes, and only then make the record visible to all users. In this case,consider using the Web Service CheckoutAsNew functionality. CheckoutAsNewfunctionality is integrated into the Create Records Web service operation.

You can also use the Create Records operation to check out a new (rather than an existing)record, thus creating a private new record.

In the final step, you can either:

§ Check in the record using the Web service CheckIn Records operation

§ Roll back the record using the Web service Rollback Records operation (this deletes therecord if it is checked out as new, or it reverses the changes for the checked out record).

2. Update the created record – a human task, directly referencing an MDM Item Details WD component.

3. Approve/Reject – a human task directly referencing an MDM Item Details WD component, which hasbeen configured with a toolbar including custom buttons.

Page 19: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 14

This is the result we want to achieve:

Repository SchemaThis example is based on an MDM Material repository with the following schema:

· One main table, Products

· A Material_Number field code is used as the record identifier in the BPM process

Procedure

ImportantEnsure that you have carried out all prerequisite steps.

For more information, see Prerequisites on page 3.

Generate the CreateRecords MDM Web service operation...

1. Assign MDM_WS_Generator and MDM_WD_CONFIGURATOR actions to the relevant role.

For more information, see http://service.sap.com/installmdm71 ® MDM Web DynproGuide ® Installing the MDM Web Dynpro Environment.

2. Using the MDM Web Service Generator wizard, generate and deploy an MDM_CreateRecords Webservice operation. Take note of the following steps in the wizard:

¡ In step 2, select the Create action on the Main table.

Page 20: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 15

¡ In step 3, select the Material_Number field as the record identifier.

For more information, see SAP Help Portal at http://help.sap.com/nwmdm71 ® SAPNetWeaver Master Data Management 7.1 ® Development Information ® MDM Web ServicesGuide ® Generating a New Web Service.

Configure the Item Details WD component3. Using the MDM WD Configuration Manager, add a new Project and configure an Item Details WD

component.

For more information, For more information, see SAP Help Portal at http://help.sap.com/nwmdm71 ®SAP NetWeaver Master Data Management 7.1 ® Development Information ® MDM Web DynproComponents: Reference Guide ® Configuring a Project in the MDM WD Configuration Manager.

ImportantBe sure that you select the Complete Task Button in step 1 of the Item Details wizard.

Create a BPM development component (DC) projectFor more information, see Consuming an MDM Web Dynpro Component in a BPM Process on page 5 ®Create a new development component (DC) project.

4. Name the new DC, mdmbpm. This is the result:

5. In the Development Component perspective, add a dependency to the Item Details component:

Create a new BPM Process6. In the context menu of the Processes node, create a new process and name it MDM_BPM_Process.

Page 21: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 16

7. Complete the steps of the wizard and keep all default entries.

Add a human task (UpdateRecord)8. From the Process Composer perspective, expand the new mdmbpm DC.

9. Using the context menu of the Task node, add a new human task to the project, and name itUpdateRecord.

Define the User Interface10. Select the ItemDetailsComp Interface View.

11. Select completeTaskEvent as the Completion Event.

For more information, see Consuming an MDM Web Dynpro Component in a BPM Process on page 5 ®Define the User Interface.

Page 22: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 17

Assign a Potential User12. For assigning a potential owner for the new task, search for and add the UME user. For this example, we

have selected Administrator (a trusted MDM user).

For more information, see Consuming an MDM Web Dynpro Component in a BPM Process on page 5 ®Assign Potential Owners for the new task.

The human task, UpdateRecord is now configured.

Add an automated taskThe automated task invokes the Create Records Web service operation (which we have already created in step2 above).

13. Locate the Web Service Description Language (WSDL) for the MDM_CreateRecord Web service(deployed from the Web Service Generator) as follows:

a. From the SAP NetWeaver Administrator (NWA), navigate to SOA Management ® Applicationand Scenario Communications ® Single Service Administration.

Page 23: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 18

b. From the Service Definitions tab, search for the deployed Web service,MDM_CreateRecordVi.

Result

14. From the WSDLs tab, choose the WSDL link.

15. Copy the WSDL URL from the browser. For example:

http://<hostname>:<port>/MDM_CreateRecord/HTTPNone?wsdl&style=document&mode=ws_policy

Import the WSDL to the BPM Process16. In the context menu of the WSDL Files node, choose Import WSDL....

17. Enter the URL of the WSDL (copy and paste from the previous step).

Page 24: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 19

18. Choose Next to create a new Service Group for the CreateProduct Web service task and enter theName and Description – for example, MDM_BPM_SG.

NoteThis name will later be used in the NWA to configure a Provider System and Service Group.

For more information, see Configure the WS system provider and related properties below.

Page 25: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 20

19. Choose Finish to achieve the following result:

NoteThe ApproveReject human task will be defined later.

Define the BPM process flow20. Drag and drop the MDM_CreateRecordVi task (automated task), to the process drawing palette and

call it createProducts.

21. Drag and drop the UpdateRecord task (human task) to the process drawing palette and call itUpdateRecord.

Page 26: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 21

22. Connect both steps into a single process using the sequence flow connectors.

Page 27: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 22

Define input and output mapping

For the createProducts step:

23. Select the createProducts step and choose Input Mapping.

Page 28: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 23

24. Enter the value MDM_BPM as input to the destinationName element (MDM_BPM is the MDMdestination you defined as a prerequisite before starting this procedure).

25. Enter the value false as input to the applyNullValuesToMdm element.

Page 29: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 24

26. Enter the value None as input to the checkoutAsNew element.

27. Enter the value New Product Material Number as input to the materialNumber element(this string will be updated in the Material Number MDM field by the CreateProduct Web service).

Page 30: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 25

28. Choose Output Mapping for the createProducts step.

Page 31: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 26

29. Create a BPM artifact by dragging and dropping the dataObject on to the drawing palette andrenaming it Record_ID.

Page 32: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 27

30. Map the output of the createProducts step to the Record_ID by connecting the dataObjectfrom the response to the Record_ID of the process context.

Page 33: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 28

31. Because we are mapping a dataObject from a list (the response of the Web service), to a string,there is a compilation error (a red x on the link). To solve this, double click the link to open a Rules andFunctions popup window and select string-join().

32. Use the string-join function, with an empty string separator (“”).

The following is the result:

¡ Before:createCustOrgResponse/Response/ExecutionStatus/dataObject

¡ After:string-join(createCustOrgResponse/Response/ExecutionStatus/dataObject,"")

Page 34: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 29

For the UpdateRecord step:

33. Select the UpdateRecord step and map the Record_ID from the process context as input to theinternalId element.

Page 35: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 30

34. Reference the MDM WD component configurations by assigning the names of the Web Dynpro project(MDM_UpdateRecord) and Item Details component (UpdateRecord) configurations as input to theprojectConfigName and componentConfigName respectively (these are the names youconfigured in the MDM WD Configuration Manager).

Page 36: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 31

35. Save, build, and deploy the new process.

Configure the WS Provider System and related properties

NoteThis part of the procedure is only relevant for the Web service automatic step,createProduct.

There are three configuration steps:

· System Connections: Communication Profile

· System Connections: Provider System

· Applications Communications: Configuration

Page 37: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 32

System Connections: Communication Profile

36. Create a new Provider System for the Web service as follows:

From the SAP NetWeaver Administrator, (NWA), navigate to ® SOA Management ® TechnicalConfiguration ® System Connections, and choose the Communication Profiles tab.

37. Choose New to open the New Profile wizard.

38. Complete the two steps of the wizard:

¡ In the General step, name the new Communication Profile MDM_BPM_Profile.

Page 38: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 33

¡ In the Connectivity Type step, leave the default values for the Authentication properties,Reliable Messaging, and Transport Binding settings.

The result is:

Page 39: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 34

System Connections: Provider System

39. Choose the Provider Systems tab.

40. Choose New to open the New Provider System wizard.

41. Complete the steps of the wizard as follows:

Step 1 – Provider System¡ System Type = Java

¡ DB Host = the host name where the Web service is deployed

Page 40: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 35

Step 2 – Connectivity Types

a. Check WS in the Connectivity Type column to expand the screen where you update theadditional properties.

b. Select MDM_BPM_Profile from the Profile Name dropdown list (this is theCommunication Profile you configured in the previous step).

c. Select WSDL.

d. Update the URL field with the MDM_CreateRecord Web service WSDL URL (generatedabove):http://<hostname>:<port>/MDM_CreateRecord/HTTPNone?wsdl&style=document&mode=ws_policy

Page 41: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 36

You have now completed configuring a new Provider System called bpm on <hostname>.

Page 42: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 37

Applications Communications: Configuration

In this step we configure the inbound and outbound communication of the application. We willassign the newly created Provider System, bpm on <hostname> to the Service Group MDM_BPM_SG.

42. From the SAP NetWeaver Administrator (NWA), navigate to ® SOA Management ® Applicationand Scenario Communication ® Application Communication.

43. Search for your deployed BPM project. You can enter *mdm*.

44. Select the project from the result. In this example the BPM project name is test-mdmbpm.

45. Choose Edit.

46. From the Consumed Services tab, choose Assign Provider System.

Page 43: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 38

47. Select bpm on <hostname>, which is the Provider System you created in the previous steps.

Page 44: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 39

You have completed the Application Configuration step. The result is as follows:

Page 45: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 40

Add a new human task (ApproveRecord)You now configure the ApproveRecord task using the Item Details component with the Custom Toolbar option.

48. Define a new Item Details component in the MDM WD Configuration Manager calledApproveRecord as shown in the following screen capture:

49. In the Custom Toolbar step of the WD Configuration Manager Item Details wizard, add thefollowing two custom buttons on the toolbar: Approve and Reject.

Page 46: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 41

50. Update their Status Text with Record_Is_Approved and Record_is_Not_Approvedrespectively.

InfoThe Status Text is a string value that is passed to the process context (using theBPMStatus parameter), when any of the custom buttons are pressed at runtime bythe user.

51. Go back to the NWDS and from the Process Composer perspective, expand the mdmbpm DC, andadd a new human task to the project using the context menu of the Task node.

52. Name this taskApproveRecord.

Page 47: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 42

53. Define the User Interface and assign a Potential User as we did for the UpdateRecord humantask above.

54. Add the ApproveRecord human task to the process by dragging and dropping it on to theprocess drawing palette.

55. Link this task to the UpdateRecord task and connect it to the End step.

Define input and output mapping

56. Select the ApproveRecord step, and choose Input Mapping.

57. Set the Input Mapping for the process context Record_ID and map it as input to theinternalId element.

Page 48: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 43

58. Assign the MDM WD Configuration Manager project, MDM_UpdateRecord, and the Item Detailscomponent configuration, ApproveRecord , to the projectConfigName andcomponentConfigName respectively.

Page 49: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 44

59. Define Output Mapping for the ApproveRecord step.

Create an artifact by dragging and dropping the BPMStatus (located under the IOData node),on to the drawing palette.

NoteThis example demonstrates just one of the options for creating an artifact; there areothers.

Page 50: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 45

60. Map the ApproveRecord output to the process context by mapping the BPMStatus to theDO_BPMStatus artifact.

61. Add an Exclusive Choice Gateway and connect the ApproveRecord step to this gateway.

62. Connect the gateway output to the UpdateRecord and End steps.

63. Rename the connections to the UpdateRecord step to Rejected and the connection to theEnd step to Approved.

64. For the Approved branch, select Condition and define the conditions for this gate as follows:

a. Drag and drop the DO_BPMStatus from the Context into the Condition editor.

Page 51: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 46

b. Apply the string function string-equal(DO_BPMStatus,"Record_Is_Approved")where Record_Is_Approved is the status text when the Approved button is chosen.This condition means that if the DO_BPMStatus string value equalsRecord_Is_Approved, this branch is true and the process will continue down thispath.

65. For the Rejected branch, select Condition and define the conditions for this gate as above.

Page 52: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 47

66. Check the property Make this gate the default to designate it as the default gate. (If theApproved condition fails, the Rejected branch is executed).

Start the BPM process

67. Log on to SAP NetWeaver Administrator.

68. Navigate to Configuration Management ® Processes and Tasks ® Process Repository.

69. Select the test~mdmbpm component.

Page 53: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 48

70. Choose Start Process to open a popup window.

Page 54: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 49

71. Choose Start Process again.

You should see a confirmation message below stating that the process started successfully.

RuntimeIn this example, the first BPM task is automatic. Once the BPM process is started, you can already see thenewly created record in the MDM repository (created by the automated BPM step).

The second and third activities are human tasks. Portal users can see their BPM tasks in the UWL. Inour example the user sees the UpdateRecord task and thereafter the ApproveRecord task.

Page 55: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 50

This is the process at runtime:...

1. The UpdateRecord task appears in the UWL (as seen in the screen capture)

2. The user chooses the UpdateRecord link and a BPM popup window with the BPM task is launched.

Page 56: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 51

3. The user updates the record fields and chooses Complete. The BPM process moves to the next stepwhich isApproveRecord.

4. The ApproveRecord task appears in the user’s UWL inbox.

Page 57: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 52

5. The user selects the ApproveRecord task and a BPM popup window with the BPM task is launched.

NoteThe Reject and Approve buttons appear on the UI at the bottom.

6. The user chooses the Reject or the Approve button and moves the process to the next step.

Page 58: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 53

5 Passing MDM Semantic Data BetweenBPM Process Steps Using a WrapperApplication

BackgroundThis example shows how to use a BPM context to pass semantic data between steps in a BPM process. TheBPM context keeps the data that controls the execution of a workflow.

RecommendationDue to BPM performance issues, we recommend that you keep the entered master data in theBPM context to a minimum (if at all), since you have to pass the complete master data fromstep to step.

ProcessThe purpose of this example is to create a new Vendor master record in the MDM repository.

The overall process is as follows:...

1. In the Item Details component from the wrapper application, a user enters values for Vendor Name andCountry.

2. This semantic data is then passed (using the BPM context), to a Web service Create Records operationwhere the record is created in the MDM repository.

The procedure below shows you how this is achieved by covering two main aspects of BPM and Web Dynprointegration:

· In step 1 below, we show you how to create a Web Dynpro wrapper application consisting of an MDMWeb Dynpro Item Details component (CreateVendor). In this example, the MDM Web Dynpro ItemDetails component includes semantic data in the Vendor Name and Country fields, which has beenentered by the user.

· In step 2, we show you how to create a BPM process that consumes the above wrapper application andpasses the semantic data to the BPM context using the completeTask event.

Page 59: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 54

This is what we want to achieve:

Step 1: Create the Web Dynpro Wrapper Application that consumes an ItemDetails WD component

ImportantEnsure that you have carried out all the prerequisite steps.

For more information, see Prerequisites on page 3....

Create a BPM development component (DC) project

RecommendationWe recommend that you refer to section Building a Stand-Alone Web Dynpro Component in theHow-to Build Web Applications Using MDM Web Dynpro Components guide available on SAPDeveloper Network (SDN) at http://www.sdn.sap.com/irj/sdn/howtoguides .

1. Name the Web Dynpro DC (wrapper application) semantic_mdm.

2. From the Development Infrastructure perspective, set the following dependencies for the newsemantic_mdm DC:

§ tc/mdm/wdcomps/itemdetails/wd

§ com.sap.mdm.tech.mdm4j (dependency to the MDM Java API)

Page 60: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 55

Create a new Web Dynpro component3. In the context menu of the Components node of the semantic_mdm wrapper application, create a

new Web Dynpro component and call it SemanticMDM.

This is how it appears in the Web Dynpro Explorer:

4. Add a data link between the Component Controller and the Interface Controller of the Item Details WDcomponent.

Create and map the context nodes (Configuration and IOData)5. Drag and drop the context from the Item Details component on the right to the Component Controller

context on the left.

Page 61: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 56

6. Map the context by dragging the elements from the left to the right (see screen capture below).

Add the semantic context nodes to store the new Vendor details7. Add a context node NEW_VENDOR (with 1..1 cardinality).

a. Under NEW_VENDOR, add a COUNTRY context node (with 1..1 cardinality):

§ Add a COUNTRY_ID attribute (integer) to hold the internal ID of the selected country.

§ Add a COUNTRY_NAME attribute (string) to hold the name of the selected country.

Page 62: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 57

b. Under NEW_VENDOR, add a VENDOR_NAME attribute (string), to hold the new vendor name.

BPM InfoSince BPM is only aware of the Interface Controller context, we need to copy the context fromthe Component Controller to the Interface Controller.

8. Copy the context nodes in the Component Controller to the Interface Controller of the SemanticMDMcomponent as follows:

a. In the context menu of the following context nodes, choose Copy.

§ Configuration

§ IOData

§ NEW_VENDOR

Page 63: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 58

b. In the context menu of the Interface Controller, choose Paste.

Define a CompleteTask event for the wrapper application (for BPM)At runtime, the user who has been assigned the task, enters the Vendor name, selects the Country, andchooses the Complete button on the UI of the Item Details WD component. This activates theCompleteTask event. You define the CompleteTask event as follows:

9. In the Component Controller of the SemanticMDM wrapper component, add a new CompleteTaskevent.

Page 64: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 59

10. Copy and paste the CompleteTask event to the Interface Controller.

11. In the Component Controller, add a new Event handler that subscribes to the Item DetailsCompleteTask event and call it completeTask.

12. Select the Item Details Interface Controller as the Event Source and the completeTaskEvent as theSubscribed Event.

Page 65: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 60

13. Copy and paste the completeTask event to the Interface Controller.

14. Save and build the new DC.

InfoAt this point, we want to link the values of the entered fields with the semantic context we addedto the wrapper application. The BPM process can then pass these field values to the next step inthe process.

15. To do this, add the following code in the CompleteTask Event handler:

COMPANY_NAME – the Vendor Name field code in the MDM repository

COUNTRY – the Country field code

Page 66: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 61

16. In the SemanticMDMView view of the SemanticMDM component, add aViewContainerUIElement.

17. Open the SemanticMDMWindow, and add the Item Details interface view to the user interfacecontainer.

18. Save the changes.

Page 67: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 62

Add a public part for the wrapper component to expose it in the BPM process19. In the context menu of the SemanticMDM component, choose Add to Public Part.

20. Choose New, and enter a name for the public part. For example,SemanticMDM_PUBLIC.

Page 68: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 63

21. Choose Finish.

22. Uncheck ITEM_DETAILS and choose Finish.

23. Build the new semantic_mdmDC and deploy it.

Step 2: Create a BPM ProcessIn the following steps you create a BPM process that consists of the following:

· A human task which involves the BPM process consuming the wrapper application (that you have justcreated)

· An automated task which includes an MDM Web service.

RecommendationReference the steps in the following procedure as a guideline: Consuming an MDM Web DynproComponent in a BPM Process on page 5. We have explained some of the changes that you willhave to make.

Page 69: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 64

Create a DC for the BPM project24. Name the DC of the BPM project,create_vendor.

25. Add a dependency to the SemanticMDM_PUBLIC public part of the semantic_mdm DC.

Add the new BPM process26. In the Processes node in the Web Dynpro Explorer, create a process and call it MDM_Create_Vendor.

Add the human task (CreateVendor)27. From the Process Composer perspective, expand the new create_vendor process DC.

28. Using the context menu of the Task node, add a new human task to the process and name itCreateVendor.

29. From the tab of the new CreateVendor task, choose the Overview tab.

Page 70: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 65

30. Define the User Interface by choosing the semantic_mdm DC and it’s public part,SemanticMDM_PUBLIC.

31. Choose Next to select the SemanticMDMInterfaceView of the semantic_mdm DC.

Page 71: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 66

32. Add the CreateVendor task to the MDM_Create_Vendor process by dragging and dropping it onto the drawing palette.

Define input and output mapping33. Add an artifact of type UIRequest to hold the new vendor data (this data will be passed between the

first human step and the second automated step), by dragging and dropping the UIRequest on to thedrawing palette.

Page 72: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 67

34. Rename to Vendor_Details.

InfoYou now want the Item Details component to open as an empty form (with no values in thefields) so that you can populate the fields.

35. To configure this behavior, carry out the following procedure:

a. Ensure that in the Configuration Manager, the Item Details component is configured to Start inEdit Mode.

b. Set a value of “–1“ (of type string) as the internalId for the Web Dynpro Item Detailscomponent.

36. Reference the project and the component.

Page 73: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 68

37. Map the output of the CreateVendor human step to the Vendor_Details artifact.

38. Map the Vendor_Details artifact to the automated createMDM_Vendors Web service step.

For more information on how to create an automated Web service step, see Consuming MDM WebDynpro Components and MDM Web Services on page 13.

39. Double click on the fx icons to open the following screens:

Page 74: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 69

a. Set the value NONE as input to the checkoutAsNew element in the createMDM_Vendorsautomated Web service step (this is a mandatory parameter).

b. Use the following expression that applies to the mapping between the source destination(COUNTRY_ID) to the target destination (internalId).

40. Save your changes.

41. Build and deploy the DC.

Runtime

Page 75: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 70

6 BPM and UWL Mapping usingworklistVariable

Portal users access their BPM tasks via the Universal Worklist (UWL). However, the UWL by default, onlydisplays information related to a BPM task (for example, Modify Record Data), and does not give any detailsregarding the actual record on which the task needs to be performed. In other words, the portal user can seewhat task to perform but cannot easily identify which record he or she is working on.

In this example we explain how to map key identifying data (for example, customer name, part number) for arecord belonging to a BPM task to a worklistVariable. This data is then displayed in the Subject columnof the UWL enabing the user to easily identify the record on which to perform the task....

1. From the Process Composer perspective, select any existing human tasks in the drawing palette of theBPM (for example, Account Agent).

2. In the Properties tab, choose Input Mapping.

3. Map key identifying data (for example, COMPANY_NAME), from the context of the Task to theworklistVariable of the artifact.

4. In the Web Dynpro Project Explorer tree, select the same human task (Account Agent).

5. Choose the User Texts tab.

6. Add a new variable.

7. Enter worklistVariable in the Expression field (in this example, the Expression Builder is used toconcatenate the worklistVariable with other constants).

8. Enter any name for the variable.

9. In the Type column, enter String.

Page 76: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

How to Integrate Master Data Management (MDM) and Business Process Management (BPM)

December 2013 71

10. In the Parameterized Texts area, enter the name of the variable in the Subject field.

ResultThe result in the UWL shows the mapped worklistVariable value (COMPANY_NAME = AB Company).The user can now see the record on which to perform the task.

Page 77: How to Integrate Master Data Management (MDM) and Business ... · How to Integrate Master Data Management (MDM) and Business Process Management (BPM) December 2013 2 Examples of this

www.sdn.sap.com/irj/sdn/howtoguides