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

system_on_commit interrupted - abap error

former_member537489
Participant
0 Likes
2,870

Dear experts,

I have encountered the following problem. I am using a user exit or a BADI that consists the internal tables that I need to check and provide an error message so that the processing does NOT continue. But all the user exits that help me, reside in the COMMIT state of the program, so any error message after that ends in the above abap error. saying that the processing cannot be stopped there.

I tried to use the statement ROLLBACK work, after my error message, again the same short dump.

Is there any other way to achieve stopping the processing after commit?

Thank you in advance,

Roxani Athousaki

9 REPLIES 9
Read only

Former Member
0 Likes
1,988

Within what transaction are you doing this and which User Exit/BADI.

Read only

0 Likes
1,988

Thank you for answering.

The badi I am using is IF_EX_WORKORDER_UPDATE~BEFORE_UPDATE.

and the tables I need to check are stat_new[] and stat_old[].

in program : SAPLCOBT.

thank you...

Read only

Former Member
0 Likes
1,988

what BADI u are using ? , provide more details .

Regards

Peram

Read only

Former Member
0 Likes
1,988

Hi Roxani,

1. Instead of giving the error message directly,

2. Just check in the BAdi whether there is a return structure / return itab,

to fill with error messages.

If that is there, then the main program calling the BADI,

will automatically handle this.

(We only need to pass the error information via the badi return structure/itab)

Regards,

Amit Mittal.

Read only

0 Likes
1,988

Dear Amit,

unfortunatelly no raise of error messages exist in the badi:

  • BADI is active -> call method at_save

CALL METHOD lp_badi_if->before_update

EXPORTING

it_header = caufv_bt[]

it_header_old = caufv_bt_old[]

it_item = afpo_bt[]

it_item_old = afpo_bt_old[]

it_sequence = affl_bt[]

it_sequence_old = affl_bt_old[]

it_operation = afvg_bt[]

it_operation_old_afvc = afvg_bt_old[]

it_operation_old_afvv = afvv_bt_old[]

it_operation_old_afvu = afvu_bt_old[]

it_component = resb_bt[]

it_component_old = resb_bt_old[]

.

.

.

it_pmpartner_old = ihpa_bt_old[]

it_piinstruction = afft_bt[]

it_piinstructionvalue = affv_bt[].

thank you,

Roxani

Read only

0 Likes
1,988

Dear experts,

Finally I found a user exit that stops the update before the ON-COMMIT phase and I solved the issue.

Thanks for your help.

Roxani

Read only

0 Likes
1,988

i have same problem too. Could you tell which user_exit it is?

Edited by: Aselsan IT Department on May 13, 2009 10:31 AM

Read only

Former Member
0 Likes
1,988

Hi All,

How can this be handled. I have a similar requirement and I need to give a Popup in the components tab screen, but when I give a Popup the order component screen goes to a display mode but we need the user to change the values in the screen and hence the screen should be in display mode. Also when it has gone to display mode and i do any action on the screen it is giving a short dump as 'COMMIT Work interrupted' . Please provide a solution for the same.

Regards,

Prabaharan.G

Read only

Former Member
0 Likes
1,988

don't use commit statement inside the BADI

for more info see this thread

cheers

s.janagar

Edited by: Janagar Sundaramoorthy Nadar on May 13, 2009 10:46 AM