*&---------------------------------------------------------------------*
*& Report  Z_STRUCTURE                                                 *
*& Komplexe Typstrukturen                                              *
*&---------------------------------------------------------------------*

REPORT  z_structure                   .

* programmlokale Typen,
* die auf eingebaute ABAP-Typen verweisen:
TYPES: surname(20)   TYPE c,
       street(30)    TYPE c,
       zip_code(5)   TYPE n,
       city(30)      TYPE c.

* programmlokale Struktur,
* die auf obige Typen verweist:
TYPES: BEGIN OF addresse,
         name        TYPE surname,
         plz         TYPE zip_code,
         ort         TYPE city,
         strasse     TYPE street,
       END OF addresse.

* programmlokale geschachtelte Struktur,
* die auf obige Typen verweist:
TYPES: BEGIN OF telefon_liste,
         adr           TYPE addresse,

         BEGIN OF telefon,
            vorwahl(8) TYPE c,
            nr(10)     TYPE c,
         END OF telefon ,

       END OF telefon_liste.

DATA liste TYPE telefon_liste .

liste-adr-name           = 'Meier' .
liste-adr-plz            = '53773' .
liste-adr-ort            = 'Hennef/Sieg' .
liste-telefon-vorwahl    = '02242' .
liste-telefon-nr         = '12345678' .

WRITE: liste-adr-name , liste-adr-plz, liste-adr-ort .
WRITE / liste .

