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 :

[Unix/Aix-MFSE 5.1] Problème Compilation COBOL 64


Sujet :

Cobol

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 19
    Par défaut [Unix/Aix-MFSE 5.1] Problème Compilation COBOL 64
    Bonjour,

    Je ne suis pas un spécialiste Cobol, mais nous venons de changer de machine AIX 5.2 et de cobol , nous avons un cobol microfocus avec un compilateur:* Micro Focus Server Express V5.1 revision 000 Compiler

    Un programme qui se compilait sans problème en version 32 bits compilateur Microfocus v4.1.30L-e génère des erreurs de type :
    * 214-S************************************************************** **
    ** VALUE too long for data item or has too many decimal positions
    1090 VALUE +30000.
    Pourriez-vous SVP m'orienter sur une correction ?

    Merci d'avance

  2. #2
    Membre Expert
    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
    Par défaut
    Citation Envoyé par velo83 Voir le message
    Bonjour,

    Je ne suis pas un spécialiste Cobol, mais nous venons de changer de machine AIX 5.2 et de cobol , nous avons un cobol microfocus avec un compilateur:* Micro Focus Server Express V5.1 revision 000 Compiler

    Un programme qui se compilait sans problème en version 32 bits compilateur Microfocus v4.1.30L-e générère des erreurs de type:


    * 214-S************************************************************** **
    ** VALUE too long for data item or has too many decimal positions
    1090 VALUE +30000.

    Pourriez -vous SVP m'orienter sur une correction

    Merci d'avance
    Bonjour.

    Veux-tu mettre ici la partie du programme source qui contient cette erreur ainsi la description des variables sur lesquelles portent ces lignes source.

    Je pense quil y a une déclaration de variable suivie d'une clause VALUE qui ne correspont à la description.

  3. #3
    Expert confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    6 814
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 6 814
    Par défaut
    +1.

    Il faudrait l'ensemble des description de données - avec les INCLUDE et les COPY si il y en a. Il y a sans doute eu du codage approximatif, qui passait dans un compilateur plus permissif.....

    les description de données(je précise, car nous n'avons semble-t-il pas affaire à un spécialiste), c'est ce que l'on trouve sous les paragraphes WORKING-STORAGE SECTION et LINKAGE SECTION. Toutes les données décrites commencent par un numéro sur 2 chiffres. exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    01  DATE-DU-JOUR.                     
        10 AA-DATE-DU-JOUR      PIC 9(02).
        10 MM-DATE-DU-JOUR      PIC 9(02).
        10 JJ-DATE-DU-JOUR      PIC 9(02).
    ++INCLUDE XSPIPARM                                        
        02  CODTAB                  PIC X(8).                 
        02  SPI2TBV                 PIC X(8) VALUE 'SPI2TBV '.
    INCLUDE XSPIPARM signifie que l'on rajoute tout le contenu du livrable XSPIPARM dans le code(ici une description de données). COPY fait pareil(avec une autre syntaxe).

    Et il faut vérifier l'ensemble.

    Typiquement, si on a un code du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    77 DONNEE PIC 9(004) VALUE +30000.
    77 DONNEE-PACKEE PIC 9(004)COMP VALUE +30000.
    ...ça risque de ne pas passer dans certains compilateurs plus regardants que d'autres.

  4. #4
    Membre chevronné 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
    Par défaut
    IL y a de fortes chances que le problème n'est pas lié au changement de version du compilateur mais aux options d'installation de cette nouvelle version du compilateur. J'ai déjà eu ce genre d'expérience en z/OS, à chaque fois c'était du à un oubli de reprise des anciennes options par défaut du compilateur. Visiblement si j'en crois ce lien on peut jouer sur pas mal d'otions de compilations avec COBOL Microfocus à l'instar d'Enterprise COBOL z/OS :
    http://www.jatomes.com/Help/MfOptS.Html#TRUNC

    Pour ce type d'erreur il y a gros à parier qu'il s'agit d'une donnée déclarée en binaire et que la même option TRUNC qui existe également en z/OS influe sur les réactions du compilateur.

    Si c'est bien le cas, il faut je pense revoir l'installation du compilateur pour se recaler sur les options de compilation de l'ancienne version, sinon vous risquez un impact rien qu'en recompilant un programme à l'exécution, à la limite avec des différences de fonctionnement sans erreur détectée par le compilateur. A mon avis c'est le support technique du fournisseur qu'il faut contacter ee qui pourra vous indiquer les options d'installation les plus critiques à comparer entre les 2 versions COBOL MICROFOCUS.

  5. #5
    Membre Expert
    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
    Par défaut
    Citation Envoyé par Homer-ac Voir le message
    .... A mon avis c'est le support technique du fournisseur qu'il faut contacter ee qui pourra vous indiquer les options d'installation les plus critiques à comparer entre les 2 versions COBOL MICROFOCUS.
    +1
    Certaines options de compilation ou de génération de code peuvent être activées au coup par coup ou par les changement des options par défaut du compilateur.

    El-slapper a raison aussi sur la permissivité des anciennes versions compilateurs.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 19
    Par défaut
    Bonjour,
    Je remercei beaucoup la communauté.
    Je joins une partie de la description qui se trouve dans une copy appelée par la programme:
    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
    032300 10 LTD-CARACTERE PIC X(001) OCCURS 506.
    032400 05 LTD-CODE-MESSAGE PIC X(004).
    032500*
    032600*
    032700*
    032800 01 LTM-POOL-LIBELLES.
    032900*
    033000 05 LTM-I PIC S9(004) COMP.
    033100 05 LTM-J PIC S9(004) COMP.
    033200 05 LTM-MAX PIC S9(004) COMP
    033300      VALUE +30000.
    033400 05 LTM-FILLER PIC S9(004) COMP.
    033500 05 LTM-TABLE.
    033600 10 LTM-CARACTERE PIC X(001) OCCURS 30000.
    033700*
    033800*
    033900*
    034000 01 LTP-TRAITEMENTS-RUBRIQUES.
    034100*
    034200 05 LTP-I PIC S9(004) COMP.
    034300 05 LTP-J PIC S9(004) COMP.
    034400 05 LTP-MAX PIC S9(004) COMP
    034500 VALUE +200.

  7. #7
    Membre Expert
    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
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    33200 05 LTM-MAX PIC S9(004) COMP
    033300      VALUE +30000.
    Alors effectivement, c'est ici que ça se plante, celà confirme ce qui a été dit sur la directive TRUNC/NOTRUNC. voir aussi la directive IBMCOMP.

  8. #8
    Expert confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    6 814
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 6 814
    Par défaut
    explication complémentaire : S9(004), c'est un nombre signé sur 4 caractères. Mais l'option COMP permet de travailler en binaire(soit, en signé, jusqu'à 32767). Le code est donc exact(mais moche) - mais le compilateur ne lui permet pas de marcher proprement.

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

Discussions similaires

  1. problème de compilation cobol
    Par pinfada dans le forum Cobol
    Réponses: 2
    Dernier message: 30/01/2012, 19h00
  2. Problème compilation Cobol sous Iseries
    Par Duchemole dans le forum Cobol
    Réponses: 8
    Dernier message: 01/07/2011, 00h21
  3. Problème de compilation postgres 8.4.1 sous Unix AIX
    Par casasniper dans le forum Installation
    Réponses: 7
    Dernier message: 16/10/2009, 12h58
  4. [Unix-MF] Compilation cobol microfocus sous UNIX
    Par rossfr dans le forum Cobol
    Réponses: 1
    Dernier message: 24/07/2009, 15h21
  5. [Unix] Compilation Cobol sous Unix et Linux
    Par rudyhadoux dans le forum Cobol
    Réponses: 2
    Dernier message: 17/10/2008, 19h36

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