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 :

naviguation menu cobol


Sujet :

Cobol

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Août 2011
    Messages : 103
    Points : 49
    Points
    49
    Par défaut naviguation menu cobol
    Bonjour, je suis étudiant en DUT informatique et nous venons de commencer cobol depuis 2semaines. Après avoir vu Java, étudier Cobol est pour ma part est pas très facile.

    Notre prof veux que l'on réalise un menu composer de plusieurs sous-menu (pas de difficulté particulière) mais le plus dur c'est de les faire communiquer entre eux.

    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
    38
    39
    40
    41
    42
    43
    44
    45
           program-id. agence.
           working-storage section.
               1 choix pic 9.
               1 faux pic x value "F".
               1 vrai pic x value "V".
               1 fin pic x.
    
           screen section.
               1 ecran-couleur.
                   2 blank screen background-color 1.
               1 a-plg-titre.
                   2 line 2 col 37 'AGENCE'.
                   2 line 4 col 35 'TempsLibre'.
               1 a-plg-menu.
                   2 line 6 col 17 'Menu principal'.
                   2 line 8 col 17 '1 : Gestion clients '.
                   2 line 10 col 17 '2 : Gestion locations '.
                   2 line 12 col 17 '3 : Disponibilites '.
                   2 line 14 col 17 '4 : Facturation '.
                   2 line 16 col 17 '5 : Recapitulatif '.
                   2 line 18 col 17 '6 : Quitter '.
               1 s-plg-choix.
                   2 line 22 col 3 'Votre choix : '.
                   2 s-chp-choix pic 9 to choix required.
               1 a-plg-menuc.
                   2 line 6 col 17 'Clients'.
                   2 line 8 col 17 '1 : Fiche client '.
                   2 line 10 col 17 '2 : Ajouter un client '.
                   2 line 12 col 17 '3 : Supprimer client '.
                   2 line 14 col 17 '4 : Modifier client '.
                   2 line 16 col 17 '5 : Lister tous les clients '.
                   2 line 18 col 17 '6 : Retour menu '.
               1 a-plg-menul.
                  2 line 6 col 17 'Locations'.
                  2 line 8 col 17 '1 : Fiche location '.
                  2 line 10 col 17 '2 : Ajouter une location '.
                  2 line 12 col 17 '3 : Supprimer une location '.
                  2 line 14 col 17 '4 : Modifier une location '.
                  2 line 16 col 17 '5 : Lister toutes les locations '.
                  2 line 18 col 17 '6 : Retour menu '.
    
           procedure division.
    
           end program agence.
    D'après ce que j'ai pu trouver sur internet cela marche grâce à un evaluate (selon que) mais les exemples trouvés sont un peu dur à comprendre pour un débutant.

    merci pour votre aide

  2. #2
    Expert confirmé
    Homme Profil pro
    ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Inscrit en
    Juin 2007
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 096
    Points : 4 155
    Points
    4 155
    Par défaut
    Bonjour.

    - Pour afficher une image écran (map, format, menu, etc...), on utilise l'instruction DISPLAY
    - pour lire cette image (en fait pour renseigner le buffer d'entrée), on utilise l'instruction ACCEPT
    - Pour tester le contenu d'une variable, on utilise l'instruction IF...ELSE ou un EVALUATE

    Exemple :
    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
    
           procedure division.
           INIT.
               Display ecran-couleur.
               Display a-plg-titre.
               Display s-plg-choix.
           TRAIT.
               move 0 to choix.           
               perform AFF-PRINCIPAL until choix = 6. 
               stop run.
           AFF-PRINCIPAL.   
               Display a-plg-menu.
               Accept s-plg-choix.
               if CHOIX = 1 perform TRAIT-CLIENTS
               ELSE
               if CHOIX = 2 perform TRAIT-LOCATIONS
               else
               if CHOIX = 3 perform TRAIT-DISPOS
               else
               if CHOIX = 4 perform TRAIT-FACTURATION
               else
               if CHOIX = 5 perform TRAIT-RECAP.
           TRAIT-CLIENTS.
               Display a-plg-menuc.
               Accept s-plg-choix.
           TRAIT-LOCATIONS.
               Display a-plg-menul.
               Accept s-plg-choix.
           TRAIT-DISPOS.
           TRAIT-FACTURATION.
           TRAIT-RECAP.
           TRAIT-ERR-CHOIX.
           end program agence.
    l'EVALUATE est fait pour remplacer les IF quand ça devient trop complexe à gérer. Dans l'exemple, on peut remplacer le pavé des IF...ELSE par un EVALUATE comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
           AFF-PRINCIPAL.   
               Display a-plg-menu.
               Accept s-plg-choix.
               evaluate choix
                 When 1 perform TRAIT-CLIENTS
                 When 2 perform TRAIT-LOCATIONS
                 When 3 perform TRAIT-DISPOS
                 When 4 perform TRAIT-FACTURATION
                 When 5 perform TRAIT-RECAP.

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

Discussions similaires

  1. [XL-2010] Menu excel pour naviguer entre les feuilles
    Par berdah_j dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 07/09/2012, 15h49
  2. Réponses: 2
    Dernier message: 09/04/2009, 16h38
  3. TreeView et menu contextuel...
    Par agh dans le forum Composants VCL
    Réponses: 6
    Dernier message: 06/04/2009, 12h23
  4. [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, 17h03
  5. Menu en GL
    Par Kaïn dans le forum OpenGL
    Réponses: 2
    Dernier message: 06/05/2002, 11h58

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