Showing results for 
Search instead for 
Did you mean: 

Selective ODS deletion

Former Member
0 Kudos

Hi guys,

We did our technical upgrade from 3.5 to 7.0.

Basically we have a datamart ODS_T (target ODS) which is fed by two ODS' named ODS1 and ODS2 DAILY. ODS1 feeds only Delta to ODS_T but ODS2 feeds a Full Update to ODS_T. So basically there are 2 new requests sitting in the (manage Data target) ODS_T everyday, one from ODS1 (Delta) and the other one from ODS2(Full). Now as per the business requirement, we want to delete the Full update request (which is coming from ODS2) everyday in ODS_T before loading the new request from the same, while keeping the Delta request (which is coming from ODS1) as it is in ODS_T. How do we go about doing it.?

Meaning lets say affter 10 days we would see 10 requests which came from ODS1 as Delta sitting in ODS_T but only 1 request which came from ODS2 sitting in ODS_T

Any comment and idea would be appreciated.

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

You may wish to check this

Hope it Helps



Former Member
0 Kudos

Hi Guys,

First off thanks for taking your time out to answer the question.

Basically i was looking for a quick fix that would not require or generate transport.But seems like there is no easy way to resolve this issue and Abap coding is going to be the answer. As Pramod said to create an IO and use as an indicator to do a selective request deletion, i think that sounds more reasonable if not going to write a code.

Thanks again.

Active Participant
0 Kudos

Hi manish,

Used some indicator in the full upload data and used that indicator to delete the data from ODS..

Used the ABAP program and used the "FUnction Module "RSDRD_SEL_DELETION" in that abap program to delete the data from ODS. used This abap program in process chain and delete all the data from ODS before you upload the full upload/

Hope this will help.



Former Member
0 Kudos

Infopackages have a delete overlapping request option. Have you tried using that. It works for infocubes but I have never tried it for ODS's. It should be worth a try.

Former Member
0 Kudos


You cannot delete requests in ODS like in cubes.It will delete the ones above it too

Former Member
0 Kudos

Hi Manish,

The situation is complex.

But instead of deleting the request you can schedule a selective deletion Job to delete the previous contents before the load.

Here is how it can be done. In your target ODS ODS_T have an infoobject like a flag ( 1 char ) and for all the data coming from the full update ODS mark this as X. While doing the next load delete all data which has 'X'. This selective deletion can be done in the Manage screen of the target ODS. Deletion job does not take much time. So you can schedule this job just before your full load.

In the manage screen you will be seeing the requests but when we follow this we will not be able to see the data.