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

COMPUTE_BCD_OVERFLOW / BCD_FIELD_OVERFLOW problem

former_member300754
Participant
0 Likes
945

Hi all.

I have a customized program which generate PO from text file by using BAPI_PO_CREATE1. I've uploaded more than thousand items and everything's fine.

There're some items which cannot be created BUT bapi returns PO number and also sends error message to Workplace Inbox. The following are error messages which sent to Inbox:


Error info... ABAP/4 processor: BCD_FIELD_OVERFLOW

and


Error info... ABAP/4 processor: COMPUTE_FIELD_OVERFLOW

I'm really curios about this. BAPI returns PO number and success message but at the time I check PO on ME23N, there's no PO exists.

I've debugged customized program and the system sends error message to Inbox AFTER program has finished BAPI. Yes, I check BAPI return table and it returns PO number as well.

Please help me on this.

Cheers,

Peerasit

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
648

You might want to familiarize yourself with the [SAP update concept|http://help.sap.com/saphelp_nw70ehp1/helpdata/en/41/7af4cba79e11d1950f0000e82de14a/frameset.htm]. Usually updates are done separately in an update process (via [call function .. in update task|http://help.sap.com/abapdocu_70/en/ABAPCALL_FUNCTION_UPDATE.htm]). In your case I'd suspect the PO is created via function module ME_CREATE_DOCUMENT in an update task.

As the update processing is decoupled from the processing of the code that triggered it (i.e. BAPI_PO_CREATE1 in your case), any problems that occur during update processing are not reported back in the triggering code. Instead you get an update termination (which you can see in transaction SM13) and probably a short dump (which you can see in transaction ST22). Due to the decoupling of the processing, SAP automatically sends update terminations to the inbox of the corresponding user (along with an immediate popup if it happens in a dialog as otherwise the user would assume that everything is fine and not even know that a problem occurred).

So you need to analyze the short dump and check where that number overflow happens. Once you know the place, you should know which number(s) are causing the problem and how to fix it. It should probably be invalid data, some poorly coded enhancement or a bug in SAP code.

1 REPLY 1
Read only

Former Member
0 Likes
649

You might want to familiarize yourself with the [SAP update concept|http://help.sap.com/saphelp_nw70ehp1/helpdata/en/41/7af4cba79e11d1950f0000e82de14a/frameset.htm]. Usually updates are done separately in an update process (via [call function .. in update task|http://help.sap.com/abapdocu_70/en/ABAPCALL_FUNCTION_UPDATE.htm]). In your case I'd suspect the PO is created via function module ME_CREATE_DOCUMENT in an update task.

As the update processing is decoupled from the processing of the code that triggered it (i.e. BAPI_PO_CREATE1 in your case), any problems that occur during update processing are not reported back in the triggering code. Instead you get an update termination (which you can see in transaction SM13) and probably a short dump (which you can see in transaction ST22). Due to the decoupling of the processing, SAP automatically sends update terminations to the inbox of the corresponding user (along with an immediate popup if it happens in a dialog as otherwise the user would assume that everything is fine and not even know that a problem occurred).

So you need to analyze the short dump and check where that number overflow happens. Once you know the place, you should know which number(s) are causing the problem and how to fix it. It should probably be invalid data, some poorly coded enhancement or a bug in SAP code.