Wie gesagt, RPG ist da neutral, da in gezonten Daten die letzte Stelle das Vorzeichen enthält:
x'40' ist keine gültige Zahl sondern *BLANK !
Nun frage ich mich allerdings wie die da rein kommt.
Stehen darf da allenfalls X'F0'-X'F9' für positiv und X'D0' - X'D9' für negativ.
Schau mal per DSPPGM das RPG an, irgendwo am Ende steht was von "Dezimalfehler ignorieren". Übrigens: in RPGLE kannst du damit Probleme bekommen, ausser in den H-Bestimmungen definierst du dass *ZONDED-Fehler ignoriert werden.
Die Verarbeitung klappt deshalb, da alles was nich X'Dn' is als 'Fn' also positiv angenommen wird.

Woher kommen denn die Daten ?
Ursache ist meistens ein CPYF mit *NOCHK !!!
Prüfe mal die Definition der Quelldaten mit der Definition deiner Datei !

Kann es dadurch zudem sein, das der Wert des Feldes um den Faktor 10 zu gross ist ???