How-to: Basic Setup of MEP
Connectivity of several ERP Systems to a Single CRM Client
Table of Contents
1 Intro.................................................................................................................................................... 2
1.1 Purpose of this Document ................................................................................................... 2
1.2 Further Information .............................................................................................................. 2
2 Configuration Settings..................................................................................................................... 3
2.1 Object Type Independent Settings ....................................................................................... 3
2.1.1 Maintaining the Environment Indicator for each System Landscape Part ...................... 3
2.1.2 Maintaining the Connected Systems in the MEP Array for ID Handling Logic ............... 4
2.1.3 Generation of the Runtime Coding based on the MEP Repository ................................ 4
2.1.4 Activation of the MEP Solution ...................................................................................... 5
2.1.5 Activation of the new ABAP-MapBox (as opposed to the JAVA MapBox) ..................... 5
2.1.6 Activation of Exchange for Solution Manager Customizing Mapping Information .......... 6
2.1.7 Activating the State Handling for Solution Manager Customizing Mapping Information . 6
2.1.8 Defining the Default Dataset for Solution Manager Customizing Mapping Information .. 7
2.2 Object Type Dependent settings .......................................................................................... 7
2.2.1 Activation of MEP Scenarios at Business Object Type Level ........................................ 7
2.2.2 Activation of Mapping at Field Level .............................................................................. 8
2.2.3 Prefixing of Customers/Business Partners .................................................................... 8
2.2.4 Prerequisites for Product/Material Integration ............................................................... 8
3 Enhancement Spots in MEP ............................................................................................................ 9
4 Related Notes ................................................................................................................................... 9
How-to: MEP Setup
Page 2 of 9
1 Intro
1.1 Purpose of this Document
You have a complex, heterogeneous system landscape that requires a Multiple Systems Exchange
Project or MEP solution where several ERP systems connect to only one CRM system. The MEP
Solution is a CRM Middleware Add-On that provides a framework for runtime mapping operations.
This solution enables CRM Middleware to handle connections from one CRM to multiple ERP
systems.
This document gives an overview of the steps necessary to activate the MEP processing during
the exchange of payload data via the CRM Middleware. The document is intended for technical
personnel and implementation team members.
Note: Please be aware that from a technical point of view, a landscape scenario where many
different ERP instances are each connecting to a different CRM client of the same single CRM
instance does NOT require an MEP solution. In other words, the above scenario is a totally
standard scenario and therefore is not in the scope of this document.
1.2 Further Information
Along with this document, there is a setup guide for the related SAP Solution Manager functionality
that goes along with MEP. See the Related Notes section below.
How-to: MEP Setup
Page 3 of 9
2 Configuration Settings
The following paragraph illustrates the configuration settings (customizing) required to activate the
MEP solution in an SAP CRM2007+ system, for it to integrate with two or more different SAP ERP
backend systems.
2.1 Object Type Independent Settings
2.1.1 Maintaining the Environment Indicator for each System Landscape Part
For the MEP Solution to be able to determine the system landscape part at runtime in which it is
executed, the environment parameter is required.
Transaction code SM30
Table Name CRMMEP_SYSDEP
Field name Entry
MANDT [Client]
MBGUID [Primary table key]
MBKEY [not in use for this parameter]
MBGROUP [not in use for this parameter]
MBDATSET [Value from 0
Defining the Default Dataset for Solution Manager
Customizing Mapping Information]
PARNAME ENVIRONMENT
PARVAL1 [CHAR-type string – suggestion:
DEVELOPMENT … in your dev environment
QUALITY …in your quality assurance environment
INTEGRATION …in your integration environment
PRODUCTION …in your production environment]
REMARK [Freely definable – Suggestion: CRMMEP]
Note that this record cannot be transported, due to its nature of being logical system-specific.
How-to: MEP Setup
Page 4 of 9
2.1.2 Maintaining the Connected Systems in the MEP Array for ID Handling Logic
In order for the ID handling logic during the processing of MapScenarios to work properly, the
following table needs contain the MEP relevant parts of the landscape.
Transaction code SM30
Table Name CRMMEP_SYSTEMS_V
Field name Entry
ID/Number [SID of the system]
Logical System [Logical System Name according to Transaction BD54]
Field Type [Type of the System, e.g. CRM, R3]
User [Consumer from ERP table CRMCONSUM, usually the
default ‘CRM’]
Environment [Assign the respective system to one of the environments
defined above in CRMMEP_SYSDEP]
2.1.3 Generation of the Runtime Coding based on the MEP Repository
In order to be able to use the MEP solution, the framework part of the runtime coding needs to be
generated, similar to the initial generation of runtime objects, when activating the CRM Middleware.
Transaction code GNRWB
Generator Group CRMEP (DTEL is 5-digit therefore not CRMMEP)
How-to: MEP Setup
Page 5 of 9
2.1.4 Activation of the MEP Solution
In order to activate the MEP functionality in a CRM system, the following parameter needs to be
set.
Transaction code SM30
Table Name ISPCFG
Field name Entry
Parameter Name CRMMEP
Site Type ID [blank]
Parameter Value X
This parameter could be considered the main ON/OFF switch of the MEP solution inside CRM.
2.1.5 Activation of the new ABAP-MapBox (as opposed to the JAVA MapBox)
The inbound queue processing calls function module MAP_BAPIMTCS_AND_PROCESS where
the call to the new ABAP MapBox is located. To activate the ABAP MapBox the following
parameter needs to be set:
Transaction code SM30
Table Name ISPCFG
Field name Entry
Parameter Name CRM_MAPBOX
Site Type ID [blank]
Parameter Value X
In the absence of this parameter, the old Java-MapBox user exit will be called alternatively, if MEP
is switched on
How-to: MEP Setup
Page 6 of 9
2.1.6 Activation of Exchange for Solution Manager Customizing Mapping Information
Activate the exchange for Solution Manager Customizing Mapping Information with the following
parameter setting:
Transaction code SPRO
SAP CRM IMG
menu
CRM CRM Middleware and Related
Components Multiple Exchange Projects (MEP)
Maintain Global Parameters
(CRMMEP_PARAM)
Field name Entry
Parameter Key [Freely definable – Suggestion: MEPSOLMAN]
Parameter Name 1 MEPSMCUST
Parameter Name 2 [blank]
Parameter Name 3 [blank]
Parameter Value X
Note: In environments where you do not use the SAP Solution Manager, this parameter provides a
‘safety switch’ in order to preserve any custom mappings created by previous of custom
implementations from being overwritten. Therefore, MEP standard provides a better avenue to
create mapping definitions via SAP Solution Manager but only when the above is set to active.
2.1.7 Activating the State Handling for Solution Manager Customizing Mapping
Information
This parameter activates the feedback of a state on the source mapping definition in Solution
Manager, when a pull to the CRM MapStore has taken place via Transaction
CRMMEP_FETCH_SOLMAN. When set to ‘X’, the respective Type Group(s) in Solution Manager
will change their status from ‘New’ to ‘Active’ to indicate their productive use in CRM.
Transaction code SPRO
SAP CRM IMG
menu
CRM CRM Middleware and Related
Components Multiple Exchange Projects (MEP)
Maintain Global Parameters
(CRMMEP_PARAM)
Field name Entry
Parameter Key [Freely definable – Suggestion: MEPSOLMAN]
Parameter Name 1 MEPSMSTATE
Parameter Name 2 [blank]
Parameter Value X
How-to: MEP Setup
Page 7 of 9
2.1.8 Defining the Default Dataset for Solution Manager Customizing Mapping
Information
In order to define the default dataset for Solution Manager Customizing Mapping Information, the
following parameter needs to be set.
Transaction code SPRO
SAP CRM IMG
menu
CRM CRM Middleware and Related
Components Multiple Exchange Projects (MEP)
Maintain Global Parameters
(CRMMEP_PARAM)
Field name Entry
Parameter Key [Freely definable – Suggestion: MEPSOLMAN]
Parameter Name 1 MEPSMDEFAULTDS
Parameter Name 2 [blank]
Parameter Name 3 [blank]
Parameter Value CRMMEP
The entity type ‘dataset’ theoretically allows hosting different MapStores in one integration server
(CRM client). This is a technical option that is however not supported by the MEP standard
solution.
2.2 Object Type Dependent settings
2.2.1 Activation of MEP Scenarios at Business Object Type Level
In order activate the processing of the MEP standard MapScenario for the respective object type,
the following parameter needs to be set.
Transaction code SPRO
SAP CRM IMG
menu
CRM CRM Middleware and Related
Components Multiple Exchange Projects (MEP)
Maintain Global Parameters
(CRMMEP_PARAM)
Field name Entry
Parameter Key [Freely definable – Suggestion: CRMMEP]
Parameter Name 1 MAPBOXACTIVE
Parameter Name 2 [Object Name from Transaction SM34 => CRMMEP_REPOS
for which to activate MEP]
Parameter Name 3 [Logical Source System Name]
Parameter Value X (Map: Execute the standard MapScenario for this object)
C (Copy: Call Framework but no payload transformation)
This set of parameters activates the call of the SAP standard MEP MapScenarios per business
object such as the customer download from ERP, or the Business Partner replication from CRM.
How-to: MEP Setup
Page 8 of 9
2.2.2 Activation of Mapping at Field Level
Table CRMMEP_FLD_OPR
For a standard attribute to get mapped, the ‘Operation’ field in table CRMMEP_FLD_OPR needs to
be set to the value ‘MAP’. If the operation to be performed is set to MAP, the respective error
handling field decides on the behavior of the system, in case a source configuration value has no
target value in the MapStore (CRMMEP_CUSTOMIZE). If no target value can be found and error
handling is ‘X’, the MapScenario will add a BAPIRET2 segment of type error to the return payload,
upon which the LUW goes to a SYSFAIL in the RFC-inbound Queue (Transaction SMQ2) to
prevent data inconsistencies. If the operation field is MAP and error handling is switched off, the
source value of the attribute in the LUW is copied through, and a warning is written to the
middleware trace. However the data goes through to validation and will update the object in CRM.
2.2.3 Prefixing of Customers/Business Partners
The MEP solution supports the prefixing of Business Partner IDs as long as the source number
range interval has been defined using 9-digits or less. The maximum length of the prefix is
obviously governed by the number of available digits (= 10 – number of digits defined in
Transaction SNUM/SNRO). The prefixing of number ranges without any free digits (in the range of
1.000.000.000-9.999.999.999) is not supported.
Transaction code SPRO
SAP CRM IMG
menu
CRM CRM Middleware and Related
Components Multiple Exchange Projects (MEP)
Maintain Prefix for Business Partners
Field name Entry
Logical System [Logical source system from which ID need to get prefixed]
Field Type KUNNR [MEP Standard]
PREFIX [Actual Prefix to be added to the CUSTNO/BPID]
Note that the settings in ERP Transaction PIDE as well as CRM Transaction BUC2 might require
revision after this setting.
2.2.4 Prerequisites for Product/Material Integration
Go to tab ‘Mapping Modules: R/3 to CRM’. Exchange the mapping module COM_PRODUCT_
PRDCT_PROD1_SAVE with the MEP-specific module COM_PRODUCT_PROD1_SAVE by
cutting and pasting (keeping the call order field value).
After the swap of the mapping module, re-execute the download of the Product Hierarchy (adapter
object DNL_CUST_PROD1) for all connected backends.
Note: The download of product hierarchies is supported only if the ERP systems are configured to
use an identical numbering scheme across all connected back ends. (SAP Standard delivery is
three levels of 5, 5 and 8 digits).
How-to: MEP Setup
Page 9 of 9
3 Enhancement Spots in MEP
The targeted exchange scenario for business partners and products between CRM and several
ERP systems includes the prefixing of customer numbers as well as the potential merge of several
ERP material master records into one product master record in CRM.
Both these scenarios are not included in the standard functionality of MEP. Their implementation,
however, has been anticipated and facilitated by providing both, configuration tables (e.g. for the
BP prefixing) as well as the respective enhancement spots (BAdIs) for enhancements prior to and
after the standard processing of the MapScenarios. An additional enhancement spot has been
provided for the purpose of fully substituting a standard MapScenario or creating new MapScenario
for a business object type that is not included in the SAP standard shipment (such as sales
transactions).
The enhancement spot for creating a new scenario carries the name CRMMEP_NEW_SCENARIO
(Definition in CRM Transaction SE18) and gets called from all generated function modules that
follow the naming convention /1CRMGC/MBE_001_[business object type name].
The enhancement spot to add processing logic before the execution of the standard
MapScenario of the respective business object is called CRMMEP_IN_SCENARIO (Definition in
CRM Transaction SE18) and gets called from all generated function modules that follow the
naming convention /1CRMGC/MBE_001_[business object type name].
This is the enhancement spot, in which a prefixing/merge logic would have to be implemented.
The enhancement spot to add processing logic after the execution of the standard MapScenario
of the respective business object is called CRMMEP_OUT_SCENARIO (Definition in CRM
Transaction SE18) and gets called from all generated function modules that follow the naming
convention /1CRMGC/MBE_001_[business object type name].
4 Related Notes
See composite Note 1084315 - Consulting: Information about the multiple backend scenario.