IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ordonnancement Discussion :

Ordonnancement des traveaux


Sujet :

Ordonnancement

  1. #1
    Membre à l'essai
    Femme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation

    Informations forums :
    Inscription : Décembre 2012
    Messages : 13
    Points : 16
    Points
    16
    Par défaut Ordonnancement des traveaux
    Bonjour à tous
    je cherche à avoir comment peut on soumettre toutes une chaine de jobs qui sont lies l'un aux autres sachant que je n'ai pas d'ordonnanceur ?
    Peut on mettre des conditions entre ces jobs? sachant qui nous recommandent de faire une a deux steps par jobs??
    Merci de m'eclaircir la dessus
    aussi je suis vraiment tres interessee par la programmation en JCL serait il possible d'avoir des exemples de chaines avec le code JCL

  2. #2
    Membre régulier
    Homme Profil pro
    Ingénieur d'étude Mainframe
    Inscrit en
    Septembre 2012
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur d'étude Mainframe
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2012
    Messages : 61
    Points : 124
    Points
    124
    Par défaut
    Salut !

    Au pire tu peux concaténer tes JCL :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    //JCL1      EXEC PGM=PROGRAM1
    //SYSOUT    DD SYSOUT=* 
    //*
    //JCL2      EXEC PGM=PROGRAM2,COND=(4,LT)
    //SYSOUT    DD SYSOUT=*
    par exemple.

    Ici, ton JCL2 ne se lancera que si JCL1 renvoie un code retour inférieur à 4.

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2012
    Messages : 41
    Points : 108
    Points
    108
    Par défaut
    Bonjour,

    tu peux utiliser le lanceur de jobs que j'avais décrit dans la file de discussion 'Ordonnanceur de job' du 11/04/2001.
    C'est pas trop simple à mettre en place, mais ça fonctionne bien lorsqu'on a pas d'ordonnanceur.

  4. #4
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2012
    Messages : 41
    Points : 108
    Points
    108
    Par défaut
    Sinon, tu peux utiliser le lanceur suivant écrit en REXX.
    Il faut paramétrer les noms de JCL, le fichier de travail et le nom de la bib REXX.
    Il faut aussi customiser la ligne Job ci-dessous avec les bons paramètres :
    queue "//"USERID()"L JOB (TSO,E),LANCE,MSGCLASS=m,CLASS=c "

    Le REXX est exécuté en tapant EXEC devant le membre (qui doit s'appeler $LANCE dans notre exemple, sinon ça marche po).



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    /***************************  REXX  **********************************/ 
    /*               Permet de lancer une serie de JCL                   */ 
    /*********************************************************************/ 
    /* Liste des JCLs  ( à saisir )                                      */ 
    JCL.0 = 2                               /* Nombre de JCL à exécuter  */ 
    JCL.1 = 'USER.PDS.JCL.INTEGRAT(JCLA)'   /* Premier JCL à exécuter    */ 
    JCL.2 = 'USER.PDS.JCL.INTEGRAT(JCLB)'   /* Second JCL à exécuter     */ 
    /* Fichier de travail et bib REXX ( à customiser )                   */ 
    Travail = 'USER.PDS.JCL.INTEGRAT(ZZENCHAI)' /* Fichier de travail    */ 
    BibPROC = 'USER.PDS.JCL.INTEGRAT'           /* Bibliothèque REXX     */ 
    PARSE ARG N0_JCL                                                        
    If N0_JCL = '' then do                 /* Première exécution du REXX */ 
        say  '<ENTREE> pour enclencher le processus ' ; N0_JCL = 0 ; end    
    N0_JCL = N0_JCL + 1                                                     
    if N0_JCL > JCL.0 then exit /* Si plus de JCL à passer, on arrete là */ 
    queue "//BOUCLE   EXEC PGM=IKJEFT01,       "                            
    queue "//  PARM='$LANCE " N0_JCL  "'"                                   
    queue "//SYSOUT   DD SYSOUT=*              "                            
    queue "//SYSTSPRT DD SYSOUT=*              "                 
    queue "//SYSTSIN  DD DUMMY                 "                           
    queue "//SYSPROC  DD DISP=SHR,DSN="BibPROC                             
    if bpxwdyn("alloc fi(trav) da('"Travail"') shr") <> 0 then             
          do ; say 'Pb Alloc sur ' Travail ; exit ; end                    
    "execio * diskw trav (fini"                                            
    ret = bpxwdyn("free dd(trav)")                                         
    /* On lance le JCL suivant qui soumet un second JOB constitué du JCL */
    /* sélectionné auquel on ajoute l'étape de rappel du REXX (ci-dessus)*/
    queue "//"USERID()"L JOB (TSO,E),LANCE,MSGCLASS=m,CLASS=c "            
    queue "//INTRDRS1 EXEC  PGM=IEBGENER                      "            
    queue "//SYSUT1   DD  DISP=SHR,DSN="JCL.N0_JCL                         
    queue "//         DD  DISP=SHR,DSN="Travail                            
    queue "//SYSUT2   DD  SYSOUT=(,INTRDR)                    "            
    queue "//SYSPRINT DD  SYSOUT=*                            "            
    queue "//SYSIN    DD  DUMMY                               "            
    queue "$$                                                 "            
    "SUBMIT * END($$)"                                                     
    Return

  5. #5
    Membre à l'essai
    Femme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation

    Informations forums :
    Inscription : Décembre 2012
    Messages : 13
    Points : 16
    Points
    16
    Par défaut
    Bonsoir;
    je tiens à vos remercier pour vos réponses
    je n'ai pas encore pu tester cela. je vous en fait un retour des que je teste.

Discussions similaires

  1. Ordonnancement des traveaux
    Par Débutante-mvs dans le forum z/OS
    Réponses: 4
    Dernier message: 28/01/2013, 20h27
  2. ordonnancement des tâches en c
    Par Moine dans le forum C
    Réponses: 4
    Dernier message: 12/09/2007, 21h37
  3. CPU CoreDuo : problème d'ordonnancement des taches
    Par karami dans le forum Général Dotnet
    Réponses: 3
    Dernier message: 27/05/2007, 20h07
  4. ordonnancement des numéros des enregistrements
    Par hkarim dans le forum C++Builder
    Réponses: 1
    Dernier message: 19/09/2006, 09h47
  5. [FORMS6i]Ordonnancement des blocs
    Par MomoZeAsticot dans le forum Forms
    Réponses: 2
    Dernier message: 26/07/2006, 16h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo