Automation Engine 11 ONE Automation Platform Conseils d'utilisation Version: 11.1.1 Date de Publication: 2015-08 Automic Software GmbH
ii Copyright Copyright Les logos Automic et Automic sont des marques déposées appartenant à Automic Software GmbH (Automic). L'utilisation de toutes les marques déposées nécessite une autorisation explicite écrite et est soumise aux conditions de la licence. Les logiciels et/ou le programme sont la propriété protégée d'automic Software. L'accès et l'utilisation de ces derniers sont soumis à des conditions de licence devant être approuvées par écrit. Les logiciels et/ou le programme sont également protégés par des droits de reproduction par des contrats internationaux ainsi que par les lois nationales et internationales. Un accès et/ou une utilisation non autorisés peuvent entraîner des poursuites civiles et pénales. La copie non autorisée et d'autres formes de reproduction partielle ou totale, la décompilation, la reproduction, la modification, ou le développement de produits dérivés du logiciel sont strictement interdits. Le non-respect de ces conditions peut entraîner des poursuites pénales. Sous réserve de modifications. Aucune responsabilité ne sera acceptée pour toute modification, omission, erreur d'impression ou de production. Toute reproduction, totale ou partielle, est strictement interdite. Copyright Automic Software GmbH. Tous droits réservés.
Automation Engine iii Contents 1 Aperçu 1 2 Run Book Templates 3 3 Dialogue de saisie dynamique pour l'activation de Jobs 13 4 Contrôle du comportement de Transfert de Fichier par le biais de conditions dans un Workflow 18 5 Exécution d'un MBean 24 6 Affichages à l'aide du Cockpit 26 7 Maintenance de la base de données avec options 29 8 Notification avec texte du message variable 34 9 Définir un statut de fin à cause du contenu d'un rapport 37 10 Réaction à des événements externes 39 11 Détermination du message et du numéro de l'erreur 42 12 Synchronisation de Tâches actives 45 Glossaire 48.1 A 48.2 B 49.3 C 49.4 D 50.5 E 50.6 F 51.7 G 51.8 H 51.9 I 51.10 J 52.11 L 52.12 M 52.13 O 52.14 P 53.15 Q 53.16 R 54.17 S 54.18 T 55
iv Contents.19 U 55.20 V 56.21 W 56
Chapter1 Aperçu 1 1 Aperçu Ce chapitre contient des exemples expliquant les applications des scripts à l'aide de scripts et d'illustrations. A partir du Service Pack 2 de la version 9.00A, les objets prédéfinis sont préparés au moyen de conteneurs Transport. Vous trouverez une liste de ces objets dans le document Run Book Templates. Chaque exemple explique le déroulement et apporte les informations suivantes : Objectif - Brève description du but de l'exemple. Objets utilisés - Types d'objet apparaissant dans l'exemple. Scripts utilisés - Nom des instructions et des fonctions de script utilisées. Le manuel de l'utilisateur présente une description détaillée de tous les éléments de script disponibles. Ces documents sont associés aux exemples dans lesquels ils sont utilisés. Ceci permet que vous puissiez facilement l'appliquer aux éléments de script donnés. Automic recommande de consulter les chapitres d'introduction intitulés Premières étapes et A propos des scripts AE avant d'entamer ce chapitre. Ceux-ci vous permettent en fait de vous familiariser avec le système et vous donnent de solides connaissances de base. Niveau débutant Exemple Notification avec texte du message variable Affichages à l'aide du Cockpit Maintenance de la base de données avec options Description La notification par objet Notification doit comprendre un texte dépendant de la tâche qui l'appelle. Certaines informations sur le statut de l'agent et l'espace disque actuel de la machine s'affichent dans un cockpit. L'archivage de la base de données AE doit être automatisé dans un workflow. L'Utilisateur peut en entrer la configuration correspondante dans une boîte de dialogue. Niveau avancé Exemple Dialogue de saisie dynamique pour l'activation de Jobs Contrôle du comportement de transfert de fichier par le biais de conditions dans un workflow Exécution d'un MBean Description Création d'un masque de saisie permettant de sélectionner un ou plusieurs Agents sur lesquels un Job doit être exécuté. Les agents qui peuvent être sélectionnés sont déterminés de façon dynamique à partir de la base de données AE lors de l'exécution. Un transfert de fichier doit être lancé via un workflow. Il faut pour cela vérifier dans le workflow s'il existe des fichiers source et cible et si les actions correspondantes sont activées. Le résultat de l'exécution d'un MBean doit être transféré pendant le traitement.
2 Chapter 1 Aperçu Définir un statut de fin à cause du contenu d'un rapport Réaction à des Evènements externes Détermination du message et du numéro de l'erreur Synchronisation de Tâches actives Le contenu précis d'un rapport de job doit être analysé lorsque le statut final est défini en fonction du résultat. Lorsqu'un Evènement SAP est déclenché dans le système AE, il doit s'afficher pour que l'utilisateur puisse y réagir. En cas d'erreur, le texte du message et le numéro correspondants doivent être demandés et transmis par e-mail. Les jobs déjà actifs doivent être synchronisés manuellement.
Chapter2 Run Book Templates 3 2 Run Book Templates Des objets prédéfinis, appelés Run Book Templates, sont mis à disposition avec le Service Pack 2 de Automation Engine Version 9.00A. Ces objets sont fournis dans un conteneur Transport, car ils permettent de charger un certain Client de votre système. Veuillez noter que la description suivante n'est pas un exemple, mais une énumération des Run Book Templates. Eléments fournis Le conteneur Transport regroupant les Run Book Templates (UC4_RB_Functions1.0.txt) se trouve dans le répertoire fourni suivant : IMAGE:\DB\ Chargez le conteneur Transport avec l'utilitaire AE DB Load dans le Client souhaité de votre système AE. Liste Le tableau suivant reprend le nom et la principale fonction de tous les objets Run Book Template fournis et doit vous fournir un premier aperçu. La description/fonctionnalité précise est disponible dans l'onglet "Documentation" des objets. Domaine d'applicatio n Fonction Nom d'objet Système d'exploitatio n
4 Chapter 2 Run Book Templates Actions fichier Vérifier l'existence d'un fichier ou d'un dossier UC4.RB.WIN.CHECK.FILE.EXISTS UC4.RB.UNX.CHECK.FILE.EXISTS UNIX, Compresser un fichier afin de l'ajouter à une archive UC4.RB.WIN.COMPRESS.FILE Copier un fichier UC4.RB.WIN.COPY.FILE UC4.RB.UNX.COPY.FILE UNIX, Créer un répertoire UC4.RB.WIN.CREATE.DIRECTORY UC4.RB.UNX.CREATE.DIRECTORY UNIX, Décompresser une archive ou un fichier UC4.RB.WIN.DECOMPRESS.FILE UC4.RB.UNX.DECOMPRESS.FILE UNIX, Supprimer un répertoire UC4.RB.WIN.DELETE.DIRECTORY UC4.RB.UNX.DELETE.DIRECTORY UNIX, Supprimer un fichier UC4.RB.WIN.DELETE.FILE UC4.RB.UNX.DELETE.FILE UNIX, Déplacer un fichier UC4.RB.WIN.MOVE.FILE UC4.RB.UNX.MOVE.FILE UNIX, Renommer un fichier UC4.RB.WIN.RENAME.FILE UC4.RB.UNX.RENAME.FILE UNIX, Remplacer du texte dans un fichier UC4.RB.WIN.REPLACE.TEXT.IN.FILE UC4.RB.UNX.REPLACE.TEXT.IN.FILE UNIX,
Chapter2 Run Book Templates 5 Actions système d'exploitation Installer un package RPM UC4.RB.UNX.CHECK.INSTALL.RPM.PACKAGE UNIX
6 Chapter 2 Run Book Templates Vérifier l'exécution d'un certain processus UC4.RB.WIN.CHECK.PROCESS.RUNNING UC4.RB.UNX.CHECK.PROCESS.RUNNING UNIX,
Chapter2 Run Book Templates 7 Vérifier l'installation d'un package RPM UC4.RB.UNX.CHECK.RPM.INSTALLED UNIX
8 Chapter 2 Run Book Templates Vérifier l'installation d'un service UC4.RB.WIN.CHECK.SERVICE.EXISTS
Chapter2 Run Book Templates 9 Vérifier le statut d'un service UC4.RB.WIN.CHECK.SERVICE.STATUS
10 Chapter 2 Run Book Templates Désinstaller un package RPM UC4.RB.UNX.CHECK.UNINSTALL.RPM.PACKAG E UNIX
Chapter2 Run Book Templates 11 Installer un service Achever un processus en indiquant le nom du processus et éventuellemen t le nom de l'utilisateur Achever un processus en indiquant l'id processus Effectuer un ping pour un hôte défini Imprimer le contenu d'un fichier Déterminer l'espace disque occupé d'un ordinateur Redémarrer un ordinateur Démarrer / arrêter / redémarrer un service Exécuter MSI Installer Exécuter une commande Désinstaller un service Mettre un service en pause (avec WMI) Reprendre un service (avec WMI) UC4.RB.WIN.INSTALL.SERVICE UC4.RB.WIN.KILL.PROCESS UC4.RB.WIN.KILL.PROCESS.PID UC4.RB.UNX.KILL.PROCESS.PID UC4.RB.WIN.PING UC4.RB.UNX.PING UC4.RB.WIN.PRINT.FILE UC4.RB.WIN.PS.DISK.USAGE UC4.RB.WIN.PS.RESTART.SYSTEM UC4.RB.WIN.PS.SERVICE.RE.START.STOP UC4.RB.WIN.RUN.MSI.INSTALLER UC4.RB.WIN.RUN.PROGRAM UC4.RB.WIN.UNINSTALL.SERVICE UC4.RB.WIN.WMIC.PAUSE.SERVICE UC4.RB.WIN.WMIC.RESUME.SERVICE UNIX, UNIX,
12 Chapter 2 Run Book Templates Perforce (P4) Ajouter un fichier UC4.RB.WIN.P4.ADD.FILE Modifier un fichier UC4.RB.WIN.P4.EDIT.FILE Lister les workspaces UC4.RB.WIN.P4.GET.WORKSPACES Revert Changelist UC4.RB.WIN.P4.REVERT.CHANGELIST Submit Changelist UC4.RB.WIN.P4.SUBMIT.CHANGELIST Copier le(s) fichier(s) du dépôt dans le workspace UC4.RB.WIN.P4.SYNC.FILE
Chapter3 Dialogue de saisie dynamique pour l'activation de Jobs 13 3 Dialogue de saisie dynamique pour l'activation de Jobs Objectif : Création d'un masque de saisie permettant de sélectionner un ou plusieurs Agents sur lesquels un Job doit être exécuté. Les Agents qui peuvent être sélectionnés sont déterminés de façon dynamique à partir de la base de données lors de l'exécution. De plus, un objet Queue et une commande du système d'exploitation doivent être définis dans le dialogue de saisie. Vous pouvez pour cela définir en toute confiance dans le dialogue de saisie la commande du système d'exploitation à exécuter et les ordinateurs sur lesquels elle doit l'être. Objets utilisés : PromptSet, Script, Job (), Variable (interne SQL) Eléments de script utilisés: :SET, :PSET, :WHILE :ENDWHILE, :IF :ELSE :ENDIF, LENGTH, SYS_ HOST_ALIVE, ACTIVATE_UC_OBJECT, :PRINT, :DATA, :PUT_ATT Prérequis : Vous devez créer et utiliser des Variables propres à SQL (privilège et paramètre SQLVAR_ INTERNAL = Y dans la Variable UC_SYSTEM_SETTINGS requis) Cet exemple explique l'utilisation des objets PromptSet, des objets Variables dynamiques, des Variables prédéfinies et des tableaux de script. Exemple La saisie des valeurs définies par l'utilisateur s'effectue via un objet PromptSet appelé via un objet script. Les objets Queue pouvant être sélectionnés et les Agents sont recherchés dans la base de données à l'aide des objets Variables du type SQL interne. Après l'envoi du dialogue PromptSet, un Job est lancé sur chacun des Agents choisis. Définition d'un masque de saisie Les objets PromptSet représentent un masque de saisie défini par l'utilisateur ; ils sont appelés via des objets activables. Les éléments d'un objet PromptSet permettent de saisir ou de sélectionner les valeurs, les valeurs autorisées ou sélectionnables étant issues d'un objet Variable (= Variable de référence). Ainsi, les objets Variables de référence doivent tout d'abord être créés : Créez deux objets Variables du type SQLI: VARA.SQLI.AGENT et VARA.SQLI.QUEUE. L'avantage des objets Variables du type SQL interne réside dans le fait que les valeurs sont déterminées de façon dynamique à partir de la base de données pendant l'exécution. Les valeurs actuelles sont ainsi toujours affichées dans l'élément PromptSet. Lorsqu'un nouvel Agent est ajouté, par exemple, il est automatiquement affiché lors de l'appel suivant du masque de saisie. Vous pouvez également naturellement utiliser des Variables statiques dont le contenu peut toutefois être géré manuellement. Une des Variables lit tous les Agents, l'autre lit tous les objets Queue du Client actuel à partir de la base de données. Ajoutez les instructions SQL suivantes dans les objets Variables si vous voulez utiliser une base de données MS SQL Server : VARA.SQLI.AGENT : select OH_Name from oh where oh_otype='host' and OH_HostAttrTypeDst='WINDOWS' order
14 Chapter 3 Dialogue de saisie dynamique pour l'activation de Jobs by OH_Name VARA.SQLI.QUEUE : select OH_Name from oh where oh_otype='queue' and OH_Client=&$CLIENT# and OH_ RefIdnr = '0' order by OH_Name Les instructions SQL doivent être modifiées en conséquence pour une autre base de données (Oracle ou DB2). Vérifiez ensuite les instructions SQL à l'aide de la fonction "Prévisualisation". Si les valeurs sont affichées sans erreur, les instructions fonctionnent. La Variable &$CLIENT# est une Variable prédéfinie qui est remplacée lors de l'exécution par le numéro du client AE actuel. Pour résoudre cette Variable, le paramètre VAR_SECURITY_LEVEL = 1 (ou 2 ou 3) au moins est nécessaire dans la Variable UC_SYSTEM_SETTINGS. Créez ensuite un nouvel objet PromptSet avec le nom : PRPT.AGENT Ouvrez l'objet et allez dans l'onglet Designer. Vous pouvez maintenant déplacer les éléments PromptSet souhaités de la droite vers le milieu à l'aide de la fonction Glisser-déposer. Dans notre exemple, nous devons utiliser les éléments PromptSet suivants avec les propriétés citées: Eléments Description Propriétés
Chapter3 Dialogue de saisie dynamique pour l'activation de Jobs 15 Zone de texte Check-list Champ combiné Zone de texte Pour le nom du Job (prédéfini dans notre exemple) Permet de sélectionner un ou plusieurs Agents Permet de sélectionner un objet Queue Saisie d'une commande de système d'exploitation Référence des données : UC_ DATATYPE_STRING Valeur requise Nom de Variable : Job# Légende : Job Verrouillé Valeur par défaut : JOBS.WIN.PROMPT Référence des données : VARA.SQLI.AGENT Valeur requise Sélection multiple, tableau Nom de Variable : agent# Légende : Agent Référence des données : VARA.SQLI.QUEUE Nom de Variable : queue# Légende : Queue Valeur par défaut : &$QUEUE# (queue de l'objet script) Référence des données : UC_ DATATYPE_STRING (standard) Valeur requise Nom de Variable : jcl# Légende : JCL Valeur par défaut : dir C:\
16 Chapter 3 Dialogue de saisie dynamique pour l'activation de Jobs Objet script L'objet script permet d'appeler l'objet PromptSet, de lire ses valeurs et d'activer les Jobs. Créez un nouvel objet script: SCRI.START.JOBS Ouvrez l'objet et allez dans l'onglet "Variables & Prompts". Sous "PromptSets", sélectionnez l'objet PromptSet précédemment créé PRPT.AGENT. Si vous le souhaitez, vous pouvez écraser ici les valeurs standard des éléments PromptSet. Accédez à l'onglet Script et ajoutez les lignes suivantes : :SET &LEN# = LENGTH(&AGENT[]) :WHILE &LEN# > 0 : PSET &HOST# = &AGENT[&LEN#] : IF SYS_HOST_ALIVE(&HOST#) = "Y" : SET &RET# = ACTIVATE_UC_OBJECT(&JOB#,,,,,PASS_VALUES,&queue#,"&JOB#_ &HOST#") : P "Lance le Job &JOB# sur l'agent &HOST# avec le RunID &RET#" : ELSE : P "L'Agent &HOST# est inactif!" : ENDIF : SET &LEN# = &LEN# - 1 :ENDWHILE Ce script permet de déterminer combien d'agents ont été sélectionnés dans l'objet PromptSet. Les noms des Agents sont ensuite lus à partir du tableau du script. Si l'agent est actif, le Job est lancé. Pour différencier les exécutions du Job dans les statistiques, un alias est utilisé pour les exécutions. Il se compose des noms du Job et de l'agent. Exemple : JOBS.WIN.PROMPT_WIN01 Job Créez un objet Job avec le nom ci-après: JOBS.WIN.PROMPT Ouvrez le Job et saisissez dans l'onglet Attribut un objet Login qui fonctionne pour tous les Agents. Accédez ensuite à l'onglet "Pré-traitement" et ajoutez les lignes suivantes: : PUT_ATT HOST = &HOST# L'Agent qui a été transmis par l'objet script au moyen d'une Variable d'objet est ainsi activé de façon dynamique lors de l'exécution. Les lignes suivantes sont requises dans l'onglet Script pour exécuter la commande définie par l'utilisateur : :DATA &jcl# :DATA "@set retcode=%errorlevel%" :DATA "@if NOT %ERRORLEVEL% == 0 goto :retcode"
Chapter3 Dialogue de saisie dynamique pour l'activation de Jobs 17 Résultat L'objet script doit être lancé pour appeler la boîte de dialogue de saisie. Sélectionnez l'agent souhaité et un objet Queue. Saisissez dans le champ "JCL" une commande qui doit être exécutée sur les ordinateurs de l'agent sélectionné. Dans ce cas, le Job JOBS.WIN.PROMPT est lancé dans la queue CLIENT_QUEUE sur les Agents WIN01, WIN02 et WIN03. La liste des fichiers de C:\ est demandée sur les ordinateurs de ces Agents. Vous pouvez ainsi exécuter rapidement et simplement des commandes définies par l'utilisateur sur plusieurs ordinateurs. s
18 Chapter 4 Contrôle du comportement de Transfert de Fichier par le biais de conditions dans un 4 Contrôle du comportement de Transfert de Fichier par le biais de conditions dans un Workflow Objectif : Un Transfert de Fichier doit être lancé via un Workflow. Il faut pour cela vérifier dans le Workflow s'il existe des fichiers source et cible et si les actions correspondantes sont activées. Objets utilisés : Workflow, Job (), Transfert de Fichier Eléments de script utilisés: SYS_TIME_PHYSICAL, SYS_DATE_PHYSICAL, STR_CUT, STR_FIND, :SET, :PSET, :PRINT, :DATA, :PUT_ATT Cet exemple explique comment les conditions/instructions sont utilisées par les Tâches de Workflow. Exemple Un Job (JOBS.WIN.COND) d'un Workflow doit appeler la liste des fichiers d'un répertoire et l'écrire dans un fichier texte. Un Transfert de Fichier (JOBF.CONDITIONS) est ensuite activé via le Workflow, lequel transfère ce fichier sur un autre ordinateur. Le système vérifie ensuite dans le Workflow si des problèmes sont survenus lors du Transfert de Fichier et si les actions correspondantes sont activées. Cette vérification est possible via les onglets Pré-conditions et Post-conditions dans les propriétés des Tâches du Workflow. Le Transfert de Fichier ne doit ensuite être démarré que si le fichier source existe. Sinon, le Workflow est interrompu. Si le fichier cible existe déjà, le Transfert de Fichier est alors interrompu. Le statut d'interruption est reconnu par les conditions du Workflow et un Job qui modifie le nom du fichier cible (JOBS.WIN.COND2) est démarré. Le Transfert de Fichier est ensuite redémarré. Ce mécanisme permet de vérifier qu'aucune erreur n'est survenue et que les fichiers cibles ne sont pas écrasés. Créez d'abord le Workflow : JOBP.CONDITIONS Ouvrez-la et allez dans l'onglet "Variables & Prompts". Saisissez ici les Variables d'objet qui contiennent les valeurs pour les Tâches du Workflow. L'avantage réside dans le fait que les valeurs sont enregistrées à un endroit et peuvent ensuite être facilement modifiées. Nom de Variable Valeur Description &SAGENT# WIN01 Agent source du Transfert de Fichier &DAGENT# WIN02 Agent cible du Transfert de Fichier &SLOGIN# GLOBAL.LOGIN Objet Login pour la connexion à l'ordinateur source &DLOGIN# GLOBAL.LOGIN Objet Login pour la connexion à l'ordinateur cible &DFILE# C:\temp\test2.txt Chemin et nom du fichier cible
Chapter4 Contrôle du comportement de Transfert de Fichier par le biais de conditions dans un Workflow Créez ensuite les objets du Workflow : Job : JOBS.WIN.COND Ajoutez les lignes de script suivantes dans l'onglet Pré-traitement: :PUT_ATT HOST = &SAGENT# :PUT_ATT LOGIN = &SLOGIN# L'Agent et l'objet Login du Job sont ainsi activés lors de l'exécution. Les Variables d'objet sont héritées du Workflow. Veillez donc à ce que le paramètre Hérite du parent dans l'onglet "Variables & Prompts" soit activé en conséquence. Les lignes suivantes doivent être indiquées dans l'onglet script : :SET &DATE# = SYS_DATE_PHYSICAL("YYYYMMDD") :SET &TIME# = SYS_TIME_PHYSICAL("HHMMSS") :PSET &SFILE# = "C:\temp\&DATE#_&TIME#.txt" :DATA dir C:\ >> &SFILE# :DATA @set retcode=%errorlevel% :DATA @if NOT %ERRORLEVEL% == 0 goto :retcode Ce script permet de créer un fichier texte dont le nom se compose de l'heure et de la date actuelles. Ce fichier texte est rempli avec la liste de fichiers de C:\. Le nom du fichier texte est également enregistré dans une Variable d'objet et transmis au Workflow pour le Transfert de Fichier. Transfert de Fichier : JOBF.CONIDITONS Accédez à l'onglet Transfert de Fichier et activez l'option "Fichier Existe" - "Interrompre". Tous les autres attributs requis sont activés lors de l'exécution à l'aide des Variables d'objet héritées du Workflow. Les lignes ci-dessous sont donc nécessaires dans l'onglet script: :PUT_ATT FT_SRC_HOST = &SAGENT# :PUT_ATT FT_DST_HOST = &DAGENT# :PUT_ATT FT_SRC_LOGIN = &SLOGIN# :PUT_ATT FT_DST_LOGIN = &DLOGIN# :PUT_ATT FT_SRC_FILE = &SFILE# :PUT_ATT FT_DST_FILE = &DFILE# Enregistrez ensuite les objets et ajoutez-les au Workflow. Le Job doit être exécuté avant le Transfert de Fichier.
20 Chapter 4 Contrôle du comportement de Transfert de Fichier par le biais de conditions dans un Définissez maintenant les conditions et les instructions du Transfert de Fichier dans le Workflow. Ouvrez pour cela les propriétés de JOBF.CONDITIONS et accédez à l'onglet Pré-conditions. JOBF.CONDITIONS - Onglet Pré-conditions Définissez la condition CHECK FILE avec les paramètres suivants: Agent *OWN,nom de fichier : &SFILE#, condition : existe Définissez RUN TASK comme instruction principale. Un bloc Sinon doit également être ajouté dans CHECK FILE avec l'action CANCEL PROCESSFLOW (Etendue : *OWN, Tâches subordonnées : inclues). Attention : le paramètre Générer à l'exécution ne doit pas être activé dans l'objet Transfert de Fichier. Une erreur due à l'utilisation de la Variable d'objet &SFILE# dans les pré-conditions survient alors.
Chapter4 Contrôle du comportement de Transfert de Fichier par le biais de conditions dans un Workflow JOBF.CONDITIONS - Onglet Post-conditions Vous définissez dans cet onglet les conditions qui vérifient si le Transfert de Fichier s'est terminé par une interruption (STATUS) et si le fichier cible existe (CHECK FILE). La Variable prédéfinie &$RESTART_ COUNT# indique la fréquence à laquelle la Tâche a été redémarrée via cet onglet. Pour éviter une boucle sans fin, la Tâche soit être interrompue après 3 reprises. Si ce nombre n'est pas encore atteint, le Job JOBS.WIN.COND2, qui renomme le fichier cible existant, est démarré. Aucune donnée n'est ainsi écrasée. Le Transfert de Fichier est ensuite répété (RESTART TASK). Le Job est démarré avec un alias qui se compose du nom de l'agent cible et de l'objet Login, séparés par un tiret. Ces valeurs sont lues à partir de l'alias dans le pré-traitement du Job et saisies dans les attributs.
22 Chapter 4 Contrôle du comportement de Transfert de Fichier par le biais de conditions dans un Créez enfin le Job : JOBS.WIN.COND2 Ce Job modifie le nom du fichier cible et n'est démarré qu'en cas d'erreur via les propriétés du Workflow du Transfert de Fichier. Le script suivant de l'onglet Pré-traitement permet de lire l'agent et le Login à partir de l'alias et de les activer via :PUT_ATT. :SET &ALIAS# = &$ALIAS# :SET &STRPOS# = STR_FIND(&ALIAS#,'_') :SET &STRPOS# = &STRPOS#+1 :SET &LOGIN# = STR_CUT(&ALIAS#,&STRPOS#) :SET &STRPOS# = &STRPOS#-2 :SET &AGENT# = STR_CUT(&ALIAS#,1,&STRPOS#) :PUT_ATT HOST = &AGENT# :PUT_ATT LOGIN = &LOGIN# Les lignes de l'onglet script servent à renommer le fichier cible correspondant (nouveau nom de fichier = heure actuelle): :SET &TIME# = SYS_TIME_PHYSICAL("HHMMSS") :DATA rename "C:\temp\test2.txt" &TIME#.txt :DATA @set retcode=%errorlevel% :DATA @if NOT %ERRORLEVEL% == 0 goto :retcode Le nom du fichier cible est transmis de façon non dynamique au Job et peut donc le cas échéant être modifié manuellement.
Chapter4 Contrôle du comportement de Transfert de Fichier par le biais de conditions dans un Workflow Résultat Lorsque le Workflow JOBP.CONDITIONS est lancée, un fichier est créé sur l'ordinateur de l'agent WIN01 par un Job JOBS.WIN.COND. Le Transfert de Fichier doit transférer ce fichier de l'ordinateur (WIN01) vers un autre ordinateur (WIN02). Si le fichier source existe, le Transfert de Fichier n'est pas lancé. Si le fichier cible existe, le Transfert de Fichier est interrompu. Le fichier cible est ensuite renommé et l'opération répétée. Aucun fichier n'est ainsi écrasé et les données enregistrées sont conservées. Il est donc possible d'intercepter certaines erreurs et d'activer les actions correspondantes directement dans le Workflow en exécutant des vérifications définies.
24 Chapter 5 Exécution d'un MBean 5 Exécution d'un MBean Objectif : Le résultat de l'exécution d'un MBean doit être transféré pendant le traitement. Objets utilisés : Job, Workflow et Variable Eléments de script utilisés : :ENDPROCESS, GET_PROCESS_LINE, GET_VAR, JMX_INVOKE, PREP_PROCESS_REPORT, :PROCESS, :PUT_VAR, R3_ACTIVATE_REPORT et R3_MODIFY_ VARIANT Exemple A l'aide de l'agent JMX et des fonctions proposées par l'automation Engine, vous pouvez établir une connexion au serveur MBean et accéder à ses MBeans. Cet exemple montre comment exécuter un MBean. Le résultat est par la suite transmis à une variante dans SAP avec laquelle un rapport est alors exécuté. Variable En premier, vous avez besoin d'une Variable qui enregistre l'evènement d'exécution du MBean. Créez pour cela un objet Variable statique avec les attributs suivants : Source : Statique Type de donnée : Texte Plage de validité : Index libre Clef non trouvée : Valeur initiale Entrez également une Clef contenant la valeur du MBean.
Chapter5 Exécution d'un MBean 25 Jobs Créez ensuite un Job JMX. Sélectionnez la connexion au serveur MBean dans l'onglet de l'hôte, puis utilisez l'onglet "Forme" afin d'entrer la fonction pour l'exécution. L'exemple suivant présente un extrait de l'onglet Script : JMX_INVOKE OPERATIONNAME=conversionRate, MBEAN=UC4:type=CurrencyConverter, SIGNATURE="java.lang.String,java.lang.String", PARAMS="USD,EUR" Le MBean "UC4:type=CurrencyConverter" issu de l'exemple précédent détermine le taux de change dollar-euro et l'écrit dans le rapport de Job. Vous pouvez lire la valeur à l'aide de la fonction script PREP_ PROCESS_REPORT. Utilisez cet élément de script dans l'onglet Post-Script du Job JMX. En voici un exemple : :SET &HND# = PREP_PROCESS_REPORT("JOBS",, "REP",,"COL=DELIMITER", "DELIMITER=*:*") :PROCESS &HND# : SET &RET# = GET_PROCESS_LINE(&HND#0,2) : PUT_VAR VARA.CURRENCY_RATE,"RATE",&RET# :ENDPROCESS L'étape suivante consiste à créer un Job SAP. Celui-ci doit lire le taux de change dans l'objet Variable, modifier une variante et démarrer un rapport. Créez un Job SAP et entrez les instructions de traitement via l'onglet Forme ou directement dans l'onglet script. En voici un exemple : :SET &RATE# = GET_VAR(VARA.CURRENCY_RATE,"RATE") R3_MODIFY_VARIANT REPORT='Z_CURRENCY_ ABAP',VARIANT='VARIANTE1',SELNAME='RATE',KIND='P',LOW='&RATE#' R3_ACTIVATE_REPORT REPORT='Z_CURRENCY_ABAP',VARIANT='VARIANTE1' Attention, la valeur déterminée pour le paramètre LOW est issue de l'objet Variable. Workflow Créer enfin un Workflow contenant les deux Jobs. L'exécution du Workflow nécessite que le MBean utilisé soit enregistré auprès du serveur MBean. Utilisez pour ce faire la fonction script JMX_CREATE_MBEAN une seule fois. A l'inverse, JMX_ UNREGISTER_MBEAN supprime un MBean déjà enregistré.
26 Chapter 6 Affichages à l'aide du Cockpit 6 Affichages à l'aide du Cockpit Objectif : Certaines informations sur le statut de l'agent et l'espace disque actuel de la machine s'affichent dans un Cockpit. Objets utilisés : Cockpit, Evènement et Variable Eléments de script utilisés : GET_FILESYSTEM, PUT_VAR et SYS_HOST_ALIVE Exemple L'affichage de valeurs dans un Cockpit est réalisé par les objets Variable statiques. Ils contiennent en général les données définies par le script PUT_VAR, mais peuvent être modifiés manuellement. Pour que les informations à afficher correspondent à un statut actuel, un Evènement cyclique transmettant les valeurs régulièrement est sélectionné. Variable Créez tout d'abord une Variable statique (STATIC) avec les attributs suivants : Type de donnée : Texte Plage de validité : Index libre Clef non trouvée : Valeur initiale Cette variable contiendra les données d'un hôte particulier. Evènement
Chapter6 Affichages à l'aide du Cockpit 27 Dans un deuxième temps, créez un Evènement cyclique et définissez son intervalle d'exécution dans l'onglet Evènement. Dans l'onglet "! Script", vous devez conserver les étapes de traitement à réaliser périodiquement. Dans cet exemple, il s'agit des lignes de script suivantes.!requête sur l'activité de l'agent WIN01 :SET &hôte_actif# = SYS_HOST_ALIVE('WIN01')!Le statut d'activité est enregistré!en tant que nombre dans l'objet Variable pour son affichage dans le Cockpit. :IF &hôte_actif# = 'Y' : PUT_VAR 'HOST_WIN01','HOTE_ACTIF', '1' :ELSE : PUT_VAR 'HOTE_WIN01','HOTE_ACTIF', '0' :ENDIF!Requête sur l'espace disque disponible,! et enregistrement de la valeur obtenue dans l'objet Variable. :SET &place_totale# = GET_FILESYSTEM('WIN01','C:\.',FILESYSTEM_SPACE_ TOTAL,GB) :PUT_VAR 'HOTE_WIN01','ESPACE_TOTAL', &espace_total# :SET &espace_utilisé# = GET_FILESYSTEM('WIN01','C:\.',FILESYSTEM_SPACE_ USED,GB) :PUT_VAR 'HOTE_WIN01','ESPACE_UTILISE', &espace_utilisé# :SET &espace_disponible# = GET_FILESYSTEM('WIN01','C:\.',FILESYSTEM_SPACE_ FREE,GB) :PUT_VAR 'HOTE_WIN01','ESPACE_DISPONIBLE', &espace_disponible# On vérifie tout d'abord si l'agent WIN01 est actif. L'affichage du statut est réalisé dans le Cockpit, via une "lampe" ; c'est pourquoi le code retour ("Y"/"N") doit être enregistré sous forme de chiffre dans la Variable. Le script GET_FILESYSTEM permet de trouver des informations sur le système de fichier (espace disque, nombre de fichiers, etc.). Cockpit La dernière étape consiste à créer un Cockpit en utilisant les divers éléments d'affichage. N'oubliez pas d'attribuer la Variable précédemment créée, y compris la clé (menu contextuel "Propriétés"), à chacun d'eux en tant que source de données. Vous pouvez également définir la valeur à partir de laquelle la couleur des éléments d'affichage doit changer.
28 Chapter 6 Affichages à l'aide du Cockpit Démarrez maintenant les objets Evènement et Cockpit. L'Evènement remplit la Variable HOST_WIN01 avec les valeurs actuelles. Sélectionnez maintenant l'objet Cockpit dans la Fenêtre d'activités et ouvrez le moniteur (peut être exécuté via la barre d'outils ou le menu contextuel). Les valeurs sont représentées graphiquement, comme auparavant :
Chapter7 Maintenance de la base de données avec options 29 7 Maintenance de la base de données avec options Objectif : L'archivage de la base de données doit être automatisé dans un Workflow. L'Utilisateur peut en entrer la configuration correspondante dans une boîte de dialogue. Objets utilisés : Job, Workflow, Script et Variable Eléments de script utilisés : ACTIVATE_UC_OBJECT, :BEGINREAD, GET_VAR, :PRINT, :PUT_VAR et :READ Exemple La maintenance régulière de la base de données représente une part importante de la gestion d'un système AE. Pour cela, des utilitaires pouvant également être utilisés en mode batch sont à votre disposition. Il est très pratique de créer un Workflow exécutant les étapes de maintenance et recevoir les paramètres (par ex. Client) de l'utilisateur via une boîte de dialogue de saisie. Variable Créez tout d'abord une Variable statique avec les attributs suivants : Type de donnée : Texte Plage de validité : Index libre Clef non trouvée : Valeur initiale Elle contiendra la variable statique, le numéro du Client et les valeurs "J" ou "N" pour chaque étape de la maintenance, selon que l'utilisateur veut l'effectuer ou non.
30 Chapter 7 Maintenance de la base de données avec options Script Créez ensuite un script ouvrant une boîte de dialogue de saisie à l'aide du script :BEGINREAD, qui reçoit les informations sur le processus de maintenance envoyées par l'utilisateur : Il reçoit de l'utilisateur les informations sur le déroulement de la maintenance : Numéro du Client Possibilité de définir si un archivage, une réorganisation et/ou un déchargement de la base de données doivent être réalisés A l'aide du paramètre du script :BEGINREAD, indiquez que seuls des chiffres compris entre 0 et 99999 peuvent être saisis pour les Clients. Concernant les réglages possibles, les valeurs "O" et "N" doivent être sélectionnables. Les options sélectionnées doivent être enregistrées dans l'objet Variable. Utilisez également ce dernier pour entrer automatiquement les options utilisées lors de la dernière maintenance dans la boîte de dialogue de saisie. L'Utilisateur a bien sûr comme avant la possibilité de modifier la configuration. Le script démarre un Workflow chargé de la procédure de maintenance avec la fonction ACTIVATE_UC_ OBJECT. N'oubliez pas de demander avant si la valeur "N" a été sélectionnée pour toutes les options (archivage, réorganisation, déchargement). Le Workflow n'a alors pas besoin d'être démarré.!détermination de la configuration de la dernière maintenance. :SET &valeur_donnée_m# = GET_VAR('VARA.MAINTENANCE BASE DE DONNEES','CLIENT') :SET &valeur_donnée_a# = GET_VAR('VARA.MAINTENANCE BASE DE DONNEES','ARCHIVER') :SET &valeur_donnée_r# = GET_VAR('VARA.MAINTENANCE BASE DE DONNEES','REORGANISER') :SET &valeur_donnée_e# = GET_VAR('VARA.MAINTENANCE BASE DE DONNEES','DECHARGE')
Chapter7 Maintenance de la base de données avec options 31!Une fenêtre de dialogue s'affiche dans laquelle l'utilisateur peut entrer les options de maintenance. :BEGINREAD :PRINT "MAINTENANCE DE LA BASE DE DONNEES" :PRINT "------------------------------------------------------------------- -------" :READ &client#, "0-9999", 'Client (0-9999)', &valeur_donnée_m# :PRINT "------------------------------------------------------------------- -------" :PRINT "" :PRINT "Archivage" :READ &archiver#, "'J','N'",'Désirez-vous archiver la base de données?', &valeur_donnée_a# :PRINT "" :PRINT "Réorganisation" :READ &réorganiser#, "'J','N'",'Désirez-vous réorganiser la base de données?', &valeur_donnée_r# :PRINT "" :PRINT "Déchargement de la BD" :READ &décharger#, "'O','N'",'Désirez-vous décharger la base de données?',&valeur_donnée_e# :PRINT "" :PRINT "------------------------------------------------------------------- -------" :ENDREAD!Si l'utilisateur choisit l'option "Non", il n'y aura pas de maintenance. :IF &archiver# = 'N' : IF &réorganiser# = 'N' : IF &décharger# = 'N' : SET &démarrer#= 'N' : ENDIF : ENDIF :ENDIF :IF &démarrer# = 'N' : BEGINREAD : PRINT 'La maintenance de la base de données n'est pas effectuée.' : ENDREAD :ELSE : PUT_VAR 'VARA.MAINTENANCE BASE DE DONNEES','CLIENT',&client# : PUT_VAR 'VARA.MAINTENANCE BASE DE DONNEES','ARCHIVER',&archiver# : PUT_VAR 'VARA.MAINTENANCE BASE DE DONNEES','REORGANISER',&réorganiser# : PUT_VAR 'VARA.MAINTENANCE BASE DE DONNEES','DECHARGER',&décharge#!Le Workflow pour la maintenance de la base de données démarre. : SET &ret# = ACTIVATE_UC_OBJECT('JOBP.MAINTENANCE BASE DE DONNEES') :ENDIF Si l'option "Générer à l'exécution" est activée dans les attributs du script, la fenêtre de dialogue n'est pas affichée. Dans ce cas, la valeur par défaut sert de paramètre de réglage (s'applique également aux autres objets activables!). Workflow et Jobs Créez un Workflow contenant un Job pour chaque étape de la maintenance. Les scripts sont identiques, sauf pour l'appel de l'utilitaire. Il s'agit tout d'abord de déterminer si l'étape de la maintenance doit être
32 Chapter 7 Maintenance de la base de données avec options effectuée, et, le cas échéant, le Client concerné. Ensuite, selon que l'utilitaire est exécuté en mode batch ou noté dans le statut d'activation, cela indique que cette étape de maintenance n'est pas exécutée. ARCHIVER.JOBS :SET &archiver# = GET_VAR('VARA.MAINTENANCE BASE DE DONNEES','ARCHIVER') :SET &client# = GET_VAR('VARA.MAINTENANCE BASE DE DONNEES','CLIENT') :IF &archiver# = 'J' UCYBDBar -B -S&client# :ELSE : PRINT 'Pas d'archivage.' :ENDIF REORGANISER.JOBS :SET &réorganiser# = GET_VAR('VARA.MAINTENANCE BASE DE DONNEES','REORGANISER') :SET &client# = GET_VAR('VARA.MAINTENANCE BASE DE DONNEES','CLIENT') :IF &réorganiser# = 'J' UCYBDBar -B -S&client# :ELSE : PRINT 'Pas de réorganisation.' :ENDIF DECHARGER.LES.JOBS :SET &décharger#= GET_VAR('VARA.MAINTENANCE BASE DE DONNEES','DECHARGER') :IF &décharger# = 'J' UCYBDBun -BREORG :ELSE : PRINT 'Pas de décharge des enregistrements.' :ENDIF Si vous utilisez des Jobs, nous recommandons d'effectuer une recherche d'erreurs après chaque exécution de l'utilitaire, et de modifier le Code Retour en conséquence le cas échéant. Le Job s'interrompt aussi lorsque l'exécution de l'utilitaire échoue, ce qui vous permet d'identifier les erreurs le plus rapidement possible et d'y remédier. Pour cela, il faut insérer les deux lignes JCL suivantes après l'exécution du programme : @set retcode=%errorlevel% @if NOT %ERRORLEVEL% == 0 goto :retcode
Chapter7 Maintenance de la base de données avec options 33
34 Chapter 8 Notification avec texte du message variable 8 Notification avec texte du message variable Objectif : La notification par objet notification doit comprendre un texte dépendant de la Tâche qui l'appelle. Objets utilisés : notification Scripts utilisés : ACTIVATE_UC_OBJECT, :ADD_ATT, GET_ATT, :PUT_ATT, :PUT_ATT_APPEND, :PUT_READ_BUFFER, :READ, STR_FIND, SYS_ACT_PARENT_NAME, SYS_ACT_PARENT_NR et SYS_ACT_PARENT_TYPE Exemples Les objets notification sont utilisés pour la notification par moniteur, e-mail ou SNMP. Il est plus pratique de créer un objet notification dont le texte contient des informations dépendant de la tâche qui l'appelle. Cela vous permet une utilisation multiple de l'objet notification, dont le contenu s'adapte automatiquement. Tâche Utilisez les lignes de script suivantes pour démarrer l'objet notification à partir d'une tâche.!enregistrement du nom de l'agent dans le tampon de lecture :SET &hôte_att# = GET_ATT(HOTE) :PUT_READ_BUFFERhôte# = '&hôte_att#'!activer la notification :SET &ret# = ACTIVATE_UC_OBJECT('CALLOP') Comme les attributs peuvent uniquement être déterminés dans l'onglet Traitement de la même Tâche, dans cet exemple, le nom de l'agent sélectionné est défini dans le cache (tampon de lecture). L'objet notification peut lire la valeur à cet emplacement et donc l'utiliser pour l'affichage. Notification Créez maintenant un objet notification. Précisez la priorité et le type (requête, message, alerte), ainsi qu'un ou plusieurs Utilisateurs devant être prévenus. Le Script est structuré comme suit. Tout d'abord, le nom de l'agent est lu du le cache. Ensuite, d'autres informations sont transmises à la Tâche (nom, RunID et type d'objet). Cela s'avère utile lorsque vous appliquez certaines conventions à l'attribution de nom des objets. Dans le Script, on vérifie en effet si le nom de la Tâche contient une chaîne de caractères spécifique (ADMIN). Le cas échéant, les utilisateurs que vous avez saisis, ainsi que ceux du groupe "ADMIN", sont avertis. Le texte du message à générer se compose des instructions de Script :PUT_ATT et :PUT_ATT_ APPEND. Vous pouvez créer un saut de ligne avec la fonction UC_CRLF.!Lecture du nom de l'agent de la tâche :READ &hôte#,, :SET &nom# = SYS_ACT_PARENT_NAME(ACT) :SET &runid# = SYS_ACT_PARENT_NR(ACT) :SET &type# = SYS_ACT_PARENT_TYPE(ACT)
Chapter8 Notification avec texte du message variable 35!Si ADMIN fait partie du nom de la tâche'... :SET &chaîne# = STR_FIND (&nom#,'admin')!...alors les utilisateurs avertis sont ceux du groupe ADMIN. :IF &chaîne# <> '0' : ADD_ATT RECIPIENT, 'ADMIN' :ENDIF!Création du texte :PUT_ATT CALL_TEXT = 'La Tâche suivante n'a pas été exécutée correctement. Veuillez vérifier' :PUT_ATT_APPENDCALL_TEXT = UC_CRLF() :PUT_ATT_APPENDCALL_TEXT = UC_CRLF() :PUT_ATT_APPENDCALL_TEXT = 'Nom de la Tâche : &nom#' :PUT_ATT_APPENDCALL_TEXT = UC_CRLF() :PUT_ATT_APPENDCALL_TEXT = 'RunID de la Tâche : &runid#' :PUT_ATT_APPENDCALL_TEXT = UC_CRLF() :PUT_ATT_APPENDCALL_TEXT = 'Type de Tâche : &type#' :PUT_ATT_APPENDCALL_TEXT = UC_CRLF() :PUT_ATT_APPENDCALL_TEXT = 'Agent : &hôte#' L'illustration suivante présente une notification exécutée par la Tâche "ADMIN.MAINTENANCEDB" qui avertit l'utilisateur Henri. Comme il s'agit d'une "Tâche ADMIN", les participants du Groupe ADMIN (Philibert et Meunier) sont également avertis.
36 Chapter 8 Notification avec texte du message variable Rubriques connexes : notification - Exécution
Chapter9 Définir un statut de fin à cause du contenu d'un rapport 37 9 Définir un statut de fin à cause du contenu d'un rapport Objectif : Le contenu précis d'un rapport de Job doit être analysé lorsque le statut final est défini en fonction du résultat. Objets utilisés : Job Eléments de script utilisés : :CLOSE_PROCESS, :ENDPROCESS, GET_PROCESS_LINE, :MODIFY_ STATE, PREP_PROCESS_REPORT, :PRINT et :PROCESS Exemple Dans certaines situations, le traitement d'un Job dans le système AE se fait sans problème (l'agent est actif, les données de connexion sont correctes,...). Il se termine alors sans erreur. Le but du traitement n'est cependant pas réalisé (erreur dans le JCL par exemple). C'est pourquoi il est possible de lire le rapport dans l'onglet Post-traitement et d'adapter le statut final en fonction des résultats, par exemple. Job Dans l'exemple présenté ici, un Job sert à transférer des fichiers utilisés par FTP. La ligne suivante figure dans l'onglet Script : ftp -s:zweigstelle15.ftp Le fichier FTP "zweigstelle15.ftp" contient les commandes pour les fichiers à transférer. Il peut bien sûr arriver qu'un ou plusieurs fichiers soient introuvables. Dans ce cas-là, il est donc utile d'utiliser le script PREP_PROCESS_REPORT pour rechercher d'éventuels messages d'erreur FTP enregistrés dans le rapport.
38 Chapter 9 Définir un statut de fin à cause du contenu d'un rapport Le résultat de la fonction PREP_PROCESS_REPORT comporte toutes les lignes du rapport auxquelles le filtrage défini s'adapte et doit donc être évalué ligne par ligne dans une boucle PROCESS. Vous obtenez le contenu d'une ligne avec GET_PROCESS_LINE. Si aucune ligne n'est trouvée dans le rapport, la boucle PROCESS n'est pas non plus exécutée. Si le rapport contient un message d'erreur (par ex. fichier introuvable), vous pouvez y réagir en définissant, à l'aide de MODIFY_STATE, le texte de statut qui s'affiche dans la fenêtre de détails des statistiques et en modifiant le code retour du Job (ce qui influence le statut final). Attention : dans l'onglet Exécution du Job, l'intervalle pendant lequel le Job doit se terminer avec le statut ENDED_OK est défini pour le code retour. Exp : Définition pour ENDED_OK > Code retour <= 0 Code retour :MODIFY_STATE RETCODE = 0 :MODIFY_STATE RETCODE = 5 Résultat Le Job se termine avec ENDED_OK Le Job se termine avec ENDED_NOT_OK Le script qui exécute le processus précédemment expliqué se présente comme suit :!Vérification du rapport déclarant qu'un ou plusieurs fichiers à transmettre sont introuvables.!recherche de lignes contenant le texte "File not found". :SET &hnd# = PREP_PROCESS_REPORT(,,REP,'*File not found*')!chaque ligne trouvée sera incluse dans le rapport de post-traitement :PROCESS &hnd# : SET &ligne# = GET_PROCESS_LINE(&hnd#) : PRINT '&ligne#'!de plus, le statut final du Job est modifié. : MODIFY_STATE RETCODE = 11 : MODIFY_STATE STATUS_TEXT = 'Fichier(s) introuvable(s)!' :ENDPROCESS Si certains fichiers à transférer sont absents, les statistiques se présentent comme suit. Le Job se termine avec "ENDED_NOT_OK-interrompu" et présente le code retour défini 11.
Chapter10 Réaction à des événements externes 39 10 Réaction à des événements externes Objectif : Lorsqu'un événement SAP est déclenché dans le système AE, il doit s'afficher pour que l'utilisateur puisse y réagir. Objets utilisés : événements de console, notification Scripts utilisés : ACTIVATE_UC_OBJECT, GET_EVENT_INFO, PRINT Exemples Parmi les objets, on compte également les événements de type "Console". Ils sont disponibles sur quelques-unes des plate-formes prises en charge par AE (par ex. z/os ou ) et surveillent les sorties de console. Reliez cette fonctionnalité à votre système AE pour également réagir aux événements qui n'ont pas été déclenchés par AE. L'exemple illustre cette méthode à l'aide d'un événement SAP. Un opérateur doit être averti lorsqu'un transport se produit dans un système SAP productif. Evénements En premier, nous avons besoin d'un événement de console qui surveille les événements SAP déclenchés. Nous souhaitons réagir lorsqu'un transport est exécuté. Dans ce cas, le système SAP déclenche l'événement "SAP_IMPORT_START". L'Agent l'identifie à l'événement de console à chaque fois que le!script est exécuté. Cela signifie que nous pouvons réagir à l'événement SAP déclenché à l'aide d'instructions que nous enregistrons dans le!script. Suivez un événement de console. Les principales caractéristiques de cet objet sont configurées dans l'onglet Console. Sélectionnez l'agent relié au système SAP. Dans le tableau situé dans la zone inférieure, vous devez entrer des critères de sélection pour les événements SAP à surveiller. Pour cela, il est possible de saisir certains événements ou de les entrer à l'aide des caractères génériques "*" et "?". Vous devez définir le filtre. Vous pouvez bien entendu également utiliser plusieurs lignes. En ce qui nous concerne, nous n'avons besoin que d'une seule ligne. Entrez "SAP_IMPORT_START" comme ID de l'événement et remplissez les champs de paramètres d'événement et de Serveur d'événements adaptés à votre système SAP. Dans l'illustration suivante, vous pouvez voir l'onglet Console complètement rempli.
40 Chapter 10 Réaction à des événements externes Notification Vous pouvez réagir de plusieurs manières à un événement SAP déclenché. Vous pouvez par exemple lancer un traitement séquentiel sous forme de Workflows. Dans notre exemple, nous informons un Utilisateur avec une notification. Créez un objet notification. Sélectionnez un Utilisateur devant être informé et formulez un message adapté. La priorité de la notification et son type doivent également être définis. Événement Dans l'événement de console, passez maintenant à l'onglet Script. Nous souhaitons conserver des informations détaillées sur l'événement SAP dans le rapport et activer l'objet notification. Nous y parvenons tout d'abord à l'aide de la fonction script GET_EVENT_INFO. Elle fournit une information précise sur l'événement SAP en fonction du paramètre transmis. Plusieurs mots clés sont disponibles. L'Agent annonce les événements SAP dans un intervalle que l'administrateur AE a défini à l'aide du paramètre JOB_CHECKINTERVAL. Ce qui nous intéresse donc, c'est le moment où l'événement SAP a été déclenché. Nous transmettons toutefois les paramètres d'événement complets et le Serveur d'événements, car nous les avons indiqués pour les deux filtres dans l'événement de console. Puis activez "CALL.SAP_IMPORT_START". :SET &marque horaire# = GET_EVENT_INFO(TIMESTAMP) :PRINT "marque horaire : &marque horaire#" :SET ¶mètre# = GET_EVENT_INFO(EVENT_PARM) :PRINT "paramètre de l'evènement : ¶mètre#" :SET &Serveur# = GET_EVENT_INFO(EVENT_SERVER) :PRINT "Serveur d'evènements : &Serveur#" :SET &ret# = ACTIVATE_UC_OBJECT(CALL.SAP_IMPORT_START) Les informations sur l'événement SAP peuvent également être transmises à la notification. L'exemple "Notification avec texte du message Variable" vous indique comment cela fonctionne. Le rapport de l'exécution du Script se présente comme suit dans la structure :
Chapter10 Réaction à des événements externes 41
42 Chapter 11 Détermination du message et du numéro de l'erreur 11 Détermination du message et du numéro de l'erreur Objectif : En cas d'erreur, le texte du message et le numéro correspondants doivent être demandés et transmis par e-mail. Objets utilisés : tout objet activable Scripts utilisés : ACTIVATE_UC_OBJECT, GET_MSG_TXT, :ON_ERROR, PRINT, SEND_MAIL, SYS_ACT_ME_NAME, SYS_ACT_ME_NR, SYS_LAST_ERR_INS, SYS_LAST_ERR_NR, UC_ CRLF, XML_CLOSE, XML_GET_NODE_TEXT et XML_OPEN Exemple Si un script rencontre une erreur au cours du traitement, un message comportant le texte et le numéro correspondant est émis. Vous avez la possibilité d'accéder à ces informations afin de pouvoir utiliser chaque valeur par la suite. Il est donc possible de définir des réactions précises à des erreurs survenues. Tâche L'exemple suivant illustre la manière dont l'ensemble du message d'erreur apparaît et est transféré à un destinataire par e-mail. Le point de départ est l'activation d'un objet nommé "GS.FIN". Comme le nom est utilisé à plusieurs endroits, il permet de définir une Variable de Script pour chacun d'entre eux. S'il est impossible d'activer l'objet, la fonction de Script ACTIVATE_UC_OBJECT renvoie la valeur 0. Dans ce cas, les informations relatives à la dernière erreur survenue peuvent être transmises. Pour cela, utilisez le Script suivant : SYS_LAST_ERR_NR - Fournit le numéro d'erreur SYS_LAST_ERR_INS - Fournit la partie variable du texte d'erreur (par ex. RunID) GET_MSG_TXT- Fournit l'ensemble du texte d'erreur en se basant sur le numéro d'erreur et la partie variable Les valeurs peuvent par exemple être envoyées à un destinataire par e-mail pour l'avertir. Comme les responsabilités sont souvent réparties entre plusieurs personnes au sein d'un système AE, l'enregistrement d'un interlocuteur présente un avantage. Il peut être spécifié pour chaque objet dans l'onglet Documentation. Utilisez pour cela les modèles d'objet, afin d'entrer cette information et d'autres encore. Si un objet est créé à l'aide d'un modèle, ce dernier reprend le contenu défini précédemment. L'illustration suivante montre un onglet Documentation structuré. Celui-ci présente l'avantage de pouvoir être lu avec des Scripts spéciaux (XML*).
Chapter11 Détermination du message et du numéro de l'erreur 43 La fonction de Script XML_GET_NODE_TEXT vous permet d'indiquer l'interlocuteur. Celui-ci sert de destinataire de l'e-mail qui peut être envoyé avec SEND_MAIL. L'e-mail contient le nom de l'objet à démarrer, celui de la Tâche contenant la tentative d'activation et le RunID de celle-ci. Conseil sur :ON_ERROR : Pour chaque Script, y compris ACTIVATE_UC_OBJECT, vous pouvez déterminer vous-même si le traitement du Script s'interrompt en cas d'erreur. Dans cet exemple, ":ON_ERROR RESUME" est indiqué pour pouvoir analyser l'erreur survenue. Pour ":ON_ERROR ABEND", le Script serait interrompu par ACTIVATE_UC_OBJECT dans la ligne. Le script suivant présente chaque étape du processus expliqué précédemment :!Une notification doit être envoyée par e-mail,!si l'objet ne peut être activé. :SET&obj_to_be_started# = 'MM.ENDOFMONTH' :ON_ERROR RESUME :SET&start# = ACTIVATE_UC_OBJECT(&obj_to_be_started#) :IF&start# = 0 : SET &erreur_nr# = SYS_LAST_ERR_NR() : SET &erreur_var# = SYS_LAST_ERR_INS() : SET &message# = GET_MSG_TXT(&erreur_nr#,&erreur_var#) : PRINT'&message#'!Trouver l'interlocuteur : SET &docuxml# = XML_OPEN(,'@description') : SET &contact# = XML_GET_NODE_TEXT(&docuxml#) : XML_CLOSE : SET &nom_obj# = SYS_ACT_ME_NAME() : SET &runid_obj# = SYS_ACT_ME_NR()!Saut de ligne : SET &à#= UC_CRLF()
44 Chapter 11 Détermination du message et du numéro de l'erreur : SET&ret_mail# = SEND_MAIL('&contact#@automic.at',,'La Tâche &obj_à_ démarrer# n'a pas pu être démarrée','nom: &nom_obj# / RunID : &runid_ obj#&à#&à# MESSAGE : &message#') :ENDIF Pour pouvoir envoyer l'e-mail, la connexion e-mail d'un Agent doit être active!
Chapter12 Synchronisation de Tâches actives 45 12 Synchronisation de Tâches actives Objectif : Les Tâches déjà actives doivent par la suite être synchronisées manuellement. Objets utilisés : Script et Sync Eléments de script utilisés : ADD, :ATTACH_SYNC, :BEGINREAD, FORMAT, GET_SYNC, GET_UC_ OBJECT_NR, :PRINT, :READ, SET_SYNC et :STOP Exemple Les objets Sync servent à synchroniser les Tâches. Ils peuvent être sélectionnés avec vos actions pour chaque objet exécutable. Il est également possible de synchroniser ultérieurement les Tâches déjà actives. Sync Des statuts sont définis dans un objet Sync (par ex : "EXCLUSIV - La base de données est utilisée de façon exclusive"). Vous pouvez définir vous-même leur désignation et leur nombre. L'objet Sync accepte l'un des statuts et le change dès que les actions surviennent. Ces actions sont également définies dans l'objet Sync, puis sont sélectionnables dans les objets. Vous pouvez alors rechercher l'objet Sync dans chaque objet exécutable, puis définir les actions et les moments de leur exécution (par ex. action - "RELEASE" à la fin de la Tâche). La synchronisation de Tâches est autorisée en fonction du statut actuel et de la réaction obtenue. Cet exemple montre comment synchroniser deux Tâches en définissant l'une comme successeur de l'autre. Le processus se présente comme suit : Objet Sync disponible? -> La 1ère Tâche est exécutée-> La 2nde Tâche est exécutée
46 Chapter 12 Synchronisation de Tâches actives Les statuts "DISPONIBLE", "TACHE1" et "TACHE2" en découlent pour l'objet Sync. Trois actions sont également nécessaires pour contrôler les statuts Sync : "SET_TACHE1", "SET_TACHE2" et "SET_ DISPONIBLE". La corrélation entre l'objet Sync et les Tâches est représentée dans le tableau suivant : Condition préalable : l'objet Sync a le statut "DISPONIBLE" Définition dans... Action Résultat SET_SYNC (dans le script) SET_TACHE1 La Tâche 1 peut démarrer 1. Tâche SET_TACHE2 (à la fin) La Tâche 2 peut démarrer 2. Tâche SET_DISPONIBLE (au début) L'objet Sync est de nouveau disponible Ces paramètres vous permettent de synchroniser deux Tâches par objet Sync. Dans cet exemple, deux objets Sync sont utilisés, ce qui est suffisant. La synchronisation manuelle n'est utilisée qu'en cas d'exception, par exemple, lorsqu'une Tâche supplémentaire doit être intégrée dans un processus existant. Créez le nombre d'objets Sync nécessaires. L'utilisation d'une désignation fixe plus d'un numéro comme nom d'objet présente un intérêt, car vous pouvez communiquer avec chaque objet Sync à l'aide d'un compteur. Script Comme la synchronisation ultérieure des deux Tâches peut être exécutée avec des scripts, vous devez créer un objet script contenant le déroulement nécessaire. Tout d'abord, une boîte de dialogue de saisie comportant les noms des deux Tâches est créée. Ensuite, il faut contrôler si ces Tâches sont vraiment actives (c'est-à-dire qu'elles possèdent un RunID). Sinon, le script est interrompu. Ensuite, une boucle WHILE vérifie s'il a des objets SYNC disponibles. Une Variable de compteur permet d'étudier les noms des séries (SYNC.JOB.DEPENDANCE_nn).
Chapter12 Synchronisation de Tâches actives 47 La fonction de script GET_SYNC permet de lire le statut actuel de l'objet Sync, qui doit être "DISPONIBLE" pour utiliser les Tâches. Si aucun objet Sync n'est trouvé, le script s'interrompt. Si un objet Sync est disponible, il peut être entré dans les deux Tâches à l'aide de l'instruction ATTACH_ SYNC.!Nombre d'objets Sync disponibles :SET &nombre_sync# = 2!Saisie de la première Tâche et de la suivante :BEGINREAD 'Dépendance dynamique des Tâches' : PRINT 'ATTENTION : les Tâches doivent déjà être actives' : PRINT '' : READ &Tâche1#,'00','Nom du prédécesseur',,m : READ &Tâche2#,'00','Nom du successeur',,m :ENDREAD!ITâche1 active? :SET &runid#a1# = GET_UC_OBJECT_NR(JOBS,'&Tâche1#') :IF &runid#a1# = '' : STOP MSG,50,'Prédécesseur (&Tâche1#) inactif' :ENDIF!Tâche2 active? :SET &runid#a2# = GET_UC_OBJECT_NR(JOBS,'&Tâche2#') :IF &runid#a2# = '' : STOP MSG,50,'Successeur (&Tâche2#) inactif' :ENDIF!Détermination avec le compteur d'un objet Sync disponible!(sync.job.dependance_01, SYNC.JOB.DEPENDANCE_02) :SET &statut# = '' :SET &compteur# = 0 :WHILE &statut# <>'DISPONIBLE' : SET &compteur# = ADD(&compteur#,1) : SET &compteur# = FORMAT(&compteur#,'00') : IF &compteur# > &nombre_sync# : STOP MSG,50,'Aucun objet Sync disponible' : ENDIF : SET &statut# = GET_SYNC('SYNC.JOB.DEPENDANCE_&compteur#','STATE') :ENDWHILE!Addition des objets Sync :SET &ret# = SET_SYNC('SYNC.JOB.DEPENDANCE_&compteur#','SET_TACHE1') :ATTACH_SYNCJOBS,&runid#a1#,'SYNC.JOB.DEPENDANCE_&compteur#',,,SET_TACHE2,W :ATTACH_SYNCJOBS,&runid#a2#,'SYNC.JOB.DEPENDANCE_&compteur#',SET_ DISPONIBLE,,W
48 Chapter Glossaire Glossaire Ce glossaire contient tous les concepts spécifiques. ABCDEFGHIJKLMNOPQRSTUVWXYZ.1 A AE DB Archive L'utilitaire AE DB Archive exporte, afin de la sécuriser, la quantité sans cesse croissante de données de la base de données Automation Engine. AE DB Change Utilitaire de modification d'exportation de conteneurs Transport. AE DB Client Copy Utilitaire de copie et suppression de clients AE DB Load Pour réaliser différents objectifs, l'utilitaire DBLoad charge des données dans la base de données Automation Engine. AE DB Reorg Utilitaire de réorganisation de la base de données Automation Engine. Les enregistrements reçoivent une marque de suppression en raison de certains réglages. AE DB Reporting Tool L'utilitaire AE DB Reporting Tool vous permet de procéder à des évaluations de votre système Automation Engine. Le résultat est présenté sous forme de fichier de rapport. AE DB Revision Report Utilitaire de décharge des rapports de révision issus de la base de données Automation Engine. Ces rapports contiennent des informations détaillées sur les modifications d'objets et les accès. AE DB Unload Utilitaire de déchargement de la base de données Automation Engine. Aide HTML Format d'aide de Microsoft pour les manuels. L'extension des fichiers d'aide est.chm (voir aussi WebHelp) Alerte Envoi de messages à un Utilisateur ou un Groupe Utilisateur unique du système AE. Egalement un type d'objet propre à l'automation Engine. Attributs de l'hôte attributs de l'objet Job, variant en fonction de la plate-forme. Automation Engine Ce composant commande un système Automation Engine. Il se compose de plusieurs processus serveur. Automation Engine L'Automation Engine est une application permettant de gérer le moment et la manière de l'exécution d'objets. Vous pouvez sélectionner des workflows et d'autres types d'objets à exécuter à certains moments ou pendant une certaine période. Ceci vous permet de surveiller automatiquement de façon centrale et à distance le traitement dans des systèmes AE. Le système suit et enregistre, dans des buts de protocole et d'analyse les activités de ces objets. Automation Engine Script null
Chapter Glossaire 49 activité voir Tâche agent Programme permettant l'exécution de Traitements sur des systèmes cible comme un ordinateur ou des solutions d'entreprise. Egalement un type d'objet distinct dans l'automation Engine..2 B Base de données AE Système de gestion de base de données relationnelles, permettant la gestion centralisée de toutes les données de planification. Elle contient définitions d'objet, paramètres système, données statistiques, rapports de Job, etc..3 C Calendrier Partie d'un objet Groupe Calendrier dans lequel les jours sont définis. CallAPI Interface de programmation pouvant être exécutée en direct ou à partir d'un autre programme, afin d'exécuter un Script dans le système AE. Clef Colonne pour les objets Variable statique par laquelle il est possible d'accéder aux Valeurs d'une ligne spécifique. Cockpit Visualise les valeurs et statuts dans l'automation Engine ou à partir des systèmes surveillés et contrôlés. Egalement un type d'objet distinct dans l'automation Engine. Code Retour Valeur représentant le résultat des Tâches et des fonctions de Script. Colonne Résultat Première colonne d'objets Variable avec la source "SQL", "SQL interne"et "Multi". Le contenu de cette colonne est déterminé par le Format du résultat. caractères génériques Caractères de remplacement des données de filtre (? = un caractère exactement, * = chaîne de caractères). classe d'objet Tous les objets sont répartis en 4 classes: objets activables, objets actifs, objets passifs et objets système. client Environnement indépendant pour la création et l'exécution d'objets dans un système AE. Le nom d'un client est un nombre de quatre chiffres à saisir lors de la connexion d'un utilisateur au système AE. Les utilisateurs et leurs droits y sont aussi définis.egalement un type d'objet distinct dans l'automation Engine.
50 Chapter Glossaire composants Regroupe tous les programmes Automic, notamment l'interface Utilisateur, les Serveurs, les Agents, les Service Manager, les utilitaires, etc. condition de calendrier Critère d'exécution pour les Tâches basées sur les Calendriers. connexion e-mail Fonctionnalité des Agents et UNIX permettant l'envoi d'e-mails. conteneur de périodes Contrôle l'exécution des tâches périodiques..4 D date logique Lors de l'exécution de Tâches, la date et l'heure jouent un rôle important. En temps normal, les deux sont actuelles. Dans certaines situations, il est cependant nécessaire de spécifier des date et heure particulières et non pas les date et heure actuelles. On parle alors d'une date logique. Cela influence la vérification des conditions de calendrier. dépendance externe Tâche dont le statut de fin est pris en compte dans le déroulement du Workflow, bien qu'elle ne soit pas exécutée dans le cadre du Workflow..5 E ECC Abréviation d'enterprise Control Center Enregistré en attente Statut d'une Tâche qui est exécutée dans un Groupe et attend son démarrage. Enterprise Control Center Application web d'automic, basée sur un navigateur, fournissant une interface unique pour la plateforme ONE Automation. Event-ID Premier RunID des Evènements de systèmes de fichiers ou de console. Les deux types d'evènements impliquent une communication entre le composant Automation Engine et l'agent. Afin que l'affectation à l'evènement reste possible en cas de changement du fichier de logging ou de modification liée du RunID, la communication s'effectue par le biais du premier RunID. enfant Tâche subordonnée (par ex. tâche fonctionnant à l'intérieur d'un workflow). enfant, enfants Objets activés par le biais de Tâches supérieures dans l'arborescence (parent). exécution Durée d'exécution d'une Tâche. C'est la période entre le début et la fin de la Tâche. La période d'activation n'en fait pas partie (voir aussi Activation et Démarrage).
Chapter Glossaire 51.6 F Fenêtre de message Fenêtre dans l'interface Utilisateur qui affiche avertissements, messages d'information et d'erreur. Fuseau Horaire Définit l'heure locale. Egalement un type d'objet distinct dans l'automation Engine. fichier XML Format d'importation et d'exportation. Contient la structure des objets..7 G Gestion des Versions Version protégée d'un objet qui peut être créée lors des modifications et restaurée ultérieurement. Groupe Regroupe des Tâches pour les exécuter ensemble. Egalement un type d'objet distinct dans l'automation Engine. Groupe Agent Groupe Calendrier Rassemblement de jours au sein de Calendriers. Egalement un type d'objet distinct dans l'automation Engine. Groupe Utilisateur Regroupement d'utilisateurs auxquels un profil de droits commun doit être attribué. Egalement un type d'objet distinct dans Automation Engine..8 H hôte Ordinateur, système cible.9 I Include Script utilisé souvent et dans de nombreux objets. Egalement un type d'objet distinct dans l'automation Engine. Interface Utilisateur Interface utilisateur graphique d'automation Engine. Interface Web Deprecated Term.
52 Chapter Glossaire.10 J Job Traitement sur un système cible. Egalement un type d'objet distinct dans l'automation Engine. Job Control Language Acronyme de "Job Control Language". Il s'agit d'instructions qui forment les étapes de traitement et sont exécutées sur les machines..11 L Log Mix L'utilitaire LogMix vous aide à résoudre ce problème en créant un fichier unique à partir de plusieurs fichiers de rapport, log ou trace. Login Données de connexion pour les systèmes cible. Egalement un type d'objet distinct dans l'automation Engine..12 M Moniteur Sync Fenêtre d'affichage de l'état d'un objet Sync et de ses tâches attribuées. Moniteur de groupe Fenêtre d'affichage des tâches d'un groupe. Moniteur de schedule Représentation graphique de l'exécution d'objets de schedule. moniteur d'alertes Fenêtre de l'alerte envoyée à au moins un utilisateur au moment de l'exécution..13 O ONE Automation objet Les activités et déroulements que contrôle l'automation Engine sont représentés à l'aide d'objets (voir aussi Tâche).
Chapter Glossaire 53.14 P Process Analytics Produit Automic. Outil d'analyse graphique : Regroupe, pour chaque utilisateur d'un système AE, les données de simulation, d'activités et de statistiques dans un diagramme à barre et permet ainsi le calcul du chemin critique. Disponible dans le centre de téléchargement Automic. parent Un objet peut être activé de différentes façons. L'initiateur de l'activation s'appelle Tâche de niveau supérieur (parent). (voir aussi Enfant, Enfants) parent Tâche hiérarchiquement supérieure (par ex. : workflow, servant à exécuter la tâche). priorité AE La priorité AE est influencée par le traitement des Tâches au sein du système AE. privilèges Dans l'automation Engine, les privilèges sont des droits permettant de travailler avec certaines fonctionnalités en front-end et dans l'interface utilisateur. Vous pouvez attribuer des privilèges à chaque utilisateur dans l'automation Engine. processus de communication Partie du composante Automation Engine. Assure la connexion aux composants. processus de dialogue Partie du composant Automation Engine et forme particulière de processus de travail. Ne s'occupe que des messages provenant de l'interface Utilisateur. processus de travail Partie du composante Automation Engine. S'occupe du traitement dans un système Automation Engine (voir aussi le processus de travail primaire). processus de travail primaire Le processus de travail primaire exécute des tâches centrales des processus de travail qui ne permettent aucune répartition (base horaire, gestion des processus, etc.) processus non-stop Partie du composante Automation Engine. Ils reprennent le traitement lorsque la machine avec les processus serveur actifs tombe en panne. processus serveur Partie du composant Automation Engine. Il existe plusieurs types de processus serveur: processus de communication, processus de travail, processus de dialogue et processus non-stop..15 Q Queue Définit le nombre maximal de Tâches exécutées en parallèle, leur priorité et l'ordre des objets à exécuter.egalement un type d'objet distinct dans l'automation Engine.
54 Chapter Glossaire.16 R Rapport Rapport contenant les détails d'activation d'une tâche ou d'un composant. Release Manager Deprecated Term. RemoteTaskManager Surveille et contrôle les Jobs externes qui n'ont pas été démarrés par l'automation Engine. Egalement un type d'objet distinct dans l'automation Engine. RunID Abréviation du numéro d'identification unique. Il s'agit plus précisément d'un nombre qui identifie clairement l'exécution d'une Tâche. Le RunID peut comporter entre 7 et 10 caractères. Ils sont attribués par le composant Automation Engine. reprise Répétition d'une exécution d'objet déjà créée pour laquelle plusieurs particularités s'appliquent au redémarrage..17 S Schedule Démarre des objets activables à intervalles périodiques. Egalement un type d'objet distinct dans l'automation Engine. ServiceManager Programme permettant de démarrer et d'arrêter des composants. Simulation Estimation de la durée d'une Tâche sur la base des exécutions précédentes. Solution RA Solution basée sur la technologie Rapid Automation permettant l'accès de l'automation Engine à un système, une application ou une plate-forme externe. Il s'agit ici d'un fichier.jar, à charger dans la base de données AE et à associer à un agent RA. Les objets RA spécifiques (jobs, relations et agent) sont disponibles après chargement de la solution dans le système AE. Sous-Workflow Workflow faisant partie d'une autre Workflow. Supervision système Fenêtre de l'interface Utilisateur contenant des informations sur le système AE. Sync Synchronise les objets activables en fonction de statuts et d'actions définis. Egalement un type d'objet distinct dans l'automation Engine. script Egalement un type d'objet distinct dans l'automation Engine. statistiques Liste des exécutions précédentes d'une tâche. statut Statut d'une tâche (par ex. active, bloquée, génération en cours, etc.). système AE Environnement contrôlé par les composants AE. séquence de données Liste interne (Exemple : Sorties de console ou lignes d'un objet Variable), dont les lignes peuvent
Chapter Glossaire 55 être accessibles grâce à une boucle PROCESS et l'élément de script GET_PROCESS_LINE. Les Séquences de données sont créées avec les éléments de script PREP_PROCESS*..18 T Table de Codes Définit un jeu de caractères complet. Egalement un type d'objet distinct dans l'automation Engine. Tâche de niveau supérieur Liste des exécutions précédentes d'une Tâche. transfert de fichier Transmission de fichiers entre deux machines. Egalement un type d'objet distinct dans l'automation Engine. transferts de fichiers avec caractères génériques Transferts de fichiers qui transfèrent plusieurs fichiers à l'aide de caractères génériques. transferts de fichiers avec caractères qualifiés Transferts de fichiers sans caractères génériques. Uniquement un fichier spécifique est transféré. type d'objet A chaque activité correspond un objet: Agent, Alerte, Utilisateur, Groupe Utilisateur, Cockpit, Table de Codes, Documentation, Evènement, Transfert de Fichier, Groupe, Include, Job, Workflow, Groupe Calendrier, Login, Client, RemoteTaskManager, Schedule, Script, Serveur, Sync, Variable et Fuseau horaire. tâche Objet exécutable qui a déjà été exécuté. tâches périodiques Sont planifiées sans objet Schedule et couvrent la plupart du temps une période inférieure à un jour..19 U UC4 Deployment Manager Deprecated Term. Universal Time Coordinated L'Automation Engine utilise UTC (Universal Time Coordinated) en interne en raison de sa clarté universelle. Pour l'affichage de l'heure et pour son utilisation dans les Tâches et les éléments de script, il est possible de créer des objets Fuseau horaire correspondants, convertis dans un fuseau horaire local. utilisateur Dans l'automation Engine, un utilisateur se réfère à une instance d'un objet Utilisateur de l'automation Engine, mais c'est en général la personne travaillant avec les produits Automic. Chaque utilisateur a son ID et certains droits d'accès à différents volets d'un système AE, et à leurs produits. Dans l'automation Engine, les droits d'accès sont réglés par droits et privilèges, dans Decision par les rôles utilisateurs et droits EventBase et dans l'application Web ARA par des autorisations objet. L'outil de gestion des utilisateurs ECC règle de façon centrale ces droits d'accès. Vous trouverez de plus amples informations dans le chapitre Unified user management.
56 Chapter Glossaire utilitaires Prennent en charge les Tâches d'administration d'un système Automation Engine, telles que la réorganisation et l'archivage de la base de données Automation Engine..20 V Variable Enregistre ou fournit les valeurs dynamiques de l'exécution. Egalement un type d'objet distinct dans Automation Engine. Variable dynamique Objet Variable avec l'attribut "Source" - "EXEC", "SQL", "SQL interne", "Multi" ou "Liste de fichier". Pour chaque accès, les valeurs sont récupérées directement dans la source de données et ne sont pas enregistrées dans l'objet. Variables Variables comportant les paramètres de configuration du système AE. variable de script Caractères de remplacement d'une valeur dans un Script. variable prédéfinie Variables fixes qui peuvent être utilisées dans des attributs ou dans des Scripts d'objets activables. Les valeurs se rapportent à l'objet ou au système. variable statique Objet variable avec le paramètre "Source" - "statique" : Les valeurs des Variables sont saisies par l'utilisateur ou par un script et restent enregistrées dans l'objet. variables d'objet Caractères de remplacement des valeurs définies dans l'onglet "Variables & Prompts" d'un objet..21 W WebHelp Format d'aide pour les manuels qui peut être ouvert via un navigateur web. workflow Permet d'ajouter, regrouper, associer, caractériser ou supprimer les tâches d'un workflow. Egalement un type d'objet propre à Automation Engine.