I have some questions regarding automatic key generation and Calculate fields.
We want to store product data in an MDM repository. This data comes from an ECC 6.0 system. In the future, we want MDM to be the leading system - which means that product data will only be created directly in MDM and distributed to different connected systems afterwards.
The Product Number is a very important information for our product managers. The process today is that a product manager creates a new product and he can use the product number right away after he filled in all required fields. We would need a similar functionality in the future as well.
This leads us to an important question:
How can we make MDM create a number which is not already in use by any existing record during the creation of a new product?
We already evaluated several approaches:
1) Auto ID field
-> can not be used since is just increments, starting at 0. But we neet dedicated number ranges due to existing products & product numbers
-> Also, the IDs are visible only after the record is created, not for new ones already.
2) Calculated fields
-> It does not seem possible to tell MDM to choose a value from a predefined range.
-> Also, the calculated values are visible only after the record is created, not for new ones already.
3) Key Mapping & Key Generation
-> Seems to be only wey to create numbers within ranges. But:
--> Numbers are only created when the data is exported through SyndicationManager and not during creation.
--> Created Numbers are not easily accessible/visible in DataManager. The user always has to go to "Edit Keymapping" through context menu. This is not an option for such important data.
An idea therefore could be to automatically export all new records in short intervals so that the numbers are created. ==> Bad Workaround!
Also, we could produce a visible calculated field for the product number but we did not yet find out how to access the remote system information so that we can use these values...
My question to the MDM community and SAP therefore is: does anyone have an idea how to solve this problem? Maybe it's simple and we just missed the info in the documentation?
Thank you very much for your help!