Dies hängt in hohem Maße auf den Compiler (und die Version) Sie haben - bitte fügen Sie diese fehlenden Informationen hinzu.
Im Allgemeinen: Alle Benutzereingaben sollten validiert werden und in Ihrem Fall möchten Sie einen numerischen Index verwenden, der pic 9(04)
sein sollte. Je nach Compiler (Version) führt dies bereits zu "nur numerische Daten im Feld", andernfalls könnten Sie MOVE FUNCTION NUMVAL (input-field) TO quantity
verwenden, was zum selben Ergebnis führt.
Danach müssen Sie nur noch prüfen, ob quantity
innerhalb der gültigen Grenzen Ihres OCCURS
sind:
quantity <= max-entries AND NOT = 0
für feste Länge auftritt oder
quantity <= depending-field AND NOT = 0
für OCCURS max-entries DEPENDING ON depending-field
Hinweis: Mit FUNCTION NUMVAL
auf Eine ungültige Eingabe wie "z" wird zu 0
führen, was bereits überprüft wird, so dass Sie die Information "ungültig" sowohl für die Eingabe einer Nullnummer als auch für ein "s" erhalten tring "eingegeben (mit einem einzigen Haken).
Bitte überprüfen Sie die aktualisierte Antwort und schauen Sie sich https://Stackoverflow.com/help/someone-answers - bitte entweder kommentieren über unklare Teile oder stimmen + akzeptieren. –