The document provides examples of various ABAP 7.x programming concepts including:
1) Variable definition, data types, function modules, and field symbols for looping through internal tables.
2) Different ways to assign values including using VALUE, VALUE #, and methods.
3) Conversions, conditions, switches, and string templates.
4) Pointers, internal tables with various assignment and selection techniques, and reductions.
5) Queries including selections into dynamic variables and tables with unions, cases, and calculations.
6) Object oriented concepts like new, casting, and interfaces.
26. For
DATA(lt_liste) = VALUE tt_liste(
FOR ls_mara IN lt_mara
WHERE ( mtart EQ ‘ABCD’ )
(
material = ls_mara-matnr
text = ls_mara-maktx
)
).
27. For Groups
DATA(lt_bukrs) = VALUE tt_bukrs(
FOR GROUPS grp OF ls_bkpf IN lt_bkpf
WHERE ( gjahr EQ lv_gjahr )
GROUP BY ls_bkpf-bukrs
( bukrs = grp )
).
28. Reduce
lv_sum = REDUCE #(
INIT x TYPE menge_d
FOR ls_mseg IN lt_mseg
WHERE ( matnr EQ lv_matnr )
NEXT x = x + ls_mseg-menge
).
29. Secondary index
TYPES:
tt_bkpf
TYPE STANDARD TABLE OF bkpf
WITH DEFAULT KEY
WITH UNIQUE HASHED KEY k1 COMPONENTS bukrs belnr gjahr
WITH NON-UNIQUE SORTED KEY k2 COMPONENTS xblnr.
31. Select into dynamic itab
SELECT matnr, mtart, matkl
FROM mara
WHERE matnr IN @s_matnr
INTO TABLE @DATA(lt_mat).
32. Select into dynamic variable
SELECT SINGLE name1
FROM kna1
WHERE kunnr eq @lv_kunnr
INTO @DATA(lv_name1).
33. Literals
DATA lt_werks_rng TYPE RANGE OF werks_d.
SELECT
‘I’ AS sign,
‘EQ’ AS option,
werks AS low
FROM t001w
INTO CORRESPONDING FIELDS OF TABLE @lt_werks_rng.
37. Union All
SELECT name1
FROM kna1
WHERE loevm EQ @abap_false
UNION ALL
SELECT name1
FROM lfa1
WHERE loevm eq @abap_false
INTO TABLE @DATA(lt_names).
38. Union Distinct
SELECT stcd1, stcd2
FROM kna1
WHERE loevm EQ @abap_false
UNION DISTINCT
SELECT stcd1, stcd2
FROM lfa1
WHERE loevm eq @abap_false
INTO TABLE @DATA(lt_tax).