
Generell empfiehlt es sich, nicht zu viele Spalten in eine Table einzufügen. Falls dies dennoch nötig sein sollte, dann kann durch Spalten-Scrolling das horizontale Scrolling des Browserfensters verhindert werden.
Es gibt die folgenden sinnvollen Varianten für das Spalten-Scrolling:
Feste Angabe der Anzahl sichtbarer Spalten
Dieser Modus wird durch die Angabe einer festen Zahl scrollbarer Spalten in der Eigenschaft scrollableColumnCount aktiviert. Es werden dann immer maximal die angegebene Anzahl an Spalten angezeigt und ein Paginator im Footer wird zum Scrollen angeboten.
In die Table passende Spalten
Damit dieser Modus zuverlässig funktioniert, müssen eine Reihe von Vorraussetzungen erfüllt werden:
scrollableColumnCount = -2 aktiviert den Modus
Es sollte zudem mit fixedTableLayout=true aktiviert werden, dass Spalten nur so breit wie angegeben werden
Die Breitenangaben aller Spalten und der Table müssen gesetzt sein, und das auch in der selben Einheit (Ausnahme: die Table-Breite kann auch in anderen Einheiten sein, wenn die Spaltenbreiten in Prozent angegeben sind)
Es werden dann so viele Spalten angezeigt wie in die Table passen. Sollte eine der Spalten zu breit sein, eine falsche Einheit oder gar keine Breitenangabe haben, so wird sie einzeln in voller Table-Breite angezeigt. Beachten Sie, dass bei vorhandener Selektionsspalte die Table um diese Spalte breiter als angegeben wird.
Falls WDUIGUIDELINE=GL20 und columnResizeBehavior=preserveOtherColumns gesetzt sind, bekommen Sie ein stufenloses client-seitiges Spaltenscrolling.
Falls columnResizeMode=preserveOtherColumnWidths, müssen die folgenden Bedingungen erfüllt sein:
Es muss gesetzt sein: table.fixedTableLayout=true
Table.width muss angegeben werden
Alle TableColumn.width müssen eine Breite in ex, em oder px gesetzt haben
Wenn eine solche Breite nicht gesetzt ist, versucht das Web-Dynpro-Framework, aus dem Zelleditor eine Breite zu ermitteln.
Beachten Sie, dass bei columnResizeMode=preserveOtherColumnWidths keine fixierten Tabellenspalten möglich sind.