Diese Methode fügt Knoten und Einträge in den Baum ein. Dazu benötigen Sie je eine interne Tabelle, in der die einzufügenden Knoten und Einträge enthalten sind.
Die Knotentabelle wird am Frontend in der Reihenfolge abgearbeitet, wie Sie diese aufgebaut haben. Daher müssen Sie darauf achten, daß vor dem Einfügen eines Knotens auch dessen übergeordnete Knoten vorhanden sind.

Ein Tree-Control Proxy-Objekt (hier
CALL METHOD tree->add_nodes_and_items
EXPORTING node_table = node_table
item_table = item_table
item_table_structure_name = item_table_structure_name
EXCEPTIONS failed = 1
cntl_system_error = 2
error_in_tables = 3
dp_error = 4
table_structure_name_not_found = 5.
Parameter |
Bedeutung |
node_table |
Name der internen Knotentabelle Die Tabelle wird mit Bezug auf treev_ntab angelegt. |
item_table |
Name der internen Tabelle der einzufügenden Einträge Die Tabelle wird mit Bezug auf eine selbstdefinierte Struktur angelegt. |
item_table_structure_name |
Name der Struktur, über die Sie die interne Tabelle der Einträge angelegt haben |
Füllen der Knotentabelle:
Die Struktur der Knotentabelle besteht aus folgenden Feldern. Sie müssen diese für jeden Knoten entsprechend füllen.
node_key |
Name des zu definierenden Knotens. Der Name muß ein eindeutiger Schlüssel innerhalb des Baums sein. Der Knoten darf bisher noch nicht existieren. |
relatkey |
Name des verwandten Knotens. Der verwandte Knoten muß bereits im Baum definiert sein. Daher darf er in der Knotentabelle nicht unter dem aktuellen Knoten stehen. Ist dieser Wert initial, wird der Knoten als Wurzelknoten eingefügt. |
relatship |
Art der Verwandtschaft zu dem in relatkey angegebenen Knoten:tree->relat_first_child ( node_key wird als erstes Kind des Knotens relatkey eingefügt)tree->relat_last_child ( node_key wird als letztes Kind des Knotens relatkey eingefügt)tree->relat_prev_sibling ( node_key wird vor relatkey auf gleicher Hierarchiestufe eingefügt)tree->relat_next_sibling ( node_key wird nach relatkey auf gleicher Hierarchiestufe eingefügt)tree->relat_first_sibling ( node_key wird vor allen Knoten eingefügt, die die gleiche Hierarchiestufe wie relatkey besitzen)tree->relat_last_sibling ( node_key wird nach allen Knoten eingefügt, die die gleiche Hierarchiestufe wie relatkey besitzen) |
hidden |
initial: Knoten wird angezeigt ‘X’ : Knoten wird nicht angezeigt |
disabled |
initial: Knoten selektierbar ‘X’ : Knoten nicht selektierbar |
isfolder |
initial: Knoten hat keine Unterknoten ‘X’ : Knoten besitzt Unterknoten |
n_image |
Angabe einer selbstdefinierten Ikone für einen geschlossenen Ordner bzw. ein Blatt: ' ': Es wird die Default-Ikone verwendet '@xy@' : Es wird die Ikone mit dem Namen xy verwendet'BNONE' : Es wird keine Ikone verwendet. Dadurch verschiebt sich die Ausgabe des Knotens nach vorn. |
exp_image |
Angabe einer selbstdefinierten Ikone für einen geöffneten Ordner: ' ': Es wird die Default-Ikone verwendet '@xy@' : Es wird die Ikone mit dem Namen xy verwendet'BNONE' : Es wird keine Ikone verwendet. Dadurch verschiebt sich die Ausgabe des Knotens nach vorn. |
last_hitem |
Name des letzten Eintrags, der unter der Hierarchieüberschrift stehen soll. (nur bei List Tree möglich) |
no_branch |
initial: Hierarchielinie wird zu dem Knoten gezeichnet 'X' : keine Hierarchielinie wird zu dem Knoten gezeichnet |
no_branch |
initial: Es wird eine Zweiglinie zum Knoten gezeichnet 'X' : Es wird keine Zweiglinie zum Knoten gezeichnet. |
expander |
initial: Knoten hat kein '+'-Symbol zum Expandieren. Diese Einstellung ist nur für Knoten ohne Kinder gültig. ‘X’ : Knoten muß Ordner sein ( isfolder = 'X' ) und hat ein '+'-Symbol zum Expandieren. Besitzt der Knoten beim Expandieren noch keine Kinder, wird das Ereignis EXPAND_NO_CHILDREN ausgelöst. |
dragdropid |
Diesem Feld weisen Sie ein Handle auf das Drag&Drop-Verhalten des Knotens zu (siehe auch Definition von Ereignissen bei Drag&Drop im SAP Tree) |
Anlegen der Dictionary-Struktur für die Tabelle der Einträge:
Beim Anlegen Ihrer Dictionary-Struktur
<my_item> müssen Sie die Struktur treev_item includieren und zusätzlich ein Textfeld mit Namen Text definieren. Das Textfeld muß über ein Textdatenelement definiert werden.Füllen der Tabelle der Einträge:
node_key |
Name des Knotens, zu dem dieser Eintrag angezeigt werden soll. |
item_name |
Name der Spalte, in der dieser Eintrag angezeigt werden soll. Beim List Tree sind hier Zahlen ³ 1 erlaubt. Beim Column Tree wird hier die vorher definierte Spalte angegeben. |
class |
tree->item_class_text : Eintrag in Textformtree->item_class_checkbox : Eintrag als Ankreuzfeldtree->item_class_button : Eintrag als Drucktastetree->item_class_link : Eintrag als Link |
font |
Schriftart: tree->item_font_default : entspricht in der Baumstruktur tree->item_font_prop . Im List Tree entspricht es tree->item_font_fixed .tree->item_font_fixed : GUI-Fixed-Fonttree->item_font_prop : GUI-Proportional-Font |
disabled |
Inaktivieren eines Eintrags |
editable |
Editierbarkeit eines Eintrags |
hidden |
Sichtbarkeit eines Eintrags |
alignment |
Ausrichtung eines Eintrags (nur im List Tree) |
t_image |
Ikone des Eintrags |
chosen |
Ankreuzfeld angekreuzt |
togg_right |
togg_right darf nur bei Einträgen der Klasse TREE->ITEM_CLASS_CHECKBOX verwendet werden. Ist togg_right initial, so steht das Ankreuzfeld auf der linken Seite des Textes. Ansonsten steht das Ankreuzfeld auf der rechten Seite des Textes. |
style |
Style des Eintrags. Folgende Styles stehen zur Verfügung: tree->style_default tree->style_inherited tree->style_intensified tree->style_inactive tree->style_intensified_critical tree->style_emphasized_negative tree->style_emphasized_positive tree->style_emphasized |
length |
Sichtbare Länge des Eintrags (nur im List Tree) |
length_pix |
Angabe der Länge in Pixels (nur im List Tree) |
ignoreimag |
Darf nur bei List Tree verwendet werden. initial: LENGTH enthält die Breite des Textes des Eintrags. Besitzt der Eintrag ein Ankreuzfeld oder eine Ikone, so wird deren Breite zur Textbreite addiert.'X': LENGTH enthält die Breite des gesamten Eintrags. Eine vorhandene Ikone nimmt also Breite für den Text weg. |
usebgcolor |
Darf nur bei List Tree verwendet werden. 'X' : Der Eintrag hat eine Hintergrundfarbe, die sich leicht von der Hintergrundfarbe des Tree Controls abhebt.initial: Die Hintergrundfarbe ist gleich. |
text |
Text des Eintrags |

Ein Wechsel der Schriftart durch den Benutzer wirkt sich erst beim nächsten erzeugten SAP Tree aus.

Die Ikone kann über ihren Namen (z.B.
ICON_ANNOTATION ) angesprochen werden. Dazu muß aber in Ihrem Programm das Include <ICON> eingebunden werden.