Sortierung Text

14. August 2006 15:29

Hallo,

ich habe folgendes Problem:
Ein Kunde möchte eine Sortierung nach "Name". Das Feld "Name" hat hier jedoch Klein- und Großbuchstaben.
Wenn man nun einen Schlüssel mit "Name" anlegt, kommen zuerst die Werte mit den Kleinbuchstaben und danach erst die Großbuchstaben.

Beispiel Sortierung Navision:
aaa
aab
abc
AAA
AAB

Sortierung in Excel:
aaa
AAA
aab
AAB
abc

Wie kann man Navision die Sortierung von Excel beibringen?

Danke für Eure Antworten,

Jürgen

14. August 2006 18:44

Hi Jürgen, so ohne weiteres geht das nicht. Mir fällt folgender Trick ein. Beim Erzeugen eines Datensatzes schreibt Navision still und heimlich in ein nichtsichtbares Feld einen Wert. Dieser Wert wird automatisch von Navision errechnet und stellt die Position da. Ungefähr so wie bei den Zeilenr. in den VK-Zeilen.

10000 aaa
30000 aab
50000 abc
20000 AAA
40000 AAB

Wird jetzt ein neuer Datensatz erzeugt, schaut Navision nach wo es "platziert" werden soll und vergibt automatisch eine Nummer die zwischen dem davor und dem danach liegt. Nach diesem Feld könnte man dann Sortieren.

Gruß, Marc

15. August 2006 00:22

müssen denn sowohl Werte wie aaa als auch AAA gleichzeitig vorkommen dürfen?
wenn ja, klappt folgender Trick nicht mit dem Primärschlüssel:

Wenn die Datenbank auf einem SQL-Server läuft, dann einfach die Unterscheidung nach Groß-/kleinschreibung abschalten, schon ist für die Sortierung A das gleiche wie a.

Im Primärschlüssel kann aber dann nur entweder aaa oder AAA oder aAa oder ... verwendet werden, weil auch hier die Buchstaben als gleich angesehen werden.

15. August 2006 08:04

@Michael
@Marc

Hallo Michael,

die Werte lauten nicht aaa und AAA. Es ist auch kein SQL-Server.

Konkret handelt es sich um die Kontaktnamen. Es gibt Unternehmen, die komplett klein geschrieben werden und Unternehmen, die mit Großbuchstaben beginnen.
Wir haben schon ein paar Sachen überprüft. Ich wollte nur noch einmal wissen, ob dies wirklich nicht geht.
Wir werden wahrscheinlich ein Code-Feld einfügen, das einfach die Werte von Namen in das neue Feld schreibt. Somit stimmt dann auch die Sortierung wieder.

Danke für Eure Hilfe. Vielleicht fällt ja jemanden noch eine andere Möglichkeit ein.

Viele Grüße,

Jürgen

15. August 2006 08:44

Ich habe bei einem Kunden ebenfalls ein Sortierproblem. Die Kontaktnummern werden nicht korrekt sortiert. Hier das Beispiel:

52835
52836
5284
52841
5285
52856
5286
52862
52863
5287
52879

Da der Kunde die Nummern zum Teil auch mit Punkten unterteilt (5646.1) kann ich das Property SQL Data Type des Feldes No. auch nicht auf Integer umstellen.

Weiss hier vielleicht jemand, wie man die Sortierung korrekt hinbekommt? Die Navtive-DB macht das von sich aus sauber und korrekt

16. August 2006 10:09

@jukr1975
Hast du dort kein Feld Searchdescription?
da wird doch normalerweise der Name in Großbuchstaben eingetragen, um die suche zu erleichtern.
Wenn nicht, mach dir ein SuchFeld vom Typ code mit der Länge des feldes Name und im Validatetrigger des Felds Name
Code:
 Suchfeld:=Name

dann machst du einen Sortierschlüssel auf dieses Suchfeld und sortiere die Ausgabe danach. e voila

@rotsch:
du kannst da nur mit einem Batch die kürzeren Nummern mit führenden Nullen auf die gleiche Länge bringen. bei denen mit Punkt im Code musst du zur ermittlung der Länge dann den Teilstring bis zum Punkt verwenden.
dann werden die auch im SQL-Server richtig sortiert.
ggf kannst du dafür auch ein extra Feld heranziehen, wie in dem Tip, den ich gerade an jukr gegeben habe...