PDA

View Full Version : SQL0332 beim SQL-Aufruf einer UDF(Java)



Ewald
23-01-07, 20:58
Hallo Forumsmitglieder,

ich bekomme nach der Umstellung einer iSeries Mod. 800 (OS/400 V5R2) auf eine i5 Mod. 550 (OS/400 V5R4) beim SQL-Aufruf einer UDF(Java), die einen 16-stell. Alphawert zurück gibt, den Fehler SQL0332 (SQLSTATE 57017) "Character conversion between CCSID 65535 and CCSID 1200 not valid". Kann mir jemand sagen, woher die CCSID 1200 kommt, wenn ich meine UDF im SQL aufrufe??
Im Voraus vielen Dank

TARASIK
24-01-07, 07:08
Hallo Ewald,
da ist die Erklärung:

http://www-912.ibm.com/n_dir/nas4apar.NSF/1be1a5b61b213a6c86256c23007048f4/1ff3a6cba91eebf78625715b003cc247?OpenDocument&Highlight=0,ccsid,1200,r540,msgSQL0332

und hier das ersetzende Ptf:

http://www-912.ibm.com/a_dir/as4ptf.nsf/ALLPTFS/SI24527

Ewald
24-01-07, 14:07
Hallo TARASIK,
nach Überprüfung ist das von Dir genannte PTF bereits angelegt. Hast Du noch eine Idee??

TARASIK
24-01-07, 14:11
Hallo Ewald,
das SI24527 ist also angelegt ? Hast Du schon einmal die
Circumvention aus diesem Apar ausprobiert ?

Change the job ccsid to any ccsid other than 65535 before
calling SQLJ.INSTALL_JAR.

Fuerchau
24-01-07, 14:38
Ändere den Systemwert QCCSID auf eine gültige CCSID.
Bei z.B. ODBC kannst du nicht so einfach dem Job eine andere CCSID verpassen jedoch die UDF aufrufen.

Im Zusammenhang mit Java sollte ein Job immer ein gültige CCSID <> 65535 aufweisen.