Die Idee hatte ich auch schon. Allerdings hatte ich das mit CCSID 1208 probiert, weil ich hauptsächlich mit UTF-8 arbeite. Dabei habe ich aber bei allen Feldinhalten, wo Sonderzeichen vorkamen, einen "null"-Wert als Ergebnis erhalten. Deshalb hatte ich das mit 13488 erst gar nicht versucht. Jetzt hab ich's doch mal getestet. Und es hat funktioniert. Bei folgendem "triple-cast" erhalte ich das gewünschte Ergebnis:

Code:
         "SELECT ttartn, ttsprs, " +
		 "CASE " +
		 "WHEN ttsprs IN('C', 'P') THEN " +
		 "CAST(CAST(CAST(tttext AS CHARACTER (60) CCSID 65535) AS CHARACTER (60) CCSID 1153) AS GRAPHIC (60) CCSID 13488) " +
		 "WHEN ttsprs = 'G' THEN " +
		 "CAST(CAST(CAST(tttext AS CHARACTER (60) CCSID 65535) AS CHARACTER (60) CCSID 875) AS GRAPHIC (60) CCSID 13488) " +
		 "WHEN ttsprs = 'R' THEN " +
		 "CAST(CAST(CAST(tttext AS CHARACTER (60) CCSID 65535) AS CHARACTER (60) CCSID 1154) AS GRAPHIC (60) CCSID 13488) " +
		 "ELSE " +
		 "CAST(CAST(CAST(tttext AS CHARACTER (60) CCSID 65535) AS CHARACTER (60) CCSID 1141) AS GRAPHIC (60) CCSID 13488) " +
         "END " ...
Warum geht das mit CCSID 1208 nicht ? Das wäre doch auch eine einheitliche CCSID.

Gruß,
KM