FNDSTRPDM
Rechercher une chaîne par PDM
En bref
La commande FNDSTRPDM (Rechercher une chaîne par PDM) permet de rechercher des chaînes de type caractère ou hexadécimal dans des membres de fichiers physiques source ou dans des membres de fichiers physiques de données.
Syntaxe minimale
FNDSTRPDM STRING(…) FILE(…) MBR(…) OPTION(…)
Paramètres
-
STRINGRechercher 'chaîne' obligatoire -
FILEFichier obligatoire -
MBRMembre obligatoire -
OPTIONOpération à exécuter obligatoire -
COLColonnes à explorer -
CASEDistinction majusc/minusc -
PRTMBRLISTImprimer liste -
PRTRCDSImprimer enregistrements -
PARMParamètres
Astuce : dans une session 5250, tapez FNDSTRPDM 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 QPDA)
Où s'exécute : Tous les environnements (*ALL)
Compatible multitâche : Non
La commande FNDSTRPDM (Rechercher une chaîne par PDM) permet de rechercher des chaînes de type caractère ou hexadécimal dans des membres de fichiers physiques source ou dans des membres de fichiers physiques de données. Vous pouvez utiliser une option PDM ou l'une de vos options utilisateur sur le membre contenant une occurrence de la chaîne.
Paramètres
| Mot-clé | Description | Valeurs possibles | Remarques |
|---|---|---|---|
| STRING | Rechercher 'chaîne' | Valeur caractère | Obligatoire, positionnel 1 |
| FILE | Fichier | Nom d'objet qualifié | Obligatoire, positionnel 2 |
| Qualificatif 1: Fichier | Nom | ||
| Qualificatif 2: Bibliothèque | Nom, *LIBL, *CURLIB | ||
| MBR | Membre | Valeurs uniques: *ALL Autres valeurs (jusqu'à 300 répétitions): Valeur caractère |
Obligatoire, positionnel 3 |
| OPTION | Opération à exécuter | Liste d'éléments | Obligatoire, positionnel 4 |
| Élément 1: Option | Valeur caractère, *EDIT, *COPY, *DLT, *DSP, *PRT, *RNM, *DSPD, *SAVE, *CHGT, *CMPR, *CMPL, *MOD, *MRG, *RUNP, *SDA, *DFU, *RLU, *NONE | ||
| Élément 2: Invite | *NOPROMPT, *PROMPT | ||
| COL | Colonnes à explorer | Liste d'éléments | Facultatif |
| Élément 1: De la colonne | Valeur caractère, 1, *RCDLEN | ||
| Élément 2: A la colonne | Valeur caractère, *RCDLEN | ||
| CASE | Distinction majusc/minusc | *IGNORE, *MATCH | Facultatif |
| PRTMBRLIST | Imprimer liste | *NO, *YES | Facultatif |
| PRTRCDS | Imprimer enregistrements | Valeurs uniques: *NONE Autres valeurs: Liste d'éléments |
Facultatif |
| Élément 1: Nombre à trouver | Valeur caractère, '*ALL ', *ALL | ||
| Élément 2: Format d'impression | *CHAR, *HEX, *ALTHEX | ||
| Élément 3: Marquer enregistrement | *MARK, *NOMARK | ||
| Élément 4: Dépassement d'enregistrement | *FOLD, *TRUNCATE | ||
| PARM | Paramètres | Valeur caractère | Facultatif |
Rechercher 'chaîne' (STRING)
Indique la chaîne à rechercher.
Ce paramètre est obligatoire.
- valeur-alphanumérique
- Indiquez, entre apostrophes, la chaîne à rechercher. Elle peut être de type caractère ou hexadécimal.
Fichier (FILE)
Indique le fichier contenant les membres que vous souhaitez rechercher. Il peut s'agir d'un fichier physique source ou d'un fichier physique de données.
Ce paramètre est obligatoire.
Qualificatif 1 : Fichier
- nom
- Indiquez le nom du fichier physique contenant les membres à rechercher.
Qualificatif 2 : Bibliothèque
- *LIBL
- Le fichier spécifié est recherché dans toutes les bibliothèques de la liste des bibliothèques du travail.
- *CURLIB
- Le fichier spécifié est recherché dans bibliothèque en cours du travail. Si aucune bibliothèque en cours n'est définie, QGPL est utilisée par défaut.
- nom
- Indiquez le nom de la bibliothèque dans laquelle le fichier spécifié doit être recherché.
Membre (MBR)
Indique le(s) membre(s) à rechercher. Vous pouvez utiliser ce paramètre pour faire porter la recherche sur tous les membres ou sur une sous-liste de membres d'un fichier particulier.
Ce paramètre est obligatoire.
Vous pouvez spécifier 300 valeurs pour ce paramètre.
Le paramètre MBR prend en charge jusqu'à 300 valeurs qui peuvent correspondre à un nombre de membre spécifique ou à un nom de membre générique. Si vous devez spécifier plus de 300 noms de membre ou si vous souhaitez rechercher des membres dans plusieurs fichiers ou dans plusieurs bibliothèques, vous pouvez utiliser la commande FNDSTRPDM2. La commande FNDSTRPDM2 vous permet de définir une liste de recherche de fichiers et de membres dans laquelle chaque enregistrement contient le nom de la bibliothèque, du fichier et du membre à rechercher.
Valeurs uniques
- *ALL
- La chaîne indiquée est recherchée dans tous les membres de fichiers.
Autres valeurs
- nom-générique
- Spécifiez le nom générique des membres de fichiers à rechercher.
Le nom générique peut se présenter sous l'une des formes suivantes :
- ABC*
- La recherche porte sur tous les membres dont les noms commencent par les caractères ABC. Exemple : ABC, ABCD ou ABCTEST.
- *ABC
- La recherche porte sur tous les membres dont les noms se terminent par les caractères ABC. Exemple : ABC, DABC ou TESTABC.
- *B*
- La recherche porte sur tous les membres comportant le caractère B (la position de ce dernier est indifférente). Exemple : B, BALL ou ABCD.
- A*C
- La recherche porte sur tous les membres commençant par A et se terminant par C. Exemple : AC, ABC ou AZZZC.
- "a*"
- La recherche porte sur tous les membres dont les noms figurent entre guillemets et commencent par la lettre a. Par exemple : "a", "aB", "aD".
- **ALL
- La recherche porte sur tous les membres dont les noms se terminent par les caractères ALL. Exemple : ALL, BALL ou TESTALL. Vous devez dans ce cas entrer **ALL, car *ALL est la valeur spéciale permettant de rechercher tous les membres du fichier.
- nom
- Indiquez le nom du membre à rechercher.
Opération à exécuter (OPTION)
Indique l'option PDM à exécuter sur chaque membre pour lequel une occurrence de la chaîne recherchée a été trouvée. Ce paramètre se compose de deux éléments, l'un servant à sélectionner une option et le second à demander un écran d'invite. L'option à exécuter peut être toute option PDM correcte pour le type de fichier ou toute option utilisateur définie dans votre fichier d'options en cours. Les options admises ne sont pas les mêmes pour les fichiers physiques source et pour les fichiers physiques de données.
Ce paramètre est obligatoire.
Elément 1 : Option
- *NONE
- Aucune option n'est exécutée sur le membre contenant la chaîne recherchée. Choisissez cette valeur pour imprimer la liste des membres ou des enregistrements contenant la chaîne recherchée.
Options de la liste de membres de fichiers physiques source
- *EDIT
- Vous permet d'éditer un ou plusieurs membres à l'aide de SEU.
- *CHGT
- Vous permet de modifier certains attributs d'un ou de plusieurs des membres.
- *CMPL
- Vous permet de compiler un ou plusieurs membres. Le système crée un objet en fonction du membre compilé. La compilation s'effectue en mode interactif ou par lots, selon les informations indiquées à l'écran MODIFICATION DES VALEURS PAR DEFAUT ou dans la commande CHGPDMDFT.
Les types de membres suivants peuvent être compilés : BAS, BAS36, BAS38, C, CBL, CBLLE, CBL36, CBL38, CICSC, CICSCBL, CICSCBLLE, CICSSQLCBL,CLD, CLLE, CLP, CLP38, CMD, CMD38, CPP, DSPF, DSPF36, DSPF38, FTN, ICFF, LF, LF38, MENU, PAS, PF, PF38, PLI, PLI38, PNLGRP, PRTF, PRINT38, QRY38, RMC, RPG, RPGLE, RPG36, RPG38, RPT, RPT36, RPT38, SPADCT, SQLC, SQLCPP, SQLCBL, SQLCBLLE, SQLFTN, SQLPLI, SQLRPG, SQLRPGLE et TBL.
Lorsque PDM compile un programme à l'aide des commandes de création appropriées, le nom de l'objet à créer est toujours celui indiqué comme nom du membre source. Vous pouvez remplacer le paramètre de nom d'objet par un autre en demandant l'affichage de l'invite correspondante ou en indiquant le paramètre correct sur la ligne de commande. PDM vérifie si ce nom existe déjà. Si c'est le cas, il affiche l'écran CONFIRMATION DE COMPILATION D'UN MEMBRE, qui vous donne la possibilité de supprimer l'objet existant.
Remarque :Cet écran ne s'affiche pas si O (ou *YES) est indiqué en regard de l'invite Remplacement objet de l'écran MODIFICATION DES VALEURS PAR DEFAUT (ou dans la commande CHGPDMDFT).
Si vous avez attribué une valeur spéciale au paramètre de nom d'objet, PDM ne vérifie pas si l'objet existe déjà. Par exemple, si vous compilez un programme RPG et indiquez *CTLSPEC en regard de l'invite Programme, PDM n'effectue pas cette vérification.
- *CMPR
- Vous permet de comparer un ou plusieurs membres.
- *COPY
- Vous permet de copier un ou plusieurs membres dans un ou plusieurs nouveaux membres. Ces derniers peuvent appartenir à un autre fichier et/ou une autre bibliothèque.
- *DLT
- Vous permet de supprimer un ou plusieurs membres du fichier.
- *DSP
- Vous permet d'afficher un ou plusieurs membres à l'aide de SEU.
- *DSPD
- Vous permet d'afficher des informations sur un ou plusieurs membres.
- *MOD
- Vous permet de créer un objet de module pour un type de source ILE.
- *MRG
- Vous permet de fusionner le membre cible avec un autre membre.
- *PRT
- Vous permet d'imprimer un ou plusieurs membres à l'aide de SEU.
- *RNM
- Vous permet de rebaptiser un ou plusieurs membres.
- *RUNP
- Vous permet d'exécuter un membre source de type REXX, OCL36, BASP ou BASP38. Si vous utilisez un membre dont le type ne permet pas le traitement, un message d'erreur apparaît. Pour qu'une procédure OCL36 puisse être lancée, le nom de fichier doit être QS36PRC. Le traitement s'effectue en mode interactif ou par lots, selon les informations indiquées en regard de l'invite Exécution par lots de l'écran MODIFICATION DES VALEURS PAR DEFAUT (ou dans la commande CHGPDMDFT).
- *SAVE
- Vous permet de sauvegarder un membre sur une disquette ou une bande.
- *SDA
- Vous permet d'utiliser SDA pour gérer les membres sélectionnés.
- Si le type de membre est DSPF ou DSPF38, SDA assure la gestion d'un écran.
- Si le type de membre est MNU, MNUDDS ou MNUCMD, SDA assure la gestion d'un menu.
- Si le type de membre est DSPF36 ou MNU36, le menu principal SDA (environnement 36) s'affiche.
- Si l'ancien type de membre MNU a été entré, SDA le convertit en MNUDDS.
- Notez que les membres de menu de PDM sont de type MNUDDS pour le membre image et de type MNUCMD pour le membre source de commandes. Les deux sont liés et forment un groupe ; ainsi, en indiquant l'un des deux types, vous agissez automatiquement sur le membre associé.
- *RLU
- Vous permet d'utiliser RLU pour gérer les membres sélectionnés.
Options de la liste de membres de fichiers physiques de données
- *CHGT
- Vous permet de modifier certains attributs d'un ou de plusieurs des membres d'un fichier physique.
- *CMPR
- Vous permet de comparer un ou plusieurs membres.
- *COPY
- Vous permet de copier un ou plusieurs membres dans un ou plusieurs nouveaux membres. Ces derniers peuvent appartenir à un autre fichier et/ou une autre bibliothèque.
- *DFU
- Vous permet d'appeler DFU pour modifier les membres sélectionnés.
- *DLT
- Vous permet de supprimer un ou plusieurs membres du fichier.
- *DSP
- Vous permet d'afficher un ou plusieurs membres.
- *DSPD
- Vous permet d'afficher des informations sur un ou plusieurs membres.
- *RNM
- Vous permet de rebaptiser un ou plusieurs membres.
- *SAVE
- Vous permet de sauvegarder un membre sur une disquette ou une bande.
Option de la liste des membres définis par l'utilisateur
- valeur-alphanumérique
- Spécifiez le nom d'une option que vous avez définie dans votre fichier d'options actif.
Elément 2 : Invite
Cette partie du paramètre vous permet d'indiquer si vous désirez l'affichage d'un écran d'invite à chaque exécution de la commande correspondant à l'option.
- *NOPROMPT
- Le système n'affiche pas l'invite à chaque exécution de la commande, lorsque l'occurrence de la chaîne a été trouvée dans un membre.
- *PROMPT
- Le système affiche l'invite à chaque exécution de la commande, lorsque l'occurrence de la chaîne a été trouvée dans un membre.
Colonnes à explorer (COL)
Indiquez les numéros des colonnes de début et de fin de la partie de chaque enregistrement de fichier faisant l'objet de la recherche. Cela vous permet de rechercher le début, la fin ou le milieu de chaque enregistrement.
Le numéro de la colonne de début ne doit pas dépasser la longueur de l'enregistrement.
Elément 1 : De la colonne
- 1
- La recherche commence à la colonne 1 de chaque enregistrement.
- *RCDLEN
- La recherche ne porte que sur la dernière colonne des enregistrements.
- numéro
- Indiquez la première colonne de la partie de chaque enregistrement sur laquelle porte la recherche.
Elément 2 : A la colonne
- *RCDLEN
- La partie de chaque enregistrement sur laquelle porte la recherche s'étend de la colonne de début spécifiée à la dernière colonne de l'enregistrement.
- numéro
- Indiquez la dernière colonne de la partie d'enregistrement faisant l'objet de la recherche.
Distinction majusc/minusc (CASE)
Indique si la distinction majuscules/minuscules doit être prise en compte lors de la recherche.
- *IGNORE
- Vous permet de rechercher le membre de la chaîne spécifiée sans tenir compte de la casse.
- *MATCH
- Vous permet de rechercher l'occurrence exacte de la chaîne spécifiée.
Imprimer liste (PRTMBRLIST)
Vous permet d'indiquer si vous souhaitez imprimer la liste des membres pour lesquels une occurrence a été trouvée.
- *NO
- Sélectionnez cette option si vous ne souhaitez pas imprimer la liste des membres contenant une occurrence de la chaîne.
- *YES
- Sélectionnez cette option si vous souhaitez imprimer la liste des membres contenant une occurrence de la chaîne spécifiée.
Imprimer enregistrements (PRTRCDS)
Indique les enregistrements contenant la chaîne à imprimer.
Valeurs uniques
- *NONE
- Aucun enregistrement contenant la chaîne spécifiée ne sera imprimé.
Elément 1 : Nombre à trouver
- *ALL
- Permet d'imprimer tous les enregistrements contenant la chaîne spécifiée.
- 1-99999
- Spécifiez le nombre d'enregistrements à imprimer contenant la chaîne spécifiée.
Elément 2 : Format d'impression
- *CHAR
- Permet d'imprimer les enregistrements au format alphanumérique.
- *HEX
- Permet d'imprimer les enregistrements au format hexadécimal superposé. Cela signifie que les valeurs hexadécimales apparaîtront au-dessous des valeurs alphanumériques.
- *ALTHEX
- Permet d'imprimer les enregistrements au format hexadécimal côte-à-côte.
Elément 3 : Marquer enregistrement
Vous pouvez marquer la chaîne au sein de l'enregistrement imprimé. Dans les recherches portant sur des caractères, c'est la chaîne elle-même qui sert de marque pour permettre un repérage rapide. En revanche, pour les recherches hexadécimales, la chaîne est marquée à l'aide d'astérisques.
- *MARK
- Permet de marquer l'occurrence de la chaîne au sein de l'enregistrement.
- *NOMARK
- L'occurrence de la chaîne au sein de l'enregistrement ne sera pas marquée.
Elément 4 : Dépassement d'enregistrement
Vous pouvez préciser si les données de l'enregistrement doivent être renvoyées à la ligne ou tronquées lorsqu'elles dépassent la longueur de la ligne d'impression.
- *FOLD
- Permet d'imprimer l'enregistrement entier sur plusieurs lignes d'impression.
- *TRUNCATE
- Permet d'imprimer uniquement la partie de l'enregistrement qui tient sur la ligne d'impression. Si vous indiquez *ALTHEX, seules les colonnes 1 à 32 sont imprimées ; si vous indiquez *CHAR ou *HEX, les colonnes 1 à 100 sont imprimées.
Paramètres (PARM)
Permet d'indiquer les paramètres à ajouter à la commande correspondant à la valeur spécifiée pour l'élément 1 du paramètre OPTION (Opération à exécuter).
- valeur-alphanumérique
- Indiquez les paramètres que vous souhaitez transmettre à la commande associée à la valeur spécifiée pour le paramètre OPTION. Par défaut, ce paramètre ne contient aucune option. Dans ce cas, aucun paramètre n'est transmis.
Exemples
Exemple 1 : Recherche d'occurrences de chaînes dans un membre
FNDSTRPDM STRING('Ms') FILE(*LIBL/CUST)
MBR('NEW') CASE(*MATCH)
OPTION(*NONE) PRTRCDS(*ALL *CHAR)
Cette commande permet de rechercher tous les enregistrements du membre NEW du fichier CUST contenant la chaîne Ms. Le fichier est identifié à l'aide de la liste des travaux. La recherche tient compte de la casse. Un fichier spoule est généré. Il contient la liste de tous les enregistrements contenant la chaîne recherchée.
Exemple 2 : Recherche d'une chaîne dans une liste de membres
FNDSTRPDM STRING('*TEST*') FILE(MYLIB/MYFILE)
MBR('*APP') CASE(*IGNORE)
OPTION(FIX)
Cette commande permet de rechercher des occurrences de la chaîne *TEST* dans les membres du fichier MYFILE de la bibliothèque MYLIB dont le nom se termine par les lettres APP. La recherche ne tient pas compte de la casse. Par conséquent, les enregistrements comportant la valeur *test* ou *Test* sont pris en compte lors de la recherche. Pour chaque membre contenant la chaîne recherchée, l'option FIX définie par l'utilisateur est exécutée à partir du fichier d'options actif.
© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.