GET_PROCESS_LINE
Fonction de script : Récupère le contenu actuel des lignes d'une séquence de données.
Syntaxe
GET_PROCESS_LINE (Data sequence reference [, [Column] [, [STR_SUBSTITUTE_VAR] [, Row ] ] ])
Syntaxe |
Description / format |
---|---|
Data sequence reference |
Référence de la séquence de données à traiter. |
Column |
Accès à une colonne de la ligne de la séquence de données.
Les variables dynamiques (SQL, SQLI et Multi) peuvent inclure n'importe quel nombre de colonnes selon la source de données concernée. Les variables statiques n'incluent que 6 colonnes de valeurs ("1" à "6"). "1" renvoie la valeur de la clé, "2" à "6" renvoient les 5 colonnes de valeurs. "6" renvoie donc la valeur de la colonne 5. Les variables FILELIST n'ont généralement qu'une colonne "1". |
STR_SUBSTITUTE_VAR |
La recherche des lignes de la séquence de données porte également sur les variables de script qui doivent être remplacées par leurs valeurs. Notes que vous devez mettre une virgule si vous utilisez ce paramètre sans spécifier de colonne. Exemple :SET &VALUE# = GET_PROCESS_LINE(&HND#, ,STR_SUB_VAR) |
Row | Ligne de la séquence de données à rendre accessible. Format : Nombre sans guillemets, littéral de script ou variable de script |
La fonction de script GET_PROCESS_LINE lit une ligne ou les colonnes d'une séquence de données. La séquence de données est fournie par les éléments scripts suivants :
- CREATE_PROCESS
- LOAD_PROCESS
- PREP_PROCESS
- PREP_PROCESS_AGENTGROUP
- PREP_PROCESS_COMMENTS
- PREP_PROCESS_DOCU
- PREP_PROCESS_FILE
- PREP_PROCESS_FILENAME
- PREP_PROCESS_PROMPTSET
- PREP_PROCESS_REPORT
- PREP_PROCESS_VAR
- PREP_PROCESS_VAR_XML
La fonction de script GET_PROCESS_LINE est utilisée dans les instructions de script :PROCESS et :ENDPROCESS. Ces instructions de script constituent une boucle pour le traitement par ligne de la séquence de données.
Note : À partir de v9, GET_PROCESS_LINE doit être dans une boucle de traitement formée par des instructions de script.
Chaque ligne d'une séquence de données peut également être subdivisée en colonnes. Vous pouvez le spécifier via les paramètres COL=LENGTH ou COL=DELIMITER lorsque vous générez la séquence de données. Certaines colonnes sont accessibles par leurs numéros (1 - première colonne) ou leur nom, s'il a été spécifié.
Si la colonne n'est pas spécifiée ou si vous utilisez "0", la ligne entière est renvoyée. La ligne est tronquée au bout de 255 caractères.
Si les valeurs d'un objet Variable sont récupérées, la ligne active inclut la clé (variable statique) ou la colonne de résultat (variable dynamique), plus les valeurs correspondantes. La valeur "1" pour Colonne lit la clé / le résultat, les valeurs "2" à "6" (variables statiques) lisent la colonne de valeurs correspondante. La colonne de résultat correspond à la première colonne de valeur si aucun format du résultat n'est défini dans l'objet Variable (SQL, SQLI, MULTI).
Le nombre de colonnes utilisé dans les variables dynamiques avec les sources "SQL", SQL - interne" ou "multi" n'est pas limité et dépend des paramètres des objets Variable et du type de données.Les colonnes de commentaires peuvent également être lues individuellement.
Si aucun numéro de colonne n'est spécifié lors de l'accès d'un objet Variable, le système renvoie la valeur de toutes les colonnes (Clé / Résultat y compris) séparées par les caractères §§§.
Les moniteurs SAP sont accessibles spécifiquement. L'agent SAP sépare chaque ligne fournie par le moniteur SAP dans des colonnes fixes. Il enregistre le nom des colonnes et leur taille dans la première ligne du fichier qui doit être traité par Automation Engine. Les colonnes suivantes sont accessibles via GET_PROCESS_LINE :
- CONTEXT : Nom du contexte surveillé
- PATH : Spécification du chemin d'une valeur
- NAME : Nom de la valeur
- VALUE : Valeur actuelle
- STATUS : Statut : 1 : vert, 2 : jaune, 3 : rouge
- DATE : Date de la vérification
- TIME : Heure de la vérification
Vous pouvez également utiliser le paramètre STR_SUBSTITUTE_VAR ou sa forme courte STR_SUB_VAR. Les variables de scripts sont ensuite recherchées dans la ligne et remplacées par leurs valeurs. Cette fonction est très utile, combinée à PREP_PROCESS_FILE. Ainsi, vous pouvez préparer un fichier texte contenant des variables de script avec des positions modifiables, afin de faciliter le traitement. Quel que soit l'endroit d'où la séquence de données est récupérée (fichier, rapport, objet Variable), les valeurs peuvent être définies via un script (voir exemple 5 ci-après).
De plus, il est possible d'accéder à une ligne spécifique de la séquence de données. Saisissez le numéro de ligne dans le paramètre de la fonction de script correspondante. La première ligne est le numéro 1. Les numéros de ligne des séquences de données peuvent être extraits avec la fonction de script GET_PROCESS_INFO.
Notez que, par défaut, GET_PROCESS_LINE tronque les espaces vides utilisés à la fin de la ligne à lire. L'administrateur peut désactiver ce comportement dans le paramètre GET_PROCESS_LINE_RTRIM de la variable UC_SYSTEM_SETTING.
Exemples
Dans l'exemple 1, les répertoires d'un disque sont extraits et consignés dans la boucle du rapport d'activation via :PRINT.
:SET &HND# = PREP_PROCESS("PC01","WINCMD","*DIR*","CMD=DIR C:")
:PROCESS &HND#
: SET &LINE# = GET_PROCESS_LINE(&HND#)
: PRINT &LINE#
:ENDPROCESS
Dans l'exemple 2, les valeurs d'une variable sont extraites et consignées dans la boucle de traitement du rapport d'activation via :PRINT.
:SET &HND#=PREP_PROCESS_VAR(UC_CLIENT_SETTINGS)
:PROCESS &HND#
: SET &RET1# = GET_PROCESS_LINE(&HND#,1)
: SET &RET2# = GET_PROCESS_LINE(&HND#,2)
: PRINT "&RET1# &RET2#"
:ENDPROCESS
Dans l'exemple 3, toutes les lignes du fichier journal Interface Web Automic fournissant des informations sur la base de données sont lues. La taille et le nom des colonnes sont spécifiés et les informations correspondantes sont sorties dans le rapport d'activation. Les espaces (colonnes 2 et 4) sont ignorés.
:SET &HND# = PREP_PROCESS_FILE(WIN21, "F:\AUTOMIC\DIALOG\TEMP\UCDJ_LOGG_01.TXT","*DB-INFO*","COL=LENGTH","LENGTH_TAB='8=DATUM,1,6=ZEIT,7,200=TEXT'")
:PROCESS &HND#
: SET &COL1# = GET_PROCESS_LINE(&HND#,1)
: SET &COL2# = GET_PROCESS_LINE(&HND#,3)
: SET &COL3# = GET_PROCESS_LINE(&HND#,"TEXT")
: PRINT "&COL1# &COL2#
&COL3#"
:ENDPROCESS
Dans l'exemple 4, le moniteur SAP "MON1" est lu à partir du jeu de moniteurs "AE". Chaque colonne de données du moniteur doit être accessible. Les lignes de la séquence de données sortent dans le rapport d'activation.
:SET &HND# = PREP_PROCESS("T01","R3MONITOR","*","MONSET=AE","MONNAM=MON1","COL=FILE","UC_USER_ID=AE","UC_SAPCLIENT=001")
:PROCESS &HND#
: SET &PATH# = GET_PROCESS_LINE(&HND#,"PATH")
: SET &NAME# = GET_PROCESS_LINE(&HND#,"NAME"")
: SET &VALUE# = GET_PROCESS_LINE(&HND#,"VALUE"")
: SET &STATUS# = GET_PROCESS_LINE(&HND#,"STATUS")
: SET &DATE# = GET_PROCESS_LINE(&HND#,"DATE")
: SET &TIME# = GET_PROCESS_LINE(&HND#,"TIME")
: PRINT "&PATH# &NAME#
&VALUE# &STATUS# &DATE# &TIME#"
:ENDPROCESS
Définition des tailles et noms de colonnes dans le fichier (première ligne) fourni par l'agent SAP.
COL=LENGTH,LENGTH_TAB='74=PATH,25=NAME,5=VALUE,2=STATUS,9=DATE,7=TIME'
Dans l'exemple 5, les lignes d'un fichier texte sont lues et les variables de script incluses sont remplacées par leurs valeurs. Les lignes modifiées sont consignées dans le rapport d'activation.
:SET &NAME# = SYS_ACT_ME_NAME()
:SET &DATE# = SYS_DATE_PHYSICAL("MM/DD/YYYY")
:SET &TIME# = SYS_TIME_PHYSICAL("HH:MM")
:SET &JPNAME# = SYS_ACT_PARENT_NAME()
:SET &HND# = PREP_PROCESS_FILE ("WIN01","C:\AUTOMIC\REPORT.TXT")
:PROCESS &HND#
: SET &RET# = GET_PROCESS_LINE (&HND#,,STR_SUB_VAR)
: PRINT &RET#
:ENDPROCESS
Résumé du fichier texte préparé REPORT.TXT :
&date#/&time#
Report for &NAME#:
Activated by workflow: &JPNAME#
Voir aussi :