[gelöst] Umlaute und Sondersprachzeichen mit ODATA

Bild Microsoft Dynamics CRM 2015

[gelöst] Umlaute und Sondersprachzeichen mit ODATA

Beitragvon Nicole Schmitz » 9. Dezember 2015 16:53

Hallo zusammen,

wenn ich mit OData auf meine CRM Daten zugreife und in einem Textfeld suche kann es vorkommen das dort Umlaute wie ö ä ü oder Sondersprachzeichen wie é è ê und so weiter vorkommen. OData scheint damit allerdings ein Problem zu haben. Es wird dann nichts zurück gegeben obwohl in der Entität über die gesucht wird nachweislich ein passender Datensatz enthalten wäre. Wie kann ich das lösen? Muss ich da über jeden Suchstring den ich mitgeben will drüber laufen und die Sonderzeichen durch den ASCII Wert ersetzen oder gibt es dafür einen gesonderten Vergleich der das berücksichtigt?
Mich wundert es halt grade das es nicht geht weil ich hätte schwören können das der ein oder andere Firmennamen den ich schon über OData gesucht habe auch Umlaute hatte. Finde aber jetzt natürlich grade kein Beispiel mehr wo ich mit OData einen Filter gebaut habe der dann Umlaute enthielt. :-|
Zuletzt geändert von Nicole Schmitz am 10. Dezember 2015 11:07, insgesamt 1-mal geändert.
Viele Grüße
Nicole
Nicole Schmitz
 
Beiträge: 427
Registriert: 4. Oktober 2010 16:17
Realer Name: Nicole Schmitz
Arbeitsort: Hennef
Microsoft Dynamics Produkt: Microsoft Dynamics CRM
Microsoft Dynamics Version: 2015

Re: Umlaute und Sondersprachzeichen mit ODATA

Beitragvon Nicole Schmitz » 10. Dezember 2015 09:35

Hallo zusammen,

ich habe schon folgendes rausgefunden:
Ich suche über Land und möchte beispielsweise "Grönland" finden. Dann wird über OData so kein Ergebnis zurück kommen obwohl Grönland da ist. Aber wenn ich den String so mitgeben "Gr%u00f6nland" mitgebe dann kommt der Datensatz Grönland zurück. Nun müsste ich diese Umsetzung automatisch über das Javascript laufen lassen, da ich den Suchstring aus einem anderen Feld bekomme ich suche als nach unterschiedlichen Ländern. Ich habe schon versucht meinen Suchstring mit escape(suchstring) richtig umzusetzen aber da kommt dann nur "Gr%f6nland" bei raus und das findet OData wieder nicht. Gibt es eine Methode mit der ich das in die von OData benötigten Unicode Zeichen übersetzen kann oder muss ich mir da was von Hand bauen?
Viele Grüße
Nicole
Nicole Schmitz
 
Beiträge: 427
Registriert: 4. Oktober 2010 16:17
Realer Name: Nicole Schmitz
Arbeitsort: Hennef
Microsoft Dynamics Produkt: Microsoft Dynamics CRM
Microsoft Dynamics Version: 2015

Re: Umlaute und Sondersprachzeichen mit ODATA

Beitragvon Nicole Schmitz » 10. Dezember 2015 11:07

Hallo zusammen,

ich konnte mir jetzt doch selber helfen. Ist sicherlich ein umständlicher Weg und ich versteh immer noch nicht ganz wieso ich ihn an der Stelle gehen muss da es an anderen Stellen ohne den Umweg zu funktionieren scheint aber sei es drum. Hier meine Lösung für diese Problematik.

Ich habe meinen Filterstring selectedValue, und diesen Wandel ich jetzt mit Hilfe von escape um und ersetze dann mittels replace das reine % durch %u00 das funktioniert ganz gut für Umlaute und ausländische Buchstaben wie ê oder so. Suchstrings mit Sonderzeichen wie ' machen so allerdings weiterhin Probleme, die verbiete ich daher einfach.
Code: Alles auswählen
var selectedValue = "Grönland";
var find = '%';
var re = new RegExp(find, 'g');
var vergleichsWertUnicode =  escape(selectedValue); //Ergebnis Gr%F6nland
var vergleichsWertJSON = vergleichsWertUnicode.replace(re, '%u00'); //Ergebnis Gr%u00F6nland

meine Variable vergleichsWertJSON kann ich jetzt an den OData filter übergeben und der gewünschte Datensatz wird gefunden.
Viele Grüße
Nicole
Nicole Schmitz
 
Beiträge: 427
Registriert: 4. Oktober 2010 16:17
Realer Name: Nicole Schmitz
Arbeitsort: Hennef
Microsoft Dynamics Produkt: Microsoft Dynamics CRM
Microsoft Dynamics Version: 2015

Re: [gelöst] Umlaute und Sondersprachzeichen mit ODATA

Beitragvon Michael Sulz » 11. Dezember 2015 09:17

Hallo Nicole,

hab vielen Dank für deine Rückmeldung :-)
Gruß, Michael Sulz
Mein Blog
Xing LinkedIn Facebook Twitter

Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! Dafür ist dieses Forum da.

Wie man Fragen richtig stellt
Benutzeravatar
Michael Sulz
Microsoft Partner
Microsoft Partner
 
Beiträge: 4939
Registriert: 9. September 2009 17:41
Wohnort: Münster
Realer Name: Michael Sulz
Arbeitsort: Münster
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics CRM


Zurück zu CRM 2015

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast