
In einer Web-Dynpro-Tabelle werden Daten zweidimensional in Tabellenzellen, die in Zeilen und Spalten angeordnet sind, dargestellt. Eine Table ist scrollbar.
Die Web-Dynpro-Tabelle setzt sich aus dem übergeordneten UI-Element Table und mehreren View-Elementen für Tabellenspalten, TableColumn, zusammen. Die Table enthält Eigenschaften, die für die gesamte Tabelle gelten, wie beispielsweise die Festlegung, ob die Tabelle eingabefähig ist oder nicht ( readOnly=true).Manche Eigenschaften können auch zeilenweise verändert werden (z.B. rowSelectable). Bei einer Table bestimmen die Eigenschaften der aggregierten Header- Caption die Spaltenüberschrift. Die TableColumn enthält Eigenschaften , die für die gesamte Spalte gelten und zusätzlich auch Eigenschaften, die für Zellen gelten und deren Wert per Bindung pro Zeile variieren kann.
Die Spaltenüberschrift wird durch die Aggregation Header über ein Caption-UI-Element realisiert. Die zweite Aggregation des TableColumn mit dem Namen TableCellEditor enthält ein UI-Element, das für die Darstellung der Zelleninhalte in der Spalte genutzt wird. Wenn die entsprechenden UI-Elemente auf readOnly-Attribute gebunden sind, sind sie daher auch in der Table nicht eingabebereit.
Die Table stellt die Elemente des an dataSource gebundenen Context-Knotens als Zeilen dar. Alle Eigenschaften eines TableCellEditor, die auf ein Attribut der dataSource gebunden sind, bzw. an Context-Knoten, die innerhalb der dataSource liegen, nehmen in einer Zeile nicht wie sonst üblich den Wert der Lead-Selection des Knotens an, sondern den Wert der aktuellen Zeile.
Die Aspekte, die bei dem Layouting einer Table
bzw. TableColumn bezüglich der Spaltenbreite zu
berücksichtigen sind, finden Sie in SAP-Hinweis 1253282
.
Die Verwendung des Table UI-Elements in den UI-Elementen TablePopin und RowRepeater wird nicht unterstützt.
Visualisierung
Eine Table besteht aus folgenden Bestandteilen:
Table-Überschrift ( Table-Header)
Diese Aggregation ist optional und läßt sich in der SE80 über den Kontextmenü-Eintrag Header einfügen befüllen.
ToolBar
Diese Aggregation ist optional und läßt sich in der SE80 über den Kontextmenü-Eintrag Toolbar einfügen befüllen.
Spaltenüberschriften/Hierarchie von Spaltenüberschriften ( TableColumn-Header)
Ist für alle Spalten (auch unsichtbare) der Header auf Caption.visibility=none gesetzt, so wird die Zeile mit den Spaltenüberschriften ausgeblendet
Datenzeilen mit den TableCellEditoren ( Cell-Editor einfügen)
Der Inhalt der Datenzeilen wird bestimmt durch:
TableColumn s und Zellenvarianten
Inhalt der Table.dataSource
TableCellEditoren
Informationen zur Verwendung des TextEdit UI-Elements als Zelleditor finden Sie unter Text in einer Table oder CTable editieren
Scrollbars
Für jede Table wird am rechten Rand eine Scrollbar angezeigt.
Beim Scrollen durch eine Table wird ein Tooltip angezeigt. Die Texte für diese Scroll-Tipps können Sie über die Aggregation SCROLL_TIP_PROVIDER festlegen. Wenn neue Daten geladen werden müssen, wird der Roundtrip zum Server durch das Loslassen der Maustaste ausgelöst. Des weiteren gibt es verschiedene Möglichkeiten des Spalten-Scrolling.
Neben diesen allgemeinen Funktionen kann eine Table auch wesentlich komplexere Features enthalten.
|
Feature |
Beschreibung |
|---|---|
|
Drag&Drop von Zeilen einer Table bzw von Zeileninhalten |
|
|
TreeByKeyTableColumn und TreeByNestingTableColumn |
|
|
Popins auf Zellen- und Zeilen-Ebene |
|
|
Zusammenfassen von gleichen Überschriften mehrerer Zeilen oder Spalten |
|
|
Zusammenfassen von gleichen Feldern einer Spalte |
|
|
TableCellVariants |
|
|
Selektion und Selektionsspalte, Selektions- und Hierarchiemenü |
|
|
Sie können festlegen, dass eine Table bzw. die einzelnen Spalten ( TableColumn) sortierbar sind |
|
|
Sie können in einer Table die einzelnen TableColumn s nach bestimmten Kriterien filtern. |
|
|
Verschiedene Möglichkeiten für das Spalten-Scrolling |
|
|
Zusammenhang von Eigenschaften und Context |
|
|
Methodenhandler |
Spezielle Funktionen sind über den Methodenhandler IF_WD_TABLE_METHOD_HNDL zugänglich. Weitere Informationen zum Interface finden Sie im System unter dem entsprechenden Objekt. |
|
Unterstützung der Entwicklung barrierefreier Anwendungen durch spezielle Eigenschaften |
|
|
Beachten Sie, dass die Summierung nur für die SAP List Viewer Integration zur Verfügung steht. |
Table-Details
|
Laufzeit-Klasse: |
CL_WD_TABLE |
Eigenschaften im View Designer
|
Name |
Typ |
Anfangswert |
Bindbar |
|---|---|---|---|
|
STRING |
(automatisch) |
nein |
|
|
Übersetzbarer Text |
ja |
||
|
WDY_BOOLEAN |
false |
nein |
|
|
WDR_CELL_STYLE_CLASS_NAMES |
ja |
||
|
WDUI_TABLE_COLUMN_RESIZE_MODE |
preserveTableWidth |
nein |
|
|
WDUI_CONTEXT_MENU_BEHAVIOUR |
inherit |
nein |
|
|
WDY_MD_UI_ELEMENT_REFERENCE |
nein |
||
|
Context-Knoten |
muss |
||
|
WDY_MD_UI_ELEMENT_REFERENCE |
ja |
||
|
WDUI_TABLE_DESIGN |
standard |
ja |
|
|
WDY_BOOLEAN |
true |
ja |
|
|
STRING |
ja |
||
|
Übersetzbarer Text |
ja |
||
|
WDY_BOOLEAN |
true |
ja |
|
|
I |
0 |
ja |
|
|
I |
0 |
ja |
|
|
STRING |
ja |
||
|
WDY_BOOLEAN |
false |
ja |
|
|
WDY_BOOLEAN |
true |
ja |
|
|
WDUI_TABLE_GRID_MODE |
both |
ja |
|
|
WDY_BOOLEAN |
false |
nein |
|
|
WDY_MD_UI_ELEMENT_REFERENCE |
ja |
||
|
WDY_BOOLEAN |
false |
ja |
|
|
WDY_BOOLEAN |
false |
ja |
|
|
I |
-1 |
ja |
|
|
WDY_BOOLEAN |
true |
ja |
|
|
I |
-1 |
ja |
|
|
STRING |
ja |
||
|
WDUI_TABLE_SEL_CHNG_BEHVR |
auto |
nein |
|
|
WDUI_TABLE_SEL_COL_DESIGN |
default |
ja |
|
|
WDUI_TSMODE |
auto |
ja |
|
| styleClassName | STRING | ja | |
|
Übersetzbarer Text |
ja |
||
|
WDUI_VISIBILITY |
visible |
ja |
|
|
I |
5 |
ja |
|
|
STRING |
ja |
Aggregationen im View Designer
|
Name |
Kardinalität |
Typ |
|---|---|---|
|
0..n |
||
|
0..1 |
||
|
0..n |
||
|
0..1 |
||
|
0..n |
||
|
0..1 |
||
|
0..1 |
||
|
0..1 |
||
|
0..1 |
||
|
0..1 |
TableRowArrangement |
|
|
0..1 |
||
|
0..1 |
TableSelectionMenuConfiguration |
|
|
0..1 |
Events im View Designer
Weitere Eigenschaften, die über Vererbung zur Verfügung stehen, sind in den dazugehörigen übergeordneten Klassen definiert. Die dazugehörigen Oberflächenelemente sind:
Dynamische Programmierung
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 |
|
|
ACTIVATE_ACCESS_KEY |
WDY_BOOLEAN |
|
|
CELL_STYLE_CLASS_NAMES |
WDR_CELL_STYLE_CLASS_NAMES |
|
|
COLUMN_RESIZE_MODE |
WDUI_TABLE_COLUMN_RESIZE_MODE |
|
|
columnResizeMode: preserveOtherColumnWidths |
CL_WD_TABLE=>E_COLUMN_RESIZE_MODE-PRESERVE_OTHER_COLUMN_WIDTHS |
|
|
columnResizeMode: preserveTableWidth |
CL_WD_TABLE=>E_COLUMN_RESIZE_MODE-PRESERVE_TABLE_WIDTH |
|
|
CONTEXT_MENU_BEHAVIOUR |
WDUI_CONTEXT_MENU_BEHAVIOUR |
|
|
contextMenuBehaviour: inherit |
CL_WD_TABLE=>E_CONTEXT_MENU_BEHAVIOUR-INHERIT |
|
|
contextMenuBehaviour: provide |
CL_WD_TABLE=>E_CONTEXT_MENU_BEHAVIOUR-PROVIDE |
|
|
contextMenuBehaviour: suppress |
CL_WD_TABLE=>E_CONTEXT_MENU_BEHAVIOUR-SUPPRESS |
|
|
CONTEXT_MENU_ID |
WDY_MD_UI_ELEMENT_REFERENCE |
|
|
DATA_SOURCE |
OBJECT |
|
|
DEFAULT_BUTTON_ID |
WDY_MD_UI_ELEMENT_REFERENCE |
|
|
DESIGN |
WDUI_TABLE_DESIGN |
|
|
design: alternating |
CL_WD_TABLE=>E_DESIGN-ALTERNATING |
|
|
design: standard |
CL_WD_TABLE=>E_DESIGN-STANDARD |
|
|
design: transparent |
CL_WD_TABLE=>E_DESIGN-TRANSPARENT |
|
|
design: transparentWithGrid |
CL_WD_TABLE=>E_DESIGN-TRANSPARENT_WITH_GRID |
|
|
DISPLAY_EMPTY_ROWS |
WDY_BOOLEAN |
|
|
DROP_ON_ROW_NAME |
STRING |
|
|
EMPTY_TABLE_TEXT |
WDY_MD_TRANSLATABLE_TEXT |
|
|
ENABLED |
WDY_BOOLEAN |
|
|
FIRST_ACTUAL_ROW |
I |
|
|
FIRST_VISIBLE_ROW |
I |
|
|
FIRST_VISIBLE_SCROLL_COL |
STRING |
|
|
FIXED_TABLE_LAYOUT |
WDY_BOOLEAN |
|
|
FOOTER_VISIBLE |
WDY_BOOLEAN |
|
|
GRID_MODE |
WDUI_TABLE_GRID_MODE |
|
|
gridMode: both |
CL_WD_TABLE=>E_GRID_MODE-BOTH |
|
|
gridMode: horizontal |
CL_WD_TABLE=>E_GRID_MODE-HORIZONTAL |
|
|
gridMode: none |
CL_WD_TABLE=>E_GRID_MODE-NONE |
|
|
gridMode: vertical |
CL_WD_TABLE=>E_GRID_MODE-VERTICAL |
|
|
HANDLE_HOTKEYS |
WDY_BOOLEAN |
|
|
LEGEND_ID |
WDY_MD_UI_ELEMENT_REFERENCE |
|
|
MULTI_COL_SORTING |
WDY_BOOLEAN |
|
|
READ_ONLY |
WDY_BOOLEAN |
|
|
ROW_COUNT |
I |
|
|
ROW_SELECTABLE |
WDY_BOOLEAN |
|
|
SCROLLABLE_COL_COUNT |
I |
|
|
SELECTED_POPIN |
STRING |
|
|
SELECTION_CHANGE_BEHAVIOUR |
WDUI_TABLE_SEL_CHNG_BEHVR |
|
|
selectionChangeBehaviour: auto |
CL_WD_TABLE=>E_SELECTION_CHANGE_BEHAVIOUR-AUTO |
|
|
selectionChangeBehaviour: ifNoLoss |
CL_WD_TABLE=>E_SELECTION_CHANGE_BEHAVIOUR-IF_NO_LOSS |
|
|
selectionChangeBehaviour: manual |
CL_WD_TABLE=>E_SELECTION_CHANGE_BEHAVIOUR-MANUAL |
|
|
SELECTION_COLUMN_DESIGN |
WDUI_TABLE_SEL_COL_DESIGN |
|
|
selectionColumnDesign: default |
CL_WD_TABLE=>E_SELECTION_COLUMN_DESIGN-DEFAULT |
|
|
selectionColumnDesign: none |
CL_WD_TABLE=>E_SELECTION_COLUMN_DESIGN-NONE |
|
|
selectionColumnDesign: standard |
CL_WD_TABLE=>E_SELECTION_COLUMN_DESIGN-STANDARD |
|
|
selectionColumnDesign: toggle |
CL_WD_TABLE=>E_SELECTION_COLUMN_DESIGN-TOGGLE |
|
|
SELECTION_MODE |
WDUI_TSMODE |
|
|
selectionMode: auto |
CL_WD_TABLE=>E_SELECTION_MODE-AUTO |
|
|
selectionMode: multi |
CL_WD_TABLE=>E_SELECTION_MODE-MULTI |
|
|
selectionMode: multiNoLead |
CL_WD_TABLE=>E_SELECTION_MODE-MULTI_NO_LEAD |
|
|
selectionMode: none |
CL_WD_TABLE=>E_SELECTION_MODE-NONE |
|
|
selectionMode: single |
CL_WD_TABLE=>E_SELECTION_MODE-SINGLE |
|
|
selectionMode: singleNoLead |
CL_WD_TABLE=>E_SELECTION_MODE-SINGLE_NO_LEAD |
|
| styleClassName | STYLE_CLASS_NAME | STRING |
|
TOOLTIP |
WDY_MD_TRANSLATABLE_TEXT |
|
|
VISIBLE |
WDUI_VISIBILITY |
|
|
visible: none |
CL_WD_TABLE=>E_VISIBLE-NONE |
|
|
visible: visible |
CL_WD_TABLE=>E_VISIBLE-VISIBLE |
|
|
VISIBLE_ROW_COUNT |
I |
|
|
WIDTH |
STRING |
Dynamische Programmierung der Ereignisse
|
View Designer Name |
Laufzeitname |
|---|---|
|
ON_COL_SELECT |
|
|
ON_CUSTOM_FILTER |
|
|
ON_DROP |
|
|
ON_FILTER |
|
|
ON_LEAD_SELECT |
|
|
ON_SCROLL |
|
|
ON_SELECT |
|
|
ON_SORT |
Dynamische Programmierung der Aggregationen
|
View Designer Name |
Laufzeitname |
Kardinalität |
|---|---|---|
|
COLUMNS |
0..n |
|
|
DRAG_SOURCE_INFO |
0..1 |
|
|
DROP_ROW_TRG_INFS |
0..n |
|
|
DROP_TARGET_INFO |
0..1 |
|
|
GROUPED_COLUMNS |
0..n |
|
|
HEADER |
0..1 |
|
|
LEGEND_POPIN |
0..1 |
|
|
MASTER_COLUMN |
0..1 |
|
|
POPIN |
0..1 |
|
|
ROW_ARRANGEMENT |
0..1 |
|
|
SCROLL_TIP_PROVIDER |
0..1 |
|
|
SEL_MENU_CFG |
0..1 |
|
|
TOOLBAR |
0..1 |
Beispiele für dieses Oberflächenelement finden Sie im System:
Web-Dynpro-Applikation WDR_TEST_UI_ELEMENTS
Component WDR_TEST_EVENTS in der View Table
Component WDR_TEST_TABLE
Component WDR_TEST_TABLE_BTC für den Fall WDUIGUIDELINE=GL20
Component DEMO_TABLE