|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre confirmé
![]() Inscription : mars 2004 Messages : 1 187 ![]() |
Bonjour à tous,
je dois passer un job via TWS et ce job doit avoir un paramétrage spécial à chaque passage. C'est un valeur qui apparaît à plusieurs endroits et cette valeur nous est donnée par ma maîtrise d'ouvrage. j'aimerais savoir s'il est possible de trouver un moyen d'automatiser cette valorisation ? Au lieu de rentrer dans le JCL et changer la valeur XXXX par APPU par un CHANGE ALL, j'aimerais trouver un moyen plus automatique. Comment faîtes-vous dans votre société ? Merci. |
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() Administrateur de base de données Inscription : octobre 2006 Messages : 503 ![]() |
Bonjour
les variables OPC sont là pour ca. Associées à une WS de préparation "job setup=yes", et des variables définies en "prompt=yes", ca roule. Une fois l'application au plan, l'application est bloquée, interrogeable en 4.1 J'ai vu ce fonctionnement dans de nombreuses prod. |
|
|
00
|
|
|
#3 |
|
Membre confirmé
![]() Inscription : mars 2004 Messages : 1 187 ![]() |
Bonjour bernard59139,
le souci c'est que dans mon cas, ce n'est pas forcément une variable OPC... Par exemple, pour une application hebdomadaire. On doit attendre, l'information venant de la maîtrise d'ouvrage (donc l'application doit être bloqué). Ensuite, quand la DMOP nous donne la valeur (qui n'est pas forcément une valeur OPC (ça peut être MAJ=OUI ou encore VOL=9999), je dois inscrire cette variable et elle doit apparaître partout dans le JCL ou il y a la variable. Pourrais-tu me donner plus de détail sur la fonction : job setup=yes et aussi sur le prompt yes... Aurais-tu un cas concret ? Merci. |
|
|
00
|
|
|
#4 | ||||
|
Membre du Club
![]() Bernard Développeur et formateur Mainframe Inscription : février 2007 Messages : 39 ![]() |
Bonjour,
Si j'ai bien compris la question de sam01, je pense qu'il serait possible de coder en tête de JCL une carte INCLUDE faisant référence à un membre (figurant dans la PROCLIB ou dans tout autre PDS défini par une JCLLIB) dans lequel seraient définies les variables symboliques du JCL. Une fois reçues les informations attendues, il suffit de modifier ledit membre. Pour être plus clair : Code :
Code :
|
||||
|
|
00
|
|
|
#5 |
|
Membre confirmé
![]() Inscription : mars 2004 Messages : 1 187 ![]() |
Bonjour BernardBZH, tu n'es pas du tout hors sujet. c'est même très intéressant ce que tu proposes.
Est-ce que ça fonctionne si les variables sont dans des sysin ? |
|
|
00
|
|
|
#6 | ||||
|
Membre du Club
![]() Bernard Développeur et formateur Mainframe Inscription : février 2007 Messages : 39 ![]() |
Bonjour Sam01,
Hélas non. On a toujours cette limitation de l'interdiction de variables symboliques dans une SYSIN. Pour remédier à ce problème, sur chaque site où je suis intervenu j'ai trouvé des petits programmes (en assembleur ou en COBOL) qui codaient le contenu de la SYSIN dans un fichier temporaire à partir des variables symboliques qui leur étaient passées en paramètres. La SYSIN est ensuite codée : Code :
//SYSIN DD DSN=&&DSNTEMP,DISP=(OLD,DELETE) Voici un exemple de programme COBOL qui permet de générer le fichier pris pour la SYSIN : Code :
Code :
|
||||
|
|
00
|
|
|
#7 | ||||
|
Membre confirmé
![]() Inscription : mars 2004 Messages : 1 187 ![]() |
Merci BernardBZH pour toutes ces informations,
pardon d'insister mais si j'ai bien compris en tête de chaque JCL, je dois mettre ce code : Code :
0 quoi correspond cette ligne Code :
Sans vouloir abuser, aurais-tu un exemple avec 2 ou 3 sysin différentes afin que je saisisse bien le fonctionnement ? Merci |
||||
|
|
00
|
|
|
#8 | ||||||||||||||
|
Membre du Club
![]() Bernard Développeur et formateur Mainframe Inscription : février 2007 Messages : 39 ![]() |
Bonjour Sam01 (et aux autres par la même occasion),
Tu n'abuses pas du tout et on est là pour se donner des coups de main. Le programme servant à générer les SYSIN que je te proposais dans une précédente réponse peut être appelé à tout moment dans ton JCL. En tête de JCL tu dois seulement décrire les paramètres que tu utilises dans tes différents STEP. Le programme que je te propose s'appelle PARMSYS avec un LOAD du même nom qui se trouve dans le PDS de LOAD adéquat. Le PARM='xxxxx' contient le masque de ta SYSIN que mettra en forme le programme PARMSYS. Exemple d'une PROC nommée EXEDB2 qui me sert pour exécuter des programmes DB2 : Code :
Code :
Code :
Code :
Tu peux aussi lancer le programme PARMSYS plusieurs fois pour générer des lignes supplémentaires dans une même SYSIN en codant DISP=MOD sur le fichier de DDNAME OUT. Dans l'exemple de ma réponse précédente Code :
Code :
Code :
Voila. J'espère t'avoir été utile et n'hésite pas à revenir si je n'ai pas été assez clair. Mes excuses à tous si mes réponses prennent un peu de place ... |
||||||||||||||
|
|
00
|
|
|
#9 |
|
Membre confirmé
![]() Inscription : mars 2004 Messages : 1 187 ![]() |
Super BernardBZH, merci pour tous ces détails !
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com