I'm populating the XI value mapping cache from some tables in the R/3 system. I've built a general purpose utility to enable me to build the value mappings, and I'm using the ValueMappingReplication interface to get the data into the cahce. This all works well.
The value mapping interface allows the following operations:
Insert - needs all fields (context, GUID, source agency scheme and value, dest agency source and value)
Delete - needs all fields
Delete group - needs context and GUID
Delete context - needs context
Delete context generic - Allows effectively a wild card on the context.
The problem is the administration of the value mapping data. The data in the cache is keyed on the GUID that I pass into the XI system. This means that I'm storing the GUID in R/3, as it's the only way I have to manipulate individual mapping table entries.This is fine, as long as everything remains in step. However, once things get out of step, the only solution is to delete the whole context and refresh every mapping table in the context.
What I need to close the loop is a way to interrogate the XI cache, to determine the GUID and the keys of the existing entries to confirm that what R/3 believes has been populated actually has been. Is there any way to extract this information, accessible to a ABAP develoment in R/3? (ie, using the RWB is not an option).
Any thoughts welcome
Have you considered looking at the functions within the XI ABAP system to assist you (which doesn't involve the GUIID)?
i.e. Function Group SKMP: Functions:
These seem to have the required functionality you need so you don't need to do anything funky with the JAVA stack.
Alternatively, someone would need to reverse engineer the JAVA libraries and find a BAPI equivalent library to access the data which is highly unlikely though it would be great if someone from SAP would open up this possibility with a nice stable JAVA interface. Then you could access this library from within a JAVA mapping or similar (still pretty dangerous in my mind).