How do you configure the connection to MDM from ABAP?
All Configuration is done from Transaction Code MDMAPIC and is broken into 5 main sections:
- MDM Repositories
- MDM Server Connections
- MDM DBMS Hosts
- ABAP Implementation for MDM Version Support
- MDM API Trace Configuration
All access via MDM4A is always done for a particular repository. The class based API is instantiated for a particular repository. You can not switch to a different repository within an instance. You must create a separate instance to access a different repository.
In all calls to the function module based API, the repository must be passed in through the mandatory parameter IV_LOG_OBJECT_NAME. Therefore all the configuration in MDMAPIC really revolves around the repository as its central object. Although we will create Server and Database configuration entries it is the Repository entry that drives all configuration through the API.
Server Configuration
First define the TCP/IP communication settings for connection to the MDM Server. Then enter the Server Hostname and the Port for communications. Typically the MDM server runs on Port 20005. The name in the MDM Connection field is arbitrary and only know to the ABAP side of the interface.
Be careful when defining the host name for systems that may have more than one hostname alias. During the connection to the repository via MDM4A, a list of all repositories and their hostname according to the MDM Server will be retrieved. The local customizing will be checked against this list. If the hostnames do not match, then the connection will be rejected. Therefore the use of IP addresses for the hostname is technically possible, but will always lead to a configuration mismatch and rejection.
DBMS Configuration
Repositories may reside on a DBMS that is a different physical system than the MDM server itself, therefore it needs its own configuration entry. The Drop Down Box for DB Type will show all support DBMS types. The name in the MDM DBMS field is arbitrary and only know to ABAP, much like the server name field in the Server Configuration.
ABAP Implementation for MDM Version
Different releases of SAP NetWeaver MDM may require technical differences in the Low Level Provider Class. This configuration will allow you to assign a provider class to a set of repository configuration settings. You must select a class that is derived from the Abstract class CL_MDM_ABSTRACT_PROVIDER. The class provided for SP04 is CL_MDM_PROVIDER_SP04_PL00.
Remember as a developer you should only program against the Generic API and not this lower level provider framework. Otherwise incompatible changes may be introduced by SAP during version changes that break your application coding. The Generic API will use this configuration in order to call the correct logic for the version of MDM that it must connect with.
MDM Repository
We tie all our config. together by specifying for a repository what server, DBMS, and Provider it should use. The Object name is arbitrary and only know to ABAP - although it is used as the key to read all the configuration. The MDM Repository must be the real repository name as it is displayed from the MDM Console.