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

z/OS Discussion :

Ajout de SYSPROC en REXX


Sujet :

z/OS

  1. #1
    Expert éminent sénior
    Homme Profil pro
    Ingénieur d'Etude Mainframe/AS400
    Inscrit en
    Novembre 2012
    Messages
    1 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'Etude Mainframe/AS400
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2012
    Messages : 1 763
    Points : 10 740
    Points
    10 740
    Par défaut Ajout de SYSPROC en REXX
    Bonjour,

    Je sais qu'au LOGON les PDS sont définis pour le DDNAME SYSPROC.
    J'aimerais en REXX ajouter un PDS "proprement".
    Actuellement (dans une application REXX/Dialog MANAGER) je procède ainsi (cela fonctionne mais je trouve que ce n'est pas propre) pour avoir ma SYSPROC en plus de celles déjà définies :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    ADDRESS TSO                                                    
    "ALLOC FI(SYSPROC) DA('PDS1' 'PDS2' 'PDS3' 'PDS4' 'MYPDS') SHR REUSE"
    IF RC <> 0 THEN                                                
       DO                                                          
         SAY 'ERREUR LIBDEF POUR CLIST'                            
         RETURN                                                    
       END                                                         
    ;
    Donc les PDS1 à 4 sont déjà définis au LOGON et je rajoute 'MYPDS' quand je définis mes bibliothèques pour l'appli (en plus des ISPPLIB, ISPSLIB, ISPMLIB).
    Donc ma question est la suivante : Quel serait le moyen de rajouter mon PDS sans déclarer ceux déjà existants (via le LOGON) ni n'avoir plus que mon PDS.

  2. #2
    Membre expert
    Avatar de Metalman
    Homme Profil pro
    Enseignant-Chercheur
    Inscrit en
    Juin 2005
    Messages
    1 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enseignant-Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 049
    Points : 3 532
    Points
    3 532
    Par défaut
    427 lectures.... 0 réponses...
    Je vais amener le grain de sel de quelqu'un d'autre :

    Dans le topic parlant des panels ISPF, au tout début je cherchais un moyen de concaténer un de mes PDS à la SYSPROC et à la SYSEXEC existante... et apparemment c'est impossible.
    Voici la réponse de bernard59139 ici.
    Juste avant sa réponse, j'avais noté un message à ce sujet, et il y répond.

    1. ALLOC+FREE, c'est normal. Les alloc en cours sont libérées pour satisfaire le demandeur
    2. je ne connais pas de méthode standard pour concatener en dynamique
    Je n'ai pas trouvé d'autre méthode que de refaire un REXX avec les SYSPROC et SYSEXEC existantes "en dur dans le texte" + le PDS supplémentaire
    --
    Metalman !

    Attendez 5 mins après mes posts... les EDIT vont vite avec moi...
    Les flags de la vie : gcc -W -Wall -Werror -ansi -pedantic mes_sources.c
    gcc -Wall -Wextra -Werror -std=c99 -pedantic mes_sources.c
    (ANSI retire quelques fonctions comme strdup...)
    L'outil de la vie : valgrind --show-reachable=yes --leak-check=full ./mon_programme
    Et s'assurer que la logique est bonne "aussi" !

    Ma page Developpez.net

  3. #3
    Expert éminent sénior
    Homme Profil pro
    Ingénieur d'Etude Mainframe/AS400
    Inscrit en
    Novembre 2012
    Messages
    1 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'Etude Mainframe/AS400
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2012
    Messages : 1 763
    Points : 10 740
    Points
    10 740
    Par défaut
    Merci ! Effectivement j'avais fouillé un peu partout et je n'ai vu nul part la possibilité de le faire en dynamique. Dommage car c'est possible pour les ISPPLIB, ISPSLIB, ISPMLIB.

  4. #4
    Membre chevronné Avatar de bernard59139
    Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    950
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Octobre 2006
    Messages : 950
    Points : 2 064
    Points
    2 064
    Par défaut
    Il n'existe pas de possibilité d'ajouter un pds à SYSPROC, SYSEXEC, ou ISPPLIB et autres, sauf outil spécifique.

    Avec les ISPPLIB et autres, LIBDEF permet d'allouer temporairement un ddname qui sera lu avant les ISP* déjà alloués.

    Pour SYSPROC/SYSEXEC, tu peux utiliser ALTLIB qui fonctionne très bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTLIB ACTIVATE APPLICATION(CLIST) DATASET(......

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Ingénieur d'Etude Mainframe/AS400
    Inscrit en
    Novembre 2012
    Messages
    1 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'Etude Mainframe/AS400
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2012
    Messages : 1 763
    Points : 10 740
    Points
    10 740
    Par défaut
    Merci c'est exactement ce que je cherchais !

  6. #6
    Membre expert
    Avatar de Metalman
    Homme Profil pro
    Enseignant-Chercheur
    Inscrit en
    Juin 2005
    Messages
    1 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enseignant-Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 049
    Points : 3 532
    Points
    3 532
    Par défaut
    En effet, sur le dernier post du topic j'ai un script qui fait cela :

    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
    /* REXX */                                                            
                                                                          
      "EXECUTIL SEARCHDD(YES)"   /* TO ENSURE THAT SYSEXEC IS AVAILABLE*/ 
                                                                          
    /*                                                                    
    ** "ALLOC FILE(SYSEXEC) DATASET(REXX.EXEC,",                          
    **       "'ISP.PHONE.EXEC') SHR REUSE"                                
    */                                                                    
                                                                          
      BIBREXX = METAL.SYSPROC                                   
    /* "ALLOC FILE(SYSEXEC) DATASET('"BIBREXX"') SHR REUSE" */            
      "ALLOC FILE(SYSEXEC) DATASET('METAL.SYSPROC',",           
             "'AUTRE.LIB',",                                      
             "'ENCORE.UNE.AUTRE.LIB') SHR REUSE"                                 
                                                                          
      IF RC = 0 THEN                                                      
        SAY 'ALLOCATION TO SYSEXEC COMPLETED.'                            
      ELSE                                                                
        SAY 'ALLOCATION TO SYSEXEC FAILED.'                               
                                                                          
      ADDRESS TSO                                                         
      "ALTLIB ACT APPLICATION(EXEC) DATASET('"BIBREXX"')"                 
    /* "CONCATD FILE(SYSEXEC) DSN('"BIBREXX"') BEFORE" */
    Il est directement issu de la doc IBM évidemment !
    --
    Metalman !

    Attendez 5 mins après mes posts... les EDIT vont vite avec moi...
    Les flags de la vie : gcc -W -Wall -Werror -ansi -pedantic mes_sources.c
    gcc -Wall -Wextra -Werror -std=c99 -pedantic mes_sources.c
    (ANSI retire quelques fonctions comme strdup...)
    L'outil de la vie : valgrind --show-reachable=yes --leak-check=full ./mon_programme
    Et s'assurer que la logique est bonne "aussi" !

    Ma page Developpez.net

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ajout catégories Sources : COBOL & JCL (voire REXX ?)
    Par Metalman dans le forum Evolutions du club
    Réponses: 0
    Dernier message: 05/02/2014, 11h50
  2. [système] Comment ajouter un item dans le context menu de Windows ?
    Par ddmicrolog dans le forum API, COM et SDKs
    Réponses: 8
    Dernier message: 29/06/2005, 18h03
  3. [VB6] [ADO] Pb ajout enregistrement table liée
    Par fikou dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 01/10/2002, 12h49
  4. Connaitre l'unitée à ajouter dans USES
    Par DelphiCool dans le forum Langage
    Réponses: 7
    Dernier message: 01/08/2002, 14h48
  5. Ajouter une aide
    Par Mailgifson dans le forum C++Builder
    Réponses: 5
    Dernier message: 12/06/2002, 14h32

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