Aller au contenu

CPF1819

Arrêt du système. Message de coupure d'alimentation non intercepté.

Gravité 90 · Intégrité du système

Cause

Le système s'arrête pour la raison &3 décrite ci-dessous. La raison &3 est la suivante : Cause 1 - La file d'attente de messages &1, de la bibliothèque &2, indiquée par la valeur système QUPSMSGQ, n'est allouée ni à un programme utilisateur, ni à un poste de travail. Cause 2 - La file d'attente de messages &1, de la bibliothèque &2, indiquée par la valeur système QUPSMSGQ est allouée à un poste de travail, ou il s'agit de la file d'attente de messages de l'opérateur système (QSYSOPR de la bibliothèque QSYS). Toutefois, la file d'attente de messages n'est pas en mode *BREAK ou *NOTIFY.

Que faire

Effectuez l'opération &3 décrite ci-dessous : 1 - Allouez la file d'attente de messages &1 de la bibliothèque &2 au programme utilisateur qui intercepte les messages de panne d'alimentation. Ajoutez la commande ALCOBJ (Allouer un objet) au programme utilisateur et précisez un verrouillage exclusif (*EXCL). 2 - Utilisez la commande CHGMSGQ (Modifier une file d'attente de messages) pour attribuer à la file d'attente de messages &1 de la bibliothèque &2 le mode de communication *BREAK ou *NOTIFY.

Description technique

Le délai indiqué par la valeur système QUPSDLYTIM est *NOMAX. Cela permet à l'utilisateur de contrôler, par un programme utilisateur ou par l'opérateur système, le nettoyage et l'arrêt du système pendant qu'il fonctionne sur alimentation auxiliaire. Pour cela, la file d'attente de messages indiquée par la valeur système QUPSMSGQ doit être allouée à un programme utilisateur actif, allouée à un poste de travail ou être la file d'attente de messages de l'opérateur système. Si la file d'attente de messages est allouée à un poste de travail ou est la file d'attente de messages de l'opérateur système, elle doit être en mode *BREAK ou *NOTIFY. Si la file d'attente de messages n'est pas correctement allouée lorsque le système passe sur alimentation auxiliaire, le système s'arrêtera immédiatement.

The delay time specified by QUPSDLYTIM system value is *NOMAX. This allows the user to control, via user program or system operator, the cleanup and powerdown of the system while it is running on auxiliary power. This requires the message queue specified by QUPSMSGQ system value to be allocated to an active user program, be allocated to a workstation or be the system operator message queue. If the message queue is allocated to a workstation or is the system operator message queue, the message queue must be in *BREAK or *NOTIFY mode. If the message queue is not allocated properly when the system is switched to auxiliary power, the system will power down immediately.

Variables du message

Quand le système envoie le message, chaque variable est remplacée par une valeur réelle : un nom d'objet, de bibliothèque, un code...

VariableTypeLongueur
&1 *CHAR 10
&2 *CHAR 10
&3 *CHAR 1

Sur votre IBM i

Afficher la description complète du message :

DSPMSGD RANGE(CPF1819) MSGF(QSYS/QCPFMSG)

L'intercepter dans un programme CL, quand il est envoyé comme message d'échappement :

MONMSG MSGID(CPF1819) EXEC(DO)
  /* traitement de l'erreur */
ENDDO