2006 Dec 08 8:52 PM
I am new to BADIs --
I am creating change pointers for sales and tax condition records using VK11, VK31, VK34 and only want to create change pointers for certain condition types.
I used SE19 to create an implementation of BDCP_BEFORE_WRITE for message type COND_A
I added my code ->
data: kschl type konh-kschl.
break dgreenberg.
IF CHANGE_DOCUMENT_HEADER-OBJECTCLAS EQ 'COND_A'.
select single kschl into kschl
from konh
where knumh = CHANGE_DOCUMENT_HEADER-OBJECTID.
if kschl <> 'PR00'.
CLEAR CHANGE_POINTERS.
endif.
endif.
And change pointers are still being created for non PR00 condition types. I have attempted to debug by adding break sy-uname. And manually adding break points to both CHANGE_POINTERS_CREATE and CHANGE_POINTERS_CREATE_DIRECT and the code is not stopping from VK11.
Am I missing a step in 'implementing' the badi -- I assume the badi calls are made from within the code in the FM above. I also assume that VK11 is calling one of the FM above as CDHDR and CDPOS are being populated with the transactions being processed.
Is my code not being hit?
OR
If my code is being hit (and I just can't get the code to stop) -- it may be that the values are not yet written to the KONH table -- but I need to be able to interrogate the values in the transaction to make my filtering decision -- is there a temporary table that stores those values about to be posted?
Any help would be appreciated --
I am new to BADIs --
I am creating change pointers for sales and tax condition records using VK11, VK31, VK34 and only want to create change pointers for certain condition types.
I used SE19 to create an implementation of BDCP_BEFORE_WRITE for message type COND_A
I added my code ->
data: kschl type konh-kschl.
break dgreenberg.
IF CHANGE_DOCUMENT_HEADER-OBJECTCLAS EQ 'COND_A'.
select single kschl into kschl
from konh
where knumh = CHANGE_DOCUMENT_HEADER-OBJECTID.
if kschl <> 'PR00'.
CLEAR CHANGE_POINTERS.
endif.
endif.
And change pointers are still being created for non PR00 condition types. I have attempted to debug by adding break sy-uname. And manually adding break points to both CHANGE_POINTERS_CREATE and CHANGE_POINTERS_CREATE_DIRECT and the code is not stopping from VK11.
Am I missing a step in 'implementing' the badi -- I assume the badi calls are made from within the code in the FM above. I also assume that VK11 is calling one of the FM above as CDHDR and CDPOS are being populated with the transactions being processed.
Is my code not being hit?
OR
If my code is being hit (and I just can't get the code to stop) -- it may be that the values are not yet written to the KONH table -- but I need to be able to interrogate the values in the transaction to make my filtering decision -- is there a temporary table that stores those values about to be posted?
Any help would be appreciated --
2006 Dec 11 5:06 AM
Hi Diana,
Not sure if you have already tried this.
To stop the program at the BADI, go to SE24 and put a breakpoint in the class
CL_EXITHANDLER class's "get instance" method.
Then when u run the transaction; program will stop at all EXIT calls including BADI exits. then you can make sure your code is being hit.
Regards,
Vivek Kute
2007 Jun 14 8:43 AM
Hi Diana,
I am experimenting same problem but working with Equipments. It seems the code is not going through that BADI.
How did you finally fixed that?
Hi Vivek,
Which SAP Version are you working with...?
Could it be due to that...
Is Note 420562 relevant?
I am working with
SAP_BASIS 620 level 54
SAP_APPL 470 level 22
Message was edited by:
Ivan Vojvodic
| User | Count |
|---|---|
| 6 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |