Code: Alles auswählen.
data children type standard table of ref to class1.
children[ 1 ]->data = 'text'.
Code: Alles auswählen.
class class1 DEFINITION.
data: data type string.
data: parent type ref to class1.
data: children type standard table of REF TO class1 with empty key.
...
START-OF-SELECTION.
data data type string.
data children type standard table of ref to class1.
children[ 1 ]->data = 'text'.
Code: Alles auswählen.
append new #( ) to children. "Eine neue Zeile mit einer leeren Instanz einfügen
children[ 1 ]->data = 'text'. "Die erste Zeile einlesen und einen Wert zuweisen.
Das ist die Aufgabe von "->".DeathAndPain hat geschrieben: ↑07.01.2020 10:49Ich habe mit sowas keine Übung, aber rein von der Theorie her ist children doch nicht als Tabelle von Objekten, sondern als Tabelle von Referenzen auf Objekte definiert. Kann man da trotzdem mit children[ 1 ]->data auf die Attribute zugreifen? Ich hätte erwartet, dass man das Objekt erst mal dereferenzieren muss, bevor man an den Inhalt rankommt.
Code: Alles auswählen.
append new #( ) to children.
Code: Alles auswählen.
append new #( data = 'test' ) to children.
Code: Alles auswählen.
write children[ 1 ]->data.
Code: Alles auswählen.
DATA(child) = children[ 1 ].
WRITE child->data.
Code: Alles auswählen.
DATA(child) = children[ 1 ].
Wie willst du mit INSERT Spalten hinzufügen? Damit kann man, ebenso wie mit APPEND, nur Zeilen hinzufügen. Einziger Unterschied ist, dass man sich den "Einfügepunkt" aussuchen kann.
So
Code: Alles auswählen.
LOOP AT children INTO child.
write child->data.
ENDLOOP.