ADD (ABAP Keyword) introduction and details
ADD
Variants
1. ADD n TO m.
2. ADD n1 THEN n2
UNTIL nz GIVING m.
3. ADD n1 THEN n2 UNTIL nz TO m.
4. ADD n1 THEN n2
UNTIL nz
...ACCORDING TO sel ...GIVING m.
5. ADD n1 FROM m1 TO mz GIVING
m.
Variant 1
ADD n TO m.
Effect
Adds the contents of n to
the contents of M and stores the result in m .
This is equivalent to: m = m +
n.
Example
DATA: NUMBER TYPE I VALUE 3,
SUM TYPE I VALUE
5.
ADD NUMBER TO SUM.
The field SUM now contains 8, whilst the
contents of the field NUMBER remains unchanged at 3.
Note
The details
about conversions and performance described under COMPUTE are identical for ADD
.
Note
Runtime errors
BCD_BADDATA : P field contains incorrect
BCD format.
BCD_FIELD_OVERFLOW : Result field too small (type P
).
BCD_OVERFLOW : Overflow with arithmetic operation (type P
.
COMPUTE_INT_PLUS_OVERFLOW : Integer overflow when adding.
Related
COMPUTE , ADD-CORRESPONDING .
Variant 2
ADD n1 THEN n2 UNTIL nz GIVING
m.
Effect
Adds the contents of the fields n1, n2, ..., nz together and
stores the result in m , where n1 is the first, n2 the second and nz the last of
a sequence of fields the same distance apart. They can be either database fields
or internal fields, but they must all have the same type and length.
This is
equivalent to: m = n1 + n2 + ... + nz.
Example
DATA: BEGIN OF
NUMBERS,
ONE TYPE P VALUE 10,
TWO TYPE P VALUE 20,
THREE TYPE P VALUE
30,
FOUR TYPE P VALUE 40,
FIVE TYPE P VALUE 50,
SIX TYPE P VALUE
60,
END OF NUMBERS,
SUM TYPE I VALUE 1000.
ADD NUMBERS-ONE THEN
NUMBERS-TWO
UNTIL NUMBERS-FIVE GIVING SUM.
The field SUM now contains
150 but its initial value is unimportant. The fields within the field string
NUMBERS remain unchanged.
Variant 3
ADD n1 THEN n2 UNTIL nz TO
m.
Effect
Calculates the total as in variant 2 but then adds it to the
contents of the field m .
This is equivalent to: m = m + n1 + n2 + ... +
nz
Example
DATA: BEGIN OF NUMBERS,
ONE TYPE P VALUE 10,
TWO
TYPE P VALUE 20,
THREE TYPE P VALUE 30,
FOUR TYPE P VALUE 40,
FIVE TYPE
P VALUE 50,
END OF NUMBERS,
SUM TYPE I VALUE 1000.
ADD NUMBERS-ONE THEN
NUMBERS-TWO
UNTIL NUMBERS-FIVE TO SUM.
The field SUM now contains
1150.
Variant 4
ADD n1 THEN n2 UNTIL nz
...ACCORDING TO sel
...GIVING m.
Effect
Calculates the total as in variants 2 and 3. In
this case, however, the operands from a sequence of fields of the same type are
restricted to a partial sequence by the selection specification sel generated by
SELECT-OPTIONS or RANGES . The partial sequence results from the indexes that
satisfy the condition IN sel (see IF ).
Example
DATA: BEGIN OF
NUMBERS,
ONE TYPE P VALUE 10,
TWO TYPE P VALUE 20,
THREE TYPE P VALUE
30,
FOUR TYPE P VALUE 40,
FIVE TYPE P VALUE 50,
END OF NUMBERS,
SUM
TYPE I VALUE 1000,
INDEX TYPE I.
RANGES SELECTION FOR
INDEX.
SELECTION-SIGN = 'I'.
SELECTION-OPTION = 'BT'.
SELECTION-LOW
= 2.
SELECTION-HIGH = 4.
APPEND SELECTION.
ADD NUMBERS-ONE THEN
NUMBERS-TWO
UNTIL NUMBERS-FIVE
ACCORDING TO SELECTION
GIVING
SUM.
SUM now contains 90. Only the component fields TWO to FOUR were
selected from the field string NUMBERS and added together.
Variant
5
ADD n1 FROM m1 TO mz GIVING m.
Effect
The field n1 must be the
first in a sequence of consecutive fields of the same type. m1 and mz should
contain the numbers of the first and last fields in this sequence to be added
together (whether fixed or variable). The total is stored in m
.
Example
DATA: BEGIN OF NUMBERS,
ONE TYPE P VALUE 10,
TWO
TYPE P VALUE 20,
THREE TYPE P VALUE 30,
FOUR TYPE P VALUE 40,
FIVE TYPE
P VALUE 50,
END OF NUMBERS,
START TYPE I VALUE 2,
SUM TYPE I VALUE
1000.
ADD NUMBERS-ONE FROM START TO 4 GIVING SUM.
The field SUM now
contains 90.
Note
Performance The details for conversion and
performance specified for COMPUTE are equally valid for ADD .
The runtime
required for adding two numbers of type I or F is about 2 (standardized
microseconds), for type P it is roughly 8 msn.
Note
Runtime
errors
Besides the runtime errors listed in variant 1, the error
ADDF_INT_OVERFLOW can occur instead of COMPUTE_INT_PLUS_OVERFLOW in other
variants.
Related 10 ABAP Syntax Tutorials
Most readed SAP Tutorials
- WRITE - Output to a list ( SAP ABAP Keyword)
WRITE ( Output to a list ) is a keyword used in SAP ABAP programming.This tutorial covers its introduction & syntax details. - List of SAP HR TABLES and Infotypes tables
Detailed full list of tables and infotypes used in SAP HR module. - List of SAP MM Transaction codes
This documentation covers the details of SAP MM Transaction codes - SELECT-OPTIONS ( SAP ABAP Keyword)
SELECT-OPTIONS is a keyword used in SAP ABAP programming.This tutorial covers its introduction & syntax details. - FI Accounts Receivable and Accounts Payable | SAP FI PDF manual
The following topics are an introduction to the Accounts Receivable and Accounts Payable application components. - SELECT clause ( SAP ABAP Keyword)
SELECT clause is a keyword used in SAP ABAP programming.This tutorial covers its introduction & syntax details. - SAP MM Process Flow
The typical procurement cycle for a service or material consists of the following phases:
Latest Added SAP documents
- 9KE9 Transaction code
Details about SAP transaction code 9KE9 - 9KE8 Transaction code
Details about SAP transaction code 9KE8 - 9KE7 Transaction code
Details about SAP transaction code 9KE7 - 9KE6 Transaction code
Details about SAP transaction code 9KE6 - 9KE5 Transaction code
Details about SAP transaction code 9KE5 - 9KE4 Transaction code
Details about SAP transaction code 9KE4 - 9KE3 Transaction code
Details about SAP transaction code 9KE3 - 9KE2 Transaction code
Details about SAP transaction code 9KE2 - 9KE1 Transaction code
Details about SAP transaction code 9KE1 - 9KE0 Transaction code
Details about SAP transaction code 9KE0