Précédent   Forum des professionnels en informatique > Systèmes > Autres systèmes > z/OS
z/OS Forum d'entraide sur z/OS et MVS (Multiple Virtual Storage), les systèmes d'exploitation des ordinateurs « mainframes » IBM : JCL, Tso, Ispf, Vsam, Racf, SMS, Cics, Ims, OPC, Ca-7, Control-M, Dialog Manager ...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 27/10/2009, 15h51   #1 (permalink)
Invité de passage
 
Date d'inscription: octobre 2009
Messages: 5
Par défaut Gestion affichage display dans un JCL

bonjour,

suite à un test contrôlant la présence d'un membre dans un PDS, j'affiche une erreur à l'écran, par contre j'aurai voulu variabiliser le nom du fichier sur la ligne SE, mais malgré plusieurs tests, cela ne marche pas

Code :
//DISPLAY  EXEC  PGM=IKJEFT01,DYNAMNBR=35,       
//   COND=((1111,EQ,CTRLXREF),(0,EQ,CTRLXREF))   
//SYSOUT   DD SYSOUT=R                           
//SYSPRINT DD SYSOUT=R                           
//SYSUDUMP DD SYSOUT=R                           
//SYSTSPRT DD SYSOUT=Z                           
//SYSTSIN  DD *                                  
  PROFILE NOPREFIX INTERCOM                      
  SE 'LE FICHIER XREF &fichier EST ABSENT',USER(*)
//*

Dernière modification par Hédhili Jaïdane ; 27/10/2009 à 16h01. Motif: Balise Code
magfred03 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 27/10/2009, 18h40   #2 (permalink)
Membre éprouvé
 
Avatar de Homer-ac
 
Date d'inscription: octobre 2007
Localisation: région parisienne
Messages: 450
Par défaut

Cette question des variables dans un SYSIN est assez récurrente
En JCL natif : C'est INTERDIT
via une soumission par un ordonnanceur comme OPC : OUI, ils savent gérer.
Solution souvent proposée, passer par un programme REXX ou autre qui recopie dans un fichier FB 80 ce qu'il a reçu en PARM, où là on peut poster des variables. Pour le cas évoqué puisque l'on fait de toute façon un EXEC PGM = IKJEFT01, autant appeler directement un REXX qui fait le SEND TSO.
Exemple :
Code :
//V1       SET V1='MON.FICHIER.A.TESTER'                    
//*------- COPY DU REXX SUR PDS DE TRAVAIL ----------*      
//STEP01   EXEC PGM=IEBGENER                                
//SYSUT1   DD   *,DLM=$$                                    
/* REXX */                                                  
ARG PARM                                                    
ADDRESS TSO STRIP(PARM)                                     
EXIT 0                                                      
$$                                                          
//SYSPRINT DD   SYSOUT=*                                    
//SYSUT2   DD   DISP=(,PASS,DELETE),DSN=&&REXX(TMPREXX),    
//         SPACE=(TRK,(15,15,5),RLSE),                      
//         DCB=(RECFM=FB,LRECL=80,BLKSIZE=0,DSORG=PO)       
//SYSIN    DD   *                                           
 GENERATE MAXFLDS=9                                         
 RECORD   FIELD=(80,1,,1)                                   
//*                                                         
//*--------------------------------------------------*      
//*------- EXECUTION DU REXX ------------------------*      
//REXX02   EXEC PGM=IKJEFT01,                               
// PARM=('TMPREXX SE ''! FICHIER &V1 ABSENT !'',U(&SYSUID)')
//SYSPROC  DD   DISP=(OLD,DELETE),DSN=&&REXX                
//* SYSPROC  DD   DISP=SHR,DSN=MON.PDS.DE.REXX              
//SYSTSPRT DD   SYSOUT=*                                    
//SYSTSIN  DD   DUMMY                                       
//
Ici on passe directement à TSO la commande passée en PARM, mais il y a deux steps parce que le REXX est en SYSIN généré. Pour le cas posté, on a un STEP qui s'exécute via un COND=. Il suffit de recopier les 3 lignes du REXX at minima de l'exemple dans un membre PDS qui sera spécifié dans la DD SYSPROC du step IKJEFT01.

NB. User(*) dans le SEND TSO ? Ca risque de faire pas mal de monde !
Homer-ac est déconnecté   Envoyer un message privé Réponse avec citation
NEWS AUTRESAdaAlgorithmiqueBasicCobolFortranLaTeXMATLABPrologPurebasicRubyXMLRAD

Réponse Proposer ce sujet en actualité

Précédent   Forum des professionnels en informatique > Systèmes > Autres systèmes > z/OS



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non



Fuseau horaire GMT +1. Il est actuellement 15h48.


Vos questions techniques : forum d'entraide Autres - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Hébergement - Participez - Copyright © 2000-2010 www.developpez.com - Legal informations.