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 :

STRING avec valeurs numériques


Sujet :

Cobol

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 71
    Points : 46
    Points
    46
    Par défaut STRING avec valeurs numériques
    bonjour,

    j'aimerais pouvoir en COBOL réaliser le STRING (ou un équivalent) suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    STRING 'LIBRAIRIE CONTIENT ' DELIMITED BY SIZE 
               NBLIVRES DELIMITED BY SIZE
               ' LIVRES' DELIMITED BY SIZE 
               INTO MSG-OUT
    Seulement voila :
    NBLIVRES est déclaré en 9(3) et peut de ce fait être précédé de quelques zéros.
    Quelle est la méthode la plus légère pour les supprimer?

  2. #2
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 901
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 901
    Points : 6 026
    Points
    6 026
    Par défaut
    As-tu essayé avec une variable ayant une picture d'édition (ZZ9) ?
    "Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
    -----------------------
    Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MP
    Usus magister est optimus

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 71
    Points : 46
    Points
    46
    Par défaut
    Oui,
    et ca me pose un problème à la compilation losrque je fait un
    ADD 1 TO NBLIVRES

    nblivre doit etre numérique est non en Z..

  4. #4
    Membre expert
    Avatar de TheLeadingEdge
    Inscrit en
    Mai 2005
    Messages
    1 199
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 1 199
    Points : 3 103
    Points
    3 103
    Par défaut
    bonjour,

    Et qque chose comme ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    nn NBLIVRES 9(3).
    nn NBLIVRES-Z redefines NBLIVRES ZZ9.
     
    STRING ... NBLIVRES-Z DELIMITED BY SIZE ...

  5. #5
    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 casgr1
    Oui,
    et ca me pose un problème à la compilation losrque je fait un
    ADD 1 TO NBLIVRES

    nblivre doit etre numérique est non en Z..
    Effectivement, une PICTURE d'édition n'est qu'un masque d'édition est doit toujours être réservée pour une variable terminale ...

    Ma solution (désolé, j'ai pas trouvé plus simple ... ) :
    - utiliser une variable avec une PICTURE d'édition
    - alimenter cette variable
    - comme dans cette variable les blancs seront à gauche il suffit d'inverser la chaîne de caractères ainsi obtenue
    - en tenir compte dans l'ordre STRING

    Soit :

    Déclaration :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    1 NBLIVRES   PIC 999. 
    1 NBLIVRES-E PIC ZZ9. 
    1 NBLIVRES-R REDEFINES NBLIVRES-E 
                 PIC XXX.
    1 NBLIVRES-S PIC XXX.
    Coding :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    MOVE NBLIVRES TO NBLIVRES-E 
    MOVE FUNCTION REVERSE(NBLIVRES-R) TO NBLIVRES-S 
    MOVE SPACE TO MSG-OUT
    STRING 'LIBRAIRIE CONTIENT ' DELIMITED BY SIZE
         NBLIVRES-S DELIMITED BY SPACE
         ' LIVRES' DELIMITED BY SIZE
         INTO MSG-OUT
    Et ça a l'air de marcher ...
    J'ai testé sur Mainframe IBM sous z/OS
    Compilateur COBOL: COBOL for OS/390 & VM V2R2

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 71
    Points : 46
    Points
    46
    Par défaut
    En effet, ca marche!

    Merci beaucoup!

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

Discussions similaires

  1. STRING avec des valeurs numeriques
    Par JTyvelines dans le forum Cobol
    Réponses: 3
    Dernier message: 10/12/2014, 15h07
  2. Concaténer des cellules de strings avec une matrice de valeurs
    Par procrastination dans le forum MATLAB
    Réponses: 3
    Dernier message: 16/10/2014, 13h25
  3. [Débutant] Probleme ComboBox 2 Colonnes avec String, Affichage Valeur TextBox
    Par superthx dans le forum VB.NET
    Réponses: 4
    Dernier message: 05/09/2014, 10h29
  4. Tester la valeur d'un String avec <s:if>
    Par olontsotra dans le forum Struts 2
    Réponses: 3
    Dernier message: 28/07/2009, 17h20
  5. Réponses: 7
    Dernier message: 28/02/2008, 16h56

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