Hallo aqs,
ich hoffe alle hatten schöne Ostern! Vor einigen Tagen machte ich eine
Test-Lastschrift mit voller Breitseite an Umlauten (in UTF-8 codiert).
Mein Text
"---ÄÖÜß---"
kam jedoch als
"--- ---"
auf dem Kontoauszug an (also "---<BLANK><BLANK><BLANK><BLANK>---"). Ich
machte mich auf die Suche nach dem Ei - äh Bug. Auf der Job-Ebene läuft
alles perfekt:
# In jobmultitransfer.c:238 wird durch
AB_ImExporter_Utf8ToDta("---ÄÖÜß---") der Text einwandfrei in
"---[\]~---" umgesetzt, was der HBCI-Forderung entspricht.
# später wird dann aber nochmal _Utf8-to-Dta gerufen, und der versemmelt
es dann wieder, er meint nun dass "[\]~" eigentlich KEINE DTA-Zeichen
sind und ersetzt sie durch Blanks. Wer und warum _Utf8 nochmals anwendet
konnte ich nicht genau rausfinden.
Utf8ToDta(Utf8ToDta('ÄÖß')) ist also '<Blank><Blank><Blank>' ist ja
eigentlich OK, da die Übertragung der eckigen Klammern (mit diesem Sinn)
ja wirklich nicht möglich ist. Ich hab meine Theorie nun durch einen
Patch bestätigt, den ich aber nicht wirklich ernsthaft als Lösung
vorschlagen will, da er das eigentliche Problem nicht wirklich löst:
imexporter.c:1562 (ALT)
c=toupper(c);
if (!(isdigit(c) ||
(c>='A' && c<='Z') ||
(c>='a' && c<='z') ||
(strchr(" .,&-+*%/$", c))))
imexporter.c:1562 (NEU)
c=toupper(c);
if (!(isdigit(c) ||
(c>='A' && c<='Z') ||
(strchr(" .,&-+*%/$[\\]~", c))))
da ich aber im Moment vor Übergabe an AqBanking den DTA-möglichen
Zeichensatz sicherstelle, ist der Patch für mich zunächst mal produktiv.
Andreas
PS:
ANSI -> UTF-8 -> DTA- Kodierungen
'Ä' 0x8E -> 0xC3,0x84 -> '[' 0x5B
'Ö' 0x99 -> 0xC3,0x96 -> '\' 0x5C
'Ü' 0x9A -> 0xC3,0x9C -> ']' 0x5D
'ß' 0xE1 -> 0xC3,0x9F -> '~' 0x7E
--
Andreas Filsinger
IT-Freiberufler
Stettfelder Strasse 44
76698 Ubstadt
GERMANY
Tel. +49(0)7251/966100
Mob. +49(0)175/5913758
http://www.OrgaMon.org
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Aqbanking-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/aqbanking-devel