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: 

BADI implementation

Former Member
0 Kudos

Hi folks,

we made an implementation of a BAdI standard (HRPAYIT_CUD) but when we launch the program with the BAdI itself the function HR_GET_BUSINESS_ADD_IN can't find the implementation skipping the BAdI.

Please seeking for help.

ps. We have ECC 6.

PY

Edited by: alessandro caringi on Jan 28, 2009 4:09 PM

15 REPLIES 15

naimesh_patel
Active Contributor
0 Kudos

Have you activated the BADI Implementation?

Use transaction SE19 to activate your BADI Implementation.

Regards,

Naimesh Patel

Former Member
0 Kudos

Hi

Your implemantation is active?

Max

Former Member
0 Kudos

Hi both

everything was activated with the transaction se19.

Then?What to do?Is there something missing?

Thanks for helping.

PY

0 Kudos

Hi

Your BADI doean't exist in my system, try to check the value of the filter, if there's a filter or try to check which exception is raised in fm HR_GET_BUSINESS_ADD_IN.

Max

Former Member
0 Kudos

Hi max

you should be italian.We have this problem it's several days with the CUD 2009.

First (in 2008) we used the user exit from cmod, but this year we use the BAdI.

Did you ever manage it for the HR?

Thanks for helping!

PY

0 Kudos

Hi

I don't know HR, but I know the BADI and its concept is the same for every module.

If you've found the fm (HR_GET_BUSINESS_ADD_IN) where this BADI is got, u should understand why it can't find your implementation.

If your implemantion is active, I suppose u set a value for the filter in it: so u should check which filter value is transfered by that fm (parameter FLT_VAL).

The second question is: you've implemented the right BADI? which value you see in parameter EXIT_NAME

Max

Former Member
0 Kudos

The code within the report is:

report RPCLUDI0....

  • User exit for changing company related data (p_cudtabdat) '004'

  • call function 'EXIT_RPCFUDI0_004'

DATA: l_badi_implemented TYPE boole_d,

lr_badi TYPE REF TO if_ex_hrpayit_cud.

PERFORM check_badi CHANGING l_badi_implemented lr_badi.

IF NOT l_badi_implemented IS INITIAL.

CALL METHOD lr_badi->exit_004

EXPORTING

p_pernr = p_pernr

p_eewerks = eewerks

p_eebtrtl = eebtrtl

CHANGING

p_com_result = p_com_result[]

p_cudtabdat = p_cudtabdat[]

EXCEPTIONS

used_user_exit = 1

OTHERS = 2

.

ENDIF.

FORM check_badi CHANGING p_badi_implemented TYPE boole_d

pr_badi TYPE REF TO if_ex_hrpayit_cud.

CALL FUNCTION 'HR_GET_BUSINESS_ADD_IN'

EXPORTING

exit_name = 'HRPAYIT_CUD'

IMPORTING

is_implemented = p_badi_implemented

CHANGING

instance = pr_badi.

ENDFORM.

0 Kudos

Hi

Ok! The BADI HRPAYIT_CUD seems to be right.

U should check what fm SXC_EXIT_CHECK_ACTIVE return or try to see the view table v_ext_act in order to get out all implementations for your BADI.

MAx

Former Member
0 Kudos

We can send you a mail with the screen capture of our implementation?

PY

0 Kudos

Hi

Yes u can

Former Member
0 Kudos

1. I send you a mail.

2. we don't find a BAdI into the view.

I think that the BAdI is not a Classic BAdI!

PY

0 Kudos

Hi

The BADI is a classic BADI but it should be migrated as soon as u've activated it: u should have had a message about this.

I've tried to implement a classic BADI migrated to new BADI but I can see the hit in the view.

I sow your doc. file the problem is in the HR_GET_BUSINESS_ADD_IN (I suppose called in the routine CHECK_BADI.

Max

Former Member
0 Kudos

Hi Max

thanks for your help.

We'll make several tries and we'll let you know.

Still thanks!

Bye.

PY

0 Kudos

Hi

Try to delete and implement it again.

I'll try to go on to check your problem as soon as my ECC 6 will be available again.

Max

0 Kudos

Hi all,

the question is solved , SAP applied a OSS note for this problem: n. 1299938

Thanks you all.