Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Deleting entries from the BDCP2 table via RBDCPCLR

Former Member

Hello All,

We have around 1 million entries in our BDCP2 table.

So I thought to excute the report RBDCPCLR to clear the Obsolete and Processed change pointer messages.

But the report say that there are only 1000 obsolete change pointers and 254 Process change pointers.

Actually I was expecting that the msgs in the BDCP2 will be same as the number of Obsolete msg till today.

Apart from the change pointer, is there any other process writes in the BDCP2 table? How can I clean the table?

Correct me if I am wrong in understanding this whole concept.

I will appreciate you time and response.\

Thanks,

Pooja Pandey

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi..

please check BDCPS table too for change pointers entries.

Cheers,

Lokeswari

11 REPLIES 11

Former Member
0 Kudos

Hi..

please check BDCPS table too for change pointers entries.

Cheers,

Lokeswari

0 Kudos

BDCPS contains 0 entries.

Any inputs from the experts ?

Edited by: Pooja Pandey on Feb 9, 2010 1:24 PM

0 Kudos

Hello,

Once you migrated to BDCP2 for all message types, you will not see any entries in BDCP/BDCPS. Please check up the selection screen that used for RBDCPCLR. This program is not flexible enough. So we ended up creating a custom program for occasional use.

Thanks,

Venu

0 Kudos

Thanks for your response Venu.

I dont really care about the BDCP/BDCPS tables at this point.

My main concern is

"We have around 1 million entries in our BDCP2 table. 
So I thought to excute the report RBDCPCLR to clear the Obsolete and Processed change pointer messages.
But the report( RBDCPCLR/BD22) says that there are only 1000 obsolete change pointers and 254 Process change pointers.

Actually I was expecting that the msgs in the BDCP2 will be same as the number of Obsolete msg till today. "

From where does the BDCP2 table receive the entries/records? How to clear the table ? It doesnt seem that RBDCPCLR report can clear all the entries from BDCP2 table .....

Thanks,

Pooja Pandey

0 Kudos

Hello,

BDCP2 entries created for fields configured in BD52 for the message types when Master Data records are created/changed. Please see the content of the table using SE16 for creation time stamp. This is not a complicated program and you may debug through to find out why obsolete records are not getting picked up.

Thanks,

Venu

0 Kudos

Thanks for the useful information.

I have one more doubt, where do you set/direct that change pointer target table for a msg type ?e.g how do system know that DEBMAS CP msg should go to BDCP2 or BDCPS/BDCP .

Pooja

0 Kudos

Hello,

It is by using trasaction BD52 for message type DEBMAS. Object: DEBI, Tables: KNA1, KNB1, KNVP, KNVV, KNBW etc.

Thanks,

Venu

0 Kudos

When I went in BD52 , I do see an Object , Table Name and a Field name ( e.g DEBIKNA1ANRED...( and many more fields);

but where do we specify the change pointer table( BDCPS or BDCP2) in there ?

I also went to the transaction SALE and there I found an option for " Switch Change Pointer Storage" and there it does provide an option to change the CP target from BDCP2 or BDCPS for only selective message type.

E.g for DEBMAS, it doesnt provide an option to change the CP target table from BDCPS to BDCP2. So, as per this, the DEBMAS entries shoud only be in BDCPS table but I do see that there are around 25K entries of DEBMAS in BDCP2 table...

thanks,

Pooja pandey

0 Kudos

Hello,

Change Pointer storage from BDCP/BDCPS to BDCP2 is better from performance point of view. As per OSS Note 1165059, SAP also recommends the same.

In transaction BD60, you will see check box to do this. After you do this, change pointers will be automatically stored to BDCP2 going forward. SAP delivers a migration program RBDCPMIG to transfer old BDCP/BDCPS entries to BDCP2.

Thanks,

Venu

0 Kudos

Hi Venu,

I have already set the BDCP2_OK indicator as "X" for my Zmessage type in BD60. Thanks for confirming that the BD60 setting will make sure that the BDCP2 table will be used.

Now the problem is that this indicator makes the BDCP2_SUP field of the table TBDME as "X" but how to make the

the BDCP2_ACT field of the TBDA2 table as "X" because this BDCP2_ACT indictor decides whether the table BDCPS or BDCP2 table will be considered for deleting the entries.

I am closing this thread asI have opened a new query for this question with the subject How to set the TBDA2-BDCP2_ACT indicator as X .

Please provide you comments to the new thread.

Thanks for your help.

Pooja

Former Member
0 Kudos

Specify exactly the message type you want to get rid off. It produces a much more efficient sql statement when executing RBDCPCLR. Check the sql cache with ST04, and you will see the difference.

Make sure that you regularly reorganize the BDCP2 table. I do it once a week, as we often have more than 10 mill records in the table. Our system is Oracle based.

Kind regards

Vagn