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 :

REXX comment recuperer les lignes d'une commande TSO


Sujet :

z/OS

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    3
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 3
    Points : 4
    Points
    4
    Par défaut REXX comment recuperer les lignes d'une commande TSO
    The OUTTRAP function does not trap all lines of command output from all TSO/E commands.

    Comment recuperer donc les lines resultats du commande TSO puique l' outtrap ne le permet pas
    Concretement je passe la commande dans un Rexx
    TSO LG $SYSTEME

    et je voudrais recuperer le resultat dans un tableau

    qui me renvoit
    INFORMATION FOR GROUP $SYSTEME
    SUPERIOR GROUP=SYS1 OWNER=SYS1 CREATED=09.040
    NO INSTALLATION DATA
    NO MODEL DATA SET
    TERMUACC
    NO SUBGROUPS
    USER(S)= ACCESS= ACCESS COUNT= UNIVERSAL ACCESS=
    P723286 USE 000363 NONE
    CONNECT ATTRIBUTES=NONE
    REVOKE DATE=NONE RESUME DATE=NONE

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    3
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Trouvé exemple sur commande RACF LG
    Exemple sur commande


    Arg grid
    x= Outtrap("lg.",'*',"noconcat")

    ADDRESS "TSO" "Lg "grid
    If (rc ^= 0) Then Do
    rmess001= lg.1
    say lg.1
    return
    End
    max_num= (lg.0 + 1)
    x= 1 ; User.0=0 ; User.="" ; ix=0 ;
    Do ivv=1 to Max_num
    If Substr(lg.x,21,3) = 'USE' Then
    Do
    IX=Ix+1
    User.ix = Substr(lg.x,7,7)
    Say user.ix
    End
    x= x + 1
    End
    Return

  3. #3
    Membre confirmé Avatar de Homer-ac
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    449
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 449
    Points : 586
    Points
    586
    Par défaut
    Un OUTTRAP sur une commande LISTGROUP comme d'ailleurs sur toute commande prévue dans le TSO HELP fonctionne sans problème.
    Cela étant, il y a quelques manques dans ce rexx. Un OUTTRAP('OFF') pour réactiver l'affichage immédiatement après le LISTGROUP et la gestion de l'index ligne avec lequel on travaille ne va pas au plus simple. Quelque chose comme ceci serait plus lisible et fiable:
    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
    /* REXX */
    Parse upper Arg grid .  
    x = outtrap("lg.","*")
    address TSO 'LG' grid
    x= outtrap("OFF")
    if RC > 0 then do
      say  lg.1
      exit RC
    end
    Do x = 1 to lg.0 /* boucle sur lignes */
       If Word(lg.x,2) ^= 'USE' then iterate 
       say 'USER :'  If Word(lg.x,1)
    end
    Drop lg.   /* libération tableau en mémoire */
    /* ..... suite  ......... */
    Exit

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

Discussions similaires

  1. [ODBC/Interbase] Comment récupérer les données d'une table ?
    Par etiennegaloup dans le forum Accès aux données
    Réponses: 3
    Dernier message: 27/09/2006, 08h55
  2. comment recuperer le resultat d'une commande dos en java?
    Par trunks-tr dans le forum Général Java
    Réponses: 49
    Dernier message: 06/06/2006, 14h25
  3. Réponses: 2
    Dernier message: 17/05/2006, 13h02
  4. Réponses: 22
    Dernier message: 09/12/2005, 21h27
  5. Comment recuperer les ip de la commande ipcinfig ?
    Par Walm dans le forum C++Builder
    Réponses: 5
    Dernier message: 04/05/2004, 16h04

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