Show TOC

TableLocate this document in the navigation structure

Verwendung

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 Auf SAP-Site veröffentlichte Informationen.

Achtung

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

    Hinweis

    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

Drag&Drop von Zeilen einer Table bzw von Zeileninhalten

Hierarchische Tabellen

TreeByKeyTableColumn und TreeByNestingTableColumn

Popins

Popins auf Zellen- und Zeilen-Ebene

Überschriften-Gruppierung

Zusammenfassen von gleichen Überschriften mehrerer Zeilen oder Spalten

Zeilengruppierung

Zusammenfassen von gleichen Feldern einer Spalte

Varianten

TableCellVariants

Selektieren in einer Table

Selektion und Selektionsspalte, Selektions- und Hierarchiemenü

Sortieren von Spalten

Sie können festlegen, dass eine Table bzw. die einzelnen Spalten ( TableColumn) sortierbar sind

Filtern von Spalten

Sie können in einer Table die einzelnen TableColumn s nach bestimmten Kriterien filtern.

Scrollen von Spalten

Verschiedene Möglichkeiten für das Spalten-Scrolling

Datenbindung

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.

Barrierefreiheit

Unterstützung der Entwicklung barrierefreier Anwendungen durch spezielle Eigenschaften

Summierung

Beachten Sie, dass die Summierung nur für die SAP List Viewer Integration zur Verfügung steht.

Beispiel für die visuelle Darstellung

Table-Details

Laufzeit-Klasse:

CL_WD_TABLE

Eigenschaften im View Designer

Name

Typ

Anfangswert

Bindbar

id

STRING

(automatisch)

nein

accessibilityDescription

Übersetzbarer Text

ja

activateAccessKey

WDY_BOOLEAN

false

nein

cellStyleClassNames

WDR_CELL_STYLE_CLASS_NAMES

 

ja

columnResizeMode

WDUI_TABLE_COLUMN_RESIZE_MODE

preserveTableWidth

nein

contextMenuBehaviour

WDUI_CONTEXT_MENU_BEHAVIOUR

inherit

nein

contextMenuId

WDY_MD_UI_ELEMENT_REFERENCE

nein

dataSource

Context-Knoten

muss

defaultButtonId

WDY_MD_UI_ELEMENT_REFERENCE

ja

design

WDUI_TABLE_DESIGN

standard

ja

displayEmptyRows

WDY_BOOLEAN

true

ja

dropOnRowName

STRING

ja

emptyTableText

Übersetzbarer Text

ja

enabled

WDY_BOOLEAN

true

ja

firstActualRow

I

0

ja

firstVisibleRow

I

0

ja

firstVisibleScrollableCol

STRING

ja

fixedTableLayout

WDY_BOOLEAN

false

ja

footerVisible

WDY_BOOLEAN

true

ja

gridMode

WDUI_TABLE_GRID_MODE

both

ja

handleHotkeys

WDY_BOOLEAN

false

nein

legendId

WDY_MD_UI_ELEMENT_REFERENCE

ja

multiColSorting

WDY_BOOLEAN

false

ja

readOnly

WDY_BOOLEAN

false

ja

rowCount

I

-1

ja

rowSelectable

WDY_BOOLEAN

true

ja

scrollableColCount

I

-1

ja

selectedPopin

STRING

ja

selectionChangeBehaviour

WDUI_TABLE_SEL_CHNG_BEHVR

auto

nein

selectionColumnDesign

WDUI_TABLE_SEL_COL_DESIGN

default

ja

selectionMode

WDUI_TSMODE

auto

ja

styleClassName STRING   ja

tooltip

Übersetzbarer Text

ja

visible

WDUI_VISIBILITY

visible

ja

visibleRowCount

I

5

ja

width

STRING

ja

Aggregationen im View Designer

Events im View Designer

Hinweis

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

accessibilityDescription

ACCESSIBILITY_DESCR

WDY_MD_TRANSLATABLE_TEXT

activateAccessKey

ACTIVATE_ACCESS_KEY

WDY_BOOLEAN

cellStyleClassNames

CELL_STYLE_CLASS_NAMES

WDR_CELL_STYLE_CLASS_NAMES

columnResizeMode

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

contextMenuBehaviour

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

contextMenuId

CONTEXT_MENU_ID

WDY_MD_UI_ELEMENT_REFERENCE

dataSource

DATA_SOURCE

OBJECT

defaultButtonId

DEFAULT_BUTTON_ID

WDY_MD_UI_ELEMENT_REFERENCE

design

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

displayEmptyRows

DISPLAY_EMPTY_ROWS

WDY_BOOLEAN

dropOnRowName

DROP_ON_ROW_NAME

STRING

emptyTableText

EMPTY_TABLE_TEXT

WDY_MD_TRANSLATABLE_TEXT

enabled

ENABLED

WDY_BOOLEAN

firstActualRow

FIRST_ACTUAL_ROW

I

firstVisibleRow

FIRST_VISIBLE_ROW

I

firstVisibleScrollableCol

FIRST_VISIBLE_SCROLL_COL

STRING

fixedTableLayout

FIXED_TABLE_LAYOUT

WDY_BOOLEAN

footerVisible

FOOTER_VISIBLE

WDY_BOOLEAN

gridMode

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

handleHotkeys

HANDLE_HOTKEYS

WDY_BOOLEAN

legendId

LEGEND_ID

WDY_MD_UI_ELEMENT_REFERENCE

multiColSorting

MULTI_COL_SORTING

WDY_BOOLEAN

readOnly

READ_ONLY

WDY_BOOLEAN

rowCount

ROW_COUNT

I

rowSelectable

ROW_SELECTABLE

WDY_BOOLEAN

scrollableColCount

SCROLLABLE_COL_COUNT

I

selectedPopin

SELECTED_POPIN

STRING

selectionChangeBehaviour

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

selectionColumnDesign

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

selectionMode

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

TOOLTIP

WDY_MD_TRANSLATABLE_TEXT

visible

VISIBLE

WDUI_VISIBILITY

 visible: none

CL_WD_TABLE=>E_VISIBLE-NONE

 visible: visible

CL_WD_TABLE=>E_VISIBLE-VISIBLE

visibleRowCount

VISIBLE_ROW_COUNT

I

width

WIDTH

STRING

Dynamische Programmierung der Ereignisse

View Designer Name

Laufzeitname

onColSelect

ON_COL_SELECT

onCustomFilter

ON_CUSTOM_FILTER

onDrop

ON_DROP

onFilter

ON_FILTER

onLeadSelect

ON_LEAD_SELECT

onScroll

ON_SCROLL

onSelect

ON_SELECT

onSort

ON_SORT

Dynamische Programmierung der Aggregationen

View Designer Name

Laufzeitname

Kardinalität

Tabellenspalte

COLUMNS

0..n

DRAG_SOURCE_INFO

DRAG_SOURCE_INFO

0..1

DROP_ROW_TRG_INFS

DROP_ROW_TRG_INFS

0..n

DROP_TARGET_INFO

DROP_TARGET_INFO

0..1

Gruppenspalte

GROUPED_COLUMNS

0..n

Header

HEADER

0..1

Legendenpopin

LEGEND_POPIN

0..1

Masterspalte

MASTER_COLUMN

0..1

Tabellenpopin

POPIN

0..1

Zeilenanordnung

ROW_ARRANGEMENT

0..1

SCROLL_TIP_PROVIDER

SCROLL_TIP_PROVIDER

0..1

SEL_MENU_CFG

SEL_MENU_CFG

0..1

Toolbar

TOOLBAR

0..1

Beispiel

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