Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
Former Member

Hello SCN,

In the older version i.e. BI 7.0, we experience Memory

overflows while deleting the master data. Because system checks for all the

dependencies of the data associated with other InfoProviders in the system. This new tool is available in BI 7.0 (SP 23) as an optional feature. In BW 7.3 it becomes a default option.

I will explain how the new functionality helped

to overcome the above problems with a simple navigation.

 

Navigation:

<br />

1) Go to DWWB (RSA1).

2) Go to Info Object tree and choose “Delete Master

Data” from the context menu of the desired Info Object.

 

 

In the present

version of Master data deletion functionality, we find that system checks if

the desired   info object has any

dependencies i.e. info object being used in Master data like Hierarchies or in

Transaction data like Info Cubes.

So the system takes huge time to delete and also may lead to

memory overflows.

The new functionality looks like as shown below:

 

 

We can see four options in this wizard. Let us briefly

discuss each of them.

 

1) Delete SIDs:

<br /></p>

<p>This option is

used to delete the SID values in the /BIC/S<Info object name>.</p>

<p> We can choose if we want to delete the SID’s

also. If we choose to delete SID’s we have to check option “Delete SIDs”. This

will ensure that all SIDs are deleted.</p><p> </p><p>!https://weblogs.sdn.sap.com/weblogs/images/252146487/3d.jpg|height=250|alt=|width=600|src=https://we...!</p><p> </p><p>System will pop up a warning, before you delete SIDs as

shown below.</p><p> </p><p>!https://weblogs.sdn.sap.com/weblogs/images/252146487/16d.jpg|height=150|alt=|width=600|src=https://w...!</p><p> </p><p>SAP recommends not deleting

SIDs as it may lead to consistencies when reloading the same data.* *</p>

<p>In Older version, before deleting we have

to ensure that the chances or reloading the same characteristics is less. Or

else when we reload the data it may lead to inconsistencies if the where-used

list check performed by the system was not complete.</p>

<p>In the newer version, we can check the usage of

the Master data using “Search Mode” as per our requirement. We have 4 different

search modes which I will be discussing in detail later in the section.</p><p> </p><p>2) Delete Texts:

<br />

This option is used

to ensure that Texts are deleted along with the master data of the info object

selected.

 

 

3) Simulation mode:

 

When we delete

master data, we have to check if it is used in info cubes, hierarchies before

deleting. As we have to lock these dependent objects for deleting data in

them. So we need a down time to execute

deletion.

So it would be better if we know what

objects are getting affected beforehand so that we can delete the dependent

data from these targets, thereby reducing the number of locks and proceeding to

deletion of master data.

Simulation mode helps you in do this by

performing a where-used check based on the search mode you have chosen and

display the logs along with cubes or hierarchies in which the info object is

used.

 

 

4) Perform the deletion in background:

 

We know that every

time we try to delete master data, it takes more than 1 dialog process. To

perform in background we have to use Process chain. We can now do the same from

here as shown below.

 

 

Now you can choose the scheduling time from

the below screen to trigger the background job. In this case I choose

"Immediate".

 

 

Now you can monitor the background job using SM37. The job will be created by the user name who created it or choose Application log from the below screen for the same action.

 

 

We have 4 search modes, which are used, they are:

 

1) Only One Usage per value:

 

0.1. The system performs where-used check and if

it finds a value being used by an InfoProvider then search continues for other values.

0.1. This is the default setting and can be used

if you want to minimize the run time for where-used list check.

 

 

On clicking “Start” option, the simulation starts and

you can find the logs as below:

 

You can see in the logs, the system creates

a where-used table “/BI0/0W00000032 & /BI0/0W00000033” to generate the

where-used list as below and deletes it after the deletion.

 

It starts a job DEL-D- in background as

we selected background and simulation both. 3 child jobs starting with BIMDCK

are created to compute the where-used list table.

 

Where-used Table:

<br />

 

Here you can see the message stating that master data

is deleted in the background as below:

 

!https://weblogs.sdn.sap.com/weblogs/images/252146487/9d.gif|height=455|alt=|width=395|src=https://we... !

 

2) One usage per value per Object:

 

We use this to

know about the usage of master data in all InfoProviders.

The system performs where-used check and if

it finds a value being used by each InfoProvider then search continues for

other values in the InfoProvider.

 !https://weblogs.sdn.sap.com/weblogs/images/252146487/12d.jpg|height=250|alt=|width=600|src=https://w...!

 

This mode helps to find out which

InfoProviders, from which we need to delete data first, before we continue to delete

them all.

 

 

3) One usage is sufficient:

<br />

0.1. We use this to

delete the attributes and texts completely from the Info Object.

0.1. If one of the records from master data is

found to be used, the whole process stops saying it is already being used.

 

 

 

4) All usage of All Values:

<br />

All usages are searched in all info

providers along with the count (as in earlier functionality). It will provide

us with complete where-used list and takes the maximum run time.

 

You can see in the logs, the system creates

a where-used table “/BI0/0W00000031” to generate the where-used list as below

and deletes it after the deletion.

 

In my case I used “Only One Usage per value”* *and scheduled the deletion in

background after comparing the above results. This helped me to identify the

associated dependencies of the data in the other InfoProviders and reduce extra

locks during deletion.

 

Selective Deletion:

We can use report RSDMDD_DELETE_BATCH for selective deletion from

any Info Object and give the selections using FILTER button. Simulation options can be given in P_SMODE.

 

!https://weblogs.sdn.sap.com/weblogs/images/252146487/21d.png|height=113|alt=|width=246|src=https://w...!</body>

18 Comments
Labels in this area