How to Copy HANA CompositeProviders
SAP BW 7.x SP8 has added more capability into the new type of CompositeProviders (loosely called HANA CompositeProviders). Hence, we’re seeing these type of CompositeProviders getting used more frequently and being preferred over MultiProviders. Unfortunately, at least in SP8, there’s no standard way to copy these type of CompositeProviders. I have written a program to fill this gap and this blog post contains a copy of that program. The program allows a user to specify the CompositeProvider to be copied, the InfoArea into which the new CompositeProvider will be placed, and the name of new CompositeProvider. The selection screen looks like this:
The program works by invoking the underlying ABAP classes of a HANA CompositeProvider namely: CL_RSO_HCPR and CL_RSO_HCPR_VERSION. The underlying tables that store the definition of a CompositeProvider is modeled a bit differently than the tables for the old BW objects (e.g. DSO, InfoCube). In particular, an XML representation of the object is now stored in table. For CompositeProviders, the main configuration table is RSOHCPR. The field XMLUI of this table contains the XML definition of a CompositeProvider. Hence, a good deal of the code in the attached program is for manipulating the XML string to change the name of the CompositeProvider and its InfoArea.