
Das TreeByNestingTableColumn-Element ermöglicht die Integration einer Baumstruktur in eineTable. Dabei gibt es Knoten mit untergeordneten Blättern, ähnlich dem UI-Element Tree. Dabei ist die visuelle Darstellung genauso wie bei einem TreeByKeyTableColumn-Element, nur die Realisierung erfolgt über rekursive Context-Knoten.
Beachten Sie, dass die Properties isLeaf und expanded auf Attribute der dataSource gebunden werden müssen. Die Bindung auf Unterknoten der dataSource ist aus Performance-Gründen hier nicht erlaubt.
Beachten Sie, dass derSelektionsschalter (Tabellen-Selektionsmenü) für hierarchische Tabellen (TreeByKeyTableColumn, TreeByNestingTableColumn) nicht zur Verfügung steht.
Die folgende Liste enthält Beispiele für Funktionen, die die UI-Elemente für die hierarchische Tabelle im Gegensatz zumTree erlauben:
Selektion holen und frei machen
selected_elements =
CL_WD_DYNAMIC_TOOL=>GET_TABLE_TREE_SELECTION(
DATA_SOURCE = context_node_of_the_data_source
).
lead_selection =
CL_WD_DYNAMIC_TOOL=>GET_TABLE_TREE_LEAD_SELECTION(
DATA_SOURCE = context_node_of_the_data_source
).
Mit including_single_selection=true werden alle Single-Selektionen und Multi-Selektionen entfernt und eine Single-Selektion wird auf das Element der Lead-Selection gesetzt.
CL_WD_DYNAMIC_TOOL=>SET_TABLE_TREE_LEAD_SELECTION(
LEAD_SELECTION = new_lead_selection_element
DATA_SOURCE = context_node_of_the_data_source
).
CL_WD_DYNAMIC_TOOL=>SET_TABLE_TREE_LEAD_SELECTION(
DATA_SOURCE = context_node_of_the_data_source
).
Beispiel für die visuelle Darstellung
Unterschied zwischen TreeByKeyTableColumn und TreeByNestingTableColumn
Der Unterschied zwischen diesen beiden UI-Elementen besteht im Datenmodell: Bei TreeByKeyTableColumn werden alle Daten in einen Context-Knoten abgelegt und die Hierarchie entsteht durch die Beziehung von dem key- und den parentKey-Attributen. Beim TreeByNestingTableColumn wird die Hierarchie durch den Context ausgedrückt.
Wenn Sie im Datenmodel bereits diese key- und parentKey-Attribute haben, die zu erwartende Datenmenge nicht zu groß ist und Sie üblicherweise alle Daten auf einmal in den Tree stellen möchten, dann empfehlen wir die TreeByKeyTableColumn, ansonsten TreeByNestingTableColumn.
| Laufzeit-Klasse |
CL_WD_TREE_BY_NST_TABLE_COL |
Eigenschaften im View Designer
| Name | Typ | Anfangswert | Bindbar |
|---|---|---|---|
|
STRING |
(automatisch) |
nein |
|
|
Übersetzbarer Text |
ja |
||
|
WDUI_TABLE_CELL_DESIGN |
standard |
ja |
|
|
WDY_BOOLEAN |
false |
ja |
|
|
WDUI_CONTEXT_MENU_BEHAVIOUR |
inherit |
nein |
|
|
WDY_MD_UI_ELEMENT_REFERENCE |
nein |
||
|
WDY_BOOLEAN |
false |
muss |
|
|
WDY_BOOLEAN |
false |
ja |
|
|
WDY_BOOLEAN |
false |
ja |
|
|
WDY_BOOLEAN |
true |
ja |
|
|
WDUI_TABLE_HIER_SYMBOL_DESIGN |
standard |
nein |
|
|
WDUI_VISIBILITY |
visible |
ja |
|
|
STRING |
ja |
Aggregationen im View Designer
| Name | Kardinalität | Typ |
|---|---|---|
|
0..1 |
||
|
1..1 |
TableCellEditor |
Events im View Designer
| Name |
|---|
Weitere Eigenschaften, die über Vererbung zur Verfügung stehen, sind in den dazugehörigen übergeordneten Klassen definiert. Die dazugehörigen Oberflächenelemente sind:
Für die dynamische Programmierung stehen dieselben Eigenschaften, Ereignisse und Aggregationen zur Verfügung wie im View Designer. Beachten Sie dabei die unterschiedlichen Schreibweisen.
Dynamische Programmierung der Eigenschaften
| View Designer Name | Laufzeitname | Typ |
|---|---|---|
|
ACCESSIBILITY_DESCR |
WDY_MD_TRANSLATABLE_TEXT |
|
|
CELL_DESIGN |
WDUI_TABLE_CELL_DESIGN |
|
|
cellDesign: badvalue_dark |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-BADVALUE_DARK |
|
|
cellDesign: badvalue_light |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-BADVALUE_LIGHT |
|
|
cellDesign: badvalue_medium |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-BADVALUE_MEDIUM |
|
|
cellDesign: calendarAqua |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CALENDAR_AQUA |
|
|
cellDesign: calendarBlue |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CALENDAR_BLUE |
|
|
cellDesign: calendarBrown |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CALENDAR_BROWN |
|
|
cellDesign: calendarGreen |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CALENDAR_GREEN |
|
|
cellDesign: calendarMetal |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CALENDAR_METAL |
|
|
cellDesign: calendarPeach |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CALENDAR_PEACH |
|
|
cellDesign: calendarPurple |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CALENDAR_PURPLE |
|
|
cellDesign: calendarRose |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CALENDAR_ROSE |
|
|
cellDesign: calendarStandard |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CALENDAR_STANDARD |
|
|
cellDesign: calendarTeal |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CALENDAR_TEAL |
|
|
cellDesign: calendarYellow |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CALENDAR_YELLOW |
|
|
cellDesign: criticalvalue_dark |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CRITICALVALUE_DARK |
|
|
cellDesign: criticalvalue_light |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CRITICALVALUE_LIGHT |
|
|
cellDesign: criticalvalue_medium |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-CRITICALVALUE_MEDIUM |
|
|
cellDesign: four |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-FOUR |
|
|
cellDesign: goodvalue_dark |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-GOODVALUE_DARK |
|
|
cellDesign: goodvalue_light |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-GOODVALUE_LIGHT |
|
|
cellDesign: goodvalue_medium |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-GOODVALUE_MEDIUM |
|
|
cellDesign: group_level1 |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-GROUP_LEVEL1 |
|
|
cellDesign: group_level2 |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-GROUP_LEVEL2 |
|
|
cellDesign: group_level3 |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-GROUP_LEVEL3 |
|
|
cellDesign: key_medium |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-KEY_MEDIUM |
|
|
cellDesign: negative |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-NEGATIVE |
|
|
cellDesign: one |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-ONE |
|
|
cellDesign: positive |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-POSITIVE |
|
|
cellDesign: standard |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-STANDARD |
|
|
cellDesign: three |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-THREE |
|
|
cellDesign: two |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CELL_DESIGN-TWO |
|
|
CHILDREN_LOADED |
WDY_BOOLEAN |
|
|
CONTEXT_MENU_BEHAVIOUR |
WDUI_CONTEXT_MENU_BEHAVIOUR |
|
|
contextMenuBehaviour: inherit |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CONTEXT_MENU_BEHAVIOUR-INHERIT |
|
|
contextMenuBehaviour: provide |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CONTEXT_MENU_BEHAVIOUR-PROVIDE |
|
|
contextMenuBehaviour: suppress |
CL_WD_TREE_BY_NST_TABLE_COL=>E_CONTEXT_MENU_BEHAVIOUR-SUPPRESS |
|
|
CONTEXT_MENU_ID |
WDY_MD_UI_ELEMENT_REFERENCE |
|
|
EXPANDED |
WDY_BOOLEAN |
|
|
HEADER_TEXT_WRAPPING |
WDY_BOOLEAN |
|
|
IS_LEAF |
WDY_BOOLEAN |
|
|
RESIZABLE |
WDY_BOOLEAN |
|
|
SYMBOL_DESIGN |
WDUI_TABLE_HIER_SYMBOL_DESIGN |
|
|
symbolDesign: simple |
CL_WD_TREE_BY_NST_TABLE_COL=>E_SYMBOL_DESIGN-SIMPLE |
|
|
symbolDesign: standard |
CL_WD_TREE_BY_NST_TABLE_COL=>E_SYMBOL_DESIGN-STANDARD |
|
|
VISIBLE |
WDUI_VISIBILITY |
|
|
visible: none |
CL_WD_TREE_BY_NST_TABLE_COL=>E_VISIBLE-NONE |
|
|
visible: visible |
CL_WD_TREE_BY_NST_TABLE_COL=>E_VISIBLE-VISIBLE |
|
|
WIDTH |
STRING |
Dynamische Programmierung der Ereignisse
| View Designer Name | Laufzeitname |
|---|---|
|
ON_LOAD_CHILDREN |
|
|
ON_TOGGLE |
Dynamische Programmierung der Aggregationen
| View Designer Name | Laufzeitname | Kardinalität |
|---|---|---|
|
HEADER |
0..1 |
|
|
TABLE_CELL_EDITOR |
1..1 |
Ein Beispiel für dieses Oberflächenelement finden Sie im System in der Component WDT_TREE_TABLE_BY_NST.