In an Enterprise Data Warehousing context, InfoObjects often play an arbitrary double role: they are used for modeling the Data Warehouse Layer and multi-dimensional modeling the Reporting Layer. In my blog Introducing Data Warehouse InfoObjects – Part 1: Conceptual Overview I advised segregation of duties by introducing a dedicated, independent set of InfoObjects: Data Warehouse InfoObjects.
But how about those Reporting InfoObjects? Should we simply activate all the Business Content InfoObjects we need? Or do we have to introduce our own set of InfoObjects, customized and fit to the Business Users’ requirements? Or a combination of both? In this blog I would to like to present an alternative approach.
I created an ABAP program to generate Reporting InfoObjects based on Business Content. This blog series explains how to use the program. In Part 2 we will have a look at the Metadata Repository and Customizing. There are various administration settings which can be customized according to your needs. Finally, the authorization aspects are addressed.
The blog series consists of the following blogs in addition to this blog:
- Generating Reporting InfoObjects based on Business Content – Part 1: Introduction;
- Generating Reporting InfoObjects based on Business Content – Part 3: Optimizing Results.
The document Implementing Reporting InfoObjects based on Business Content provides detailed technical instructions on how to create the ABAP program and all related ABAP Workbench objects.
The Metadata Repository in the context of Reporting InfoObjects consists of a central table where the metadata related to the newly generated InfoObjects is registered during processing. The name of this table is YBWREPIOBJ.
Figure 1: Central Metadata Repository table
The program checks the Metadata Repository if an InfoObject already exists for the Business Content InfoObject. If yes, then it will proceed by skipping this InfoObject. Otherwise it will generate a new InfoObject that will be appended to the central Metadata Repository table and inserts the new InfoObjects into the appropriate InfoObject Catalog.
Similar to the RSADMIN table I created table YBWADMIN to be able to parameterize particular functionality. There are five parameters related to Reporting InfoObjects.
Figure 2: Administration settings
Parameter REPIOBJ_NAMESPACE allows you to define your own namespace in which all Reporting InfoObjects will be generated. The program is able to work with a “standard” customer namespace (i.e. A, B, …, Z) or a registered customer namespace (i.e. in the format /<ABC>/). In my example namespace R is used which means that all generated Reporting InfoObjects will start with the R.
You are able to define your own InfoObject Catalogs for the various Reporting InfoObjects. There are three parameters to specify those InfoObject Catalogs:
- REPIOBJ_CAT_CHA – InfoObject Catalog for Characteristics;
- REPIOBJ_CAT_UNI – InfoObject Catalog for Units;
- REPIOBJ_CAT_KYF – InfoObject Catalog for Key Figures.
Parameter REPIOBJ_INFOAREA enables you to specify an InfoArea in which the generated Template InfoProviders will be stored.
Please note that the InfoObject Catalogs and InfoArea must exist before the program can use them. This is normally a one-time action.
To be able to execute the program you need an authorization role which contains authorization object YBWREPIOBJ. Within the role you can restrict processing to particular Business Content InfoAreas.
I created two example roles. The first one grants the user maximum authorization, i.e. the user is able to execute the program for every Business Content InfoArea.
Figure 3: Authorization role with maximum authorization
The second example will limit the user’s authorization to only one InfoArea.
Figure 4: Authorization role with limited authorization
In this blog I discussed the Metadata Repository. It consists of a central table where all metadata is registered during generation of the Reporting InfoObjects. Furthermore I discussed the Customizing. We had a look at the various administration settings and the authorization aspects. In Generating Reporting InfoObjects based on Business Content – Part 3: Optimizing Results we will discuss several ways to optimize the results.