Aller au contenu

RMVPFTRG

Enlever déclencheur fichier

En bref

La commande RMVPFTRG enlève du fichier physique indiqué les déclencheurs qui appellent des programmes de déclenchement.

RMVPFTRG se lit RMV (Retirer) + PFTRG. Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.

Syntaxe minimale

RMVPFTRG FILE(…)

Paramètres

  • FILE Fichier physique obligatoire
  • TRGTIME Moment de déclenchement
  • TRGEVENT Evénement de déclenchement
  • TRG Déclencheur
  • TRGLIB Bibliothèque du déclencheur

Astuce : dans une session 5250, tapez RMVPFTRG 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 : Sous conditions

La commande RMVPFTRG enlève du fichier physique indiqué les déclencheurs qui appellent des programmes de déclenchement. Les déclencheurs à enlever peuvent être indiqués par des événements de déclenchement, des moments de déclenchement ou des noms de déclencheur. Un programme de déclenchement est un programme ajouté au fichier physique indiqué à l'aide de la commande ADDPFTRG (Ajouter un déclencheur de fichier physique) (déclencheur système) ou de l'instruction SQL CREATE TRIGGER (déclencheur SQL).

Le déclencheur n'est pas enlevé lorsqu'un moment de déclenchement, un événement de déclenchement et un nom de déclencheur sont indiqués, mais que l'événement ne correspond ni au moment ni à l'événement pour la définition de déclencheur.

Une fois qu'un déclencheur correspondant à un moment, à un événement ou à un nom déterminé est enlevé du fichier physique, le programme de déclenchement n'est plus appelé lorsque l'événement de déclenchement survient dans le fichier. Dans le cas d'un déclencheur système, le programme de déclenchement est conservé. Dans le cas d'un déclencheur SQL, il est supprimé.

Le fichier physique et tous les fichiers logiques qui en dépendent font l'objet d'un verrouillage exclusif sans lecture permise lors du retrait du déclencheur.

Restrictions :

  • Vous devez disposer du droit de modification (*OBJALTER) ou de gestion (*OBJMGT) de l'objet sur le fichier physique, ainsi que du droit d'exécution (*EXECUTE) sur la bibliothèque qui contient le fichier.
  • Le déclencheur ne peut pas être enlevé si le fichier physique ou bien un fichier logique ou une vue SQL qui en dépendent sont ouverts par le travail en cours ou par un autre travail.
  • Lors de l'exécution de cette commande, ni le fichier physique, ni les fichiers logiques dépendants ne peuvent être ouverts.
  • Cette commande est à unités d'exécution protégées sous certaines conditions. Dans le cas de travaux à unités d'exécution multiples, cette commande n'admet pas l'utilisation d'unités d'exécution multiples pour les fichiers répartis. Elle échoue dans le cas de fichiers répartis utilisant une base de données relationnelle de type *SNA.

Paramètres

Mot-clé Description Valeurs possibles Remarques
FILE Fichier physique Nom d'objet qualifié Obligatoire, positionnel 1
Qualificatif 1: Fichier physique Nom
Qualificatif 2: Biblio Nom, *LIBL, *CURLIB
TRGTIME Moment de déclenchement *ALL, *BEFORE, *AFTER Facultatif, positionnel 2
TRGEVENT Evénement de déclenchement *ALL, *INSERT, *DELETE, *UPDATE, *READ Facultatif, positionnel 3
TRG Déclencheur Valeur caractère, *ALL Facultatif
TRGLIB Bibliothèque du déclencheur Nom, *FILE, *CURLIB Facultatif

Fichier physique (FILE)

Indique le fichier physique dont le déclencheur doit être enlevé. Le fichier indiqué doit exister sur le système.

Ce paramètre est obligatoire.

Qualificatif 1 : Fichier physique

nom
Indiquez le nom du fichier dont le déclencheur doit être enlevé.

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
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
Indiquez le nom de la bibliothèque dans laquelle la recherche doit être effectuée.

Moment de déclenchement (TRGTIME)

Indique les déclencheurs à enlever en fonction du moment d'appel du programme de déclenchement.

*ALL
Tous les déclencheurs sont enlevés, que le programme soit appelé avant ou après l'événement de déclenchement.
*BEFORE
Les déclencheurs pour lesquels le programme est appelé avant l'événement de déclenchement sont enlevés.
*AFTER
Les déclencheurs pour lesquels le programme est appelé après l'événement de déclenchement sont enlevés.

Evénement de déclenchement (TRGEVENT)

Indique l'événement de déclenchement pour lequel les déclencheurs associés sont enlevés.

*ALL
Tous les déclencheurs sont enlevés, qu'ils soient liés aux opérations d'insertion, de suppression ou de mise à jour.
*INSERT
Les déclencheurs liés aux opérations d'insertion sont enlevés.
*DELETE
Les déclencheurs liés aux opérations de suppression sont enlevés.
*UPDATE
Les déclencheurs liés aux opérations de mise à jour sont enlevés.
*READ
Les déclencheurs liés aux opérations de mise à jour sont enlevés.

Déclencheur (TRG)

Indique le nom du déclencheur à enlever.

*ALL
Toutes les définitions de déclencheur sont enlevées, y compris celles des déclencheurs SQL.
valeur-caractères
Indiquez le nom du déclencheur. Vous pouvez indiquer 128 caractères au maximum sans délimiteur, ou 258 caractères délimités par des guillemets (").

Vous trouverez ci-après des exemples de dépendances du paramètre TRG :

  • TRG(*ALL) TRGTIME(*ALL) TRGEVENT(*ALL) - Tous les déclencheurs sont enlevés.
  • TRG(*ALL) TRGTIME(*INSERT) TRGEVENT(*AFTER) - Tous les déclencheurs *INSERT *AFTER sont enlevés.
  • TRG(ABC) TRGTIME(*ALL) TRGEVENT(*ALL) - Les déclencheurs ABC sont enlevés.

Bibliothèque du déclencheur (TRGLIB)

Indique la bibliothèque du déclencheur à enlever.

Remarque :Les valeurs spéciales *LIBL et *CURLIB sont les valeurs du travail en cours d'exécution lors du retrait du déclencheur.

*FILE
La bibliothèque du fichier indiqué pour le paramètre Fichier physique (FILE) est utilisée.
*CURLIB
La bibliothèque en cours du travail est utilisée. Si celle-ci n'est pas précisée, QGPL est utilisée par défaut.
nom
Indiquez le nom de la bibliothèque à utiliser.

Exemples

Exemple 1 : Retrait de tous les déclencheurs pour les événements d'insertion

RMVPFTRG   FILE(EMP)  TRGEVENT(*INSERT)

Cette commande retire du fichier physique EMP tous les déclencheurs des programmes appelés par des opérations d'insertion.

Exemple 2 : Retrait de tous les déclencheurs pour les programmes appelés avant un événement de déclenchement

RMVPFTRG   FILE(EMP)  TRGTIME(*BEFORE)

Cette commande retire du fichier physique EMP tous les déclencheurs pour les programmes appelés avant des événements de déclenchement.

Messages d'erreur

Messages *ESCAPE

CPF32C6
La procédure de reprise du déclencheur a échoué.

© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.