Я нахожусь в моем втором квартале колледжа и, принимая «Advanced COBOL», мы только что получили задание, которое требует от нас кодирования в некоторых процедурах проверки для различных данных.У меня все сделано за исключением небольшой процедуры проверки.
Существует поле с именем "PART-NUMBER" длиной 8 байтов.Первые 5 столбцов должны быть числом.6-й столбец должен быть заглавной буквой, а последние 2 столбца должны быть в диапазоне 01-68 или 78-99.Единственная проблема, которую я имею, состоит в том, чтобы выяснить, как проверить, что 6-й столбец является заглавной.
Вот код, который я использую: Из рабочего хранилища:
01 DETAIL-LINE.
05 PART-NUMBER.
10 PART-FIRST-FIVE-DL PIC X(5).
10 PART-LETTER-DL PIC X.
88 CAPITAL-LETTER VALUE 'A' THRU 'Z'.
10 PART-LAST-TWO-DL PIC XX.
Из 300-VALIDATE-PART-NUMBER
EVALUATE PART-LETTER-DL ALPHABETIC
WHEN TRUE EVALUATE CAPITAL-LETTER
WHEN FALSE MOVE 'YES' TO RECORD-ERROR-SWITCH
MOVE 'PART NUMBER' TO FIELD-NAME
MOVE PART-NO-IN TO FIELD-VALUE
MOVE 'YES' TO PART-NO-ERROR
END-EVALUATE
WHEN FALSE MOVE 'YES' TO RECORD-ERROR-SWITCH
MOVE 'PART NUMBER' TO FIELD-NAME
MOVE PART-NO-IN TO FIELD-VALUE
MOVE 'YES' TO PART-NO-ERROR
END-EVALUATE
Я знаю, что, вероятно,не делаю это очень эффективным способом, но сейчас мне просто нужно заставить его работать.Я прочитал целую главу о проверке данных из книги, и это своего рода ошибка в последнюю минуту (программа должна быть завтра), поэтому учитель недоступен.Я был бы очень признателен за любую помощь, которую я могу получить с этим.Я действительно потерялся в том, как я должен проверять заглавные буквы.Метод, который я сейчас использую, сообщает об ошибке, если в шестом столбце номера детали находится что-то кроме A или Z.