Может ли CLIST получить доступ к элементу PDS и файлу GDG?

Мне нужно проверить строку в файле GDG, например, чтобы проверить 'ABCDEFG' в файле: AAA.BBB.CCC.DDD(0).

Если ДА, добавьте эту строку 'ABCDEFG' в конец элемента PDS:

ABD.EFG.HIG (имена).

ЕСЛИ ОБА ФАЙЛЫ - PSD-ФАЙЛЫ, проблем нет, хотя я перешел на GDG и PDS, это не сработало.

Моя программа Clist не может выделить файл gdg, а также не может присоединиться к члену. Он переоценил член, когда я выделил файл для SHR и OLD. Мод не работал с файлом участника.

1 ответ

Clist может получить доступ к GDG, но вы должны преобразовать имя файла из относительной ссылки GDG (0) в полное имя набора данных. В вашем экзамене вам нужно будет сослаться на файл следующим образом: AAA.BBB.CCC.DDD.G1234V00 (где G1234V00 - самый последний идентификатор версии).

Как правило, вы можете сделать это, написав подпрограмму для запуска команды LISTCAT в наборе данных, SYSTRAPing для вывода и последующего синтаксического анализа полного имени в переменной CLIST.

Пример:

PROC 0

  /* This illustrates a basic clist method using SYSTRAP */
  /* to extract a fully qualified GDG dataset name       */ 

     CONTROL NOFLUSH NOPROMPT NOLIST NOCONLIST NOSYMLIST NOMSG MAIN 

  /* Target dataset name */
     SET GDG = 'RAPP.RAP000.YQ.TAX.YQINFO.BK'                       

  /* SET SYSTRAP LIMIT and execute IDCAMS LISTC command */
     SET &SYSOUTTRAP = 300                                          
     LISTC ENTRIES(&GDG)                                            

  /* Calculate line number of last entry in LISTC results */
     SET &I = &SYSOUTLINE-21

  /* calculate ending position of GDG name in report */
     SET &L = &LENGTH(&GDG) + 23

  /* extract SYSTRAP data into clist string variable */
     SET &C = &&SYSOUTLINE&I

  /* substring data from SYSTRAP line into clist variable and list */
     SET &D = &SUBSTR(17:&L,&STR(&C))                               
     WRITE &D                                                       
END 

Пример вывода...

RAPP.RAP000.YQ.TAX.YQINFO.BK.G8203V00


Другие вопросы по тегам