CX_SORT
Klassenhierarchie:
- CX_CLASS
- CX_SORT
Beschreibung:
Objekte dieser Klasse sind Werkzeuge, mit denen (persistente oder transiente) Objekte nach beliebig vielen Sortierkriterien sortiert werden können.
Die Sortierergebnisse werden in einer internen Liste gehalten, sodass CX_SORT selbst wie eine Collection verwendet werden kann, d.h. seine Elemente können mit der InstantView®-Anweisung FillObox dargestellt werden, über die Elemente wird mit der Anweisung iterate in Sortierreihenfolge iteriert. Per GetElement kann auf einzelne Elemente zugegriffen werden.
Code-Beispiel:
Var(sort, coll) Define(DoSomething) . . . ; CreateTransObject(CX_SORT) -> sort // create the tool object [ "name" "firstName" ] sort Call(SetPaths) // provide sorting criteria FindAll(CX_PERSON) sort Call(Sort) // sort all person-objects sort iterate { // visit all person-objects in sorting-order DoSomething } sort Call(GetCollection) -> coll // save the result as a collection
Funktion | MA* | Parameter | Rückgabe | Kurzbeschreibung |
---|---|---|---|---|
GetCollection | COLLECTION | Sortierte Objekte als transiente Collection zurückgeben | ||
SetPaths | VECTOR〈STRING|Path〉 | - | alle Sortier-Kriterien als Vektor von Zugriffspfaden | |
Sort | COLLECTION | - | Objekte der Collection sortieren | |
SortBy | COLLECTION, VECTOR〈STRING|Path〉 | - | Objekte der Collection mit angegebenen Sortierkriterien sortieren | |
Next | INTEGER | COLLECTION | Hole die nächsten n sortierten Objekte, n wird als Parameter übergeben | |
More | VOID | INTEGER | TRUE - es gibt noch Objekte für Next, FALSE - das Ende wurde erreicht | |
Reset | VOID | VOID | Next und More an den Anfang zurücksetzen |
grau unterlegt = geerbte Funktion