Da du was von alter Anwendung sagst, dann prüfe bitte die CCSID der Dateien/Tabellen.
Dein Problem ist die System-CCSID 65535 die auch für deine normalen Jobs übernommen wird.
Da erfolgt dann keine Codewandlung, deshalb klappts auch per STRSQL oder embedded SQL.

Per ODBC wird die Job-CCSID
a) aus dem Systemwert QCCSID genommen,
b) wenn 65535 dann passend aus QLANGID übernommen.

Welche CCSID hat nun der Job QZDASOINIT?
Welche CCSID haben die Datein/Tabellen?

Dein Problem ist die CCSID 937!
Ist das u.U. ein Tippfehler?

Du kannst in einem Job nicht 2 inkompatible CCSID's gleichzeitig verarbeiten, da die Tabellen-CCSID in die Job-CCSID umgewandelt werden muss.
Dein Dialog-Job mit CCSID 65535 macht keine Umwandlung (was meist Schrott bedeutet), der SQL-Job macht immer eine Umwandlung.