Точка заявления в easytrieve
Какой смысл утверждать в easytrieve?
напр. POINT DUPIN GE HD-IN-KEY STATUS
Здесь DUPIN - имя файла, GE - реляционный оператор, HD-IN-KEY - имя поля.
1 ответ
Не уверен, смогу ли я возродить старые вопросы. Я просто подумал о том, чтобы оставить пример с использованием оператора POINT в Easytrieve. Это может быть полезно для кого-то, ссылающегося на эту тему.
В этом примере я использую входной файл VSAM со следующим содержимым.
123456 SRINIVASAN J V
234567 QWERTY
345678 SRINI
456789 BHUTAN
Первые 6 байтов - это ключ, и я хотел бы отобразить текстовое поле напротив ключа. Давайте выберем для отображения текстовое поле 123456, первая запись. Код Easytrieve выглядит следующим образом:
FILE INFILE1 VS (UPDATE)
ID 1 6 N
NAME 8 20 A
* WORK VARIABLES
WS-ID W 6 N
WS-NAME W 20 A
*
JOB INPUT INFILE1
POINT INFILE1 EQ '123456' STATUS
IF INFILE1:FILE-STATUS EQ 00
DISPLAY 'READ SUCCESS'
MOVE NAME TO WS-NAME
DISPLAY 'TEXT:' WS-NAME
STOP
ELSE
DISPLAY 'READ ERROR:' FILE-STATUS
STOP
END-IF
После выполнения кода у нас будут следующие результаты в Spool.
READ SUCCESS
TEXT:SRINIVASAN J V
Очки, которые следует отметить:
Оператор POINT в Easytrieve указывает запись на файл с ключом.
Обратите внимание на оператор POINT с параметром STATUS. Укажите параметр STATUS всякий раз, когда есть вероятность неудачного завершения запроса ввода / вывода. STATUS проверяет обработку ввода / вывода, чтобы увидеть, была ли она выполнена правильно. СОСТОЯНИЕ заставляет поле FILE-STATUS файла быть установлено с соответствующим кодом возврата. FILE-STATUS - это поле только для чтения в Easytrieve.
- Мы оцениваем поле FILE-STATUS, чтобы узнать состояние операции чтения. Если ЧИТАЙТЕ успешно, тогда мы показываем текстовое поле.