SNDRPY
Envoyer une réponse
En bref
La commande SNDRPY (Envoyer une réponse) permet d'envoyer une réponse à l'émetteur d'un message d'interrogation.
SNDRPY se lit SND
(Envoyer) + RPY.
Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.
Syntaxe minimale
SNDRPY MSGKEY(…) MSGQ(…)
Paramètres
-
MSGKEYClé du message obligatoire -
MSGQFile attente messages obligatoire -
RPYRéponse -
RMVSuppression du message -
RJTDFTRPYRejet réponse par défaut -
CCSIDID codé de jeu de caractères
Astuce : dans une session 5250, tapez SNDRPY 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 SNDRPY (Envoyer une réponse) permet d'envoyer une réponse à l'émetteur d'un message d'interrogation. Il s'agit de la réponse au message dont la clé de référence a été reçue de la file d'attente de messages indiquée.
Un programme d'exit de gestion des réponses peut être enregistré à l'aide de la fonction d'enregistrement système pour le point d'exit QIBM_QMH_REPLY_INQ. Un programme d'exit de réponses peut accepter, rejeter ou remplacer une valeur de réponse. Si un programme d'exit rejette la réponse, le message de diagnostic CPD2476 (Réponse rejetée par un programme d'exit de gestion de réponse) sera envoyé au programme exécutant cette commande SNDRPY. Ceci est suivi par un message d'arrêt programme CPF2422 (Réponse incorrecte). Si la réponse est remplacée par un programme d'exit, la fonction d'envoi de réponse s'envoie un message de diagnostic. Le message est le CPD2479 (Programme d'exit de réponse requis pour remplacer une valeur de réponse). Une fois la réponse envoyée, CPF2458 (Réponse remplacée par un programme d'exit de gestion de réponse) sera envoyé en tant que message de diagnostic et un message d'état sera envoyé au programme exécutant cette commande SNDRPY. Le message d'état peut être intercepté si le programme doit connaître la condition lorsqu'une valeur de réponse autre que celle qui était spécifiée, a été envoyée.
Si cette file d'attente ne correspond pas à celle du travail au cours duquel cette commande est lancée, elle est implicitement allouée au travail pendant toute la durée d'exécution de la commande.
Paramètres
| Mot-clé | Description | Valeurs possibles | Remarques |
|---|---|---|---|
| MSGKEY | Clé du message | Valeur caractère | Obligatoire, positionnel 1 |
| MSGQ | File attente messages | Nom d'objet qualifié | Obligatoire, positionnel 2 |
| Qualificatif 1: File attente messages | Nom | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| RPY | Réponse | Valeur caractère, *DFT | Facultatif, positionnel 3 |
| RMV | Suppression du message | *YES, *NO | Facultatif |
| RJTDFTRPY | Rejet réponse par défaut | *NOALWRJT, *ALWRJT | Facultatif |
| CCSID | ID codé de jeu de caractères | 1-65535, *HEX, *JOB | Facultatif |
Clé du message (MSGKEY)
Indique la clé de référence du message auquel est envoyée une réponse.
Ce paramètre est obligatoire.
File attente messages (MSGQ)
Indique le nom de la file d'attente de messages qui a reçu le message d'interrogation nécessitant une réponse.
Ce paramètre est obligatoire.
Qualificatif 1 : File attente messages
- nom
- Entrez le nom de la file d'attente de messages.
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 file d'attente de messages est recherchée dans la bibliothèque en cours du travail. Si celle-ci ne figure pas dans la liste des bibliothèques, QGPL est prise par défaut.
- nom
- Indiquez le nom de la bibliothèque contenant la file d'attente de messages.
Réponse (RPY)
Indique la réponse envoyée par le programme au message d'interrogation.
- *DFT
- La réponse envoyée est la réponse par défaut figurant dans la description de message d'interrogation. Si aucune valeur par défaut n'est indiquée dans la description du message d'interrogation, la réponse par défaut, *N, est utilisée.
- 'texte-réponse'
- Entrez le texte (qui doit figurer entre apostrophes s'il comporte des blancs ou des caractères spéciaux) ou la variable CL contenant ce texte, constituant la réponse du programme au message d'interrogation. Le nombre de caractères autorisé pour la réponse et leur format sont définis par les spécifications de validité données dans la commande ADDMSGD (Ajouter description de message)pour le message d'interrogation spécifié. Cependant, si aucune spécification de validité n'est indiqué pour les réponses dans la commande ADDMSGD, le texte de la réponse peut contenir jusqu'à 132 caractères.
Remarques concernant l'ID codé de jeu de caractères (CCSID)
Si le message d'interrogation auquel est envoyée cette réponse est un message immédiat, le système considère que le texte indiqué au paramètre RPY a pour CCSID celui du travail exécutant la commande, sauf si un CCSID est précisé au paramètre CCSID. Si le message d'interrogation auquel est envoyée cette réponse est un message prédéfini, le texte indiqué au paramètre RPY est censé avoir pour CCSID 65535 et n'est pas converti. Pour plus de détails sur le gestionnaire de messages et la façon dont il utilise les CCSID, reportez-vous au manuel Rubriques Internationalisation de l'i5/OS dans l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/.
Suppression du message (RMV)
Indique si le message d'interrogation et la réponse qui lui a été envoyée doivent être supprimés de la file d'attente de messages indiquée.
- *YES
- Le message et la réponse correspondante sont supprimés de la file d'attente de messages dès que la réponse a été envoyée.
- *NO
- Le message et la réponse qui lui a été envoyée sont suspendus dans la file d'attente de messages. Une seule réponse peut être adressée au message d'interrogation ; en revanche, ce dernier peut être reçu ou affiché plusieurs fois.
Rejet réponse par défaut (RJTDFTRPY)
Indique si un programme d'exit de gestion de réponse pourra rejeter une réponse par défaut. Une réponse par défaut est demandée en mettant des blancs dans le paramètre de réponse. Un programme d'exit peut être enregistré à l'aide de la fonction d'enregistrement système pour le point d'exit QIBM_QMH_REPLY_INQ. Si aucune réponse par défaut n'est envoyée, ce paramètre est ignoré et un programme d'exit peut rejeter ou remplacer la valeur de la réponse.
- *NOALWRJT
- Un programme d'exit de gestion de réponse ne pourra par rejeter une réponse par défaut.
- *ALWRJT
- Un programme d'exit de gestion de réponse pourra rejeter une réponse par défaut. Si un programme d'exit rejette la réponse, le message CPD2476 (Réponse rejetée par un programme d'exit de gestion de réponse) sera envoyé en tant que message de diagnostic au programme utilisant cette commande. Le CPD2476 sera suivi d'un message d'arrêt programme CPF2422 (Réponse incorrecte) que le programme utilisant cette commande doit intercepter pour gérer et récupérer suite à une situation d'erreur.
ID codé de jeu de caractères (CCSID)
Désigne l'ID codé de jeu de caractères (CCSID) du texte de la réponse fournie. Si le message d'interrogation auquel est envoyée cette réponse est un message prédéfini, ce paramètre est ignoré et le texte fourni au paramètre RPY est censé avoir pour CCSID 65535 et n'est pas converti. Pour plus de détails sur le gestionnaire de messages et la façon dont il utilise les CCSID, reportez-vous au manuel Rubriques Internationalisation de l'i5/OS dans l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/.
- *JOB
- Le système considère que le texte de la réponse a pour CCSID celui du travail exécutant cette commande.
- *HEX
- Le texte de la réponse n'est pas converti. Le CCSID 65535 est utilisé.
- ID-codé-jeu-caractères
- Indiquez un CCSID admis dans lequel vous souhaitez que figure le texte de la réponse. Les valeurs admises sont comprises entre 1 et 65535. Cette commande valide le CCSID. La liste des valeurs de CCSID admises est fournie dans le manuel Internationalisation de l'iSeries Information Center, à l'adresse http://www.ibm.com/eserver/iseries/infocenter.
Exemples
SNDRPY MSGKEY(&KEY) MSGQ(SMITH) RPY(YES)
Cette commande envoie la réponse YES au message dont la clé de référence est indiquée par &KEY, qui a été reçue par la file d'attente de messages SMITH. La réponse ne contenant qu'un seul mot, elle n'a pas besoin d'être entre apostrophes.
Messages d'erreur
Messages *ESCAPE
- CPF2401
- Accès non autorisé à la bibliothèque &1.
- CPF2403
- File d'attente de messages &1 non trouvée dans &2.
- CPF2408
- Non autorisé à la file d'attente de messages &1.
- CPF2410
- Clé du message non trouvée dans la file d'attente de messages &1.
- CPF2411
- Accès non autorisé au fichier message &1 dans &2.
- CPF2420
- Réponse au message d'interrogation ou d'avertissement déjà envoyée.
- CPF2422
- Réponse incorrecte.
- CPF2432
- Impossible de répondre à un message de type autre que *INQ ou *NOTIFY.
- CPF2433
- Fonction non admise pour file d'attente msg historique système &1.
- CPF2460
- La taille de la file d'attente de messages &1 ne peut être augmentée.
- CPF247E
- Le CCSID &1 est incorrect.
- CPF2471
- Longueur de zone incorrecte.
- CPF2477
- File d'attente de messages &1 en cours d'utilisation.
- CPF2547
- fichier message QCPFMSG endommagé.
- CPF2548
- fichier message &1 dans &2 endommagé.
- CPF9830
- Allocation de la bibliothèque &1 impossible.
- CPF9838
- Limite mémoire du profil utilisateur dépassée.
Messages *STATUS
- CPF2458
- Réponse remplacée par le programme d'exit de gestion des réponses.
© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.