Unterschiedliche Sprachen (Sonderzeichen) in einer DB

5. Mai 2008 17:52

Hallo,

ich habe zwar hier im Forum einiges dazu gelesen habe aber noch kein zufriedenstellendes Ergebnis gefunden.

Folgendes Problem:
Deutsche Navision 3.70 DB, SQL 2000

Wir müssen nun landesprachliche Übersetzungen (polnisch, tschechisch, z.B Artikelstamm) erfassen und dabei die speziellen Sonderzeichen dieser Sprachen berücksichtigen. Ja, Navision ist nicht Unicode fähig.

Nun habe ich gehört, das die darzustellenden Sonderzeichen gleichzeitig in einer Codepage vorhanden sein müssen. Diese gibt es (Codepage Latin2).
Oder bin ich mit der Codepage "auf dem falschen Dampfer"?

Gibt es hier jemand, der dieses Problem gelöst hat? Gibt es vieleicht sogar eine Anleitung oder White Paper, wie so etwas zu realisieren ist?

Danke für Eure Hilfe

Gruß

rw

5. Mai 2008 19:18

Hallo,
leider ist es nicht so einfach, verschiedene Sprachen in NAV zu mixen.
Man muss sich zuerst gut überlegen, welche Sprachen in einer DB vorkommen werden.
Wenn Deutsch mit "Ost-Sprachen" gemischt werden soll, muss man die Codepage 1250 (für Mitteleuropäische Sprachen) einstellen. Dann kann man die deutschen Umlaute kombiniert mit den wichtigsten Sonderzeichen dieser Sprachen verwenden.
Wird aber auch z.B. Italienisch oder gar Spanisch auch noch benötigt, dann wirds kompliziert.
Dort gibt es z.B. das N mit ~ (Tilde) darüber, oder das umgekehrte ? und !

Solche Probleme können nur bedingt umgangen werden:
Wir haben dazu eine Schriftart mit einem "Schriften-Editor-Programm" bearbeitet und Zeichen, welche in keiner Sprache benötigt werden "umgearbeitet".
Der Nachteil dabei ist, dass diese Schrift zwar recht einfach für Reports verwendet werden kann, die Anzeige am Bildschirm (TAHOMA-Schriftart) aber nicht wirklich änderbar ist - diese wird nämlich von Windows als Systemschrift verwendet, was bedeutet, dass sie ständig in Verwendung ist und daher nicht ausgetauscht werden kann.

Gruß
GuPi

6. Mai 2008 17:12

Hallo,

danke für die Info.
Wir benötigen wirklich nur die "Ost"-Sprachen (polnisch, tschechich) und deutsch.

Was ist dabei zu beachten?

ich habe verstanden, das der

SQL Sever mit Codepage 1250 installiert wird.
irgendwelche Einstellungen am Client BS (bei uns Windows XP, deutsch)?
irgendwelche Besonderheiten am Nav Client zu beachten?

Ich meine, wir haben in einer Testinstallation den SQL-Server mit der Codpage 1250(Latin2) installiert. Wir hatten allerdings trotzdem in Navision keinen Zugriff auf die Sonderzeichen...

Gibt es sonst noch etwas, was zu beachten ist?

Bin für jede Hilfe dankbar.

Gruß

rw

7. Mai 2008 12:44

Hallo,

wir haben (Kunden-)Installationen laufen, bei denen der SQL-Server NICHT mit Codepage 1250 (sondern normal mit 1252) installiert wurde.
Nur die jeweilige NAV-Datenbank hat ihre eigene Codepage definiert (z.B. 1250).
In diesen Installationen verwalten wir in einem SQL-Server DB's mit 1250 und 1252!

Wichtig ist aber, dass der PC auf dem der NAV Client läuft, die richtige Codepage verwendet.
D.h. ein PC mit z.B. Codepage 1250 kann nur NAV-Datenbanken mit derselben Codepage (ebenfalls 1250) öffnen.
Wir verwenden dafür einen Virtuellen PC mit dieser Einstellung, um nicht unsere "normale" Arbeit zu behindern.

Unter XP sieht das z.B. so aus:
Systemsteuerung - "Reginons- und Sprachoptionen" - Erweitert -
Sprachversion der Programme, die Unicode NICHT verwenden: z.B. "Polnisch"
PC neu starten.
Nun ist der Client PC auf Polnisch (CP 1250) umgestellt und kann nur noch NAV Datenbanken mit dierser Codepage öffnen.

Zusätzlich kann (muss) man noch am Client PC die jeweilige "Eingabesprache" dazu installieren:
Systemsteuerung - "Regions- und Sprachoptionen" - Sprachen - Details -
Hinzufügen - Eingabegebietsschema z.B. Polnisch / Tastaturlayout - z.B. Polnisch (Programmierer)
Nun hat man am Client PC die Möglichkeit, die Tastatursprache umzustellen und erhält je nach gewählter Sprache andere Zeichen beim drücken der jeweiligen Tasten.
Um die Tastenbelegung anzuzeigen kann man z.B. die "Bildschirmtastatur" (Alle Programme - Zubehör - Eingabehilfen - Bildschirmtastatur)
verwenden. Hier ändert sich, je nach gewählter Sprache die Tastenbelegung und man sieht, was man eingibt (bzw. auf welcher Tastenkombination welche Zeichen liegen).

Noch etwas:
In der NAV-DB gibt es einen Parameter der definiert, ob ein Client mit einer abweichenden Codepage die DB öffnen darf:
NAV Client - Datei - Datenbank ändern - Sortierung - "Zeichensatz validieren".
Ist dieses Feld auf TRUE kann nur mit derselben Codepage geöffnet werden.
ACHTUNG: Dieser Parameter sollte immer AN sein, da es zu wilden Probelmen führen könnte, wenn man mit einer falschen Codepage Daten einfügt.
Das Problem ist, dass ein Zeichen in der einen Codepage ein Großbuchstabe ist, in der anderen aber ein Kleinbuchstabe.
Fügt man nun ein ein CODE-Feld so ein Zeichen ein, erhält man einen Fehler wenn dieser Satz mit der anderen Codepage angezeigt, geändert, gesichert etc. werden soll. Damit ist die DB inkonsistent und nur mehr mit viel Aufwand zu reparieren.

Hoffe die Infos helfen weiter.

Gruß
GuPi

8. Mai 2008 09:52

Servus,

ich bin zufällig auf das "Unicode Tool for NAV" von Octocon gestossen - Angeblich soll damit das Drucken und Anzeigen von jeder Sprache möglich sein - habe es selber noch nicht getestet.

Ich hoffe ich das ist keine verbotene Werbung :-)