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

cx_sy_arithmetic_overflow when calling BAPI_ENTRYSHEET_CREATE BAPI

Former Member
0 Likes
2,525

Hi

When calling BAPI_ENTRYSHEET_CREATE, the following error (cx_sy_arithmetic_overflow) is received and it crashes

Please advise

This is the detail of the error:

-----------------------------------------

How to correct the error

    The result field must be enlarged, if this is still possible. It m

    also be possible to break up the current process into subprocesses

    that only smaller values occur.

    There may already be a solution to the error in the SAP notes syst

    If you have access to the SAP notes system first try searching wit

    following keywords:

     "COMPUTE_BCD_OVERFLOW"

     "BCD_FIELD_OVERFLOW" (Until release 4.0a, this runtime error occu

     position)

     "SAPLMLSK" or "LMLSKF0M"

     "REFERENZ"

    If you cannot solve the problem yourself and want to send an error

    notification to SAP, include the following information:

    1. The description of the current problem (short dump)

       To save the description, choose "System->List->Save->Local File

    (Unconverted)".

    2. Corresponding system log

       Display the system log by calling transaction SM21.

       Restrict the time interval to 10 minutes before and five minute

    after the short dump. Then choose "System->List->Save->Local File

    (Unconverted)".

    3. If the problem occurs in a problem of your own or a modified SAP

program: The source code of the program

   In the editor, choose "Utilities->More

Utilities->Upload/Download->Download".

4. Details about the conditions under which the error occurred or which

actions and input led to the error.

The exception must either be prevented, caught within proedure

"REFERENZ" "(FORM)", or its possible occurrence must be declared in the

RAISING clause of the procedure.

To prevent the exception, note the following:

ystem environment

   SAP-Release 701

   Application server... "snuspd01"

   Network address...... "10.128.51.21"

   Operating system..... "SunOS"

   Release.............. "5.10"

   Hardware type........ "sun4u"

   Character length.... 16 Bits

   Pointer length....... 64 Bits

   Work process number.. 9

   Shortdump setting.... "full"

   Database server... "snuspd01"

   Database type..... "ORACLE"

   Database name..... "DR1"

   Database user ID.. "SAPDAT"

   Terminal.......... "217.12.231.156"

   Char.set.... "C"

   SAP kernel....... 721

   created (date)... "Mar 8 2015 18:51:28"

   create on........ "SunOS 5.10 Generic_144488-06 sun4u"

   Database version. "OCI_112, 11.2.0.2.0, V1, default"

   Patch level. 402

   Patch text.. " "

   Database............. "ORACLE 10.1.0.*.*, ORACLE 10.2.0.*.*, ORACLE 11.2.*.*.*"

SAP database version. 721

Operating system..... "SunOS 5.10, SunOS 5.11"

Memory consumption

Roll.... 0

EM...... 16759200

Heap.... 0

Page.... 32768

MM Used. 9362616

User and Transaction

    Client.............. 015

    User................ "NDALS35"

    Language key........ "E"

    Transaction......... "ZMM122 "

    Transactions ID..... "55F8802CCCA64A5CE10000000A803315"

    Program............. "SAPLMLSK"

    Screen.............. "SAPMSSY0 1000"

    Screen line......... 6

Information on where terminated

    Termination occurred in the ABAP program "SAPLMLSK" - in "REFERENZ".

    The main program was "ZMM_R101_3 ".

    In the source code you have the termination point in line 132

    of the (Include) program "LMLSKF0M".

    The termination is caused because exception "CX_SY_ARITHMETIC_OVERFLOW"

     occurred in

    procedure "REFERENZ" "(FORM)", but it was neither handled locally nor declared

    in the RAISING clause of its signature.

    The procedure is in program "SAPLMLSK "; its source code begins in line

    9 of the (Include program "LMLSKF0M ".

    Source code:

     112 *..Kontierungszuordnung   Indizes setzen, gelöschte nicht referieren

113   LOOP AT ref_eskl FROM ref_index.

114    IF REF_ESKL-PACKNO NE ESKLSEARCH-PACKNO

115    OR REF_ESKL-INTROW NE ESKLSEARCH-INTROW.

116       EXIT.

117    ENDIF.

118    IF NOT REF_ESKL-LOEKZ IS INITIAL.

119       DELETE REF_ESKL.

120    ELSE.

121       REF_MAXIND = SY-TABIX.

122       IF REF_FIRSTIND IS INITIAL.

123          REF_FIRSTIND = SY-TABIX.

124       ENDIF.

125 *      READ TABLE ref_eskn WITH KEY packno = ref_eskl-hpackno

126 *                                    zekkn = ref_eskl-zekkn.

127 *      IF sy-subrc NE 0.

128 **         ref_eskl have entries which are not in ref_eskn

129 *      ENDIF.

130       ref_menge = ref_menge + ref_eskl-menge.

131 **** <MAA-ABD JFMIP> ****

>>>>       REF_NETWR = REF_NETWR + REF_ESKL-NETWR.

133 **** </MAA-ABD JFMIP> ****

134    ENDIF.

135 ENDLOOP.

3 REPLIES 3
Read only

former_member188724
Contributor
0 Likes
1,281

Hi Shyam,

As dump suggests one of the value is large. Put a break Point in the include

LMLSKF0M and check what value is going beyond the Limit specified. You are using a custom Report ZMM_R_....

Some declaration is not correct in the Report.

Please check.

If you still have issues pls paste the code for the declaration of the tables that you pass for the FM.

Regards,

KS.

Read only

0 Likes
1,281

Hi

"ZMM_R101_3" is the main program but the error is because of line 132 in the (Include) program "LMLSKF0M" which is a standard one

Read only

0 Likes
1,281

The issue is coming from your main program, even though dump occurs in the standard include it is because of what you are sending to this include.

if you go to se37 and put in this fm name and do a where-used list you can find some useful code as to how to use this function.

If you need further help then please post your code here i.e. from your Z* program.