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 :

Cours Cobol et développement mainframe


Sujet :

Cobol

  1. #41
    Candidat au Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Plan d'analyse , d'ecriture de programme COBOL
    Bonjour
    Je suis debutante sur cobol Mainframe,j'ai commencé à ecrire mon premier programme,mais j'ai quelque difficulté. je veux savoir le PLAN, ou la logique que je devrai suivre pour faire un programme cobol(appel des composants,condidtion,les nombres 6000.7000.8000.3000.....)
    MERCI DE M REPONDRE et de me suggérer un lien

  2. #42
    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 cobol.2 Voir le message
    Bonjour
    Je suis debutante sur cobol Mainframe,j'ai commencé à ecrire mon premier programme,mais j'ai quelque difficulté. je veux savoir le PLAN ...
    le PLAN ... au sens DB2 ?

  3. #43
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 088
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 088
    Points : 38 387
    Points
    38 387
    Billets dans le blog
    9
    Par défaut
    Citation Envoyé par cobol.2 Voir le message
    Je suis debutante sur cobol Mainframe,j'ai commencé à ecrire mon premier programme,mais j'ai quelque difficulté. je veux savoir le PLAN
    Quelques notions de base :
    Un programme cobol se compose de 4 divisions obligatoires.
    IDENTIFICATION DIVISION : elle sert essentiellement à identifier le programme : program-id + le nom suffit, pas trop compliqué donc
    ENVIRONNEMENT DIVISON : elle permet de décrire l'environnement externe du programme : type de machine (à titre documentaire) et surtout fichiers utilisés pour faire le lien avec les fichiers du job
    DATA DIVISION : il s'agit ici de décrire les données utilisées au sein programme (indépendamment des noms externes des fichiers).
    PROCEDURE DIVISON : c'est pour le code proprement dit

    Chaque division se découpe en SECTIONS (sauf l'id division qui n'en a pas)
    Certaines sections sont obligatoires, même si inutilisées (en ce cas on ne met rien dedans)
    Dans la procédure division, on peut déclarer des sections mais ce n'est plus utilisé de nos jours (ca servait dans les années 60 à découper les zones de code montées en mémoire machine)
    ATTENTION si dans la procédure, vous appelez une section par PERFORM, tous les paragraphes de la section sont exécutés, alors que si vous appelez un paragraphe, toutes les instructions du paragraphe appelé sont exécutées. (Variante possible PERFORM paragraphe1 through paragraphe2 auquel cas tous les § compris entre paragraphe1 et paragraphe2 inclus sont exécutés).

    Chaque section peut contenir des paragraphes.

    Le nom d'une division, d'une section et d'un paragraphe se termine par un point. Ex : "IDENTIFICATION DIVISION."

    Dans les vieilles versions de cobol, il n'y avait pas de fin explicite d'instruction (et notamment pas de end-if)
    Toute instruction était terminée par un point.

    Par exemple dans le code ci-dessous, contrairement à ce que l'indentation laisse à penser, à cause du point après paragraphe3, le paragraphex s'exécute quelle que soit la condition1 !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        IF  condition1 (then)
            perform paragraphe1
            if  condition 2 
                perform paragraphe2
            else
                perform paragraphe3.
            perform paragraphex
    Depuis COBOL2 (ou COBOL 85 je ne sais plus...) de nombreuses fin d'instruction ont été ajoutées, ce qui est beaucoup plus explicite. Mais attention aux points qui trainent...
    Pour cette raison il est recommandé d'écrire les paragraphes avec un seul point, obligatoire, après la dernière instruction du paragraphe.

    Citation Envoyé par cobol.2 Voir le message
    les nombres 6000.7000.8000.3000.....)
    Pour les nombres, il faut connaitre un minimum les types de données cobol, je copie colle ici une explication que j'avais données dans un cours DB2 (à compléter avec les formats d'édition) :

    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
    Smallint c’est du binaire court
    description cobol  S9(4) COMP ou 9(4) COMP
    longueur occupée 2 octets
    valeurs maxi de  – 32768 à + 32 767 (si signé) ou de 0 à + 65 535 (si non signé)
     
    Integer c’est du binaire normal 
    description cobol S9(9) COMP ou 9(9) COMP
    longueur occupée 4 octets
    valeurs maxi de – 2 147 483 648 à + 2 147 483 647 (non signé) ou de 0 à 4 294 967 295 (non signé)
     
    Bigint c’est du binaire long
                    Description cobol S9(18) COMP ou 9(18) COMP
                    Longueur occupée 8 octets
                    Valeurs maxi de -9 223 372 036 854 775 808 à +9 223 372 036 854 775 807 (non signé) ou de zéro à +18 446 744 073 709 551 615 (2 puissance 64)
     
    Decimal c’est du décimal packé 
                    Description cobol S9(nn) COMP-3 ou 9(nn)COMP-3
                    Longueur occupée (nn+1)/2 octets arrondi par excès, avec au maximum S(18) COMP-3 = 10 octets
                    Valeur maxi fonction de nn 
     
    Il existe aussi en cobol le format étendu qui n’est ni plus ni moins que du CHAR mais dédié à un contenu numérique
                    Description cobol S9(nn) ou 9(nn)
                    Longueur occupée nn octets
                    Valeur maxi fonction de nn
    Pièce jointe 349992

    Si vous devez faire du COBOL-CICS il y a des particularités à connaitre qu'il serait un peu long d'expliquer ici

    Pour la doc détaillée de COBOL, consultez le "reference manual" de votre version.

  4. #44
    Nouveau Candidat au Club
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Février 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Maroc

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2019
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    pourriez vous partager avec nous le chemin de téléchargement de l'outils net express, merci d'avance !

Discussions similaires

  1. Développement en Cobol sous MVS (Mainframes)
    Par ngthurel dans le forum Tomcat et TomEE
    Réponses: 0
    Dernier message: 15/06/2011, 14h55
  2. Réponses: 3
    Dernier message: 31/08/2010, 15h12
  3. Cours COBOL MVS.
    Par M.Fatima-Ezzahra dans le forum Cobol
    Réponses: 2
    Dernier message: 28/05/2010, 11h16

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