
Standardmäßig werden alle Spalten in derselben Reihenfolge angeordnet wie die Attribute im Context-Knoten Ihrer Anwendung. Sie können die Reihenfolge der Spalten ändern. Dazu haben Sie folgende Möglichkeiten:
Positionsnummer ändern
Spalte fixieren
Darüber hinaus können Sie festlegen, ob der Benutzer Spalten fixieren darf.
Informationen zur Reihenfolge von Hierarchiespalten finden Sie unter Tabelle als Hierarchie.
Positionsnummer ändern
Jede Spalte erhält automatisch zunächst die Positionsnummer 0. Sie ändern die Position einer Spalte, indem Sie diese Positionsnummer ändern. Die Positionsnummer muss dabei nicht eindeutig sein.
Spalten mit der Positionsnummer 0 werden immer links angeordnet. Wenn Sie also eine Spalte links anordnen möchten, müssen Sie allen anderen Spalten eine höhere Positionsnummer zuweisen als dieser Spalte.
Als Positionsnummer können Sie auch negative Zahlen verwenden. So können Sie auch einer einzelnen Spalte die gewünschte Positionsnummer zuweisen, ohne die 0 der übrigen Spalten ändern zu müssen.
Um die Positionsnummer einer Spalte zu ändern, verwenden Sie Methoden der Klasse CL_SALV_WD_COLUMN.
Methoden zum Ändern der Positionsnummer
|
Funktion |
Methode |
|
Positionsnummer festlegen |
SET_POSITION |
|
Positionsnummer holen |
GET_POSITION |
Spalte fixieren
Sie können Spalten fixieren. Dies hat folgende Auswirkungen:
Sie verschieben die Spalte an den Rand der ALV-Ausgabe.
Die Spalte kann beim seitlichen Blättern mit den horizontalen Paginatoren nicht mehr bewegt werden.
Beim Fixieren einer Spalte geben Sie an, ob Sie die Spalte am linken oder am rechten Rand der ALV-Ausgabe fixieren möchten. Auf diese Weise können Sie bis zu drei Blöcke von Spalten erzeugen: Die links fixierten Spalten, die nicht fixierten Spalten und die rechts fixierten Spalten.
Sie können zusätzlich zur Fixierung die Positionsnummer der Spalte ändern (siehe oben). So ordnen Sie alle Spalten innerhalb ihres jeweiligen Blocks gemäß ihren Positionsnummern an.
Um Spalten zu fixieren, verwenden Sie Methoden der Klasse CL_SALV_WD_COLUMN.
Methoden zum Fixieren von Spalten
|
Funktion |
Methode |
|
Spalte fixieren |
SET_FIXED_POSITION |
|
Prüfen, ob und wo eine Spalte fixiert ist |
GET_FIXED_POSITION |
Fixieren von Spalten erlauben
Sie können festlegen, ob der Benutzer einzelne Spalten fixieren darf. Dies legen Sie für das Fixieren am rechten oder linken Rand separat fest. Der Benutzer findet dann im Dialogfenster Einstellungen Oberflächenelemente, über die er die Anzahl der fixierten Spalten angibt.
Um das Fixieren von Spalten zu erlauben, verwenden Sie Methoden der Interface-Klasse IF_SALV_WD_STD_FUNCTIONS (implementierende Klasse CL_SALV_WD_TABLE):
Methoden, um das Fixieren von Spalten zu erlauben
|
Funktion |
Methode |
|
Fixieren von Spalten am linken Rand der ALV-Ausgabe erlauben |
SET_FIXED_COLS_LEFT_ALLOWED |
|
Prüfen, ob der Benutzer Spalten am linken Rand der ALV-Ausgabe fixieren darf |
IS_FIXED_COLS_LEFT_ALLOWED |
|
Fixieren von Spalten am rechten Rand der ALV-Ausgabe erlauben |
SET_FIXED_COLS_RIGHT_ALLOWED |
|
Prüfen, ob der Benutzer Spalten am rechten Rand der ALV-Ausgabe fixieren darf |
IS_FIXED_COLS_RIGHT_ALLOWED |