Application Development and Automation 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: 
Read only

Abap dump when calling badi

Former Member
0 Likes
878

hi guys:

I have created a Ehancement Spot 'ZBADI_SPOT_TEST' and a badi name 'ZBADI_DF_TEST1' with the t-code SE18.Then I

created a implementation 'ZBADI_IM_TEST1' with t-code SE19.But I come across a abap dump when call this badi,the code

is following.

data instance type REF TO ZBADI_IF_TEST1.

cl_exithandler=>get_instance(

EXPORTING

exit_name = 'ZBADI_DF_TEST1'

  • null_instance_accepted = SEEX_FALSE

  • IMPORTING

  • act_imp_existing = act_imp_existing

CHANGING

instance = instance

  • EXCEPTIONS

  • no_reference = 1

  • no_interface_reference = 2

  • no_exit_interface = 3

  • class_not_implement_interface = 4

  • single_exit_multiply_active = 5

  • cast_error = 6

  • exit_not_existing = 7

  • data_incons_in_exit_managem = 8

).

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

the following is the exception:

134 * check how many implementations exist for an exit

135 CALL METHOD cl_badi_flt_data_trans_and_db=>act_imps_per_flt_val

136 EXPORTING

137 runtime_call = seex_true

138 exit_name = exit_name

139 EXCEPTIONS

140 singular_exit_multiply_active = 1

141 no_active_implementation = 2

142 only_default_implementation = 3

143 OTHERS = 4.

144 CASE sy-subrc.

145 WHEN 0.

146 act_imp_existing = seex_true.

147 WHEN 1.

148 RAISE single_exit_multiply_active.

149 WHEN 2.

150 act_imp_existing = seex_false.

151 WHEN 3.

152 act_imp_existing = seex_false.

153 def_impl = seex_true.

154 WHEN 4.

>>>> RAISE data_incons_in_exit_managem.

156 ENDCASE.

Can any one tell me what is the reason and how to reslove this.Thanks.

regards

Jerry

Edited by: foxconn_jerry on Aug 8, 2009 6:20 PM

Edited by: foxconn_jerry on Aug 8, 2009 6:23 PM

hi guys:

I have created a Ehancement Spot 'ZBADI_SPOT_TEST' and a badi name 'ZBADI_DF_TEST1' with the t-code SE18.Then I

created a implementation 'ZBADI_IM_TEST1' with t-code SE19.But I come across a abap dump when call this badi,the code

is following.

data instance type REF TO ZBADI_IF_TEST1.

cl_exithandler=>get_instance(

EXPORTING

exit_name = 'ZBADI_DF_TEST1'

  • null_instance_accepted = SEEX_FALSE

  • IMPORTING

  • act_imp_existing = act_imp_existing

CHANGING

instance = instance

  • EXCEPTIONS

  • no_reference = 1

  • no_interface_reference = 2

  • no_exit_interface = 3

  • class_not_implement_interface = 4

  • single_exit_multiply_active = 5

  • cast_error = 6

  • exit_not_existing = 7

  • data_incons_in_exit_managem = 8

).

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

the following is the exception:

134 * check how many implementations exist for an exit

135 CALL METHOD cl_badi_flt_data_trans_and_db=>act_imps_per_flt_val

136 EXPORTING

137 runtime_call = seex_true

138 exit_name = exit_name

139 EXCEPTIONS

140 singular_exit_multiply_active = 1

141 no_active_implementation = 2

142 only_default_implementation = 3

143 OTHERS = 4.

144 CASE sy-subrc.

145 WHEN 0.

146 act_imp_existing = seex_true.

147 WHEN 1.

148 RAISE single_exit_multiply_active.

149 WHEN 2.

150 act_imp_existing = seex_false.

151 WHEN 3.

152 act_imp_existing = seex_false.

153 def_impl = seex_true.

154 WHEN 4.

>>>> RAISE data_incons_in_exit_managem.

156 ENDCASE.

Can any one tell me what is the reason and how to reslove this.Thanks.

regards

Jerry

Edited by: foxconn_jerry on Aug 8, 2009 6:20 PM

Edited by: foxconn_jerry on Aug 8, 2009 6:23 PM

2 REPLIES 2
Read only

uwe_schieferstein
Active Contributor
0 Likes
711

Hello

It looks like that the BAdI can be implemented only once (flag MULTIPLE = ' ', i.e. unmarked) but there are two (or more) active implementations in the system.

Regards

Uwe

Read only

0 Likes
711

I have canceled the flag(mutiple use),but it did not work.In the debug modle,I found that there was no data in the table 'sxs_attr',which means there was no implementation.why?