Sort
Sort(windowID, oboxID), Sort(, oboxID), Sort
Parameter: Bezeichner eines Windows und einer Objektbox
Stack | Position | Beschreibung |
---|---|---|
Stack(In) | Top | - |
Stack(Out) | Top | - |
Nach einer vorangehenden Anweisung SetSort werden alle Elemente in der neu definierten Reihenfolge dargestellt.
Normalerweise wird innerhalb der laufenden Transaktion sortiert. Wenn gerade keine Transaktion läuft, wird eine Read-Write-Transaktion begonnen und nach der Sortierung wieder beendet.
Um Locking-Konflikte zu vermeiden, kann stattdessen eine Read-Only-Transaktion gestartet werden. Dazu ist die Umgebungsvariable CX_LISTVIEW_READONLY_TXN mit einem positiven Wert zu belegen. Wenn eine ListView mindestens so viele Einträge hat wie der Wert angibt, wird vor dem Sortieren eine Read-Only-Transaktion begonnen (sofern noch keine läuft). Dies entspricht dem Befehl BeginTXN(READ). Wenn eine Transaktion für die Sortierung begonnen wird, wird sie auch wieder von der Sortierfunktion beendet.
ObjectCombobox(CX_ACCOUNTING_AREA::structurePointer, AUTO_POSITION, NULL_ELEMENT, 122, 16, 330, 70) [ INITIALIZE: [ Path(CX_STRUCTURE::uniqueID) COLOR LIGHTRED ] SetFormat [ Path(CX_STRUCTURE::mlShortName) COLOR LIGHTBLUE ] SetFormat [ Path(CX_STRUCTURE::mlDescription) COLOR CYAN ] SetFormat // Define the sorting [ Path(uniqueID) ] SetSort // Or alternatively (by column index): [ 0 ] SetSort // Now actually sort the list Sort ]
Falls keine Sortierung definiert ist, dann verändert Sort die Reihenfolge der Elemente nicht. Folgender Code hat also keine Auswirkung auf die Reihenfolge der Elemente in der Liste:
[ ] SetSort Sort
Siehe auch