Sie haben in einem Screen einen eigenen TableControl mittels dem Befehl „Table“ integriert. Sie möchten Ihren Anwendern die Möglichkeit bieten nach jeder Spalte im TableControl zu sortieren.
Dazu ergänzen sie Ihr Script mit 2 Iconen:
// Sortierung für die markierte Spalte Pushbutton (0,192) "@0H\Q@" Process="Sort.txt" Size=(1,1) using Table = "Table" // Name der Table using Sort = "absteigend" // Sortierrichtung Pushbutton (0,195) "@0I\Q@" Process="Sort.txt" Size=(1,1) using Sort = "aufsteigend" // Sortierrichtung using Table = "Table" // Name der Table
Das Script Sort.txt sieht dann wie folgt aus:
Parameter Sort Parameter Table if U[Sort=absteigend] set V[Sortierrichtung] "-descending" endif if U[Sort=aufsteigend] set V[Sortierrichtung] "" // Blank, da dies der Standard endif // In welcher Spalte steht der Cursor? Set V[markierte_Spalte] "&V[_cursorcoltechname]" if V[markierte_Spalte] Sort Table="&U[Table]" orderby="&V[markierte_Spalte]" &V[Sortierrichtung] else Message "E: Bitte positionieren sie den Cursor in einer Spalte des TableControls" -Statusline endif Return
Ich habe die Tabelle in einem PopUp erzeugt. Damit das PopUp beim ersten Klick nicht wieder geschlossen wird, halte ich über label screen001 am Anfang und goto screen001 und Ende das PopUp offen. Wenn ich nun den Sort-Befehl anwende, funktioniert die Sortierung bei mir nicht.
Sort „tabelle_%row_%col“ -descending rowcount=84 colcount=15 orderby=1
Geht die Sortierung beim Neuaufruf des Screens wieder verloren?