asort() reihenfolge [ERLEDIGT]
Moderator: Moderatoren
- Manfred
- Foren-Administrator
- Beiträge: 21224
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
asort() reihenfolge [ERLEDIGT]
Hi,
ich komme im Moment nicht weiter. Ich habe ein Array das sortiert wird, mit folgenden Inhalten
awerte[1] -> "Summe"
awerte[2] -> "øSaldo"
bisher war es so, wenn es mit asort(awerte) sortiert wurde, ergab es genau das Ergebnis, wie es oben steht. Jetzt ist es neuerdings andersherum. das "ø" wird zuerst einsortiert. Irgendwas habe ich wohl zwischendurch geändert, finde es aber nicht. In der Hilfe steht, das SET EXCACT SET LEXICAL und SET COLLATION eine Rolle spielen. Wie müssen die denn geschaltet sein damit das "S" wieder vor dem "ø" steht? Ich bin mir sehr sicher, das ich mit SET EXACT und LEXICAL nicht herumgespielt habe. Bei SET COLLATION bin ich mir im Moment nixcht mehr sicher. Ich habe zwischendurch von DBFNTX auf FOXCDX umgestellt. Kann das damit zusammhängen?
ich komme im Moment nicht weiter. Ich habe ein Array das sortiert wird, mit folgenden Inhalten
awerte[1] -> "Summe"
awerte[2] -> "øSaldo"
bisher war es so, wenn es mit asort(awerte) sortiert wurde, ergab es genau das Ergebnis, wie es oben steht. Jetzt ist es neuerdings andersherum. das "ø" wird zuerst einsortiert. Irgendwas habe ich wohl zwischendurch geändert, finde es aber nicht. In der Hilfe steht, das SET EXCACT SET LEXICAL und SET COLLATION eine Rolle spielen. Wie müssen die denn geschaltet sein damit das "S" wieder vor dem "ø" steht? Ich bin mir sehr sicher, das ich mit SET EXACT und LEXICAL nicht herumgespielt habe. Bei SET COLLATION bin ich mir im Moment nixcht mehr sicher. Ich habe zwischendurch von DBFNTX auf FOXCDX umgestellt. Kann das damit zusammhängen?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Jan
- Marvin
- Beiträge: 14662
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: asort() reihenfolge
Manfred,
ich hab Dein Beispiel mal eben bei mir durchgetestet. Das sieht genau so aus. Saldo komm vor øSaldo. Erscheint mir auch logisch.
Von den drei von SETs habe ich im Code nur eine, und das ist SET COLLATION TO GERMAN. SET CHARSET TO ist egal, was man da einstellt.
Jan
ich hab Dein Beispiel mal eben bei mir durchgetestet. Das sieht genau so aus. Saldo komm vor øSaldo. Erscheint mir auch logisch.
Von den drei von SETs habe ich im Code nur eine, und das ist SET COLLATION TO GERMAN. SET CHARSET TO ist egal, was man da einstellt.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- brandelh
- Foren-Moderator
- Beiträge: 15706
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 70 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: asort() reihenfolge
Ja was steht denn in der EXE zu den 3 Anweisungen ?
Laut ASC() müsste "S" immer vor "ø" (245) kommen, mit SYSTEM wäre die Sortierung nach ASCII Code, aber ich denke nicht, dass unter GERMAN das anders wäre ...
Könnte es sein, dass ein winziges Blank VOR dem ø steht
Laut ASC() müsste "S" immer vor "ø" (245) kommen, mit SYSTEM wäre die Sortierung nach ASCII Code, aber ich denke nicht, dass unter GERMAN das anders wäre ...
Könnte es sein, dass ein winziges Blank VOR dem ø steht
Gruß
Hubert
Hubert
- Manfred
- Foren-Administrator
- Beiträge: 21224
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: asort() reihenfolge
Hubert,
das war auch zuerst mein Verdacht, steht aber nicht. Kann auch nicht sein, weil es dann nach oben rutschen würde, oder?
das war auch zuerst mein Verdacht, steht aber nicht. Kann auch nicht sein, weil es dann nach oben rutschen würde, oder?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Jan
- Marvin
- Beiträge: 14662
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: asort() reihenfolge
Manfred,
machst Du denn einfach ein ASort(aArray), oder ein ASort(aArray, {|x, y| ...})?
Jan
machst Du denn einfach ein ASort(aArray), oder ein ASort(aArray, {|x, y| ...})?
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- Manfred
- Foren-Administrator
- Beiträge: 21224
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: asort() reihenfolge
nur ein asort().
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Jan
- Marvin
- Beiträge: 14662
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: asort() reihenfolge
Aber ist denn nicht genau daß das Problem? Es soll unten sein, wie sich das gehört. Du aber hast es jetzt oben. Was durch ein Blank passieren würde.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- Manfred
- Foren-Administrator
- Beiträge: 21224
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: asort() reihenfolge
Mist, habe das Problem gefunden. Jetzt bin ich aber echt gekniffen...... Mal schauen wie ich das jetzt vernünftig geregelt kriege.....
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Manfred
- Foren-Administrator
- Beiträge: 21224
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: asort() reihenfolge [ERLEDIGT]
das ist der Übeltäter
https://www.xbaseforum.de/viewtopic.php ... on#p122193
https://www.xbaseforum.de/viewtopic.php ... on#p122193
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Jan
- Marvin
- Beiträge: 14662
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: asort() reihenfolge [ERLEDIGT]
... ich bin irritiert. Das ø muß doch in jeder Collation nach dem S kommen. Oder nicht?
Jan
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- Manfred
- Foren-Administrator
- Beiträge: 21224
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: asort() reihenfolge [ERLEDIGT]
es klappt jetzt wieder.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- brandelh
- Foren-Moderator
- Beiträge: 15706
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 70 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: asort() reihenfolge [ERLEDIGT]
Beispielprogramm, denn ich kann nicht glauben was ich höre
Xbase 2.00.951
1. Feststellung
im Beispiel Projekt war die ANSI => OEM Umsetzung aktiv, daher seltsame unerwartete ASC() Werte, OEM Ergebnis mit SYSTEM
nun zuerst ANSI => OEM Umsetzung deaktiviert und ANSI Ergebnis mit SYSTEM
das "ø" wird anders sortiert je nach Quellcode Umsetzung !
ANSI Ergebnis mit GERMAN
sieh mal einer an, mit der Standardeinstellung eines deutschen Xbase++ wird es wieder richtig sortiert.
Mit DIN und ASCII hatte ich das gleiche Ergebnis, SYSTEM scheint nicht sinnvoll ... obwohl in der Hilfe nur steht, dass Groß-/Kleinschreibung nicht unterschieden wird.
Eventuell ist das "ø" aber auch ein Schriftzeichen, das dadurch nach vorne rückt.
Xbase 2.00.951
Code: Alles auswählen
#include "Common.ch"
PROCEDURE Main
LOCAL cSeltsam := "ø"
LOCAL cS := "S"
LOCAL aTest := { "x","s",cSeltsam,"a","A","S","Z" }
/* we use the ansi charset by default */
SET CHARSET TO ANSI
SET COLLATION TO SYSTEM
SET ALTERNATE TO test.txt
SET ALTERNATE ON
? "ø = ASC() = ",asc(cSeltsam), cSeltsam+" > "+cS+" ? ",cSeltsam > cS
? "S = ASC() = ",asc(cS), cS+" > "+cSeltsam+" ? ",cS > cSeltsam
?
? "Sortiere das"
? aTest
aSort(aTest)
? "ergibt das"
? aTest
?
? "Ende"
SET ALTERNATE OFF
inkey(40)
/* $TODO: place your application code here */
RETURN
im Beispiel Projekt war die ANSI => OEM Umsetzung aktiv, daher seltsame unerwartete ASC() Werte, OEM Ergebnis mit SYSTEM
Code: Alles auswählen
ø = ASC() = 155 ø > S ? N
S = ASC() = 83 S > ø ? J
Sortiere das
{x, s,ø, a, A, S, Z}
ergibt das
{ø, a, A, s, S, x, Z}
Ende
Code: Alles auswählen
ø = ASC() = 248 ø > S ? N
S = ASC() = 83 S > ø ? J
Sortiere das
{x, s, ø, a, A, S, Z}
ergibt das
{a, A, ø, s, S, x, Z}
Ende
ANSI Ergebnis mit GERMAN
Code: Alles auswählen
ø = ASC() = 248 ø > S ? J
S = ASC() = 83 S > ø ? N
Sortiere das
{x, s, ø, a, A, S, Z}
ergibt das
{A, S, Z, a, s, x, ø}
Mit DIN und ASCII hatte ich das gleiche Ergebnis, SYSTEM scheint nicht sinnvoll ... obwohl in der Hilfe nur steht, dass Groß-/Kleinschreibung nicht unterschieden wird.
Eventuell ist das "ø" aber auch ein Schriftzeichen, das dadurch nach vorne rückt.
Gruß
Hubert
Hubert
- Manfred
- Foren-Administrator
- Beiträge: 21224
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: asort() reihenfolge [ERLEDIGT]
Das ist Chr(245) wenn ich recht erinnere.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Manfred
- Foren-Administrator
- Beiträge: 21224
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: asort() reihenfolge [ERLEDIGT]
sorry, hast recht. 248 war gemeint
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Jan
- Marvin
- Beiträge: 14662
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: asort() reihenfolge [ERLEDIGT]
OEM 157
ANSI 248
Jan
ANSI 248
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- HaPe
- 1000 working lines a day
- Beiträge: 996
- Registriert: So, 15. Nov 2015 17:44
- Wohnort: 71665 Vaihingen-Enz
- Hat sich bedankt: 17 Mal
- Danksagung erhalten: 15 Mal
Re: asort() reihenfolge [ERLEDIGT]
Eventuell ist das "ø" aber auch ein Schriftzeichen,
Nö, CHR( 155 )Das ist Chr(245) wenn ich recht erinnere.
Getestet in der Xbase-Workbench, meinen Programmierer-Editoren, im CMD-Fenster, PowerShell, Visual Studio, usw.
--
Hans-Peter
Hans-Peter