MSSQL-DB CustomerUser Umlaute kaputt

Hilfe zu OTRS Problemen aller Art
Post Reply
martinv2
Znuny newbie
Posts: 13
Joined: 30 Jun 2014, 14:49
Znuny Version: 6.4.4
Real Name: Martin Vorländer
Company: PDV-Systeme GmbH
Contact:

MSSQL-DB CustomerUser Umlaute kaputt

Post by martinv2 »

Hallo!

Da unsere externe CustomerUser-Datenbank ISO8859-1-kodiert ist, habe ich seit OTRS4 die Encoding-Anpassungen (Stichwort SourceCharset, DestCharset) aus OTRS3 durch angepasste Module Kernel/System/CustomerUser/DB.pm bzw. CustomerCompany/DB.pm mitgeschleppt.

Mittlerweile sind wir bei OTRS 6.0.26 und ich bin es leid. Aber wenn ich es abschaffen will, stosse aber auf Probleme. Wir haben im SQL Server 2016 einen View, der die CustomerUser-Daten im Format der OTRS-Tabelle bereitstellt. In diesem haben wir alle String-Spalten mittels CAST(... AS NVARCHAR) auf Unicode umgestellt.

Wenn ich diesen View per FreeTDS einbinde, liefert eine tsql-Abfrage in einem Terminal mit UTF8-Localen korrekte Umlaute, die OTRS-API-Funktionen jedoch Müll. Beim Debugging mit einer kleinen Abfrage

Code: Select all

my $CustomerUserObject = $Kernel::OM->Get('Kernel::System::CustomerUser');

# username search
my %List = $CustomerUserObject->CustomerSearch(
    UserLogin => $UserLogin,
);
sehe ich, dass in den Daten korrekte Umlaute geliefert werden, diese dann aber wegen DB::Encode=1 durch die Funktion Kernel::System::Encode::EncodeInput() gejagt werden. Diese setzt das utf8-Flag, was die Daten an sich nicht ändert, aber die Interpretation der Daten verhunzt.

Hat jemand eine Idee, wie ich dieses Problem lösen kann?

Danke im Voraus,
Martin
OTRS 6.4.4, Ubuntu 20.04.5 LTS with MariaDB 10.3.37
root
Administrator
Posts: 3964
Joined: 18 Dec 2007, 12:23
Znuny Version: Znuny and Znuny LTS
Real Name: Roy Kaldung
Company: Znuny
Contact:

Re: MSSQL-DB CustomerUser Umlaute kaputt

Post by root »

Hallo,

ggf. kann man das in der odbc.ini auch anpassen. Ich ich kann nur den originalen MS SQL ODBC Treiber für Linux empfehlen. Damit hatte ich diese Probleme nocch nie.

- Roy
Znuny and Znuny LTS running on CentOS / RHEL / Debian / SLES / MySQL / PostgreSQL / Oracle / OpenLDAP / Active Directory / SSO

Use a test system - always.

Do you need professional services? Check out https://www.znuny.com/

Do you want to contribute or want to know where it goes ?
martinv2
Znuny newbie
Posts: 13
Joined: 30 Jun 2014, 14:49
Znuny Version: 6.4.4
Real Name: Martin Vorländer
Company: PDV-Systeme GmbH
Contact:

Re: MSSQL-DB CustomerUser Umlaute kaputt

Post by martinv2 »

Hi Roy,

danke für das Feedback. Ich hab' msodbcsql17 installiert, Treiber und Serverbeschreibung in odbc.ini angepasst, und ... - gleiches Ergebnis :( . isql liefert die korrekten Umlaute, OTRS-API liefert Müll. Ich werde nochmal schauen, ob irgendwelche odbc.ini-Einstellungen dazu existieren, aber eigentlich können die ja nicht der Übeltäter sein - die Daten kommen ja korrekt an.
OTRS 6.4.4, Ubuntu 20.04.5 LTS with MariaDB 10.3.37
zzz
Znuny superhero
Posts: 889
Joined: 15 Dec 2016, 15:13
Znuny Version: All
Real Name: Emin
Company: Efflux GmbH
Contact:

Re: MSSQL-DB CustomerUser Umlaute kaputt

Post by zzz »

Hallo Martin,

hast Du SourceCharset auch mal in der Config.pm angepasst oder nur in der DB.pm?

Viele Grüße
Emin
Professional OTRS, Znuny & OTOBO services: efflux.de | efflux.de/en/

Free and premium add-ons: German | English
martinv2
Znuny newbie
Posts: 13
Joined: 30 Jun 2014, 14:49
Znuny Version: 6.4.4
Real Name: Martin Vorländer
Company: PDV-Systeme GmbH
Contact:

Re: MSSQL-DB CustomerUser Umlaute kaputt

Post by martinv2 »

Hallo Emin,

ich habe den Code bzgl. SourceCharset/DestCharset der DB.pm's aus OTRS3 übernommen, und diese Einstellungen natürlich auch in Config.pm verwendet. Sonst wäre der Aufwand ja witzlos.
OTRS 6.4.4, Ubuntu 20.04.5 LTS with MariaDB 10.3.37
Post Reply