ABAP Keyword Documentation → ABAP - Reference → Processing Internal Data → Numeric Calculations → Statements for Numeric Calculations
DIVIDE
Other versions:
7.31 | 7.40 | 7.54
Syntax
DIVIDE dobj1 BY dobj2.
Effect
This statement has the same effect as the statement
The content of dobj1
is divided by the content of dobj2
and the result is assigned to dobj1
. The data objects dobj1
and dobj2
have to be numeric. Only data objects can be specified, no calls or other expressions. The
calculation type is determined like an arithmetic expression.
Programming Guidelines
Notes
- Division by the value 0 is undefined and raises a handleable exception. The only situation where division by 0 does not raise an exception is if the dividend is also 0. Here, the result is set to 0.
-
One obsolete form of the statement
DIVIDE
isDIVIDE-CORRESPONDING
.
Exceptions
Catchable Exceptions
CX_SY_ARITHMETIC_OVERFLOW
-
Cause: Overflow in arithmetic operation (type
p
)
Runtime Error:BCD_OVERFLOW
-
Cause: Integer overflow in division
Runtime Error:COMPUTE_INT_DIV_OVERFLOW
CX_SY_CONVERSION_OVERFLOW
-
Cause: Overflow in arithmetic operation (type
p
, with specified length)
Runtime Error:BCD_FIELD_OVERFLOW
CX_SY_ZERODIVIDE
-
Cause: Division by 0 (type
p
)
Runtime Error:BCD_ZERODIVIDE
-
Cause: Division by 0 (type
f
)
Runtime Error:COMPUTE_FLOAT_ZERODIVIDE
-
Cause: Division by 0 (type
i
)
Runtime Error:COMPUTE_INT_ZERODIVIDE
Non-Catchable Exceptions
-
Cause:
p
field does not contain the correct BCD format
Runtime Error:BCD_BADDATA