SAP on IBM i – Update week 40, 2016: Incorrect Compression of Flat Inventory Cubes
When SAP invented HANA Optimized InfoCubes, the logic by which Inventory Cubes (InfoCubes containing non-cumulative Keyfigures) are compressed was changed. In fact, there are three different modes of how markers are updated during compression (for more details, see SAP Note 1548125 – Interesting facts about Inventory Cubes, chapter [VII] HANA Optimized Inventory Cubes). Flat Inventory Cubes on database platforms other than SAP HANA support only the newest of these methods.
Due to a program error, flat Inventory Cubes on DB2 for IBM i were compressed using the wrong method. This causes two problems:
- Queries on such a compressed InfoCube return wrong results, because the data is interpreted as if it was compressed using the correct method.
- When converting a flat Inventory Cube to the classic Star Schema, wrongly compressed records are ignored and get lost during the transformation.
SAP Note 2367703 – IBM i: Condensing flat InfoCubes: Wrong Ncum-Handling and other corrections fixes these errors. If you use flat Inventory Cubes, we strongly recommend applying this SAP Note to your BW system.
With the correction in place, flat Inventory Cubes are compressed using the proper method. InfoCubes with wrongly compressed records are automatically repaired at the beginning of the first compression run after the implementation of the SAP Note.
The SAP Note also delivers report RSDD_SWITCH_NCUM_HANDLING_DB4, which can be used to repair the compression method of a flat Inventory Cube at any convenient time before the next compression starts.
During the conversion of flat Inventory Cubes to the classic Star Schema, wrongly compressed records are taken into account and are converted correctly. You do not need to repair the compression method prior to the conversion to the Star Schema; this is done automatically during the transformation.
For an overview of all flat Inventory Cubes that need to be converted to the new compression method (called Ref-point update version 2), the BW Sanity Check offers a new test: call transaction DBACOCKPIT and follow the path Diagnostics -> BW Sanity Checks -> Flat InfoCubes -> Check Ref-point Update Version of Flat Inventory Cubes. The test also lists the number of records that have to be converted and whether reporting is currently returning correct query results or not.