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 :

File processing


Sujet :

Cobol

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut File processing
    Bonjour,

    Probleme de debutant en cobol, je suppose...
    Je dois lire un fichier contenant des records comme :
    1 ABC
    2 DEF
    ...
    10 XYZ
    7+3 places
    J'ai donc créé une structure pour acceuillir le record
    lors de la lecture.
    01 RecF.
    10 Num PIC S9(7).
    10 Lbl PIC X(3).

    Apres une lecture "Num" est rempli de caracteres (?)
    DISPLAY Num affiche 247447Q

    Merci d'avance pour vos explications

  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
    Si vous écrivez :
    ça veut dire que votre champ devra avoir exactement 7 chiffres, qu'il sera signé et que le signe sera porté sur le dernier chiffre (OVERPUNCH en anglais).
    Ce qui n'est pas très pratique à coder ...
    A mon avis, il vaut mieux coder un champ sans signe, soit :
    Par contre, il faut impérativement coder les 7 chiffres ...
    Par exemple pour 1, il faut avoir:
    0000001

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut
    Merci Luc !

    Lorsque je fais :
    (Num contient 0000001 apres la lecture)
    ADD 1 TO Num
    ca me donne 000000B.
    Je m'attendais à 0000002 ?

  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 VitamineC
    Merci Luc !

    Lorsque je fais :
    (Num contient 0000001 apres la lecture)
    ADD 1 TO Num
    ca me donne 000000B.
    Je m'attendais à 0000002 ?
    La norme n'est pas très claire, je trouve, sur ce qui est valide pour la représentation des données numériques d'usage DISPLAY signées ou non signées ...
    Peut être qu'en présence de l'instruction ADD votre compilateur a généré une autre représentation que celle d'origine et que l'instruction DISPLAY ne la décode pas ...
    Il vous faut alors passer par une variable d'affichage, soit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    1 NUM-EDITE PIC -Z(6)9.
    ...
    ADD 1 TO NUM.
    MOVE NUM TO NUM-EDITE
    DISPLAY 'NUM=' NUM-EDITE
    Par ailleurs sur quel OS êtes vous ?

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut
    Merci encore ! Avec la variable d'affichage, ca passe.
    Je suis sur Windows 2000.
    (A bientot... rhmm)

  6. #6
    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 VitamineC
    ... Je suis sur Windows 2000 ...
    Et quel compilateur avec Windows 2000 ?
    Utilisation professionnelle ou de formation ?

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut
    Fujitsu NetCOBOL
    "Formation"

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

Discussions similaires

  1. pid du process parent du file descriptor du socket
    Par marion5515 dans le forum Réseau
    Réponses: 4
    Dernier message: 27/08/2010, 15h13
  2. datafile number not processed because file is read-only
    Par medlfi dans le forum Administration
    Réponses: 1
    Dernier message: 25/01/2010, 16h50
  3. Process raw PCM data to get wave file
    Par cool147 dans le forum Multimédia
    Réponses: 1
    Dernier message: 12/05/2009, 18h37
  4. The process cannot access the file.
    Par GoTrUnKo dans le forum ASP.NET
    Réponses: 4
    Dernier message: 28/01/2009, 17h06
  5. The process cannot access the file 'xyz' ..
    Par dsolheid dans le forum Général Dotnet
    Réponses: 4
    Dernier message: 21/04/2008, 11h45

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