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: 

The time when the BADI implementation class really initialize.

Former Member
0 Kudos

when I debug the cl_exithanler=>get_instance, I found that it returns the class name as: CL_IM_EX..., not the implementation class name begin with: ZCL_IM... which is created by me. So when does the BADI implementation class really initialize?

1 ACCEPTED SOLUTION

uwe_schieferstein
Active Contributor
0 Kudos

Hello

You can find this out by a simple trick. Prerequisite is an active implementation of your BAdI.

Add method CONSTRUCTOR to your Z-class that implements the BAdI interface. Put a break-point (BREAK <sy-uname>.) into this method.

Execute the transaction which passes the BAdI.

Regards

Uwe

9 REPLIES 9

uwe_schieferstein
Active Contributor
0 Kudos

Hello

You can find this out by a simple trick. Prerequisite is an active implementation of your BAdI.

Add method CONSTRUCTOR to your Z-class that implements the BAdI interface. Put a break-point (BREAK <sy-uname>.) into this method.

Execute the transaction which passes the BAdI.

Regards

Uwe

0 Kudos

It seems that the detail was encapsulated in the keyword CALL BADI

Edited by: yanluckly on Nov 24, 2010 3:09 AM

0 Kudos

Hi Uwe,

why it can pass the compile:break <sy-uname>

I haven't seen this statement before.

0 Kudos

Oh I see, It's a macro.

how could I use it if my user id contains '.', such as yuan.gan,

both break yuan.gan.

break 'yuan.gan'.

are wrong.

0 Kudos

In that case try BREAK-POINT or BREAK-POINT ID <Checkpoint Group>.

In the former the breakpoint is always active & for the latter it depends on the settings of the checkpoint group(trxn. SAAB). Read the F1 documentation on BREAK-POINT to get the details.

BR,

Suhas

0 Kudos

Hello

When I use <sy-uname> it simply means to replace it with your actual user name. In my case the statement would be:


BREAK uschieferst.

It is not meant as field-symbol.

However, using activatable break-point of a Checkpoint group is far more elegant.

Regards

Uwe

0 Kudos

if my user id is yuan.gan

how to use the break macro?

0 Kudos

It's not a macro, as Uwe showed you. Inside your Constructor method just enter the following code:

 break sy-uname

Because of the '.' in your name you cannot use

 break yuan.gan.

I am suprised to see that as a user name like that though.

0 Kudos

Is it a global macro?

u can find it in trmac table