Fonction de script : Récupère la liste des noms des fichiers qui se trouvent dans le répertoire spécifié de l'ordinateur et fournit le résultat sous la forme d'une liste interne (séquence de données) pour un traitement ultérieur.
PREP_PROCESS_FILENAME(Host, File name, [Wildcards], [Subfolder], [Filter] [,"COL=Definition1[, [Definition2]"],["UC_LOGIN=Login object"])
Syntaxe |
Description / format |
---|---|
Hôte |
Machine (nom de l'agent) sur laquelle les fichiers sont stockés. |
Nom de fichier |
Chemin et nom du fichier à rechercher. Dans le nom du fichier, les caractères génériques "*" et "?" sont autorisés. "*" signifie n'importe quelle chaîne de caractères et "?" exactement un caractère. Dans les chemins, aucun caractère générique n'est autorisé. C'est le paramètre Caractères génériques qui détermine si la casse doit être respectée dans un nom de fichier. |
Caractères génériques |
Indique si le nom de fichier a été saisi avec des caractères génériques. Valeurs autorisées : "Y" (valeur par défaut) et "N" "Y" : nom de fichier avec caractères génériques, la casse n'est pas prise en compte |
Sous-dossier |
Indique si des sous-dossiers ou des sous-répertoires doivent être inclus dans la recherche. Valeur autorisée : "Y" et "N" (valeur par défaut) "Y" : sous-dossiers ou sous-répertoires inclus. |
Filtre |
Possibilité supplémentaire de filtrer les lignes de la séquence de données. Insensible à la casse; les caractères majuscules et minuscules sont autorisés. Les caractères génériques "*" et "?" sont autorisés. "*" signifie n'importe quelle chaîne de caractères et "?" exactement un caractère. Par défaut : "*" |
Definition1 |
Définit si les lignes de la séquence de données doivent être réparties en colonnes. Valeurs autorisées : "NONE" (Valeur par défaut), "LENGTH", "DELIMITER" "NONE" : pas de colonnes. |
Définition2 |
Définit la taille et le nom des colonnes (facultatif) ou le caractère de séparation. Valeurs autorisées : "LENGTH_TAB" et "DELIMITER"
|
Objet Login |
Nom d'un objet Login. L'expression UC_LOGIN=objet Login doit être encadrée de guillemets. |
Code retour |
---|
Référence à la séquence de données de la liste des fichiers. "20240" : information Login manquante |
La fonction de script PREP_PROCESS_FILENAME fournit une liste de noms de fichiers qui seront traités ultérieurement à l'aide du script AE. Sur l'hôte, les fichiers sont récupérés par l'agent er traités sous forme de séquence de données.
Le paramètre Nom de fichier est utilisé pour appeler les fichiers qui doivent être listés. Si le nom de fichier contient une désignation du lecteur, les fichiers trouvés sont affichés de la même manière. Vous pouvez spécifier si les sous-dossiers ou les sous-répertoires doivent être pris en compte. Vous pouvez aussi filtrer la liste des fichiers trouvés.
Les caractères génériques, les sous-dossiers, les filtres et les paramètres à répartir en colonnes sont facultatifs. Notez que vous devez utiliser une virgule pour indiquer que l'un des paramètres n'est pas utilisé. Vous pouvez utiliser n'importe quel paramètre optionnel en tant que dernier paramètre. Vérifiez qu'aucune virgule n'est utilisée parès le dernier paramètre. La definition2 ne doit pas être utilisée sans la definition1.
Par défaut, la fonction de script GET_PROCESS_LINElit la ligne complète d'une séquence de données. Vous pouvez également y accéder de manière structurée lorsque les lignes sont réparties en colonnes. Les règles suivantes s'appliquent dans ce cas :
Pour accéder à une colonne en particulier, vous pouvez utiliser GET_PROCESS_LINE.
Le paramètre facultatif UC_LOGIN permet de transmettre le nom d'un objet Login à cette fonction de script. PREP_PROCESS_FILENAME utilise les données de connexion définies dans l'objet Login. Cela permet par exemple d'accéder à des lecteurs réseau connectés. Les utilisateurs doivent bénéficier du privilège "Transfert de fichier : exécuter sans indiquer l'ID utilisateur" si la fonction de script PREP_PROCESS_FILENAME doit être utilisée sans le paramètre UC_LOGIN.
Le code retour de la fonction de script référence une séquence de données qui est transmise aux instructions de script :PROCESS et :ENDPROCESS en tant que paramètre de démarrage. En combinaison avec la fonction de script GET_PROCESS_LINE, vous pouvez traiter chaque ligne et les colonnes correspondantes, de la séquence de données.
Si le rapport ne contient pas le contenu recherché, aucun message d'erreur n'apparaît.Le traitement de la séquence de données, défini entre :PROCESS et :ENDPROCESS, n'est tout simplement pas lancé.
Aucune autre valeur ne peut être attribuée à la variable de script contenant la référence de la séquence de données. Vous devez tout d'abord supprimer la séquence de données qui contient l'instruction de script :CLOSE_PROCESS avant de pouvoir réutiliser la variable.
PREP_PROCESS_FILE n'est pas prise en charge par les agents pour les applications (Oracle Applications, PeopleSoft ou SAP).
Cette instruction de script écrit toutes les transactions ouvertes du script dans la base de données AE.
L'exemple suivant liste tous les documents HTML provenant de l'aide en ligne de la documentation Automation Engine. L'utilisation de caractères génériques est explicitement indiquée. Le résultat est écrit dans le protocole d'activation.
:SET &HND# = PREP_PROCESS_FILENAME("WIN01","c:\AUTOMIC\documentation\webhelp\german\uc*.htm","Y",,,,"UC_LOGIN=WIN_LOGIN")
:PROCESS &HND#
: SET &LINE# = GET_PROCESS_LINE(&HND#)
: PRINT &LINE#
:ENDPROCESS
Le deuxième exemple crée une liste de toutes les feuilles de style fournies avec la documentation Automation Engine. Tous les sous-dossiers du répertoire de documentation doivent être recherchés. Le résultat ne contient pas de lecteur et est écrit dans le rapport.
:SET &HND# = PREP_PROCESS_FILENAME("WIN01", "\AUTOMIC\documentation\uc*.css","Y","Y",)
:PROCESS &HND#
: SET &LINE# = GET_PROCESS_LINE(&HND#)
: PRINT &LINE#
:ENDPROCESS
Le troisième exemple crée une liste de tous les programmes AE. Les lignes ont été réparties en colonnes. Les colonnes sont séparées par une barre oblique. Le traitement de la séquence de données accède à la 5ème colonne qui contient les noms des fichiers des programmes. Le résultat est écrit dans le protocole d'activation.
:SET &HND# = PREP_PROCESS_FILENAME("WIN01","c:\AUTOMIC\server\bin\*.exe",,,,"COL=DELIMITER,DELIMITER=*\*")
:PROCESS &HND
: SET &LINE# = GET_PROCESS_LINE(&HND#,5)
: PRINT &LINE#
:ENDPROCESS
Le quatrième exemple est basé sur le troisième mais un filtre est défini pour que seul le nom de fichier de Automation Engine soit écrit dans le protocole d'activation.
:SET &HND# = PREP_PROCESS_FILENAME("WIN01","c:\AUTOMIC\server\bin\*.exe",,,"*server*","COL=DELIMITER,DELIMITER=*\*")
:PROCESS &HND#
: SET &LINE# = GET_PROCESS_LINE(&HND#,5)
: PRINT &LINE#
:ENDPROCESS
Rubriques connexes :
Elément de script | Description |
---|---|
Supprime une séquence de données inutile. |
|
Définissent une boucle pour le traitement par lignes d'une séquence de données, comme le contenu d'un fichier séquentiel ou le résultat de type texte d'une commande. |
|
Récupère le contenu de la ligne courante d'une séquence de données. |
Eléments de script - Séquences de données
Généralités sur les scripts
Eléments de script - Liste alphabétique
Eléments de script - Répartition fonctionnelle