STRCMTCTL
Démarrer contrôle validation
En bref
La commande STRCMTCTL (Démarrer le contrôle de validation) permet d'établir une définition de validation au niveau du travail ou du groupe d'activation.
STRCMTCTL se lit STR
(Démarrer) + CMTCTL.
Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.
Syntaxe minimale
STRCMTCTL LCKLVL(…)
Paramètres
-
LCKLVLNiveau de verrouillage obligatoire -
NFYOBJObjet de notification -
CMTSCOPEPortée définition validation -
TEXTTexte 'descriptif' -
DFTJRNJournal -
OMTJRNEPostes de journal à omettre
Astuce : dans une session 5250, tapez STRCMTCTL 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 : Oui
La commande STRCMTCTL (Démarrer le contrôle de validation) permet d'établir une définition de validation au niveau du travail ou du groupe d'activation. L'espace de nom en cours du travail définit dans quel ASP indépendant la définition de validation est créée. Les fichiers peuvent être ouverts sous contrôle de validation pour cette définition de validation dans deux cas : lorsque les fichiers résident dans ce même ASP ou lorsque les fichiers résident dans *SYSBAS et que la définition de validation n'a aucune ressource enregistrée.
Cette commande permet également d'indiquer le niveau de verrouillage d'enregistrement souhaité pour la définition de validation à établir. En outre, un objet de notification peut être précisé.
Avant d'établir une définition de validation, l'utilisateur doit s'assurer que tous les fichiers base de données devant être ouverts sous contrôle de validation pour une seule transaction de validation sont journalisés. Si vous avez demandé une image des enregistrements après modification uniquement, le système assure implicitement la journalisation des images avant et après modification, pour la durée des modifications apportées aux fichiers ouverts sous cette définition de validation.
Il est possible d'indiquer un journal par défaut dans lequel placer les postes susceptibles de décrire tous les journaux et systèmes impliqués dans un contrôle de validation.
Pour plus de détails sur l'utilisation de la gestion des journaux, reportez-vous au manuel Ensemble de rubriques Journal Management de l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/. Pour plus de détails sur la journalisation liée au contrôle de validation, reportez-vous au manuel Ensemble de rubriques Commitment control de l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/.
Restrictions :
- L'utilisateur doit disposer du droit d'opération et du droit d'ajout sur l'objet désigné, le cas échéant, au paramètre NFYOBJ.
- L'utilisateur doit disposer du droit d'opération et du droit d'ajout sur l'objet désigné, le cas échéant, au paramètre DFTJRN.
Paramètres
| Mot-clé | Description | Valeurs possibles | Remarques |
|---|---|---|---|
| LCKLVL | Niveau de verrouillage | *CHG, *CS, *ALL | Obligatoire, positionnel 1 |
| NFYOBJ | Objet de notification | Valeurs uniques: *NONE Autres valeurs: Liste d'éléments |
Facultatif, positionnel 2 |
| Élément 1: Objet | Nom d'objet qualifié | ||
| Qualificatif 1: Objet | Nom | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| Élément 2: Type d'objet |
Valeurs uniques: *MSGQ, *DTAARA Autres valeurs: Liste d'éléments |
||
| Élément 1: (*MSGQ *DTAARA ou *FILE) | *FILE | ||
| Élément 2: Membre si *FILE | Nom, *FIRST | ||
| CMTSCOPE | Portée définition validation | *ACTGRP, *JOB | Facultatif |
| TEXT | Texte 'descriptif' | Valeur caractère, *DFTTEXT | Facultatif |
| DFTJRN | Journal | Valeurs uniques: *NONE Autres valeurs: Nom d'objet qualifié |
Facultatif |
| Qualificatif 1: Journal | Nom | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| OMTJRNE | Postes de journal à omettre | *NONE, *LUWID | Facultatif |
Niveau de verrouillage (LCKLVL)
Niveau par défaut de verrouillage des enregistrements pour la définition de validation à établir.
Ce paramètre est obligatoire.
- *CHG
- Chaque enregistrement devant être mis à jour (pour un fichier ouvert sous contrôle de validation) est verrouillé. Tout enregistrement modifié, ajouté ou supprimé reste verrouillé jusqu'à la prochaine validation ou invalidation de la transaction. Les enregistrements consultés pour mise à jour, mais non modifiés, sont déverrouillés.
- *CS
- Chaque enregistrement consulté pour des fichiers ouverts sous contrôle de validation est verrouillé. Tout enregistrement lu, mais non modifié ou supprimé, est déverrouillé au moment de la lecture d'un autre enregistrement. Tout enregistrement modifié, ajouté ou supprimé est verrouillé jusqu'à validation ou invalidation de la transaction.
- *ALL
- Tout enregistrement lu pour des fichiers ouverts sous contrôle de validation est verrouillé jusqu'à validation ou invalidation de la transaction.
Objet de notification (NFYOBJ)
Nom et type de l'objet où est envoyée une notification concernant l'état d'une transaction pour une définition de validation. L'identificateur de validation de la dernière opération de validation ayant abouti est transféré dans l'objet de notification uniquement aux conditions suivantes :
- Pour une définition de validation de niveau travail, si l'une des conditions suivantes se vérifie :
- Défaillance système
- Arrêt du travail avec modifications non validées
- Arrêt du travail avec un code d'achèvement différent de zéro
- Pour une définition de validation de niveau groupe d'activation, si l'une des conditions suivantes se vérifie :
- Défaillance système
- Arrêt du travail avec modifications non validées
- Arrêt du travail avec un code d'achèvement différent de zéro
- Arrêt anormal du groupe d'activation
- Arrêt du groupe d'activation avec modifications non validées, celles-ci étant invalidées
Dans le cas d'une défaillance système, l'identificateur de validation est placé dans l'objet de notification après le prochain IPL (procédure de chargement initial) ayant abouti. Dans le cas d'un travail s'arrêtant avec des modifications non validées ou avec un code d'achèvement différent de zéro, l'identificateur de validation est placé dans l'objet de notification lors de l'arrêt du travail. Dans le cas d'un groupe d'activation s'arrêtant anormalement ou avec des modifications non validées, le texte de notification est placé dans l'objet de notification lors de l'arrêt du groupe d'activation.
Un identificateur de validation (indiqué pour le paramètre CMTID (Identification validation) de la commande (COMMIT)) peut être défini à chaque opération de validation effectuée pour une définition de validation. Si plusieurs travaux utilisent simultanément le contrôle de validation ou si plusieurs définitions de validation sont utilisées simultanément dans un même travail, chaque définition de validation pour chaque travail doit utiliser un objet de notification unique, ou l'identificateur de validation indiqué doit contenir un texte unique, de sorte que ce texte identifie une seule définition de validation pour un seul travail. Si *NONE est indiqué pour le paramètre CMTID de la commande COMMIT, cette entrée n'est pas prise en compte.
- *NONE
- Aucun texte d'avertissement n'est envoyé en cas d'incident système ou de fin anormale d'un traitement.
- nom-objet
- Indiquez le nom de l'objet (nom-bibliothèque/nom-objet) destiné à recevoir le texte d'avertissement relatif à la dernière transaction validée. Vous devez disposer des droits appropriés sur l'objet indiqué.
Pour la bibliothèque, les valeurs possibles sont les suivantes :
- *LIBL
- La recherche porte sur toutes les bibliothèques de la liste des bibliothèques de l'unité d'exécution en cours jusqu'à ce que la première occurrence soit trouvée.
- *CURLIB
- L'objet est recherché dans la bibliothèque en cours du travail. Si celle-ci n'est pas précisée, QGPL est utilisée par défaut.
- nom-bibliothèque
- Indiquez la bibliothèque dans laquelle se trouve l'objet.
Les types d'objet possibles sont les suivants :
- *MSGQ
- Le texte permettant d'identifier la dernière frontière de validation est placé dans la file d'attente de messages indiquée.
- *DTAARA
- Le texte permettant d'identifier la dernière frontière de validation est placé dans la zone de données indiquée. Celle-ci doit être de type alphanumérique et réservée à ce travail. Le texte est soit complété par des blancs, soit tronqué, afin de remplir la zone de données.
- *FILE
- Le texte permettant d'identifier la dernière frontière de validation est placé dans le fichier physique indiqué.
Les valeurs possibles pour le membre du fichier physique sont les suivantes :
- *FIRST
- Le texte d'avertissement est placé dans le premier membre du fichier physique.
- nom-membre
- Indiquez le nom du membre du fichier physique destiné à recevoir le texte d'avertissement.
Portée définition validation (CMTSCOPE)
Indique la portée de la définition de validation à démarrer.
- *ACTGRP
- Une définition de validation de niveau groupe d'activation est démarrée pour le groupe d'activation associé au programme émettant la commande.
- *JOB
- La définition de validation de niveau travail est démarrée pour le travail.
Texte 'descriptif' (TEXT)
Texte décrivant brièvement la définition de validation à démarrer. Vous trouverez de plus amples détails sur ce paramètre dans l'annexe A du manuel CL Reference.
- *DFTTEXT
- Le système doit fournir un texte descriptif par défaut pour la définition de validation.
- 'descriptif'
- Indiquez, entre apostrophes, un texte de 50 caractères au maximum.
Journal (DFTJRN)
Indique le journal par défaut. Celui-ci contient des postes identifiant chaque ressource impliquée dans une unité d'oeuvre. Des postes peuvent aussi être placés au démarrage ou à la fin de chaque unité d'oeuvre à l'issue d'une validation ou d'une invalidation, selon le paramètre OMTJRNE.
Pour plus d'informations sur le journal par défaut, reportez-vous au manuel Ensemble de rubriques Commitment control de l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/.
Le journal par défaut peut être utilisé pour ajouter une ressource à l'aide de l'API QTNADDCR. Si lors de l'appel de l'API, la valeur spéciale *DFTJRN est indiquée pour le nom du journal, le nom spécifié à ce paramètre DFTJRN est utilisé.
- *NONE
- Aucun journal par défaut n'est indiqué.
Le nom du journal par défaut peut être qualifié de l'une des valeurs suivantes :
- *LIBL
- La recherche porte sur toutes les bibliothèques de la liste des bibliothèques de l'unité d'exécution en cours jusqu'à ce que la première occurrence soit trouvée.
- *CURLIB
- La recherche porte sur la bibliothèque en cours du travail. Si celle-ci n'est pas précisée, QGPL est utilisée par défaut.
- nom-bibliothèque
- Indiquez le nom de la bibliothèque sur laquelle doit porter la recherche.
- nom-journal
- Indiquez le nom du journal par défaut.
Postes de journal à omettre (OMTJRNE)
Indique les postes de journal à omettre du journal par défaut. Si *NONE est indiqué au paramètre DFTJRN, ce paramètre n'est pas pris en compte.
- *NONE
- Aucun poste de journal n'est omis.
- *LUWID
- Le poste de journal contenant l'identificateur d'unité d'oeuvre logique (LUWID) et toutes les ressources impliquées dans cette dernière sont omis si cette unité d'oeuvre logique est validée ou invalidée. Si une erreur se produit pendant l'exécution de l'une ou de l'autre de ces opérations, le poste est toujours envoyé, quelle que soit cette valeur.
Exemples
Exemple 1 : Définition du contrôle de validation de niveau groupe d'activation
STRCMTCTL LCKLVL(*CHG) CMTSCOPE(*ACTGRP) TEXT('Blue Commit Group')
Cette commande, correspondant à la description Blue Commit Group, permet de lancer la validation du groupe d'activation associé au programme qui émet la commande.
Seuls les enregistrements mis à jour, insérés ou supprimés sont verrouillés jusqu'à ce qu'une opération de validation ou d'invalidation arrête la transaction. Aucune identification de la frontière de validation n'est transmise lorsqu'un IPL est effectué à l'issue de l'arrêt anormal du système, du groupe d'activation du travail ou lors de l'arrêt d'un travail ou d'un groupe d'activation avec des modifications non validées ou un code d'achèvement différent de 0.
Exemple 2 : Définition du contrôle de validation de niveau travail
STRCMTCTL LCKLVL(*ALL) NFYOBJ(RCVLIB/MYFILE *FILE IDSAVE)
CMTSCOPE(*JOB) DFTJRN(MGWLIB/MYJRN)
Cette commande permet de lancer la définition de validation de niveau travail. Tous les enregistrements utilisés dans les fichiers ouverts sous contrôle de validation sont verrouillés jusqu'à ce qu'une opération de validation ou d'invalidation arrête la transaction de validation. Si l'arrêt de la transaction de validation implique la mise à jour d'un objet de notification avec l'ID de la dernière opération de validation réussie, l'objet de notification à mettre à jour correspond au membre IDSAVE du fichier MYFILE dans la bibliothèque RCVLIB. Lorsqu'une opération de validation ou d'invalidation est effectuée, un poste répertoriant des informations sur toutes les ressources associées à l'unité d'oeuvre logique est créée dans le journal MYJRN de la bibliothèque MGWLIB.
Messages d'erreur
Messages *ESCAPE
- CPF8351
- Contrôle de validation déjà actif.
- CPF8352
- Attribut incorrect dans objet de notification &1 type *&4.
- CPF8360
- Espace mémoire insuffisant pour l'opération de contrôle de validation.
- CPF8366
- Définition de validation &2 non créée. code raison &1.
- CPF9801
- Objet &2 non trouvé dans la bibliothèque &3.
- CPF9802
- Non autorisé à l'objet &2 de &3.
- CPF9807
- Une ou plusieurs bibliothèques de la liste ont été supprimées.
- CPF9808
- Allocation impossible pour une ou plusieurs bibliothèques de la liste.
- CPF9810
- Bibliothèque &1 non trouvée.
- CPF9815
- Membre &5 du fichier &2 dans &3 non trouvé.
- CPF9820
- Non autorisé à utiliser la bibliothèque &1.
- CPF9830
- Allocation de la bibliothèque &1 impossible.
© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.