Page 1
Version du logiciel : GCOS 7 Version 8 à partir de TS 8560. Date : Février 1998 Bull Electronics Angers S.A. Bull HN Information Systems Inc. CEDOC Publication Order Entry Atelier de reprographie FAX: (508) 294-7411 331, Avenue Patton...
Page 2
425 et suivants du code pénal. Ce document est fourni à titre d'information seulement. Il n'engage pas la responsabilité de Bull S.A. en cas de dommages résultant de son application. Des corrections ou modifications au contenu de ce document peuvent intervenir sans préavis ;...
Préface OBJET DU MANUEL Ce manuel décrit les utilitaires SORT et MERGE sous GCOS 7. Il s'applique à tous les systèmes GCOS 7-V8 (état technique TS8560 et suivants). UTILISATEURS CONCERNES Ce manuel s'adresse à tous les utilisateurs de GCOS 7-V8 qui veulent trier ou fusionner des articles quelle que soit l'organisation du fichier.
Page 4
Tri et fusion - Guide de l'utilisateur Annexe A Listes de messages d'erreurs relatifs à SORT et à MERGE. Annexe B Exemple de compte rendu d'exécution relatif à SORT, produit dans le fichier SYSOUT. Annexe C Ordres de classement possibles avec SORT. Annexe D Syntaxe de la commande GCL permettant d'effectuer un tri (en mode interactif ou en mode traitement par lots).
Page 5
Préface Gestion des travaux IOF - Manuel de référence de l'utilisateur - Vol. 1..........47 F2 38UJ IOF Terminal User's Reference Manual Part 1 ..........47 A2 38UJ IOF - Manuel de référence de l'utilisateur - Vol. 2..........47 F2 39UJ IOF Terminal User's Reference Manual Part 2 ..........
Tri et fusion - Guide de l'utilisateur CONVENTIONS D'ECRITURE Les conventions d'écriture utilisées dans ce manuel pour la syntaxe des ordres JCL sont les suivantes : ELEMENT Les majuscules indiquent un nom ou un mot-clé, à introduire tel quel. A noter que, dans la pratique, cette convention peut être abandonnée au profit des minuscules.
Page 7
Préface Les crochets indiquent que l'élément qu'ils encadrent est facultatif. Un élément non encadré par des crochets représente donc une valeur obligatoire. Une liste d'éléments entre parenthèses indiquent que l'un ou plusieurs d'entre eux peuvent être spécifiés. Si plusieurs éléments constituant une liste sont spécifiés, ils doivent être séparés par une virgule ou un espace.
Tri et fusion - Guide de l'utilisateur Exemple 3 : [ REPLACE = { val-bool | 0 } ] Spécifie un paramètre booléen dont la valeur implicite est zéro et qui peut se définir de l'une des manières suivantes : •...
Table des matières Présentation ......................DEFINITIONS ......................FONCTIONS DE TRI/FUSION..................UTILISATION DE SORT ET MERGE COMME MODULE AUTONOME OU COMME SOUS-PROGAMME ....................1.3.1 SORT .......................... 1.3.2 MERGE ........................ORDRES JCL ......................1.4.1 Activation de SORT et MERGE ................1.4.2 Compatibilité des commandes JCL ................ 1.4.3 Syntaxe JCL étendue....................
Page 10
Tri et fusion - Guide de l'utilisateur NOUVELLES FONCTIONS ..................1.9.1 Tri mémoire grande capacité ................... 1.9.2 Tri en parallèle ......................1.9.3 Fonction BPB (Read Ahead/Write Behind) ............. 1.9.4 Lecture/écriture rapide des fichiers relatifs ............1.9.5 VOLSET ........................1.9.6 OUTFILE identique à INFILE ..................1.10 TRI/FUSION COBOL....................
Page 11
Table des matières 3.3.2.1 Paramètres........................3-18 3.3.2.2 Exemples ........................3-21 EXEMPLES D'ORDRES SORT ET MERGE.............. 3-22 Ordres JCL GSORT et GMERGE ..............ORDRE JCL GSORT....................4.1.1 Syntaxe........................4.1.2 Description des paramètres..................4.1.3 Valeurs implicites...................... 4-10 ORDRE JCL GMERGE ....................4-11 4.2.1 Syntaxe........................
Page 12
Tri et fusion - Guide de l'utilisateur 5.3.4 Exemple de commandes INCLUDE/OMIT ............... 5-19 5.3.5 Commande SUM......................5-19 5.3.6 Commande ARRANGE....................5-22 5.3.7 Exemples de paragraphe RECORD ................. 5-24 PARAGRAPHE END....................5-25 Commandes DSL pour la fusion ..............PARAGRAPHE FUNCTION ..................6.1.1 Commande DESCEND ....................
Page 13
Table des matières Annexes Messages d'erreurs relatifs au tri et à la fusion ........MESSAGES D'ERREUR RELATIFS A l'ORDRE JCL SORT ........Liste des Messages d'erreur relatifs à l'ordre JCL MERGE ........MESSAGES D'ERREUR RELATIFS A L'EXECUTION DE SORT ET GSORT ET DE MERGE ET GMERGE..................
Page 14
Tri et fusion - Guide de l'utilisateur Commande MERGE_FILE (GCL) ..............EXECUTION DE MERGE_FILE ................. COMMANDE MERGE_FILE (MRGF) ................ Chargement d'un fichier de sortie UFAS indexé par SORT ou MERGE ........................Utilisation de DATAFORM = {SARF/SSF} et de [TRUNCSSF/NTRNCSSF] par SORTet MERGE ........
Page 15
5-23 Types de données possibles dans le paragraphe RECORD ........Capacité disque......................Jeu de caractères EBCDIC (DPS 7000) (1/4)............. Jeu de caractères EBCDIC (DPS 7000) (2/4)............. Jeu de caractères EBCDIC (DPS 7000) (3/4)............. Jeu de caractères EBCDIC (DPS 7000) (4/4).............
Page 16
Tri et fusion - Guide de l'utilisateur 47 F2 08UF Rev06...
1. Présentation Ce manuel décrit les utilitaires de tri et de fusion (SORT et MERGE) disponibles sous GCOS 7. DEFINITIONS SORT L'utilitaire SORT (tri) lit les fichiers d'entrée et produit les articles en sortie classés dans l'ordre croissant ou décroissant indiqué par une "clé" contenue dans chaque article. MERGE L'utilitaire MERGE (fusion) lit les fichiers d'entrée déjà...
Tri et fusion - Guide de l'utilisateur Utilisation en interactif Il est également possible d'effectuer un tri ou une fusion de façon interactive au moyen des commandes GCL SORT_FILE et MERGE_FILE décrites respectivement dans l'annexe D et l'annexe E. A noter que, dans ce cas, un fichier traitement par lots est quand même nécessaire pour les commandes DSL (paramètres COMFILE ou DSLFILE) entrées au terminal.
Présentation UTILISATION DE SORT ET MERGE COMME MODULE AUTONOME OU COMME SOUS-PROGAMME 1.3.1 SORT SORT peut être utilisé de deux façons : • Comme module chargeable autonome. Il lit le fichier d'entrée (INFILE) et transfère les articles de sortie triés dans le fichier de sortie (OUTFILE).
Tri et fusion - Guide de l'utilisateur ORDRES JCL 1.4.1 Activation de SORT et MERGE Les processus de tri et de fusion sont considérés comme des phases d'un travail et sont activés au moyen des ordres JCL étendus. Les ordres qui existaient déjà dans les précédentes versions sont SORT et MERGE.
Présentation DSL (DATA SERVICES LANGUAGE) Un fichier de commandes à un niveau d'article, écrit en DSL, doit être fourni en tant que rubrique d'entrée ou en tant qu'unité existante d'une bibliothèque origine. Les commandes de ce fichier sont décrites au chapitre 5 (utilitaire Sort) et au chapitre 6 (utilitaire Merge). Toutes ces commandes, excepté...
Tri et fusion - Guide de l'utilisateur NIVEAUX DE SORT/MERGE Les produits de tri et de fusion (SORT/MERGE) sont disponibles à deux niveaux : • Produit SORT/MERGE de base. • Produit SORT/MERGE étendu. Ces deux produits sont décrits ci-dessous. 1.8.1 Présentation de SORT/MERGE de base Le produit de base SORT est livré...
Ces possibilités du nouveau produit SORT/MERGE offrent un grand intérêt, même sur un mono-processeur DPS 7000. Lorsque la fonction BPB (read ahead/write behind) est utilisée pour lire les fichiers d'entrée et de sortie, le tri peut être "lié aux E/S" par le fichier de travail. Dans le cas, par exemple, d'un fichier volumineux, le tri peut être exécuté...
Tri et fusion - Guide de l'utilisateur Le nouvel ordre JCL GSORT permet d'affecter plusieurs fichiers de travail (affectation dynamique ou statique), avec la possibilité, pour un tri en parallèle : • de définir une liste de n supports pour l'affectation dynamique de n fichiers temporaires (WKFILE, WKALC), •...
Présentation La valeur de BPB peut être comprise entre 1 et 32, la capacité de mémoire nécessaire pour les tampons supplémentaires (demandés par BPB) doit être prise en compte pour calculer la mémoire affectée au tri (option SIZE). Se reporter à l'annexe I pour les conditions d'appel de la méthode d'accès UFAS par SORT/MERGE.
Tri et fusion - Guide de l'utilisateur 1.10 TRI/FUSION COBOL Les programmes COBOL prennent en charge des opérations de tri/fusion par le biais des instructions COBOL SORT et MERGE. Ces instructions sont décrites dans le manuel de référence et le guide utilisateur COBOL 85. Le guide utilisateur fournit les informations suivantes : •...
2. Fichiers et ressources ORDRES JCL 2.1.1 SORT (tri) Deux ordres JCL sont disponibles pour effectuer le tri : SORT and GSORT. • SORT est l'ordre JCL courant. • GSORT est un nouvel ordre JCL. SORT et GSORT servent tous deux à "exécuter" le nouveau produit Sort, mais il est conseillé...
Tri et fusion - Guide de l'utilisateur FICHIERS ET RESSOURCES NECESSAIRES A L'EXECUTION DU TRI (SORT) Les fichiers d'entrée et de sortie peuvent être soit des fichiers UFAS, soit des fichiers BFAS. Les fichiers d'entrée et de sortie peuvent être sur disque, bande ou cartouche, indépendamment l'un de l'autre.
Fichiers et ressources FICHIERS ET RESSOURCES NECESSAIRES A L'EXECUTION DE LA FUSION (MERGE) Le fichier spécifié comme INFILE1 constitue le fichier primaire. Les autres fichiers d'entrée INFILE2 à INFILE8, doivent avoir la même longueur d'article (RECSIZE) et le même format (RECFORM) que le fichier primaire. Les fichiers d'entrée et de sortie peuvent être de type UFAS ou BFAS, indépendamment l'un de l'autre.
Page 30
Tri et fusion - Guide de l'utilisateur 47 F2 08UF Rev06...
3. Ordres JCL SORT et MERGE Ce chapitre décrit les ordres JCL SORT (tri) et MERGE (fusion). Les paramètres obligatoires concernent la spécification des fichiers d'entrée, de sortie et de commandes. Tous les autres paramètres sont facultatifs. Des valeurs implicites sont prévues en cas d'omission de certains paramètres.
Page 32
Tri et fusion - Guide de l'utilisateur Ces paramètres (excepté SITE) sont disponibles dans le groupes de paramètres d'affectation/définition des ordres GSORT/GMERGE. L'option POOL est compatible avec SORT mais ne l'est pas avec MERGE. NPOOL sert à empêcher la génération implicite de POOL avec des fichiers d'entrée concaténés.
Tri et fusion - Guide de l'utilisateur 3.1.2 Paramètres INFILE Spécifie le fichier d'entrée. SORT utilise INFILE avec INFILEn pour générer les ordres JCL ASSIGN et DEFINE nécessaires à l'exécution de SORT. INFILEn Les mots-clés INFILE1 à INFILE8 peuvent servir à spécifier la concaténation de fichiers avec INFILE.
Page 35
Ordres JCL Sort et Merge DATAFORM=SSF peut être utilisé pour affecter SYS.OUT, INFILE ou OUTFILE. Pour OUTFILE, il implique la création d'en-têtes SSF au début de l'article. Si un fichier d'entrée est déclaré SSF, l'option implicite de traitement est TRUNCSSF pour le tri.
Tri et fusion - Guide de l'utilisateur IMPORTANT Lorsque l'affectation statique du fichier de travail SORT est activée avant l'exécution de SORT, seules les valeurs FILEFORM=UFAS et FILEORG=SEQ sont acceptées par le programme de tri pour les volumes FBO. Pour les volumes VBO, il est recommandé d'utiliser les valeurs FILEFORM=BFAS ou UFAS, et FILEORG=SEQ : l'affectation d'autres valeurs pour FILEFORM et FILEORG génère un message d'avertissement.
Page 37
Ordres JCL Sort et Merge Tri mono-process Ne pas utiliser de fichier de travail ou n'en utiliser qu'un, puis, le cas échéant, le définir via WKDISK[S]. Tri multi-process (parallèle) Utiliser le mot-clé WKDISK[S] pour entrer une liste de MEDIA (sous GCOS 7, cette liste est limitée à 10 supports). Un fichier de travail TEMPRY (temporaire) est affecté...
Page 38
Tri et fusion - Guide de l'utilisateur REPORT Spécifie le type d'état demandé à SORT (voir annexe B). Sauf lorsque PRTFILE est spécifié, l'état est écrit dans SYSOUT. AUDIT (valeur implicite) demande l'impression d'informations sur les erreurs et diagnostics, et d'un résumé statistique relatif au traitement des articles.
Ordres JCL Sort et Merge PRINTID indique que le numéro de l'article incorrect par rapport au début du tri doit figurer dans l'état (valeur implicite). PRINT a la même signification que PRINTID, à la différence que l'article incorrect est entièrement imprimé en hexadécimal et en alphanumérique.
Tri et fusion - Guide de l'utilisateur 3.2.2 Paramètres INFILEn Indique les fichiers d'entrée. MERGE utilise ce paramètre pour générer les ordres JCL ASSIGN et DEFINE avant l'exécution de MERGE. Le paramètre NBEFN (décrit dans la manuel de référence JCL) pour le groupe de paramètres de description de fichier séquentiel n'est pas applicable à...
Ordres JCL Sort et Merge DEFINITION ET SPECIFICATION DES FICHIERS 3.3.1 Paramètres de définition Les paragraphes suivants ne s'appliquent pas aux ordres GSORT et GMERGE. Les paramètres de définition de tri/fusion (smdp) qui peuvent être inclus dans les paramètres INFILE et OUTFILE de l'ordre JCL SORT et dans les paramètres INFILEn et OUTFILE de l'ordre JCL MERGE sont illustrés à...
Page 45
Ordres JCL Sort et Merge FILEFORM Spécifie le système d'accès : UFAS ou BFAS. Ces systèmes acceptent les organisations de fichier suivantes : UFAS : séquentielle, indexée, relative, BFAS : séquentielle (disque ou bande). IMPORTANT La valeur implicite de FILEFORM pour le fichier de sortie sur disque est UFAS (et non plus BFAS), ce qui implique des modifications de la taille affectée au fichier.
Page 46
Tri et fusion - Guide de l'utilisateur RECSIZE Spécifie la longueur d'un article logique d'un fichier UFAS ou BFAS. Pour les articles de longueur fixe, la longueur en octets est déc5. Pour ceux de longueur variable, déc5 fournit la longueur maximale, à l'exclusion du mot descripteur d'article (RDW).
Page 47
Ordres JCL Sort et Merge WRCHECK Applicable uniquement aux fichiers de sortie disque BFAS. S'il est spécifié, chaque bloc enregistré dans le fichier de sortie est relu pour vérification. S'il est omis, cette relecture n'est pas effectuée. DUMMYREC S'utilise à la création d'un fichier BFAS de sortie séquentiel indexé.
Tri et fusion - Guide de l'utilisateur DATAFORM Spécifie si les articles de fichier d'entrée ou de sortie SORT ou MERGE doivent être interprétés (ou créés) en format SSF ou SARF (valeur implicite). TRUNCSSF Spécifie que ni les en-têtes SSF des articles de données d'entrée ni les articles de gestion SSF du fichier d'entrée SSF (ou de type identique) ne doivent être pris en compte (valeur implicite pour SORT pour les fichiers cloisonnés et les...
Ordres JCL Sort et Merge Les paramètres requis pour les fichiers disque sont récapitulés au tableau 3-1 et pour les fichiers bande au tableau 3-2. Tableau 3-1. Paramètres requis pour les fichiers disque TYP E D E FIC H IER FACULATIF (F) O R G AN ISATIO N PAR AM ETR ES...
Tri et fusion - Guide de l'utilisateur Tableau 3-2. Paramètres requis pour les fichiers bande TYP E D E FIC H IER FAC U LTATIF (F) PAR AM ETR ES O R G AN IS ATIO N D E SU PPLE M EN TAIR ES FICH IER R EQ U IS O B LIG ATO IR E (O )
Ordres JCL Sort et Merge 3.3.2.2 Exemples Fichiers d'entrée Un fichier d'entrée cloisonné ou UFAS peut être spécifié dans l'ordre SORT comme suit : • Sur disque résidant INFILE = (FILE1) (UFAS) INFILE = (LIB1, SUBFILE=MB1) (cloisonné) • Sur disque utilisateur INFILE = (FILE2, DEVCLASS = MS/FSA, MEDIA = DISK10) •...
Tri et fusion - Guide de l'utilisateur EXEMPLES D'ORDRES SORT ET MERGE Soit un fichier d'entrée nommé PAYLIST à trier, situé dans le volume bande TV24 et avec une longueur d'article de 200 octets et de bloc de 4 000 octets. Le fichier de sortie nommé...
Page 53
Ordres JCL Sort et Merge Commandes DSL $ENDINPUT; $ENDJOB; Les commandes DSL de fusion sont introduites sous forme de rubrique de description d'entrées. L'opération en deux parties s'effectue à l'aide des fichiers intermédiaires SPAYLIXA et SPAYLIXB situés dans les volumes bande TVVV et TVVB. 47 F2 08UF Rev06 3-23...
Page 54
Tri et fusion - Guide de l'utilisateur 3-24 47 F2 08UF Rev06...
4. Ordres JCL GSORT et GMERGE Ce chapitre décrit les ordres GSORT (tri) et GMERGE (fusion). Avec GSORT et GMERGE, doivent être spécifiés les paramètres suivants : fichier de commande, fichier d'entrée, fichier de sortie ; tous leurs autres paramètres sont facultatifs. Des valeurs implicites sont prévues en cas d'omission de certains paramètres.
Tri et fusion - Guide de l'utilisateur ORDRE JCL GSORT 4.1.1 Syntaxe L'ordre JCL GSORT peut être utilisé en mode interactif ou en mode traitement par lots. La syntaxe de l'ordre JCL GSORT est donnée en figure 4-1. GSORT { INFILE = (asg) | INFILES =((asg1), (asg2), ... (asgk))} [,INDEF=(def)] ,OUTFILE = (asg) [,OUTDEF = (def)] [,OUTALC [=(alc)] [,SYSOUT = (sysout)]] FILE=(asg) [,DEF=(def)] ,COMFILE = (asg) [,COMDEF = (def)]...
Ordres JCL GSORT et GMERGE 4.1.2 Description des paramètres INFILES Lorsque l'opération de tri nécessite plusieurs fichiers d'entrée (GSORT peut utiliser 9 fichiers maximum, comme l'ordre SORT), utiliser la syntaxe : INFILES = ( (asg1), (asg2),..(asgk)), ... L'option INDEF s'applique alors à chacun des fichiers d'entrée concatenés.
Page 58
Tri et fusion - Guide de l'utilisateur Exemple : IF=MY.FILE, OUTALC, OF=(OUT.FILE, MD=MYVOL, DVC = MS/FSA, CATNOW) Pour une description détaillée du processus d'affectation, se reporter au manuel Utilitaires de traitement des données . PRTDEF, LOGDEF Mots-clés introduisant respectivement les paramètres de définition de PRTFILE et de LOGFILE.
Page 59
Ordres JCL GSORT et GMERGE Si la liste des supports (MEDIA) contient un nombre de supports inférieur à n (NBSORT = n), la valeur n est ramenée au nombre exact de supports figurant dans la liste. La taille (SIZE) de chaque fichier TEMPRY est celle spécifiée WKALC = (...
Page 60
Tri et fusion - Guide de l'utilisateur MODALC Mot-clé impliquant la présence des fichiers WKASGi affectés. Spécifie un tri avec plusieurs fichiers de travail (tri en parallèle). MODALC spécifie les paramètres communs des fichiers de travail WKASGi. Lorsqu'il est utilisé, le mot-clé MODALC doit figurer avant WKASGi et WKALCi.
Page 61
Ordres JCL GSORT et GMERGE WKASGi, WKALCi Mots-clés introduisant les n fichiers de travail d'un tri parallèle in the most general form. Les fichiers de travail sont classés de 1 à n (NBSORT = n étant supérieur à 1). Ils sont définis par les ensembles de paramètres standard (asg) et (alc).
Page 62
Tri et fusion - Guide de l'utilisateur La façon la plus simple de résoudre tous les problèmes d'association de classes d'appareils et d'organisation des volumes est d'utiliser les blocs comme unité (UNIT = BLOCK). Exemple de spécification de 2 fichiers de travail de 300 blocs chacun, avec une taille d'incrément INCRSIZE=1, sur un support MS/FSA: MODALC=(SIZE=300,UNIT=BLOCK,INCRSIZE=1),...
Page 63
Ordres JCL GSORT et GMERGE ou : GSORT IF= ..., OF= ..., NBSORT=2, SIZE=4096, START=12, REPORT=ALL, INVREC=(ERROPT=PRINT), REPEAT, MODALC=(SIZE=50,INCRSIZE=1), WKASG1=(W1, FILESTAT=TEMPRY, DVC=MS/FSA, MEDIA=V1), WKASG2=(W2, FILESTAT=TEMPRY, DVC=MS/FSA, MEDIA=V2); A noter que dans ces deux exemples, REPEAT permet une relance automatique de STEP, cependant l'opération de tri n'utilise pas de points de reprise.
Tri et fusion - Guide de l'utilisateur Le nombre de CPU est indifférent, sauf dans le cas de tris liés au CPU, le degré de simultanéité entre fichiers de travail E/S implantés sur différents support offert par un CPU étant très appréciable.
Ordres JCL GSORT et GMERGE ORDRE JCL GMERGE 4.2.1 Syntaxe L'ordre GMERGE est utilisé en mode interactif ou en mode traitement par lots (JCL). La syntaxe de l'ordre JCL GMERGE est donnée dans la figure 4-2. GMERGE INFILE1 = (asg1) [ ,INDEF1 = (def1) ] ,INFILE2 = (asg2) [ ,INDEF2 = (def2) ] ,INFILE3 = (asg3) [ ,INDEF3 = (def3) ] ,INFILEi = (asgi) [,INDEFi = (defi) ]...
Tri et fusion - Guide de l'utilisateur 4.2.2 Description des paramètres INFILEi Les fichiers INFILE1 à INFILEn (n <= 8 comme pour l'ordre GMERGE) sont les fichiers d'entrée à fusionner. Les valeurs implicites des paramètres de définition sont les mêmes que celles décrites pour l'ordre SORT.
5. Commandes DSL de tri Ce chapitre présente les commandes DSL (Data Services Language) de tri. Elles s'appliquent aux tris exécutés par les ordres JCL SORT (décrites au chapitre 3) et GSORT (décrites au chapitre 4) et par la commande GCL SORT_FILE (voir annexe D). Les commandes DSL (Data Services Language) de tri contenues dans un fichier de commandes décrivent les fonctions à...
Tri et fusion - Guide de l'utilisateur PARAGRAPHE FUNCTION Le format général du paragraphe FUNCTION est le suivant : FUNCTION: [DESCEND] [COLLATE={EBCDIC|G100|H200|ASCII|'hexa512'}] [OUTPUT{DATA|ADDATA|KEYADDR|ADDROUT}] [DUPREC{NONE|FIFO}] [DELETE] [INTINFO] [SORTSIZE=déc11] [MIN=déc5] [AVERAGE=déc5] [WRDISK{WRDATA|WRCKD}] [DEBUG] [NBSORT=déc2] [LOWYEAR=déc2] Les commandes du paragraphe FUNCTION sont décrites dans les paragraphes qui suivent.
Commandes DSL de tri 5.2.2 Commande COLLATE La commande COLLATE permet à l'utilisateur d'indiquer de manière explicite l'ordre de classement que SORT doit utiliser. Il en existe quatre : EBCDIC (Extended Binary Coded Decimal Interchange Code) Jeu de caractères standard de GCOS 7. G100 Jeu de caractères de la série 100.
Tri et fusion - Guide de l'utilisateur Le jeu de caractères H200 contient moins de symboles graphiques que le jeu EBCDIC (par exemple, il ne contient pas de lettres minuscules). Par conséquent, certains caractères non compris dans le jeu H200 sont traduits, pour les besoins du tri, en caractères H200 spécifiques.
Page 71
Commandes DSL de tri KEYADDR L'article de sortie commence par une zone indiquant l'adresse disque de l'article d'origine. Cette zone sera suivie du contenu des zones-clés majeure et mineures de l'article d'entrée correspondant. Le format de l'adresse disque peut être TTRDD, TT représentant le numéro relatif de piste, R le numéro de bloc par rapport au début de la piste et DD le déplacement de l'article à...
Tri et fusion - Guide de l'utilisateur Commande DUPREC 5.2.4 La commande DUPREC indique l'opération à effectuer lorsque plusieurs articles ont des valeurs identiques pour chaque zone-clé spécifiée. La signification des deux paramètres est la suivante : NONE Tous les articles ayant des zones-clés identiques sont sortis dans un ordre aléatoire.
Page 73
Commandes DSL de tri SORTFRM format de l'article intermédiaire, F=longueur fixe, V=longueur variable, C=longueur variable divisé en plusieurs cellules. Lettres suivies de 0 (articles groupés de longueur fixe) ou de 1 (articles groupés de longueur variable). Se reporter au chapitre 7 pour la description du découpage en cellules de la zone de manoeuvre.
Tri et fusion - Guide de l'utilisateur Commande SORTSIZE (Optimisation) 5.2.7 Le nombre estimé des articles d'entrée peut être spécifié dans la commande SORTSIZE. SORT utilise ce nombre pour : • optimiser le processus de tri, • vérifier si la taille du fichier de travail est suffisante, s'il est affecté par l'utilisateur, •...
Commandes DSL de tri Commande WRDISK 5.2.10 Options WRDATA Peut être spécifié de façon explicite si le fichier de travail est préformaté avec des blocs physiques de 1 024 octets. Dans ce cas, le format physique n'est pas modifié par le processus de tri.
Tri et fusion - Guide de l'utilisateur Commande LOWYEAR 5.2.13 Le mot-clé "LOWYEAR" (la première année du siècle, century LOWest YEAR) désigne une année figurant dans la plage de 0 à 99 et qui doit être la première année d'une période de cent ans .
Commandes DSL de tri PARAGRAPHE RECORD Les commandes figurant dans le paragraphe RECORD spécifient les zones des articles d'entrée que SORT doit analyser pendant l'exécution. RECORD: KEY[S]= élément-clé [élément-clé]... [{INCLUDE= élément-condition [AND élément-condition]... [ INCLUDE= élément-condition [AND élément-condition]...]... |OMIT= élément-condition [AND élément-condition]... [OMIT= élément-condition [AND élément-condition]...]...}] [SUM= élément-cumul [AND élément-cumul]...] [ARRANGE= élément-restructuration [AND élément-restructuration]...]...
Tri et fusion - Guide de l'utilisateur Pour les types PDECY, UDECY et DISPY, les zones d'articles ont une longueur de 2 octets, avec deux chiffres qui représentent les années sur quatre chiffres. Pour le type COMPY, les zones d'articles ont une longueur de 1 octet avec 2 chiffres décimaux condensés.
Commandes DSL de tri Tableau 5-1. Types de données Mot clé Signification UBIN Données binaires non signées (2 ou 4 octets) SBIN Données binaires, en virgule fixe, signées(2 ou 4 octets) CHAR Chaîne de caractères (256 caractères maximum ) UDEC Données décimales éclatées (maximum 31 chiffres décimaux plus signe ).
Tri et fusion - Guide de l'utilisateur R E C O R D : K E Y S = 4 1 5 1 Fichier d'en trée Fichier de sortie Zones d'artic le s V ale urs de s Zones d 'artic le s Z ones c lés Art1 A rt6...
Commandes DSL de tri Eléments de condition 5.3.3 A moins que INVREC = CONTINUE soit spécifié comme paramètre de l'ordre JCL SORT, tous les articles d'entrée doivent avoir une longueur suffisante pour contenir toutes les zones spécifiées par les commandes INCLUDE et/ou OMIT. Un élément de condition se compose d'une expression spécifiant un test à...
Page 82
Tri et fusion - Guide de l'utilisateur Un opérande sous forme de littéral est une chaîne de caractères entre apostrophes comme indiqué dans le modèle de format ci-dessus. Si l'apostrophe (') est incluse en tant que caractère dans un littéral, elle doit être doublée. Par exemple, le littéral 'aujourd'hui' correspond à...
Page 83
Commandes DSL de tri La figure 5-3 montre d'autres exemples d'éléments de condition avec des opérateurs de comparaison. A noter que les valeurs des zones ne correspondent pas nécessairement à leur représentation interne réelle. A rticle d'entrée 1 2 3 4 5 A B C D E F G H 1 2 3 4 5 6 7 8...
Page 84
Tri et fusion - Guide de l'utilisateur La figure 5-4 montre des exemples d'éléments de condition avec des opérateurs de condition numérique. A noter que les valeurs des zones ne correspondent pas à leur représentation interne réelle. La représentation algébrique a été employée pour plus de clarté.
Commandes DSL de tri 5.3.4 Exemple de commandes INCLUDE/OMIT La figure 5-5 montre le contenu des 5 premiers articles d'un fichier et le résultat de l'utilisation des commandes INCLUDE et OMIT pour ce fichier. Inclure tous les a rtic les do nt le prem ier o ctet contient G .
Page 86
Tri et fusion - Guide de l'utilisateur La commande SUM ne s'applique qu'à un groupe d'articles ayant des valeurs de clé identiques. Elle permet de totaliser les valeurs des zones spécifiées pour tous les articles ayant la même clé et de stocker ce total dans l'article qui sera retenu pour la sortie. Les dépassements de capacité...
Page 87
Commandes DSL de tri Fichier d'entrée Zones d'articles Valeur des zones clés A rt1 A rt2 A rt3 A rt4 A rt5 A rt6 A rt7 R E C O R D : K E Y S = 3,1 4,1 SUM = 1,1 UDEC Fichier trié...
Tri et fusion - Guide de l'utilisateur Commande ARRANGE 5.3.6 La commande ARRANGE permet de définir la structure de l'article de sortie si celle-ci doit être différente de celle de l'article d'entrée. Cette structure est définie en listant toutes les zones de l'article dans l'ordre où...
Commandes DSL de tri Dans la figure 5-7, la zone D a été omise. La zone B a gardé sa position d'origine, tandis que les zones A et C ont été placées différemment. Les articles sont classés dans l'ordre décroissant des valeurs de la zone A, à savoir l'inverse de l'ordre implicite. Le tableau 5-3 donne tous les types de données que l'on peut utiliser dans le paragraphe RECORD d'une commande de lancement de tri.
Tri et fusion - Guide de l'utilisateur 5.3.7 Exemples de paragraphe RECORD Exemple 1 : RECORD : INCLUDE = (40,4 EQ CHAR 'MAIN') AND (30,2 LT 32,2 SBIN) KEY = (10,5 CHAR) (15,3 PDEC RV) SUM = (25,5 PDEC) (50,4 SBIN) INCLUDE spécifie les conditions que les articles doivent remplir pour être inclus : •...
Commandes DSL de tri PARAGRAPHE END Tout fichier de commandes DSL doit se terminer par le paragraphe END. Ce paragraphe est constitué uniquement du mot-clé. Aucune commande ne lui est associée. 47 F2 08UF Rev06 5-25...
Page 92
Tri et fusion - Guide de l'utilisateur 5-26 47 F2 08UF Rev06...
6. Commandes DSL pour la fusion Ce chapitre décrit les commandes DSL (Data Services Language) pour la fusion. Ces commandes DSL sont utilisées pour les fusions demandées par les ordres JCL MERGE (décrit dans le chapitre 3) et GMERGE (décrit dans le chapitre 4) et par la commande GCL MERGE_FILE (décrite en annexe E).
Tri et fusion - Guide de l'utilisateur Commande DESCEND 6.1.1 Lorsqu'elle est spécifiée, la commande DESCEND stipule un ordre de tri décroissant pour les fichiers d'entrée ainsi que pour le fichier de sortie. 6.1.2 Commande DELETE Lorsqu'elle est spécifiée, la commande DELETE indique que, s'il existe plusieurs occurrences d'articles ayant la même valeur de clé...
Commandes DSL pour la fusion PARAGRAPHE RECORD Le paragraphe RECORD utilisé avec les ordres MERGE et GMERGE est identique à celui utilisé avec les ordres SORT et GSORT. Les commandes pour la fusion sont interprétées de la même manière que pour le tri, avec néanmoins les différences suivantes : KEY[S] sert à...
Page 96
Tri et fusion - Guide de l'utilisateur Un exemple de paragraphe RECORD utilisé pour la fusion de deux fichiers est illustré à la Figure 6-1. RECORDS : KEYS = (1, 1) (2, 1) INFILE2 Fichier de sortie IN FILE 1 (Fichier prim aire) Z o n e s Z o n e s...
Commandes DSL pour la fusion Le tableau 6-1 indique tous les types de données utilisables dans le paragraphe RECORD d'une commande fusionnant plusieurs fichiers. Le M figurant dans certaines cases indique que ce type est admis. Tableau 6-1. Types de données possibles dans le paragraphe RECORD UBIN SBIN CHAR...
Tri et fusion - Guide de l'utilisateur PARAGRAPHE END Tout fichier de commandes DSL doit se terminer par le paragraphe END. Ce paragraphe est constitué uniquement du mot-clé : END : Aucune commande ne lui est associée. 47 F2 08UF Rev06...
7. Déroulement du tri TRI D'ARTICLES DE LONGUEUR VARIABLE Les facteurs suivants affectent l'efficacité du tri pour des articles de longueur variable : • Longueur maximum d'article (spécifiée dans le paramètre RECSIZE ou dans le label du fichier) ; • Longueur minimum d'article (peut être spécifiée dans la commande MIN) ; •...
Page 100
Tri et fusion - Guide de l'utilisateur L'utilisation de la commande AVERAGE est vivement conseillée. A défaut, le fichier de travail peut être, dans certains cas, beaucoup plus volumineux que le fichier à trier. La longueur de la cellule est calculée comme une fonction (AVERAGE, MIN, RECSIZE) qui réduit l'espace perdu sur le fichier de travail.
Déroulement du tri LONGUEUR DE L'ARTICLE DE TRI Qu'il s'étende ou non sur plusieurs cellules, l'article peut être modifié de façon significative par les options : OUTPUT, ARRANGE, etc... Supposons que la longueur de l'article d'entrée est égale à i octets et celle de l'article après tri à...
Tri et fusion - Guide de l'utilisateur LONGUEUR MAXIMALE DE L'ARTICLE La longueur d'un article écrit dans un fichier de travail est limitée à la plus petite des valeurs suivantes : 2048*NS + 1022 (NS = nombre de secteurs de 1 024 octets par piste) 31*1024 - 10 En fait, on ne trouve ces valeurs maximales que dans des circonstances particulières qui...
Déroulement du tri TAILLE DU FICHIER DE TRAVAIL SUR DISQUE Il est impossible d'évaluer avec précision la taille nécessaire pour le fichier de travail sur disque. Pour ce faire, l'utilisateur devrait effectuer lui-même tous les calculs qu'exécute le programme de tri pour utiliser l'espace disque affecté. Ces calculs tiennent compte d'un grand nombre de paramètres.
Page 104
Tri et fusion - Guide de l'utilisateur Soit le pourcentage d'espace affecté statiquement qui aurait été nécessaire pour que le tri arrive à terme : Par exemple : MANDATORY % OF ALLOCATED WKDISK: 121 Estimation de la taille du fichier de travail Elle peut être estimée à...
Page 105
Déroulement du tri Pour un format variable, s est la somme des tailles des cellules occupées par un article (en moyenne). Chaque cellule contient : • Les clés (taille C). • 7 octets pour : le numéro d'article (4), le numéro de cellule (1), la taille d'article (2).
Page 106
2 x 6 39 to ta le (M o ) (1) Unité à axe double L'unité physique d'enregistrement des données sur disques FBO/FSA correspond au bloc d'une taille fixe de 512 octets, pris en charge par le DPS 7000/An. 47 F2 08UF Rev06...
Déroulement du tri TAILLE MEMOIRE NECESSAIRE A UN "TRI MEMOIRE" Lorsque le tri d'un fichier s'exécute "en mémoire" (donc sans fichier de travail), il faut augmenter la taille de l'article (RECSIZE) ou la taille de la cellule (CELLSIZE) de 10 octets (voir ci-dessous).
Tri et fusion - Guide de l'utilisateur REMARQUES SUR LA PERFORMANCE Assurer suffisamment de mémoire pour le tri (option SIZE). En l'absence de valeur BPB, le tableau ci-dessous indique la taille de mémoire conseillée en fonction de la taille du fichier à trier : Taille du fichier à...
Déroulement du tri L'utilisation des fonctions de points de reprise entraîne une légère dégradation des performances. Utiliser la commande SORTSIZE. Lorsque la valeur SORTSIZE est définie avec précision, le tri est affiné et mieux adapté. En cas de doute, il est préférable d'indiquer une valeur trop élevée plutôt que de ne pas la définir.
Tri et fusion - Guide de l'utilisateur ACCES CONCURRENT (GAC) Les ordres SORT et MERGE peuvent spécifier des options d'accès concurrent (GAC) pour leurs fichiers d'entrée et de sortie. En fait l'activité considérée ne peut utiliser des fichiers sous GAC (ordre ASSIGN avec SHARE=MONITOR) que de deux façons : •...
A. Messages d'erreurs relatifs au tri et à la fusion Cette annexe a pour objet de décrire les messages d'erreur figurant dans l'historique du travail (JOR) et dans l'état sorti par l'utilitaire de tri/fusion. Celui-ci est généré dans un sous-fichier SYSOUT (voir annexe B). Les messages de diagnostic pouvant apparaître dans l'historique du travail rendent compte d'erreurs de syntaxe ou d'incohérences détectées dans les ordres JCL : SORT, GSORT, MERGE et GMERGE.
Tri et fusion - Guide de l'utilisateur MESSAGES D'ERREUR RELATIFS A l'ORDRE JCL SORT Below is a list of messages that can be produced in the Job Occurrence Report as a result of errors in the JCL statement SORT. Ces messages ne s'appliquent pas à l'ordre GSORT.
Page 113
Messages d'erreurs relatifs au tri et à la fusion Code d'erreur TEXTE ET EXPLICATION 106 (suite) ERROR IN START PARAMETER; ILLEGAL VALUE MUST LIE BETWEEN 1 AND 2 147 483 647 (Erreur dans START; doit être compris entre 1 et 2 147 483 647) ERROR IN HALT PARAMETER;...
Page 114
Tri et fusion - Guide de l'utilisateur Code d'erreur TEXTE ET EXPLICATION 106 (suite) Ni MOUNT ni EXPDATE ne sont des paramètres admis dans une description COMFILE. ERROR IN COMFILE PARAMETER; ILLEGAL VALUE LABEL OR MEDIA NAME TABLE (Erreur dans COMFILE; LABEL ou table de noms de supports incorrect) LABEL n'est pas un paramètre admis dans une description COMFILE.
Page 115
Messages d'erreurs relatifs au tri et à la fusion Code d'erreur TEXTE ET EXPLICATION 106 (suite) ERROR IN DATABUF PARAMETER; ILLEGAL VALUE MUST BE EQUAL TO 1 OR 2 (Erreur dans DATABUF; doit être égal à 1 ou 2) ERROR IN BPB PARAMETER; ILLEGAL VALUE MUST BE GREATER OR EQUAL TO 1 (Erreur dans BPB;...
Page 116
Tri et fusion - Guide de l'utilisateur Code d'erreur TEXTE ET EXPLICATION 112 (suite) (Nom-de-fichier-externe et SIZE s'excluent mutuellement dans WKDISK. ERROR IN COMFILE PARAMETER : DEVCLASS MAY NOT APPEAR IN THE PRESENT CONTEXT WITHOUT MEDIA (Erreur dans COMFILE : DEVCLASS ne peut figurer dans le contexte actuel sans MEDIA) MANDATORY PARAMETER RECSIZE MISSING (Paramètre obligatoire RECSIZE absent)
Messages d'erreurs relatifs au tri et à la fusion Liste des Messages d'erreur relatifs à l'ordre JCL MERGE Ces messages ne s'appliquent pas à l'ordre GMERGE. Code d'erreur TEXTE ET EXPLICATION CONTRADICTORY VALUES IN LABEL AND FILEFORM PARAMETERS (Valeurs incompatibles dans les paramètres LABEL et FILEFORM) Vérifier les deux paramètres.
Page 118
Tri et fusion - Guide de l'utilisateur ERROR IN PRTFILE PARAMETER; ILLEGAL VALUE MERGE DEFINITION FORBIDDEN (Erreur dans PRTFILE; définition de fusion interdite) Soit PRTFILE existe déjà et il est inutile de spécifier des paramètres de définition de fusion, soit PRTFILE est un fichier bande à...
Page 119
Messages d'erreurs relatifs au tri et à la fusion ERROR IN COMFILE PARAMETER : DEVCLASS MAY NOT APPEAR IN THE PRESENT CONTEXT WITHOUT MEDIA (Erreur dans COMFILE : DEVCLASS ne peut figurer dans le contexte actuel sans MEDIA) MANDATORY PARAMETER RECSIZE MISSING (Paramètre obligatoire RECSIZE absent) MANDATORY PARAMETER BLKSIZE MISSING (Paramètre obligatoire BLKSIZE absent)
Tri et fusion - Guide de l'utilisateur MESSAGES D'ERREUR RELATIFS A L'EXECUTION DE SORT ET GSORT ET DE MERGE ET GMERGE Ces messages s'appliquent aux ordres JCL SORT, GSORT, MERGE et GMERGE. Les messages d'erreur relatifs à l'exécution du tri (SORT) constituent une partie de l'état du tri et sont rangés dans un sous-fichier SYSOUT.
Messages d'erreurs relatifs au tri et à la fusion Messages d'erreur relatifs à l'exécution A.3.2 Les messages d'erreur relatifs à l'exécution pour les ordres JCL SORT et GSORT et pour MERGE et GMERGE sont listés ci-après avec la cause de leur émission. TD00.00 DSORT INVALID MESSAGE XX YYYY (Message DSORT incorrect XX YYYY)
Page 122
Tri et fusion - Guide de l'utilisateur TDXX.21 ATTEMPT TO REQUEST A SORTED RECORD AFTER END OF SORT-OUTPUT (tentative de demander un article trié après la fin de la séquence SORT-OUTPUT) Signification : Modifier le programme utilisateur (voir procédure de sortie), ou signaler un problème de processeur au support technique.
Page 123
Messages d'erreurs relatifs au tri et à la fusion TD01.07 UNABLE TO CREATE SEGMENT (Impossibilité de créer le segment) Signification : Le segment commun utilisé pour le tri ne peut être créé. H_SGCR envoie un code retour. L'erreur peut être interne à SORT mais le plus souvent trop de mémoire est demandée pour le tri (SIZE en JCL, SRTDEF), ou il n'y a pas assez d'entrées libres (problème d'édition de liens).
Page 124
Tri et fusion - Guide de l'utilisateur TD01.14 UNABLE TO CHANGE SEGMENT SIZE (Impossibilité de changer la taille du segment) Signification : La taille du segment principal utilisé pour le tri ne peut pas être adaptée à la valeur souhaitée. H_SGSIZE envoie un code retour.
Page 125
Messages d'erreurs relatifs au tri et à la fusion TD01.21 NO TAPE-WORK-FILE SUBROUTINE-SORT AVAILABLE (Pas de fichier de manoeuvre sur bande disponible pour ce programme de tri) Signification : Modifier le JCL ($SORTWORK) pour utiliser un fichier de manoeuvre sur disque. TD01.22 PARALLEL SORT IS NOT AVAILABLE IN TDS CONTEXT TD01.65...
Page 126
Tri et fusion - Guide de l'utilisateur TD01.74 SRTDEF : REPORT IS > «1» B (SRTDEF : REPORT est > ""01""B) Signification : Corriger le programme utilisateur. TD01.75 SRTDEF : COLL_SEQ IS NOT 1 (SRTDEF : COLL_SEQ est différent de 1) Signification : Corriger le programme utilisateur.
Page 127
Messages d'erreurs relatifs au tri et à la fusion TD01.84 KEY # XXXXX : INVALID TYPE (Clé n° XXXXX : type incorrect) Signification : Corriger le programme utilisateur. (XXXXX : position relative de la zone incorrecte). TD01.85 KEY # XXXXX : INVALID LENGTH FOR TYPE (Clé...
Page 128
Tri et fusion - Guide de l'utilisateur TD02.06 ABOVE KEY-WORD IS OUT OF CONTEXT IN FUNCTION PARAGRAPH. RECORD PARAGRAPH INSERTED (Mot-clé hors contexte dans le paragraphe FUNCTION. Paragraphe RECORD inséré) Signification : Corriger les commandes DSL. Sous chaque erreur figure un "?".
Page 129
Messages d'erreurs relatifs au tri et à la fusion TD02.14 ODD LENGTH FOR HEXADECIMAL LITERAL (Longueur impaire pour littéral hexadécimal) Signification : Corriger la chaîne d'options ou les commandes DSL. Sous chaque erreur figure un "?". TD02.15 INVALID OR UNEXPECTED LITERAL (Littéral incorrect ou hors contexte) Signification : Corriger la chaîne d'options ou les commandes DSL.
Page 130
Tri et fusion - Guide de l'utilisateur TD02.23 UNKNOWN KEYWORD OR OUT OF CONTEXT (Mot-clé inconnu ou hors contexte) Signification : Corriger la chaîne d'options ou les commandes DSL. Sous chaque erreur figure un "?". TD02.24 INVALID FIELD POSITION (Emplacement de zone incorrect) Signification : Corriger la chaîne d'options ou les commandes DSL.
Page 131
Messages d'erreurs relatifs au tri et à la fusion TD02.33 INVALID COLLATE SPECIFICATION (Spécification ordre de classement incorrecte) Signification : Corriger la chaîne d'options ou les commandes DSL. Sous chaque erreur figure un "?". TD02.34 COLLATE SEQUENCE FOR H200 FILE MUST GIVE 64 CHARACTERS (l'ordre de tri pour un fichier H200 doit prévoir 64 caractères) TD02.35...
Page 132
Tri et fusion - Guide de l'utilisateur TD02.43 OVER 16 INCLUDE/OMIT CONDITIONS SPECIFIED (Un maximum de 16 conditions INCLUDE ou OMIT est autorisé) Signification : Corriger la chaîne d'options ou les commandes DSL. Sous chaque erreur figure un "?". TD02.44 INVALID FIELD SPECIFICATION (Spécification de zone incorrecte) Signification :...
Page 133
Messages d'erreurs relatifs au tri et à la fusion TD02.52 LENGTH OF ARRANGED RECORDS > 32767 (La longueur totale des articles traités par la commande ARRANGE ne doit pas dépasser 32767) Signification : Corriger la chaîne d'options ou les commandes DSL. Sous chaque erreur figure un "?".
Page 134
Tri et fusion - Guide de l'utilisateur TD02.61 UNABLE TO IDENTIFY PRTFILE (Impossibilité d'identifier PRTFILE) Signification : H_RTVLID envoie un code retour. Provient d'une erreur dans le JCL, sinon informer le support technique. TD02.62 INFILES NUMBER IS <2 OR > 8 (Nombre de INFILES est <2 ou >8) Signification : Utiliser INFILE uniquement s'il y a un fichier d'entrée (le...
Page 135
Messages d'erreurs relatifs au tri et à la fusion TD03.06 UNABLE TO CHANGE SEGMENT SIZE (Impossibilité de changer la taille du segment) Signification : La taille du segment de noeuds pour le tri ne peut être adaptée à la valeur souhaitée. H_SGSIZE envoie un code retour.
Page 136
Tri et fusion - Guide de l'utilisateur TD03.13 UNABLE TO MODIFY SEGMENT ATTRIBUTES (Impossibilité de modifier les attributs du segment) Signification : Informer le support technique. TD03.14 UNABLE TO CREATE SEGMENT (Impossibilité de créer un segment) Signification : H_SGCR envoie un code retour. L'erreur peut être interne à SORT, mais il est plus probable qu'une taille de mémoire trop élevée est demandée pour SORT (SIZE en JCL, SRTDEF) ou que les rubriques libres sont insuffisantes (incident au...
Page 137
Messages d'erreurs relatifs au tri et à la fusion TD04.03 UNABLE TO CREATE WORK FILE DEFINITION (Impossibilité créer définition fichier manoeuvre) Signification : Une création dynamique de FD (File Definition table) ne peut pas être effectuée. H_CRFD envoie un code retour. Peut provenir d'un problème à...
Page 138
Tri et fusion - Guide de l'utilisateur TD04.12 INSUFFICIENT MEMORY SIZE (Taille de mémoire insuffisante) Signification : Le paramètre SIZE est trop petit par rapport aux autres paramètres. Corriger le programme utilisateur. TD04.13 WORK FILE OVERFLOW (Débordement du fichier de manoeuvre) Signification : Le fichier de manoeuvre a été...
Page 139
Messages d'erreurs relatifs au tri et à la fusion TD04.19 UNABLE TO GET SEMAPHORES (Impossibilité de lire les sémaphores) Signification : Problème d'édition de liens : pool de sémaphores insuffisant. L'erreur peut être provoquée par des tris imbriqués. TD04.20 UNABLE TO CHANGE SEGMENT SIZE (Impossibilité...
Page 140
Tri et fusion - Guide de l'utilisateur TD04.27 MEMORY-SORT OVERFLOW (Mémoire insuffisante pour le tri) Signification : Tri en mémoire impossible car celle-ci est trop petite. Corriger le programme utilisateur. TD04.28 UNABLE TO DELETE WORK FILE DEFINITION (Impossibilité de supprimer la définition du fichier de manoeuvre) Signification : SORT ne parvient pas à...
Page 141
Messages d'erreurs relatifs au tri et à la fusion TD04.36 NON SEQUENTIAL FILEORG OF WORKFILE IS RISKY AND SHOULD BE CHANGED (L'organisation non séquentielle du fichier de manoeuvre est risquée et doit être modifiée) Signification : Modifier l'ordre JCL. TD04.37 UNABLE TO CREATE SEGMENT (Impossibilité...
Page 142
Tri et fusion - Guide de l'utilisateur TDXX.19 WRONG INPUT RECORD LENGTH FOR {INCLUDE/OMIT KEY/ARRANGE/SUM} (Longueur d'article d'entrée incorrecte pour INCLUDE/OMIT KEY/ARRANGE/SUM) XX=numéro du module où l'erreur a été détectée. L'article considéré est trop petit pour contenir toutes les zones indiquées.
Page 143
Messages d'erreurs relatifs au tri et à la fusion TD06.06 INTERNAL SORT ERROR (Erreur interne au tri) Signification : Signaler l'incident au support technique. TD06.07 INTERNAL SORT ERROR (Erreur interne au tri) Signification : Signaler l'incident au support technique. TD06.08 UNABLE TO LOCK B_SEGMENT (Impossibilité...
Page 144
Tri et fusion - Guide de l'utilisateur TD08.08 INTERNAL SORT ERROR (Erreur interne au tri) Signification : Signaler l'incident au support technique. TD08.09 UNABLE TO LOCK B_SEGMENT (Impossibilité de verrouiller SEGMENT_B) Signification : H_SGLOCK envoie un code retour. Soit SIZE est plus petit que la mémoire verrouillée nécessaire, soit l'incident doit être signalé...
Page 145
Messages d'erreurs relatifs au tri et à la fusion TD10.09 UNABLE TO CHANGE SEGMENT SIZE (Impossibilité de changer la taille du segment) Signification : La taille du segment de code généré utilisé pour le tri ne peut pas être adaptée à la valeur souhaitée. H_SGSIZE envoie un code retour.
Page 146
Tri et fusion - Guide de l'utilisateur TD10.16 UNABLE TO CHANGE SEGMENT SIZE (Impossibilité de changer la taille du segment) Signification : La taille du segment de pseudo-tampons utilisé pour le tri ne peut pas être adaptée à la valeur souhaitée. H_SGSIZE envoie un code retour.
Page 147
Messages d'erreurs relatifs au tri et à la fusion TD12.07 UNABLE TO MODIFY SEGMENT ATTRIBUTES (Impossibilité de modifier les attributs de segment) Signification : Signaler l'incident au support technique. TD12.08 UNABLE TO MODIFY SEGMENT ATTRIBUTES (Impossibilité de modifier les attributs de segment) Signification : Signaler l'incident au support technique.
Page 148
Tri et fusion - Guide de l'utilisateur TD14.05 INCONSISTENT DATA : DATA LOSS (Données incohérentes : perte de données) Signification : Il y a moins d'entités à la fin du tri que d'entités à trier. TD14.06 INCONSISTENT DATA : DATA GAIN (Données incohérentes : gain de données) Signification : Plus d'entités en fin de tri que d'entités à...
Page 149
Messages d'erreurs relatifs au tri et à la fusion TD14.14 CHECK FOR RECORD TRUNCATION (Troncature d'article) Signification : L'utilisateur a défini un article de sortie plus petit que l'article d'entrée. Simple avertissement émis par le module XX. TD14.15 CHECK FOR RECORD PADDING (Remplissage d'article) Signification : L'utilisateur a défini un article de sortie plus grand que l'article...
Page 150
Tri et fusion - Guide de l'utilisateur TD19.04 UNABLE TO RETRIEVE GETCI, CHECKCI ADDRESS FOR INPUT FILE (Impossibilité d'extraire adresse GETCI, CHECKCI pour le fichier d'entrée) Signification : Vérifier labels, caractéristiques, affectation (UFAS). Si aucune erreur n'est détectée, signaler l'incident au support technique.
Page 151
Messages d'erreurs relatifs au tri et à la fusion TD23.02 UNABLE TO PUT RECORD/BLOCK ON OUTPUT FILE (Impossibilité d'écrire article/bloc dans le fichier de sortie) Signification : Vérifier les labels, les caractéristiques, l'affectation du fichier. Si aucune erreur n'est détectée signaler l'incident au support technique.
Page 152
Tri et fusion - Guide de l'utilisateur TD26.01 ONLY OUTPUT=DATA IS CORRECT FOR TAPE INPUT FILES (Seul OUTPUT=DATA est admis pour les fichiers d'entrée sur bande) Signification : Corriger le JCL ou le DSL. TD26.02 MIN IS GREATER THAN MAXIMAL RECORD LENGTH (MIN dépasse la longueur du plus grand article) Signification : Corriger le JCL, le DSL ou SRTDEF (MIN doit correspondre à...
Page 153
Messages d'erreurs relatifs au tri et à la fusion TD26.08 UNABLE TO RETRIEVE INPUT FILE DEFINITION (Impossibilité d'extraire la définition du fichier d'entrée) Signification : SORT ne parvient pas à déterminer les caractéristiques du fichier d'entrée. H_RFLDEF ou SORT envoie un code retour. Erreur dans le JCL ou fichier d'entrée non standard.
Page 154
Tri et fusion - Guide de l'utilisateur TD26.16 INVALID MONITORED SORT_INPUT_FILE ASSIGMENT (Affectation incorrecte du fichier d'entrée SORT sous GAC) Signification : Les conditions d'utilisation de "SHARE=MONITOR" (GAC) pour l'affectation du fichier d'entrée ne sont pas satisfaites. Voir chapitre 5 dans le manuel SORT/MERGE. Corriger le JCL.
Page 155
Messages d'erreurs relatifs au tri et à la fusion TD27.05 UNABLE TO ALLOCATE OUTPUT FILE (Impossible d'affecter le fichier de sortie) Signification : Vérifier les messages associés à celui-ci. Le format de ces messages est : DUxx.yy (PREALLOC). Voir description de PREALLOC dans Utilitaires de gestion des données - Guide de l'utilisateur .
Page 156
Tri et fusion - Guide de l'utilisateur TD33.07 UNABLE TO GET RECORD/BLOCK FROM INPUT FILE (Impossibilité de lire bloc/article du fichier d'entrée) Signification : Vérifier labels, caractéristiques, affectation du fichier. Si aucune erreur n'est détectée, signaler l'incident au support technique. TD33.08 UNABLE TO START A SERVANT PROCESS (Impossible de lancer un process asservi)
Page 157
Messages d'erreurs relatifs au tri et à la fusion TD35.01 UNABLE TO CREATE SEGMENT (Impossibilité de créer un segment) Signification : H_SGCR envoie un code retour. L'erreur peut être interne à SORT, mais il est plus probable qu'une taille de mémoire trop élevée est demandée pour SORT (SIZE en JCL, SRTDEF) ou que les rubriques libres sont insuffisantes (incident au niveau édition de liens).
Page 158
Tri et fusion - Guide de l'utilisateur TD35.07 UNABLE TO GET SEMAPHORES (Impossibilité de lire les sémaphores) Signification : Problème d'édition de liens : pool de sémaphores insuffisant. L'erreur peut être provoquée par des tris imbriqués. TD35.08 UNABLE TO DEFINE CHANNEL PROGRAM (Impossibilité...
Page 159
Messages d'erreurs relatifs au tri et à la fusion TD35.16 UNABLE TO DELETE CHANNEL PROGRAM (Impossibilité de supprimer le programme de transmission) Signification : Signaler le problème au support technique TD35.17 UNABLE TO START A SERVANT PROCESS (Impossible de lancer un process asservi) Signification : Vérifier que l'utilisateur ne tente pas d'exécuter un tri multi-process avec un LM mono-process.
Page 160
Tri et fusion - Guide de l'utilisateur TD37.02 UNABLE TO ASSIGN DYNAMIC DISK WORK FILE (Impossibilité d'affecter dynamiquement fichier manoeuvre sur disque à l'activité de tri). Signification : H_DYNASG envoie un code retour. TD37.03 UNABLE TO RETRIEVE WORK FILE DEFINITION (Impossibilité...
Page 161
Messages d'erreurs relatifs au tri et à la fusion TD99.99 USER SORT CALL VIOLATION (Erreur au niveau de l'appel des primitives de tri) Signification : primitives H_BEGSRT, H_RELSRT, H_SRT, H_RETSRT, H_ENDSRT ont été appelées dans un ordre incorrect. En COBOL cet incident peut être provoqué par une fin incorrecte de paragraphe, de section, etc...
Page 162
Tri et fusion - Guide de l'utilisateur A-52 47 F2 08UF Rev06...
B. Etats de tri et de fusion Le contenu de l'état de tri/fusion enregistré dans le sous-fichier SYSOUT est fonction de la valeur attribuée par l'utilisateur au paramètre REPORT dans les ordres JCL SORT et GSORT ou MERGE et GMERGE. Les valeurs possibles sont AUDIT, PARAM, ALL ou NONE.
Page 164
Tri et fusion - Guide de l'utilisateur REPORT = ALL Exemple d'état de tri avec REPORT = ALL (état complet) : ******* SORT REPORT ******* **** SORT PARAMETER LISTING **** FUNCTION: DUPREC=FIFO INTINFO RECORD: KEY=1 10 END: **** END OF SORT REPORT **** ***** SORT AUDIT INFORMATION **** INPUT FILE : TRID.ALEA150 OUTPUT FILE : ;102478.OUTALEA...
Page 165
Etats de tri et de fusion REPORT = AUDIT (VALEUR IMPLICITE) Sans INTINFO ******* SORT REPORT ******* ***** SORT AUDIT INFORMATION **** INPUT FILE : TRID.ALEA150 OUTPUT FILE : ;102478.OUTALEA TOTAL NUMBER OF RECORDS READ : 10000 TOTAL NUMBER OF RECORDS WRITTEN : 10000 TOTAL NUMBER OF RECORDS OMITTED TOTAL NUMBER OF RECORDS DELETED...
Page 166
Tri et fusion - Guide de l'utilisateur REPORT = PARAM Dans ce cas, seul le compte rendu correspondant aux paramètres de SORT sont fournis (voir plus haut) **** SORT REPORT**** FUNCTION: DUPREC=FIFO INTINFO RECORD: KEY=1 10 END: REPORT = NONE Aucun état du tri n'est fourni sauf en cas d'erreurs, auquel cas on obtient le même compte rendu que pour REPORT=AUDIT avec INTINFO.
SORT. Ils représentent les caractères dans l'ordre croissant, de haut en bas et de gauche à droite, en commençant par la "valeur la plus faible" et en finissant par la "valeur la plus élevée". Tableau C-1. Jeu de caractères EBCDIC (DPS 7000) (1/4) C aractère C aractère R eprésentation...
Tri et fusion - Guide de l'utilisateur Tableau C-2. Jeu de caractères EBCDIC (DPS 7000) (2/4) C aractère R eprésentatio n C aractère C ode perforation Rep ré sentation C ode perforation graphique hexad écim ale graphique H 36 décim a le...
Page 169
Ordres de classement Tableau C-3. Jeu de caractères EBCDIC (DPS 7000) (3/4) C aractère R eprésentation C ode perforation Rep ré sentation C aractère Cod e perforatio n graphiq ue hexadécim ale H 36 décim a le graphique H 36 12-0-1-8 µ...
Page 170
Tri et fusion - Guide de l'utilisateur Tableau C-4. Jeu de caractères EBCDIC (DPS 7000) (4/4) C aractère R eprésentation C aractère R eprésentation C ode perforation C ode perforation graphique graphique décim ale hexadécim ale H 36 H 36...
La colonne la plus à gauche fournit la valeur interne d'origine du caractère dans un système Série 100. La colonne la plus à droite indique la valeur hexadécimale du caractère après traduction pour un environnement DPS 7000. Tableau C-2. Jeu de caractères Série 100 (1/2) E B C D IC C aractère...
Page 172
Tri et fusion - Guide de l'utilisateur Tableau C-2. Jeu de caractères Série 100 (2/2) E B C D IC C aractère C ode perforation C ode perforation R eprésentation graphique H 14 H 36 hexadéc im ale avant traduction 11-0 11-8-7 11-1...
Le tableau C-3 montre l'impact de COLLATE=H200 sur les fichiers EBCDIC. Lorsque deux caractères graphiques sont présents (caractères spéciaux), le premier correspond à la valeur Série 200 et le second à son équivalent DPS 7000. Tableau C-3. Ordre de classement H200 pour fichiers EBCDIC...
Tri et fusion - Guide de l'utilisateur Tableau C-4. Ordre de classement ASCII (1/2) C aractère C aractère C aractère C aractère E B C D IC E B C D IC E B C D IC E B C D IC graphique graphique graphique...
Ordres de classement Tableau C-4. Ordre de classement ASCII (2/2) C aractère C a ra ctè re C a ra ctè re C a ra ctè re E B C D IC E B C D IC E B C D IC E B C D IC graphique g ra ph iq ue...
Page 176
Tri et fusion - Guide de l'utilisateur C-10 47 F2 08UF Rev06...
Page 177
D. Commande SORT_FILE (GCL) EXECUTING SORT_FILE Il est possible d'exécuter un tri en mode interactif ou en mode traitement par lots à l'aide de la commande GCL SORT_FILE (pseudonyme SRTF ou SORT). Le format de la commande SORT_FILE est proche de celui de l'ordre JCL SORT; sa visibilité...
Page 178
Tri et fusion - Guide de l'utilisateur COMMANDE GCL SORT_FILE (SRTF, SORT) Action : Trie un ou plusieurs fichiers dans un nouveau fichier ou dans un fichier déjà existant. Syntaxe : { SORT_FILE } { SRTF { SORT { FILE { INFILE } = { { OUTFILE }...
Page 180
Tri et fusion - Guide de l'utilisateur Paramètres : FILE fichier produit par le tri (description d'un fichier de sortie). Lorsque FILE=INFILE est spécifié, le fichier produit écrase le fichier d'entrée. INFILE fichier à trier (description d'un fichier d'entrée). DYNALC demande l'affectation dynamique du fichier de sortie et en spécifie le statut : catalogué...
Page 181
Commande SORT_FILE (GCL) DSLFILE fichier contenant les commandes DSL définissant les options de tri (voir description dans le chapitre 6). La description DSL du fichier peut également être entrée directement à partir du terminal en définissant le paramètre DSLFILE=::TN. Fermer le fichier terminal en tapant le caractère "/".
Page 182
Tri et fusion - Guide de l'utilisateur ERROPT action à entreprendre lorsqu'un article non admis est détecté : PRINTID imprime la rangée où se trouve l'article valeur implicite) PRINT imprime la rangée et le contenu de l'article, écrit l'article dans le fichier journal, IGNORE pas d'impression.
Page 183
Commande SORT_FILE (GCL) Règles d'utilisation : • la valeur START ne peut pas être supérieure à la valeur HALT. • lorsque la valeur ERROPT est LOG, le fichier journal (LOGFILE) doit être spécifié. • les paramètres WRKFILEi et WRKALCi ne peuvent être utilisés avec WRKSIZE, WRKVOL, WRKFILE, WRKALC.
Page 184
Tri et fusion - Guide de l'utilisateur 47 F2 08UF Rev06...
Page 185
E. Commande MERGE_FILE (GCL) EXECUTION DE MERGE_FILE La fusion peut être exécutée en mode interactif ou en mode traitement par lots au moyen de la commande GCL MERGE_FILE (pseudonyme MRGF). Le format de la commande MERGE_FILE est le même que celui de l'ordre JCL MERGE. Sa visibilité...
Page 186
Tri et fusion - Guide de l'utilisateur COMMANDE MERGE_FILE (MRGF) Action : Active l'utilitaire qui opère la fusion des fichiers triés (deux à huit fichiers) en un fichier nouveau ou déjà existant. Syntaxe : { MERGE_FILE } { MRGF { INFILE1 } } = ( input-file-description ) { IF1 { INFILE2 }...
Page 188
Tri et fusion - Guide de l'utilisateur Paramètres : INFILEi descriptions de fichier (deux à huit fichiers) définissant les fichiers à fusionner, sous forme de groupes de paramètres de description. FILE/OUTFILE fichier produit par l'exécution de la fusion (description de fichier d'entrée).
Page 189
Commande MERGE_FILE (GCL) BUFFER mémoire tampon utilisée par les fichiers d'entrée et de sortie, exprimée en unités de 1024 octets. Valeur implicite : 30 (il est possible de spécifier une valeur plus élevée ou plus faible à condition qu'elle ne dépasse pas 512 unités. PADCHAR caractère de remplissage des articles en sortie (caractère lui même ou son équivalent hexadécimal).
Page 190
Tri et fusion - Guide de l'utilisateur 47 F2 08UF Rev06...
Page 191
F. Chargement d'un fichier de sortie UFAS indexé par SORT ou MERGE Cette annexe s'applique aux ordres JCL SORT, GSORT, MERGE, et GMERGE. Un fichier UFAS indexé est défini avec une clé primaire (voir paramètres KEYLOC et KEYSIZE de l'ordre JCL DEFINE) et éventuellement avec une ou plusieurs clés secondaires.
Page 192
Tri et fusion - Guide de l'utilisateur 47 F2 08UF Rev06...
Page 193
G. Utilisation de DATAFORM = {SARF/SSF} et de [TRUNCSSF/NTRNCSSF] par SORT et MERGE A moins que TRUNCSSF soit spécifié de façon explicite dans le groupe de paramètres INFILE, la lecture du fichier d'entrée SORT est implicitement soumise au traitement TRUNCSSF lorsqu'il se trouve sur bande classique ou bande en cartouche ou lorsque FILEFORM est un fichier disque BFAS ou LINKQD.
Page 194
Tri et fusion - Guide de l'utilisateur 47 F2 08UF Rev06...
Page 195
H. Contraintes relatives à la relance sur point de reprise avec des fichiers bande en cartouche soumis au tri et à la fusion Le contenu de cette annexe ne concerne que les opérations de tri. Les volumes bandes en cartouche bas de gamme (DVC = CT/M6) n'admettent pas le traitement avec relance sur point de reprise lorsqu'ils sont ouverts en mode sortie ou adjonction, et qu'ils ne sont pas positionnés en début de fichier, en fin de fichier ou en fin de volume.
Page 196
Tri et fusion - Guide de l'utilisateur 47 F2 08UF Rev06...
I. Méthode d'accès aux fichiers UFAS avec MERGE et SORT SORT Les conditions d'accès aux fichiers UFAS lors de l'exécution d'un ordre SORT (Tri) sont décrites ci-dessous. Cette annexe donne des détails techniques qui ne sont fournis qu'à titre d'information à l'utilisateur qui pourra éventuellement se dispenser de sa lecture.
Page 198
Tri et fusion - Guide de l'utilisateur Remarque : Lorsque SHARE = MONITOR, les valeurs (READLOCK = STAT) ou (ACCESS = SPREAD or SPWRITE) doivent obligatoirement être spécifiées pour fichier d'entrée (INFILE) ACCESS = SPWRITE pour le fichier de sortie (OUTFILE). Tri multi-process Pour des fichiers UFAS indexés, SORT appelle la méthode d'accès UFAS.
Page 199
Index Commande DSL DEBUG DSL Commande DSL KEY(S) Commande DSL MIN 7-1, 7-2 ABORT Commande DSL OUTPUT paramètre de définition de tri/fusion 3-15 Commande DSL SORTSIZE ADDRFORM commande DSL SORTSIZE paramètre de définition de tri/fusion 3-17 Commande DSL SUM ALLOCATE parameter Commande GCL SORT_FILE D-1, D-2 MERGE_FILE command...
Page 200
Tri et fusion - Guide de l'utilisateur KEY[S] 5-12, 6-3 KEYADDR 5-5, 5-20 KEYS GSORT Description des paramètres NBSORT syntaxe OMIT 5-14, 5-19, 6-3, 6-5 OUTPUT 5-4, 5-5 SORTSIZE 5-19, 5-21, 6-5 WRDISK DSLFILE parameter H200 MERGE_FILE command ordre de classement DUMMYREC paramètre de définition de tri/fusion 3-17...