DataObjects im Array und Asort()
Verfasst: Mi, 20. Mär 2019 13:39
ich habe mal wieder etwas entdeckt, was mal wieder so richtig Klasse ist. (hat sich auch mindestens einer hier aus dem Forum live angesehen und selbst ein wenig gestaunt).
Also folgendes Problem, ich durchlaufe eine Tabelle und schreibe die DAten in ein DataObject, welches ich dann nach jedem Satz in ein Array kopiere.
Das wird dann in einem Browser angezeigt.. Klappt alles prima, ohne Probleme.
jetzt gibt es die Möglichkeit jede Spalte zu sortieren. Rauf oder runter, egal, hauptsache sortieren. Hier nur knapp:
Das klappt prima. Egal ob hoch oder runter
das hier aber:
ergibt Mist. Wenn negative Werte drin stehen, dann erscheinen die an total falscher Stelle, mittendrin sind leere Zeilen und dann erscheint irgendwann wieder ein Wert. Sprich, die Reihenfolge ist total falsch. In mir keimt der Verdacht, das DataObects mit solchen Inhalten nicht richtig sortiert (werden können) ?
egal, was ich versuche, direkte Zahlen schreiben, oder den Index auf Val() setzen, es bringt nichts.Irgendwie kommt bei jeder neuen Aktion auch neuer Mist an den Tag.
Also folgendes Problem, ich durchlaufe eine Tabelle und schreibe die DAten in ein DataObject, welches ich dann nach jedem Satz in ein Array kopiere.
Code: Alles auswählen
local dob := dataObject():new()
do while ! Eof()
dob:name1 := field->name
dob:zahl := machestringdraus(field->zahl) // und aus . wird ein , gemacht
aadd(aarray,dob:copy())
skip
enddo
jetzt gibt es die Möglichkeit jede Spalte zu sortieren. Rauf oder runter, egal, hauptsache sortieren. Hier nur knapp:
Code: Alles auswählen
Asort(aarray,,,{|x,y| x:name1 > y:name1})
das hier aber:
Code: Alles auswählen
Asort(aarray,,,{|x,y| x:zahl > y:zahl})
egal, was ich versuche, direkte Zahlen schreiben, oder den Index auf Val() setzen, es bringt nichts.Irgendwie kommt bei jeder neuen Aktion auch neuer Mist an den Tag.