Commande CL IBM i (AS/400)
RMVJRNCHG
Enlever modifs journalisées
En bref
La commande RMVJRNCHG permet d'enlever les modifications journalisées d'un objet journalisé donné.
RMVJRNCHG se lit RMV
(Retirer) + JRNCHG.
Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.
Syntaxe minimale
RMVJRNCHG JRN(…)
Paramètres
-
JRNJournal obligatoire -
FILENom du fichier journalisé -
OBJObjets -
RCVRNGPlage de récepteurs de journal -
FROMENTLRGPremier num. séq. maxi -
TOENTLRGDern. num. séq. maxi -
TOJOBONom de travail qualifié -
CMTBDYFrontière de validation -
OPTIONOption -
OBJERROPTOption erreur objet -
OUTPUTSortie -
OUTFILEFichier recevant la sortie -
OUTMBROptions pour membre de sortie -
DETAILDétail -
FROMENTNuméro de séquence de début -
TOENTNuméro de séquence de fin
Astuce : dans une session 5250, tapez RMVJRNCHG 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 RMVJRNCHG permet d'enlever les modifications journalisées d'un objet journalisé donné. Le retrait des modifications journalisées s'effectue entre deux points de repère indiqués. Les postes de journal sont traités dans l'ordre inverse de leur entrée dans le récepteur (par conséquent, du plus récent au plus ancien). Le point de départ peut être le dernier poste de journal de la plage de récepteurs de journal indiquée, le point où a eu lieu la dernière sauvegarde de l'objet ou un poste particulier de la plage de récepteurs. Le point de fin peut être le premier poste de journal, un poste particulier dans la plage de récepteurs de journal indiquée, ou le point où un objet a été ouvert par un travail. Le paramètre CMTBDY permet de gérer les modifications en attente.
Remarque :RMVJRNCHG ne traite aucune modification de niveau objet base de données.
Remarque :La commande DSPJRN (Afficher un journal) permet de déterminer les points de début et de fin.
Une liste d'objets journalisés peut être définie. Les modifications journalisées pour les objets sont supprimées dans l'ordre des postes de journal (c'est-à-dire dans l'ordre inverse des modifications apportées initialement aux objets).
Si un poste code journal J type SX (correspondant à Exit JRNSTATE(*STANDBY)) est trouvé, l'opération s'arrête pour tous les objets quelle que soit la valeur OBJERROPT indiquée. Il peut en résulter une mise à jour partielle d'objets à partir de postes de journal.
La commande peut également s'interrompre pour un objet précis lorsque les postes du journal contiennent des opérations qu'elle ne peut pas réexécuter. Si cela se produit, l'opération se poursuivra pour les autres objets indiqués si OBJERROPT(*CONTINUE) est employé. Par exemple, la commande prend fin pour un objet précis lorsqu'une des situations suivantes se vérifie pour un poste de journal :
- Un fichier base de données physique est mis à blanc
- Un membre de fichier base de données physique est sauvegardé avec libération de mémoire
- La synchronisation du journal à l'IPL échoue
- Le système a déjà appliqué ou enlevé les modifications à l'aide de la commande APYJRNCHG ou RMVJRNCHG.
Pour obtenir la liste complète des différents postes et savoir comment ils sont gérés par cette commande (y compris les postes qui peuvent interrompre la commande), reportez-vous au manuel Ensemble de rubriques Journal Management de l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/ Recherchez "actions d'application ou de retrait de modifications journalisées".
La commande prend également fin en présence de conditions illogiques. Si tel est le cas et s'il est logiquement possible de relancer l'opération, vous pouvez émettre la commande une nouvelle fois pour cet objet, en indiquant un nouveau numéro de séquence de début. Attention cependant : la plupart des conditions illogiques résultent d'un lancement de retrait à un poste inadéquat du journal.
La suppression des modifications journalisées reste possible lorsque les numéros de séquence ont été redéfinis. Le système gère cette condition en envoyant un message d'information et poursuit la suppression des modifications.
Restrictions :
- Cette commande est fournie avec le droit public *EXCLUDE et les profils utilisateur QPGMR et QSRV disposent des droits privés requis pour son utilisation.
- Pour les objets indiqués dans cette commande, les modifications doivent être journalisées dans le journal indiqué et au cours de la période spécifiée par la commande.
- Les images avant sont nécessaires pour les objets. Reportez-vous à la commande de démarrage de journalisation appropriée.
- Les objets indiqués dans la commande sont alloués exclusivement lors du retrait des modifications. Si un objet ne peut pas être alloué dans ces conditions, la commande prend fin et aucune modification journalisée n'est retirée des objets.
- Si aucun poste de journal ne correspond à la valeur indiquée pour le paramètre FROMENTLRG, FROMENT, TOENTLRG ou TOENT, la commande prend fin et aucune modification journalisée n'est retirée des objets.
- Si les numéros de séquence des journaux ont été réinitialisés dans la plage de récepteurs définie et qu'un numéro de séquence est indiqué au paramètre FROMENTLRG, FROMENT, TOENTLRG ou TOENT, la première occurrence du numéro de séquence spécifié pour l'un des paramètres est utilisée.
- Le paramètre TOJOBO ne peut pas être utilisé pour indiquer quand doivent prendre fin les modifications journalisées si un ou plusieurs récepteurs de journal de la plage indiquée étaient attachés au journal défini avec une option de taille du récepteur (RCVSIZOPT) ou une option de données à longueur fixe (FIXLENDTA) qui aurait omis ces données.
- Le paramètre TOJOBO ne peut être utilisé si l'objet pour lequel des modifications sont retirées n'enregistrait pas de postes d'ouverture et de fermeture. Pour plus de détails, reportez-vous au paramètre OMTJRNE des commandes STRJRN, STRJRNPF et CHGJRNOBJ.
- Cette commande ne peut pas être utilisée sur ou avec un journal éloigné.
- Le nombre maximal d'objets pour lesquels des modifications peuvent être retirées à l'aide de cette commande est de 12 000 000. Si les spécifications contiennent plus de 12 000 000 objets, un message d'erreur est émis et aucune modification n'est retirée. Vous pouvez modifier les valeurs de ce paramètre de manière à ne pas dépasser la limite admise.
- Il n'est pas possible d'utiliser la commande RMVJRNCHG pour supprimer des modifications en provenance de récepteurs de journal sur lesquels des postes de journal sont susceptibles de manquer suite au filtrage du journal éloigné.
Paramètres
| Mot-clé | Description | Valeurs possibles | Remarques |
|---|---|---|---|
| JRN | Journal | Nom d'objet qualifié | Obligatoire, positionnel 1 |
| Qualificatif 1: Journal | Nom | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| FILE | Nom du fichier journalisé | Values (jusqu'à 300 répétitions): Liste d'éléments | Facultatif, positionnel 2 |
| Élément 1: Fichier physique journalisé | Nom d'objet qualifié | ||
| Qualificatif 1: Fichier physique journalisé | Nom, *ALL | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| Élément 2: Membre | Nom, *ALL, *FIRST | ||
| OBJ | Objets | Values (jusqu'à 300 répétitions): Liste d'éléments | Facultatif |
| Élément 1: Objet | Nom d'objet qualifié | ||
| Qualificatif 1: Objet | Nom, *ALL | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| Élément 2: Type d'objet | *FILE, *DTAARA | ||
| Élément 3: Membre, si fichier BD | Nom, *ALL, *FIRST | ||
| RCVRNG | Plage de récepteurs de journal | Valeurs uniques: *CURRENT, *LASTSAVE Autres valeurs: Liste d'éléments |
Facultatif, positionnel 3 |
| Élément 1: Début au récepteur de journal | Nom d'objet qualifié | ||
| Qualificatif 1: Début au récepteur de journal | Nom | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| Élément 2: Fin au récepteur de journal | Nom d'objet qualifié | ||
| Qualificatif 1: Fin au récepteur de journal | Nom | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| FROMENTLRG | Premier num. séq. maxi | Valeur caractère, *LAST, *LASTSAVE | Facultatif |
| TOENTLRG | Dern. num. séq. maxi | Valeur caractère, *FIRST, *COMMITSTART | Facultatif |
| TOJOBO | Nom de travail qualifié | Nom de travail qualifié | Facultatif |
| Qualificatif 1: Nom de travail qualifié | Nom | ||
| Qualificatif 2: Utilisat | Nom | ||
| Qualificatif 3: Numéro | 000000-999999 | ||
| CMTBDY | Frontière de validation | *YES, *NO | Facultatif |
| OPTION | Option | *NONE, *IGNINQMSG | Facultatif |
| OBJERROPT | Option erreur objet | *CONTINUE, *END | Facultatif |
| OUTPUT | Sortie | *NONE, *OUTFILE | Facultatif |
| OUTFILE | Fichier recevant la sortie | Nom d'objet qualifié | Facultatif |
| Qualificatif 1: Fichier recevant la sortie | Nom | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| OUTMBR | Options pour membre de sortie | Liste d'éléments | Facultatif |
| Élément 1: Membre recevant la sortie | Nom, *FIRST | ||
| Élément 2: Remplacement ou ajout enregs | *REPLACE, *ADD | ||
| DETAIL | Détail | *ALL, *ERR | Facultatif |
| FROMENT | Numéro de séquence de début | 1-9999999999, *LAST, *LASTSAVE | Facultatif |
| TOENT | Numéro de séquence de fin | 1-9999999999, *FIRST, *COMMITSTART | Facultatif |
Journal (JRN)
Indique le journal contenant les postes de journal retirés.
Ce paramètre est obligatoire.
Qualificatif 1 : Journal
- nom-journal
- Indiquez le nom du journal.
Qualificatif 2 : Biblio
- *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
- Le système effectue la recherche dans la bibliothèque en cours du travail. Si cette dernière n'est pas précisée, QGPL est prise par défaut.
- nom-bibliothèque
- Indiquez le nom de la bibliothèque sur laquelle doit porter la recherche.
Nom du fichier journalisé (FILE)
Indique jusqu'à 300 fichiers base de données dont les postes de journal doivent être retirés. Le membre du fichier physique où le retrait doit être effectué peut également être indiqué.
Vous devez indiquer soit le paramètre Nom du fichier journalisé (FILE), soit le paramètre Objets (OBJ), mais pas les deux.
Elément 1 : Fichier physique journalisé
Qualificatif 1 : Fichier physique journalisé
- *ALL
- Enlève les modifications journalisées de tous les fichiers physiques figurant dans la bibliothèque indiquée, et dont les modifications ont été consignées dans le journal indiqué. Le nom de la bibliothèque est obligatoire. Si *ALL est indiqué et que vous ne disposez pas des droits nécessaires sur tous les objets, un message d'erreur est émis et l'exécution de la commande s'arrête.
- nom-fichier
- Indiquez le nom du fichier base de données physique dont les modifications journalisées doivent être supprimées.
Qualificatif 2 : Biblio
- *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
- Le système effectue la recherche dans la bibliothèque en cours du travail. Si cette dernière n'est pas précisée, QGPL est prise par défaut.
- nom-bibliothèque
- Indiquez le nom de la bibliothèque sur laquelle doit porter la recherche.
Elément 2 : Membre
Indique le nom du membre de fichier dont les modifications journalisées doivent être supprimées. Si *ALL est indiqué pour le premier élément du paramètre, la valeur indiquée pour le nom de membre est utilisée pour tous les fichiers correspondants de la bibliothèque. Par exemple, si *FIRST est indiqué comme nom de membre, les modifications journalisées sont retirées du premier membre de tous les fichiers correspondants de la bibliothèque.
- *ALL
- Supprime les modifications journalisées de tous les membres du fichier.
- *FIRST
- Supprime les modifications journalisées du premier membre du fichier.
- nom-membre
- Indiquez le nom du membre de fichier dont les modifications journalisées doivent être supprimées.
Objets (OBJ)
Indique jusqu'à 300 objets dont les postes de journal sont retirés. Le nom du membre du fichier dont les postes de journal sont retirés peut également être indiqué.
Vous devez indiquer soit le paramètre Nom du fichier journalisé (FILE), soit le paramètre Objets (OBJ), mais pas les deux.
Elément 1 : Objet
Qualificatif 1 : Objet
- *ALL
- Les postes de journal de tous les objets de la bibliothèque indiquée du type précisé, dont les modifications sont journalisées dans le journal spécifié, sont retirés. Le nom de bibliothèque doit être indiqué. Si *ALL est indiqué et que vous ne disposez pas des droits nécessaires sur tous les objets, un message d'erreur est émis et l'exécution de la commande s'arrête.
- nom-objet
- Indiquez le nom de l'objet dont les postes de journal sont retirés.
Qualificatif 2 : Biblio
- *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
- Le système effectue la recherche dans la bibliothèque en cours du travail. Si cette dernière n'est pas précisée, QGPL est prise par défaut.
- nom-bibliothèque
- Indiquez le nom de la bibliothèque sur laquelle doit porter la recherche.
Elément 2 : Type d'objet
Ce paramètre définit également le type de l'objet concerné par le retrait de postes.
- *FILE
- Les postes correspondant aux membres de fichiers base de données sont retirés.
- *DTAARA
- Les postes correspondant aux zones des données sont retirés.
Elément 3 : Membre, si fichier BD
Indique le nom du membre du fichier dont les postes de journal sont retirés. Si *ALL est indiqué pour le premier élément du paramètre, la valeur indiquée pour le nom de membre est utilisée pour tous les fichiers correspondants de la bibliothèque. Par exemple, si *FIRST est indiqué comme nom de membre, les modifications journalisées sont retirées du premier membre de tous les fichiers correspondants de la bibliothèque.
Remarque :Si le type d'objet indiqué n'est pas *FILE, la valeur de l'élément nom de membre est ignorée.
- *ALL
- Les postes de journal sont retirés de tous les membres du fichier.
- *FIRST
- Les postes de journal sont retirés du premier membre du fichier.
- nom-membre
- Indiquez le nom du membre du fichier dont les postes de journal vont être retirés.
Plage de récepteurs de journal (RCVRNG)
Indique le début et la fin de la plage de récepteurs de journal utilisée pour le retrait des modifications journalisées. Le système commence le retrait avec le récepteur de début (première valeur) et la poursuit jusqu'au récepteur de fin (dernière valeur). Les valeurs du paramètre indiquent les récepteurs dans l'ordre inverse de leur attachement au journal.
Remarque :Le nombre maximal de récepteurs pouvant être inclus dans une plage est égal à 2045. Si la plage contient plus de 2045 récepteurs, un message d'erreur est émis et aucune modification n'est appliquée. Vous pouvez modifier les valeurs de ce paramètre de manière à ne pas dépasser la limite admise.
Valeurs uniques
- *CURRENT
- Le récepteur utilisé est celui qui est attaché lorsque le retrait débute.
- *LASTSAVE
- La plage de récepteurs de journal est définie par le système, d'après les informations de sauvegarde des objets concernés par cette opération. Cette valeur n'est correcte que si *LASTSAVE est également spécifié pour le paramètre Numéro de séquence de début (FROMENT) et le paramètre Premier num. séq. maxi (FROMENTLRG).
Elément 1 : Début au récepteur de journal
Qualificatif 1 : Début au récepteur de journal
- nom-premier-récepteur
- Indiquez le nom du premier récepteur de journal (le plus récent) dont les modifications journalisées sont enlevées.
Qualificatif 2 : Biblio
- *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
- Le récepteur de journal est recherché dans la bibliothèque en cours du travail. Si cette dernière n'est pas précisée, QGPL est prise par défaut.
- nom-bibliothèque
- Indiquez le nom de la bibliothèque contenant le récepteur de journal.
Elément 2 : Fin au récepteur de journal
Qualificatif 1 : Fin au récepteur de journal
- nom-dernier-récepteur
- Indiquez le nom du dernier récepteur de journal (le plus ancien) dont les modifications journalisées sont enlevées. Si la fin de la chaîne de récepteurs est atteinte avant que le récepteur indiqué n'ait été trouvé, l'opération s'arrête.
Qualificatif 2 : Biblio
- *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
- Le récepteur de journal est recherché dans la bibliothèque en cours du travail. Si cette dernière n'est pas précisée, QGPL est prise par défaut.
- nom-bibliothèque
- Indiquez le nom de la bibliothèque contenant le récepteur de journal.
Premier num. séq. maxi (FROMENTLRG)
Indique le premier poste de journal à prendre en compte pour la suppression des modifications journalisées.
Remarque :Vous pouvez indiquer une valeur pour le paramètre Numéro de séquence de début (FROMENT) ou le paramètre Premier num. séq. maxi (FROMENTLRG), jamais pour les deux.
- *LAST
- La suppression des modifications journalisées s'effectue à rebours à partir du dernier poste de la plage de récepteurs indiquée.
- *LASTSAVE
- La suppression des postes de journal s'effectue à rebours, en commençant par le dernier poste créé avant la dernière sauvegarde. Le système détermine, pour tous les objets auxquels doit s'appliquer cette commande, le premier poste à traiter. Cette valeur implique que l'objet vienne juste d'être restauré.
Si la version restaurée de l'objet est issue d'une version sauvegardée à l'aide de la fonction de sauvegarde en mise à jour, le système supprimera les modifications du poste de début de sauvegarde qu'il s'agisse ou non de la dernière sauvegarde de l'objet. Lors de l'utilisation de la fonction de sauvegarde en mise à jour, les informations requises pour le retrait des modifications journalisées sont sauvegardées avec l'objet et restaurées. Quand tous les objets spécifiés dans la commande de retrait ont été restaurés à partir de sauvegardes ayant utilisé la fonction de sauvegarde en mise à jour, le système peut trouver les points de sauvegarde de ces objets sans devoir rechercher tous les récepteurs de journal. Ceci permet d'améliorer les performances du processus de retrait.
Si la version restaurée de l'objet était une version sauvegardée alors qu'il n'était pas utilisé (il s'agit d'une sauvegarde normale), le système vérifie également que la date et l'heure de sauvegarde de l'objet restauré sur le système sont identiques à celles de sa dernière sauvegarde, comme indiqué dans le journal.
Si les dates et les heures ne correspondent pas, aucun poste n'est enlevé et un message d'interrogation est envoyé à l'utilisateur ou à l'opérateur système pour lui demander d'annuler l'opération ou de ne pas tenir compte de l'erreur. Dans ce dernier cas, le système tente d'exécuter l'opération. En cas d'annulation, l'opération s'arrête et aucune modification journalisée n'est enlevée.
Si la fonction de sauvegarde en mise à jour a été utilisée lors de la dernière sauvegarde de l'objet, la copie de sauvegarde de chacun des objets comporte toutes les modifications dans les postes du journal, jusqu'au poste de journal de début de sauvegarde correspondant. Dans ce cas, les modifications sont retirées à partir du premier poste du journal précédant le poste Début de sauvegarde.
Si la dernière sauvegarde de l'objet a été effectuée alors que celui-ci n'était pas en cours d'utilisation (sauvegarde normale), la copie de sauvegarde de chacun des objets comporte toutes les modifications dans les postes du journal, jusqu'au poste de journal Objet sauvegardé. Dans ce cas, les modifications sont retirées à partir du premier poste du journal précédant le poste Objet sauvegardé.
Remarque :*LASTSAVE doit être indiqué si des membres de fichiers base de données qui ont été sauvegardés avec *NOCMTBDY comme second élément du paramètre SAVACTWAIT (dans la commande de sauvegarde) se trouvent dans un état où des modifications journalisées doivent être appliquées.
- numéro-séquence-début
- Indiquez le numéro de séquence du premier poste de journal à traiter lors du retrait des modifications journalisées des objets indiqués. La plage de valeurs admises s'étend de 1 à 18 446 744 073 709 551 600.
Dern. num. séq. maxi (TOENTLRG)
Indique le dernier poste de journal à prendre en compte pour la suppression des modifications journalisées.
Remarque :Vous pouvez indiquer une valeur pour le paramètre Numéro de séquence de fin (TOENT) ou le paramètre Dern. num. séq. maxi (TOENTLRG), jamais pour les deux.
- *FIRST
- Les postes de journal sont retirés jusqu'au traitement du premier poste de la plage de récepteurs indiquée.
- *COMMITSTART
- Pour indiquer cette valeur, FROMENTLRG(*LASTSAVE) (ou FROMENT(*LASTSAVE)) et CMTBDY(*YES) sont requis. A partir du dernier poste de sauvegarde, seules les modifications des postes correspondant à des transactions partielles sont retirées, en revenant au début de la transaction de validation. Il est possible d'utiliser cette option quand la version de l'objet restaurée est une version sauvegardée avec des transactions et quand la commande APYJRNCHG (Appliquer des modifications journalisées) n'est pas souhaitée.
- numéro-séquence-fin
- Indiquez le numéro de séquence de la dernière modification journalisée à supprimer du membre des objets indiqués. La plage de valeurs admises s'étend de 1 à 18 446 744 073 709 551 600.
Nom de travail qualifié (TOJOBO)
Indique l'identificateur du travail qui, en ouvrant un objet donné, met fin au retrait des modifications journalisées par cette commande. Par exemple, le travail indiqué peut être un travail ayant généré des erreurs lors de l'ouverture d'un membre de fichier. Le premier poste d'ouverture de travail identifié pour l'un des objets spécifiés constitue le point de fin de tous les objets spécifiés.
Ce paramètre ne peut pas être utilisé pour enlever les postes de journal d'un travail spécifique ; tous les postes sont enlevés pour tous les travaux.
Seuls les objets de type *FILE comportent des postes de journal associés aux ouvertures des travaux. Le paramètre TOJOBO ne peut être utilisé si l'objet pour lequel des modifications sont retirées n'enregistrait pas de postes d'ouverture et de fermeture. Pour plus de détails, reportez-vous au paramètre OMTJRNE des commandes STRJRN, STRJRNPF et CHGJRNOBJ.
Autres valeurs
- identificateur-travail
- Indiquez le nom du travail, le nom de l'utilisateur et le numéro du travail à utiliser. Vous pouvez également spécifier uniquement le nom du travail ou les noms du travail et de l'utilisateur.
- nom-travail
- Indiquez le nom du travail.
- nom-utilisateur
- Indiquez le nom de l'utilisateur du travail.
- numéro-travail
- Indiquez le numéro de travail attribué par le système.
Frontière de validation (CMTBDY)
Indique si les frontières de validation sont respectées lorsque les postes de journal dont les modifications doivent être enlevées font partie d'une unité d'oeuvre logique de contrôle de validation. Pour plus d'informations sur le contrôle de validation, reportez-vous au manuel Rubrique Base de données de l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/.
Remarque :Dans la description de ce paramètre, l'option TO est utilisée pour décrire le paramètre indiqué, à savoir TOENTLRG, TOENT ou TOJOBO.
- *YES
- Le retrait commence à partir du poste indiqué au paramètre FROMENTLRG ou FROMENT jusqu'à celui spécifié par l'option TO, en tenant compte des frontières de validation. Le paramètre FROMENTLRG ou FROMENT doit désigner un point situé à une frontière de validation.
- Si le poste de journal indiqué au paramètre FROMENTLRG ou FROMENT se trouve à l'intérieur de l'unité d'oeuvre logique dont il fait partie, un message d'erreur est émis et l'opération n'est pas effectuée.
- Si le poste de journal indiqué par l'option TO se trouve à l'intérieur de l'unité d'oeuvre logique dont il fait partie, l'opération s'arrête à la frontière de validation précédant ce poste. Un message de diagnostic est envoyé à la fin de l'opération.
Remarque :Si un poste de journal provoque l'arrêt de l'opération avant que le poste indiqué par l'option TO ne soit traité, il se peut que les frontières de validation ne soient pas respectées.
- *NO
- Les modifications journalisées sont enlevées à partir du poste indiqué au paramètre FROMENTLRG ou FROMENT jusqu'au poste spécifié par l'option TO, sans tenir compte des frontières de validation. Par conséquent, l'opération est effectuée même si un poste de cette plage fait partie d'une unité d'oeuvre logique.
Remarque :Si CMTBDY(*NO) est indiqué alors qu'un objet appliqué a été restauré à partir d'une version sauvegardée contenant des transactions partielles, les modifications en attente pour celles-ci ne seront pas retirées si les transactions ne se réalisent pas dans la plage indiquée. L'objet ne sera utilisable que si toutes les transactions en attente s'effectuent dans la plage indiquée.
Option (OPTION)
Indique si le retrait de modifications de journal doit être précédé d'un contrôle supplémentaire.
- *NONE
- Tous les contrôles de protection sont réalisés avant le retrait de modifications de journal.
- *IGNINQMSG
- Le message d'interrogation est ignoré. Le message d'interrogation CPA7050 ne s'affiche pas même si l'objet en cours d'application n'est pas issu de la dernière sauvegarde de l'objet. L'opération de retrait se poursuit.
Option erreur objet (OBJERROPT)
Indique comment les postes de journal doivent être traités en cas d'erreur.
- *CONTINUE
- Tout poste de journal d'un objet spécifique qui ne peut être traité entraîne l'arrêt du traitement des postes restants de cet objet. En revanche, le traitement des postes des autres objets se poursuit. Un message de diagnostic indique l'échec du traitement des modifications journalisées de cet objet. S'il y a lieu, la fin prématurée du traitement d'un objet est également ajoutée à tout enregistrement du fichier de sortie.
- *END
- Quand le traitement échoue pour un poste de journal, il s'arrête pour tous les objets restants.
Sortie (OUTPUT)
Indique si une liste d'informations sur les objets auxquels des modifications ont été enlevées est créée. Les informations peuvent être dirigées vers un fichiers base de données.
- *NONE
- Aucun fichier base de données n'est créé avec la sortie. L'historique des travaux reçoit les messages correspondant aux 512 premiers objets dont le traitement a échoué.
- *OUTFILE
- Les informations en sortie relative au retrait seront dirigées vers le fichier base de données indiqué dans le paramètre Fichier recevant la sortie (OUTFILE)
Remarque :Le nom du fichier base de données est obligatoire avec le paramètre Fichier recevant la sortie (OUTFILE) lorsque OUTPUT(*OUTFILE) est indiqué.
Fichier recevant la sortie (OUTFILE)
Indique le fichier base de données vers lequel les informations sont dirigées lorsque *OUTFILE est indiqué au paramètre Sortie (OUTPUT). Si le fichier n'existe pas, cette commande crée un fichier base de données dans la bibliothèque indiquée. Si un fichier est créé, le système utilise QAJRNCHG de QSYS avec le nom de format QJOAPYRM comme modèle.
Qualificatif 1 : Fichier recevant la sortie
- nom-fichier-base-de-données
- Indiquez le nom du fichier base de données devant recevoir la sortie de la commande. Si le fichier n'existe pas, il est créé dans la bibliothèque indiquée.
Qualificatif 2 : Biblio
- *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
- Le système effectue la recherche dans la bibliothèque en cours du travail. Si cette dernière n'est pas précisée, QGPL est prise par défaut.
- nom-bibliothèque
- Indiquez le nom de la bibliothèque sur laquelle doit porter la recherche.
Options pour membre de sortie (OUTMBR)
Indique le nom du membre de fichier de base données vers lequel est dirigé la sortie lorsque *OUTFILE est précisé à l'invite Sortie (paramètre OUTPUT).
Elément 1 : Membre recevant la sortie
- *FIRST
- Le premier membre du fichier reçoit la sortie. Si OUTMBR(*FIRST) est indiqué et que le membre n'existe pas, le système en crée un du nom indiqué à l'invite Fichier recevant la sortie (paramètre OUTFILE).
- nom
- Indiquez le nom du membre de fichier destiné à recevoir la sortie. Si ce membre n'existe pas, il est créé par le système.
Si le membre existe, vous pouvez ajouter des enregistrements à la fin du membre existant ou le mettre à blanc, puis ajouter les enregistrements.
Elément 2 : Remplacement ou ajout enregs
- *REPLACE
- Les enregistrements existant dans le membre du fichier base de données indiqué sont remplacés par les nouveaux enregistrements.
- *ADD
- Les nouveaux enregistrements sont ajoutés aux données existant déjà dans le membre de fichier base de données indiqué.
Type d'informations en sortie (DETAIL)
Indique le type des informations dirigées vers le fichier spoule.
- *ALL
- Le fichier contiendra des informations sur la commande, un poste seulement pour chaque objet correspondant à la sélection indiquée dans la commande.
- *ERR
- Le fichier contiendra des informations sur la commande, un poste seulement pour chaque objet dont le retrait des modifications s'est arrêté prématurément.
Numéro de séquence de début (FROMENT)
Indique le premier poste de journal à prendre en compte pour la suppression des modifications journalisées.
Remarque :Vous pouvez indiquer une valeur pour le paramètre Numéro de séquence de début (FROMENT) ou le paramètre Premier num. séq. maxi (FROMENTLRG), jamais pour les deux.
- *LAST
- La suppression des modifications journalisées s'effectue à rebours à partir du dernier poste de la plage de récepteurs indiquée.
- *LASTSAVE
- La suppression des postes de journal s'effectue à rebours, en commençant par le dernier poste créé avant la dernière sauvegarde. Le système détermine, pour tous les objets auxquels doit s'appliquer cette commande, le premier poste à traiter. Cette valeur implique que l'objet vienne juste d'être restauré.
Si la version restaurée de l'objet est issue d'une version sauvegardée à l'aide de la fonction de sauvegarde en mise à jour, le système supprimera les modifications du poste de début de sauvegarde qu'il s'agisse ou non de la dernière sauvegarde de l'objet. Lors de l'utilisation de la fonction de sauvegarde en mise à jour, les informations requises pour le retrait des modifications journalisées sont sauvegardées avec l'objet et restaurées. Quand tous les objets spécifiés dans la commande de retrait ont été restaurés à partir de sauvegardes ayant utilisé la fonction de sauvegarde en mise à jour, le système peut trouver les points de sauvegarde de ces objets sans devoir rechercher tous les récepteurs de journal. Ceci permet d'améliorer les performances du processus de retrait.
Si la version restaurée de l'objet était une version sauvegardée alors qu'il n'était pas utilisé (il s'agit d'une sauvegarde normale), le système vérifie également que la date et l'heure de sauvegarde de l'objet restauré sur le système sont identiques à celles de sa dernière sauvegarde, comme indiqué dans le journal.
Si les dates et les heures ne correspondent pas, aucun poste n'est enlevé et un message d'interrogation est envoyé à l'utilisateur ou à l'opérateur système pour lui demander d'annuler l'opération ou de ne pas tenir compte de l'erreur. Dans ce dernier cas, le système tente d'exécuter l'opération. En cas d'annulation, l'opération s'arrête et aucune modification journalisée n'est enlevée.
Si la fonction de sauvegarde en mise à jour a été utilisée lors de la dernière sauvegarde de l'objet, la copie de sauvegarde de chacun des objets comporte toutes les modifications dans les postes du journal, jusqu'au poste de journal de début de sauvegarde correspondant. Dans ce cas, les modifications sont retirées à partir du premier poste du journal précédant le poste Début de sauvegarde.
Si la dernière sauvegarde de l'objet a été effectuée alors que celui-ci n'était pas en cours d'utilisation (sauvegarde normale), la copie de sauvegarde de chacun des objets comporte toutes les modifications dans les postes du journal, jusqu'au poste de journal Objet sauvegardé. Dans ce cas, les modifications sont retirées à partir du premier poste du journal précédant le poste Objet sauvegardé.
Remarque :*LASTSAVE doit être indiqué si des membres de fichiers base de données qui ont été sauvegardés avec *NOCMTBDY comme second élément du paramètre SAVACTWAIT (dans la commande de sauvegarde) se trouvent dans un état où des modifications journalisées doivent être appliquées.
- numéro-séquence-début
- Indiquez le numéro de séquence du premier poste de journal à traiter lors du retrait des modifications journalisées des objets indiqués. La plage de valeurs admises s'étend de 1 à 9 999 999 999.
Numéro de séquence de fin (TOENT)
Indique le dernier poste de journal à prendre en compte pour la suppression des modifications journalisées.
Remarque :Vous pouvez indiquer une valeur pour le paramètre Numéro de séquence de fin (TOENT) ou le paramètre Dern. num. séq. maxi (TOENTLRG), jamais pour les deux.
- *FIRST
- Les postes de journal sont retirés jusqu'au traitement du premier poste de la plage de récepteurs indiquée.
- *COMMITSTART
- Pour indiquer cette valeur, FROMENTLRG(*LASTSAV) (ou FROMENT(*LASTSAV)) et CMTBDY(*YES) sont requis. A partir du dernier poste de sauvegarde, seules les modifications des postes correspondant à des transactions partielles sont retirées, en revenant au début de la transaction de validation. Il est possible d'utiliser cette option quand la version de l'objet restaurée est une version sauvegardée avec des transactions et quand la commande APYJRNCHG (Appliquer des modifications journalisées) n'est pas souhaitée.
- numéro-séquence-fin
- Indiquez le numéro de séquence de la dernière modification journalisée à supprimer du membre des objets indiqués. La plage de valeurs admises s'étend de 1 à 9 999 999 999.
Exemples
RMVJRNCHG JRN(JRNA) FILE((LIB2/PAYROLL JAN))
RCVRNG(RCV25 RCV22) TOENT(*FIRST)
Cette commande ordonne au système de retirer toutes les modifications journalisées du journal JRNA, membre JAN du fichier PAYROLL, bibliothèque LIB2 qui sont trouvés sur la chaîne de récepteurs comprise du récepteur RCV25 au récepteur RCV22. La liste de recherche de bibliothèques *LIBL est employée pour rechercher le journal JRNA ainsi que les récepteurs RCV25 et RCV22.
Le retrait commence par la dernière modification journalisée sur la chaîne de récepteurs et se termine par la première modification journalisée.
Messages d'erreur
Messages *ESCAPE
- CPF69A9
- Erreur interne détectée, code raison &2.
- CPF69AA
- Impossible de faire référence à l'objet &1 sauvegardé avec STG(*FREE).
- CPF69AB
- Valeurs du paramètre RCVRNG incorrects.
- CPF70A7
- Certains postes n'ont pas été appliqués ou retirés pour au moins un objet.
- CPF70A8
- Le fichier &1 de la bibliothèque &2 n'est pas utilisable.
- CPF70AA
- FROMENT(*LASTSAVE) doit être indiqué.
- CPF70AB
- Récepteur de journal &1 de &2 non trouvé.
- CPF70B7
- Appliquez ou enlevez les modifications journalisées qui ne sont pas admises pour le récepteur indiqué.
- CPF70CC
- Impossible d'effectuer l'opération au-delà du poste &7.
- CPF70CD
- Impossible d'effectuer l'opération au-delà du poste &7.
- CPF70CE
- Impossible d'effectuer l'opération au-delà du poste &7.
- CPF70EB
- Erreur de contrainte référentielle sur le membre &3.
- CPF70EC
- Erreur de contrainte référentielle. Code raison &9.
- CPF70EE
- Nombre maximal de chemins d'accès à vecteur encodé pour le membre &3.
- CPF7002
- Le fichier &1 de la bibliothèque &2 n'est pas un fichier physique.
- CPF7003
- Poste non journalisé dans &1. Code raison &3.
- CPF7006
- Membre &3 non trouvé dans le fichier &1 de &2.
- CPF7007
- Impossible d'allouer membre &3 du fichier &1 de &2.
- CPF701B
- Le rétablissement par journal d'une opération interrompue a échoué.
- CPF704A
- Longueur d'enregistrement incorrecte pour le membre &3.
- CPF704F
- Paramètre TOJOBO ou TOJOBC incompatible avec la plage de valeurs du récepteur.
- CPF7041
- Poste non trouvé pour le travail &3/&2/&1.
- CPF7042
- Objet non journalisé ou journalisé dans un journal différent.
- CPF7044
- L'application ou le retrait de postes journalisés a échoué, code raison &7.
- CPF7045
- Récepteur de journal &1 de &2 partiellement endommagé.
- CPF7046
- Clé en double non admise pour le membre &3.
- CPF7047
- Le membre &3 du fichier &1 de &2 est plein.
- CPF7048
- Impossible d'effectuer modifications journalisées sur membre &3.
- CPF7049
- Impossible d'effectuer l'opération au-delà du poste &7.
- CPF7051
- Poste de sauvegarde pour l'objet &6 non trouvé.
- CPF7052
- Erreur de sélection/omission dans fichier logique sur membre &3.
- CPF7053
- Valeurs du paramètre RCVRNG incorrectes. Code raison &1.
- CPF7054
- Valeurs des paramètres FROM et TO incorrectes.
- CPF7056
- Objet &1 non journalisé avec des images avant.
- CPF7057
- *LIBL n'est pas admis avec *ALL, *ALLLIB ou un nom générique.
- CPF7058
- Application ou retrait de postes journalisés a échoué.
- CPF705A
- Echec de l'opération car journal éloigné.
- CPF7063
- Impossible d'utiliser le fichier &1 comme OUTFILE.
- CPF7067
- Option FROMENTLRG ou FROMENT incorrecte. Violation de la frontière de validation.
- CPF7068
- Poste nécessaire pour application ou enlèvement non trouvé.
- CPF7069
- Aucun poste du journal &1 appliqué ou enlevé.
- CPF7077
- Erreur de mappage de clé sur membre &3.
- CPF7078
- Impossible d'appliquer ou d'enlever les modifications pour membre &3.
- CPF9801
- Objet &2 non trouvé dans la bibliothèque &3.
- CPF9802
- Non autorisé à l'objet &2 de &3.
- CPF9803
- Impossible d'allouer l'objet &2 de la bibliothèque &3.
- CPF9809
- Accès à la bibliothèque &1 impossible.
- CPF9810
- Bibliothèque &1 non trouvée.
- CPF9812
- Fichier &1 non trouvé dans la bibliothèque &2.
- CPF9820
- Non autorisé à utiliser la bibliothèque &1.
- CPF9822
- Non autorisé au fichier &1 de &2.
- CPF9825
- Accès non autorisé à l'unité &1.
- CPF9860
- Erreur lors du traitement du fichier de sortie.
© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.