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

Cobol Discussion :

[z/OS] Donnée d'un programme Cobol vers JCL


Sujet :

Cobol

  1. #1
    Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 1
    Points : 2
    Points
    2
    Par défaut [z/OS] Donnée d'un programme Cobol vers JCL
    Bonjour,

    je souhaiterai faire passer une donnée d'un programme cobol vers le jcl
    mais je n'ai aucune idée de comment procéder?
    j ai besoin de cette donnée pour renommer un fichier dynamiquement.

    merci d'avance pour toutes vos reponses

  2. #2
    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
    Ce qui me semble le plus simple serait une recopie du JCL de base (en particulier pour le paramètrage JOB qui va bien, à commencer par le nom), avec alimentation du sysin de rename IDCAMS sur un fichier SYSOUT ou autre DDNAME tel qu'assigné dans le COBOL) déclaré ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    //JCLOUT DD SYSOUT=(*,INTRDR),DCB=(LRECL=80,RECFM=FB,BLKSIZE=0)
    Le nouveau fichier crée partira dans le reader de JES et s'exécutera comme JOB à part qui va suivre le JOB d'exécution du COBOL

  3. #3
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2005
    Messages
    1 473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 473
    Points : 3 283
    Points
    3 283
    Par défaut
    Citation Envoyé par fatsam Voir le message
    ... je souhaiterai faire passer une donnée d'un programme cobol vers le jcl ...
    Mais quel genre de donnée ?

  4. #4
    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
    Pour ce que j'ai compris, c'est un rename de fichier qui doit être généré soit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    //STP1 EXEC PGM=IDCAMS
    //SYSPRINT DD SYSOUT=*
    //SYSIN DD *
       ALTER ANCIEN.NOM.FICHIER NEWNAME(NOUVEAU.NOM.FICHIER)
    //*
    Soit la commande ALTER est écrite dans un fichier de LRECL 80, repris dans un STEP IDCAMS qui suit l'exécution du COBOL, soit on écrit tout le JOB qui peut être envoyé en exécution par INTRDR.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    362
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 362
    Points : 419
    Points
    419
    Par défaut
    Perso, je trouve que cette dernière solution est très simple. Pas la peine de générer du JCL. Pour expliciter l'exemple d'Homer-ac, tu auras un JCL comme ça :

    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
    //*
    //* Programme applicatif
    //* Crée et alimente le fichier NOMFISTD dont le nom devra être modifié
    //* dynamiquement
    //* Ecrit dans RENAMEDD la ligne suivante : 
    //* ALTER ANCIEN.NOM.FICHIER NEWNAME(NOUVEAU.NOM.FICHIER)
    //* qui permettra de renommer le 1er fichier
    //*
    //MONPGM01  EXEC PGM=MONPGM01
    //NOMFISTD  DD DSN=ANCIEN.NOM.FICHIER,DISP=(NEW,CATLG,DELETE)
    //             SPACE=(CYL,(1,1),RLSE),
    //             DCB=(RECFM=FB,BLKSIZE=0,LRECL=4200),
    //             UNIT=SYSDA
    //RENAMEDD  DD DSN=NOM.DE.FICHIER.TEMP,DISP=(,CATLG,DELETE)
    //             SPACE=(TRK,(1,1),RLSE),
    //             DCB=(RECFM=FB,BLKSIZE=0,LRECL=80),
    //             UNIT=SYSDA
    //*
    //RENAME EXEC PGM=IDCAMS
    //SYSPRINT DD SYSOUT=*
    //SYSIN DD DSN=NOM.DE.FICHIER.TEMP,DISP=SHR
    //*

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 26/05/2010, 13h37
  2. Exporter des données d'un requete SQL vers excel (csv)
    Par PrinceMaster77 dans le forum ASP
    Réponses: 9
    Dernier message: 08/10/2005, 22h28
  3. transformer les données d'une table .dbf vers ma BD
    Par djouahra.karim1 dans le forum Bases de données
    Réponses: 2
    Dernier message: 30/11/2004, 09h54
  4. Tranfert de données d'une base Oracle vers PostGre
    Par Elois dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 27/01/2004, 18h08

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