Il est possible de rajouter des constantes dans le fichier de sortie. Pour cela vous créerez une spécification F par CARACTERE à ajouter, la spécif. F aura la définition suivante. Colonne 1 à 5 :-des blancs 6 :-F 7 :-D 8 :-V Indique ajout d'1 caractère n'existant pas dans le fichier d'entrée. 9 à 17 :-blanc critère de tri. 18 :-caractère à ajouter 19 à 39 :- blancs 40 à 72 :- commentaires |
Il est possible de remplacer certains caractères du fichier d'entrèe. Supposons que vous ayez une zone MOIS dans votre fichier d'entrée qui fasse un caratère alphanum. Elle prend les valeurs 0 à 9 pour les 10 premiers mois de l'année et N pour novembre et D pour décembre, si vous triez votre fichier par la zone MOIS vous aurez quelques surprises car en EBCDIC les lettres sont < aux chiffres et D < N. Il faudra donc trouver un autre moyen, ce moyen est de remplacer ces codes par des lettres, attribué A à 0, B à 1,C à 2 etc... K à N et L à D. Pour cela nous utiliserons des cartes F dont voici le format. Colonne 1 à 5 :-des blancs 6 :-F 7 :-F forcé le remplacement |
8 :- le type du caractère à remplacer voir précédemment. 9 à 12 :-blancs 13 à 16 :-la position du caractère. 17 :-le caractère à remplacer 18 :-le caractère de remplacement 19 :-blanc ou X si suite (la suite est indiqué dans l'enregistrement qui suit) 20 à 39 :- blancs 40 à 72 :- commentaires |
Ex: reprenons notre exemple sur la zone MOIS situé en 1. 123456789012345678901234567890123456789012345678901234567890123456789012 FFC 00010A EXEMPLE DE REMPLACEMENT FFC 00011BX EXEMPLE DE REMPLACEMENT FFC 00012CX EXEMPLE DE REMPLACEMENT FFC 00013DX EXEMPLE DE REMPLACEMENT FFC 00014EX EXEMPLE DE REMPLACEMENT FFC 00015FX EXEMPLE DE REMPLACEMENT FFC 00016GX EXEMPLE DE REMPLACEMENT FFC 00017HX EXEMPLE DE REMPLACEMENT FFC 00018IX EXEMPLE DE REMPLACEMENT FFC 00019JX EXEMPLE DE REMPLACEMENT FFC 0001NKX EXEMPLE DE REMPLACEMENT FFC 0001DLX EXEMPLE DE REMPLACEMENT Le remplacement se fait caractère par caractère Attention si des caratères de remplacement sont utilisés il faudra les ajouter à la longueur totale de la zone de contrôle de la spécif H (pos 15 à 17). Elle est directement utiliser dans le tri. |
Ex . supposons notre fichier MOISLIB en 1 mois 1 car. alphanum. de 2 à 11 libellé du mois 10 car. alphanum. il est trié sur le libellé , nous avons donc --------------------- ! MOIS ! LIBELLE ! !-------------------! ! 7 ! AOUT ! ! 3 ! AVRIL ! ! D ! DECEMBRE ! ! 1 ! FEVRIER ! ! 0 ! JANVIER ! ! 6 ! JUILLET ! ! 5 ! JUIN ! ! 4 ! MAI ! ! 2 ! MARS ! ! N ! NOVEMBRE ! ! 9 ! OCTOBRE ! ! 8 ! SEPTEMBRE ! --------------------- |
Je veus le trier dans l'ordre des mois je ferais donc un remplacement, j'indiquerais dans la zone de contrôle de la spécif. H une longueur de 1. 123456789012345678901234567890123456789012345678901234567890123456789012 HFILE 001A TRI REMPL FFC 00010A EXEMPLE DE REMPLACEMENT FFC 00011BX EXEMPLE DE REMPLACEMENT FFC 00012CX EXEMPLE DE REMPLACEMENT FFC 00013DX EXEMPLE DE REMPLACEMENT FFC 00014EX EXEMPLE DE REMPLACEMENT FFC 00015FX EXEMPLE DE REMPLACEMENT FFC 00016GX EXEMPLE DE REMPLACEMENT FFC 00017HX EXEMPLE DE REMPLACEMENT FFC 00018IX EXEMPLE DE REMPLACEMENT FFC 00019JX EXEMPLE DE REMPLACEMENT FFC 0001NKX EXEMPLE DE REMPLACEMENT FFC 0001DLX EXEMPLE DE REMPLACEMENT FDC00020011 LIBEL |
j'aurais comme nouveau fichier. --------------------- ! MOIS ! LIBELLE ! !-------------------! ! A ! JANVIER ! ! B ! FEVRIER ! ! C ! MARS ! ! D ! AVRIL ! ! E ! MAI ! ! F ! JUIN ! ! G ! JUILLET ! ! H ! AOUT ! ! I ! SEPTEMBRE ! ! J ! OCTOBRE ! ! K ! NOVEMBRE ! ! L ! DECEMBRE ! --------------------- |