on 08-09-2012 6:53 AM
Hi All,
Could anyone help me in understanding where can i find the Internal ID which is generated in MDM.If it is at database table which is the table name for the same.
Is internal ID visible in MDM repository?
We are evaluating a way to syndicate the internal ID for the record.Is it possible and if yes please help me in this?
Are there any documents or sapnotes regarding this Internal ID?
Helpful answers would be rewarded
Regards
Nitin
Hi Yasir,
Thank you for ur quick reply.
Do you have any idea about class/methods/database which can be used to retrieve Material records IDs.
Also, do you have any idea about how to know the name of the database table which contains master data records?
I need this as we need to see the record id's for a specific record kept at the database level.
Thanks & Regards,
SDN User
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Is the table you want to query a Main or Flat table in MDM?
Have a look at this sample code which searches for records in table PRODUCTS with an END_DATE after todays, and displays all of the RecordIds that are in the resultset.
//create search
Search search = new Search(tableId);
FieldSearchDimension fsd = new FieldSearchDimension(repoSchema.getFieldId(tableCode, "END_DATE"));
Calendar cal = Calendar.getInstance();
SearchConstraint sc = new DateTimeSearchConstraint(cal,DateTimeSearchConstraint.GREATER_THAN);
SearchParameter sp = new SearchParameter(fsd,sc);
search.addSearchItem(sp);
try{
RetrieveLimitedRecordsCommand retCommand= new RetrieveLimitedRecordsCommand
(userSessionContext);
retCommand.setSearch(search);
retCommand.setResultDefinition(new ResultDefinition(tableId));
retCommand.execute();
RecordResultSet recordsResult = retCommand.getRecords();
Record[] records = recordsResult.getRecords();
for(Record rec : records){
System.out.println("rec idValue:"+rec.getId().getIdValue());
}
} catch (ConnectionException e){
wdComponentAPI.getMessageManager().reportException("conn exception");
e.printStackTrace();
} catch (CommandException e) {
wdComponentAPI.getMessageManager().reportException("command exception");
e.printStackTrace();
}
We are using main as well as image tables for which we need the database table name.We are using SAL server 2008 as MDM Database.
We have record Ids stored at database level and not in MDM DataManager.
We need these record Id's for the records to be kept in MDM tables.
So,we are looking for an option thru which we can populate these record Id in an MDM field.
Regards,
SDN
Hi Everyone,
We are also looking for the same requirement.
I have used the tooltip method to see the RecordId's in MDM but we want them to be extracted thru syndication map.
Is it possible to use java api's to extract record Id's from DataBase and populate it into a Newly created field in MDM ?
If someone help me out with this?
Regards,
SDN
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Using the APIs, if you use a retrieve class like RetrieveLimitedRecordsCommand and specify a search criteria, then once you execute the command, the resultset will contain Records from which you can get the RecordId.
Yassir
Hello Guys,
Though this post is of 2012, Still replying for the readers of this post.
If you want Internal Record id from a record.
Create a field of type Auto ID in the table.
Auto ID field shows MDM Internal ID.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I know its another year later but I had to say that Shailesh's post is incorrect in MDM 7.1.
A field that is set to type Auto ID always increments by +1 and never revisits an old Auto ID even if you deleted all the records.
Internal ID on the other hand takes the first available internal ID in that table, so if you delete a record, its internal ID becomes available for use again.
If you create records which have an Auto ID field from scratch and never delete any records, then your Auto ID and internal ID will be in sync but otherwise not.
Yassir
InternalID can be get mostly from Java API call to Record object by method getId().
It is newer visible from MDM Data Manager
It is rarely visible from some MDM iViews on portal, as a sample for event mapping.
All records within database under MDM tables has a key which is a InternalID.
Only by opening DataBase on which you created MDM repository you can see InternalID.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
If i go one step forward and look in database table i can find these internal ID there corresponding to the material number.
But i want to use extract ID's for the combination of 3 fields which are not there in single table as all know.
Is there a solution for this.
Nitin
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Nitin,
If you just want to see the internal id for a particular record you can follow the document which Prasad has suggested.It will just give you information of id when you place the curson on a particular record.
But if you want to syndicate the record with internal ID from MDM there is not direct method you have to write an API to retrieve records and when you retrieve you will get mdmkeys (i.e Internal ID) which you can extract in an excel.
Regards,
Neethu Joy
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello,
Would you please help us understand, the business scenario to use MDM Internal ID.
Any example would be useful, and a apt solution could be suggested.
As per my knowledge, the MDM Internal Id is not available for mapping, you would have to run a assignment to assign the MDM Internal ID, to a custom Z field and use theZfield in syndicator, as per your business scenario.
Regards,
Abhishek.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Nitin,
Once you done the setting suggested in the document, you will be able to see the MDM Internal ID in Data Manager.
Once the MDM Internal ID is displayed in Data Manager, check if the same is available in Syndicator, if yes then create a Z field and just assign the MDM Internal ID to this Z field and map that in the syndicator map.
and if the in the syndicator the field is not displaying, only option is to go with JAVA API's, and access the MDM Database, directly
Regards,
Abhishek
Hi Abhishek,
Please let me know to which document are you refererring to.
If you are referring to one which Prasad has given then that link is useful to display the ID as we get the matching score in matching mode.We cannot create a field in model to capture those directly in repository
Please reply back if my understanding is correct
Nitin
Hello,
Yes i was referring to the document mentioned by Prasad,
I followed but it does not service the purpose.
Only option is to use the JAVA API and access the database directly and retrieve the value for MDM Internal ID.
One option you may explore is to use calculated field, try to develop the same logic in the calculated field as per the MDM Internal ID.
Regards,
Abhishek
Hello Nitin,
Please go through the below link which might help
Internal ID's can be seen by following the procedure as described in the above link and then by placing the cursor on the record.
Rgds,
Prasad
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
I hope your asking about MDM auto id. You can find out this field in console with field type 'Auto id'. It is visible in MDM repository.
Yes, you can syndicate this id. It is available in syndicator mapping. You can map this MDM id with target field as per your business requirement.
Regards,
Gaurang
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
93 | |
10 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.