Буферизация заданий печати JCL в набор данных для определенного LPAR

Я хотел распечатать свою очередь заданий автоматически (с помощью планировщика заданий) с помощью JCL. Я смог сделать это, выполнив программу SDSF и передав свои команды SDSF в ISFIN. Мне удалось передать имя задания и напечатать его в определенный файл, но как мне получить имя задания, относящееся к конкретному LPAR. В наших системах MVS запущено 2 LPAR, поэтому, возможно, у нас будет одно и то же имя задания, работающее в LPR1. и ЛПР2. И каждый раз, когда я отправляю это задание, оно всегда печатает очередь заданий LPAR1, но не очередь заданий LPR2.

STRTASK1 S0103545 DB2TSK     15           4 EXECUTION             LPR1 
STRTASK1 S0087680 DB2TSK     15          88 EXECUTION             LPR2

         //SDSF     EXEC PGM=SDSF                                
         //ISFOUT   DD  SYSOUT=*                                 
         //*FILEOUT  DD  SYSOUT=*                                
         //ISFIN    DD  *                                        
         ST                                                      
         S STRTASK2
         FIND STRTASK2                                            
         ++S                                                     
         PRINT FILE FILEOUT                                      
         PRINT                                                   
         PRINT CLOSE         

Я даже пытался добавить SYSNAME LPR1/2 в приведенные выше команды ISFIN, но это не помогло. У кого-нибудь есть какие-либо предложения.. Заранее спасибо.


person Jeeva nandham    schedule 14.12.2019    source источник


Ответы (1)


Похоже, SYSNAME не работает с панелью состояния SDSF. Я предлагаю вам попробовать команду ФИЛЬТР. Возможно...

     ST                                                      
     S STRTASK2
     FILTER +SYSN LPR1
     FIND STRTASK2                                            
     ++S                                                     
     RESET
     PRINT FILE FILEOUT                                      
     PRINT                                                   
     PRINT CLOSE
     FILTER +SYSN LPR2
     FIND STRTASK2                                            
     ++S
     RESET
     PRINT FILE FILEOUT                                      
     PRINT                                                   
     PRINT CLOSE

... это то, что вы ищете. В ISFOUT могут быть сообщения, указывающие на конкретную проблему.

В документации для SDSF в пакетном режиме упоминается, что Rexx является предпочтительным методом, а не вышеупомянутым расширением того, что вы пробовали изначально. Возможно, вам стоит пойти по этому пути.

person cschneid    schedule 14.12.2019
comment
Я пробовал это, но не помогло. Я что-то упустил? ST S STRTASK2 FILTER +SYSN LPR1 FIND STRTASK2 ++S PRINT FILE FILEOUT PRINT PRINT CLOSE - person Jeeva nandham; 15.12.2019
comment
не помогло не помогло - в чем конкретно проблема и сообщения об ошибках (если есть)? - person NicC; 16.12.2019
comment
Сообщений об ошибках нет, задания выполняются с macc 0000. Но ожидается, что оператор FILTER должен был отфильтровать задание STRTASK2 только под LPR2, но оно всегда идет к LPR1.. - person Jeeva nandham; 16.12.2019