CRTCBLMOD
Créer un module COBOL
En bref
La commande CRTCBLMOD compile un programme source ILE COBOL dans un module.
CRTCBLMOD se lit CRT
(Créer) + CBLMOD.
Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.
Syntaxe minimale
CRTCBLMOD
Paramètres
-
MODULEModule -
SRCFILEFichier source -
SRCMBRMembre source -
SRCSTMFFichier communication source -
GENLVLNiveau gravité pour génération -
TEXTTexte 'descriptif' -
OUTPUTSortie -
OPTIONOptions de compilation -
CVTOPTOptions de conversion -
MSGLMTLimite de messages -
DBGVIEWOption de vue de débogage -
DBGENCKEYClé de chiffrement de débogage -
OPTIMIZENiveau d'optimisation -
FLAGSTDMarquage FIPS -
EXTDSPOPTOptions d'affichage étendu -
FLAGGravité pour marquage -
REPLACERemplacement du module -
AUTDroits -
LINKLITLittéral de lien -
TGTRLSEdition cible -
SRTSEQSéquence de tri -
LANGIDIdentificateur de langue -
ENBPFRCOLCollecte performances possible -
STGMDLModèle d'espace mémoire -
PRFDTADonnées de profilage -
CCSIDID codé de jeu de caractères -
NTLCCSIDCCSID national -
ARITHMETICMode arithmétique -
NTLPADCHARCaractère de remplissage -
LICOPTOptions microcode sous licence -
INCDIRInclusion répertoire -
PGMINFOInfos interface programme -
INFOSTMFFichier interface programme -
DEFINEDéfinir des noms -
TGTCCSIDTARGET CCSID
Astuce : dans une session 5250, tapez CRTCBLMOD puis F4 pour
l'invite de saisie, et F1 sur un paramètre pour son aide.
Aide IBM i de la commande
Texte du F1, IBM i 7.5 en français
(bibliothèque QDEVTOOLS)
Où s'exécute : Tous les environnements (*ALL)
Compatible multitâche : Non
La commande CRTCBLMOD compile un programme source ILE COBOL dans un module. Vous pouvez l'utiliser en mode interactif, en mode par lots ou dans un programme CL.
Tous les noms d'objet indiqués pour la commande CRTCBLMOD doivent respecter les conventions d'appellation du serveur.
Vous trouverez ci-après la description des paramètres de la commande CRTCBLMOD.
Paramètres
| Mot-clé | Description | Valeurs possibles | Remarques |
|---|---|---|---|
| MODULE | Module | Nom d'objet qualifié | Facultatif, positionnel 1 |
| Qualificatif 1: Module | Nom, *PGMID | ||
| Qualificatif 2: Bibliothèque | Nom, *CURLIB | ||
| SRCFILE | Fichier source | Nom d'objet qualifié | Facultatif, positionnel 2 |
| Qualificatif 1: Fichier source | Nom, QCBLLESRC | ||
| Qualificatif 2: Bibliothèque | Nom, *LIBL, *CURLIB | ||
| SRCMBR | Membre source | Nom, *MODULE | Facultatif, positionnel 3 |
| SRCSTMF | Fichier communication source | Chemin d'accès | Facultatif |
| GENLVL | Niveau gravité pour génération | 0-30, 30 | Facultatif |
| TEXT | Texte 'descriptif' | Valeur caractère, *SRCMBRTXT, *BLANK | Facultatif |
| OUTPUT | Sortie | *PRINT, *NONE | Facultatif, positionnel 4 |
| OPTION | Options de compilation | Values (jusqu'à 50 répétitions): *SOURCE, *NOSOURCE, *SRC, *NOSRC, *NOXREF, *XREF, *GEN, *NOGEN, *NOSEQUENCE, *SEQUENCE, *NOVBSUM, *VBSUM, *NONUMBER, *NUMBER, *LINENUMBER, *NOMAP, *MAP, *NOOPTIONS, *OPTIONS, *QUOTE, *APOST, *NOSECLVL, *SECLVL, *PRTCORR, *NOPRTCORR, *MONOPRC, *NOMONOPRC, *RANGE, *NORANGE, *NOUNREF, *UNREF, *NOSYNC, *SYNC, *NOCRTF, *CRTF, *NODUPKEYCHK, *DUPKEYCHK, *NOINZDLT, *INZDLT, *NOBLK, *BLK, *STDINZ, *NOSTDINZ, *STDINZHEX00, *NODDSFILLER, *DDSFILLER, *NOIMBEDERR, *IMBEDERR, *STDTRUNC, *NOSTDTRUNC, *NOCHGPOSSGN, *CHGPOSSGN, *NOEVENTF, *EVENTF, *MONOPIC, *NOMONOPIC, *NOCRTARKIDX, *CRTARKIDX | Facultatif, positionnel 5 |
| CVTOPT | Options de conversion | Values (jusqu'à 8 répétitions): *NOVARCHAR, *VARCHAR, *NODATETIME, *DATETIME, *NOPICXGRAPHIC, *PICXGRAPHIC, *NOPICGGRAPHIC, *PICGGRAPHIC, *NOFLOAT, *FLOAT, *NODATE, *DATE, *NOTIME, *TIME, *NOTIMESTAMP, *TIMESTAMP, *NOCVTTODATE, *CVTTODATE, *NOPICNGRAPHIC, *PICNGRAPHIC | Facultatif |
| MSGLMT | Limite de messages | Liste d'éléments | Facultatif |
| Élément 1: Nombre de messages | 0-9999, *NOMAX | ||
| Élément 2: Niveau de gravité maximal | 0-30, 30 | ||
| DBGVIEW | Option de vue de débogage | Liste d'éléments | Facultatif |
| Élément 1: Vue de débogage | *STMT, *SOURCE, *LIST, *ALL, *NONE | ||
| Élément 2: Vue de liste condensée | *NOCOMPRESSDBG, *COMPRESSDBG | ||
| DBGENCKEY | Clé de chiffrement de débogage | Valeur caractère, *NONE | Facultatif |
| OPTIMIZE | Niveau d'optimisation | *NONE, *BASIC, *FULL, *NEVER | Facultatif |
| FLAGSTD | Marquage FIPS | Values (jusqu'à 2 répétitions): *NOFIPS, *MINIMUM, *INTERMEDIATE, *HIGH, *NOOBSOLETE, *OBSOLETE | Facultatif |
| EXTDSPOPT | Options d'affichage étendu | Values (jusqu'à 3 répétitions): *DFRWRT, *NODFRWRT, *UNDSPCHR, *NOUNDSPCHR, *ACCUPDALL, *ACCUPDNE | Facultatif |
| FLAG | Gravité pour marquage | 0-99, 0 | Facultatif |
| REPLACE | Remplacement du module | *YES, *NO | Facultatif |
| AUT | Droits | Nom, *LIBCRTAUT, *ALL, *CHANGE, *USE, *EXCLUDE | Facultatif |
| LINKLIT | Littéral de lien | *PGM, *PRC | Facultatif |
| TGTRLS | Edition cible | Nom simple, *CURRENT, *PRV | Facultatif |
| SRTSEQ | Séquence de tri | Valeurs uniques: *HEX, *JOB, *JOBRUN, *LANGIDUNQ, *LANGIDSHR Autres valeurs: Nom d'objet qualifié |
Facultatif |
| Qualificatif 1: Séquence de tri | Nom | ||
| Qualificatif 2: Bibliothèque | Nom, *LIBL, *CURLIB | ||
| LANGID | Identificateur de langue | Valeur caractère, *JOBRUN, *JOB | Facultatif |
| ENBPFRCOL | Collecte performances possible | Valeurs uniques: *PEP Autres valeurs: Liste d'éléments |
Facultatif |
| Élément 1: Niveau de collecte | *FULL, *ENTRYEXIT | ||
| STGMDL | Modèle d'espace mémoire | *INHERIT, *SNGLVL, *TERASPACE | Facultatif |
| PRFDTA | Données de profilage | *NOCOL, *COL | Facultatif |
| CCSID | ID codé de jeu de caractères | Entier, *JOBRUN, *HEX, *JOB | Facultatif |
| NTLCCSID | CCSID national | Entier, 13488 | Facultatif |
| ARITHMETIC | Mode arithmétique | *NOEXTEND, *EXTEND31, *EXTEND31FULL, *EXTEND63 | Facultatif |
| NTLPADCHAR | Caractère de remplissage | Liste d'éléments | Facultatif |
| Élément 1: Simple octet vers national | Valeur caractère, *DEFAULT | ||
| Élément 2: Double octet vers national | Valeur caractère, *DEFAULT | ||
| Élément 3: National vers national | Valeur caractère, *DEFAULT | ||
| LICOPT | Options microcode sous licence | Valeur caractère | Facultatif |
| INCDIR | Inclusion répertoire | Values (jusqu'à 32 répétitions): Chemin d'accès, *NONE | Facultatif |
| PGMINFO | Infos interface programme | Liste d'éléments | Facultatif |
| Élément 1: Générer | *NO, *PCML | ||
| Élément 2: Emplacement | *STMF, *MODULE, *ALL | ||
| INFOSTMF | Fichier interface programme | Chemin d'accès | Facultatif |
| DEFINE | Définir des noms | Values (jusqu'à 32 répétitions): Chemin d'accès, *NONE | Facultatif |
| TGTCCSID | TARGET CCSID | 1-65534, *SRC, *JOB | Facultatif |
Module (MODULE)
Indique le nom et la bibliothèque de l'objet module en cours de création. Ces noms doivent respecter les conventions d'appellation du serveur. Les valeurs possibles sont les suivantes :
- *PGMID
- Le nom du module provient du paragraphe PROGRAM-ID du programme source principal ILE COBOL dans l'unité de compilation.
- nom-module
- Indiquez le nom du module compilé ILE COBOL. Si vous indiquez un nom de module pour ce paramètre et compilez une séquence de programmes source (plusieurs unités de compilation dans un seul membre de fichier source), le premier module de la séquence utilise ce nom. Tous les autres modules utilisent le nom précisé au paragraphe PROGRAM-ID du programme source principal ILE COBOL correspondant, dans l'unité de compilation.
Les valeurs possibles pour la bibliothèque sont les suivantes :
- *CURLIB
- L'objet module créé est stocké dans la bibliothèque en cours. Si vous n'en avez défini aucune, QGPL est utilisée par défaut.
- nom-bibliothèque
- Entrez le nom de la bibliothèque dans laquelle l'objet module que vous créez doit être stocké.
Fichier source (SRCFILE)
Indique le nom du fichier source et de la bibliothèque contenant le code source ILE COBOL à compiler. La longueur maximale des enregistrements du fichier source est de 92. Les valeurs possibles sont les suivantes :
- QCBLLESRC
- Indique que le fichier source, QCBLLESRC, contient le code source ILE COBOL à compiler.
- nom-fichier-source
- Indiquez le nom du fichier source contenant le code source ILE COBOL à compiler.
Les valeurs possibles pour la bibliothèque sont les suivantes :
- *LIBL
- La bibliothèque contenant le fichier source est recherchée dans la liste des bibliothèques.
- *CURLIB
- La bibliothèque en cours est utilisée. Si vous n'en avez défini aucune, QGPL est utilisée par défaut.
- nom-bibliothèque
- Entrez le nom de la bibliothèque du fichier source.
Membre source (SRCMBR)
Indique le nom du membre contenant le code source ILE COBOL à compiler. Vous pouvez préciser ce paramètre uniquement si le fichier source référencé au paramètre SRCFILE est un fichier base de données. Les valeurs possibles sont les suivantes :
- *MODULE
- Le membre de fichier source dont le nom est identique à celui du module indiqué au paramètre MODULE est utilisé.
Si vous n'indiquez pas de nom de module au paramètre MODULE, le premier membre du fichier source base de données est utilisé.
- nom-membre-fichier-source
- Indiquez le nom du membre contenant le code source ILE COBOL.
Fichier communication source (SRCSTMF)
Indique le nom du chemin d'accès du fichier STREAM qui contient le code source ILE COBOL à compiler.
Le nom du chemin d'accès peut être soit complet soit relatif. Un nom de chemin d'accès complet commence par '/'; un nom de chemin d'accès relatif commence par un caractère différent de '/'.
S'il est qualifié de complet, le nom de chemin d'accès est en entier. S'il est qualifié de relatif, le nom de chemin d'accès est complété par le nom du répertoire de travail en cours.
Les paramètres SRCMBR et SRCFILE ne peuvent pas être indiqués avec le paramètre SRCSTMF.
Niveau gravité pour génération (GENLVL)
Indique le niveau de gravité dont dépend la création d'un objet module. Il s'agit du niveau de gravité des messages générés lors de la compilation. Ce paramètre s'applique individuellement à chaque unité de compilation du membre du fichier source. Même si une unité de compilation échoue, les unités suivantes sont compilées.
Les valeurs possibles sont les suivantes :
- 30
- Aucun objet module n'est créé en cas d'erreurs dont le niveau de gravité est égal ou supérieur à 30.
- niveau-gravité
- Indiquez un nombre à un ou deux chiffres compris entre 0 et 30. Ce nombre correspond au niveau de gravité qui sera appliqué afin de déterminer si un objet module doit être créé. Aucun objet module n'est créé en cas d'erreurs dont le niveau de gravité est égal ou supérieur au niveau que vous avez précisé.
Texte 'descriptif' (TEXT)
Permet d'entrer un texte décrivant brièvement le module et sa fonction.
- *SRCMBRTXT
- Le texte, qui décrit le membre de fichier base de données contenant le code source ILE COBOL, est utilisé pour décrire l'objet module. Si le source provient d'un fichier unité ou d'un fichier en ligne, *SRCMBRTXT est équivalent à *BLANK.
- *BLANK
- Aucun texte n'est indiqué.
- description
- Entrez un texte décrivant brièvement le module et sa fonction. La longueur maximale du texte est de 50 caractères SBCS délimités par des apostrophes. Ces dernières ne sont pas comptées dans la chaîne des 50 caractères.
Sortie (OUTPUT)
Indique si la liste de compilation est générée ou non. Les valeurs possibles sont les suivantes :
- La liste de compilation est générée. Si un membre est en cours de compilation, le nom du fichier de sortie est identique à celui du membre. Si un fichier STREAM est en cours de compilation et que la valeur *PGMID est indiquée au paramètre PGM, le nom du fichier de sortie est COBOLPGM00. Sinon, il possède le même nom que le programme.
- *NONE
- Aucune liste de compilation n'est générée.
Options de compilation (OPTION)
Indique les options à utiliser lorsque le code source ILE COBOL est compilé.
Les options indiquées dans l'instruction PROCESS du programme source ILE COBOL sont prioritaires par rapport aux options correspondantes du paramètre OPTION.
Les valeurs possibles du paramètre OPTION sont les suivantes :
- *SOURCE ou *SRC
- Le compilateur produit une liste source composée du programme source ILE COBOL et de tous les messages d'erreur générés lors de la compilation.
- *NOSOURCE ou *NOSRC
- Le compilateur ne génère pas la partie source de la liste. Si celle-ci ne vous est pas nécessaire, utilisez cette option car elle permet de réduire la durée de la compilation.
- *NOXREF
- Le compilateur ne génère pas la liste de références croisées du programme source ILE COBOL.
- *XREF
- Le compilateur génère la liste de références croisées du programme source ILE COBOL.
- *GEN
- Le compilateur crée un objet module après la compilation du source ILE COBOL.
- *NOGEN
- Le compilateur ne crée pas d'objet module après la compilation du programme source ILE COBOL. Vous pouvez indiquer cette option si vous souhaitez seulement obtenir les messages d'erreur ou les listes.
- *NOSEQUENCE
- Les erreurs de séquence ne sont pas recherchées dans les numéros de référence.
- *SEQUENCE
- Les erreurs de séquence sont recherchées dans les numéros de référence. Pour éviter ces erreurs, précisez l'option *LINENUMBER.
- *NOVBSUM
- Les décomptes des utilisations de verbes ne sont pas imprimés.
- *VBSUM
- Les décomptes des utilisations de verbes sont imprimés.
- *NONUMBER
- Les numéros de séquence du fichier source sont utilisés pour les numéros de référence.
- *NUMBER
- Les numéros de séquence fournis par l'utilisateur (colonnes 1 à 6) sont utilisés pour les numéros de référence.
- *LINENUMBER
- Les numéros de séquence créés par le compilateur sont utilisés pour les numéros de référence. Cette option combine le code source du programme ILE COBOL et le code source introduit par les instructions COPY dans une séquence numérotée consécutivement. Utilisez cette option si vous précisez un marquage FIPS (Federal Information Processing Standards) ou SAA.
- *NOMAP
- Le compilateur ne liste pas la mappe de division des données.
- *MAP
- Le compilateur liste la mappe de division des données.
- *NOOPTIONS
- Les options actives ne sont pas listées pour cette compilation.
- *OPTIONS
- Les options actives sont listées pour cette compilation.
- *QUOTE
- Indique que le guillemet (") est utilisé comme délimiteur pour les littéraux non numériques, hexadécimaux et Booléens. Cette option signifie également que la constante figurative QUOTE a la valeur EBCDIC d'un guillemet.
- *APOST
- Indique que l'apostrophe (') est utilisée comme délimiteur pour les littéraux non numériques, hexadécimaux et Booléens. Cette option signifie également que la constante figurative QUOTE a la valeur EBCDIC d'une apostrophe.
- *NOSECLVL
- Le texte du message de deuxième niveau n'est pas listé pour cette compilation.
- *SECLVL
- Le texte du message de deuxième niveau est listé pour cette compilation dans la section messages de la liste, ainsi que le texte d'erreur de premier niveau.
- *PRTCORR
- Des lignes de commentaire sont insérées dans la liste de compilation. Elles indiquent quels sont les éléments primaires inclus à la suite de l'utilisation de l'expression CORRESPONDING.
- *NOPRTCORR
- Les lignes de commentaire ne sont pas insérées dans la liste de compilation lorsque l'expression CORRESPONDING est utilisée.
- *MONOPRC
- Le nom de programme (un littéral ou un mot) trouvé dans le paragraphe PROGRAM-ID, les instructions CALL, CANCEL ou SET ENTRY et l'en-tête END PROGRAM est converti en lettres majuscules (casse unique) et les conventions d'appellation lui sont appliquées.
- *NOMONOPRC
- Le nom de programme (un littéral ou un mot) trouvé dans le paragraphe PROGRAM-ID, les instructions CALL, CANCEL ou SET ENTRY et l'en-tête END PROGRAM n'est pas converti en lettres majuscules (pas de casse unique) et les conventions d'appellation ne lui sont pas appliquées. Cette option permet d'utiliser les caractères spéciaux non admis en COBOL standard dans la cible CALL.
- *RANGE
- Lors de l'exécution, les plages d'indices sont vérifiées, mais pas celles des index. Les opérations de sous-chaîne générées par le compilateur et la modification des références sont également vérifiées.
Le contenu des éléments date et heure est vérifié afin de s'assurer que leur format est correct et qu'ils représentent une date, une heure ou un horodatage valides.
- *NORANGE
- Les plages ne sont pas vérifiées lors de l'exécution.
Remarque :L'option *RANGE génère un code de vérification des plages d'indices. Par exemple, elle vous garantit que vous ne tentez pas d'accéder à l'élément 21 d'un tableau n'en comportant que 20.
L'option *NORANGE ne génère pas de code de vérification des plages d'indices. Avec cette option, l'exécution du code est plus rapide.
- *NOUNREF
- Les éléments de données non référencés ne sont pas inclus dans le module compilé. Ceci permet de réduire la quantité de mémoire utilisée et de compiler un programme plus volumineux. Lors du débogage, si l'option *NOUNREF a été choisie, vous ne pouvez pas consulter un élément de données non référencé ou l'attribuer. Les éléments de données non référencés apparaissent dans les listes de références croisées générées par l'option OPTION (*XREF).
- *UNREF
- Les éléments de données non référencés sont inclus dans le module compilé.
- *NOSYNC
- La vérification de la clause SYNCHRONIZED est uniquement syntaxique.
- *SYNC
- La clause SYNCHRONIZED est traitée par le compilateur. La clause SYNCHRONIZED provoque l'alignement d'un élément de données de telle manière que l'extrémité à droite figure sur la frontière naturelle de la mémoire. La frontière naturelle de la mémoire est la frontière 4 octets, 8 octets ou 16 octets la plus proche dans la mémoire en fonction de la longueur et du type des données stockées. Pour pouvoir réaliser cet alignement, de la mémoire supplémentaire est réservée dans une position adjacente à l'élément synchronisé. Chaque élément de données primaire décrit comme SYNCHRONIZED est aligné sur la frontière naturelle de la mémoire qui lui a été allouée.
- *NOCRTF
- Les fichiers disque non disponibles au moment d'une opération d'ouverture (OPEN) ne sont pas créés dynamiquement.
- *CRTF
- Les fichiers disque non disponibles au moment d'une opération d'ouverture (OPEN) sont créés dynamiquement.
Remarque :La longueur d'enregistrement maximale d'un fichier créé dynamiquement est de 32 766. Les fichiers indexés ne seront pas créés dynamiquement même si l'option *CRTF a été précisée.
- *NODUPKEYCHK
- Ne recherche pas les clés primaires et de remplacement en double des fichiers INDEXED.
- *DUPKEYCHK
- Recherche les clés primaires et de remplacement en double des fichiers INDEXED.
- *NOINZDLT
- Les fichiers relatifs à accès séquentiel ne sont pas initialisés avec les enregistrements supprimés lors de l'opération de fermeture (CLOSE) s'ils ont été ouverts pour l'opération OUTPUT. La frontière des enregistrements est déterminée par le nombre d'enregistrements écrits au moment de l'opération OPEN OUTPUT. Les opérations OPEN suivantes permettent uniquement un accès jusqu'à la frontière des enregistrements.
- *INZDLT
- Les fichiers relatifs à accès séquentiel sont initialisés avec les enregistrements supprimés lors de l'opération de fermeture (CLOSE) s'ils ont été ouverts pour l'opération OUTPUT. Les enregistrements actifs des fichiers ne sont pas affectés. La frontière des enregistrements est définie comme la taille du fichier pour les opérations OPEN suivantes.
- *NOBLK
- Le compilateur permet uniquement le groupage des fichiers à accès SEQUENTIAL ne comportant aucune instruction START. La clause BLOCK CONTAINS, si elle est indiquée, n'est pas prise en compte, sauf pour les fichiers bande.
- *BLK
- Lorsque *BLK est utilisé et qu'une clause BLOCK CONTAINS est précisée, le compilateur permet le groupage des fichiers à accès DYNAMIC et SEQUENTIAL comportant une instruction START. Le groupage n'est pas autorisé pour les fichiers de type RELATIVE ouverts pour les opérations en sortie. La clause BLOCK CONTAINS détermine le nombre d'enregistrements à grouper.
Lorsque *BLK est utilisé et qu'aucune clause BLOCK CONTAINS n'est précisée, le compilateur permet uniquement le groupage des fichiers à accès SEQUENTIAL ne comportant aucune instruction START. Le système d'exploitation détermine le nombre d'enregistrements à grouper.
- *STDINZ
- Dans le cas des éléments ne comportant aucune clause VALUE, le compilateur utilise les valeurs par défaut pour initialiser les éléments de données.
- *NOSTDINZ
- Dans le cas des éléments ne comportant aucune clause VALUE, le compilateur ne prend pas les valeurs par défaut pour initialiser les éléments de données.
- *STDINZHEX00
- Dans le cas des éléments ne comportant aucune clause VALUE, le compilateur utilise le zéro hexadécimal pour initialiser les éléments de données.
- *NODDSFILLER
- Si aucune zone correspondante n'est trouvée par une instruction COPY DDS, aucune description de zone n'est générée.
- *DDSFILLER
- Si aucune zone correspondante n'est trouvée par une instruction COPY DDS, une description de zone FILLER à un seul caractère, "07 FILLER PIC X", est toujours créée.
- *NOIMBEDERR
- Les messages d'erreur ne sont pas inclus dans la section liste source de la liste de compilation. Ils apparaissent uniquement dans la section réservée aux messages d'erreur.
- *IMBEDERR
- Les messages d'erreur de premier niveau sont inclus dans la section liste source de la liste de compilation, immédiatement à la suite de la ligne erronée. Ils apparaissent également dans la section réservée aux messages d'erreur.
- *STDTRUNC
- Cette option s'applique uniquement aux données USAGE BINARY. Lorsque *STDTRUNC est sélectionnée, les données USAGE BINARY sont tronquées au nombre de chiffres indiqué dans la clause PICTURE de la zone de réception BINARY.
- *NOSTDTRUNC
- Cette option s'applique uniquement aux données USAGE BINARY. Lorsque *NOSTDTRUNC est sélectionnée, les zones de réception BINARY sont tronquées à la frontière correspondant au demi-mot, au mot entier ou au mot double. Les zones d'envoi BINARY sont également traitées en tant que demi-mots, mots entiers ou mots doubles. De cette façon, la totalité du contenu binaire de la zone est significative. En outre, l'instruction DISPLAY convertit la totalité du contenu d'une zone BINARY, sans troncature.
- *NOCHGPOSSGN
- La valeur hexadécimale F est utilisée comme signe positif par défaut pour les données numériques étendues et condensées. Il s'agit de la valeur par défaut du système d'exploitation.
- *CHGPOSSGN
- La valeur hexadécimale C est utilisée comme signe positif par défaut pour les données numériques étendues et condensées. Elle s'applique à tous les résultats des instructions MOVE, ADD, SUBTRACT, MULTIPLY, DIVIDE, COMPUTE et INITIALIZE, ainsi qu'aux résultats de la clause VALUE.
- *NOEVENTF
- Ne crée pas de fichier événements destiné aux outils client. Les outils client utilisent ce fichier pour le suivi des erreurs intégré. Un fichier événements est normalement généré lorsque vous créez un module ou un programme dans les outils client.
- *EVENTF
- Crée un fichier événements destiné aux outils client. Ce fichier événements est créé en tant que membre dans le fichier EVFEVENT, dans la bibliothèque où doit être stocké l'objet module ou programme créé. Si le fichier EVFEVENT n'existe pas, il est créé automatiquement. Le nom de membre du fichier événements est le même que celui de l'objet en cours de création.
Les outils client utilisent ce fichier pour le suivi des erreurs intégré. Un fichier événements est normalement généré lorsque vous créez un module ou un programme dans les outils client.
- *MONOPIC
- La chaîne de caractères PICTURE est convertie en lettres majuscules.
- *NOMONOPIC
- Le symbole monétaire utilisé dans la chaîne de caractères PICTURE nécessite le respect Maj/min. Autrement dit, dans une chaîne de caractères PICTURE les lettres minuscules correspondant aux majuscules qui constituent les symboles PICTURE A, B, E, G, N, P, S, V, X, Z, CR et DB sont équivalentes à leur représentation en majuscules dans ce type de chaîne. Aucune autre lettre minuscule n'est équivalente à sa représentation correspondante en majuscules.
- *NOCRTARKIDX
- Les index de clés d'enregistrement de remplacement (ARK) temporaires ne sont pas créés si les enregistrements permanents sont introuvables.
- *CRTARKIDX
- Les index de clés d'enregistrement de remplacement (ARK) temporaires sont créés si les enregistrements permanents sont introuvables.
Options de conversion (CVTOPT)
Indique la façon dont le compilateur gère les types de zone suivants : date, heure, horodatage, et alphanumérique à longueur variable et en virgule flottante, transmis à votre programme à partir de fichiers à description externe via COPY DDS. Les valeurs possibles sont les suivantes :
- *NOVARCHAR
- Les zones de longueur variable sont déclarées en tant que zones FILLER.
- *VARCHAR
- Les zones de longueur variable sont déclarées en tant qu'éléments de groupe et sont accessibles au programme source ILE COBOL.
- *NODATETIME
- Les zones de type date, heure et horodatage sont déclarées en tant que zones FILLER.
- *DATETIME
- Des noms d'éléments de données COBOL sont attribués aux zones de type date, heure et horodatage en fonction de leurs noms DDS. La catégorie des éléments de données COBOL est alphanumérique, sauf si l'un des paramètres CVTOPT a la valeur *DATE, *TIME ou *TIMESTAMP. Dans ce cas, la catégorie de l'élément de données COBOL est de type date, heure ou horodatage, respectivement.
- *NOPICXGRAPHIC
- Considérations DBCS : non applicable.
- *PICXGRAPHIC
- Considérations DBCS : non applicable.
Considérations DBCS : non applicable.
- *PICGGRAPHIC
- Considérations DBCS : non applicable.
Considérations DBCS : non applicable.
- *NOPICGGRAPHIC
- Considérations DBCS : non applicable.
- *NOFLOAT
- Les zones en virgule flottante sont déclarées en tant que zones FILLER avec pour USAGE BINARY.
- *FLOAT
- Les zones en virgule flottante sont insérées dans le programme avec leur nom DDS et un USAGE COMP-1 (simple précision) ou COMP-2 (double précision). Ces zones sont rendues accessibles au programme source ILE COBOL.
- *NODATE
- Les zones de type date DDS sont déclarées comme éléments de données COBOL de catégorie alphanumérique ; par exemple :
06 FILLER PIC X(10).
Le nom de l'élément de données COBOL est déterminé par le paramètre *NODATETIME/*DATETIME CVTOPT.
- *DATE
- Les zones de type date DDS sont déclarées comme éléments de données COBOL de catégorie date ; par exemple :
06 FILLER FORMAT DATE 'àY-%m-%d'.
Le nom de l'élément de données COBOL est déterminé par le paramètre *NODATETIME/*DATETIME CVTOPT.
- *NOTIME
- Les zones de type heure DDS sont déclarées comme éléments de données COBOL de catégorie alphanumérique ; par exemple :
06 FILLER PIC X(8).
Le nom de l'élément de données COBOL est déterminé par le paramètre *NODATETIME/*DATETIME CVTOPT.
- *TIME
- Les zones de type heure DDS sont déclarées comme éléments de données COBOL de catégorie heure ; par exemple :
06 FILLER FORMAT TIME '%H:%M:%S'.
Le nom de l'élément de données COBOL est déterminé par le paramètre *NODATETIME/*DATETIME CVTOPT.
- *NOTIMESTAMP
- Les zones de type horodatage DDS sont déclarées comme éléments de données COBOL de catégorie alphanumérique, par exemple :
06 FILLER PIC X(26).
Le nom de l'élément de données COBOL est déterminé par le paramètre *NODATETIME/*DATETIME CVTOPT.
- *TIMESTAMP
- Les zones de type horodatage DDS sont déclarées comme éléments de données COBOL de catégorie horodatage, par exemple :
06 FILLER FORMAT TIMESTAMP.
Le nom de l'élément de données COBOL est déterminé par le paramètre *NODATETIME/*DATETIME CVTOPT.
- *NOCVTTODATE
- Les types de données DDS auxquels le mot clé DATFMT est associé (à l'exception du type de données de date DDS) sont déclarés dans ILE COBOL en fonction de leur type DDS d'origine.
- *CVTTODATE
- Les types de données DDS auxquels le mot clé DATFMT est associé (à l'exception des types de données de date DDS) sont déclarés dans ILE COBOL en tant que types de données de date.
- *NOPICNGRAPHIC
- Considérations DBCS : non applicable.
- *PICNGRAPHIC
- Considérations DBCS : non applicable.
Limite de messages (MSGLMT)
Indique le nombre maximal de messages d'un niveau de gravité donné admis pour chaque unité de compilation avant l'arrêt de la compilation. Dès qu'une unité de compilation atteint ce maximum de messages, la compilation s'arrête pour tout le membre source.
Par exemple, si vous indiquez un nombre maximal de messages égal à 3 et un niveau de gravité égal à 20, la compilation s'arrête s'il se produit trois erreurs (ou plus) d'un niveau de gravité de 20 ou plus. Si aucun message n'atteint ou ne dépasse le niveau de gravité indiqué, la compilation se poursuit quel que soit le nombre d'erreurs survenues.
- nombre-messages
- Indique le nombre maximal de messages. Les valeurs possibles sont les suivantes :
- *NOMAX
- La compilation se poursuit jusqu'à la fin quel que soit le nombre des erreurs détectées.
- nombre-maximal
- Indique le nombre maximal de messages atteignant ou dépassant le niveau de gravité indiqué à partir duquel la compilation s'arrête. Les valeurs admises sont comprises entre 0 et 9999.
- niveau-gravité-message
- Indique le niveau de gravité à partir duquel la compilation s'arrête. Les valeurs possibles sont les suivantes :
- 30
- La compilation s'arrête si le nombre d'erreurs d'un niveau de gravité égal ou supérieur à 30 dépasse le nombre maximal de messages indiqué.
- niveau-gravité
- Entrez un nombre à un ou deux chiffres compris entre 0 et 30 afin de définir le niveau de gravité entraînant l'arrêt de la compilation. La compilation s'interrompt si le nombre d'erreurs dont le niveau de gravité est égal ou supérieur à celui-ci dépasse le nombre maximal de messages indiqué.
Option de vue de débogage (DBGVIEW)
Indique les options définissant les vues du programme source ou de la liste générée disponibles pour le débogage du module compilé et si la vue de liste de débogage est condensée ou non.
- vue-débogage
- Indiquez les vues qui doivent être disponibles pour débogage. Les valeurs possibles sont les suivantes :
- *STMT
- Le module compilé peut être débogué à l'aide de noms symboliques et de numéros d'instruction.
- *SOURCE
- Le membre source principal, ainsi que les membres source copiés et inclus via des instructions COPY, possèdent des vues source disponibles pour le débogage du module compilé. Ces dernières sont disponibles uniquement si les membres proviennent de fichiers source base de données locaux. Ne modifiez pas les membres et ne les supprimez pas dans l'intervalle entre la compilation et le débogage.
- *LIST
- Une vue de liste, qui affiche le code source après le traitement de toute instruction COPY ou REPLACE, sera rendue disponible pour le débogage du module compilé. Cette option permet d'augmenter la taille du module compilé, sans affecter les performances d'exécution de celui-ci.
Lorsque les options de compilation correspondantes sont demandées, la vue de liste peut comprendre la liste des références croisées, la mappe de division de données et le nombre d'utilisations des instructions. Par exemple, elle comprend une liste des références croisées si OPTION(*XREF) est spécifié.
Les vues de liste peuvent être générées quelle que soit la provenance des membres source principaux ou copiés. Elles ne sont pas affectées par les modifications ou la suppression des membres source à la suite de la compilation.
- *ALL
- Equivaut à combiner *STMT, *SOURCE et *LIST.
- *NONE
- Le module compilé ne peut pas être débogué. Ceci réduit la taille du programme compilé, mais n'affecte pas ses performances d'exécution. Lorsque cette option est indiquée, il est impossible d'effectuer un cliché formaté.
- compression-vue-liste
- Indique si la vue de liste est condensée ou non lorsque la valeur *LIST ou *ALL est spécifiée dans la vue de débogage. Les valeurs possibles sont les suivantes :
- *NOCOMPRESSDBG
- La vue de liste n'est pas condensée.
- *COMPRESSDBG
- La vue de liste est condensée lorsque la valeur *LIST ou *ALL est spécifiée dans la vue de débogage.
Clé de chiffrement de débogage (DBGENCKEY)
Indique la clé de chiffrement utilisée pour chiffrer la source du programme intégrée dans les vues de débogage.
- *NONE
- Aucune clé de chiffrement n'est indiquée.
- valeur-caractère
- Indiquez la clé utilisée pour chiffrer la source du programme intégrée dans les vues de débogage stockées dans l'objet module. La longueur de la clé peut être comprise entre 1 et 16 octets. Une clé dont la longueur est comprise entre 1 et 15 octets peut passer à 16 octets, des blancs étant utilisés pour le chiffrement. Spécifier une clé de longueur nulle revient à spécifier *NONE.
Si la clé contient des caractères non invariants sur toutes les pages de codes, il appartient à l'utilisateur de vérifier que le système cible utilise la même page de codes que le système source ; sinon, il est possible que la clé ne corresponde pas et que le déchiffrement échoue. Si la clé de chiffrement doit être tapée sur des systèmes utilisant des pages de codes différentes, la clé devra si possible être constituée de caractères invariants pour toutes les pages de codes EBCDIC.
Niveau d'optimisation (OPTIMIZE)
Indique le niveau d'optimisation du module.
Remarque :L'utilisateur peut remplacer le niveau d'optimisation du module à l'aide de la commande CHGMOD, CHGPGM ou CHGSRVPGM sans devoir recompiler le programme source, sauf si la valeur d'option *NEVER a été sélectionnée.
Les valeurs possibles sont les suivantes :
- *NONE
- Aucune optimisation n'est effectuée sur le module compilé. Le temps de compilation est minimisé lorsque cette option est utilisée. Elle permet d'afficher et de modifier les variables lors du débogage.
- *BASIC
- Une optimisation partielle (au niveau du bloc local uniquement) est effectuée sur le module compilé. Cette option permet d'afficher les variables pendant le débogage, mais pas de les modifier.
- *FULL
- Une optimisation complète (au niveau global) est effectuée sur le module compilé. Elle augmente la durée de la compilation, mais génère un code optimal. Cette option permet d'afficher les variables pendant le débogage, mais pas de les modifier. Les valeurs des variables affichées peuvent ne pas être les valeurs en cours et certaines variables peuvent ne pas être affichables.
- *NEVER
- Aucune optimisation n'est effectuée sur le programme compilé et son optimisation ne pourra pas être modifiée ultérieurement.
Marquage FIPS (FLAGSTD)
Indique les options du marquage FIPS. Sélectionnez l'option *LINENUMBER afin de vous assurer que les numéros de référence utilisés dans les messages FIPS sont uniques. Les valeurs possibles sont les suivantes :
- *NOFIPS
- Le programme source ILE COBOL ne comporte pas de marquage FIPS.
- *MINIMUM
- Marquage FIPS pour sous-ensemble minimal et supérieur.
- *INTERMEDIATE
- Marquage FIPS pour sous-ensemble intermédiaire et supérieur.
- *HIGH
- Marquage FIPS pour sous-ensemble élevé.
- *NOOBSOLETE
- Les éléments de langage obsolètes ne sont pas marqués.
- *OBSOLETE
- Les éléments de langage obsolètes sont marqués.
Options d'affichage étendu (EXTDSPOPT)
Indique les options à utiliser pour les instructions étendues ACCEPT et DISPLAY pour les E-S de poste de travail. Les valeurs possibles sont les suivantes :
- *DFRWRT
- Les instructions étendues DISPLAY sont retenues en mémoire tampon jusqu'à ce qu'une instruction étendue ACCEPT soit détectée ou que la mémoire tampon soit pleine.
Le contenu de la mémoire tampon est envoyé à l'écran lorsque l'instruction étendue ACCEPT est détectée ou lorsque la mémoire tampon est pleine.
- *NODFRWRT
- Les instructions étendues DISPLAY sont exécutées au fur et à mesure qu'elles sont détectées.
- *UNDSPCHR
- Les caractères affichables et non affichables sont gérés par les instructions étendues ACCEPT et DISPLAY.
- *NOUNDSPCHR
- Seuls les caractères affichables sont gérés par les instructions étendues ACCEPT et DISPLAY.
Vous devez utiliser cette option pour les claviers-écrans reliés aux contrôleurs éloignés 3174 et 3274, mais pouvez aussi l'utiliser pour des postes de travail locaux. Vos données doivent se composer uniquement de caractères affichables. Si elles comportent des valeurs inférieures à la valeur hexadécimale 20, vous risquez d'obtenir des résultats imprévisibles, notamment des formats d'affichage inattendus et éventuellement des erreurs graves.
- *ACCUPDALL
- Tous les types de données sont préaffichés dans les instructions étendues ACCEPT, que l'expression UPDATE soit présente ou non.
- *ACCUPDNE
- Seules les données numériques éditées sont préaffichées dans les instructions étendues ACCEPT ne contenant pas l'expression UPDATE.
Gravité pour marquage (FLAG)
Indique le niveau de gravité minimal des messages apparaissant dans la liste de compilation. Les valeurs possibles sont les suivantes :
- 0
- Tous les messages apparaissent dans la liste de compilation.
- niveau-gravité
- Entrez un nombre à un ou deux chiffres indiquant le niveau minimal de gravité des messages que vous souhaitez voir figurer dans la liste de compilation. Les messages dont le niveau de gravité est égal ou supérieur à la valeur précisée apparaîtront dans la liste de compilation.
Remplacement du module (REPLACE)
Indique si un nouveau module est créé lorsqu'il existe un module du même nom dans la bibliothèque indiquée ou implicite. Les valeurs possibles sont les suivantes :
- *YES
- Un nouveau module est créé et remplace tout module du même nom dans la bibliothèque indiquée ou implicite. Le module est transféré dans la bibliothèque QRPLOBJ.
- *NO
- Aucun nouveau module n'est créé s'il existe déjà un module du même nom dans la bibliothèque indiquée ou implicite. Le module existant n'est pas remplacé, un message s'affiche et la compilation s'arrête.
Droits (AUT)
Indique les droits accordés aux utilisateurs ne possédant pas de droits spécifiques sur l'objet module, ne figurant pas dans la liste d'autorisation ou dont le groupe ne dispose d'aucun droit spécifique sur l'objet module. Vous pouvez modifier les droits de tous les utilisateurs ou de certains d'entre eux seulement après la création du module, à l'aide de la commande GRTOBJAUT (Accorder droits sur un objet) ou RVKOBJAUT (Révoquer droits sur un objet).
Les valeurs possibles sont les suivantes :
- *LIBCRTAUT
- Les droits publics sur l'objet sont définis par le mot clé CRTAUT de la bibliothèque cible qui doit contenir l'objet module créé. Cette valeur est déterminée lors de la création du module. Si la valeur CRTAUT de la bibliothèque est modifiée après la création du module, la nouvelle valeur n'affecte pas les objets existants.
- *ALL
- Fournit les droits permettant d'effectuer toutes les opérations sur le module, sauf celles réservées au propriétaire ou définies par les droits de gestion de la liste d'autorisation. L'utilisateur peut gérer l'existence du module, définir sa sécurité, le modifier et exécuter des fonctions de base, mais ne peut en modifier la propriété.
- *CHANGE
- Fournit la totalité des droits sur les données et les droits permettant d'effectuer toutes les opérations sur le module, sauf celles réservées au propriétaire ou définies par les droits sur l'objet et les droits de gestion de l'objet. L'utilisateur peut modifier l'objet et exécuter des fonctions de base.
- *USE
- Fournit des droits opérationnels sur l'objet et des droits en lecture. L'utilisateur peut effectuer des opérations de base sur l'objet mais ne peut pas le modifier.
Remarque :Un utilisateur doit disposer des droits *USE sur un programme pour pouvoir obtenir un cliché formaté des variables de celui-ci. Pour permettre un cliché des variables, ce programme doit également comporter des informations observables.
Si vous ne souhaitez pas que certains utilisateurs puissent effectuer un cliché des variables, accordez-leur uniquement les droits *OBJOPR et *EXECUTE sur le programme ou sur le programme de service contenant le module. Ces utilisateurs pourront ainsi appeler le programme mais pas effectuer un cliché de ses variables. Utilisez les commandes EDTOBJAUT, GRTOBJAUT ou RVKOBJAUT pour modifier les droits du programme ou du programme de service créé.
Si vous voulez qu'aucun utilisateur ne puisse effectuer de cliché des variables, supprimez les informations observables à l'aide de la commande CHGMOD sur le module, ou à l'aide de la commande CHGPGM ou CHGSRVPGM sur le programme contenant le module.
- *EXCLUDE
- L'utilisateur ne peut pas accéder à l'objet module.
- nom-liste-autorisation
- Nom de la liste d'autorisation, répertoriant les utilisateurs et les droits, à laquelle le module est ajouté. L'objet module est protégé par cette liste. Les droits publics sur le module sont définis par *AUTL. La liste d'autorisation doit exister sur le système lorsque la commande CRTCBLMOD est émise. Pour créer votre propre liste d'autorisation, utilisez la commande CRTAUTL.
Littéral de lien (LINKLIT)
Indique le type de liens de la cible "littérale" CALL/CANCEL externe et la cible SET ENTRY. Pour les listes de la cible "littérale" CALL/CANCEL externe spécifique et de la cible SET ENTRY, vous pouvez substituer une autre valeur à cette option en incluant la phrase suivante dans le paragraphe SPECIAL-NAMES :
LINKAGE TYPE IS nom-système FOR liste-cible.
Les valeurs possibles de LINKLIT sont les suivantes :
- *PGM
- La cible de CALL/CANCEL ou de SET ENTRY est un objet programme.
- *PRC
- La cible de CALL/CANCEL ou de SET ENTRY est une procédure ILE.
Edition cible (TGTRLS)
Indique l'édition du système d'exploitation sur lequel vous souhaitez utiliser l'objet module en cours de création. Dans les exemples fournis pour les valeurs *CURRENT et *PRV, et lorsque vous définissez une valeur pour l' édition-cible , le format VxRxMx est utilisé pour spécifier l'édition, Vx étant la version, Rx, l'édition et, Mx, le niveau de modification. Par exemple, V2R3M0 signifie version 2, édition 3, niveau de modification 0.
Les valeurs admises pour ce paramètre varient d'une édition à une autre. Les valeurs possibles sont les suivantes :
- *CURRENT
- L'objet sera utilisé avec l'édition du système d'exploitation en cours sur le système. Par exemple, si votre système est doté de la V2R3M5 et que vous indiquez *CURRENT, l'objet sera utilisé sur un système doté de la V2R3M5. Il peut également être utilisé sur un système doté d'une édition postérieure à celle du système d'exploitation installé.
Remarque :Si votre système est doté de la V2R3M5 et que l'objet doit être utilisé sur un système doté de la V2R3M0, indiquez TGTRLS(V2R3M0) au lieu de TGTRLS(*CURRENT).
- *PRV
- L'objet sera utilisé avec l'édition précédente, niveau de modification 0 du système d'exploitation. Par exemple, si le système est doté de la V2R3M5 et que vous indiquez *PRV, l'objet sera utilisé sur un système doté de la V2R2M0. Il peut également être utilisé sur un système doté d'une édition postérieure à celle du système d'exploitation installé.
- édition-cible
- Indiquez le niveau de l'édition au format VxRxMx. L'objet pourra être utilisé sur un système doté de l'édition spécifiée ou d'une édition postérieure à celle du système d'exploitation installé.
Les valeurs admises dépendent de la version, de l'édition et du niveau de modification en cours et varient avec chaque nouvelle édition. Si vous indiquez un niveau d' édition cible antérieur au plus ancien niveau d'édition pris en charge par cette commande, un message d'erreur est émis pour vous indiquer la plus ancienne édition prise en charge.
Remarque :Il se peut que la version en cours de la commande prenne en charge des options qui ne sont pas disponibles dans les éditions précédentes de la commande. Si la commande est utilisée pour créer des objets qui doivent être utilisés avec une édition précédente, elle est traitée par le compilateur adapté à cette édition et toute option non prise en charge n'est pas reconnue. Le compilateur n'envoie pas nécessairement de message d'avertissement.
Séquence de tri (SRTSEQ)
Indique la séquence de tri utilisée lorsque NLSSORT est associé à un nom d'alphabet dans la clause ALPHABET. Le paramètre SRTSEQ est combiné au paramètre LANGID afin de déterminer quelle table définie par le système ou par l'utilisateur sera utilisée par le module. Les valeurs possibles sont les suivantes :
- *HEX
- Aucune table de séquence de tri n'est sélectionnée. Les valeurs hexadécimales des caractères sont utilisées pour définir la séquence de tri.
- *JOB
- La séquence de tri sera résolue et associée au module lors de la compilation à l'aide de la séquence de tri du travail de compilation. La table de séquence de tri doit déjà exister sur le système au moment de la compilation. Si, lors de l'exécution, le CCSID du travail d'exécution diffère de celui du travail de compilation, la table de séquence de tri chargée à la compilation est convertie afin de correspondre au CCSID du travail d'exécution.
- *JOBRUN
- La séquence de tri du programme sera résolue et associée au module lors de l'exécution. Lors de la compilation, le compilateur associe la séquence de tri du travail de compilation au module. Lors de l'exécution, cette séquence de tri est remplacée par celle associée au travail lors de l'exécution. Cette valeur permet de compiler un module une seule fois et de l'utiliser ensuite avec différentes séquences de tri à l'exécution.
- *LANGIDUNQ
- Indique que la table de séquence de tri utilisée doit contenir un poids unique pour chaque caractère de la page de codes. La table utilisée est la table à poids uniques associée à la langue indiquée au paramètre LANGID.
- *LANGIDSHR
- Indique que la table de séquence de tri utilisée peut contenir le même poids pour plusieurs caractères de la page de codes. La table utilisée est la table à poids partagés associée à la langue indiquée au paramètre LANGID.
- nom-table
- Entrez le nom de la table de séquence de tri à utiliser. Cette table contient les poids de tous les caractères d'une page de codes donnée. Un poids est associé au caractère défini au point de code. Lorsque vous indiquez un nom de table de séquence de tri, vous pouvez également préciser la bibliothèque dans laquelle réside l'objet. Les valeurs possibles pour la bibliothèque sont les suivantes :
- *LIBL
- La bibliothèque contenant la table de séquence de tri est recherchée dans la liste des bibliothèques.
- *CURLIB
- La bibliothèque en cours est utilisée. Si vous n'en avez défini aucune, QGPL est utilisée par défaut.
- nom-bibliothèque
- Entrez le nom de la bibliothèque dans laquelle se trouve la table de séquence de tri.
Identificateur de langue (LANGID)
Identificateur de langue utilisé avec la séquence de tri. Le paramètre LANGID est utilisé uniquement lorsque la valeur SRTSEQ active est *LANGIDUNQ ou *LANGIDSHR. Les valeurs possibles sont les suivantes :
- *JOBRUN
- L'identificateur de langue du programme sera résolu lors de l'exécution. Lorsque le programme compilé est exécuté, l'identificateur de langue du travail est utilisé. Cette valeur permet de compiler une seule fois un module et de l'utiliser ensuite avec différents identificateurs de langue lors de l'exécution.
- *JOB
- L'identificateur de langue du module sera résolu lors de la compilation.
- nom-identificateur-langue
- Entrez un identificateur de langue de 3 caractères.
Collecte performances possible (ENBPFRCOL)
Indique si le code de mesure des performances doit être généré dans le module ou dans le programme. Les données collectées peuvent être utilisées par l'outil de mesure des performances du système pour établir le profil des performances d'une application. L'ajout du code de mesure des performances dans un programme ou un module compilé entraîne la génération d'objets légèrement plus volumineux et peut affecter les performances.
- *PEP
- Les statistiques de performance sont collectées à l'entrée et à la sortie de la procédure d'entrée de programme uniquement. Choisissez cette valeur si vous voulez collecter les données de performance générales d'une application. Ceci équivaut au support fourni à l'aide de l'outil TPST. Il s'agit de la valeur par défaut.
- *ENTRYEXIT
- Les statistiques de performance sont collectées à l'entrée et à la sortie de toutes les procédures du programme, y compris du programme *PEP.
Cette valeur vous permet de capturer des informations sur tous les programmes. Utilisez-la si tous les programmes appelés par votre application ont été compilés avec l'option *PEP, *ENTRYEXIT ou *FULL. Si les programmes appelés par votre application ne sont pas activés pour la mesure des performances, l'outil de mesure des performances transfère leur utilisation de ressources dans votre application. Dans ce cas, il est très difficile de déterminer où sont utilisées les ressources.
- *FULL
- Les statistiques de performance sont collectées à l'entrée et à la sortie de toutes les procédures, ainsi qu'avant et après chaque appel d'une procédure externe.
Utilisez cette option si vous pensez que votre application appellera des programmes non compilés avec l'option *PEP, *ENTRYEXIT ou *FULL. Cette option permet aux outils de mesure des performances de distinguer les ressources utilisées par votre application de celles utilisées par les programmes appelés par celle-ci (même si ces programmes ne sont pas activés pour la mesure des performances). Cette option est la plus coûteuse, mais elle permet d'analyser de manière sélective divers programmes dans une application.
Modèle d'espace mémoire (STGMDL)
Indique le type d'espace mémoire qui sera utilisé par le module.
- *INHERIT
- Le module est créé avec le modèle d'espace mémoire hérité. Un module à modèle d'espace mémoire hérité peut être lié à des programmes et programmes de service utilisant un modèle d'espace mémoire adressable unique, hérité ou à téraoctets. Le type d'espace mémoire utilisé pour l'espace mémoire statique et automatique des programmes à modèle d'espace mémoire adressable unique et à téraoctets correspond au modèle d'espace mémoire de l'objet. Un objet de modèle d'espace mémoire hérité hérite du modèle d'espace mémoire de son programme appelant.
- *SNGLVL
- Le module est créé avec le modèle d'espace mémoire adressable unique. Un module à modèle d'espace mémoire adressable unique ne peut être lié qu'à des programmes et programmes de service utilisant l'espace mémoire adressable unique. Ces programmes et programmes de service utilisent l'espace mémoire adressable unique pour l'espace mémoire statique et automatique.
- *TERASPACE
- Le module est créé avec le modèle d'espace mémoire à téraoctets. Un module à modèle d'espace mémoire à téraoctets ne peut être lié qu'à des programmes et programmes de service utilisant l'espace mémoire à téraoctets. Ces programmes et programmes de service utilisent l'espace mémoire à téraoctets pour l'espace mémoire statique et automatique.
Données de profilage (PRFDTA)
Indique l'attribut de données de profilage de programme correspondant au module. Le profilage de programme est une technique d'optimisation évoluée consistant à réorganiser les procédures et le code qu'elles contiennent en fonction de données statistiques (les données de profilage).
- *NOCOL
- La collecte des données de profilage n'est pas activée pour ce module. Il s'agit de la valeur par défaut.
- *COL
- La collecte de données de profilage est activée pour ce module.
Remarque :*COL ne peut être indiqué que si le niveau d'optimisation du module a pour valeur *FULL.
ID codé de jeu de caractères (CCSID)
Indique le CCSID dans lequel sont convertis les enregistrements de fichiers et les données associées aux environnements locaux lors de l'exécution.
- *JOBRUN
- Le CCSID du programme est résolu lors de l'exécution. Lorsque le programme compilé est exécuté, le CCSID par défaut du travail en cours est utilisé.
- *JOB
- Le CCSID par défaut du travail en cours lors de la compilation est utilisé.
- *HEX
- Le CCSID 65535 est utilisé, ce qui indique que les données se trouvant dans les zones sont considérées comme des données de type bit et ne sont pas converties.
- id-jeu-caractères-codés
- Indique le CCSID à utiliser.
CCSID national (NTLCCSID)
Indique l'ID de jeu de caractères codés national (NTLCCSID) qui sera utilisé pour tous les éléments de données nationaux. Les valeurs possibles sont les suivantes :
- 13488
- Le CCSID UCS-2 13488 est utilisé pour tous les éléments de données nationaux.
- id-jeu-caractères-codés
- Le CCSID indiqué est utilisé pour tous les éléments de données nationaux. Le CCSID indiqué doit être compatible UCS-2, par exemple, UTF-16 CCSID 1200.
Mode arithmétique (ARITHMETIC)
Spécifie le mode arithmétique associé aux données numériques. Les valeurs possibles sont les suivantes :
- *NOEXTEND
- Cette option indique le mode arithmétique utilisé par défaut pour les données numériques. Le résultat intermédiaire d'une expression arithmétique à point fixe peut comporter jusqu'à 30 chiffres et les littéraux numériques ne peuvent comporter que 18 chiffres au maximum.
- *EXTEND31
- Cette option vous permet d'augmenter la précision des résultats intermédiaires pour le mode arithmétique à point fixe. Le résultat intermédiaire d'une expression arithmétique à point fixe peut comporter jusqu'à 31 chiffres et la longueur maximale des littéraux numériques est limitée à 31 chiffres.
- *EXTEND31FULL
- Cette option vous permet d'augmenter la précision des résultats intermédiaires pour le mode arithmétique à point fixe. utilisez également cette option pour optimiser la précision des fonctions intrinsèques numériques. Le résultat intermédiaire d'une expression arithmétique à point fixe peut comporter jusqu'à 34 chiffres et la longueur maximale des littéraux numériques est limitée à 34 chiffres.
- *EXTEND63
- Cette option vous permet d'augmenter la précision des résultats intermédiaires pour le mode arithmétique à point fixe. Le résultat intermédiaire d'une expression arithmétique à point fixe peut comporter jusqu'à 63 chiffres et la longueur maximale des littéraux numériques est limitée à 63 chiffres.
Caractère de remplissage (NTLPADCHAR)
Spécifie le caractère de remplissage national (NTLPADCHAR) utilisé lorsqu'une opération de remplissage a lieu dans les cas de conversion suivants :
1. Caractère SBCS en caractère national.
2. Caractère DBCS en caractère national.
3. Caractère national en caractère national.
- *DEFAULT
- Cette option indique les caractères de remplissage par défaut :
1. Caractère SBCS en caractère national (NX"0020")
2. Caractère DBCS en caractère national (NX"3000")
3. Caractère national en caractère national (NX"3000")
- littéral hexadécimal national
- Indique tout littéral hexadécimal national admis de 1 caractère au format NX" " ou NX' '.
Options microcode sous licence (LICOPT)
Spécifie une ou plusieurs options de compilation pour le microcode sous licence. Ce paramètre vous permet de sélectionner des options de compilation. Il s'adresse aux programmeurs expérimentés qui sont conscients des gains potentiels liés à chaque type d'option de compilation sélectionné.
Inclusion répertoire (INCDIR)
Indique un ou plusieurs répertoires à ajouter au chemin de recherche utilisé par le compilateur pour rechercher des fichiers de copie. Le compilateur recherche les répertoires indiqués à cet endroit si les fichiers de copie du programme source ne peuvent pas être convertis.
- *NONE
- Aucun répertoire utilisateur n'est parcouru pour rechercher les fichiers de copie. Par défaut, le répertoire courant est parcouru.
- 'répertoire'
- Indiquez jusqu'à 32 répertoires dans lesquels rechercher les fichiers de copie. Outre les répertoires indiqués, les fichiers de copie sont également recherchés dans le répertoire courant.
Infos interface programme (PGMINFO)
Spécifie des options indiquant si des informations d'interface du programme doivent être générées.
- Générer
- Spécifie si les informations d'interface de programme doivent être générées. Les valeurs possibles sont les suivantes :
- *NO
- Cette option indique l'option par défaut qui ne génère pas d'informations d'interface du programme.
- *PCML
- Indique que le langage de marquage d'appel de programme (PCML) doit être généré. Grâce au PCLM généré, les méthodes JAVA appellent plus facilement la procédure du module COBOL en utilisant moins de code Java.
- Emplacement
- Spécifie l'emplacement pour les informations sur le programme généré, si le paramètre Générer est *PCML. Les valeurs possibles sont les suivantes :
- *STMF
- Indique que les informations du programme doivent être générées dans un fichier de communication. Le nom du fichier de communication qui contient les informations générées doit être indiqué dans l'option INFOSTMF.
- *MODULE
- Indique que les informations du programme doivent être stockées dans le module COBOL.
- *ALL
- Indique que les informations du programme doivent être générées dans un fichier de communication et stockées dans le module. Le nom du fichier de communication qui contient les informations générées doit être indiqué dans l'option INFOSTMF.
Fichier interface programme (INFOSTMF)
Indique le nom du chemin d'accès du fichier de communication qui doit contenir les informations d'interface du programme générées indiquées dans l'option PGMINFO.
Le nom du chemin d'accès peut être soit complet soit relatif. Un nom de chemin d'accès complet commence par '/'; un nom de chemin d'accès relatif commence par un caractère différent de '/'.
S'il est qualifié de complet, le nom de chemin d'accès est en entier. S'il est qualifié de relatif, le nom de chemin d'accès est complété par le nom du répertoire de travail en cours.
Ce paramètre est uniquement indiqué lorsque le paramètre PGMINFO prend une valeur différente de *NO.
Définir des noms (DEFINE)
Indique une ou plusieurs variables de compilation définies avant le début de la compilation.
- *NONE
- Aucune variable de compilation n'est définie.
- 'nom', 'nom=valeur', 'nom, valeur' ou 'nom en tant que valeur'
- Indiquez jusqu'à 32 variables de compilation et les valeurs qui leur sont associées. La longueur combinée du nom de la variable de compilation et de la valeur qui lui est associée est limitée à 80 caractères.
Si l'option 'nom' est spécifiée, cela équivaut à une directive DEFINE '>> DEFINE name b"1"' .
Si l'option 'valeur' est spécifiée, il peut s'agir d'un littéral booléen, d'un littéral non numérique ou d'un entier.
Exemples
Exemple 1 : compilation d'un programme source dans un objet module
CRTCBLMOD MODULE(BIB/EXEMPLE1) SRCFILE(BIB/QCBLLESRC)
SRCMBR(EXEMPLE1) OUTPUT(*PRINT)
TEXT('Module ILE COBOL')
Cette commande permet d'appeler le compilateur ILE COBOL pour créer un module appelé EXEMPLE1. Le programme source réside dans le membre EXEMPLE1 du fichier source QCBLLESRC de la bibliothèque BIB. Une liste de compilation est créée.
Messages d'erreur
Messages *ESCAPE
- LNC9001
- La compilation a échoué. &1 non créé.
- LNC9006
- TGTRLS(&1) indiqué, mais compilateur non installé.
- LNC9007
- La bibliothèque de logiciel est endommagée ou l'utilisateur n'est pas autorisé à l'utiliser.
- LNC9015
- TGTRLS(&1) incorrect.
© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.