Data Warehouse InfoObjects can be defined as the data elements to populate the Data Warehouse layer of your Enterprise Data Warehouse. Please refer for a conceptual overview to my blog Introducing Data Warehouse InfoObjects – Part 1: Conceptual Overview. For SAP source systems it is advisable to take advantage of the structured and comprehensive ABAP Data Dictionary to generate these Data Warehouse InfoObjects. Please refer for more technical details to my blog Introducing Data Warehouse InfoObjects – Part 2: Technical Details.
I created an ABAP program to generate Data Warehouse InfoObjects for SAP source systems’ DataSources. This blog series explains how to use the program. In Part 1 we will have a look at the program, the application log, and the generated InfoObjects, Template DataStore Object (DSO) and Mapping Rules.
The blog series consists of the following blogs in addition to this blog:
- Generating Data Warehouse InfoObjects – Part 2: Metadata Repository;
- Generating Data Warehouse InfoObjects – Part 3: Customizing;
- Generating Data Warehouse InfoObjects – Part 4: Optimizing Results.
I published the following 3 documents with detailed technical instructions how to create the ABAP program and all related objects:
- Implementing Data Warehouse InfoObjects – Part 1: ABAP Dictionary Objects;
- Implementing Data Warehouse InfoObjects – Part 2: ABAP Programming & Other Objects;
- Implementing Data Warehouse InfoObjects – Part 3: ABAP Developments in SAP Source System.
Starting the Program
You can start the program by using t/code YIOBJ.
Figure 1: Selection Screen
Select a DataSource and Source System on the selection screen. You can use the F4 search help functionality. The program will check the input afterwards and gives an error message in case of any incorrect input. Press the Execute pushbutton to start processing.
Note that the program will check on authorization object YBWDWHIOBJ. Please make sure that an appropriate authorization role is assigned to your user-id. This will be explained in Part 3 of the blog series.
Analyzing the Application Log
As the last processing step the program will display an application log.
Figure 2: Application Log
The program collects all messages issued during processing and adds them to the application log. Here you can obtain an overview of all InfoObjects that have been generated as well as the Template DSO and the Mapping Rules. If applicable any error messages can be found here. The various processing blocks can be identified by the “Start of processing” and “End of processing” messages.
Note that you can always review previous application logs retrospectively via t/code SLG1.
Make sure to fill in appropriate selection criteria such as Object YBW , Sub Object YBWDWHIOBJ, date/time and user-id to narrow down the search results.
Figure 3: Analyze Application Log
The program analyzes the ABAP Data Dictionary objects of the DataSource. The processing order is as follows:
- Basic Characteristics;
- Characteristics with Reference;
- Key Figures.
The program checks the Metadata Repository if an InfoObject already exists for the respective domain or data element. If yes, then it will proceed by skipping this domain or data element. Otherwise it will generate a new InfoObject that will be appended to the respective Metadata Repository table and adds it to the appropriate InfoObject Catalog.
Figure 4: InfoObject Catalogs for Generated InfoObjects
Generated Template DSO
After the processing of the InfoObjects the program generates a so-called Template DSO.
Figure 5: Generated Template DSOs
This Template DSO acts as a container for all InfoObjects and can be used as a template for creating other objects such as DSOs and InfoSources.
Generated Mapping Rules
Last but not least, the program generates so-called Mapping Rules.
Figure 6: Generated Mapping Rules
The generated Mapping Rules can be reused by the Mapping Services’ ABAP building block which is used for dynamically mapping DataSource Fields with InfoObjects. Please refer to my blog Mapping Services – Inbound Mapping of DataSource Fields to InfoObjects for more information.
In this blog I introduced the ABAP program to generate Data Warehouse InfoObjects. We had a look at the program, the application log, and the generated InfoObjects, Template DSO and Mapping Rules. In Generating Data Warehouse InfoObjects – Part 2: Metadata Repository we will discuss the Metadata Repository. The customizing is subject of Generating Data Warehouse InfoObjects – Part 3: Customizing. Generating Data Warehouse InfoObjects – Part 4: Optimizing Results explains how to optimize the results.