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

z/OS Discussion :

Tronquer des données


Sujet :

z/OS

  1. #1
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    1 907
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 907
    Points : 411
    Points
    411
    Par défaut Tronquer des données
    Bonjour est-il possible de tronquer les 30 premières colonnes d'un fichier VB de 200 caractères ?

    Avec un fichier en sortie qui à le même DCB.

    j'y parviens avec du FB et outrec mais en VB pas moyen..

    Merci d'avance pour votre aide.

  2. #2
    Membre chevronné Avatar de bernard59139
    Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    950
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Octobre 2006
    Messages : 950
    Points : 2 064
    Points
    2 064
    Par défaut
    essaye ceci, (je fais de tête, je n'ai pas accès à un mvs avant 1 semaine)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    option vlshrt
    sort fields=(copy)
    outfil outrec=(5,30)
    Une autre solution, c'est de coder le LRECL dans le JCL, avec éventuellement l'option "TRUNC=RC0" dans la sysin.

  3. #3
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    1 907
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 907
    Points : 411
    Points
    411
    Par défaut
    Bonjour,

    ça ne fonctionne pas.

    Voici le message d 'erreur :

    OPTION VLSHRT
    SORT FIELDS=COPY
    OUTFIL OUTREC=(5,30)
    RECORD TYPE IS V - DATA STARTS IN POSITION 5
    VLSHRT NOT USED FOR SORT, MERGE, INCLUDE, OMIT OR SUM STATEMENT FIELDS
    INCONSISTENT SORTOUT IFTHEN 0 REFORMATTING FIELD FOUND
    C5-K21008 C6-K90007 C7-K90000 C8-K23476 E9-K90007 E7-K11698
    END OF DFSORT


    Est-il possible de le faire avec ICETOOL ?

  4. #4
    Membre chevronné Avatar de bernard59139
    Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    950
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Octobre 2006
    Messages : 950
    Points : 2 064
    Points
    2 064
    Par défaut
    Ma mémoire me joue des tours.
    Ca, ca devrait le faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      OPTION VLLONG
      SORT FIELDS=(COPY)

  5. #5
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    1 907
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 907
    Points : 411
    Points
    411
    Par défaut
    toujours pas :

    - CONTROL STATEMENTS FOR 5694-A01, Z/OS DFSORT V1R5 - 14:52 ON MON SEP
    OPTION VLLONG
    SORT FIELDS=COPY
    OUTFIL OUTREC=(5,30)
    RECORD TYPE IS V - DATA STARTS IN POSITION 5
    VLSHRT NOT USED FOR SORT, MERGE, INCLUDE, OMIT OR SUM STATEMENT FIELDS
    INCONSISTENT SORTOUT IFTHEN 0 REFORMATTING FIELD FOUND
    C5-K21008 C6-K90007 C7-K90000 C8-K23476 E9-K90007 E7-K11698
    END OF DFSORT

  6. #6
    Membre chevronné Avatar de bernard59139
    Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    950
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Octobre 2006
    Messages : 950
    Points : 2 064
    Points
    2 064
    Par défaut
    Sans mettre le OUTREC.....

    En ne mettant que les 2 lignes. Le LRECL du fichier devra être dans le JCL.

  7. #7
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    1 907
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 907
    Points : 411
    Points
    411
    Par défaut
    Mais à quel moment je lui dis de sauter les 30 premières colonnes si je ne mets le OUTREC ?

  8. #8
    Membre confirmé 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
    Points : 586
    Points
    586
    Par défaut
    Bonjour,
    Comme bernard59139 et bien que nos Jobs et employeurs soient sans rapport, je n'aurai pas non plus le temps de vérifier en MVS pendant quelques jours. Je peux peut-être quand même te donner des pistes. Il y a pas mal d'options dont celles indiquées par Bernard. Regarde aussi dans la Doc DFSORT les paramètres VTOF et FTOV. Le premier te permet de passe de VB en FB, le second, bien entendu le contraire. Mais comme les 2 s'appliquent plutôt dans l'OUTFIL il faudrait tester les cas. Au pire en t'appuyant sur les 2, tu t'en sort en 2 steps. 1) VB en FB avec FTOF + VLFILL, 2) FB en VB via FTOV. Il y a certainement un moyen direct, mais réponse seulement fin de semaine en ce qui me concerne.

  9. #9
    Membre chevronné Avatar de bernard59139
    Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    950
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Octobre 2006
    Messages : 950
    Points : 2 064
    Points
    2 064
    Par défaut
    Désolé, j'ai mal lu la question

    essaye ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    sort fields=(copy)
    outfil outrec=(1,4,34)
    explications:
    • 1,4 permet de tenir compte du RDW (le fichier est en variable)
    • 34 saute les 30er records + les 4c du rdw. Et sans mettre la longueur, SORT prend le "reste"

  10. #10
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    1 907
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 907
    Points : 411
    Points
    411
    Par défaut
    Nickel,

    ça, ça marche !

    merci.

  11. #11
    Membre confirmé 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
    Points : 586
    Points
    586
    Par défaut
    Message perso : merci du tuyau.
    J'ai parfois géré des trucs comme ça en bien plus compliqué, pour du variable en m'appuyant sur la doc.

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

Discussions similaires

  1. Tronquer des données à partir d'un type de caractère
    Par maldufleur dans le forum Développement
    Réponses: 11
    Dernier message: 07/05/2012, 19h58
  2. cherche module ou langage pour récupérer des données audio..
    Par Ry_Yo dans le forum Langages de programmation
    Réponses: 5
    Dernier message: 12/05/2003, 17h44
  3. Réponses: 13
    Dernier message: 20/03/2003, 08h11
  4. Structure des données en retour d'un DBExtract ?
    Par mikouts dans le forum XMLRAD
    Réponses: 4
    Dernier message: 24/01/2003, 15h15
  5. Réponses: 2
    Dernier message: 18/12/2002, 10h30

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