Entschuldigung, 1251 ist kyrillisch, 1250 ist Latin-2 passend zu 870 .

Aber wie du siehst, lehnt die AS/400 eine Konvertierung ab, wenn es nicht passt.

Man kann zwar eine FROMCCSID angeben, die gilt aber nur, wenn die Datei *HEX hat.
Da deine Quelle aber 500 ist, musst du eben per SQL erst in 870 konvertieren.

Nun zum generellen Problem:
Vom Terminal mit 870 über den Job (500 oder 65535) zur DB (500) erfolgt keine Umsetzung.
Würdest du den Job auf 870 passend zum Terminal setzen, könntest du die Datei nicht öffnen, da 500 zu 870 nicht kompatibel ist.
Somit sind die Daten in der DB als 500 markiert.
Codewandlung findet nur statt, wenn es passt und 65535 nicht im Spiel ist.

Durch dein Umkopieren und den doppelcast werden die Daten nicht gewandelt (inner Cast auf 65535) und beim Insert in die 870-Tabelle auch nicht (outer Cast von 65535 auf 870).

Somit kann der CPYTOIMPF nun von 870 in 1250 ausgeben.

In Windows mit 1252 kannst du dir die Daten dann leider nicht ansehen.