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 :

Comment travailler en COBOL Ibm/Z avec un panel ispf


Sujet :

Cobol

  1. #1
    Candidat au Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Février 2019
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Comment travailler en COBOL Ibm/Z avec un panel ispf
    Bonjour,
    J'ai un programme cobol qui " devrait montrer " un panel ispf :
    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
       PROCESS DYNAM
       IDENTIFICATION DIVISION.                             
       PROGRAM-ID.    CBLEX003                              
       ENVIRONMENT DIVISION.                                
       DATA DIVISION.                                       
       WORKING-STORAGE SECTION.                             
       77 PST1 PIC X(8) VALUE 'LIBDEF  '.                     
       77 PST2 PIC X(8) VALUE 'ISPPLIB '.                    
       77 PST3 PIC X(8) VALUE 'DATASET '.                    
       77 PST4 PIC X(15) VALUE 'Z30952.MINE.GML'.           
       77 PST5 PIC X(16) VALUE 'DISPLAY PANEL01'.           
       77 ISPLINK PIC X(8) VALUE 'ISPLINK '.                 
       PROCEDURE DIVISION.                                  
           CALL ISPLINK USING PST1 PST2 PST3 PST4. 
           CALL "ISPLINK" USING PST5.         
           STOP RUN.
    Je le compile et link avec un jcl :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    //CBLCL    JOB 1,NOTIFY=&SYSUID,MSGLEVEL=(1,1)         
    //***************************************************/ 
    //SETVAR   SET THEPGM=CBLEX005                         
    //SETVAR   SET WHERES=&SYSUID..MINE.GML                
    //SETVAR   SET LINKRU=&SYSUID..PATO                    
    //***************************************************/ 
    //COBRUN   EXEC IGYWCL                                 
    //COBOL.SYSIN  DD DSN=&WHERES(&THEPGM),DISP=SHR        
    //LKED.SYSLMOD DD DSN=&LINKRU(&THEPGM),DISP=SHR
    Le résultat est RC=0 (donc compilation et link sans erreur)
    Mais quand je lance le programme je reçois une erreur RC=20. Le jcl pour lancer le programme cobol :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    //CBLRU1   JOB 1,NOTIFY=&SYSUID,MSGLEVEL=(1,1)                  
    //***************************************************/          
    //SETVA1   SET THEPGM=CBLEX003                                  
    //SETVA2   SET LINKRU=&SYSUID..PATO(&THEPGM)                    
    //***************************************************/          
    //STEP2    EXEC PGM=&THEPGM                                     
    //STEPLIB   DD DSN=&LINKRU,DISP=SHR                             
    //SYSOUT    DD SYSOUT=*,OUTLIM=15000                            
    //CEEDUMP   DD DUMMY                                            
    //SYSUDUMP  DD DUMMY
    Le panel est très simple et fonctionne parfaitement dans ispf 6.7 et dans un programme REXX :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    )ATTR DEFAULT(+_%)                                                      
    % TYPE(TEXT) COLOR(PINK) INTENS(HIGH)                                 
    $ TYPE(INPUT) INTENS(HIGH) PAD(_)                                     
    ! TYPE(INPUT) INTENS(LOW) PAD(' ') 
    )BODY                                                                   
    %-------------------- *TITLE FOR ENTRY PANEL* --------------------------
    %COMMAND ===>_ZCMD                                                      
    %                                                                       
    &ZUSER    &ZTIME             &ZSCREEN    &ZWIDTH  &ZUS4S7               
    +   THIS DIRECTION LINE TELLS THE USER HOW TO USE THE PANEL:            
    %XXXXX:_X     %YYY:$YYY          %ZZZ:$ZZ%AAAAAAAA:$AAAAAAAA  +         
    )END
    Ma question est : qu'est-ce qu'il manque au programme cobol ou au jcl pour que ça fonctionne ?

  2. #2
    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
    Un PANEL ISPF, comme son nom l'indique, est un écran 3270 affichable sous ISPF, l'application interactive du z/OS.

    Quel est l'intérêt de vouloir le lancer en batch ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Février 2019
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par Luc Orient Voir le message
    Un PANEL ISPF, comme son nom l'indique, est un écran 3270 affichable sous ISPF, l'application interactive du z/OS.
    Quel est l'intérêt de vouloir le lancer en batch ?
    Je ne sais pas quoi vous dire, moi ce que je veux c'est développer une application en cobol qui demande un code et cherche les données client dans une table sql pour ensuite les présenter ou erreur. Dans un AS/400 c'est très simple : 1 fichier type dspf (correspondant à un panel pour z/os), 1 table sql et un programme cobol qui montre l'écran avec la question et la réponse si il y en a sinon erreur. J'ai un script REXX qui fait l'appel a un panel directement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    /* rexx to display panel1 */                              
    "ispexec libdef ispplib dataset id('Z30952.MINE.GML')"    
    /*show*/                                                  
    "ispexec addpop"                                          
    "Ispexec display panel(panel01)"                          
    if rc\=0 then do                                          
    say 'command cancelled'                                   
    exit                                                      
    end                                                       
    else                                                      
    say 'your name is' X                                      
    exit
    Ou alors pour ce que je veux il faut un développement CICS ?
    Merci

  4. #4
    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 seoirse Voir le message
    ... J'ai un script REXX qui fait l'appel a un panel directement
    Vous pouvez très bien appeler le programme COBOL dans le script REXX.


    Ou alors pour ce que je veux il faut un développement CICS ?
    Non là c'est le marteau pilon pour écraser une mouche ...

  5. #5
    Candidat au Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Février 2019
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par Luc Orient Voir le message
    Vous pouvez très bien appeler le programme COBOL dans le script REXX.
    Non là c'est le marteau pilon pour écraser une mouche ...
    Merci pour vos commentaires, voici mes réponses :
    Pour CICS compris !
    Pour REXX compris aussi. Mais je continue à vouloir savoir comment tout faire avec du COBOL !
    Si je le fais en batch, il faut d'abord lancer l'entourage ispf (libdef, display) et après lancer le programme, correcte ? Mais si je fais les appels dynamiquement (dans le COBOL) il faudrait que ça fonctionne sans rien d'autre non ?
    Puisque dans tous les manuels ils parlent de call "isplink" using ... ou call "ispexec" using ... sans rien dire d'autre. Il semblerait qu'il n'y ait pas autre façon de faire !
    Je ne comprends pas pourquoi il n'y a pas d'exemples exploitables simples pour une chose qui a beaucoup de demande.

Discussions similaires

  1. Comment travailler avec Win32
    Par Mathieu.J dans le forum MFC
    Réponses: 4
    Dernier message: 25/01/2006, 09h49
  2. [XSLT] Comment travailler avec la balise <br/>
    Par billou13 dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 11/10/2005, 10h47
  3. Comment travailler avec le port IEEE 1394?
    Par Cornejito dans le forum MFC
    Réponses: 6
    Dernier message: 04/05/2005, 14h22
  4. Comment travailler avec le client ?
    Par mathieu dans le forum Gestion de projet
    Réponses: 3
    Dernier message: 12/10/2004, 20h56
  5. [linux][gcc] Comment travaille t-on avec plusieurs fichiers?
    Par kaygee dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 02/04/2004, 17h48

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