ABAP Keyword Documentation → ABAP − Reference → ABAP Syntax → ABAP Statements → Operands → Functions and Expressions in Operand Positions → Operand Positions for Functions and Expressions → Reading Positions for Functions and Expressions

# General Expression Positions

General expression positions are reading positions in which suitable data objects, constructor expressions, table expressions, calculation expressions, built-in functions, or functional method calls and method chainings can be specified. The following general expression positions exist:

- Right side of an assignment with the assignment operator
`=`

- Operands of arithmetic expressions and of bit expressions

- Operands of comparison expressions in logical expressions

- Operand of the statement
`CASE`

- Actual parameters for input parameters of methods in meth( ...
),
`RAISE EVENT`

,`CREATE OBJECT`

, and`RAISE EXCEPTION`

or`THROW`

in a conditional expression

- Actual parameters for input parameters of function
modules in the case of
`CALL FUNCTION`

- Arguments of built-in numeric functions if they are themselves executed in an arithmetic expression

- Reference variable
`oref`

of statement`RAISE EXCEPTION oref.`

- The operands behind the addition
`WITH TABLE KEY`

of the statements`READ TABLE itab`

and`DELETE TABLE itab`

- The operands behind the addition WITH
KEY of the statement
`READ TABLE itab`

- Work area
`wa`

of the following statements:

- Expression
`exp`

for dynamic sorts in the case of the following:

- Source fields of the statements
WRITE and
`WRITE TO`

, with the restriction that arithmetic expressions and bit expressions cannot be specified directly and can be specified only as embedded expressions in string templates

The type restrictions defined by the operand type apply in the operand positions. For example, no numeric functions can be specified in a bit expression.

Other versions:
7.31 | 7.40 | **7.54**

Notes

- Specifying functional methods as actual parameters of methods enables the nesting of method calls in an operand position.

- The three types of calculation expression can be executed as operands of relational expressions, but they cannot be mixed in one calculation expression.

Example

Specifies a constructor expressions with the value operator
`VALUE`

on the right side of an assignment and specifies a constructor
expression with the reduction operator `REDUCE`

as an input parameter for the method DISPLAY of the class CL_DEMO_OUTPUT.

```
TYPES itab TYPE TABLE OF i WITH EMPTY KEY.
DATA(itab) = VALUE itab( ( 1 ) ( 2 ) ( 3 ) ).
cl_demo_output=>display(
REDUCE string( INIT s = ``
FOR <wa> IN itab
NEXT s = s && <wa> && ` ` ) ).
```