REMARQUE : Lorsque plusieurs zones sont contigues et de même type on peut les regrouper en 1 seule zone de façon à n'écrire qu'une spécification F pour ces zones. 1.3 TRI AVEC SELECTION. ----------------------- Il est possible de choisir les enregistrements à placer dans le fichier de sortie en effectuant des comparaisons avec des constantes ou avec d'autres zones. Reprenons notre 1er exemple sur les produits à trier par CODPROD, je ne veux dans mon fichier de sortie que les enregistrements ayant un PU > 1. J'obtiendrais après mon tri avec sélection: Dans le cas d'un tri d'enregistrements |
------------------------------------------------- ! num. enreg.! CODPROD ! DESI ! QTE ! PU ! !------------!----------------------------------! ! 3 ! B1 ! ECROU 15 ! 5 ! 2 ! ! 5 ! C10 ! VIS 18 ! 25 ! 2 ! ! 4 ! X23 ! ECROU 20 ! 5 ! 2 ! ------------------------------------------------- Dans le cas d'un tri d'adresses -------------- ! num. enreg.! !------------! ! 3 ! ! 5 ! ! 4 ! -------------- Ce sont les specifications I et O qui vont nous permettre d'effectuer cette sélection. |
1.3.1 SPECIFICATION I --------------------- Indique une sélection par inclusion les enregistrements qui répondront aux tests seront inclus dans le fichier de sortie. Colonne 1 à 5 :-des blancs 6 :-I 7 :-A (and) et, la sélection est effectuée si la condition est remplie pour cette ligne et pour celle qui précède. -O (or) ou, la sélection est effectuée si la condition est remplie pour cette ligne ou pour celle qui précède. 8 :- C D U P Type des caractères servant de test. |
C type caractère. D type numérique étendu non signé U type numérique étendu signé P type numérique packé 9 à 12 :- position de début de la zone servant de test. 13 à 16 :- position de fin de la zone servant de test. 17 à 18 :- EQ comparaison égal à :- NE comparaison différent de :- GE comparaison plus grand ou égal à :- GT comparaison plus grand que :- LE comparaison plus petit ou égal à |
:- LT comparaison plus petit que 19 :- C comparaison à une constante F comparaison à une zone si comparaison à une constante 20 à 39 : -'constante' si comparaison à une zone 20 à 23 : -position début zone de comparaison 24 à 27 : -position fin zone de comparaison 28 à 39 : -blancs pour toutes les comparaisons 40 à 72 :- commentaires |
1.3.1 SPECIFICATION O --------------------- Indique une sélection par omission les enregistrements qui répondront aux tests seront exclus dans le fichier de sortie. Le format de la carte est indentique à celle de la carte I excepté: colonne 6 :-O Exemple: 1 2 3 4 5 6 7 123456789012345678901234567890123456789012345678901234567890123456789012 I C00550056EQC18 EXEMPLE DE SPECIF I ET O IAP00850089GTC000300000 EXEMPLE DE SPECIF I ET O IOC00550056EQC75 EXEMPLE DE SPECIF I ET O IAP00860089GTF00900094 EXEMPLE DE SPECIF I ET O |
Si je veux comparer une zone numérique avec une constante négative par exemple -2400 comparer avec une zone de 8 positions. 1 2 3 4 5 6 7 123456789012345678901234567890123456789012345678901234567890123456789012 I C00010008EQC00002400- le même exemple mais la zone fait toujours 8 positions mais avec 2 décimales 1 2 3 4 5 6 7 123456789012345678901234567890123456789012345678901234567890123456789012 I C00010008EQC00240000- le même exemple mais la zone fait 9 dont 2 packées 123456789012345678901234567890123456789012345678901234567890123456789012 I P00010005EQC000240000- |