‎2007 Jan 11 10:46 AM
Please help me.
My source code is bolow.
DATA: l_amt TYPE komv-kbetr,
l_amt1(16) TYPE p DECIMALS 2,
g_amt TYPE komv-kbetr,
g_amt1(16) TYPE p DECIMALS 2.
CATCH SYSTEM-EXCEPTIONS arithmetic_errors = 5.
l_amt = l_amt1 + '123456.12' * 10.
g_amt = g_amt1 + '123456789.12' * 10.
ENDCATCH.
IF sy-subrc EQ 5.
message s000(38) 'OverFlow'.
ENDIF.
How do I know which line is shortdump? Which function module or Method to identify?
Thank you.
‎2007 Jan 11 10:47 AM
‎2007 Jan 11 10:50 AM
I would like to capture at program runtime, No need to see at ST22.
‎2007 Jan 11 11:01 AM
Just after U get the DUMP press the Debugging button U'll go to the debugging screen
where in U can even look at the values for the fields .. It is nothing but debug
screen ..
‎2007 Jan 11 11:15 AM
I do not need to shortdump, I need to identify which statement is shortdump only.
‎2007 Jan 11 10:48 AM
Remove the quotes for the amounts and chekout if it works
l_amt = l_amt1 + 123456.12 * 10.
g_amt = g_amt1 + 123456789.12'* 10.
‎2007 Jan 11 10:49 AM
To find out the line where the dump occured try debugging each line , and you can get the line where the dump occured
‎2007 Jan 11 10:50 AM
Hi,
The short dump you getting will tell you which line is the problem.Just go thro' the dump.It will put a arrow mark in that line.
‎2007 Jan 11 10:52 AM
I would like to capture at program runtime, No need to see at ST22.
‎2007 Jan 11 10:55 AM
‎2007 Jan 11 10:54 AM
Hi,
first u have an erron in the message line... u hv missed with
message s000(38) with 'OverFlow'.
‎2007 Jan 11 10:57 AM
OK .
Revise again
DATA: l_amt TYPE komv-kbetr,
l_amt1(16) TYPE p DECIMALS 2,
g_amt TYPE komv-kbetr,
g_amt1(16) TYPE p DECIMALS 2.
CATCH SYSTEM-EXCEPTIONS arithmetic_errors = 5.
l_amt = l_amt1 + '123456.12' * 10.
g_amt = g_amt1 + '123456789.12' * 10.
ENDCATCH.
IF sy-subrc EQ 5.
message s000(38) with 'OverFlow'.
ENDIF.
‎2007 Jan 11 10:57 AM
actually the following line creates short dump.....
g_amt = g_amt1 + '123456789.12' * 10.
‎2007 Jan 11 10:59 AM
‎2007 Jan 11 11:07 AM
Hi,
Go to ST22 and select your user name double click on it and press F6.
There double click on no 7 there you will find at which line error happend
Pls.ark if useful
‎2007 Jan 11 11:23 AM
This method is ok.
But I would like to indenfy on program , Not need to see ST22.
‎2007 Jan 11 11:37 AM
I cannot say whether the piece of code what U wrote will give short dump
But the below statement will definitely give a short dump.
DIVIDE_By_ZERO error
B = 0.
C = A / B.
‎2007 Jan 11 11:53 AM
My source code is not shortdump, Because I insert statement CATCH ... ENDCATCH.
I do not need to shortdump, Which statement it's make sy-subrc = 5.