Zitat Zitat von Fuerchau Beitrag anzeigen
Wenn du Programmvariablen mit 1208/*UTF8 definierst, enthalten sie natürlich den 1208-Code.
Erst bei einer Übertragung in eine UCS2/SBCS-Variable wird dann implizit eine Codewandlung durchgeführt.
Das hat bei mir auch nicht geholfen. Die Umalute sind weiterhin nicht korrekt.
Ich habe jetzt eine Lösung gefunden, die gefällt mir zwar nicht sehr ist aber ersteinmal eine (Zwischen)Lösung:
Code:
//Berechtigung - API/Secret Key
http_xproc(HTTP_POINT_ADDL_HEADER:%paddr(AddHeaderData));

//Im ersten Aufruf müssen wir anhand des Usernamens die ID bekommen
myurl = 'http://prodportal01/Portal/api/v2/users?filter=';
query = 'username:' + %trim(username);

EXEC SQL SET :query = systools.urlencode(:query,'UTF-8');
 myurl += query;

 xmlPath = '/WebServices/GetUserData/' + %char(%timestamp())
  + '-' + %trim(username) + '_ID' + '.xml';

//Die Streamfile(XML) muss vorher erstellt werden, ansonsten gibt
//es Probleme mit der CCSID die wohl nicht richtig erkannt wird, dadurch
//werden auch keine Umlaute angezeigt
returnCode = open_(%trim(XmlPath) : O_CREAT + O_RDWR + O_CODEPAGE
 + O_TEXTDATA:S_IRWXU + S_IRWXG + S_IRWXO:1208);

 returnCode = http_url_get(myurl:xmlPath);
 if (returnCode <> 1);
   return *off;
 endif;

 xml-into(e) WebserviceRequest %xml(xmlPath:'path=PagedListView'
  + 'ModelOfuserNcCATIYq/items/user' + ' ' + XMLOPTIONS);
Es scheint so zu sein das die XML Datei nicht mit der richtigen CCSID angelegt wird, obwohl unter Attribute die richtige steht. Sobald ich nämlich mittels IFS API vorher eine leere Datei in 1208 anlege oder eine Datei als Ziel für den Response angebe wo bereits Umlaute richtig angezeigt werden, gibt es keine Fehldarstellungen der Umlaute und alles ist so wie es sein sollte.

Warum dies so ist weiß ich nicht, aber momentan habe ich keine Zeit mehr mich mit der Fehlersuche zu beschäftigen. Es ist zwar unschön aber das Leben ist kein Ponyhof....

Nochmals danke für die Unterstützung und die Hilfe. Ich denke ich konnte eine Menge hieraus für die Zukunft mitnehmen.