cancel
Showing results for 
Search instead for 
Did you mean: 

Automatic update of Key Mapping

Former Member
0 Kudos

Hello MDM Experts,

We have got a legacy system which is the master source of information. Now if my repository has 10 fields for a material,and if 6 fields are coming from the legacy system then the rest of the 4 fields are coming from R/3 systems.so the data has to align together for a material in SAP MDM.

In the legacy system for a material material number and RState(revision state) is the key where as for R/3 systems only the Material number is the key.There are also no global id's concept in this case.

We need to investigate the posibility to delete key mapping values from MDM records automatically. I wasn't able to find such a functionality in the standard Import manager functionality. The scenario:

In R3 side there is a record that is dynamic and always keeps the latest R State(revision state). So when we import that record into MDM we have material number and R State as a key mapping value (ROJ786501/1;R1A)

When the record in R/3 changes the state (R State is changed) it comes to mdm as a new record with a new key mapping (ROJ786501/1;R1B) and the record which had a key mapping (ROJ786501/1;R1A) do not exist in the R/3 anymore so we need to delete the old key mapping value from the old record in MDM. Is this possible to do in an automated way?

Would allocate points for helpful solutions

Best Regards,

CM

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

hi chinmoy,

if you are having remotekeys like this:

(ROJ786501/1;R1A).

when ever you are importing:

1. You can use partition functionality to split the remote key like

ROJ786501/1 , R1A two fields.

or

2. Select the field in the Import manager source hierarchy pane, and set the split delimiter. And then split into multiple fields.

AND you can map these fields.

When ever you are syndicating these records back to the legacy and R/3 systems.

you can combine these fields in the syndicator and you can syndicate those.

hope this may help you,

Regards,

Srinivas

Former Member
0 Kudos

Hi Chinmoy ,

If u are getting these values in 2 different fileds viz mat.no in one & version/state in other use partision for remote system key mapping will be updated as desired.

Thanks,

Anand K

michael_theis
Active Contributor
0 Kudos

Hi CM,

you could try this using a different matching field than the Remote Key when you import the data. Check if you could update the key mapping information this way. But I'm not sure, if this works.

I'm wondering, why you are using the complete information (Mat. Nr. + RState) as key information. Is this really necessary? Why don't you use the Mat. Nr. as key only and keep the RState information as a look up in MDM? This would change the settings in a way, that the remote key is always stable and only the status information changes in MDM...

BR Michael

Former Member
0 Kudos

Hi Michael,

Thanks for replying. I am also thinking the same as you suggested.

But the material number and Rstate is the key for the legacy system which is the Master source.

Best Regards,

CM

Edited by: chinmoy mohanty on Feb 6, 2008 5:48 PM

michael_theis
Active Contributor
0 Kudos

Hi CM,

you mentioned in your first post, that the key in the legacy system always looks like <MaterialNumber>;<RState>. If this is always the case, you could do the following:

To import data into MDM, you could split the incoming field in two new ones using Import Manager. Right click on the field in the source pane and choose the splitting option. Use the ; as delimiter. Map the new Material Number field to the remote key, the new RState field to the corresponding look up.

If you send data back to the legacy system, you can use the syndicator to combine both values into a single field.

BR Michael

Former Member
0 Kudos

Hello Michael,

The material number and the RState in the legacy system are two different fields and RState is the Lookup field as of now. But the combination of both is the key in the legacy system.

The issue is in the R/3, like there are some material which do not have the Rstate in the RState field but in the basic

data text for the material there is the Rstate mentioned.And there are few materials where this Rstate is not mentioned even.And in the R/3 side Material number is the key.But We can customize the Idocs by putting one more segement for RState and populate the RState field by pulling the data from the basic data text and.So when there is no RState for a particular material then it would be a NULL and in PI we can replace it by using a '/' or something else.

Now suppose i have a material ROK12456/1 and RSTATE as Z1A and have imported it to the MDM. Now if the RSTATE for

ROK12456/1 changes to Z2A and in R3 always keeps the latest R State(revision state). So when we import that record into MDM we have material number and R State as a key mapping value (ROK12456/1;Z1A) When the record in R/3 changes the state (R State is changed) it comes to mdm as a new record with a new key mapping (ROK12456/1;Z2A) and the record which had a key mapping (ROK12456/1/1;R1A) do not exist in the R/3 anymore so we need to delete the old key mapping value from the old record in MDM. Is this possible to have this type of functionality and if yes then can we do in an automated way?

Best Regards,

CM

Edited by: chinmoy mohanty on Feb 7, 2008 10:50 AM

Edited by: chinmoy mohanty on Feb 7, 2008 11:18 AM

michael_theis
Active Contributor
0 Kudos

Hi CM,

I'm sorry, but I still don't understand your issue...

Let's have a look at the data flow between R/3 and MDM.

- R/3 has the material number as key field

- R/3 uses the RState as look up, you distribute it within an extra IDoc field, furthermore R/3 keeps always the latest RState information

-> This means for MDM that using the material number as remote key is fully sufficient. Why? You can model the RState information as look up in MDM as well. If you change the RState information in R/3, send the data to MDM, Import Manager is able to find the correct record that should be updated using the material number as remote key. The IM can update the RState information to the current value comming from R/3. Result: one updated record that has the current RState information in MDM.

An additional question: how many remote systems have you defined in MDM console? Have you defined both your R/3 and your Legacy system? If yes, you are able to store independent remote keys for both systems for one record. Meaning Record A could have the key ROK12456/1 for R/3 and key ROK12456/1;Z1A for your legacy system.

Anyways, if you really want to change the remote key using the Import Manager, you have to define an Import Map that does not use the remote key as matching field, but something else (e.g. a name) and then check, if IM is able to identify the correct record and to update the remote key. If this works, you could use the import server for an automatic update...

BR Michael

Former Member
0 Kudos

Hello Michael.

I am sorry for the fact that i am unable to write the issue properly.

Actually requirement is like the material ROK12456/1;Z1A is already maintained in MDM from R/3. And suppose Rstate for the Material ROK12456/1;Z1A changes from Z1A to Z2A changes.With this change it is a new material with RState Z2A in R/3. And Z2A is not loaded to the Rstate lookup table. For this i need to maintain RState as Lookup Multivalued.

And again i need to update the lookup table with the RState

Z2A. And further more i need to maintain only the Material Number as key for both the legacy system and the R/3 systems. Please correct me if i understood it right.

Best Regards,

CM