MDM COM API Installation
Hi All,
How can we install MDM COM API on the server. I mean what are the requirements.
I have to run MDM UOM manager for which it is required.
Thanks
Devinderpal Yadav
Hi,
first of all you should consider installing the COM API and the UOM Manager on a client machine as it is a client software.
1. Download COM API from service marketplace
2. Copy the installer to the according server / desktop pc
3. Start installation
Prerequsite:
Runs only on windows platforms (as a matter of course due to the fact that it is a COM lib).
Regards
Andreas
Similar Messages
-
MDM com API: Retriving Attribute priority in C++
Has anyone been able to retrive attribute priority using C++ in MDM 5.5sp3? We're in the process of upgrading from mdme4 to 5.5sp3 and the code that has worked for us in the past is failing to return the priority value:
unsigned char ucPriority;
ucPriority = a2iAttribute->Priority;
(Where a2iAttributre is a valid IAttribute object)
Is now always returning a value of 0 irregardless of the true value of the priority.
When we access the priority in either VB 6.0 and c# (.net 1.1) it works fine.
We're using build 5.0.28.17 from Jan 17th, 2006.
Any ideas?
Thanks,
-glennIt turns out this problem occured only when we tried accessing an attribute's priority via icatalog.GetLimitedAttributes.
Many thanks to Nick Luu and Stanley Levin at SAP for their help in narrowing down on the exact problem and getting it fixed in time for the release of mdm 5.5 SP3 Hotfix 5 on 8-11. -
How to retrieve the data from MDM hierarchy table using MDM Java API
Hi,
I had a hierarchy table in MDM. This table had some column say x. I want to retrieve the values of this x column and need to show them in a drop down using MDM Java API.
Can anyone help me to solve this?
Regards
VallabhaneniHi,
Here is your code...
TableId Hier_TId = repository_schema.getTableId(<hierarchy table id>);
java.util.List list = new ArrayList();
ResultDefinition Supporting_result_dfn = null;
FieldProperties[] Hier_Field_props =rep_schema.getTableSchema(Hier_TId).getFields();
LookupFieldProperties lookup_field = null;
TableSchema lookupTableSchema = null;
FieldId[] lookupFieldIDs = null;
for (int i = 0, j = Hier_Field_props.length; i < j; i++) {
if (Hier_Field_props<i>.isLookup()) {
lookup_field = (LookupFieldProperties) Hier_Field_props<i>;
lookupTableSchema =repository_schema.getTableSchema(lookup_field.getLookupTableId());
lookupFieldIDs = lookupTableSchema.getFieldIds();
Supporting_result_dfn = new ResultDefinition(lookup_field.getLookupTableId());
Supporting_result_dfn.setSelectFields(lookupFieldIDs);
list.add(Supporting_result_dfn);
com.sap.mdm.search.Search hier_search =new com.sap.mdm.search.Search(Hier_TId);
ResultDefinition Hier_Resultdfn = new ResultDefinition(Hier_TId);
Hier_Resultdfn.setSelectFields(rep_schema.getTableSchema(Hier_TId).getDisplayFieldIds());
ResultDefinition[] supportingResultDefinitions =
(ResultDefinition[])list.toArray(new ResultDefinition [ list.size() ]);
RetrieveLimitedHierTreeCommand retrieve_Hier_tree_cmd =
new RetrieveLimitedHierTreeCommand(conn_acc);
retrieve_Hier_tree_cmd.setResultDefinition(Hier_Resultdfn);
retrieve_Hier_tree_cmd.setSession(Auth_User_session_cmd.getSession());
retrieve_Hier_tree_cmd.setSearch(hier_search);
retrieve_Hier_tree_cmd.setSupportingResultDefinitions(supportingResultDefinitions);
try {
retrieve_Hier_tree_cmd.execute();
} catch (CommandException e5) {
// TODO Auto-generated catch block
e5.printStackTrace();
HierNode Hier_Node = retrieve_Hier_tree_cmd.getTree();
print(Hier_Node,1);
//method print()
static private void print(HierNode node, int level) {
if (!node.isRoot()) {
for (int i = 0, j = level; i < j; i++) {
System.out.print("\t");
System.out.println(node.getDisplayValue());
HierNode[] children = node.getChildren();
if (children != null) {
level++;
for (int i = 0, j = children.length; i < j; i++) {
print(children<i>, level);
//end method print()
Best regards,
Arun prabhu S
Edited by: Arun Prabhu Sivakumar on Jul 7, 2008 12:19 PM -
MDM Java API (Creation of table)
Hi,
can anyone help me for creation of tables in repository using MDM java API .
Can u Provide sample code for this.
Edited by: Srikanth Josyula on Jun 26, 2008 8:52 AMHi Srikanth,
Check with this code.It may be useful.
createflattable.java
Created on June 25, 2008, 5:08 PM
To change this template, choose Tools | Options and locate the template under
the Source Creation and Management node. Right-click the template and choose
Open. You can then make changes to the template in the Source Editor.
package tabletype;
import com.sap.mdm.commands.AuthenticateRepositorySessionCommand;
import com.sap.mdm.commands.CommandException;
import com.sap.mdm.commands.CreateRepositorySessionCommand;
import com.sap.mdm.commands.GetRepositoryRegionListCommand;
import com.sap.mdm.data.MultilingualString;
import com.sap.mdm.data.RegionProperties;
import com.sap.mdm.data.RegionalString;
import com.sap.mdm.net.ConnectionException;
import com.sap.mdm.net.ConnectionPool;
import com.sap.mdm.net.ConnectionPoolFactory;
import com.sap.mdm.schema.TableProperties;
import com.sap.mdm.schema.commands.CreateTableCommand;
import com.sap.mdm.schema.commands.GetFieldListCommand;
import com.sap.mdm.schema.commands.GetTableListCommand;
import com.sap.*;
import com.sap.mdm.server.DBMSType;
import com.sap.mdm.server.RepositoryIdentifier;
import java.util.Locale;
public class createflattable {
/** Creates a new instance of createflattable */
public createflattable() {
private static MultilingualString createMultilingualString(RegionProperties[] regionPropertiesList, String baseString)
MultilingualString mlString = new MultilingualString();
for (int i = 0; i < regionPropertiesList.length; i++)
Locale locale = regionPropertiesList<i>.getLocale();
//Locale locale = regionPropertiesList<i>.getLocale();
String regionCode = regionPropertiesList<i>.getRegionCode();
String string = baseString + "_" + locale.getLanguage() + "_" + locale.getCountry();
RegionalString regionalstring = new RegionalString(string, regionCode);
mlString.set(regionalstring);
return mlString;
private static TableProperties createFlatTable(RegionProperties[] regionPropertiesList)
//MultilingualString tableName = createMultilingualString(regionPropertiesList, "NewTable" + System.currentTimeMillis());
MultilingualString tableName = createMultilingualString(regionPropertiesList, "first"+System.currentTimeMillis());
System.out.println("table is" +tableName);
TableProperties table = new TableProperties(TableProperties.FLAT);
table.setName(tableName);
table.setCode("NewCode" + System.currentTimeMillis());
table.setKeyMappable(true);
table.setDescription("");
return table;
public static void main(String[] args) {
// System Name
String tag = "";
ConnectionPool connections = null;
try {
connections = ConnectionPoolFactory.getInstance(tag);
catch (ConnectionException e)
e.printStackTrace();
return;
//////////////// specify the repository to use
//RepositoryName
String repositoryName = "";
//DataBase Name
String dbmsName = "";
RepositoryIdentifier reposId = new RepositoryIdentifier(repositoryName, dbmsName, DBMSType.MS_SQL);
/////// create a repository session
CreateRepositorySessionCommand sessionCommand = new CreateRepositorySessionCommand(connections);
sessionCommand.setRepositoryIdentifier(reposId);
try {
sessionCommand.execute();
catch (CommandException e) {
e.printStackTrace();
return;
System.out.println("Currently connected to "+reposId);
String sessionId = sessionCommand.getRepositorySession();
/////////// authenticate the repository session
String userName = "";
String userPassword = "";
AuthenticateRepositorySessionCommand authCommand = new AuthenticateRepositorySessionCommand(connections);
authCommand.setSession(sessionId);
authCommand.setUserName(userName);
authCommand.setUserPassword(userPassword);
try {
authCommand.execute();
catch (CommandException e) {
e.printStackTrace();
return;
//////////////////// retrieve the list of tables
GetTableListCommand tableListCommand = new GetTableListCommand(connections);
tableListCommand.setSession(sessionId);
try {
tableListCommand.execute();
catch (CommandException e) {
e.printStackTrace();
return;
// get change stamp
// this is required when we make any kind of changes to the repository
int changeStamp = tableListCommand.getChangeStamp();
//////get repository regionlist
//A command for retrieving the list of regions supported by the repository.
// retrieve the available regions (languages) for the repository
// we need this to set up the table name for each region
GetRepositoryRegionListCommand gm = new GetRepositoryRegionListCommand(connections);
gm.setRepositoryIdentifier(reposId);
try {
gm.execute();
catch (CommandException e) {
e.printStackTrace();
return;
// RegionProperties[] rs = gm.getRegions();
RegionProperties[] regionPropertiesList = gm.getRegions();
TableProperties newtable = createFlatTable(regionPropertiesList);
CreateTableCommand c = new CreateTableCommand (connections);
c.setSession(sessionId);
c.setTable(newtable);
c.setInChangeStamp(changeStamp);
try {
c.execute();
System.out.println("sdf");
catch (CommandException e) {
e.printStackTrace();
return; -
MDM ABAP API - Language information not valid for repository
Dear all,
We're programming an interface in SAP R/3 to MDM catalog through 'MDM ABAP API's'. Automatically, it creates an RFC connection to MMD, but we're getting the following connection errorwhen executing the API:
E MDM_ABAP_API 078 Language information ENG US USA not valid for MDM repository XXXYYYZZZ*.
*where XXXYYYZZZ is the repository name.
W'e've established the connection in R/3 through transaction MDMAPIC and we've created the same user in R/3 and MDM Console.
This is the code written on the program where we are defining the language (ENG), country (US) and region (USA).
*maintain logon language information
ls_repository_language-language = 'ENG'.
ls_repository_language-country = 'US'.
**no region information needed here
ls_repository_language-region = 'USA'.
How can I see the repository language definition?
Which are the correct codes to be used for language 'English', Country 'United States' and Region 'USA'? And for other countries, like spanish language, country Spain and Region ¿spain?
In fact, we copied this code from website:
http://help.sap.com/saphelp_nwmdm71/helpdata/en/44/93ad8931381053e10000000a422035/frameset.htm
Maybe the problem is that any RFC configuration is missing, and it has to be done in transaction SM59?
Thanks for your feecback,
Carlos Santamaría.The problem is now solved.
The correct languague information codes for Language Spanish, Country Spain and Region, are as follows:
Language: 'spa'
Country: 'ES'
Region: '___'
It is important to respect the CAPS, otherwise it doesn't work.
Regards,
Carlos Santamaría. -
How to create relationship between two records using MDM Java APIs
Hi,
I am trying to create relationship between two records using Java Apis. Please guide me in doing this.
Regards,
NirajHi Niraj,
There is ModifyRelationshipsCommand:
http://help.sap.com/javadocs/MDM/SP06/com/sap/mdm/data/commands/ModifyRelationshipsCommand.html
Retrieve Relationship command:
http://help.sap.com/javadocs/MDM/current/com/sap/mdm/schema/commands/GetRelationshipListCommand.html
Also, please refer similar thread, MDM Java API and relationships.
Hope it helps..
Regards,
Mandeep Saini -
How to use MDM ABAP API?
Hi Guys,
I want to use ABAP API for manipulating MDM records(EX Adding two field values and assign into another field value).
Can anybody guide me step by step process?
Best Regards
Devaraj PKHi Devraj,
Please go through this pdf:
1. How To identify identical master data records using SAP MDM 5.5 ABAP APIs
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e060251e-b58d-2910-02a2-c9a1d60d9116
2. MDM ABAP API
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/media/uuid/00c49ffb-e5e5-2910-73ba-c85af1da5b0a
http://help.sap.com/saphelp_mdm550/helpdata/en/44/93aa6831381053e10000000a422035/content.htm
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/connectivity-ABAP+API&
Pls rewrds if found helpful.
BR,
Alok Sharma -
MDM ABAP API AND BUSINESS WORKFLOWS...
Hi All,
In the following vedio blog, SAP saying SAP buisiness workflows & MDM ABAP API combination for certain scenarios.
http://www.sdn.sap.com/irj/scn/shop?rid=/media/uuid/40923f37-3483-2c10-5b87-967a607fa3b2
Anyone implemented this approach?Hi.
you can utilize example program provide by SAP, follow this path which may help you
http://help.sap.com/saphelp_nwmdm71/helpdata/en/47/5fd3f2cbd75518e10000000a421138/frameset.htm
Thanks,
Jignesh Patel -
How to start to work on MDM JAVA API by using webdynpro for java
Hi all
I have basic idea on MDM business package thru portal by using standard iViews.
now i am planning to work on MDM JAVA APIs by using Webdynpro for Java as UI.
1) can you please share the required documents on the same. how to start working on this by using MDM JAVA APIs in webdynpro for java
2) what are the JARs files are required and how to integrate those jar files into webdynpro for java application.
3) is there any SDN help on MDM JAVA API with webdynpro for java? . can you please send the link on the same.
4) can you please help by providing sample code on how to use JAVA APIs for retrieving,deleting,inserting and Updating the data in the database.
if anybody helps on the same then it is the great help to me.
points are always rewardable...
Regards
Suresh babuHi Suresh,
You can have the MDM JAVA API javadocs from the link
http://help.sap.com/javadocs/MDM/SP06P2/index.html
There you can see a package named com.sap.mdm.examples.The classes in it contains some examples using which you can start understanding the code.
You need to have MDM JAR files for it. And these JAR files to be used at build time can be added to the project thru :-
Right click on project-> properties->Java Build Path - > Add external JARs
At run time you can add them the reference in
Right click on project-> properties->web dynpro references->library reference.
Thanks
Namrata -
MDM ABAP API ISSUE ( server is getting down )
Hi Folks,
I am trying to retrieve matching results using MDM ABAP API.
I am spiting source and target records into lot of blocks dynamically
in program. I am getting output 2 to 3 times if i can run program
sequential after that server is getting down (before running program
i am completely going out and rerunning).After server bring's up
running couple of times and server getting down.
Please help me how can i solve this issue.
Thanks,
Anil.Hi Anil,
You can have a look at the below links can cross check the steps you have performed in establishing the connection correctly:
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/media/uuid/00c49ffb-e5e5-2910-73ba-c85af1da5b0a
ABAP APIs: Error "The connection is not trusted"
Comaptible ABAP APIs for MDM 5.5 SP6 Patch 1
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/tip%2b%2bMDM%2bABAP-API%2b%2bThings%2bto%2bRemember%2b(for%2bStarters)
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e060251e-b58d-2910-02a2-c9a1d60d9116
Hope It Helped
Thanks & Regards
Simona Pinto -
Deployment Issue with MDM Java API exposed as Webservice using EJBS
Hi Experts,
I am implementing MDM Java APIS in Stateless session bean.Exposed that bean as Webservice and using that webservice in
Webdynpro through Adaptive Webservice Model.
I am facing following issue:
Webservice works fine after deployment,after some number of execution webservice stops working and gives exception.After
Redeployment of the Webservice, it starts working again works fine some number of execution.
I am Using new MDMJava API.
MDM Server Details: MDM 5.5 SP06
I am using following code for connetion
//////////////*************Getting Connection************///////
ConnectionPool pool = null;
String sessionId = null;
try {
pool = ConnectionPoolFactory.getInstance("Server Ip");
} catch (ConnectionException e1) {
System.out.println(e1.getMessage());
//////////////*************Repository Session************///////
CreateRepositorySessionCommand repSeession =
new CreateRepositorySessionCommand(p_pool);
repSeession.setRepositoryIdentifier(p_repId);
try {
repSeession.execute();
} catch (CommandException e2) {
System.out.println(e2.getMessage().toString());
String repIID = repSeession.getRepositorySession();
// Authenticate Repository
AuthenticateRepositorySessionCommand autRepSeesion =
new AuthenticateRepositorySessionCommand(p_pool);
try {
autRepSeesion.setSession(repSeession.getRepositorySession());
autRepSeesion.setUserName(p_user);
autRepSeesion.setUserPassword(p_Password);
autRepSeesion.execute();
} catch (CommandException e3) {
System.out.println(
"RepSession Seesion" + e3.getMessage().toString());
return autRepSeesion.getSession();
//////////////*************user Session************///////
GetRepositoryRegionListCommand regionListCommand =
new GetRepositoryRegionListCommand(p_pool);
regionListCommand.setRepositoryIdentifier(p_repId);
try {
regionListCommand.execute();
} catch (CommandException e) {
System.out.println(e.getMessage().toString());
RegionProperties[] regions = regionListCommand.getRegions();
// create a user session
CreateUserSessionCommand UsersessionCommand =
new CreateUserSessionCommand(p_pool);
UsersessionCommand.setRepositoryIdentifier(p_repId);
UsersessionCommand.setDataRegion(regions[0]);
// use the first region
try {
UsersessionCommand.execute();
} catch (CommandException e) {
System.out.println("UserSession" + e.getMessage().toString());
String UsersessionId2 = UsersessionCommand.getUserSession();
AuthenticateUserSessionCommand authUserCommand =
new AuthenticateUserSessionCommand(p_pool);
authUserCommand.setSession(UsersessionCommand.getUserSession());
authUserCommand.setUserName(p_userId);
authUserCommand.setUserPassword(p_password);
try {
authUserCommand.execute();
} catch (CommandException e) {
System.out.println("User Seesion" + e.getMessage().toString());
return authUserCommand.getSession();
//////////////*************Destroy Session************///////
DestroySessionCommand destroySessionCommand =
new DestroySessionCommand(p_pool);
destroySessionCommand.setSession(p_repsession);
try {
destroySessionCommand.execute();
} catch (CommandException e) {
e.printStackTrace();
destroySessionCommand.setSession(p_Uesrsession);
try {
destroySessionCommand.execute();
} catch (CommandException e) {
e.printStackTrace();
Do we need to relase the connection pool object also?
Can anyone help me with the code how that can be achived?
Please Reply if anyone has come accross similar issue or know what can be the solution.
Thanks in Advance.
Regards Shruti
Edited by: Shruti Shah on Dec 18, 2008 12:52 PMHi Nitin,
Thanks for the prompt Response.
Even I am guessing that its becose of Connection pool.
I am destroying session as follows
DestroySessionCommand destroySessionCommand =
new DestroySessionCommand(p_pool);
destroySessionCommand.setSession(p_repsession);
try {
destroySessionCommand.execute();
} catch (CommandException e) {
e.printStackTrace();
destroySessionCommand.setSession(p_Uesrsession);
try {
destroySessionCommand.execute();
} catch (CommandException e) {
e.printStackTrace();
But I didnot find any method by which i can close realsse connection from connection pool.
It would be great if you can help me how close or realese those connection.In MDM Console i am able to see those sessions even after destroying them.
Regards Shruti. -
MDM 7.1 installation / system copy
Hi,
New to MDM administration here so please help. I have a MDM 7.1 Production system running on windows and ms sql. Now i need to create a new QA system as a copy of this prod system. I am confused as to whether i should use the archive/unarchive procedure to move the repository content or shall i use the SQL backup/restore to copy the DB. I have about 8-9 small DBs in my MDM system -- around 1 GB each and I have one big DB around 200 GB that I believe has all the master data.
Shall i first copy the DBs and then do MDM installation or shall i only do a fresh install and then archive/unarchive the repositories ?? will archive/unarchive bring over all my data and configuration like connections to PI, ECC system etc ?
Also, i would like to know how to modify the connections etc in MDM to point to the correct QA systems after a system copy ?
Thanks,
BVHi Basis,
pls refer below links for MDM system copy,
Installation of SAP MDM system (Master Data Management)
https://help.sap.com/nwmdm
MDM 7.1 - Migration Server
MDM heterogeneous System copy
Regards
KN -
MDM 3.0 Installation - Business Package - License
Back ground:
We have completed the MDM 3.0 installation and now wanted to do installation related with EP. (Step 11 of section 2.5.1 in Master Guide for MDM 3.00).
During the process, we get an message like: "However this business package is in 'Restricted Shipment' status with message 'License required'.
Question:
Is it mandatory to have such License or is any other method available to download the same (some note etc.)?
- Rajesh MangrulkarHi,
you can access the download of the Business Package for MDM 3.0 60.1 here in SDN at https://www.sdn.sap.com/sdn/contentportfolio.sdn.
You must be signed in with your Service Marketplace user. If you hold the appropriate license, you will get a download link that will start the download.
If you do not hold the license or have not logged on with the Service Marketplace user id, you will see a 'License Required' instead.
In case you hold the required license and the link still does not show up, open a OSS message at XX-SER-RU with the problem description. -
How and where to install MDM Connector and MDM Java API
Hi all
I am installing MDM Server 5.5 and refering to Installation gude
MDM 5.5 SP06 installation guide (Document Version 1.1 December 10, 2007). While installing Development and Portal components , We have to install MDM Connector and MDM JAVA API. I want to know whether the file JAVAAPI<version>.sca file is to extracted on MDM Server or SRM Server ( Using SDM). Please let me know
Thanks in advance.
Vitthal prabhuHi Vitthal,
We have to install MDM Connector and MDM JAVA API.
All these sca files that u got along with the business content needs to be deployed onto Web Application Server (recommended WAS 7.0 ).
U can deploy these files with the help of SDM.
Hope dis solves ur problem.
Regards Tejas.............. -
Do any other guides about MDM Java API exist (except MDM_API_Tutorial and MDM 5.5 SP05 - Java API Migration Guide.pdf) ?
Especially MDM Search Java API interesting.Heii ,
For this please follow these links
http://help.sap.com/saphelp_mdm550/helpdata/en/45/0068570b0c0487e10000000a155369/frameset.htm
http://help.sap.com/saphelp_mdm550/helpdata/en/45/efdc5bb7b404a9e10000000a114a6b/frameset.htm
http://help.sap.com/saphelp_mdm550/helpdata/en/45/50b345af8e3be6e10000000a1553f7/frameset.htm
you may find this useful.
Please reward
Rgds
Deepak
Maybe you are looking for
-
Quick Question Macbook Pro 15.4"
Hi, Need some help with my mac what should i do??? THE mac IS AT THE MOMENT WORKING BUT UNFORTUNATELY SOMETIMES IT IS FAULTY (SCREEN TURNS BLACK AND NEEDS A RESTART) also WHEN IT SWITCHES TO THE AMD CHIP AS THERE IS A PROBLEM WITH THE GPU. What would
-
Transferring All Information From One iPod to Another
I have an iPod Touch 3G and I'm considering buying a 4G. Is there a way to transfer EVERYTHING from my current iPod to the new one? Thanks!
-
Using Smartsuite with a range of phones
I have two types of phone which I want to use with Nokia Smart Suite, I have several 6310i's which I regularly use with v 4.88 to download SMS messages etc. I now have a 6230i which is my everyday phone. I would like to use infra red and PC suite wit
-
Photoshop Elements 11 Silent install not that silent
Hi, After following the Silent Install Instructions here http://helpx.adobe.com/photoshop-elements/kb/silent-install-instructions-photoshop-element s-1.html it still is not fully silent. As mentioned in the KB article you need to create a application
-
Scared to ask... MW3 XBL Can't find games
I'm pretty sure this is a CoD issue, but I want to ask here anyways and see if anyone else is having a problem. I can not find any games in MW3, it just searches over and over. I have tried both uPNP and static mapping of ports; XBL says I have Open