Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 8 sur 8
  1. #1
    Membre habitué
    Homme Profil pro Julien Guiffroy
    Ingénieur d'étude Mainframe
    Inscrit en
    septembre 2012
    Messages
    61
    Détails du profil
    Informations personnelles :
    Nom : Homme Julien Guiffroy
    Âge : 28
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur d'étude Mainframe
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2012
    Messages : 61
    Points : 114
    Points
    114

    Par défaut BIB 100 en JCL

    Bonjour, j'ai un souci avec un JCL que je dois lancer qui doit exécuter un BIB 100 en assembleur.

    Le problème ne vient pas vraiment du BIB 100 (enfin si un peu), je m'explique :

    J'ai un fichier en environnement COBOL/MVS qui est codé en hexadécimal et j'ai remarqué que le fichier doit disposer en dernière ligne d'un en-queue comportant le nombre de lignes (nombre lu par JCL pour vérifier la cohérence du fichier => nombre de lignes lues doit être égal à nombre réel de lignes)

    Problème : Ce nombre de lignes est codé en hexadécimal dans le fichier comme ci-dessous

    040
    67C (c'est à dire +06470 lignes)

    Or, le nombre réel de lignes, si l'on doit le coder en hexadécimal devrait être différent

    Exemple :

    070
    68C (ici, +06780 lignes)

    Comment puis-je demander à assembleur de chercher l'hexadécimal et non le rendu (comme si on avait passé l'option hex à off), c'est-à-dire ne pas chercher les caractères mais X'060470C'

    Dois-je coder l'hexa dans le JCL avec l'option hex sur on et mettre C'[caractères en rendu]' dans le CLC?

    Merci pour la réponse.
    ________________________________________
    ________________________________________
    Skylyn,

  2. #2
    Invité de passage
    Inscrit en
    mai 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : mai 2010
    Messages : 3
    Points : 4
    Points
    4

    Par défaut

    Je ne suis pas un spécialiste mais je pense que ca pourrait aider les spécialistes si tu pouvais poster le(s) step(s) concerné(s) de ton jcl et de ton assembleur.

    Cdlt

  3. #3
    Membre habitué
    Homme Profil pro Julien Guiffroy
    Ingénieur d'étude Mainframe
    Inscrit en
    septembre 2012
    Messages
    61
    Détails du profil
    Informations personnelles :
    Nom : Homme Julien Guiffroy
    Âge : 28
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur d'étude Mainframe
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2012
    Messages : 61
    Points : 114
    Points
    114

    Par défaut

    En fait j'ai pas accès au programme de chez moi, mon environnement technique du travail est très sécurisé

  4. #4
    Membre habitué
    Homme Profil pro Julien Guiffroy
    Ingénieur d'étude Mainframe
    Inscrit en
    septembre 2012
    Messages
    61
    Détails du profil
    Informations personnelles :
    Nom : Homme Julien Guiffroy
    Âge : 28
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur d'étude Mainframe
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2012
    Messages : 61
    Points : 114
    Points
    114

    Par défaut

    C'est bon j'ai trouvé la solution ce matin

    Il fallait juste faire un MVC en X'{hexadécimal}' sur une longueur de la longueur du X divisé par 2

  5. #5
    Membre habitué
    Homme Profil pro Julien Guiffroy
    Ingénieur d'étude Mainframe
    Inscrit en
    septembre 2012
    Messages
    61
    Détails du profil
    Informations personnelles :
    Nom : Homme Julien Guiffroy
    Âge : 28
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur d'étude Mainframe
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2012
    Messages : 61
    Points : 114
    Points
    114

    Par défaut

    Oublié un exemple pour ceux qui voudraient utiliser ce morceau de code

    MVC [colonne -1]([longueur totale],11)=X'1234567890ABCDEF'

    Par exemple si l'hexa est A12C, longueur totale vaudra (longueur de A12C)/2

    colonne - 1 car si vous voulez modifier la 7ème colonne dans le fichier cible, en assembleur faudra mettre 6 en colonne à traiter

    MVC 6(2,11)=X'A12C'

    Voilà

    ________________________________________
    ________________________________________
    Skylyn,

  6. #6
    Membre Expert

    Homme Profil pro François Durand
    Ingénieur Exploitation Mainframe
    Inscrit en
    octobre 2005
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Nom : Homme François Durand
    Âge : 55
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Exploitation Mainframe
    Secteur : Finance

    Informations forums :
    Inscription : octobre 2005
    Messages : 1 224
    Points : 2 263
    Points
    2 263

    Par défaut

    Bonsoir,

    J'ai vu que votre problème était résolu, ce qui est plutôt une bonne nouvelle pour vous. Mais je tenait à dire que, plutôt que de passer par un programme assembleur, il existe dans ICETOOL une toute nouvelle option avec l'opérateur OUTFIL, IFTRAIL qui permet de mettre à jour ce type d'enregistrement.

    Update the trailer record with OUTFIL
    IFTRAIL is a new OUTFIL option that allows you to update count and total values in an existing trailer (last)
    record based on the current data records.
    Various options of IFTRAIL allow you to identify the trailer record (TRLID), indicate the count and total values to
    be updated in the trailer record (TRLUPD), and indicate if the first record is a header record (HD=YES).
    IFTRAIL makes it easy to update count and total values in an existing trailer record when you add, delete or
    modify data records.
    DFSORT symbols can be used for fields and constants in TRLID. DFSORT symbols can be used for columns and
    fields in TRLUPD
    .

    Bon après, reste à voir si ça pouvait s'appliquer à votre problème ...

  7. #7
    Membre habitué
    Homme Profil pro Julien Guiffroy
    Ingénieur d'étude Mainframe
    Inscrit en
    septembre 2012
    Messages
    61
    Détails du profil
    Informations personnelles :
    Nom : Homme Julien Guiffroy
    Âge : 28
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur d'étude Mainframe
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2012
    Messages : 61
    Points : 114
    Points
    114

    Par défaut

    En fait si j'avais pu éviter de passer par de l'assembleur, je l'aurais fait...

    Mais la procédure n'est pas rédigée par mes soins et effectivement, j'aurais bien utilisé cette solution en JCL purement et simplement.

    Merci quand même pour les outils, je me mets ça sous le coude ça peut servir !
    ________________________________________
    ________________________________________
    Skylyn,

  8. #8
    Expert Confirmé Sénior
    Profil pro
    Inscrit en
    décembre 2007
    Messages
    3 152
    Détails du profil
    Informations personnelles :
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : décembre 2007
    Messages : 3 152
    Points : 10 339
    Points
    10 339

    Par défaut

    J'ai connu des maisons ou seuls les BIB100 étaient autorisés pour mettre à jour des données de production. J'en frissonne encore d'effroi.
    Les 4 règles d'airain du développement informatique sont, d'après Michael C. Kasten :
    1)on ne peut pas établir un chiffrage tant qu'on a pas finalisé la conception
    2)on ne peut pas finaliser la conception tant qu'on a pas complètement compris toutes les exigences
    3)le temps de comprendre toutes les exigences, le projet est terminé
    4)le temps de terminer le projet, les exigences ont changé
    Et le serment de non-allégiance :
    Je promets de n’exclure aucune idée sur la base de sa source mais de donner toute la considération nécessaire aux idées de toutes les écoles ou lignes de pensées afin de trouver celle qui est la mieux adaptée à une situation donnée.

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •