Commande CL IBM i (AS/400)
CRTCLS
Créer une classe
En bref
La commande Créer une classe permet à l'utilisateur de créer un objet de classe et d'indiquer les attributs que cette dernière contient.
CRTCLS se lit CRT
(Créer) + CLS.
Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.
Syntaxe minimale
CRTCLS CLS(…)
Paramètres
-
CLSClasse obligatoire -
RUNPTYPriorité d'exécution -
TIMESLICETranche de temps -
PURGEAdmis à sortir de mémoire -
DFTWAITTemps d'attente par défaut -
CPUTIMETemps maximal unité traitement -
MAXTMPSTGMémoire temporaire maximale -
MAXTHDNombre max unités exécution -
TEXTTexte 'descriptif' -
AUTDroits
Astuce : dans une session 5250, tapez CRTCLS 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 QSYS)
Où s'exécute : Tous les environnements (*ALL)
Compatible multitâche : Non
La commande Créer une classe permet à l'utilisateur de créer un objet de classe et d'indiquer les attributs que cette dernière contient. La classe détermine les attributs de traitement des travaux pour lesquels elle est utilisée. La classe associée à un travail est définie dans le poste de routage de description de sous-système utilisé pour démarrer le travail. Si le travail comporte plusieurs phases d'activation, la classe utilisée à chacune des phases est indiquée dans le poste de routage utilisé pour démarrer la phase d'activation.
Paramètres
| Mot-clé | Description | Valeurs possibles | Remarques |
|---|---|---|---|
| CLS | Classe | Nom d'objet qualifié | Obligatoire, positionnel 1 |
| Qualificatif 1: Classe | Nom | ||
| Qualificatif 2: Biblio | Nom, *CURLIB | ||
| RUNPTY | Priorité d'exécution | 1-99, 50 | Facultatif |
| TIMESLICE | Tranche de temps | 0-9999999, 2000 | Facultatif |
| PURGE | Admis à sortir de mémoire | *YES, *NO | Facultatif |
| DFTWAIT | Temps d'attente par défaut | 0-9999999, 30, *NOMAX | Facultatif |
| CPUTIME | Temps maximal unité traitement | 1-9999999, *NOMAX | Facultatif |
| MAXTMPSTG | Mémoire temporaire maximale | 1-2147483647, *NOMAX | Facultatif |
| MAXTHD | Nombre max unités exécution | 1-32767, *NOMAX | Facultatif |
| TEXT | Texte 'descriptif' | Valeur caractère, *BLANK | Facultatif |
| AUT | Droits | Nom, *LIBCRTAUT, *CHANGE, *ALL, *USE, *EXCLUDE | Facultatif |
Classe (CLS)
Indique le nom et la bibliothèque utilisés pour la classe.
Ce paramètre est obligatoire.
Qualificatif 1 : Classe
- nom
- Indiquez le nom de la classe.
Qualificatif 2 : Biblio
- *CURLIB
- La classe est créée dans la bibliothèque en cours de l'unité d'exécution. Si celle-ci n'est indiquée, QGPL est prise par défaut.
- nom
- Indiquez le nom de la bibliothèque dans laquelle se trouve la classe.
Priorité d'exécution (RUNPTY)
Indique la priorité d'exécution des travaux qui utilisent la classe. Il s'agit d'une valeur comprise entre 1 (niveau de priorité le plus élevé) et 99 (niveau le plus bas) correspondant à la priorité d'un travail par rapport à d'autres travaux actifs sur l'unité de traitement. Pour les travaux multitâches, la priorité d'exécution représente la plus haute priorité d'exécution admise pour une unité d'exécution contenu dans un travail. Des unités d'exécution peuvent être associées à une priorité plus basse.
Cette valeur représente l'importance relative (et non pas absolue) du travail. Par exemple, un travail dont la priorité d'exécution est de 25 n'est pas deux fois plus important qu'un travail dont la priorité d'exécution est de 50.
- 50
- Les travaux utilisant cette classe ont une priorité d'exécution égale à 50.
- 1-99
- Indiquez la priorité d'exécution des travaux utilisant cette classe.
Tranche de temps (TIMESLICE)
Indique la période de temps processeur maximal, en millisecondes, à accorder à chacune des unités d'exécution d'un travail utilisant cette classe avant que d'autres unités d'exécution de ce travail ou d'autres travaux puissent être exécutées. Cette tranche de temps définit la période nécessaire à une unité d'exécution au sein d'un travail pour effectuer un certain volume de traitement. Une fois la tranche de temps écoulée, l'unité d'exécution peut être mise à l'état inactif, ce qui permet à d'autres unités d'exécution d'être actives dans le pool de mémoire.
- 2000
- Un temps d'exécution maximal de 2000 millisecondes est attribué à chaque unité d'exécution dès qu'elle peut être exécutée.
- 0-9999999
- Indiquez la période maximale, en millisecondes, attribuée à chaque unité d'exécution d'un travail utilisant cette classe pour être exécuté.
Remarque :Bien qu'il soit possible d'indiquer une valeur inférieure à 8, la durée minimale d'exécution d'un traitement par le système est de 8 millisecondes. Si vous affichez les attributs d'exécution d'un travail, vous constaterez que la tranche de temps n'est jamais inférieure à 8.
Admis à sortir de mémoire (PURGE)
Indique si le travail peut être transféré de la mémoire principale à la mémoire secondaire au terme d'une tranche de temps ou bien à l'occasion d'une longue attente (attente de la réponse d'un utilisateur de poste de travail, par exemple). Le système d'exploitation n'utilise plus ce paramètre.
- *YES
- Le travail peut être transféré de la mémoire principale à la mémoire secondaire. Toutefois, un travail à unités d'exécution multiples ne peut jamais être purgé de la mémoire principale.
- *NO
- Le travail ne peut pas être transféré de la mémoire principale à la mémoire secondaire. Toutefois, lorsque de la mémoire principale est nécessaire, les pages appartenant à une unité d'exécution de ce travail peuvent être transférées en mémoire secondaire. Ainsi, lorsqu'une unité d'exécution de ce travail s'exécute de nouveau, ses pages sont rechargées en mémoire principale au fur et à mesure des besoins.
Temps d'attente par défaut (DFTWAIT)
Indique le temps maximal par défaut (en secondes) pendant lequel une unité d'exécution d'un travail attend qu'une instruction système, telle l'instruction machine LOCK, obtienne une ressource. Ce temps d'attente par défaut est utilisé si aucun autre temps d'attente n'est indiqué. En général, il s'agit du temps pendant lequel l'utilisateur du système veut attendre avant de mettre fin à la demande. Si le temps d'attente pour l'exécution d'une instruction est dépassé, un message d'erreur s'affiche, à moins qu'il ne soit géré par la commande MONMSG (Intercepter message).
- 30
- Le temps maximal d'exécution d'une instruction est fixé à 30 secondes.
- *NOMAX
- Aucun temps d'attente maximal n'a été défini.
- 0-9999999
- Indiquez le temps d'attente maximum requis (en secondes) pour que l'instruction obtienne une ressource.
Temps maximal unité traitement (CPUTIME)
Indique le temps UC maximal (en millisecondes) alloué au travail. Si ce dernier est composé de plusieurs phases d'activation, chacune d'elles dispose de ce temps UC maximal. En cas de dépassement du temps maximum, le travail est suspendu.
- *NOMAX
- Le temps UC n'est pas limité.
- 1-9999999
- Indiquez le temps UC maximal (en millisecondes).
Mémoire temporaire maximale (MAXTMPSTG)
Indique le volume maximal de mémoire temporaire (secondaire) (en mégaoctets) utilisable par le travail. Si ce dernier est composé de plusieurs phases d'activation, il s'agit de la mémoire secondaire maximale pouvant être utilisée par une phase d'activation. Cette mémoire temporaire fournit les ressources nécessaires au programme lui-même et aux objets internes du système créés implicitement pour prendre en charge le travail. (Elle n'inclut pas la mémoire des objets de la bibliothèque QTEMP.) En cas de dépassement du volume de mémoire temporaire maximal, le travail est suspendu. Ce paramètre ne s'applique pas à l'utilisation de la mémoire secondaire permanente gérée par le profil utilisateur.
- *NOMAX
- La capacité maximale admise par le système est utilisée.
- 1-2147483647
- Indiquez la quantité maximale de mémoire temporaire (en mégaoctets) utilisable.
Nombre max unités exécution (MAXTHD)
Nombre maximal d'unités d'exécution pouvant être exécutées par un travail à un moment donné. Si plusieurs unités d'exécution sont démarrées simultanément, cette valeur peut être dépassée. Dans ce cas, les unités d'exécution en surnombre pourront s'exécuter jusqu'à la fin de leur traitement. En revanche, aucune nouvelle unité d'exécution ne pourra être démarrée tant que le nombre d'unités d'exécution du travail ne sera pas redescendu en dessous de la valeur maximale.
- *NOMAX
- Il n'existe aucun nombre maximal d'unités d'exécution.
- 1-32767
- Indiquez le nombre d'unités d'exécution pour un travail.
Remarque :Selon les ressources utilisées par les unités d'exécution et celles disponibles sur le système, il se peut que le démarrage d'unités d'exécution supplémentaires soit impossible avant que la valeur maximale ne soit atteinte.
Texte 'descriptif' (TEXT)
Texte décrivant brièvement l'objet.
- *BLANK
- Aucun texte n'est indiqué.
- 'descriptif'
- Indiquez, entre apostrophes, un texte de 50 caractères au maximum.
Droits (AUT)
Indique les droits que vous accordez aux utilisateurs qui n'ont pas de droits spécifiques sur l'objet, qui ne figurent pas sur une liste d'autorisation ou dont le profil de groupe ou les profils du groupe supplémentaire ne disposent pas de droits spécifiques sur l'objet.
- *LIBCRTAUT
- Le droit sur l'objet provient de la valeur indiquée pour le paramètre CRTAUT (Droits pour objets créés) de la bibliothèque dans laquelle l'objet est créé. Si la valeur indiquée pour le paramètre CRTAUT est modifiée, la nouvelle valeur n'affecte pas les objets existants.
- *CHANGE
- L'utilisateur peut effectuer toutes les opérations sur l'objet, à l'exception de celles réservées au propriétaire ou contrôlées par les droits d'existence de l'objet (*OBJEXIST) et de gestion de l'objet (*OBJMGT). L'utilisateur peut réaliser des fonctions de base sur l'objet et le modifier. Le droit *CHANGE fournit le droit d'opération sur l'objet (*OBJOPR) ainsi que les droits sur toutes les données. Si l'objet est une liste d'autorisation, vous pouvez ajouter, modifier ou supprimer des utilisateurs dans cette liste.
- *ALL
- L'utilisateur peut effectuer toutes les opérations, à l'exception de celles réservées au propriétaire ou soumises au droit de gestion de la liste d'autorisation (*AUTLMGT). L'utilisateur a un droit d'existence sur l'objet Il peut également effectuer des fonctions de base sur ce dernier, le modifier, définir son niveau de protection et en transférer la propriété.
- *USE
- L'utilisateur peut effectuer des opérations de base sur l'objet, telles que l'exécution d'un programme ou la lecture d'un fichier. Il ne peut pas le modifier. Le droit d'utilisation (*USE) fournit le droit d'opération sur l'objet (*OBJOPR) ainsi que le droit d'exécution (*EXECUTE).
- *EXCLUDE
- L'utilisateur n'a pas accès à l'objet.
- nom
- Indiquez le nom d'une liste d'autorisation permettant de déterminer les droits sur l'objet. Les droits sur l'objet précisés dans la liste sont accordés aux utilisateurs qui figurent sur cette liste. La liste d'autorisation doit exister à la création de l'objet.
Exemples
CRTCLS CLS(CLASS1) RUNPTY(60) TIMESLICE(900)
TEXT('Cette classe pour tous travaux par lots du Dépt 4836')
Cette commande permet de créer une classe appelée CLASS1. Cette classe est stockée dans la bibliothèque en cours spécifiée pour le travail. Le texte utilisateur 'Cette classe pour tous travaux par lots du Dépt 4836' donne une description de la classe. Les attributs de cette classe fournissent une priorité d'exécution de 60 et une tranche de temps de 900 millisecondes. Si le travail n'est pas terminé au bout de la tranche de temps accordée, il pourra être déplacé hors de la mémoire principale jusqu'à ce qu'une nouvelle tranche de temps lui soit attribuée. Les valeurs par défaut des autres paramètres sont utilisées.
Messages d'erreur
Messages *ESCAPE
- CPF1027
- Vous n'êtes pas autorisé à utiliser la bibliothèque &1.
- CPF1039
- Bibliothèque &1 non trouvée pour la classe.
- CPF1064
- La classe &1 existe déjà dans la bibliothèque &2.
- CPF1067
- Impossible d'allouer la bibliothèque &1.
- CPF2108
- Objet &1, type *&3, non ajouté à la bibliothèque &2.
- CPF2283
- La liste d'autorisation &1 n'existe pas.
- CPF9802
- Non autorisé à l'objet &2 de &3.
- CPF9899
- Erreur lors du traitement de la commande.
© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.