[gelöst]Problem mit Umlauten bei Import auf Docker

30. Januar 2020 12:15

Hallo allerseits,

ich habe einen Export geschrieben, der Stammdaten aus Navision 3.6 in eine Textdatei exportiert. Ich schreibe alle Daten ohne Konvertierung direkt in die Textdatei. Wenn ich die Datei im Notepad öffne, dann sind die Umlaute und andere Sonderzeichen durch irgendwelche anderen Zeichen ersetzt.

365Bc inlc. SQL-Express habe ich von der letzten ISO (Version 15.2) als komplette Demo auf einem Server installiert und anschließend unsere Lizenzdatei importiert.
Ich habe für 365BC einen Import geschrieben, der die Datei als Stream öffnet (UploadIntoStream), den Stream ausliest und in die jeweilige Tabelle zurückschreibt. Wenn ich mir jetzt die Importierten Daten anschaue, dann sind alle Umlaute und anderen Sonderzeichen wieder richtig und alles ist ok. Soweit ist alles gut.

Nun mein Problem:

Zusätzlich habe ich mir zu Entwicklungszwecken ein Docker-Image lokal installiert:
Code:
New-BCContainer -containerName DynamicsDocker -accept_eula -licenseFile 'C:\Temp\mylicense.flf' -updateHosts -includeAL -locale de -imageName mcr.microsoft.com/businesscentral/onprem:de-ltsc2019 -auth NavUserPassword

Wenn ich jetzt den Import auf dem Docker laufen lasse, dann werden die Umlaute nicht korrekt übersetzt.

An welcher Schraube muss ich denn da drehen, dass die Umlaute im Docker nicht falsch übersetzt werden?
Zuletzt geändert von elf am 30. Januar 2020 16:50, insgesamt 1-mal geändert.

Re: Problem mit Umlauten bei Import auf Docker

30. Januar 2020 13:10

Hallo,
Wenn ich die Datei im Notepad öffne, dann sind die Umlaute und andere Sonderzeichen durch irgendwelche anderen Zeichen ersetzt.

Das ist unter Windows 7 oder 10 normal.
Benutze den Notepad++ und ändere die Kodierung auf Westeuropäisch/CP850. Dann sollten die Daten wieder normal aussehen. Das gleiche musst du auch im neuen NAV beachten, das du die Kodierung beim Einlesen auf MSDOS oder vielleicht Windows änderst.

Wenn das bei Docker nicht hilft, könnte das an der unterschiedlichen Ländereinstellungen der Container liegen, den ein "ä" ist zwar in Europa ein Bytewert von 84. Schaut sich jemand die Datei in Kanada an, sieht er dort ein Â.

Gruß Fiddi

Re: Problem mit Umlauten bei Import auf Docker

30. Januar 2020 14:16

Danke Fiddi,

Das gleiche musst du auch im neuen NAV beachten, das du die Kodierung beim Einlesen auf MSDOS oder vielleicht Windows änderst.


Wie mache ich das denn im neuen Nav? Kann ich dem Stream irgendwie die Ursprungs-Kodierung übergeben?

Re: Problem mit Umlauten bei Import auf Docker

30. Januar 2020 16:11

Hallo,

Wie mache ich das denn im neuen Nav? Kann ich dem Stream irgendwie die Ursprungs-Kodierung übergeben?


Kommt drauf an. :roll: Den Parameter ENCODING musst du schon beim erzeugen des Streams mit angegeben. Was aber beim UploadIntoStream nicht funktioniert. :twisted: :roll:

Daher wirst du dort entweder auf ein externes Tool zurückgreifen müssen, das in UFT8 umwandelt, oder wenn es nur einmal sein soll, dann kannst du auch im Notepad++ die Kodierung umwandeln und dann als UTF8 speichern, den du wieder in BC hochladen kannst. Oder lässt das den Server machen, wenn ihr OnPrem seit, dort kannst du dann direkt das ENCODING beim erzeugen des Streams angeben.

Gruß Fiddi

Re: Problem mit Umlauten bei Import auf Docker

30. Januar 2020 16:49

Danke,

die Option "ENCODING" kannte ich noch gar nicht (gabs ja bei unserem antiquierten 3.6 auch noch nicht :oops: ).

Jetzt gehts richtig.