Liebe Experten

In einer Datei gibt es ein 10-stelliges alphanumerisches Feld mit dem Namen PAGUMB, das derzeit in allen ca. 23000 Datensätzen den Wert *NONE enthält. In einem COBOL-Programm werden alle diese Sätze gelesen und für jeden Satz die folgenden Zeilen ausgeführt:
IF NOT(PAGUMB = SPACES OR *NONE)
PERFORM CALL-DOKUMB THRU CALL-DOKUMB-EXIT
END-IF.
CALL-DOKUMB dürfte also in dem Fall nie aufgerufen werden. Das geht auch genau 20044 Mal gut, aber beim 20045. Datensatz wird CALL-DOKUMB aus unerklärlichen Gründen doch aufgerufen!
Das Feld PAGUMB enthält 100%ig wie bei allen anderen Datensätzen auch beim 20045. Mal *NONE und 5 Blanks, also hexadezimal '5CD5D6D5C540404040'. (zumindest wird es im Debugger so angezeigt und auch eine entsprechende Abfrage in SQL bestätigt das)
Auch eine Umformulierung der Abfrage in
IF PAGUMB NOT = SPACES AND PAGUMB NOT = "*NONE"
oder eine nochmalige gleichartige Abfrage im Paragraf CALL-DOKUMB ergeben kein anderes Ergebnis.

Wie kann das möglich sein?

Vielen Dank im Voraus