Thursday, December 20, 2007

Prepare Your Data for Better Reporting with Start or Expert Routines in SAP NetWeaver 7.0

Learn how to use data normalization in SAP NetWeaver 7.0 to reduce, if not eliminate, reporting problems with data.


Key Concept

Normalization seeks to organize data in a database. The objective is to look at the incoming data and then create new tables and relationships between these tables to protect the data and eliminate redundancy and inconsistency. Data normalization follows a strict set of rules. Each rule can be referred to as a “normal form.” You can reduce data to first normal form or second normal form and so on depending on which set of rules has been satisfied. The first normal form requires that there be no multi-valued attributes and no repeating groups. A multi-valued attribute would contain more than one value for that field in each row.

A poor database design can cause problems related to redundancy, accuracy, consistency, and concurrency of your data because data does not always come in the form best suited for reporting. A data modeler needs to analyze the reporting requirements and modify the incoming data format accordingly.

You need to reduce data containing multi-valued attributes or repeating groups—which may come in via a DataStore object (formerly operational data store [ODS])—to first normal form. This ensures proper aggregation at the InfoCube level so you can analyze the data for the characteristic that represents the repeating group or is multi-valued.

In BI versions prior to SAP NetWeaver 7.0, you could normalize data to first normal form by either of two methods:

  • Write ABAP code and modify the records in the DATA_PACKAGE in the start routine
  • Implement the Return Tables option on all the key figures in the update rules

In SAP NetWeaver 7.0, you can bring the data into first normal form by two different methods:

  • Use ABAP code in the start routine and modify records in the SOURCE_PACKAGE
  • Write ABAP in the expert routine

The code in the start routine in the new versions follows the object-oriented ABAP syntax.

I’ll use an example business scenario to explain normalization and to create both routines. Then I’ll look at each option—using an expert routine or a start routine—and discuss why you might choose one routine over another.

No comments:

Blog Archive