How to substract one row data from another in a DSO in SAP BW

Scenario: The source data is coming in the form of ytd numbers. Below is an example of year to date (YTD) numbers:

ytd numbers.png

The user wants to see the monthly values instead of the YTD values, below is the data which the user wants to see in the report:

ytd numbers.png

Thus the monthly 2017.02 values are 2017.02 value – 2017.01 value.

Thus, the first month value will be as it is, the second month value will  be second month – first month, the third month value will be third month value – second month value.

Solution:

Continue reading →

Private: How to read child hierarchy entries in DTP

Scenario: There is a requirement to load data with a filter on a certain infoObject.

This filter is a parent node of a hierarchy.

The data in the source is having rows with leaf nodes only for this infoObject.

See below diagram to get clarity:

hier.png

source data.png

From the above diagrams, observe that the data in the source cube is having only leaf nodes for the Region ZREG1. Continue reading →

How to transport an Export Datasource

An export datasource is created when you want to use an info provider to load data to another targets which may reside in the same system or different system. An export datasource is created by default for a DSO. But its not the case for cubes. Below I will discuss one such scenario where I created and transported an export datasource.

Scenario-

You want to load data from cube in one system to a cube in another system. Let’s say that the source system is a SAP BW system with id SRD and target system is another BW system with system id TGD

SRD – SRT – SRP (Source system landscape)
TGD – TGT – TGP (Target system landscape)

Now there is a cube in SRD system which has data. This data needs to be get loaded to a cube in TGD system based on certain filters and conditions. And this has to finally move to the production systems (SRP and TGP)

The way to do this is first to request for a TR (transport request) in both SRD and TGD systems.

Procedure-

Continue reading →

Transport failed with RC=12 error

Issue-

Sometimes while transporting changes from Dev to Quality system or from Quality to Production system, the TR fails with RC 12 error. This is a critical error which does not depend on the contents of the TR. There may be many scenarios leading to this error, I have mentioned one of them in my earlier post, this post is about one more such cases where I encountered this error-

Root Cause Analysis-

In this case, there was table space issue in the quality system and hence while transporting the changes, incomplete objects were transported resulting in a dump in the quality system and TR failing with RC=12 error-

Below is the screenshot of the error that we got in the TR-

rc12 error 3

Below is the screen shot of the dump which we were getting in the quality system-

rc12 error1

rc12 error2

Resolution-

We asked basis team to check the tablespace in the quality system. They extended the tablespace of the table mentioned in the error log/ short dump. The TR was then moved successfully.

Hope this helps..

Transformation not getting deleted in RSA1

Recently I came across a scenario where I was not able to delete an inactive transformation while doing development.

I created dso and loaded the data. Then I observed that the dso should have different infoobjects. In order to correct the dso, I deleted the data first. Then I added the new info objects and activated the dso.

The dso was activated successfully. However, the transformation and dtp became inactive. I deleted the dtp successfully.

I went to edit the transformation and it showed warnings like – rule is invalid. I pressed continue and after couple of warnings, I got a dump as shown below- Continue reading →

Migration of Datasources

In SAP source system (ECC), the datasource is the relevant object that makes source data available in a flat structure for data transfer into BW.

In the source system, the datasource can have the SAP Delivery Version or Active Version.

There are two types of datasources in BI:

R/3 TR RSDS or 3.x DS R/3 TR ISFS

Since the datasource cannot exist in both of these versions simultaneously, you have to choose the form while replicating them to BW.

Replicated 3.x datasources can be used as Emulated datasources in BW for migration purposes.

SAP recommends migration of 3.x datasources if you are using RDA DTPs or Direct Data Access DTPs as emulated datasources does not support these two types of DTPs. Continue reading →

Repartitioning (Infocube)

Partition of InfoCubes is done to divide the huge data in the fact table into several smaller, independent units. This improves the query performance.

InfoCube can only be partitioned using one of the two below criteria-

  • Based on month (0CALMONTH info object must be present in the cube)
  • Based on Fiscal period (0FISCPER info object must be present in the cube)

Partitioning and re-partitioning can be done even though the cube contains data. This concept was first introduced in SAP Netweaver BW 7.0 as a replacement of partitioning in 3.x

Please note that you do not partition the cube when you create it. Usually it is done at a later point in time when the cube has more than a million records. Continue reading →

Process Chain Monitoring – Useful Programs and tables

Useful for monitoring purposes for the support team-

Tcodes: RSPCM, RSPC1, RSPCM, BWCCMS

Programs: Go to tcode SE38, enter the program name as RSPC* and press F4.

Observe the list of programs that appear:

  • RSPC_CCMS – Start of BW CCMS monitor
  • RSPC_CHAIN_RESTART – Restart process chain run (Caution!)
  • RSPC_DISPLAY_JOBS – Display of Jobs with display of program parameters
  • RSPC_LOG_DELETE – Deletion of process chain logs and assigned process logs
  • RSPC_LOG_SHOW – Display of log for a process
  • RSPC_MAINTAIN – Process Chain maintenance
  • RSPC_MAINTAIN_SINGLE – Process chain maintenance (one chain)
  • RSPC_MAINTAIN_SINGLE_NOLOG – Process chain maintenance using a type  and  variant
  • RSPC_DEMO_CREATE_CHAIN_BY_PROGRAM – Demo: Creating a process chain per program without user interaction
  • RSPC_PROCESS_FINISH – Report end of a process

Tables: Go to tcode SE11 and in the database table, type RSPC*. Press F4. Continue reading →

Direct Update DSO and APD

Direct update DSOs are generally used in conjunction with the APDs (Analysis Process Designer).

APDs are very helpful in analyzing the hidden patterns in the data coming from various sources.

E.g. APO system creates plan data using complex algorithms for certain actual sales data in BW. Both of these can be fed to the APD to analyze the differences in Actual and plan values and find out the useful metrics like Forecast Bias, Forecast Accuracy etc. Continue reading →

Direct Data Access DTP – SAP Remote Cube or Virtual InfoCube

This post is just for demonstrating the use of virtual infocubes and direct access DTPs as these are not used so frequently while modeling.

There is no data acquisition and the BI system connects remotely to the source when the query is called by the user. This is particularly useful where very less data need to be retrieved and it changes frequently.

There is also a concept of using Open ODS views if your BW system is based in HANA, where there is a similar access to source tables directly and queries are based on the source fields. Continue reading →